from timed automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/graz17/graz1.pdf · 2017-05-21 · from...

82
From Timed Automata to Stochastic Hybrid Games Kim G. Larsen Aalborg University, DENMARK Model Checking, Performance Analysis, Optimization, Synthesis, and Machine Learning

Upload: others

Post on 15-Apr-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

From Timed Automata

to Stochastic Hybrid Games

Kim G. Larsen

Aalborg University, DENMARK

Model Checking, Performance Analysis,

Optimization, Synthesis, and Machine Learning

Page 2: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

CISS –Center For Embedded Software Systems

Regional ICT Center (2002- )

3 research groups Computer Science Control Theory Hardware Wireless Communication

20 Employed 25 Associated 20 PhD Students 70 Industrial projects 10 Elite-students

ARTIST Design ARTEMIS / ECSEL ... ...

Kim G. Larsen [2]TU Graz, May 2017

Page 3: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

From ES to CPS

TU Graz, May 2017 Kim Larsen [3]

New Foundation

Discrete Models

(Boolean correctness)

Quantitive Models(time, resources,

probabilistic, stochastic,

continuous,..)

(Quantitative correctness)Stochasticity

Real Time

Resources

Hybrid

Discrete

Page 4: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Model Checking

TOOL

System Description

Requirement

YesPrototypes

Executable CodeTest sequences

No!Debugging Information

A( req ) A} grant)

A( req ) A}t<30s grant)

A( req ) A}t<30s , p>0.90 grant)

A( req ) A}t<30s,c<5$ grant)

Kim Larsen [4]TU Graz, May 2017

Time Cost Probability

Page 5: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

TOOL

System Description

Requirement

YesControl Strategy

No!Debugging Information

A( req ) A} grant)

A( req ) A}t<30s grant)

A( req ) A}t<30s,c<5$ grant)

Synthesis

TU Graz, May 2017 Kim Larsen [5]

Time Cost Probability?

A( req ) A}t<30s , p>0.90 grant)

Page 6: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Origin of UPPAAL

TU Graz, May 2017 Kim Larsen [6]

TAUCCS & Modal Transition Systems

Refinements

Modal Mu-Calculus

Explicit State Representation

Prolog

EPSILONTCCS

Timed Refinements

Timed Mu-Calculus

Regions

Prolog<

1989

1993UPPAAL

Timed Automata

TCTL

Zones

C++ & Java

1995

2007

UP4ALL

2013

CAV Award

2016

Grundfos Prize

Page 7: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

UPPAAL Model Checker

Editor

Simulator

VerifierPerformance

Analyses

Discrete Control

Concurrency

Continuous Aspects

Stochasticity

Timing Constraints

Resources

TU Graz, May 2017 Kim Larsen [7]

Page 8: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

UPPAAL (1995- )

Kim Larsen [8]TU Graz, May 2017

Page 9: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

UPPAAL Tool Suit

TU Graz, May 2017 Kim Larsen [9]

TRON

CLASSIC

TIGA

CORA

ECDAR

SMC

Optimization

Synthesis

Component

Testing

PerformanceAnalysis

Verification

STRATEGOOptimal Synthesis

1995

2001

2005

2011

2014

2010

2004

Page 10: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Topics

Timed Automata Decidability (regions) Symbolic Verification (zones)

Priced Timed Automata Decidability (priced regions) Symbolic Verification (priced zones)

Stochastic Timed Automata Stochastic Semantics Statistical Model Checking Stochastic Hybrid Automata

Timed Games & Interfaces Strategies, Symbolic Synthesis Refinement

Stochastic Priced Timed Games Strategies Symbolic Synthesis (zones) Stochastic Strategies Reinforcement Learning

TU Graz, May 2017 Kim Larsen [10]

TRON

CLASSIC

TIGA

CORA

ECDAR

SMC

Optimization

Synthesis

Component

Testing

PerformanceAnalysis

Verification

STRATEGOOptimal Synthesis

1995

2001

2005

2011

2014

2010

2004

Page 11: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

people.cs.aau.dk/~kgl/GRAZ17/

TU Graz, May 2017 Kim Larsen [11]

Page 12: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Timed Automata

Page 13: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Real Time Systems

TU Graz, May 2017 Kim Larsen [13]

PlantContinuous

Controller ProgramDiscrete

Eg.: Realtime ProtocolsPump ControlAir BagsRobotsCruise ControlABSCD Players

