Cloud-Based Deployment and Distributed Execution of Models

Rob Kewley, USMA West Point Department of Systems Engineering Motivation Here Magic Happens Chain of tools for using M&S to develop system of systems of systems system develop using M&S to for Chain of tools architecture the properties design to the system connect we to How inputs? simulation West Point Department of Systems Engineering on through Modeling Current Approaches Frameworks Link many independent models Link many Orchestrated Simulati Orchestrated Framework for Assessing for Cost and Technology Framework HLA/DIS Always On Always Connect Systems Architecture to Executable Model Executable to Architecture Connect Systems Agent Based Models Engineering Resilient Systems Engineering Resilient West Point Department of Systems Engineering IWARS OneSAF Combat XXI We have tried HLA/DIS before… have We West Point Department of Systems Engineering 5 protocols exchange different information databases 4 different terrain Runs only in real time scenario initialization must be manually coordinated Complex federates across is manual and error-prone Scenario execution and causality can be impossible Data collection complex proposition is a months-long the scenario Changing …HLA/DIS integration does not scale…. does not …HLA/DIS integration West Point Department of Systems Engineering Soldier Dismount these models We need We IWARS HLA Approach Dismount Movement RTI FOM UAV OneSAF Vehicles these models We need We West Point Department of Systems Engineering Output Analysis Baggage Baggage integrated must also be must Soldier Initialization Dismount Scenario IWARS Real Time Open Flight HLA Approach Dismount Movement RTI FOM AAR UAV Initialization MSDL OneSAF Real Time OTF Vehicles Simulations Simulations have baggage have West Point Department of Systems Engineering Output Analysis Soldier Initialization Dismount Scenario IWARS Real Time Open Flight HLA Approach Dismount Movement RTI FOM AAR UAV Initialization MSDL OneSAF Real Time OTF Vehicles West Point Department of Systems Engineering functions. Leave the baggage at home. the baggage Leave functions. Bring your models a “pure” state transition Bring your Distributed Modeling Framework Distributed West Point Department of Systems Engineering Things to Discuss Things to Summer vacation at AMSAA Summer vacation Models are services via an interface (BOM) Model) (Actor via messaging Communicate ProModel) models in an interface (…like Compose model parameters model (SysML) drives Systems engine (DEVS-Akka) and parallel execution Distributed Supportof with design and analysis experiments technologies Enterprise Specification(DEVS) models Systems Event Discrete model of computation Actor Federate models, not simulations not models, Federate architecture Loosely managed distributed advances of latest advantage Take implementation principle of Proof small UAS for implementation Target Web Based Modeling and Technical Approach Simulation for Analysis Develop capability to deploy Army models and simulations Web Simulation to distributed users via web a cloud technologies. Interface Interface

Network

Data Data Data Models as services – connected to data Objectives Deliverables

Current Business Model Proposed Business Model • AMSAA models deployed on classified network as Deploy as software Deploy as web services services with web and simulation interfaces • ACQUIRE‐TTPM‐TAS Accessed locally by a few Run distributed by many • Direct Fire Accuracy users users • Dismounted Vulnerability Data deployed separately Data integrated and • Dismounted Mobility updated • Hand Grenade Accuracy Single programming Cross‐platform integration • Proof of principle web‐based simulation language of models in different languages integrating these models Acquire Service

Current Configuration Turn Debugging On/Off

Play/Pause Service

Start/Stop Service Acquire Test Client West Point Department of Systems Engineering EASE Program ARL Simulation and Training Technology Center Technology ARL Simulation and Training West Point Department of Systems Engineering Model D Model C Messaging System Enterprise Data Model Enterprise Architecture Simulation Execution Engine Enterprise Data and Services Model B Design and Analysis of Experiments Design and Enterprise Model Integration Enterprise Model A West Point Department of Systems Engineering BOM Model Awareness Awareness BOM Model Communications Technology Stack Technology Buffers Akka/ZeroMQ XML, Google Protocol XML, Google SysML Architecture BOM Model Target Target Acquisition Layered Terrain Format/Terrain Services Format/Terrain Layered Terrain Data Farming, HTCondor, Statistical Software Data Farming, HTCondor, Akka Engine Warp Time Actors/Distributed DEVS BOM Model Movement West Point Department of Systems Engineering Simulation Analyst Engineer Scenario Results Vehicle Properties C2 Properties Network Properties Network System models are functional, are models System can They and modular. discrete, be added as needed to the simulation and run in parallel. In contrast to current federations, the simple and analyst combines many individual functional models of entire simulations. not systems, C2 System Movement Survivability Sensor Fusion COP Management Propagation Bandwidth TARDEC Vehicle Models CERDEC Situation Models Awareness CERDEC Models Network Executable Architecture mapping Systems-model Federation execution Time management Data management State management Data collection Design of Experiments Legend Simulation Execution Simulation Initialization Mapping System-Model Simulation State Events Enemy activity Enemy Scanning Target Acquisition NVL Sensor Models QRF Sensor Properties Distributed Modeling Framework (EASE-DMF) Framework Modeling Distributed Soldier Properties Executable Architecture for Systems Engineering Systems for Architecture Executable TOC Movement Weapon Target Acquisition NSRDEC Soldier Models Operational Scenario Squad on patrol Squad on Video Spot reports Position reports EASE-DMF provides the tools for the simulation analystengineer and to build scenarios, combine models, set in collect data order to and properties, system performance. analyze West Point Department of Systems Engineering Useful Theories - Simulation DEVS models are modular models are DEVS Composablemodels in coupled hierarchies track record Strong the models semantics to Adds specification of and outputs data inputs Complete or interactions models in a chain Situates – Optimistic time advance Time Warp Supports and cloud-based implementations distributed Discrete Event Specification (DEVS) Event Discrete (BOM) Base Object Model algorithms Parallel West Point Department of Systems Engineering Sending messages to other actors other Sending messages to that influences future Changing in a way messages state actors Creating new driven Event Responsive Asynchronous Loosely coupled messaging Fault tolerant Functions are composable Functions no side effects have Functions Predictable behavior Encapsulation of state messages by… to Responds programming Reactive Useful Theories – Science Computer Functional programming Functional computation of model Actor West Point Department of Systems Engineering Akka http://akka.io Implementation of reactive actor reactive of Implementation Scala versions and an Akkais Each DEVS model SimActor thread its own runs on Each actor messaging data only through Exchanges actors distributed serialization and Supportfor manage threads to Ability Open source West Point Department of Systems Engineering Time Target Detection DEVS Model Awareness Acquire Acquire Outputs Target Mappings Detection Schedule Acquire State State: State: State Sensor & Location Orientation (External State Transition) (External State Sensor Event Handler Event Slew Sensor Slew DEVS Model DEVS (internal State Transition) State (internal Inputs Acquire Acquire ACQURIE Sensor Model ACQURIE Mappings Weather Background Properties Exposed Area Target Properties Sensor Properties Target Location DEVS DEVS Model Soldier Time Terrain Model Terrain Location West Point Department of Systems Engineering Location XML Response Location Response Time Location Vehicle XML Time Request Location Velocity Data Service Request Service Interface Service Java or C++ API or C++ Java Init Init Vehicle velocity = getVehicleVelocity(t); velocity = * time) + velocity return new Location(l Type XML Vehicle Type private static Velocity velocity; public DeadReckon(VehicleType t) { } l, intpublic static Location newLocation(Location time) { } public final class DeadReckonpublic final class { } Network JSON Buffers Protocol XML Exposing Function Interfaces Exposing Function Use static class Use static data at Pass in initialization instantiation static methods Use public Define message classes for input/output to Map message classes such as: protocol messaging a serviceExpose through interface thoroughly Document everything As a class in API transition As a state function service West Point Department of Systems Engineering Schedule Schedule Schedule Schedule

State State State State State functions functions transition transition functions functions transition transition function function functions transition transition transition transition DEVS Actor External state External state state External Internal state state Internal External state state External Data Terrain Event Event Source Source Source Source Event Event Source Source Time Time Properties Vehicle Velocity Data Schedule Schedule Schedule

State State State State Location Protobuf functions functions transition functions functions transition function functions functions transition transition DEVS Actor Actor DEVS External state Schedule Schedule Schedule Schedule Schedule External state Internal state External stateExternal

State State State State functions functions transition transition functions functions transition transition Message function function transition transition functions functions transition transition DEVS Actor Actor DEVS External state External state Internal state state Internal External state Event Event Event Source Source Event Source Source Time Schedule Schedule Schedule Properties Schedule Schedule Actor Bus Actor

State State State State functions functions transition transition Event functions functions transition transition function transition transition functions functions transition transition DEVS Actor External state state External External state state External Event Event Internal state state Internal Source External state state External Location Source Event Event Source Schedule Schedule Schedule Schedule Schedule Event Event Event Source Event Source Source Time Time Source Time Properties Properties Properties Properties Simulation

State State State State functions functions transition transition functions functions transition transition function functions functions transition transition transition transition DEVS Actor External state state External External state state External Internal state state Internal External state state External Event Event Event Source Source Source Event Source Time Properties Properties Init Terrain Data Message Coupled Actor (Aircraft) Vehicle Type Initial Location Akka (CAF) Framework Actor or C++ Akka (CAF) Framework Actor or C++ New Route Network Composing DEVSActors Composing JSON Buffers Protocol XML Akka (CAF) Framework or C++ Actor at Pass in initialization data instantiation Define message interface messaging Map message classes to such as: protocol Akka or CAF remoteactors thoroughly Document everything in a models linked tightly Compile coupled actor interaction Compile models with heavy trafficnative or JVM (Akka) in same library (CAF) engine with execution Control such as data sets large interactive Copy terrain to eachprocess to savenetwork traffic As DEVSActor distributed actor As a As simulation West Point Department of Systems Engineering Sensor AMSAA AMSAA Acquire Awareness Radio Movement Network Sensor AMSAA AMSAA Acquire Sensor AMSAA AMSAA Acquire UGV Soldier Reference Implementation Reference Awareness Movement Movement West Point Department of Systems Engineering Simulation Execution West Point Department of Systems Engineering EASE-DMF Use Cases West Point Department of Systems Engineering ion and SysML (DEVS) Target acquisition Target Communications propagation Situation awareness Power Flight dynamics Terrain Size, weight, and power and Size, weight, Rotary wing Fixed vs. Noise Sensor performance Radio performance • • • • • • • • • • • Develop a series of discrete analysis a series models to of discrete Develop performance technical UAS represent small in web-based interface Wrap using Discrete simulation framework in Integrate Specificat Systems Event SysMLUAS micro proposed of architecture and design of experiments Scenario development performance UAS key Simulation analysis of micro tradespace parameters mission performance metrics level or platoon Squad Technical Approach Technical • • • Deliverables • • • • PM UASUSMAAMRDECSTTC ARL NSRDEC AMSAA New SUAS acquisition strategy requires PM UAS to to PM UAS strategy requires acquisition SUAS New (LSI) integrator as lead systems operate assessment requires of engineering trades LSI role modeling and a web-based integrated Develop assess to engineering trades simulation framework unmanned aircraft small systems for Summary • • • Small Unmanned AircraftSmall Unmanned Modeling Framework West Point Department of Systems Engineering Functions of a DEVSActor Functions Initialize with static propertiesInitialize with Local and global virtual time transitions state schedule of An internal transition functions state external and internal of set A a or generate event, schedule and internal its state, update It may DEVSActors other message to as global time advances and drop state internal of Maintain record back of roll in the event be replayed that may List of events random variatesgenerate An ability to transitions state by needed A publish and a notification subscribe mechanism that asks for message upon sepecificDEVSActors transitions other of state West Point Department of Systems Engineering t Even Time Rules for functions: Rules stateless Must be initialization use May closure data under These are static objects with only static data and methods After initialization, calling with same gives data always same answer DEVS Actor DEVS M&S Composition Schedule Schedule Schedule State function transition State Transition Functions Transition State State State State State function transition DEVS Actor DEVS Internal state state Internal at same instant can be chained at same instant can be transition function functions such as coordinate as functions such External state transition function state External State function transition transformation Functions are mathematically composable Functions are mathematically State transitions that take place Calls out to stateless utility into one state transition t DEVS Actor DEVS Even Time