Complexity science uses computation to explore the physical and social sciences. In Think Complexity, you’ll use graphs, cellular automata, and agent-based models to study topics in physics, biology, and economics.Whether you’re an intermediate-level Python programmer or a student of computational modeling, you’ll delve into examples of complex systems through a series of worked examples, exercises, case studies, and easy-to-understand explanations.In this updated second edition, you will:Work with NumPy arrays and SciPy methods, including basic signal processing and Fast Fourier TransformStudy abstract models of complex physical systems, including power laws, fractals and pink noise, and Turing machinesGet Jupyter notebooks filled with starter code and solutions to help you re-implement and extend original experiments in complexity; and models of computation like Turmites, Turing machines, and cellular automataExplore the philosophy of science, including the nature of scientific laws, theory choice, and realism and instrumentalismIdeal as a text for a course on computational modeling in Python, Think Complexity also helps self-learners gain valuable experience with topics and ideas they might not encounter otherwise.