Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Marcus Vรถlp
Constructing and Verifying Cyber Physical Systems
Coordinating Networked CPS
So far โฆ
control
more stable driving
cruise control
navigation / autonomous driving
autonomous drivingSource: ardupilot.com
Now โฆ
distance keeping
driving
Nowโฆ
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 212
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 213
Overview
Math
FeedbackControl
RTOS
Verification
Physics
Introduction
Mathematical Foundations (Differential Equations and Laplace Transformation)
Control and Feedback
Transfer Functions and State Space Models
Poles, Zeros / PID Control
Stability, Root Locust Method, Digital Control
Mixed-Criticality Scheduling and Real-Time Operating Systems (RTOS)
Coordinating Networked Cyber-Physical Systems
Program Verification
Differential Dynamic Logic and KeYmaera X
Differential Invariants
CPS
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 214
Overview
Driving Maneuvers
Swarm Models
A Flock of Cars - Intersection Crossing
A Simple Swarm
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 215
A simple swarm
๐ข๐ = ๐น๐๐ฃ๐
๐ฅ๐ = ๐ฃ๐
๐ฃ๐ = ๐ข๐
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 216
A simple swarm
๐๐0, ๐ท๐
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 217
A simple swarm
๐๐ , ๐ท๐
๐น๐ง = ๐ท๐โ๐๐
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 218
A simple swarm
๐๐ , ๐ท๐
๐น๐ง = ๐ท๐โ๐๐
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 219
A simple swarm
๐๐ , ๐ท๐
๐น๐ง = ๐ท๐โ๐๐
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 220
Driving Maneuvers
distance keeping
driving
rigit platoon leader
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 221
Driving Maneuvers
leader
Intersection crossing
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 222
Driving ManeuversIntersection crossing
leader
split
join
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 223
Driving Maneuvers
leader
Intersection crossing
split
rejoin
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 224
Driving Maneuvers
leader
Obstacle avoidance
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 225
Driving Maneuvers
leader
Obstacle avoidance
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 226
Driving Maneuvers
leader
Obstacle avoidance
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 227
Driving Maneuvers
leader
Obstacle avoidance
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 228
Driving Maneuvers
leader
Diverging goals
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 229
Modeling TrafficLighthill, Whitham โ55: On Kinematic Waves. II. A Theory of Traffic Flow on Long Crowded Roads
time to pass: ๐๐ก๐measure passing cars over long time ๐
Flow: ๐ =๐
๐
๐๐ฅ
Concentration: ๐ = ๐=1๐ ๐๐ก๐
๐๐๐ฅ
Fluid Model
Concentration: ๐
flo
w: ๐
radius vector: slope give average vehicle velocity
tangent: slope gives wave velocity
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 230
Swarm ModelsParticle swarm optimization
Source: blog.globalforestwatch.org
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 231
Swarm ModelsParticle swarm optimization
Source: blog.globalforestwatch.org
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 232
Swarm ModelsParticle swarm optimization
Source: blog.globalforestwatch.org
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 233
Swarm ModelsParticle swarm optimization
Source: blog.globalforestwatch.org
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 234
Swarm ModelsParticle swarm optimization
Initialize swarm by placing particles uniformly distributed in the search space: ๐ฅ๐~๐(๐๐๐, ๐โ๐)Initialize particleโs best known position to its own position: ๐๐ โ ๐ฅ๐Evaluate particle fitness and assign best swarm position to best known particle position: ๐ โ ๐๐where ๐(๐๐) > ๐(๐๐), ๐ โ ๐
Initialize partible velocity to some random value: ๐ฅ๐~๐ โ ๐โ๐ โ ๐๐๐ , ๐โ๐ โ ๐๐๐
Until the termination criterion is met:update particle velocity: ๐ฃ๐ โ ๐ ๐ฃ๐ + ๐๐ ๐๐ ๐๐ โ ๐ฅ๐ + ๐๐ ๐๐ ๐ โ ๐ฅ๐
update particle position: ๐ฅ๐ โ ๐ฅ๐ + ๐ฃ๐update particleโs and swarmโs best known position
g holds the best found solution.
parameters for tuning
random influence (between 0,1)
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 235
Swarm ModelsAnt Colony Optimization
Ants move randomly unless they find pheromones on the routeFollow pheromones with certain probability
If they are sucessfull, mark path taken with pheromones
*
*
*
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 236
Flock of Birds called <add favorite Car>Lamia Iftekhar, Reza Olfati-Saber: Autonomous Driving for Vehicular Networks with Nonlinear Dynamics
(if you read the paper: we use qi=xi, pi=vi)
๐ฅ๐ = ๐ฃ๐
๐ฃ๐ = ๐ข๐
๐ผ-Agent
dynamic graph: ๐บ ๐ฅ1, ๐ฅ2, โฆ , ๐ฅ๐ = ๐บ ๐ฅ = ๐, ๐ธ ๐ฅ
๐ธ(๐ฅ) = ๐, ๐ ๐ฅ๐ โ ๐ฅ๐ < ๐}
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 237
Flock of Birds called <add favorite Car>
Source: Walter Baxter (CC-BY-SA 2.0)
share common objective
avoid collisions
separation / rejoin
approximately same distance
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 238
Flock of Birds called <add favorite Car>
Definition Flocking:A group of ๐ผโagents with trajectory (๐ฅ(. ), ๐ฃ(. )) performflocking behavior over a time interval [๐ก0, ๐ก๐ ) with ๐๐ โฅ 1
components of ๐บ(๐ฅ(๐ก)), if every agent ๐ only communicateswith its neighbors ๐๐ on the component it belongs to andthe trajectories of the agents satisfy the following propertiesover the period [๐ก0, ๐ก๐ ) :
1) Cohesion: โ๐ > 0. ๐ฅ๐ ๐ก โ1
๐๐ ๐=1๐๐ ๐ฅ๐ ๐ก < ๐,
for the kth component with ๐๐ neighboring agents;
2) Self-assembly: into a quasi alpha-lattice after some finite time;
3) Self-alignment: a relatively small velocity mismatch.
โ 0 < ๐ โช 1. ๐พ ๐ฃ =1
2
๐,๐ โ๐ธ ๐ฅ
๐ฃ๐ ๐ก โ ๐ฃ๐ ๐ก2< ๐
x
๐พ-Agent
๐ผ-Agents
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 239
Flock of Birds called <add favorite Car>
Definition Flocking:A group of ๐ผโagents with trajectory (๐ฅ(. ), ๐ฃ(. )) performflocking behavior over a time interval [๐ก0, ๐ก๐ ) with ๐๐ โฅ 1
components of ๐บ(๐ฅ(๐ก)), if every agent ๐ only communicateswith its neighbors ๐๐ on the component it belongs to andthe trajectories of the agents satisfy the following propertiesover the period [๐ก0, ๐ก๐ ) :
1) Cohesion: โ๐ > 0. ๐ฅ๐ ๐ก โ1
๐๐ ๐=1๐๐ ๐ฅ๐ ๐ก < ๐,
for the kth component with ๐๐ neighboring agents;
2) Self-assembly: into a quasi alpha-lattice after some finite time;
3) Self-alignment: a relatively small velocity mismatch.
โ 0 < ๐ โช 1. ๐พ ๐ฃ =1
2
๐,๐ โ๐ธ ๐ฅ
๐ฃ๐ ๐ก โ ๐ฃ๐ ๐ก2< ๐
d
โ ๐, ๐. โ๐ โค ๐ฅ๐ ๐ก โ ๐ฅ๐ ๐ก โ ๐ โค ๐, โ๐ โ ๐๐ ๐ฅ
approximately the same distance to all neighbors
๐ผ-Agents
๐พ-Agent
๐พ-Agent
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 240
Flock of Birds called <add favorite Car>
Definition Flocking:A group of ๐ผโagents with trajectory (๐ฅ(. ), ๐ฃ(. )) performflocking behavior over a time interval [๐ก0, ๐ก๐ ) with ๐๐ โฅ 1
components of ๐บ(๐ฅ(๐ก)), if every agent ๐ only communicateswith its neighbors ๐๐ on the component it belongs to andthe trajectories of the agents satisfy the following propertiesover the period [๐ก0, ๐ก๐ ) :
1) Cohesion: โ๐ > 0. ๐ฅ๐ ๐ก โ1
๐๐ ๐=1๐๐ ๐ฅ๐ ๐ก < ๐,
for the kth component with ๐๐ neighboring agents;
2) Self-assembly: into a quasi alpha-lattice after some finite time;
3) Self-alignment: a relatively small velocity mismatch.
โ 0 < ๐ โช 1. ๐พ ๐ฃ =1
2
๐,๐ โ๐ธ ๐ฅ
๐ฃ๐ ๐ก โ ๐ฃ๐ ๐ก2< ๐
d
๐ผ-Agents
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 241
Flock of Cars
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 242
Flock of Cars โ Lane Change
discrete jump ๐-agent1. ๐พ-agent jumps to second lane2. ๐-agent follows ๐พ-agent
(using aggressive maneuvers)3. ๐ผ-agent follows ๐ -agent
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 243
Flock of Cars โ Lane Change
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 244
Overview
Driving Maneuvers
Swarm Models
A Flock of Cars - Intersection Crossing
A Simple Swarm
Summer 2015 Constructing and Verifying Cyber Physical Systems - Marcus Vรถlp 245
Overview
Math
FeedbackControl
RTOS
Verification
Physics
Introduction
Mathematical Foundations (Differential Equations and Laplace Transformation)
Control and Feedback
Transfer Functions and State Space Models
Poles, Zeros / PID Control
Stability, Root Locust Method, Digital Control
Mixed-Criticality Scheduling and Real-Time Operating Systems (RTOS)
Coordinating Networked Cyber-Physical Systems
Program Verification
Differential Dynamic Logic and KeYmaera X
Differential Invariants
CPS