GMCMU Collaborative Research Laboratory Temporal Logics for Analyzing
GM-CMU Collaborative Research Laboratory Temporal Logics for Analyzing Hybrid Systems Simulation Traces
GM-CMU Collaborative Research Laboratory Sources of Simulation Traces Vehicle. Simulator MATLAB Simulink Physical Simulation Visual Tools PTOLEMY CHARON • Vehicle. Sim : 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)
GM-CMU Collaborative Research Laboratory Temporal 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 Design Temporal Property Vehicle. Simulator MATLAB Simulink Physical Simulation Visual Tools PTOLEMY CHARON Simulation Trace Automated Trace Analyzer Report
GM-CMU Collaborative Research Laboratory Example • Always (a <= b) • The value of a never exceeds the value of b. a <= b a>b ERROR
GM-CMU Collaborative Research Laboratory Trace: Example • 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. abc 000 1 2 100 True a=b c=100 c!=100 ERROR
GM-CMU Collaborative Research Laboratory Trace: Example • 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. abc 000 1 2 100 True a=b c=100 c!=100 ERROR
GM-CMU Collaborative Research Laboratory Trace: Example • 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. abc 000 1 2 100 True a=b c=100 c!=100 ERROR
GM-CMU Collaborative Research Laboratory Trace: Example • 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. abc 000 1 2 99 True a=b c=100 c!=100 ERROR
GM-CMU Collaborative Research Laboratory Trace: Example • 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. abc 000 1 2 99 True a=b c=100 c!=100 ERROR
GM-CMU Collaborative Research Laboratory Trace: Example • 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. abc 000 1 2 99 True a=b c=100 c!=100 ERROR
GM-CMU Collaborative Research Laboratory Research 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 Design Temporal Property Vehicle. Simulator MATLAB Simulink Simulation Trace Physical Simulation Visual Tools PTOLEMY CHARON Your inputs? Automated Trace Analyzer Report
GM-CMU Collaborative Research Laboratory
GM-CMU Collaborative Research Laboratory Robustness of Hybrid Systems and Simulation Traces • If two traces have a prefix equivalent under a “robustness” assumption, we can combine them into an execution tree.
- Slides: 15