MERS Model-based programming of Cooperating explorers Brian c. williams CSAIL Dept. Aeronautics and astronautics Massachusetts Institute of Technology
Model-based Programming of Cooperating Explorers Brian C. Williams CSAIL Dept. Aeronautics and Astronautics Massachusetts Institute of Technology
Programming Long -lived Embedded Systems 回 Helium tank Oxidizer tank Fuel tank Petare, molal 自自 Engines Large collections of devices must work in concert to achieve goals Devices indirectly observed and controlled Need quick, robust response to anomalies throughout life Must manage large levels of redundancy
With Complex Autonomic Processes Programming Long-lived Embedded Systems Large collections of devices must work in concert to achieve goals • Devices indirectly observed and controlled • Need quick, robust response to anomalies throughout life • Must manage large levels of redundancy
Coordination recapitulated at The MERS Level of Cooperating explorers ( Courtesy of Jonathan How. Used with permission
Coordination Recapitulated At The Level of Cooperating Explorers (Courtesy of Jonathan How. Used with permission.)
Coordination issues increase for MERS Dexterous Explorers A Courtesy of Frank Kirchner. Used with permission
Coordination Issues Increase For Dexterous Explorers (Courtesy of Frank Kirchner. Used with permission.)
Outline MERS Model-based Programming Autonomous Engineering Operations An example Model based execution Fast reasoning using conflicts Cooperating mobile vehicles Predictive Strategy Selection Planning out the strategy
Outline • Model-based Programming • Autonomous Engineering Operations – An Example – Model based Execution – Fast Reasoning using Conflicts • Cooperating Mobile Vehicles – Predictive Strategy Selection – Planning Out The Strategy
Approach MERS Elevate programming and operation to system-level coaching 2 Model-based Programming State aware coordinates behavior at the level of intended state e Model-based execution Fault aware: Uses models to achieve intended behavior under normal and faulty conditions
Approach Elevate programming and operation to system-level coaching. Î Model-based Programming – State Aware: Coordinates behavior at the level of intended state. Î Model-based Execution – Fault Aware: Uses models to achieve intended behavior under normal and faulty conditions
Why Model-based Programming MERS Polar Lander Leading Diagnosis Legs deployed during descent Noise spike on leg sensors latched by software monitors Laser altimeter registers 40m Begins polling leg monitors to determine touch down Read latched noise spike as Objective: Support programmers touchdown with embedded languages that Engine shutdown at -40m avoid these mistakes, by reasoning about hidden state Programmers often make automatically commonsense mistakes when Reactive Model-based reasoning about hidden state Programming Language(RMPL)
Why Model-based Programming? Polar Lander Leading Diagnosis: • Legs deployed during descent. • Noise spike on leg sensors latched by software monitors. • Laser altimeter registers 40m. • Begins polling leg monitors to determine touch down. • Read latched noise spike as touchdown. • Engine shutdown at ~40m. Programmers often make commonsense mistakes when reasoning about hidden state. Objective: Support programmers with embedded languages that avoid these mistakes, by reasoning about hidden state automatically. Reactive Model-based Programming Language (RMPL)
Model-based programs MERS Interact Directly with State Embedded programs interact with Model-based programs plant sensors and actuators interact with plant state Read sensors · Read state Set actuators Write state Model-based Embedded program Embedded Program obs Cntrl Model-based Executive obs Cntrl Plant Plant Programmer must map between Model-based executive maps state and sensors/actuators between state and sensors/actuators
Interact Directly with State Model-based Programs Embedded programs interact with Model-based programs plant sensors and actuators: interact with plant state: • Read sensors • Read state • Set actuators • Write state Embedded Program S Plant Obs Cntrl Model-based Embedded Program S Plant S’ Model-based Executive Obs Cntrl Programmer must map between Model-based executive maps state and sensors/actuators. between state and sensors/actuators
RMPL Model-based Program Titan Model-based Executive Control Program Executes concurrently Preempts Generates target goal states Queries(hidden)states conditioned on state estimates Asserts(hidden) state System Model State estimates State goals 数O Tracks Tracks least e Valve plant states cost goal states open小sk open 0.01 Stuck Closed Observations Commands ose inflow outflow Plant
Control Sequencer Deductive Controller Mode Estimation Mode Reconfiguration RMPL Model-based Program Titan Model-based Executive System Model Observations Commands Control Program Plant State estimates State goals Generates target goal states conditioned on state estimates Tracks likely plant states Tracks least cost goal states z Executes concurrently z Preempts z Queries (hidden) states z Asserts (hidden) state Closed Valve Open Stuck open Stuck closed Open Close 0. 01 0. 01 0.01 0.01 inflow = outflow = 0
Outline MERS Model-based Programming Autonomous Engineering Operations An example Model based execution Fast reasoning using conflicts Cooperating mobile vehicles Predictive Strategy Selection Planning out the strategy
Outline • Model-based Programming • Autonomous Engineering Operations – An Example – Model based Execution – Fast Reasoning using Conflicts • Cooperating Mobile Vehicles – Predictive Strategy Selection – Planning Out The Strategy