temporal logics for analyzing hybrid systems simulation traces
DESCRIPTION
Temporal Logics for Analyzing Hybrid Systems Simulation Traces. VehicleSim Simulator. MATLAB Simulink. Physical Simulation. Visual Tools PTOLEMY CHARON. Sources of Simulation Traces. VehicleSim : A software simulator for vehicle dynamics Simulation Traces from MATLAB / Simulink - PowerPoint PPT PresentationTRANSCRIPT
GM-CMU Collaborative Research Laboratory
Temporal Logics for Analyzing Temporal Logics for Analyzing Hybrid Systems Simulation TracesHybrid Systems Simulation Traces
GM-CMU Collaborative Research Laboratory
Sources of Simulation TracesSources of Simulation Traces• VehicleSim : A software simulator
for vehicle dynamics• Simulation Traces from MATLAB /
Simulink• Physical testing of vehicles on
roads• Hybrid Systems Visual Tools:
Ptolemy (Berkeley), CHARON (UPenn)
VehicleSim Simulator
MATLAB Simulink
PhysicalSimulation
Visual ToolsPTOLEMYCHARON
GM-CMU Collaborative Research Laboratory
Temporal LogicTemporal Logic• We can define “interesting” events and
sequence of events.– Event a does not ever happen before event b– Event a is eventually followed by event b– Event a is always accompanied by event b– Event a follows event b within two time steps.
• Forces definition of formal correctness properties– Easier-to-use sugar-coated versions like Intel’s
FORSPEC
GM-CMU Collaborative Research Laboratory
Overall System DesignOverall System DesignVehicleSim Simulator
MATLAB Simulink
PhysicalSimulation
Visual ToolsPTOLEMYCHARON
Simulation Trace
TemporalProperty
Automated Trace
Analyzer
Report
GM-CMU Collaborative Research Laboratory
ExampleExample
• Always (a <= b)
• The value of a never exceeds the value of b.
a <= b
a > b
ERROR
GM-CMU Collaborative Research Laboratory
ExampleExample
• Always (a=b X (c=100) )
• If the value of a equals the value of b, then c must take the value 100 in 1 time step.
True
a = b
c!=100c=100
Trace:
a b c
0 0 0
1 2 100
ERROR
GM-CMU Collaborative Research Laboratory
ExampleExample
• Always (a=b X (c=100) )
• If the value of a equals the value of b, then c must take the value 100 in 1 time step.
True
a = b
c!=100c=100
Trace:
a b c
0 0 0
1 2 100
ERROR
GM-CMU Collaborative Research Laboratory
ExampleExample
• Always (a=b X (c=100) )
• If the value of a equals the value of b, then c must take the value 100 in 1 time step.
True
a = b
c!=100c=100
Trace:
a b c
0 0 0
1 2 100
ERROR
GM-CMU Collaborative Research Laboratory
ExampleExample
• Always (a=b X (c=100) )
• If the value of a equals the value of b, then c must take the value 100 in 1 time step.
True
a = b
c!=100c=100
Trace:
a b c
0 0 0
1 2 99
ERROR
GM-CMU Collaborative Research Laboratory
ExampleExample
• Always (a=b X (c=100) )
• If the value of a equals the value of b, then c must take the value 100 in 1 time step.
True
a = b
c!=100c=100
Trace:
a b c
0 0 0
1 2 99
ERROR
GM-CMU Collaborative Research Laboratory
ExampleExample
• Always (a=b X (c=100) )
• If the value of a equals the value of b, then c must take the value 100 in 1 time step.
True
a = b
c!=100c=100
Trace:
a b c
0 0 0
1 2 99
ERROR
GM-CMU Collaborative Research Laboratory
Research QuestionsResearch Questions
• How to capture the continuity of trace data ?• How to capture the notion of continuous time?– Do we need a richer yet understandable logic in
line with FORSPEC for Hybrid Systems?• Online vs. Offline monitoring– If monitoring is offline, can we write efficient
algorithms that can “look into the future”
GM-CMU Collaborative Research Laboratory
Overall System DesignOverall System DesignVehicleSim Simulator
MATLAB Simulink
PhysicalSimulation
Visual ToolsPTOLEMYCHARON
Simulation Trace
TemporalProperty
Automated Trace
Analyzer
ReportYour inputs?
GM-CMU Collaborative Research Laboratory
GM-CMU Collaborative Research Laboratory
Robustness of Hybrid Systems Robustness of Hybrid Systems and Simulation Tracesand Simulation Traces
•If two traces have a prefix equivalent under a “robustness” assumption, we can combine them into an execution tree.