eecs 20 lecture 37 (april 25, 2001) tom henzinger progress control
Post on 22-Dec-2015
217 views
TRANSCRIPT
![Page 1: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/1.jpg)
EECS 20
Lecture 37 (April 25, 2001)
Tom Henzinger
Progress Control
![Page 2: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/2.jpg)
The Safety Control Problem
Given
finite-state machine Plant1
.
2. set Error of plant states
![Page 3: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/3.jpg)
The Safety Control Problem
Findfinite-state machine Plant
finite-state machine Controller
such that the composite system never enters a state in Error
plant input
plant output
![Page 4: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/4.jpg)
Control is a Game : Plant vs. Controller
Each round consists of two moves: first Controller chooses plant input,
then Plant chooses plant output
Controllable plant states : controller has a strategy to meet the objective (avoid error states)
Uncontrollable plant states: plant has a strategy to violate the objective (reach an error state)
![Page 5: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/5.jpg)
i/0
i/0
Error
Plant
0/1
1/1
0/1
1/1
0/1
1/1
1/0
0/1
0/1
1/01/1
Uncontrollable
0/0
Controllable
1/1
1/0
0/0
![Page 6: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/6.jpg)
Controller objective = SAFETY :
stay away from the states in the set Error
Plant objective = PROGRESS :
get to a state in the set Error
![Page 7: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/7.jpg)
The dual control problem:
PROGRESS
controller attempts to lead the plant into a specified set of states (the “target” states)
![Page 8: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/8.jpg)
Safety Control vs. Progress Control
The roles of Plant and Controller are reversed.
But the progress-controllable states are not the safety-uncontrollable, because the game is not symmetric (the controller always moves first).
Still, the solutions are very similar.
![Page 9: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/9.jpg)
i/0
i/0
Error = Target
Plant
0/1
1/1
0/1
1/1
0/1
1/1
1/0
1/1
0/1
0/1
1/01/1
safety-uncontrollable
0/0
safety-controllable
1/0
0/0
progress-controllable
progress-uncontrollable
![Page 10: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/10.jpg)
Recall Safety Control Step 1:
Compute the safety-uncontrollable states of Plant
1. Every state in Error is safety-uncontrollable.
2. For all states s,
if for all inputs i there exist a safety-uncontrollable state s’ and an output o such that (s’,o) possibleUpdates (s,i)
then s is safety-uncontrollable.
![Page 11: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/11.jpg)
Progress Control Step 1:
Compute the progress-controllable states of Plant
1. Every state in Target is progress-controllable.
2. For all states s,
if there exists an input i for all states s’ and outputs
o if (s’,o) possibleUpdates (s,i) then s’ is progress-controllable
then s is progress-controllable.
![Page 12: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/12.jpg)
i/0
i/0
Target
Plant
0/1
1/1
1/0
1/1
1/1
0/0
1/1
1/0
0/1
1/1
1/0
0/1
1/0
0/1
0/00/0
0/1
1/1
1/0
![Page 13: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/13.jpg)
i/0
i/0
Target
Plant
1/1
1/1
0/0
1/1
1/0
0/1
1/1
1/0
0/1
1/0
0/1
1/1
progress-controllable (can force plant into target in 1 transition)
0/1
1/0
1/1
0/1
0/00/0 1/0
![Page 14: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/14.jpg)
i/0
i/0
Target
Plant
1/1
1/1
0/0
1/1
1/0
0/1
1/1
1/0
0/1
1/0
0/1
1/1
progress-controllable (can force plant into target in 2 transitions)
0/1
1/0
1/1
0/1
0/00/0 1/0
![Page 15: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/15.jpg)
i/0
i/0
Target
Plant
1/1
1/1
0/0
1/1
1/0
0/1
1/1
1/0
0/1
1/0
0/1
1/1
progress-controllable (can force plant into target in 3 transitions)
0/1
1/0
1/1
0/1
0/00/0 1/0
![Page 16: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/16.jpg)
i/0
i/0
Target
Plant
1/1
1/1
0/0
1/1
1/0
0/1
1/1
1/0
0/1
1/0
0/1
1/1
progress-controllable (can force plant into target in 4 transitions)
0/1
1/0
1/1
0/1
0/00/0 1/0
![Page 17: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/17.jpg)
i/0
i/0
Target
Plant
1/1
1/1
0/0
1/1
1/0
0/1
1/1
1/0
0/1
1/0
0/1
1/1
0/1
1/0
1/1
0/1
0/00/0 1/0
progress-uncontrollable
![Page 18: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/18.jpg)
i/0
i/0
TargetPlant
1/1
1/1
0/0
1/1
1/0
0/1
1/1
1/0
0/1
1/0
0/1
1/1
0/1
1/0
1/1
0/1
0/00/0 1/0
progress-uncontrollable
green: helpful inputs (ensure progress towards target) blue: safe inputs (keep plant out of uncontrollable states)
![Page 19: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/19.jpg)
1. A subset S Safety-controllable is consistent if there is an input i such that for all states s S, all states in possibleUpdates (s,i) are safety-controllable.
2. Prune from the state machine whose states are the consistent subsets of Safety-controllable and whose outputs are safe the states without successors.
3. If the result contains possibleInitialStates (of the plant) as a state, then it is the desired Controller. Otherwise, no controller exists.
Recall Safety Control Step 2:
Track consistent set of safety-controllable plant states
![Page 20: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/20.jpg)
1. A subset S Progress-controllable is consistent if there is an input i such that for all states s S, all states in possibleUpdates (s,i) are progress-controllable.
2. Construct the state machine whose states are the consistent subsets of Safety-controllable without target states (including the empty set Ø), and whose outputs are safe.
3. If the result contains possibleInitialStates (of the plant) as a state, and there is an acyclic, output-closed subgraph from possibleInitialStates to Ø, then prune away all states not in the subgraph; this is the desired Controller. Otherwise, no controller exists.
Recall Safety Control Step 2:
Track consistent set of progress-controllable plant states
![Page 21: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/21.jpg)
As usual, if the plant is output-deterministic, then we need consider only consistent sets of size 1.
(In other words, the controller always knows the state of the plant.)
![Page 22: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/22.jpg)
i/0
i/0
TargetPlant
1/1
1/1
0/0
1/1
1/0
0/1
1/1
1/0
0/1
1/0
0/1
1/1
0/1
1/0
1/1
0/1
0/00/0 1/0
progress-uncontrollable
Output-deterministic !
![Page 23: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/23.jpg)
Plant
r
s u
tq
i/0
i/0
Target
1/1
1/1
0/0
1/1
1/0
p 0/1
1/1
1/0
0/1
1/0
0/11/1
0/1
1/0
1/1
0/1
0/00/0 1/0
progress-uncontrollable
Safe outputs
r
s
q 1/1
0/0
p 1/0
1/0
0/1
1/1
1/0
0/00/1
![Page 24: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/24.jpg)
Plant
r
s u
tq
i/0
i/0
Target
1/1
1/1
0/0
1/1
1/0
p 0/1
1/1
1/0
0/1
1/0
0/11/1
0/1
1/0
1/1
0/1
0/00/0 1/0
progress-uncontrollable
Acyclic, output-closed subgraph
r
s
q 1/1
0/0
p 1/0
0/1
0/1
1/1
1/0
0/00/1
![Page 25: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/25.jpg)
Plant
r
s u
tq
i/0
i/0
Target
1/1
1/1
0/0
1/1
1/0
p 0/1
1/1
1/0
0/1
1/0
0/11/1
0/1
1/0
1/1
0/1
0/00/0 1/0
progress-uncontrollable
Pruned
r
s
q 1/1p 1/0
1/0
0/1
1/10/1
![Page 26: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/26.jpg)
Plant
r
s u
tq
i/0
i/0
Target
1/1
1/1
0/0
1/1
1/0
p 0/1
1/1
1/0
0/1
1/0
0/11/1
0/1
1/0
1/1
0/1
0/00/0 1/0
progress-uncontrollable
Controller
r
s
q 1/1p i/0
i/0
0/1
1/10/1 i/0
![Page 27: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/27.jpg)
A Game Graph
![Page 28: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/28.jpg)
green: turn-1 /
![Page 29: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/29.jpg)
green: turn-1 / blue: turn-2-adjacent /
![Page 30: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/30.jpg)
green: turn-1 / blue: turn-2-adjacent / red: turn-2-diagonal /
![Page 31: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/31.jpg)
green: turn-1 / blue: turn-2-adjacent / red: turn-2-diagonal /
Target
![Page 32: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/32.jpg)
green: turn-1 / blue: turn-2-adjacent / red: turn-2-diagonal /
Target
progress-controllable
![Page 33: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/33.jpg)
green: turn-1 / blue: turn-2-adjacent / red: turn-2-diagonal /
Target
progress-controllable
![Page 34: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/34.jpg)
green: turn-1 / blue: turn-2-adjacent / red: turn-2-diagonal /
Target
progress-controllable
![Page 35: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/35.jpg)
green: turn-1 / blue: turn-2-adjacent / red: turn-2-diagonal /
Target
progress-controllable
![Page 36: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/36.jpg)
green: turn-1 / blue: turn-2-adjacent / red: turn-2-diagonal /
Target
All states are progress-controllable.
![Page 37: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/37.jpg)
green: turn-1 / blue: turn-2-adjacent / red: turn-2-diagonal /
Target
All states are progress-controllable.
All inputs are safe.
All subsets are consistent.
p
r
t
s
u
q
![Page 38: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/38.jpg)
Determinization
p,q,r,s
![Page 39: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/39.jpg)
Determinization
p,q,r,s
p,r,s
![Page 40: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/40.jpg)
Determinization
p,q,r,s
p,r,s
q,r,s
![Page 41: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/41.jpg)
Determinization
p,q,r,s
p,r,s
q,r,s
r,s
![Page 42: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/42.jpg)
Determinization
p,q,r,s
p,r,s
q,r,s
r,s
p,q
![Page 43: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/43.jpg)
Determinization
p,q,r,s
p,r,s
q,r,s
r,s
p,q
p
![Page 44: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/44.jpg)
Determinization
p,q,r,s
p,r,s
q,r,s
r,s
p,q
p q
![Page 45: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/45.jpg)
Determinization
p,q,r,s
p,r,s
q,r,s
r,s
p,q
p q Ø
![Page 46: EECS 20 Lecture 37 (April 25, 2001) Tom Henzinger Progress Control](https://reader036.vdocuments.site/reader036/viewer/2022062516/56649d7e5503460f94a614cf/html5/thumbnails/46.jpg)
Controller
p,q,r,s
p,r,s
q,r,s
r,s
p,q
p q Ø