CS 295 Computer Simulation and Modeling

Alexey Voinov

Tuesday and Thursday 2.00-3.15 Votey 367

Prerequisites: Math 121 or Instructor Permission

This course is an introduction to simulation modeling of dynamic systems that will include theoretical studies and hands-on modeling workshops. It will familiarize participants with systems analysis and modeling with applications and case studies drawn primarily from ecology and economics. Several modeling software packages will be introduced, including Stella, Madonna, StarLogo, etc. We will consider different modeling strategies and learn how to formulate, build and analyze models. Investigation of alternative modeling software packages is encouraged.

The course will meet twice a week. We will start with an introduction to systems modeling concepts and modeling software, with several worked out examples. We will look into some of the main mathematical paradigms that are used in dynamic modeling. Participants will work through example exercises, read and report on models in the current literature, and build, calibrate and run their own models, either alone or in a small team. By the end of the course participants will be expected to produce a working model, preferably related to their research topic. Course grading will be: 30% exercises, 20% class presentations and participation, 50% project.

Course Schedule

Week Tuesday Thursday
1 Introduction: Course overview. What is a model? What is simulation? The modeling process. Projects: Suggested topics. Group assignments.
2 Types of Models and Simulations: Static vs. discrete vs. continuous; algebraic equations vs. differential equations; spatially uniform vs. spatially explicit; empirical vs. process based. Modeling principles, energy conservation, causality, positive, negative feedbacks, aggregation/disaggregation.
3 Modeling software: Stella, Madonna, Simulink, Simile. Downloads and installation. Main principles. Similarities and differences. Comparing packages. Pros and cons of modeling software.
4 Model analysis: Sensitivity, calibration, validation. Intermediate project presentations: project description and approach.
5 Ordinary Differential Equations: definition; initial value problems vs. boundary value problems Model analysis: equilibrium, stability. Analytical vs. computer modeling.
6 Integration algorithms: Euler, Runge-Kutta, implicit vs. explicit. Intermediate project presentations: conceptual model.
7 Review. Questions & Answers Spatial modeling: Partial differential equations; boundary conditions. Cellular automata.
8 Town Meeting Day - no class. Modeling of ecological systems: Lotka-Volterra model and its modifications. Chaos, dissipative systems.
9 Modeling of economic systems: algebraic equations, input-output analysis. Intermediate project presentations: model formalization.
Spring Break
11 Watershed modeling: Hydrologic and climatic models, routing algorithms, model integration. Agent based modeling: StarLogo and Swarm.
12 Network analysis. Petri nets. Introduction to SME. Modeling and GIS.
13 Uncertainty analysis: Monte-Carlo simulation, sources of uncertainty. Intermediate project presentations: model calibration.
14 Optimization: goal functions and conditions, control variables, methods of optimization. Spatial optimization and calibration. Map comparisons.
15 Discrete Event Systems (DEVS): definition, models, queuing example, comparison with energy-based systems. Final project presentations
16 Final project presentations