Production Lines

Real Time SystemA system where correctness not only depends on the logical order of events but also on their timing!!

sensors

actuators

Page 14: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

A Dumb Light Controller

TU Graz, May 2017 Kim Larsen [14]

Page 15: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Timed Automata

TU Graz, May 2017 Kim Larsen [15]

ADD a clock x

Synchronizing

action

Clock Guard

Conjunctions of

x~n

x: real-valued

clock

Reset

[Alur & Dill’89]

Page 16: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

A Timed Automata (Semantics)

TU Graz, May 2017 Kim Larsen [16]

States:

( location , x=v) where v2R

Transitions:

( Off , x=0 )

delay 4.32 ( Off , x=4.32 )

press? ( Light , x=0 )

delay 2.51 ( Light , x=2.51 )

press? ( Bright , x=2.51 )

Page 17: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Intelligent Light Controller

TU Graz, May 2017 Kim Larsen [17]

Invariant

(Henzinger)

Page 18: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Intelligent Light Controller

TU Graz, May 2017 Kim Larsen [18]

Transitions:

( Off , x=0 )

delay 4.32 ( Off , x=4.32 )

press? ( Light , x=0 )

delay 4.51 ( Light , x=4.51 )

press? ( Light , x=0 )

delay 100 ( Light , x=100)

( Off , x=0)

Note:

( Light , x=0 ) delay 103

X

Invariants ensures progress

Page 19: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Intelligent Light Controller

TU Graz, May 2017 Kim Larsen [19]

Page 20: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

UPPAAl Demo

TU Graz, May 2017 Kim Larsen [20]

Page 21: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Clock Valuations

TU Graz, May 2017 Kim Larsen [21]

Page 22: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Clock Valuations – Operations

TU Graz, May 2017 Kim Larsen [22]

Page 23: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Clock Valuations – Evaluation

TU Graz, May 2017 Kim Larsen [23]

Page 24: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Timed Automata – Syntax

TU Graz, May 2017 Kim Larsen [24]

Page 25: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Timed Automata – Semantics

TU Graz, May 2017 Kim Larsen [25]

Page 26: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Example

TU Graz, May 2017 Kim Larsen [26]

Page 27: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Example

TU Graz, May 2017 Kim Larsen [27]

Page 28: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Example

TU Graz, May 2017 Kim Larsen [28]

a b

c

Is L1 reachable ?

Page 29: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Example

TU Graz, May 2017 Kim Larsen [29]

x

y

a b

c

Page 30: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Example

TU Graz, May 2017 Kim Larsen [30]

x

y

a b

c

Page 31: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Example

TU Graz, May 2017 Kim Larsen [31]

x

y

a

a b

c

Page 32: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Example

TU Graz, May 2017 Kim Larsen [32]

x

y

a a

a b

c

Page 33: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

UPPAALFirst Introduction

Page 34: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Light Control Interface

ControlProgram

User

Interface

Light

endhold!

touch!

starthold!

press?

release?

press? d release? touch! 0.5·d· 1press? 1 starthold! press? d release? endhold! d >1

press? 0.2 release? … press? 0.7 release? … press? 1.0 2.4 release? …

Ø touch! starthold! endhold! 34

TU Graz, May 2017

Page 35: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Light Control Interface

ControlProgram

User

endhold!

touch!

starthold! press?

release?

35TU Graz, May 2017

Page 36: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

ControlProgram

Light Control Network

endhold!

touch!

starthold! press?

release?

36TU Graz, May 2017

Page 37: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Full Light Controller

TU Graz, May 2017 37

Dim

Dim

Page 38: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

LEGO Mindstorms/RCX

Sensors: temperature,

light, rotation, pressure.

Actuators: motors, lamps,

Virtual machine:

10 tasks, 4 timers, 16 integers.

Several Programming Languages:

NotQuiteC, Mindstorm, Robotics, legOS, etc.

3 input ports

3 output

ports

1 infra-red port

38TU Graz, May 2017

Page 39: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

A Real Real Timed System

TU Graz, May 2017 Kim Larsen [39]

ControllerProgram

LEGO MINDSTORM

The PlantConveyor Belt

& Bricks

Page 40: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

First UPPAAL modelSorting of Lego Boxes

Conveyer Belt

Exercise: Design Controller so that black boxes are being pushed out

Boxes

Piston

Black

