unclassified simkit analysis workbench for rapid construction of modeling and simulation components...
TRANSCRIPT
![Page 1: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/1.jpg)
UNCLASSIFIED
Simkit Analysis Workbench for Rapid Construction of Modeling
and Simulation Components
Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg, John McGregor, John
Ruck.
Naval Postgraduate School
Monterey, CA
![Page 2: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/2.jpg)
24 June 2004 UNCLASSIFIED 2
WCM Project Overview
NSSSimkit
CombatXXI
SimkitAnalytical
Workbench
JFEOModeling
ImproveStrike
Module
AT/FP: Anti-Terrorism / Force Protection
CombatXXI: Next-generation Army/Marine analytical model
JFEO: Joint Forcible Entry Options
MAS: Multi-Agent Simulation
NSS: Naval Simulation System
+ AT/FP
XMSF / X3D viz / Web Services N81 Analyses SAVAGE and MAS
SAVAGE: Scenario Authoring and Visualization for Advanced Graphical Environments
Simkit: Discrete Event Simulation (DES) Application Programmers Interface (API)
X3D: Extensible 3D Graphics
XMSF: Extensible Modeling and Simulation Framework
Analytical Modeling Framework
![Page 3: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/3.jpg)
24 June 2004 UNCLASSIFIED 3
Overview
• Introduction
• Event Graph Methodology
• Simkit Java Implementation
• XML Schema for Event Graph Representation
• Viskit, Visual Tool for Event Graph Construction
• Demonstration
![Page 4: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/4.jpg)
24 June 2004 UNCLASSIFIED 4
Introduction
• Barriers to use of simulation models Simulation = “Big and Costly” Time to develop model Lack of rigorous methodology Lack of rapid-development tools
![Page 5: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/5.jpg)
24 June 2004 UNCLASSIFIED 5
Introduction (cont)
• Breaking the Barriers Event Graph Methodology Simkit Programming API Viskit Graphical Tool XML Schema for Component
Representations
• Tools to Build Tools to build Models
![Page 6: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/6.jpg)
24 June 2004 UNCLASSIFIED 6
Event Graph Methodology
• “Pure” Discrete Event Simulation (DES)
• Four Elements to DES Model Parameters State Variables Events (State Transition Functions) Scheduling Relationships Between Events
![Page 7: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/7.jpg)
24 June 2004 UNCLASSIFIED 7
Event Graph Methodology (cont)
A B(i)
A Bt (i)
![Page 8: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/8.jpg)
24 June 2004 UNCLASSIFIED 8
Simple Event Graph
Run Arrival
{N = 0} {N = N + 1}
tA
tA
![Page 9: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/9.jpg)
24 June 2004 UNCLASSIFIED 9
More Complicated Event Graph
StartService
EndService
{Q=Q+1} {Q=Q-1,S=S-1}
{S=S+1}
(S > 0)
(Q > 0)
tS
Run Arrival
{Q = 0, S = k}
tAtA
![Page 10: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/10.jpg)
24 June 2004 UNCLASSIFIED 10
Event Graph Components
• Based on “Listener” Pattern
• Loosely Coupled Simulation Components
• Listener Event Graph Objects (LEGO)
![Page 11: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/11.jpg)
24 June 2004 UNCLASSIFIED 11
SimEventListener Pattern
• SimEvent Source dispatches its SimEvent to registered SimEvent Listeners
• All SimEvents (except “Run”) are “heard” by Listener
• Used for assembling models from components
SimEventSource
SimEventListener
![Page 12: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/12.jpg)
24 June 2004 UNCLASSIFIED 12
Example: Multiple Server Queue
ArrivalStart
ServiceEnd
Service
{Q=Q+1} {Q=Q-1, S=S-1} {S=S+1}
(S > 0)
(Q > 0)
tS
Run
{Q=0, S=k}
Run Arrival
{N = 0} {N = N + 1}
tA
tA
Arrival Process
Server
![Page 13: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/13.jpg)
24 June 2004 UNCLASSIFIED 13
PropertyChangeSource
PropertyChangeListener
Property Change Listener Pattern
• PropertyChangeEvents fired at every state transition
• Listener may register for specific or all PropertyChange Events
• Used for statistics, graphing, etc.
![Page 14: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/14.jpg)
24 June 2004 UNCLASSIFIED 14
Property Change Listener Example
ArrivalStart
ServiceEnd
Service
{Q=Q+1}{Q=Q-1, S=S-1}
{S=S+1}
(S > 0)
(Q > 0)
tS
Run
{Q=0, S=k}
Simple StatsTimeVarying
(Q)
Simple StatsTimeVarying
(S)
![Page 15: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/15.jpg)
24 June 2004 UNCLASSIFIED 17
Simkit
• Java API for creating Event Graph models
• Open Source• Effective for teaching DES• Used in more than 30 NPS Masters
Theses• Implements Listener Event Graph
Object pattern
![Page 16: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/16.jpg)
24 June 2004 UNCLASSIFIED 18
Simkit
• Based on solid Event Graph methodology
• Enables reasonably rapid construction of DES models
• NPS OR/MV students able to implement models in matter of a few months
• Enabler for implementing new features in DES models
![Page 17: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/17.jpg)
24 June 2004 UNCLASSIFIED 19
Recent NPS Theses using Simkit
• REMUS vehicle for mine detection (Allen, 2004)
• Repair and Sparing of Jet Engines (Schoch, 2003)
• Operational Availability of MMA (Margolis, 2003)
• Submarine Mine avoidance (Nawara, 2003)• Dynamic Allocation of Fires and Sensors
(Havens, 2002)
![Page 18: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/18.jpg)
24 June 2004 UNCLASSIFIED 23
Viskit Motivation
• Simkit requires Java programming
• Need for non-programmer use
• Need for rapid development tool
• Organize reusable components
• Repository of existing models and components for reuse
![Page 19: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/19.jpg)
24 June 2004 UNCLASSIFIED 24
XML for Event Graph Components
• Data-centric representation of Event Graph Components
• XML is standard, open data format
• Language and Implementation independent
• Enabler for web services
![Page 20: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/20.jpg)
24 June 2004 UNCLASSIFIED 28
Code Generator
• Generates Simkit Java code from XML document
• SimEntity XML document -> SimEntityBase subclass
• Assembly XML document -> instances of SimEntities and Listeners
![Page 21: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/21.jpg)
24 June 2004 UNCLASSIFIED 29
Viskit Event Graph Editor
• Even more rapid development of Event Graph Components
• Exposes Event Graph structure better than code
• Modeler draws Event Graph and fills in information
• Open Source
![Page 22: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/22.jpg)
24 June 2004 UNCLASSIFIED 30
Viskit Event Graph Editor
Scheduling/Canceling Edge
Drawing Canvas
State Variables
Simulation Parameters
Create New Event
Self-Scheduling Edge
![Page 23: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/23.jpg)
24 June 2004 UNCLASSIFIED 31
Server Component in Viskit
![Page 24: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/24.jpg)
24 June 2004 UNCLASSIFIED 32
Viskit Assembly Editor
• “Assembly” consists of Instances of SimEntities and
PropertyChangeListeners Listening connections
arrival server
numInQueueStat
numAvailableServerStat
![Page 25: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/25.jpg)
24 June 2004 UNCLASSIFIED 33
Viskit Assembly Editor
Event Graph Components
PropertyChangeListeners
New Instance Wizard
Listener Connection Toolbar
Assembly Canvas
Execution Controls
![Page 26: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/26.jpg)
24 June 2004 UNCLASSIFIED 34
![Page 27: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/27.jpg)
24 June 2004 UNCLASSIFIED 35
Problem
• Investigate control systems for the delivery of indirect fire
• System includes: Targets Sensors Shooters Logistics delivery Logistics depot Central controller
![Page 28: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/28.jpg)
24 June 2004 UNCLASSIFIED 36
Quinone
• Developed by MAJ Alistair Dickie, Australian Army
• Model created in ~ 2 weeks (in “spare” time!) using Simkit
• Analyzed at 8th Project Albert Workshop
• Demonstration
![Page 29: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/29.jpg)
24 June 2004 UNCLASSIFIED 37
Quinone - Results
• Supplier assignment most critical• Valuing a pairing of supplier/shooter based on ammo
holding of shooter much more important than valuation based on distance
• Assignment of shooters to contacts Very sensitive to
Contact Age Distance to contact
Not sensitive to Ammo holding Contact importance
Assignment interactions• A 15 day old model can give you results (now 18 days
old)
![Page 30: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/30.jpg)
24 June 2004 UNCLASSIFIED 38
Summary
• Rapid DES modeling is possible
• Event Graph Methodology robust
• Simkit implementation mature, stable
• Viskit application accelerates development time
• Basic features and design of Viskit complete
![Page 31: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/31.jpg)
24 June 2004 UNCLASSIFIED 39
Ongoing Work and Improvements
• Improve “user-friendliness” of Viskit
• Add Experimental Design and execution features
• Execution on computer clusters
• Documentation, Help and Tutorial
• Incorporate features based on user feedback and testing
![Page 32: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/32.jpg)
24 June 2004 UNCLASSIFIED 40
POC
Arnie Buss
(831) 656-3259
Simkit may be obtained from:
http://diana.gl.nps.navy.mil/Simkit/
![Page 33: UNCLASSIFIED Simkit Analysis Workbench for Rapid Construction of Modeling and Simulation Components Arnold Buss, Don Brutzman, Curt Blais, Rick Goldberg,](https://reader038.vdocuments.net/reader038/viewer/2022110211/56649ee55503460f94bf5290/html5/thumbnails/33.jpg)
24 June 2004 UNCLASSIFIED 41
Questions