hybrid systems concurrent models of computation

46
Hybrid Systems Concurrent Models of Computation EEN 417 Fall 2013

Upload: aliza

Post on 23-Feb-2016

61 views

Category:

Documents


0 download

DESCRIPTION

Hybrid Systems Concurrent Models of Computation. EEN 417 Fall 2013. HYBRID SYSTEMS. Discrete System (FSM). Continuous System. jump. Hybrid System. flow. Examples of Hybrid Systems The Hybrid Automaton Model properties of this kind of model. Topics in Today ’ s Lecture. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Hybrid Systems Concurrent Models of Computation

Hybrid SystemsConcurrent Models of Computation

EEN 417Fall 2013

Page 2: Hybrid Systems Concurrent Models of Computation

HYBRID SYSTEMS

Page 3: Hybrid Systems Concurrent Models of Computation

Discrete System (FSM)

Continuous System

Hybrid System jump

flow

Page 4: Hybrid Systems Concurrent Models of Computation

Topics in Today’s Lecture Examples of Hybrid Systems

The Hybrid Automaton Model – properties of this kind of model

Page 5: Hybrid Systems Concurrent Models of Computation

A Thermostat

(happen instantaneously)

Page 6: Hybrid Systems Concurrent Models of Computation

Dynamics of Thermostat

t

x82

80

70

68

on

off

Page 7: Hybrid Systems Concurrent Models of Computation

Hybrid Automaton for Thermostat

Is this automaton deterministic?

Page 8: Hybrid Systems Concurrent Models of Computation

Formal Representation of Hybrid Automaton

Page 9: Hybrid Systems Concurrent Models of Computation

Where do Hybrid Systems arise? Digital controller of physical “plant”

– thermostat – controller for power plant– intelligent cruise control in cars – aircraft auto pilot

Phased operation of natural phenomena– bouncing ball– biological cell growth

Multi-agent systems– ground and air transportation systems– interacting robots (e.g., RoboSoccer)

Page 10: Hybrid Systems Concurrent Models of Computation

Another example

Example due to George Pappas, UPenn

Change in Temperature

510 550

+1 +5

-5 -1

-9 -5

Page 11: Hybrid Systems Concurrent Models of Computation

Nuclear reactor example (contd.)

Example due to George Pappas, UPenn

Each time step, T, y1, and y2 change.

Page 12: Hybrid Systems Concurrent Models of Computation

Hybrid Automaton for Bouncing Ball

x – vertical distance from ground (position)v – velocity c – coefficient of restitution, 0 · c · 1

Page 13: Hybrid Systems Concurrent Models of Computation

Behavior of Bouncing Ball Automaton: Plot position x as a function of time t ,

where x starts at height xmax

What kind of plot would you expect?

Page 14: Hybrid Systems Concurrent Models of Computation

Simulation of Bouncing Ball Automaton in Ptolemy II / HyVisual

Page 15: Hybrid Systems Concurrent Models of Computation

Zeno Behavior

What is a Zeno machine?

Page 16: Hybrid Systems Concurrent Models of Computation

Zeno Behavior

•Informally:• The system makes an infinite number of jumps• in finite time

Page 17: Hybrid Systems Concurrent Models of Computation

A Run/Execution of a Hybrid Automatontim

e

Page 18: Hybrid Systems Concurrent Models of Computation

Zeno Behavior: Formal Definitiontim

e

Page 19: Hybrid Systems Concurrent Models of Computation

Analysis of Zeno Behavior of Bouncing Ball

Page 20: Hybrid Systems Concurrent Models of Computation

Why does Zeno Behavior Arise?

Page 21: Hybrid Systems Concurrent Models of Computation

Why does Zeno Behavior Arise?•Our model is a mathematical artifact

Page 22: Hybrid Systems Concurrent Models of Computation

Why does Zeno Behavior Arise?•Our model is a mathematical artifact

•Zeno behavior is mathematically possible, but it is infeasible in the real, physical world

•Points to some unrealistic assumption in the model

Page 23: Hybrid Systems Concurrent Models of Computation

CONCURRENT MODELS OF COMPUTATION

Page 24: Hybrid Systems Concurrent Models of Computation

Recall: Actor Model for State Machines

•Expose inputs and outputs, enabling composition:

Page 25: Hybrid Systems Concurrent Models of Computation

Recall: Actor Model of Continuous-Time Systems

•A system is a function that accepts an input signal and yields an output signal.

•The domain and range of the system function are sets of signals, which themselves are functions.

•Parameters may affect the definition of the function S.

Page 26: Hybrid Systems Concurrent Models of Computation

Example: Actor model of the helicopter

•Input is the net torque of the tail rotor and the top rotor. Output is the angular velocity around the y axis.

