This course provides a comprehensive, progressive exploration of modeling and simulation techniques within computer scie...
Introduce core ideas of modeling, abstraction, and the model lifecycle to establish a solid base for all simulation work.
Build the mathematical toolkit essential for accurate and stable simulations, including linear algebra, calculus, probability, and numerical analysis.
Explore discrete-event simulation (DES) as a powerful tool for modelling systems where state changes are event-driven.
Study agents as autonomous decision-makers, their interactions, and how complex behavior emerges from simple rules.
Delve into stock-and-flow models and feedback systems to capture continuous-time behavior in complex domains.
Learn the numerical techniques that underlie stable and accurate simulations across domains.
Incorporate randomness and quantify uncertainty to make robust predictions from simulations.
Optimize the internal machinery of simulations through efficient data handling and computation.
Survey and apply mainstream languages and frameworks used to implement different simulation paradigms.
Develop rigorous processes to ensure models are correct, credible, and useful for decision-making.
Learn to measure, analyze, and improve the speed and scalability of simulations.
Scale simulations across clusters and accelerators, addressing challenges of HPC environments.
Establish robust data handling, versioning, and reproducible research practices for simulations.
Develop effective visualization and storytelling skills to communicate complex simulation outcomes.
Apply learned techniques to real-world problems across domains to illustrate impact and best practices.