Red9 18 81 90

99

BlckYel

remove

eject

Controller

Ken Tindell

MAIN PUSH

TU Graz, May 2017 Kim Larsen [40]

Page 41: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

NQC programs

task PUSH{

while(true){

wait(Timer(1)>DELAY && active==1);

active=0;

Rev(OUT_C,1);

Sleep(8);

Fwd(OUT_C,1);

Sleep(12);

Off(OUT_C);

}

}

int active;

int DELAY;

int LIGHT_LEVEL;

task MAIN{

DELAY=75;

LIGHT_LEVEL=35;

active=0;

Sensor(IN_1, IN_LIGHT);

Fwd(OUT_A,1);

Display(1);

start PUSH;

while(true){

wait(IN_1<=LIGHT_LEVEL);

ClearTimer(1);

active=1;

PlaySound(1);

wait(IN_1>LIGHT_LEVEL);

}

}

41TU Graz, May 2017

Page 42: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

A Black Brick

TU Graz, May 2017 Kim Larsen [42]

Page 43: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Control Tasks & Piston

GLOBAL DECLARATIONS:

const int ctime = 75;

int[0,1] active;

clock x, time;

chan eject, ok;

urgent chan blck, red, remove, go;

TU Graz, May 2017 Kim Larsen [43]

Page 44: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

From RCX to UPPAAL – and back

Model includes Round-Robin Scheduler.

Compilation of RCX tasks into TA models.

Presented at ECRTS 2000 in Stockholm.

From UPPAAL to RCX: Martijn Hendriks.

Task MAIN

44TU Graz, May 2017

Page 45: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

The Production Cell in LEGO

Course at DTU, Copenhagen

Production Cell Rasmus Crüger Lund

Simon Tune Riemanni

45TU Graz, May 2017

Page 46: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

UPPAAL

Modeling & Specification

Page 47: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Train Crossing

Time

River

Bridge

tracks

Safe Approaching Crossing Safe

03 – 5

20

TU Graz, May 2017 [47]

Page 48: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Train Crossing

Time

River

Bridge

tracks

Safe Approaching Crossing Safe

Safe Approaching Crossing Safe

Stop the train while it still stoppable!

1003 – 5

20

TU Graz, May 2017 [48]

Page 49: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Train Crossing

Time

River

Bridge

tracks

Safe Approaching Crossing Safe

Safe Approaching Crossing Safe

1003 – 5

20

Stopped

Crossing Safe

RestartedStopped

Crossing Safe

7 – 15

Crossing

Restarted

TU Graz, May 2017 [49]

Page 50: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Train Crossing

Safe Approaching Crossing Safe

Stopped Restarted

Add timing+ synchronization

TU Graz, May 2017 [50]

Page 51: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Timed Automata [Train]= Finite State Control

+ Real Valued Clocks

invariants

Guards

Synchronizations

Resets

Kim Larsen [51]TU Graz, May 2017

Page 52: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Timed Automata [Gate]

TU Graz, May 2017 Kim Larsen [52]

= Finite State Control

+ Real Valued Clocks

+ Discrete Variables

Page 53: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Demo 1

TU Graz, May 2017 Kim Larsen [53]

Page 54: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

UPPAAL Help

TU Graz, May 2017 Kim Larsen [54]

Page 55: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Logical Specifications

Validation Properties

Possibly: E<> P

Safety Properties

Invariant: A[] P

Pos. Inv.: E[] P

Liveness Properties

Eventually: A<> P

Leadsto: P Q

Bounded Liveness

Leads to within: P · t Q

The expressions P and Q must be type safe, side effect free, and evaluate to a boolean.

Only references to integer variables, constants, clocks, and locations are allowed (and arrays of these).

55TU Graz, May 2017

Page 56: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Logical Specifications

Validation Properties

Possibly: E<> P

Safety Properties

Invariant: A[] P

Pos. Inv.: E[] P

Liveness Properties

Eventually: A<> P

Leadsto: P Q

Bounded Liveness

Leads to within: P · t Q

56TU Graz, May 2017

Page 57: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Logical Specifications

Validation Properties

Possibly: E<> P

Safety Properties

Invariant: A[] P

Pos. Inv.: E[] P

Liveness Properties

Eventually: A<> P

Leadsto: P Q

Bounded Liveness

Leads to within: P · t Q

57TU Graz, May 2017

