We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
Tristan West - Large scale agent-based simulations | PyData London 2023
Explore the power of large-scale agent-based simulations using Python and discover how to optimize complex situations, develop robust mental models, and inform decision-making while navigating complexity and uncertainty.
- Simulations can be used to optimize complex situations, such as rolling out fiber to millions of premises, by testing various scenarios and predicting outcomes.
- Large-scale simulations can be done using pure Python and libraries such as SymPy and Mesa, which allow for parallelization and efficient computation.
- The onion architecture is a useful design pattern for building simulations, as it separates concerns and allows for decoupling of components.
- Infrastructure, such as BigQuery, can be used to store and manage large datasets for simulation purposes.
- Reinforcement learning can be used to optimize decisions by training agents to take actions based on predicted outcomes.
- Monte Carlo simulations can be used to estimate uncertainty in outcomes.
- Complexity can be managed by identifying critical components and focusing on those first.
- Simulations can be used to make better decisions by testing various scenarios and predicting outcomes.
- Key principles include using mental models to reason about complex systems, externalizing mental models through simulations, and using simulations to inform decision-making.
- The process of building simulations is iterative and requires close collaboration with stakeholders.
- Simulations can be useful for optimizing complex systems, such as power grids, financial models, and particle physics experiments.
- Ray is a useful library for building simulations, as it provides parallelization and cluster management capabilities.