We may earn an affiliate commission when you visit our partners.
Course image
Cheong Siew Ann

This course explores the features of complexity science. Our world is connected by an abundance of complex systems. Across all levels of organizations from physical, biological world to the social world, we may think of the connectivity between individual elements and how they interact and influence each other. For example, how humans transmit pandemics within a group, how cars interact in the traffic system and how networks connect in governmental organizations. Although these systems are diverse and different, they have surprisingly huge features in common.

Read more

This course explores the features of complexity science. Our world is connected by an abundance of complex systems. Across all levels of organizations from physical, biological world to the social world, we may think of the connectivity between individual elements and how they interact and influence each other. For example, how humans transmit pandemics within a group, how cars interact in the traffic system and how networks connect in governmental organizations. Although these systems are diverse and different, they have surprisingly huge features in common.

In the past several decades, the study of complexity science has been increasing. It is widely acknowledged that an innovative, integrated and analytical way of thinking is essential for understanding the complex issues in the human societies. In this course, we will aim to give everyone a comprehensive introduction of the complex systems, to talk about the resilience, robustness and sustainability of the systems and to learn basic mathematical methods for complex system analysis, for example regime shifts and tipping points, the agent-based modelling, the dynamic and network theories. Most importantly, we will implement the theories into practical applications of cities and health to help students gain practice in complex systems way of thinking.

Enroll now

What's inside

Syllabus

Course Overview and Week 1: Introduction to Complex Systems
An overview of what is covered in the first topic: an introduction to complex systems, explaining how complexity science has evolved, how it has been applied in society, and why it is important to gain a basic understanding of complex systems. Like for all sciences, complexity science is not a spectators' sport. After learning models and methods from the lectures, you will need to try some of these out to develop a practical feel for what they mean and what they can do. This is where the Jupyter Notebook exercises come in. In this course week, we will try out two Jupyter Notebook exercises, on: (1) the Nagel-Schreckenberg model of vehicular traffic, and (2) the Game of Life.
Read more
Week 2: Robustness, Resilience, and Sustainability
In this 2nd topic, we look at how robustness, resilience and sustainability can be defined for complex systems, and some case studies that showcase these attributes.
Week 3: Regime Shifts and Tipping Points
In this third topic, we move on to looking at regime shifts and tipping points and their applications in forecasting.
Week 4: Introduction to Agent-Based Modeling
Next, we look at Agent-Based Modeling - what it is, how it works, why it is used and how to use it. We then try a Jupyter Notebook exercise on Schelling’s Segregation Model.
Week 5: Introduction to Static Complex Network
Lastly, we look at complex networks and their attributes before looking at different network models. We end this topic with a Jupyter Notebook exercise on epidemics on complex networks.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Explores features of complex systems, a growing study in human societies and the ability to analyze and apply innovative thinking to complex issues
Taught by Cheong Siew Ann, who is a recognized instructor in the field of complexity science
Offers a comprehensive introduction to complex systems, including resilience, robustness, and sustainability
Covers practical applications of complex systems thinking in the areas of cities and health, providing hands-on experience for students
Utilizes Jupyter Notebook exercises to help students develop a practical understanding of complex systems models and methods
Requires students to come in with some background knowledge in mathematics and computer science

Save this course

Save Introduction to Complexity Science to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Introduction to Complexity Science with these activities:
Explore Resources on Network Science
Exploring resources on network science will supplement the course material and broaden your knowledge.
Browse courses on Network Science
Show steps
  • Watch online tutorials or videos on network science concepts and applications.
  • Read articles or blog posts from reputable sources to gain insights into the latest advancements in network science.
Compile a Glossary of Complex Systems Terms
Creating a glossary will improve your understanding and retention of complex systems terminology.
Show steps
  • Review course materials and identify key terms and concepts in complex systems.
  • Define and explain each term in your own words, using clear and concise language.
  • Organize the terms alphabetically or by category for easy reference.
Practice Jupyter Notebook Exercises
Completing the Jupyter Notebook exercises will help you develop hands-on skills in analyzing complex systems.
Browse courses on Jupyter Notebooks
Show steps
  • Work through the Jupyter Notebook exercise on the Nagel-Schreckenberg model of vehicular traffic.
  • Complete the Jupyter Notebook exercise on Schelling’s Segregation Model.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Participate in Virtual Study Groups
Participating in virtual study groups will foster collaboration and enhance your understanding of complex systems.
Show steps
  • Join or create a virtual study group with fellow students.
  • Schedule regular meetings to discuss course material, share insights, and work on assignments together.
Mentor Peers in Complex Systems Concepts
Mentoring peers will deepen your understanding of complex systems and enhance your communication skills.
Browse courses on Mentoring
Show steps
  • Identify opportunities to assist fellow students in understanding complex systems concepts.
  • Provide clear explanations, share resources, and answer questions related to the course material.
Develop an Infographic on Complex System Applications
Creating an infographic on complex system applications will reinforce your understanding and enhance your communication skills.
Browse courses on Infographics
Show steps
  • Research case studies of complex systems applications in different fields, such as healthcare, transportation, and finance.
  • Identify key insights and data points that highlight the benefits and challenges of these applications.
  • Design and create an visually engaging infographic that presents your findings in a clear and concise manner.
