Source-linked AI summary

Agent-Based Model Framework for the North Carolina Modeling Infectious Diseases Program (NC MInD ABM) Overview, Design Concepts, and Details Protocol

Kasey Jones, Emily Hadley, Caroline Kery, Alexander Preiss, Marie C. D. Stoner, Sarah Rhea

arXiv:2202.06853v2stat.APcs.AI

TL;DR

Scattered updates across code repositories and ODD documents became difficult to manage as additional models were created. The paper presents a robust movement model that is independent of specific disease submodels, can be controlled by them as needed, and is intended to simulate realistic agent movement.

  • Problem

    Managing updates across multiple code repositories and ODD documents became difficult as additional models were created.

  • Method

    The paper presents a robust movement model independent of specific disease submodels that can be controlled by individual submodels as needed.

  • Results

    The resulting ABM creates a realistic simulation of agent movement to and from healthcare facilities.

  • Takeaways & Limitations

    The base model can support disease-specific applications while allowing reproducible results when the seed is specified.

  • Takeaways & Limitations

    The ODD is a living document and may change as updates are made in the code repository.

Abstract

from arXiv · show

To help facilitate a variety of simulations related to healthcare facilities in North Carolina, we have developed an agent-based model (ABM) to accurately simulate patient (i.e., agent) movement to and from these facilities. This is an Overview, Design Concepts, and Details (ODD) Protocol, a standardized method for describing ABMs. This ODD provides detailed information on healthcare facilities in North Carolina, the agent movement to and between them, and any decisions that were made during the creation of this model. This ABM is intended to be used alongside disease-specific submodels. It can be used for purposes such as simulating the success of interventions on reducing disease transmission, simulating strain on facility resources (including staff and materials), and forecasting hospital capacity. Disease-specific ODDs should accompany this document. No details related to any submodels that use this ABM as a base model are included.

Introduction

The NC MInD ABM is a reusable base model that simulates patient movement among North Carolina healthcare facilities for disease-specific applications. Its patterns are checked against historical and specified facility characteristics, while the living ODD documents ongoing code-linked changes.

  • Introduction: The model consolidates movement changes from prior applications so improvements are available to future base-model applications.Earlier applications produced adjustments, updates, and expert opinions affecting movement to and from healthcare facilities.
  • Introduction: The ODD is a living document that can change as the code repository is updated.This creates an ongoing documentation boundary for the model specification.
  • 1. Purpose and Patterns: The ABM simulates realistic agent movement to and between modeled healthcare facilities throughout North Carolina.It is designed as a base model for disease-specific submodels.
  • 1. Purpose and Patterns: Validation compares modeled patterns with length-of-stay distributions, facility capacities, transfers between facility types, and agent demographics.The stated validation targets are based on matching known or historical healthcare-facility information.
  • ABM Patterns: The ABM evaluates admissions, average length of stay, length-of-stay variability, capacity stability, and movement between healthcare-location types.Pattern checks use expected values, discharge data, and facility inputs; larger targets are generally expected within 5%.
  • ABM Patterns: A single 1-year run is used for some large-scale pattern checks, and setting the random seed makes model results reproducible.The rationale is the combination of 365 modeled days, more than 10 million agents, and large pattern targets.

2. Entities, State Variables, and Scales

The ABM represents North Carolina residents as agents moving among community and healthcare-facility nodes in a geospatially explicit network. Agents and locations carry state, demographic, and facility-specific variables updated over daily time steps.

  • Entities: The model includes agents and four location types: STACHs, LTACHs, nursing homes, and the community.Agents represent North Carolina residents, while healthcare facilities are noncommunity nodes.
  • Scales: The network contains over 500 geospatially explicit nodes, with facilities located by address coordinates and agents assigned to county-based locations.Each county is represented by its centroid, enabling movement based on distances between home counties and facilities.
  • Scope boundaries: Agent movement among households and interactions within a household are not modeled, and not every North Carolina county has a modeled healthcare facility.The model instead represents community residence at a community node outside modeled facilities.
  • Location variables: Healthcare locations store names, coordinates, bed counts, and Facility IDs, and agents receive specific beds when they enter facilities.STACH beds are designated as ICU or non-ICU.
  • Agent variables: Agents have location and life states, demographic attributes, concurrent conditions, length of stay, leave-facility dates, and previous locations.Variables may be added, updated, or removed as agents change locations during a run.
  • Time scale: The model uses 1-day time steps because agents are assumed to be primarily at one location each day, while submodels may use finer resolution.The total number of time steps is an input parameter.

3. Process Overview and Scheduling

At each time step, the model schedules agent actions, randomizes their execution order, and updates locations or life states. Randomization represents resource constraints and variation in agents’ simulated days.

  • Action scheduling: Each time step generates agent updates that are collected as actions for the model to execute.Actions include the agent’s unique ID and the action type.
  • Action types: Examples include seeking hospitalization from the community, transferring between facilities, and dying at a facility.The base model executes only location-movement and life actions.
  • Execution order: Actions are randomized before execution so limited resources such as beds are allocated in a more realistic manner.The same randomization also helps maintain a realistic simulation of an agent’s day.
  • Extensibility: Additional agent actions are specified in accompanying disease-specific submodel ODDs.The base model can therefore be extended with submodel-defined actions.

4. Design Concepts

The ABM represents healthcare-facility populations and movement using demographic initialization, capacity rules, randomized event scheduling, and strict transition probabilities. Its base structure has important boundaries: it lacks prediction and sensing, uses reduced populations that trade accuracy for speed, and leaves adaptation mainly to disease-specific submodels.

  • Overview: Model outcomes from emergence primarily depend on disease-specific submodels, while facility movement follows strict transition probabilities.Adaptation may become more relevant when a disease-specific submodel is implemented.
  • Movement: Agents may be turned away when facilities reach capacity and can select another facility through rule-based decisions.Some beds use stationary placeholder agents to represent non-North Carolina residents because those residents are not modeled directly.
  • Design concepts: The ABM has no explicit or implicit prediction components, and agents have no knowledge concept, making sensing irrelevant.
  • Scheduling: Random event probabilities are compared with generated random numbers, queued qualifying events are executed in randomized order, and fixed seeds enable reproducibility.
  • Agents: Agents are initialized from RTI SynthPop demographic data, with unique identifiers and age-based randomly assigned concurrent conditions.Synthetic-population rows are randomly selected, and agents not initially assigned to facilities start in the community.
  • Facilities: Facility beds are scaled to modeled population size, with each facility assigned at least one bed and starting capacities derived from input parameters or available data.Hospital-specific capacities can incorporate discharge data, mean length of stay, and input fill parameters; ICU beds use a similar process.

LTACHs

LTACH initialization fills beds using county-selection probabilities based on facility distance, then randomly selects agents from chosen counties subject to age requirements.

  • LTACH initialization: LTACHs assign agents according to the facility’s fill parameter and number of LTACH beds.
  • County selection: Counties are selected with replacement using probabilities based on distance from the facility to each county’s center.Closer counties are more likely to be selected.
  • Agent selection: After counties are selected, agents are randomly chosen from those counties, and LTACH agents must be at least 50 years old.Selection between the two eligible age groups is not weighted by age.

Nursing Homes

Nursing homes are initialized to facility-specific capacities by selecting agents through county-distance probabilities and restricting eligibility to people aged 65 or older.

  • Initialization: Nursing homes are initiated with agents based on facility-specific capacity values.
  • County selection: Agents are randomly selected using a probability distribution based on relative distance between the facility and each county.This follows the LTACH initiation approach.
  • Eligibility: Nursing-home agent selection requires agents to be at least 65 years of age.

6. Input Data

The ABM requires facility-specific input files and geography files describing facilities, capacities, locations, and county-to-facility distances. These inputs combine online hospital and LTACH data with CMS nursing-home data and programmatically added geocodes.

  • Geography files: Three geography files, one for each facility type, provide county-center-to-facility distances used to select new facilities for agents.Code for automatically creating these files is available in the repository.
  • Facility files: A separate file is required for each facility type to create model facilities.
  • Facility files: The STACH hospital file contains hospital name, location, and ICU and non-ICU bed counts, but only hospitals with discharge-data information are used.
  • Facility files: Nursing-home files contain facility name, bed count, county, and geocode information from CMS data with geocodes added programmatically.
  • Facility files: LTACH files contain each facility’s name, bed count, and geocode and are derived from online data.

Discharge Data (data/sheps_data/2018/…)

The model prepares hospital and synthetic-population inputs from North Carolina data files, then adds transition and mortality parameters for simulation.

  • Input data: Three public hospital files provide county origins, patient characteristics, and facility-level length-of-stay estimates.The PDFs are automatically converted into CSV files read by the model.
  • Input data: The synthetic population file supplies model agents and receives two updates described in the initialization section.
  • Input preparation: Preparation calculates transition probabilities and other required inputs from model parameters and data files.The preparation script is available in the code repository.
  • Model parameters: Additional parameters specify nursing-home mortality and transitions among LTACHs, hospitals, nursing homes, and communities.These include death and post-discharge movement proportions.

Component: hospital-df

The hospital-df component combines facility information and calculates age-specific movement, discharge, mortality, and initialization targets for the ABM.

  • Facility data: The hospital object merges information across input files and provides starting capacities for the model.
  • Movement probabilities: Community movement probabilities represent daily treatment-seeking likelihoods by county and age group for hospitals and nursing homes.LTACH probabilities are excluded because community agents cannot enter LTACHs directly.
  • Discharge probabilities: Discharge probabilities are calculated for each hospital and collective nursing-home and LTACH categories, with rows summing to 1.Probabilities are age-specific and based on observed discharge destinations.
  • Age restrictions: Agents younger than 65 cannot enter nursing homes, and agents younger than 50 cannot enter LTACHs.
  • Life submodel: Death probabilities are based on deaths divided by discharges and are applied when an agent’s length of stay ends.Hospital mortality uses discharge data, while LTACH and nursing-home mortality uses model parameters.
  • Initialization: Initialization calculates a four-by-four facility-type movement matrix and the age distribution of agents entering hospitals.

Location

The location submodel moves agents through community and healthcare-facility states using daily movement, readmission, length-of-stay, and disease-driven triggers.

  • Movement triggers: Agents move when community selection, scheduled readmission, length-of-stay completion, or a disease-related submodel action triggers movement.Scheduled readmission is currently inactive.
  • Community movement: Community agents have daily probabilities of entering short-term acute-care hospitals or nursing homes, with selected actions placed in a queue.The selected agent receives a specific location and length of stay.
  • Facility selection: An agent’s first-choice facility is determined by home county and facility admission frequency.
  • Facility transitions: Facility agents leave only when their length of stay ends, after which transition probabilities determine destination or death.A second random draw selects the exact facility when a non-community destination is chosen.
  • Facility transitions: The model assumes most nursing-home residents transferred to hospitals return to nursing homes, using an input-controlled probability.
  • Data limitation: Nursing-home movement is constrained by a general lack of available data and can be updated with additional data.
  • ICU assignment: ICU-need probability uses age, concurrent conditions, selected length of stay, and hospital bed count, with an input parameter controlling ICU stays.The parameter was calibrated to maintain a steady state of ICU patients.
  • Length of stay: LTACH arrivals receive gamma-distribution length-of-stay assignments, while STACH and nursing-home arrivals use facility-level transition distributions.

Location: facilities at capacity

When facilities lack capacity, the model applies ordered search rules for alternative beds and records agents who remain unable to enter a facility.

  • Capacity handling: Capacity shortages can turn agents away, and the model records agents completely turned away during a run.The record includes the agent’s date, location, and county.
  • Alternative-bed rules: At an over-capacity hospital, an agent first searches for any open bed, regardless of ICU status or the initially sought bed type.
  • Alternative-bed rules: The agent next searches all facilities in the home county, followed by additional North Carolina facilities within a configurable 200-mile radius.
  • Transfers: Agents transferred from another facility try only their first-choice facility; if it is full, they return to the community.This assumption reflects the premise that facilities would not transfer agents without an available bed.
  • Capacity parameters: Additional parameters control how many nursing homes and LTACHs agents consider or try after capacity-based rejection, along with maximum distance.
Loading 2202.06853v2…