delay-aware period assignment in control systems
DESCRIPTION
Anton Cervin. Lund University Sweden. Enrico Bini. Scuola Superiore Sant’Anna, Pisa, Italy. Delay-Aware Period Assignment in Control Systems. Matlab routine available at: http://retis.sssup.it/~bini/. Real-Time Systems Symposium, 2008. t 1. t 2. t n. Overview. CPU. T 1. T 2. T n. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/1.jpg)
Delay-Aware Period Assignment in Control Systems
Anton Cervin Lund UniversitySweden
Enrico Bini Scuola Superiore Sant’Anna, Pisa, Italy
Real-Time Systems Symposium, 2008
Matlab routine available at: http://retis.sssup.it/~bini/
![Page 2: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/2.jpg)
Overview
We find an analytical solution!!!
• n independent plants to be controlled by n controllers
• one CPU to schedule themProblem: assign the periods {Ti} such that
overall control cost is minimized
1 2 n
T1 T2 Tn CPU
![Page 3: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/3.jpg)
The execution of a controller
•a set of n control tasks {1,...,n}•scheduled by FP
A task i is modeled by (Ci, Ti), where:• Ci is the worst-case computation time;• Ti is the period;• Ui=Ci/Ti is the utilization;• Rij is the job response time;• no deadline is enforced.
![Page 4: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/4.jpg)
The cost of a controller
iTi
iJ
The cost is standard Linear Quadratic Gaussian (LQG) that is
We make a linearization
iiiii TJ
iTi
iJ
iTi
iJ
It applies to any other domain where period, delay minimization is required
![Page 5: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/5.jpg)
The linear cost
“The cost Ji is ”iiiii TJ Let Ji(T,) be any smooth cost function, Ti0 and i0 be nominal values of period and delay of i (for example Ti0=i0=Ci)1. make a linear approx of Ji at (Tik,ik) and we set ik
and ik as the partial derivative of Ji;2. Solve (very efficiently) the linear problem and set Tik+1 as the solution and ik+1 accordingly
3. Go back to 1.The convergence is not demonstrated, but always obtained.
![Page 6: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/6.jpg)
Modeling the delay
In control, i is the separation between sampling and actuationHow do we model i as function of T1,...,Tn?
• separation from activation to completion varies job by job
• i=Ri? Overestimate, no expression func of Ti• i=Riub? Exists expression of Ti, larger overestimate• i=avgj{Rij}? good estimate, no expression
Average response time seems the good one
![Page 7: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/7.jpg)
The delay approximation
•seems a good approximation of avgj{Rij}
• it’s the resp time if hp tasks were fluid
• if, a posteriori, we see good performance then it’s a good delay approximation
We claim that average Rij is “something like”
1
1
approx
1i
j j
ii
U
CR
(2,4)
(3,6)
jj R2avg approx2R jj R2inf jj R2sup
7 5 6 6
![Page 8: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/8.jpg)
Formalization of the problem
0 ,1subject to
1minimize
1
1 1
1
i
n
ii
n
i i
j j
iiii
UU
U
CT
Seto et al [RTSS96] solved with i=0
Notice we don’t care of classic FP schedulability!
We aggregate the overall cost by sum Ji
![Page 9: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/9.jpg)
Solution of the problem
Analytical solutionof the problem
Lagrange multipliers +
Partial differentiation +
Luck =
At pag. 296, Equations (34)--(37), you can see the expression of the solution
![Page 10: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/10.jpg)
The priority assignment
• RM is not guaranteed to be optimal.• What is the control-optimal assignment?Intuition: since the cost is
1
11
i
j j
iiii
U
CT
Since we found the analytical (fast) solution, then we can try to enumerate all possible (n!) priority orderings
• large i high priority to i• two “orthogonal” problems: priority assignment
(based on i) and period assignment (based on i)
![Page 11: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/11.jpg)
Introducing experiments
Tested methods:
• FirstVertex, by Bini, Di Natale [RTSS05]
• RiApprox, this method
• Seto96(1), by Seto et al [RTSS96], U=1
• Seto96(Ulub), Seto96, U=Ulub
![Page 12: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/12.jpg)
One experiment
Ci 2 5 10 1 15
U Jii 4 4 4 4 4
i 20 6 3 4 2
Seto96(Ulub) 22.227 35.145 49.702 15.717 60.872 0.7435 913.4
Seto96(1) 16.526 26.130 36.953 11.686 45.258 1 764.1
FirstVertex 18 36 36 18 36 1 770.2
RiApprox 18.905 29.097 39.364 12.263 38.781 1 754.8
Matlab code available on my homepage
• priority assigned by brute force (n!)
![Page 13: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/13.jpg)
One experiment
Ci 2 5 10 1 15
U Jii 4 4 4 4 4
i 20 6 3 4 2
Seto96(Ulub) 22.227 35.145 49.702 15.717 60.872 0.7435 913.4
Seto96(1) 16.526 26.130 36.953 11.686 45.258 1 764.1
FirstVertex 18 36 36 18 36 1 770.2
RiApprox 18.905 29.097 39.364 12.263 38.781 1 754.8
Matlab code available on my homepage
• priority assigned by brute force (n!)
![Page 14: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/14.jpg)
Quality of delay approx
task priority
• random Ci, i, i, n{3,7,19}• We compute periods according
RiApprox• For all tasks we evaluate Riapprox/Riavg
• Riavg is computed by simulatingthe schedule
• on x axis, tasks by decreasing pri
highest lowest
Riap
prox
/Riav
g
![Page 15: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/15.jpg)
Quality of delay approx
task priorityhighest lowest
Riap
prox
/Riav
g
![Page 16: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/16.jpg)
Comparing the costs
n=2 n=5 n=10 n=20
Seto96(Ulub) 208 393 497 673
FirstVertex 169 353 5012 595
RiApprox 167 333 426 554
n=2 n=5 n=10 n=20
Seto96(Ulub) 246 519 6011 14
FirstVertex 226 429 576 7610
RiApprox 195 406 488 664
n=2 n=5 n=10 n=20
Seto96(Ulub) 273 8124 12113 1559
FirstVertex 278 6114 11 1469
RiApprox 244 10279 10012 1287
2 s
tab
le p
ole
s2
sta
ble
, 1
uns
tab
le p
ole
s3
sta
ble
, u
nsta
ble
po
les
• cost is LQG (not synthetic)• 3 kinds of plant generated randomly
• 2 stable poles• 2 stable pole, 1 unstable• 3 stable/ustable poles
• reference is Ti=Di=Ci• costs are normalized with reference
![Page 17: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/17.jpg)
Comparing the costs
n=2 n=5 n=10 n=20
Seto96(Ulub) 208 393 497 673
FirstVertex 169 353 5012 595
RiApprox 167 333 426 554
n=2 n=5 n=10 n=20
Seto96(Ulub) 246 519 6011 14
FirstVertex 226 429 576 7610
RiApprox 195 406 488 664
n=2 n=5 n=10 n=20
Seto96(Ulub) 273 8124 12113 1559
FirstVertex 278 6114 11 1469
RiApprox 244 10279 10012 1287
2 s
tab
le p
ole
s2
sta
ble
, 1
uns
tab
le p
ole
s3
sta
ble
, u
nsta
ble
po
les
![Page 18: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/18.jpg)
Future works
• Extension in presence of a virtual processor.
• More efficient priority assignment.
• A delay sequence of 2, 4, 2, 4, 2, 4,... may not perform the same as a constant delay of 3. Account for it.
![Page 19: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/19.jpg)
?
?
![Page 20: Delay-Aware Period Assignment in Control Systems](https://reader030.vdocuments.site/reader030/viewer/2022033022/56813168550346895d97dfbd/html5/thumbnails/20.jpg)
Quality of delay approx 2
i magnutude (sensitivity to delay)
cost
/Se
to9
6(1
)
• 5 tasks• random Ci, i• we increased the average i• cost is synthetic• reference is Seto(1)