Develop a Simulation Model of a Complex System
Creating a simulation model of a complex system will provide hands-on experience in designing and analyzing such systems.
Show steps
  • Identify a specific complex system to model, such as a traffic network or a biological ecosystem.
  • Develop a conceptual model of the system, including its components, interactions, and behaviors.
  • Implement the model using a simulation software or programming language, such as NetLogo or Python.
  • Run simulations and analyze the results to gain insights into the system's behavior.

Career center

Learners who complete Introduction to Complexity Science will develop knowledge and skills that may be useful to these careers:
Data Scientist
Data Scientists employ complex systems science in developing and implementing data-driven solutions to complex problems. An understanding of complex systems, as taught in this course, enables Data Scientists to better understand the behavior of complex systems and design interventions that can improve their performance.
Systems Analyst
Systems Analysts use their knowledge of complex systems to identify and solve problems in complex systems. The course provides a foundation in complex systems science, which can help Systems Analysts to better understand the behavior of complex systems and identify potential problems.
Operations Research Analyst
Operations Research Analysts use complex systems science to develop and implement solutions to complex problems in areas such as logistics, supply chain management, and healthcare. The course in Introduction to Complexity Science can help Operations Research Analysts to develop the skills needed to analyze complex systems and design effective solutions.
Risk Analyst
Risk Analysts use complex systems science to identify, assess, and mitigate risks. The course in Introduction to Complexity Science can help Risk Analysts to develop the skills needed to understand and analyze complex systems and identify potential risks.
Epidemiologist
Epidemiologists use complex systems science to study the spread of diseases and develop strategies to prevent and control them. The course in Introduction to Complexity Science can help Epidemiologists to develop the skills needed to understand the complex dynamics of disease transmission and develop effective strategies to control them.
Urban Planner
Urban Planners use complex systems science to plan and develop sustainable cities. The course in Introduction to Complexity Science can help Urban Planners to develop the skills needed to understand the complex dynamics of cities and develop effective plans for their development.
Transportation Engineer
Transportation Engineers use complex systems science to design and manage transportation systems. The course in Introduction to Complexity Science can help Transportation Engineers to develop the skills needed to understand the complex dynamics of transportation systems and design effective solutions to improve their performance.
Environmental Engineer
Environmental Engineers use complex systems science to develop and implement solutions to environmental problems. The course in Introduction to Complexity Science can help Environmental Engineers to develop the skills needed to understand the complex dynamics of environmental systems and design effective solutions to improve their performance.
Chemical Engineer
Chemical Engineers use complex systems science to design and operate chemical plants. The course in Introduction to Complexity Science can help Chemical Engineers to develop the skills needed to understand the complex dynamics of chemical plants and design effective solutions to improve their performance.
Mechanical Engineer
Mechanical Engineers use complex systems science to design and operate mechanical systems. The course in Introduction to Complexity Science can help Mechanical Engineers to develop the skills needed to understand the complex dynamics of mechanical systems and design effective solutions to improve their performance.
Electrical Engineer
Electrical Engineers use complex systems science to design and operate electrical systems. The course in Introduction to Complexity Science can help Electrical Engineers to develop the skills needed to understand the complex dynamics of electrical systems and design effective solutions to improve their performance.
Computer Engineer
Computer Engineers use complex systems science to design and operate computer systems. The course in Introduction to Complexity Science can help Computer Engineers to develop the skills needed to understand the complex dynamics of computer systems and design effective solutions to improve their performance.
Software Engineer
Software Engineers use complex systems science to design and develop software systems. The course in Introduction to Complexity Science may be useful for Software Engineers who want to develop a deeper understanding of the complex dynamics of software systems and design more effective software solutions.
Web Developer
Web Developers use complex systems science to design and develop web applications. The course in Introduction to Complexity Science may be useful for Web Developers who want to develop a deeper understanding of the complex dynamics of web applications and design more effective web solutions.
Database Administrator
Database Administrators use complex systems science to design and manage databases. The course in Introduction to Complexity Science may be useful for Database Administrators who want to develop a deeper understanding of the complex dynamics of databases and design more effective database solutions.

Reading list

We've selected nine books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Introduction to Complexity Science.
Provides a broad overview of complexity science, covering topics such as complex systems, emergence, self-organization, and adaptation. It good introduction to the field for those with little or no prior knowledge.
Provides a more in-depth look at complexity science, with a focus on applications in areas such as biology, economics, and social science. It good choice for those who want to learn more about the practical applications of complexity science.
Explores the complexity of cooperation using agent-based models. It good choice for those who want to learn more about the role of cooperation in complex systems.
Explores the relationship between complexity and evolution. It good choice for those who want to learn more about how complexity can arise in natural systems.
Provides an introduction to complex adaptive systems. It good choice for those who want to learn more about how complex systems can adapt to changing conditions.
Explores the concept of emergence in complex systems. It good choice for those who want to learn more about how complex systems can give rise to new and unexpected phenomena.
Provides an introduction to agent-based computational modeling. It good choice for those who want to learn more about how to use agent-based models to simulate complex systems.
Explores the application of complexity science to health. It good choice for those who want to learn more about how complex systems can be used to understand health and disease.
Explores the application of complexity science to social networks. It good choice for those who want to learn more about how complex systems can be used to understand social phenomena.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Introduction to Complexity Science.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser