Skip to content

Overview of MassCasualty

Jessi Lanum edited this page Jul 15, 2023 · 5 revisions

Problem, Purpose, and Objective

The Problem, Purpose, and Objective (PP&O) of MassCasualty is to address the Problem that mass casualty triage in an environment, like the Pacific, has not been done in theater since World War II. As such, the Purpose of MassCasualty is to support Force Design efforts by demonstrating a framework for mass casualty triage simulations in order to examine readiness and current process for a future fight. The Objective is then to provide quantitative data output and analysis for mass casualty triage operations by a Mercy-class hospital ship.

Code Breakdown

MassCasualty is broken up into 10 distinct parts, present in the code in this order.

  • Imports
  • File Structure
  • Variables And Parameters
  • Marine Instance
  • Data Tracking
  • Data Calculations
  • Graphing
  • Triage System
  • Running the Model
  • Data Output

Imports

The imports section at the beginning of the code serves to add any additional packages or libraries that would be needed in calculations or outputs of the program. These imports include:

  • OS to interact with the operating system to create the folder structure to store our outputs.
  • Numpy a scientific computing package for math.
  • Simpy a discrete event simulation framework.
  • Pandas a data analysis library.
  • Matplotlib a visualizations library. Specifically, utilizing pyplot for 2D graphs in Python.

File Structure

This simply defines in the program where to create output folders to store any generated outputs of the program.

Variables And Parameters

This section includes any variables or parameters needed throughout the system (also referred to as globally). This includes the specification for the duration of the simulation. This allows for seeing what could occur with unlimited time to triage, or, potentially, only a set period of time. Number of triage personnel dedicated to each triage color can be specified, as well as maximum occupancy of triage color locations. The mean and standard deviation used later to calculate care time for each triage color can also be modified.

Marine Instance

This defines our simulation's Marine instance. Each generated Marine contains a unique ID and a randomly generated triage color code (Red, Yellow, Green, or Black).

Data Tracking

This section contains the mechanisms for tracking data as the simulation progresses through Pandas DataFrames.

Data Calculations

This section performs calculations on the tracked data to provide averages and totals.

Graphing

This section controls the design and generation of graphs based on the tracked and calculated data through Matplotlib.

Triage System

Marines are triaged depending on their randomly assigned triage priority color. Resources are defined by triage location space and triage care personnel. For each color, the Marine undergoes three key processes.

First, the Marine waits to be moved to the appropriate triage location (Main Battle Dressing Station for Red, Holding Area for Yellow, Auxiliary Treatment Area for Green, or Other Location for Black). The Marine will wait until there is a space available in their color designated location dictated by the preset variable for maximum occupancy in their triage color location.

Once at the appropriate location, the Marine then waits to be seen by the appropriate triage personnel (Red Designated Doctor, Yellow Designated Doctor, Green Designated Corpsman, or Black Designated Corpsman). The Marine will wait until there an appropriate personnel member to care for them. This is also dictated by the preset variable of total available triage color dedicated personnel.

Once the Marine is assigned the right care personnel, the Marine will undergo care time. Care time is calculated based of a lognormal distribution based on the providers mean and standard deviation for care time in order to provide realistic data associated with severity of sustained injuries.

This mixture of relying on defined constrained resources impacted by others' use in the system as well as the application of randomized care times based on realistic expectations provides more precise fidelity to the model.

Data Output

Lastly, data is outputted. Data is outputted to an "outputs" folder, which contains CSV files of all collected and calculated data, as well as relevant graphs.

Examples of the data outputs are below. Separate CSVs with the data grouped by triage color are also outputted, but not shown.

All Marine Data CSV

all_marine_data

Triage Averages CSV

triage_averages

Priority Counts CSV

prioritycount

All Marine Data Graph

individuals

Triage Averages Graph

average

Priority Counts Graph

counts

Average Experience Graph

average_experience