Think Complexity

Book description

Expand your Python skills by working with data structures and algorithms in a refreshing context—through an eye-opening exploration of complexity science. 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 exercises, case studies, and easy-to-understand explanations.

Table of contents

  1. Preface
    1. Why I Wrote This Book
    2. Suggestions for Teachers
    3. Suggestions for Autodidacts
    4. Contributor List
    5. Conventions Used in This Book
    6. Using Code Examples
    7. Safari® Books Online
    8. How to Contact Us
  2. 1. Complexity Science
    1. What Is This Book About?
    2. A New Kind of Science
    3. Paradigm Shift?
    4. The Axes of Scientific Models
    5. A New Kind of Model
    6. A New Kind of Engineering
    7. A New Kind of Thinking
  3. 2. Graphs
    1. What’s a Graph?
    2. Representing Graphs
    3. Random Graphs
    4. Connected Graphs
    5. Paul Erdős: Peripatetic Mathematician, Speed Freak
    6. Iterators
    7. Generators
  4. 3. Analysis of Algorithms
    1. Order of Growth
    2. Analysis of Basic Python Operations
    3. Analysis of Search Algorithms
    4. Hashtables
    5. Summing Lists
    6. pyplot
    7. List Comprehensions
  5. 4. Small World Graphs
    1. Analysis of Graph Algorithms
    2. FIFO Implementation
    3. Stanley Milgram
    4. Watts and Strogatz
    5. Dijkstra
    6. What Kind of Explanation Is That?
  6. 5. Scale-Free Networks
    1. Zipf’s Law
    2. Cumulative Distributions
    3. Continuous Distributions
    4. Pareto Distributions
    5. Barabási and Albert
    6. Zipf, Pareto, and Power Laws
    7. Explanatory Models
  7. 6. Cellular Automata
    1. Stephen Wolfram
    2. Implementing CAs
    3. CADrawer
    4. Classifying CAs
    5. Randomness
    6. Determinism
    7. Structures
    8. Universality
    9. Falsifiability
    10. What Is This a Model Of?
  8. 7. Game of Life
    1. Implementing Life
    2. Life Patterns
    3. Conway’s Conjecture
    4. Realism
    5. Instrumentalism
    6. Turmites
  9. 8. Fractals
    1. Fractal CAs
    2. Percolation
  10. 9. Self-Organized Criticality
    1. Sand Piles
    2. Spectral Density
    3. Fast Fourier Transform
    4. Pink Noise
    5. Reductionism and Holism
    6. SOC, Causation, and Prediction
  11. 10. Agent-Based Models
    1. Thomas Schelling
    2. Agent-Based Models
    3. Traffic Jams
    4. Boids
    5. Prisoner’s Dilemma
    6. Emergence
    7. Free Will
  12. 11. Case Study: Sugarscape
    1. The Original Sugarscape
    2. The Occupy Movement
    3. A New Take on Sugarscape
      1. Pygame
    4. Taxation and the Leave Behind
    5. The Gini Coefficient
    6. Results with Taxation
    7. Conclusion
  13. 12. Case Study: Ant Trails
    1. Introduction
    2. Model Overview
    3. API Design
    4. Sparse Matrices
    5. wx
    6. Applications
  14. 13. Case Study: Directed Graphs and Knots
    1. Directed Graphs
    2. Implementation
    3. Detecting Knots
    4. Knots in Wikipedia
  15. 14. Case Study: The Volunteer’s Dilemma
    1. The Prairie Dog’s Dilemma
    2. Analysis
    3. The Norms Game
    4. Results
    5. Improving the Chances
  16. A. Call for Submissions
  17. B. Reading List
  18. Index
  19. About the Author
  20. Colophon
  21. Copyright

Product information

  • Title: Think Complexity
  • Author(s):
  • Release date: March 2012
  • Publisher(s): O'Reilly Media, Inc.
  • ISBN: 9781449314637