Agent-Based Modeling for Health Policy: Collected Videos, Audio and Slides and Example Models

These are drawn from multiple sessions of my courses (including but not limited to MIT 15.879, CMPT 858 [multiple sessions], CMPT 394, the ABM Bootcamp for Health Researchers [multiple sessions], etc.)

The latest versions of my course on Agent-Based modeling and Hybrid dynamic modeling for health can be found at this course page (which features videos interlinked with exercises, slides, and AnyLogic 7 example models).

Visitors interested in a far larger and more diverse set of relevant videos are encouraged to go to the many playlists available through my YouTube playlists, which contain a far larger set of material. While this page and others like it structure the videos into curricula, the playlists involve topical grouping. An increasing number the videos now online are short segments that demonstrate particular actions or skills.

Notice: We will be running two Agent-Based Modeling Bootcamps for Health Researchers in the summer of 2015. The first (June 22-26) will be covering more basic material in AnyLogic. The second (August 17-22) will focus on intermediate level material, and will include a strong emphasis on model incubation. Beyond the above, we are considering running a hybrid modeling bootcamp. Please write if you are interested in learning more about these plans. An indication of your interest could be very helpful in deciding whether to go forward with the event.

2014 Bootcamp and Incubator : Visitors interested in the materials available here may also be interested in knowing about or registering for the coming Agent-Based Modeling Bootcamp and Incubator for Health Researchers 2014. (August 18-23, 2014; registration now open)

Page contents include

Example Models

Those interested in AnyLogic 7 example systems science for health models are further recommended to visit our AnyLogic 7 Example Models for Health folder on google drive, which provides dozens such models.. Those particularly interested in hybrid systems science models for Health in AnyLogic are recommended to visit our hybrid systems science example models for health page.

Visitors interested in Anyogic 6 models or more annotated model listings are recommended to visit example model inventory page, which documents and provides the opportunity to download example Anylogic models with a focus on health-sciences applications.

Lectures

Lecture Title & Recommended Links to Slides Recommended AnyLogic 7 Screencasts (via youtube) Recommended AnyLogic 6 Screencasts (via youtube) Alternative Screencasts (via youtube) Recommended MP3 Audio (.mp3) Alternative MP3 Audio (.mp3)
Orientation Not available Audio
Motivation for ABM and Systems Science Methods (Redacted due to 3rd party copyright concerns) Screencast Screencast Alternative Screencast with a more general -- and slightly more technical -- bent Alternative Screencast 1 Alternative Screencast 2 (brief hallmarks recommending use of systems science methods) Audio
Emergence & Software Introduction

Screencast

Screencast

Screencast very briefly summarizing some elements

Alternative screencast Audio
General Features of ABMs Screencast
A Guided look at Elements of the AnyLogic Agent-Based Modeling Vocabulary Screencast
Overview of Modeling Process Part 1 (Version independent) Screencast (Version independent) Screencast Audio
Overview of Modeling Process Part 2 (Version independent) Screencast (Version independent) Screencast Audio
Introduction to the AnyLogic Interface & Supporting Concepts by Building Up a Simple Model Screencast Screencast Alternative screencast that also introduces representation of heterogeneity Audio
Specifying Agent Properties, Parameters & Heterogeneity

Screencast

Screencast

Setting Agent Presentation Properties

Alternative Screencast, showing effects of different distributions for agent parameters

Screencast showing use of dynamic properties in AnyLogic

Screencast showing parameters at different levels of a multi-level hierarchy (individual, city, region)

Screencast describing capturing continuous aging in AnyLogic

Not available
Discrete Intra-agent Dynamics, Statecharts

Simple Statecharts

Interacting Statecharts

Screencast

AnyLogic Statechart Transition Types

Alternative screencast

Further discussion of Rates, Timeouts & Exponentially distributed residence times
Audio
Discrete Inter-agent Dynamics, Sending & Receiving Messages

Screencast: Building up an SIR Model with Messages

Screencast

Application: Representing infection transmission

Alternative Screencast (missing first few minutes) Audio
Events: Static & Dynamic

Screencast of using events to build up an open population model

Use of Dynamic Events in AnyLogic

Screencast Earlier screencast with very similar content Audio
Networks Brief introduction to network types, and the impact on network dynamicsNetwork types and layout types, and their interaction Screencast

Screencast

Screencast

Screencast (first few minutes missing)

Much Briefer Screencast: Placing Agents in Networks

Audio
Brief Comments on Scale-Free Networks Not available Screencast

Screencast

Dynamic Populations and Networks Open Populations Screencast An alternative version is folded into this Screencast No distinct audio; folded into this audio
Spatial Embedding

Network types and layout types, and their interaction

Discrete space

Screencast

High-level overview screencast

Related Screencast: Displaying agents using an environment

Briefer Screencast: Imposing Spatial location on agents, dependency on the Environment

Audio
Mobility

Introductory AnyLogic 7 Mobility Model w/Random Walks, Movement via mouse

AnyLogic 7 Model with Mobility b/w Home, Workplaces & Schools