Page 58: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Logical Specifications

Validation Properties

Possibly: E<> P

Safety Properties

Invariant: A[] P

Pos. Inv.: E[] P

Liveness Properties

Eventually: A<> P

Leadsto: P Q

Bounded Liveness

Leads to within: P · t Q

58TU Graz, May 2017

Page 59: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Logical Specifications

Validation Properties

Possibly: E<> P

Safety Properties

Invariant: A[] P

Pos. Inv.: E[] P

Liveness Properties

Eventually: A<> P

Leadsto: P Q

Bounded Liveness

Leads to within: P · t Q

· t

· t

59TU Graz, May 2017

Page 60: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Demo 2

TU Graz, May 2017 Kim Larsen [60]

Page 61: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Editor

TU Graz, May 2017 Kim Larsen [61]

GUI

• Unlimited undo and redo

• Syntax and bracket highlighting

• Rectangular selection

• Customization of colors

• Tooltip

• Hiding of information

• Improved help menu with search component

Language

• User defined functions (C-like)

• New types (records, type declarations, meta variables, scalars)

• Partial instantiation of templates

• Select clauses on edges

• Forall and exist quantifiers

Page 62: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Concrete Simulator

TU Graz, May 2017 Kim Larsen [62]

Graphical Simulator

• visualization

and recording

• inexpensive fault detection

• inspection of error traces

• Message Sequence Charts

• Gannt Charts

Page 63: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Symbolic Simulator

TU Graz, May 2017 Kim Larsen [63]

Graphical Simulator

• visualization

and recording

• inexpensive fault detection

• inspection of error traces

• Message Sequence Charts

• Gannt Charts

Page 64: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Verifier

TU Graz, May 2017 Kim Larsen [64]

Verifier

• Exhaustive & automatic

checking of requirements

• .. including validating, safety, liveness,

bounded liveness and

response properties

•.. performance properties,

e.g probabilistic and expectation.

• .. generation of debugging information

for visualisation in simulator.

• .. plot composer

Page 65: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Applications(some)

Page 66: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Bang & Olufsen IR-Link

Bug known to exist for 10 years

Ill-described: 2.800 lines of

assembler code + 3 flowchart + 1 B&O eng.

3 months for modeling.

UPPAAL detects error with 1.998 transition steps (shortest)

Error trace was confirmed in B&O laboratory.

Error corrected and verified in UPPAAL.

Arne Skou, Klaus Havelund

1st RTSS’97 talk, Klaus HavelundTU Graz, May 2017 Kim G. Larsen 66

Page 67: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Bang & Olufsen IR-Link

Bug known to exist for 10 years

Ill-described: 2.800 lines of

assembler code + 3 flowchart + 1 B&O eng.

3 months for modeling.

UPPAAL detects error with 1.998 transition steps (shortest)

Error trace was confirmed in B&O laboratory.

Error corrected and verified in UPPAAL.

Arne Skou, Klaus Havelund

1st RTSS’97 talk, Klaus Havelund

Reliable systems & Uppaal Arne Skou 37March 25, 1999

Message

Collision

Radio Silence

Jam

1562 ms 1562 ms2*i*1562 ms

M::=T5{T1,T2,T3}>=15T4

M1

M2

M

50.000 ms

50.000 ms

Sampling:each 781 ms

TU Graz, May 2017 Kim G. Larsen 67

Page 68: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Philips Bounded Retransmission Protocol

Pedro D’Argenio

Joost-Pieter Katoen

Theo Ruys

Jan Tretmans

TU Graz, May 2017 Kim Larsen [68]

Page 69: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

FlexRay

TU Graz, May 2017 Kim Larsen [69]

Fault-tolerance

Timed hardware model

Parameterized error models

(glitches, jitter)

Voting & bit-clock alignment

BMW, Bosch, Daimler, Freescale,

General Motors, NXP

Semiconductors, and

Volkswagen

transmission

of message

byte

[Gerke, Ehlers, Finkbeiner, Peters, 2010]

Page 70: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Gear Controllerwith MECEL AB

Flowgraph

Magnus Lindahl

Paul Pettersson

Wang Yi

2001

TU Graz, May 2017

70

Page 71: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Gear Controllerwith MECEL AB

Timed Automata

Models

Magnus Lindahl

Paul Pettersson

Wang Yi

2001

TU Graz, May 2017

71

Page 72: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Gear Controllerwith MECEL AB