Parameters of the model are shown in the box. The input and output relation is given by the equation to the right.

Page 27: Hybrid Systems Concurrent Models of Computation

Recall: Composition of actor models

Page 28: Hybrid Systems Concurrent Models of Computation

Recall: Feedback Composition

Angular velocity appears on both

sides. The semantics (meaning) of

the model is the solution to this

equation.

Page 29: Hybrid Systems Concurrent Models of Computation

Models of Computation (MoC)•A model of computation assigns semantics (meaning) to the syntax defined in the actor model.

•The MoC gives operational rules for executing a model. These rules determine when actors perform internal computation, update their internal state, and perform external communication.

•An MoC also defines the nature of communication between components (e.g., buffered I/O).

Page 30: Hybrid Systems Concurrent Models of Computation

Model of Computation (MoC):Continuous Time (CT)

Page 31: Hybrid Systems Concurrent Models of Computation

Discrete-Time (DT) Actor Models

•Discrete-time helicopter model looks the same:

Page 32: Hybrid Systems Concurrent Models of Computation

Time-Triggered Reactions of FSMs use a Discrete-Time MoC

sigG

sigY

sigR

sigR

pedR

pedG

Page 33: Hybrid Systems Concurrent Models of Computation

Mixed Signal Models•A more reasonable model of a discrete helicopter controller would be a mixed-signal model:

•Here, the signals inside the blue area are continuous-time signals, and the ones outside are discrete-time signals.

Page 34: Hybrid Systems Concurrent Models of Computation

To jointly model discrete and continuous-time signals in the same MoC, use the notion of “absent” values

Event-triggered composition of state machines uses a discrete-event MoC.

Page 35: Hybrid Systems Concurrent Models of Computation

Actors are not the only way to do things

•Imperative, Threads, Declarative physical models, Constraints, …

Modelica

model of an

industrial robot.

Modelica uses

Spice-like

models where

components

have no inputs

or outputs.

Page 36: Hybrid Systems Concurrent Models of Computation

Uniformly Timed Schedule

•A preferable schedule would space invocations of A and B uniformly in time, as in:

minimum latency

Page 37: Hybrid Systems Concurrent Models of Computation

Non-Concurrent Uniformly Timed Schedule

•Notice that in this schedule, the rate at which A and B can be invoked is limited by the execution time of C.

No jitter, but utilization is poor.

Page 38: Hybrid Systems Concurrent Models of Computation

Concurrent Uniformly Timed Schedule:Preemptive schedule

•With preemption, the rate at which A and B can be invoked is limited only by total computation:

…preemptions

thread 1:

thread 2:

high priority

low priority

Page 39: Hybrid Systems Concurrent Models of Computation

Ignoring Initial Transients,Abstract to Periodic Tasks

•In steady-state, the execution follows a simple periodic pattern:

thread 1:

thread 2:

sampleTime = 1 sampleTime = 1

sampleTime = 8

This follows the principles of rate-monotonic scheduling (RMS).

Page 40: Hybrid Systems Concurrent Models of Computation

Requirement 1 for Determinacy: Periodicity

•If the execution of C runs longer than expected, data determinacy requires that thread 1 be delayed accordingly. This can be accomplished with semaphore synchronization. But there are alternatives: Throw an exception to indicate timing failure. “Anytime” computation: use incomplete results of C

thread 1:

thread 2:sampleTime: 1 sampleTime: 1

sampleTime: 8

interlock

Page 41: Hybrid Systems Concurrent Models of Computation

Requirement 1 for Determinacy: Periodicity

•If the execution of C runs shorter than expected, data determinacy requires that thread 2 be delayed accordingly. That is, it must not start the next execution of C before the data is available.

thread 1:

thread 2:sampleTime: 1 sampleTime: 1

sampleTime: 8

interlock

Page 42: Hybrid Systems Concurrent Models of Computation

Semaphore Synchronization Required Exactly Twice Per Major Period

•Note that semaphore synchronization is not required if actor B runs long because its thread has higher priority. Everything else is automatically delayed.

thread 1:

thread 2:sampleTime: 1 sampleTime: 1

sampleTime: 8

Page 43: Hybrid Systems Concurrent Models of Computation

Discussion Questions What about more complicated rate conversions (e.g. a task with sampleTime 2 feeding one with sampleTime 3)? How can these ideas be extended to non-periodic execution?

Page 44: Hybrid Systems Concurrent Models of Computation

Abstracted Version of the Spectrum Example

•Suppose that C requires 8 data values from A to execute. Suppose further that C takes much longer to execute than A or B. Then a schedule might look like this:

1 1

8

Page 45: Hybrid Systems Concurrent Models of Computation

WRAP UP

Page 46: Hybrid Systems Concurrent Models of Computation

For next time

Read Chapters 10, 11