What do these items have in common?
physical (continuous) components
digital (discrete) components
interactions
interactions
Cyber-physical systems
Cyber-physical systems are used at global scale in safety critical applications.
Wrong assumptions about a cyber-physical system can cost lives! (and millions of dollars)
Problem: System's behaviour can change with parameters.
Friction
Wind speed
Traction control on/off
Turbocharger on/off
Emission avoiding on/off
Fuel efficiency
Problems in cyber-physical systems:
Verification: given a system, validate that the system satisfies given specification.
(Regardless of wind speed, the airplane won't crash)
Synthesis: given a family of systems, find one that satisfies given specification.
(Across all possible fuels, this turbocharger setting provides best efficiency)
Control: given a system's state, adjust the system to satisfy the specification.
(For current wheel rotation speed, breaks have to be turned on to avoid skid)
Reductionist approach: Analysis in isolation
Continuous (physical) Systems:
In continuous systems small (smooth) change in parameters usually produces a small change in behaviour.
Problem: Usually
Bifurcation: Big (qualitative) change of behaviour
Behaviour patterns:
Stability ➔
➔ Oscillation ➔
➔ Stability
Reductionist approach: Analysis in isolation
Discrete (digital) Systems:
If I insert a coin, will I eventually get a beverage?
In discrete systems, there is no small parameter change. Any change in parameters can have unexpected consequences.
Temporal properties are often too restrictive:
System stabilises in state X.
What if we don't know X?
??
??
Stable equilibrium
Cycle (oscillation)
Unstable equilibrium
General attractor
HUCTL: Logic for behavioural pattern specification
Behavioural patterns
Parametric model checking
Pattern validity regions