Requirements

Magnus Lindahl

Paul Pettersson

Wang Yi

2001

TU Graz, May 2017

72

Page 73: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

UPPAAL Model Checking – Demo

TU Graz, May 2017

73

Page 74: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

UPPAAL Model Checking – Demo

TU Graz, May 2017

74

Page 75: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

TERMA A/S (2004)Memory Management for Radars

Radar Video Processing SubsystemAdvanced Noise Reduction Techniques

e1,2

e0,5

e0,4

e0,3

e0,2e2,4

e2,3

e2,2

e1,5

e1,4

e1,3

e3,2

e3,4e3,3

e3,5

e2,5

Air

po

rt S

urv

eilla

nce

Costal Surveillance

echo

9.170 GHz

9.438 GHz

Combiner(VP3) F

req

uen

cy D

ivers

ity

combiner

TU Graz, May 2017 Kim Larsen [75]

Page 76: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

TERMA A/S (2011)Herschel-Planck Scientific Mission at ESA

TU Graz, May 2017 Kim Larsen [76]

Attitude and Orbit Control SoftwareTERMA A/S Steen Ulrik Palm, Jan Storbank Pedersen, Poul Hougaard

Page 77: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

METAMOC

TU Graz, May 2017 Kim Larsen [77]

Modular Execution Time Analysis using

MOdel Checking

with

Andreas Dalsgaard

Mads Christian Olesen

Martin Toft

René Rydhof Hansen

Page 78: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Controllers in UPPAAL

Gearbox Controller [TACAS’98] Bang & Olufsen Power Controller [RTPS’99,FTRTFT’2k] SIDMAR Steel Production Plant [RTCSA’99, DSVV’2k] Real-Time RCX Control-Programs [ECRTS’2k] Terma, Verification of Memory Management for Radar (2001) Scheduling Lacquer Production (2005) Memory Arbiter Synthesis and Verification for a Radar Memory

Interface Card [NJC’05] Adapting the UPPAAL Model of a Distributed Lift System, 2007 Analyzing a χ model of a turntable system using Spin, CADP

and Uppaal, 2006 Designing, Modelling and Verifying a Container Terminal

System Using UPPAAL, 2008 Model-based system analysis using Chi and Uppaal: An

industrial case study, 2008 Climate Controller for Pig Stables, 2008 Optimal and Robust Controller for Hydralic Pump, 2009

TU Graz, May 2017 Kim Larsen [78]

Page 79: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

(Wireless) Protocols in UPPAAL

Bang & Olufsen IR Link Philips Audio Protocol Collision-Avoidance Protocol Bounded Retransmission Protocol TDMA Protocol Multimedia Streams ATM ABR Protocol Lamport’s Leader Election Protocol ABB Fieldbus Protocol IEEE 1394 Firewire Root Contention Bluetooth Protocol Distributed Agreement Protocol FlexRay CHESS MAC Protocol Proprietary WSN, Other Big Danish Company MESH Protocol (MAC & Routing), NEOCORTEC

TU Graz, May 2017 Kim Larsen [79]

Page 80: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

UPPAAL as a Back-End

Vooduu: verification of object-oriented designs using Uppaal, 2004

Moby/RT: A Tool for Specification and Verification of Real-Time Systems, 2000

Formalising the ARTS MPSOC Model in UPPAAL, 2007

Timed automata translator for Uppaal to PVS Component-Based Design and Analysis of Embedded

Systems with UPPAAL PORT, 2008 Verification of COMDES-II Systems Using UPPAAL with

Model Transformation, 2008 METAMOC: Modular WCET Analysis Using UPPAAL, 2010.

TU Graz, May 2017 Kim Larsen [80]

Page 81: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

www.uppaal.org

TU Graz, May 2017 Kim Larsen [81]

Page 82: From Timed Automata - people.cs.aau.dkpeople.cs.aau.dk/~kgl/GRAZ17/GRAZ1.pdf · 2017-05-21 · From ES to CPS TU Graz, May 2017 Kim Larsen [3] New Foundation Discrete Models (Boolean

Excercises

TU Graz, May 2017 Kim Larsen [82]

http://people.cs.aau.dk/~kgl/GRAZ17/

Exercise 1 (Brick Sorter) Excercise 19 (Train Crossing) Exercise 2 (Coffee Machine)

Exercise 28 (Jobshop Scheduling)