Screencast Alternative Screencast Audio
Mobility Hands-On Demonstration

Introductory AnyLogic 7 Mobility Model w/Random Walks, Movement via mouse

AnyLogic 7 Model with Mobility b/w Home, Workplaces & Schools

Screencast
Outputting and Inputting Data & Database Interfaces

Data Collection and Output Part 1

Data Collection and Output Part 2

Output coverage

Output coverage 2

Output tools

Implementing a Fractional Prevalence Statistic in AnyLogic 7

Part 1 of this Screencast

Preliminary remarks

Alternative discussion

Discussion of ad-hoc data export

Part 1 of this Audio
Discrete Event Modeling (Process Centric Modeling), Irregular Geometries, and Understanding Patient Flow: Logical Structure Not available Screencast

Screencast (MIT 15.879)

Coverage

Logical structure

Not yet avaiable
Discrete Event Modeling (Process Centric Modeling), Irregular Geometries, and Understanding Patient Flow: Visual Representation Not available Screencast

Screencast (MIT 15.879)

Coverage

Visualization & presentation elements

Not yet avaiable
Hybridization between Discrete Event Modeling (i.e. Process Centric Modeling; in AnyLogic's terminology, "Network Modeling") and Agent-Based Modeling

Detailed examination and modification of ABM-DES hybrid model of a facility and its catchment area

Hybrid Models

Screencast Alternative Screencast, with a slightly earlier version of the model Not yet avaiable An example model demonstrating hybridization between Discrete Event (in AnyLogic's terminology, "Network") modeling and ABM may be downloaded here (note that this is zipped so that this is not simply opened in the browser).
Running and Analyzing Ensembles of Stochastic Realizations Screencast Screencast Alternative screencast 1 Alternative screencast 2 Audio not yet available
Sensitivity Analysis

Parameter variation brief look

Modifying a Parameter Variation Experiment

Screencast

Screencast Alternative Screencast Audio
Building User Interfaces for Models Not available Part 1 of this Screencast Audio not available
Calibration 1 Screencast Screencast Screencast with somewhat briefer treatment Briefer Screencast Audio
Calibration 2 Not available Screencast Audio
Performance Considerations Not available Screencast Audio
Debugging Not available Screencast Alternative screencast Audio
Glimpse of Process Best Practices Very brief screencast, highlighting just a few points Screencast An alternative Screencast can be found in Part 1 of this Screencast Alternative screencast Audio
Glimpse of Technical Best Practices Not available See Part 2 of this Screencast Not available Not available
Creating an Applet from an AnyLogic model (to allow the model to run outside of AnyLogic, or over the Web) Not available Screencast
Particular Motivations for Agent-Based Modeling within Systems Science (and particularly comparing to System Dynamics modeling) Not available

Screencast

Lecture 25 -- Tradeoffs between Agent-Based and Aggregate Modeling Not available

Part 1 Screencast

Part 2 Screencast

Comments on Mixing on Comments on Mixing in SD and ABM Not available

Screencast

Screencast

Modeling for Dynamic Decision Problems Not available Screencast
Part 1: Lecture 26 -- Hybrid System Science Methods 1

ABM DES Hybrid

Additional hybrid models

Tripartite (System Dynamics-Agent Based Modeling-Discrete Event Modeling) hybrid

Motivation for Tripartite hybrid

Screencast
Basic Health Economics Structures in Agent-Based Models in AnyLogic 1 -- Essential structures for scenario-specific QALYs, Lifeyears lived, Undiscounted and discounted costs.

Discussed in this video

Part 1, Part 2 Includes consideration of intervention costs and health services costs (both state-based cost per time and event-specific costs)
Basic Health Economics Structures in Agent-Based Models in AnyLogic 2 -- Computing Cost Effectiveness Ratios. Not available Screencast Demonstrates how incremental cost effectiveness ratios can be automatically computed by running baseline and intervention scenarios within a single parameter-variation experiment

Tutorials

Java for AnyLogic Tutorials

Lecture Title & Link to Slides Recommended Screencasts (via youtube) Alternative Screencasts (via youtube) Recommended MP3 Audio (.mp3) Alternative MP3 Audio (.mp3)
Classes, Objects and References Screencast Alternative Screencast Audio
Expressions, Values and Variables Part 2 of this Screencast

Updated video

Part 2 of this Audio

Statements

Updated video

Part 1 of this Screencast

Audio not yet available -- check back later
Java Types and Enums Part 2 of this Screencast Alternative can be found in part 2 of this Screencast Audio not available
Methods and Functional Abstraction

Part 1

Part 2: Screencast also showing use of dynamic parameters and action parameters in AnyLogic 7

General comments on functions in AnyLogic

Screencast

Screencast Audio
A Few Useful Java Collections

Screencast

Older Screencast, with Less Material Audio
Introductory remarks from slides from
Java tutorial 7 -- Encapsulation, Interfaces, Subtyping and Subclassing
Screencast Audio
Reviewing and continuation of slides in
Java tutorial 7 -- Encapsulation, Interfaces, Subtyping and Subclassing
Screencast Audio
A Glimpse of the Specification Pattern

Screencast

Showing use of dynamic parameters to achieve specification-pattern like functionality

Not yet available -- check back soon

Model Presentations

Lecture Title & Link to Slides Recommended Screencasts (via youtube) Alternative Screencasts (via youtube) Recommended MP3 Audio (.mp3) Alternative MP3 Audio (.mp3)
Building up Simple models of Agent Mobility

Introductory AnyLogic 7 Mobility Model w/Random Walks, Movement via mouse

AnyLogic 7 Model with Mobility b/w Home, Workplaces & Schools

Screencast

Building up Model incorporating Continuous Aging and Persistent and Unique Agent Ids

Achieving Continuous Aging in AnyLogic 7

Achieving Unique Agent Ids in AnyLogic 7

Recap of Continuous Aging, Assigning Unique Ids, Reporting Event Calculations in AnyLogic 7

Building up a Simple SIR Infection Transmission Model in AnyLogic 7

AnyLogic 7

Example model exploration: ABM Model with Birth Death (Slides not available) Screencast Audio The example model discussed may be downloaded here (note that this is zipped so that this is not simply opened in the browser).
Example model exploration: TB Contact Tracing Model (Slides not available) Screencast Audio
Building a Hierarchical Metapopulation Model Screencast Alternative screencast 1 Alternative screencast 2 Audio not yet available -- check back later
Basic Health Economics Structures in Agent-Based Models in AnyLogic 1 -- Essential structures for scenario-specific QALYs, Lifeyears lived, Undiscounted and discounted costs. Part 1, Part 2 Includes consideration of intervention costs and health services costs (both state-based cost per time and event-specific costs)
Basic Health Economics Structures in Agent-Based Models in AnyLogic 2 -- Computing Cost Effectiveness Ratios. Screencast Demonstrates how incremental cost effectiveness ratios can be automatically computed by running baseline and intervention scenarios within a single parameter-variation experiment

General Topic Tutorials

Lecture Title & Link to Slides Recommended Screencasts (via youtube) Alternative Screencasts (via youtube) Recommended MP3 Audio (.mp3) Alternative MP3 Audio (.mp3)
Building Static and Dynamic Networks from Files (No slides available) Part 2 of this Screencast Audio
Combining Decision Analysis and Dynamic Modeling Screencast Audio
Anatomy of a Parameter Variation Experiment (No slides available) Screencast
Discussion of the Need for Consistency in Model Units of Time in AnyLogic Screencast
Accumulating Stock and Flow Statistics (Slides not available)

Statistics

Datasets

Datasets making use of statistics

Creating Charts in AnyLogic

Defining and collecting "Flow" Statistics (e.g. for incidence or incident cases in past week, etc.

Screencast (only audio -- work on board is not visible) Audio
Profiler Use (Slides not yet available -- check back later) Screencast Audio
Lecture 31 -- Dimensional Reasoning and Dimensional Homogeneity Testing Screencast
Lecture 32 -- Dimensional Analysis 2: Non-Dimensionalization & Scale Modeling Screencast not yet available Material being reworked & represented

Step-By-Step Tutorials/Exercises

AnyLogic 7 versions of these exercises are also available.

Please see these Prerequisites for suggested orderings among the exercises.

Assignment Title & Link to Slides Supplemental Materials Notes
A First Encounter with AnyLogic -- Modifying a Simple Sample Model Standalone -- No supplemental material required
Building a Minimalist Network-Based Model Framework Standalone -- No supplemental material required
Incorporating Attribute Heterogeneity Among Agents Standalone -- No supplemental material required
A Simple Network Based Infection Spread Model Standalone -- No supplemental material required
A Simple Model exhibiting Two Populations Using One Agent Class Standalone -- No supplemental material required
Calibration Exercise: Extending a Calibration Zipped model for debugging exercise
Mystery Infectious Prevalence for calibration
Mystery Incident Cases
A Debugging Exercise Standalone -- No supplemental material required

Other material of interest

Material from other lectures and tutorials outside of the scope of this course (including a full semester course on System Dynamics modeling for health policy using stock and flow models) can be accessed here.

Reuse of Material

I have placed this information online in hopes that it will be of useful to a broader set of people. Users are welcome to distribute links to this page without restriction. I grant rights of non-commercial reuse (including reposting) of the material I have created for educational purposes, as long as it doesn't conflict with the rights of any other individuals.

If you are seeking to reuse this material, just drop me a brief email notification (osgood 'at' cs.usask.ca) to let me know of your planned use, and I request the courtesy of a citation with the repost indicating the original source of materials. I am especially interested in staying in touch with other educators who adopt components of the class material above for use in their own courses. Among other benefits, sending along your address will allow me to notify you of significant updates, of supplemental artifacts (e.g. models) that may be of interest, and could allow for exchange of ideas and suggestions on improving the material.

Please be encouraged to write me if there are any topics on which you feel additional tutorials would be useful.