Title: Federating TimeStepped and Discrete Event Simulations for Analysis
1Federating Time-Stepped andDiscrete Event
Simulationsfor Analysis
The Analysis of Mobility Program Federation
- Emmet Beeker
- GRCI, An ATT Company
2Outline
- The Problem
- Simulation Modes
- Time-Stepped (MIDAS)
- Discrete Event (ELIST)
- Federation Control (AMP Federate)
- Run-Time Infrastructure
- Synchronization
- Lessons Learned
3The Problem
- MIDAS performs strategic deployment simulation
- Uses look-up tables for port to destination time
- Ports simulated as tons/day by berth, cargo, and
ship type - ELIST performs high resolution port and theater
transportation system simulation - Cranes, cargo handling equipment
- Individual trucks, rail cars, warehouses
Replace theater transportation in MIDAS with
ELIST?
4Simulation Modes
Time-Stepped Simulation
- Unable to resolve event times within a cycle
- Simulation time moves in fixed increments
- Each model is executed every time-step
5Simulation Modes
Discrete Event Simulation
- Events occur at calculated discrete times
- Simulation time advances in jumps from one event
time to the next - Only interacting models are processed at each time
6Discrete Event (ELIST)
- Interspersed Events
- Ships arrive at port
- Ships unloaded
- Ships released from port
- Transportation assets assigned to cargo
- Cargo moved to staging area
- Cargo moved to marry-up
- Cargo moved to destination
7Federation Control (AMP Fed)
- Initializes ELIST and MIDAS
- Generates deployment requirements file (TPFDD)
- Specifies/allocates transportation assets
- Synchronizes execution
- Gathers output data for display and analysis
8Runtime Infrastructure
Time-Stepped Simulation
Federate receives time grant to time t. Federate
processes models sending attribute values
interactions for time t1. Federate asks for time
advance to time t1.
After ALL federates request time advance to t1,
RTI sends attribute values and interactions. RTI
grants time advance to t1.
1
9Runtime Infrastructure
Discrete Event Simulation
Federate receives time grant to time t0. Federate
processes event sending attribute values
interactions for time t0lookahead or
greater. Federate asks for next event with cutoff
of t1.
After ALL federates request time advance to t1 or
greater, RTI sends next update with timestamp
less than t1.
Federate processes event - asks for next event
with cutoff of t1.
10Runtime Infrastructure
- All federates participate in time advances
- Timestamps on updates interactions cannot be
used to calculate time advance - Limited to 100 time advances per second
- Huge penalty for zero lookahead
11Synchronization
ELIST
t1
t
MIDAS
- MIDAS can collect all of the events during the
time-period (t0, t1, t6) and process them
before beginning day t1. - How can ELIST receive events at proper times.
12Synchronization
- MIDAS processes day 1 and generates event times.
- Asks for time advance day 2.
ELIST receives messages in order as it asks for
next event. When ELIST asks for time advance past
midnight -
MIDAS receives time advance grant to day 2.
13Synchronization
- MIDAS Planning Cycle
- Look at each requirement in priority order
- Calculate delivery based on air transport to 45
days - Calculate earliest delivery based on sea
transport - If sea delivery is earlier, remove from air plan,
add to sea plan, and recalculate air plan - MIDAS Execution Cycle
- Move waiting ships to berths
- Load/unload ships at berth
- Move loaded ships to sea
- Move ships at sea (arrive at port)
ELIST only cares about ship and air arrivals for
next day
14Synchronization
15Lessons Learned
- Data standards are not standard
- Ships change name every year
- Geoloc codes can be assigned to an area or a bldg
- Short synch time step can miss events
- Complex time object with phases may be better
- The reward for a good job is more work