Slide 1

Slide 1 text

Data-Enabled Predictive Control of Autonomous Energy Systems Florian D¨ orfler ETH Z¨ urich KIOS 2024 Graduate School 1/53

Slide 2

Slide 2 text

Acknowledgements Jeremy Coulson John Lygeros Linbin Huang Ivan Markovsky Further: Ezzat Elokda, Paul Beuchat, Daniele Alpago, Jianzhe (Trevor) Zhen, Claudio de Persis, Pietro Tesi, Henk van Waarde, Eduardo Prieto, Saverio Bolognani, Andrea Favato, Paolo Carlet, Andrea Martin, Luca Furieri, Giancarlo Ferrari-Trecate, Keith Mo at, ... & many master students 2/53

Slide 3

Slide 3 text

Thoughts on data in control systems increasing role of data-centric methods in science / engineering / industry due to • methodological advances in statistics, optimization, & machine learning (ML) • unprecedented availability of brute force: deluge of data & computational power • ...and frenzy surrounding big data & ML 3/53

Slide 4

Slide 4 text

Thoughts on data in control systems increasing role of data-centric methods in science / engineering / industry due to • methodological advances in statistics, optimization, & machine learning (ML) • unprecedented availability of brute force: deluge of data & computational power • ...and frenzy surrounding big data & ML Make up your own opinion, but ML works too well to be ignored 3/53

Slide 5

Slide 5 text

Thoughts on data in control systems increasing role of data-centric methods in science / engineering / industry due to • methodological advances in statistics, optimization, & machine learning (ML) • unprecedented availability of brute force: deluge of data & computational power • ...and frenzy surrounding big data & ML Make up your own opinion, but ML works too well to be ignored – also in control ?!? 3/53

Slide 6

Slide 6 text

Thoughts on data in control systems increasing role of data-centric methods in science / engineering / industry due to • methodological advances in statistics, optimization, & machine learning (ML) • unprecedented availability of brute force: deluge of data & computational power • ...and frenzy surrounding big data & ML Make up your own opinion, but ML works too well to be ignored – also in control ?!? “ One of the major developments in control over the past decade – & one of the most important moving forward – is the interaction of ML & control systems. ” [CSS roadmap] 3/53

Slide 7

Slide 7 text

Thoughts on data in control systems increasing role of data-centric methods in science / engineering / industry due to • methodological advances in statistics, optimization, & machine learning (ML) • unprecedented availability of brute force: deluge of data & computational power • ...and frenzy surrounding big data & ML Make up your own opinion, but ML works too well to be ignored – also in control ?!? “ One of the major developments in control over the past decade – & one of the most important moving forward – is the interaction of ML & control systems. ” [CSS roadmap] 3/53

Slide 8

Slide 8 text

Thoughts on data in control systems increasing role of data-centric methods in science / engineering / industry due to • methodological advances in statistics, optimization, & machine learning (ML) • unprecedented availability of brute force: deluge of data & computational power • ...and frenzy surrounding big data & ML Make up your own opinion, but ML works too well to be ignored – also in control ?!? “ One of the major developments in control over the past decade – & one of the most important moving forward – is the interaction of ML & control systems. ” [CSS roadmap] 3/53

Slide 9

Slide 9 text

Approaches to data-driven control • indirect data-driven control via models: data SysID ! model + uncertainty ! control data-driven control u2 u1 y1 y2 4/53

Slide 10

Slide 10 text

Approaches to data-driven control • indirect data-driven control via models: data SysID ! model + uncertainty ! control • growing trend: direct data-driven control by-passing models ...(again) hyped, why ? data-driven control u2 u1 y1 y2 4/53

Slide 11

Slide 11 text

Approaches to data-driven control • indirect data-driven control via models: data SysID ! model + uncertainty ! control • growing trend: direct data-driven control by-passing models ...(again) hyped, why ? data-driven control u2 u1 y1 y2 Central promise: It is often easier to learn a control policy from data rather than a model. 4/53

Slide 12

Slide 12 text

Approaches to data-driven control • indirect data-driven control via models: data SysID ! model + uncertainty ! control • growing trend: direct data-driven control by-passing models ...(again) hyped, why ? data-driven control u2 u1 y1 y2 Central promise: It is often easier to learn a control policy from data rather than a model. Example 1973: autotuned PID 4/53

Slide 13

Slide 13 text

Approaches to data-driven control • indirect data-driven control via models: data SysID ! model + uncertainty ! control • growing trend: direct data-driven control by-passing models ...(again) hyped, why ? The direct approach is viable alternative • for some applications : model-based approach is too complex to be useful ! too complex models, environments, sensing modalities, specifications (e.g., wind farm) data-driven control u2 u1 y1 y2 Central promise: It is often easier to learn a control policy from data rather than a model. Example 1973: autotuned PID 4/53

Slide 14

Slide 14 text

Approaches to data-driven control • indirect data-driven control via models: data SysID ! model + uncertainty ! control • growing trend: direct data-driven control by-passing models ...(again) hyped, why ? The direct approach is viable alternative • for some applications : model-based approach is too complex to be useful ! too complex models, environments, sensing modalities, specifications (e.g., wind farm) • due to (well-known) shortcomings of ID ! too cumbersome, models not identified for control, incompatible uncertainty estimates, ... data-driven control u2 u1 y1 y2 Central promise: It is often easier to learn a control policy from data rather than a model. Example 1973: autotuned PID 4/53

Slide 15

Slide 15 text

Approaches to data-driven control • indirect data-driven control via models: data SysID ! model + uncertainty ! control • growing trend: direct data-driven control by-passing models ...(again) hyped, why ? The direct approach is viable alternative • for some applications : model-based approach is too complex to be useful ! too complex models, environments, sensing modalities, specifications (e.g., wind farm) • due to (well-known) shortcomings of ID ! too cumbersome, models not identified for control, incompatible uncertainty estimates, ... • when brute force data/compute available data-driven control u2 u1 y1 y2 Central promise: It is often easier to learn a control policy from data rather than a model. Example 1973: autotuned PID 4/53

Slide 16

Slide 16 text

Abstraction reveals pros & cons indirect (model-based) data-driven control minimize control cost u, x subject to u, x satisfy state-space model 5/53 ↓ inpet - state

Slide 17

Slide 17 text

Abstraction reveals pros & cons indirect (model-based) data-driven control minimize control cost u, x subject to u, x satisfy state-space model where x estimated from u, y & model 5/53 I / Outpot O 00

Slide 18

Slide 18 text

Abstraction reveals pros & cons indirect (model-based) data-driven control minimize control cost u, x subject to u, x satisfy state-space model where x estimated from u, y & model where model identified from ud, yd data 5/53

Slide 19

Slide 19 text

Abstraction reveals pros & cons indirect (model-based) data-driven control minimize control cost u, x subject to u, x satisfy state-space model where x estimated from u, y & model where model identified from ud, yd data ! nested multi-level optimization problem ) outer optimization o middle opt. o inner opt. 5/53

Slide 20

Slide 20 text

Abstraction reveals pros & cons indirect (model-based) data-driven control minimize control cost u, x subject to u, x satisfy state-space model where x estimated from u, y & model where model identified from ud, yd data ! nested multi-level optimization problem ) outer optimization o middle opt. o inner opt. 9 > > = > > ; separation & certainty equivalence (! LQG case) 5/53

Slide 21

Slide 21 text

Abstraction reveals pros & cons indirect (model-based) data-driven control minimize control cost u, x subject to u, x satisfy state-space model where x estimated from u, y & model where model identified from ud, yd data ! nested multi-level optimization problem ) outer optimization o middle opt. o inner opt. 9 > > = > > ; separation & certainty equivalence (! LQG case) no separation (! ID-4-control) 5/53

Slide 22

Slide 22 text

Abstraction reveals pros & cons indirect (model-based) data-driven control minimize control cost u, x subject to u, x satisfy state-space model where x estimated from u, y & model where model identified from ud, yd data ! nested multi-level optimization problem ) outer optimization o middle opt. o inner opt. 9 > > = > > ; separation & certainty equivalence (! LQG case) no separation (! ID-4-control) direct (black-box) data-driven control minimize control cost u, y subject to u, y consistent with ud, yd data 5/53

Slide 23

Slide 23 text

Abstraction reveals pros & cons indirect (model-based) data-driven control minimize control cost u, x subject to u, x satisfy state-space model where x estimated from u, y & model where model identified from ud, yd data ! nested multi-level optimization problem ) outer optimization o middle opt. o inner opt. 9 > > = > > ; separation & certainty equivalence (! LQG case) no separation (! ID-4-control) direct (black-box) data-driven control minimize control cost u, y subject to u, y consistent with ud, yd data ! trade-o s modular vs. end-2-end suboptimal (?) vs. optimal convex vs. non-convex (?) 5/53

Slide 24

Slide 24 text

Abstraction reveals pros & cons indirect (model-based) data-driven control minimize control cost u, x subject to u, x satisfy state-space model where x estimated from u, y & model where model identified from ud, yd data ! nested multi-level optimization problem ) outer optimization o middle opt. o inner opt. 9 > > = > > ; separation & certainty equivalence (! LQG case) no separation (! ID-4-control) direct (black-box) data-driven control minimize control cost u, y subject to u, y consistent with ud, yd data ! trade-o s modular vs. end-2-end suboptimal (?) vs. optimal convex vs. non-convex (?) Additionally: account for uncertainty (hard to propagate in indirect approach) 5/53

Slide 25

Slide 25 text

Indirect (models) vs. direct (data) ? x+ = f(x, u) y = h(x, u) y u 6/53

Slide 26

Slide 26 text

Indirect (models) vs. direct (data) • models are useful for design & beyond • modular ! easy to debug & interpret • id = noise filtering • id = projection on model class • harder to propagate uncertainty through id • no robust separation principle ! suboptimal • ... ? x+ = f(x, u) y = h(x, u) y u • some models too complex to be useful • end-to-end ! suit- able for non-experts • design handles noise • harder to inject side info but no bias error • transparent: no unmodeled dynamics • possibly optimal but often less tractable • ... 6/53

Slide 27

Slide 27 text

Indirect (models) vs. direct (data) • models are useful for design & beyond • modular ! easy to debug & interpret • id = noise filtering • id = projection on model class • harder to propagate uncertainty through id • no robust separation principle ! suboptimal • ... ? x+ = f(x, u) y = h(x, u) y u • some models too complex to be useful • end-to-end ! suit- able for non-experts • design handles noise • harder to inject side info but no bias error • transparent: no unmodeled dynamics • possibly optimal but often less tractable • ... lots of pros, cons, counterexamples, & no universal conclusions [discussion] 6/53

Slide 28

Slide 28 text

A direct approach: dictionary + MPC 1 trajectory dictionary learning • motion primitives / basis functions • theory: Koopman & Liouville practice: (E)DMD & particles 2 MPC optimizing over dictionary span 7/53

Slide 29

Slide 29 text

A direct approach: dictionary + MPC 1 trajectory dictionary learning • motion primitives / basis functions • theory: Koopman & Liouville practice: (E)DMD & particles 2 MPC optimizing over dictionary span ! huge theory vs. practice gap 7/53

Slide 30

Slide 30 text

A direct approach: dictionary + MPC 1 trajectory dictionary learning • motion primitives / basis functions • theory: Koopman & Liouville practice: (E)DMD & particles 2 MPC optimizing over dictionary span ! huge theory vs. practice gap ! back to basics: impulse response y4 y2 y1 y3 y5 y6 y7 u1 = u2 = · · · = 0 u0 = 1 x0 =0 y0 7/53

Slide 31

Slide 31 text

A direct approach: dictionary + MPC 1 trajectory dictionary learning • motion primitives / basis functions • theory: Koopman & Liouville practice: (E)DMD & particles 2 MPC optimizing over dictionary span ! huge theory vs. practice gap ! back to basics: impulse response y4 y2 y1 y3 y5 y6 y7 u1 = u2 = · · · = 0 u0 = 1 x0 =0 y0 7/53 impulse Linear Time- invariant (ITI) impulse Response u= So 3 y( = g(t = Ego , gg. . ↑ impulse response ↑ spouse to any other input uH is y(t) = g(+ - 4) - u(i)

Slide 32

Slide 32 text

y4 y2 y1 y3 y5 y6 y7 u1 = u2 = · · · = 0 u0 = 1 x0 =0 y0 8/53

Slide 33

Slide 33 text

y4 y2 y1 y3 y5 y6 y7 u1 = u2 = · · · = 0 u0 = 1 x0 =0 y0 Now what if we had the impulse response recorded in our data-library? ⇥ g0 g1 g2 . . . ⇤ = ⇥ yd 0 yd 1 yd 2 . . . ⇤ 8/53 response to any new input Ufuture It is +- A Yfuture (t) = yd(t-r) . Ufuture (H)

Slide 34

Slide 34 text

y4 y2 y1 y3 y5 y6 y7 u1 = u2 = · · · = 0 u0 = 1 x0 =0 y0 Now what if we had the impulse response recorded in our data-library? ⇥ g0 g1 g2 . . . ⇤ = ⇥ yd 0 yd 1 yd 2 . . . ⇤ yfuture(t) = ⇥ yd 0 yd 1 yd 2 . . . ⇤ · 2 6 6 6 4 ufuture(t) ufuture(t 1) ufuture(t 2) . . . 3 7 7 7 5 8/53

Slide 35

Slide 35 text

y4 y2 y1 y3 y5 y6 y7 u1 = u2 = · · · = 0 u0 = 1 x0 =0 y0 Now what if we had the impulse response recorded in our data-library? ⇥ g0 g1 g2 . . . ⇤ = ⇥ yd 0 yd 1 yd 2 . . . ⇤ ! dynamic matrix control (Shell, 1970s): predictive control from raw data yfuture(t) = ⇥ yd 0 yd 1 yd 2 . . . ⇤ · 2 6 6 6 4 ufuture(t) ufuture(t 1) ufuture(t 2) . . . 3 7 7 7 5 8/53

Slide 36

Slide 36 text

y4 y2 y1 y3 y5 y6 y7 u1 = u2 = · · · = 0 u0 = 1 x0 =0 y0 Now what if we had the impulse response recorded in our data-library? ⇥ g0 g1 g2 . . . ⇤ = ⇥ yd 0 yd 1 yd 2 . . . ⇤ ! dynamic matrix control (Shell, 1970s): predictive control from raw data yfuture(t) = ⇥ yd 0 yd 1 yd 2 . . . ⇤ · 2 6 6 6 4 ufuture(t) ufuture(t 1) ufuture(t 2) . . . 3 7 7 7 5 today : arbitrary, finite, & corrupted data, ...stochastic & nonlinear ? 8/53

Slide 37

Slide 37 text

Today’s menu 1. behavioral system theory: fundamental lemma 2. DeePC : data-enabled predictive control 3. robustification via salient regularizations 4. cases studies from wind & power systems 9/53 + tomatoes

Slide 38

Slide 38 text

Today’s menu 1. behavioral system theory: fundamental lemma 2. DeePC : data-enabled predictive control 3. robustification via salient regularizations 4. cases studies from wind & power systems blooming literature (2-3 ArXiv / week) 9/53

Slide 39

Slide 39 text

Today’s menu 1. behavioral system theory: fundamental lemma 2. DeePC : data-enabled predictive control 3. robustification via salient regularizations 4. cases studies from wind & power systems blooming literature (2-3 ArXiv / week) ! tutorial [link] to get started • [link] to graduate school material • [link] to survey • [link] to related bachelor lecture • [link] to related publications DATA-DRIVEN CONTROL BASED ON BEHAVIORAL APPROACH: FROM THEORY TO APPLICATIONS IN POWER SYSTEMS Ivan Markovsky, Linbin Huang, and Florian Dörfler I. Markovsky is with ICREA, Pg. Lluis Companys 23, Barcelona, and CIMNE, Gran Capitàn, Barcelona, Spain (e-mail: [email protected]), L. Huang and F. Dörfler are with the Automatic Control Laboratory, ETH Zürich, 8092 Zürich, Switzerland (e-mails: [email protected], dorfl[email protected]). modeling). Modeling using observed data, possibly incorporating some prior knowledge from the physical laws (that is, black-box 9/53

Slide 40

Slide 40 text

Organization of this lecture • I will teach the basics & provide pointers to more sophisticated research material ! study cutting-edge papers yourself • it’s a school: so we will spend time on the board ! take notes • We teach this material also in the ETH Z¨ urich bachelor & have plenty of background material + implementation experience ! please reach out to me or Saverio if you need anything • we will take a break after 90 minutes ! co ee , 10/53

Slide 41

Slide 41 text

Preview complex 4-area power system: large (n=208), few sensors (8), nonlinear, noisy, sti , input constraints, & decentralized control specifications control objective: oscillation damping !"#$ !"#% !"#& !"#' ()*+#$ ()*+#% !"#, !"#- !"#. !"#/ ()*+#& ()*+#' $ , % ' & 0 / - . $1 $$ $% $& $' $, $0 $- $. $/ %1 234*#$5, 234*#%5, 234*#,5- 234*#-5.5$ 234*#-5.5% 234*#.5/5$ 234*#.5/5% 234*#/50 234*#05& 234*#05' 234*#-5$1 234*#$%5%1 234*#/5$/ 234*#$$5$, 234*#$%5$, 234*#$,5$- 234*#$-5$.5$ 234*#$-5$.5% 234*#$.5$/5$ 234*#$.5$/5% 234*#$/5$0 234*#$05$& 234*#$05$' 6!758697 !:+:3;4#$ 6!758697 !:+:3;4#% 7;4:);<#!3=4+<> 7;4:);<#!3=4+<> !?>:*@ A+):3:3;434= 2;+B#$ 2;+B#% 2;+B#& 2;+B#' ! " #! #" !&! !&$ !&' !&( 10 time (s) uncontrolled flow (p.u.) 11/53

Slide 42

Slide 42 text

Preview complex 4-area power system: large (n=208), few sensors (8), nonlinear, noisy, sti , input constraints, & decentralized control specifications control objective: oscillation damping !"#$ !"#% !"#& !"#' ()*+#$ ()*+#% !"#, !"#- !"#. !"#/ ()*+#& ()*+#' $ , % ' & 0 / - . $1 $$ $% $& $' $, $0 $- $. $/ %1 234*#$5, 234*#%5, 234*#,5- 234*#-5.5$ 234*#-5.5% 234*#.5/5$ 234*#.5/5% 234*#/50 234*#05& 234*#05' 234*#-5$1 234*#$%5%1 234*#/5$/ 234*#$$5$, 234*#$%5$, 234*#$,5$- 234*#$-5$.5$ 234*#$-5$.5% 234*#$.5$/5$ 234*#$.5$/5% 234*#$/5$0 234*#$05$& 234*#$05$' 6!758697 !:+:3;4#$ 6!758697 !:+:3;4#% 7;4:);<#!3=4+<> 7;4:);<#!3=4+<> !?>:*@ A+):3:3;434= 2;+B#$ 2;+B#% 2;+B#& 2;+B#' control control ! " #! # !&! !&$ !&' !&( 10 time (s) uncontrolled flow (p.u.) 11/53

Slide 43

Slide 43 text

Preview complex 4-area power system: large (n=208), few sensors (8), nonlinear, noisy, sti , input constraints, & decentralized control specifications control objective: oscillation damping without a model (grid has many owners, models are proprietary, operation in flux, ...) !"#$ !"#% !"#& !"#' ()*+#$ ()*+#% !"#, !"#- !"#. !"#/ ()*+#& ()*+#' $ , % ' & 0 / - . $1 $$ $% $& $' $, $0 $- $. $/ %1 234*#$5, 234*#%5, 234*#,5- 234*#-5.5$ 234*#-5.5% 234*#.5/5$ 234*#.5/5% 234*#/50 234*#05& 234*#05' 234*#-5$1 234*#$%5%1 234*#/5$/ 234*#$$5$, 234*#$%5$, 234*#$,5$- 234*#$-5$.5$ 234*#$-5$.5% 234*#$.5$/5$ 234*#$.5$/5% 234*#$/5$0 234*#$05$& 234*#$05$' 6!758697 !:+:3;4#$ 6!758697 !:+:3;4#% 7;4:);<#!3=4+<> 7;4:);<#!3=4+<> !?>:*@ A+):3:3;434= 2;+B#$ 2;+B#% 2;+B#& 2;+B#' control control ! " #! # !&! !&$ !&' !&( 10 time (s) uncontrolled flow (p.u.) 11/53

Slide 44

Slide 44 text

Preview complex 4-area power system: large (n=208), few sensors (8), nonlinear, noisy, sti , input constraints, & decentralized control specifications control objective: oscillation damping without a model (grid has many owners, models are proprietary, operation in flux, ...) !"#$ !"#% !"#& !"#' ()*+#$ ()*+#% !"#, !"#- !"#. !"#/ ()*+#& ()*+#' $ , % ' & 0 / - . $1 $$ $% $& $' $, $0 $- $. $/ %1 234*#$5, 234*#%5, 234*#,5- 234*#-5.5$ 234*#-5.5% 234*#.5/5$ 234*#.5/5% 234*#/50 234*#05& 234*#05' 234*#-5$1 234*#$%5%1 234*#/5$/ 234*#$$5$, 234*#$%5$, 234*#$,5$- 234*#$-5$.5$ 234*#$-5$.5% 234*#$.5$/5$ 234*#$.5$/5% 234*#$/5$0 234*#$05$& 234*#$05$' 6!758697 !:+:3;4#$ 6!758697 !:+:3;4#% 7;4:);<#!3=4+<> 7;4:);<#!3=4+<> !?>:*@ A+):3:3;434= 2;+B#$ 2;+B#% 2;+B#& 2;+B#' control control ! " #! # !&! !&$ !&' !&( 10 time (s) uncontrolled flow (p.u.) collect data control tie line flow (p.u.) !"#$%&'( ! " #! #" $! $" %! !&! !&$ !&' !&( 11/53

Slide 45

Slide 45 text

Preview complex 4-area power system: large (n=208), few sensors (8), nonlinear, noisy, sti , input constraints, & decentralized control specifications control objective: oscillation damping without a model (grid has many owners, models are proprietary, operation in flux, ...) !"#$ !"#% !"#& !"#' ()*+#$ ()*+#% !"#, !"#- !"#. !"#/ ()*+#& ()*+#' $ , % ' & 0 / - . $1 $$ $% $& $' $, $0 $- $. $/ %1 234*#$5, 234*#%5, 234*#,5- 234*#-5.5$ 234*#-5.5% 234*#.5/5$ 234*#.5/5% 234*#/50 234*#05& 234*#05' 234*#-5$1 234*#$%5%1 234*#/5$/ 234*#$$5$, 234*#$%5$, 234*#$,5$- 234*#$-5$.5$ 234*#$-5$.5% 234*#$.5$/5$ 234*#$.5$/5% 234*#$/5$0 234*#$05$& 234*#$05$' 6!758697 !:+:3;4#$ 6!758697 !:+:3;4#% 7;4:);<#!3=4+<> 7;4:);<#!3=4+<> !?>:*@ A+):3:3;434= 2;+B#$ 2;+B#% 2;+B#& 2;+B#' control control ! " #! # !&! !&$ !&' !&( 10 time (s) uncontrolled flow (p.u.) collect data control tie line flow (p.u.) !"#$%&'( ! " #! #" $! $" %! !&! !&$ !&' !&( seek a method that works reliably, can be e ciently implemented, & certifiable ! automating ourselves 11/53

Slide 46

Slide 46 text

Reality check: black magic or hoax ? surely, nobody would put apply such a shaky data-driven method • on the world’s most complex engineered system (the electric grid), • using the world’s biggest actuators (Gigawatt-sized HVDC links), • and subject to real-time, safety, stability, constraints ...right? 12/53

Slide 47

Slide 47 text

Reality check: black magic or hoax ? surely, nobody would put apply such a shaky data-driven method • on the world’s most complex engineered system (the electric grid), • using the world’s biggest actuators (Gigawatt-sized HVDC links), • and subject to real-time, safety, stability, constraints ...right? !"#$%&'()'(%#(*%+,-$'#(. % /% 0123% 21)4'5"*% #% 6"$7% 8#6-1$#),"% $"6'"9% -8% 7-1$% :#:"$% ;<=% 9>'?>% /% )",'"6"% ?-1,*% )"% -8% '4:-$3#(?"%3-%-1$%9-$@%#3%A'3#?>'%B-9"$%C$'*2D%E"%*-%>#6"%%;<=%$"F1'$"%-GH,'("%31('(I%3>#3%%;<=% % ?-4'22'2'-('(I%"(I'(""$%?#(%*-%-(%>'2%-9(%%;<=%%#(%#*#:J6"%#::$-#?>%9-1,*%)"%6"$7%'(3"$"2J(ID % /8%:-22'),"%/%9-1,*%,'@"%3-%3$7%3>"%*"?"(3$#,'K"*%!""BL%#::$-#?>%9'3>%-1$%4-$"%*"3#',"*%AM!L% 2723"4% 4-*",2% -(% 3>"% '(3"$#$"#% -2?',,#J-(% :$-),"4D% L-1,*% 2-% 2-4"% ?-*"% )"% 4#*"% #6#',#),"% % ;<=%%N%E-1,*%7-1%)"%'(3"$"23"*%'(%9-$@'(I%3-I"3>"$%3-%*-%21?>%#%*"4-(23$#J-(%N%%;<= 12/53

Slide 48

Slide 48 text

Reality check: black magic or hoax ? surely, nobody would put apply such a shaky data-driven method • on the world’s most complex engineered system (the electric grid), • using the world’s biggest actuators (Gigawatt-sized HVDC links), • and subject to real-time, safety, stability, constraints ...right? !"#$%&'()'(%#(*%+,-$'#(. % /% 0123% 21)4'5"*% #% 6"$7% 8#6-1$#),"% $"6'"9% -8% 7-1$% :#:"$% ;<=% 9>'?>% /% )",'"6"% ?-1,*% )"% -8% '4:-$3#(?"%3-%-1$%9-$@%#3%A'3#?>'%B-9"$%C$'*2D%E"%*-%>#6"%%;<=%$"F1'$"%-GH,'("%31('(I%3>#3%%;<=% % ?-4'22'2'-('(I%"(I'(""$%?#(%*-%-(%>'2%-9(%%;<=%%#(%#*#:J6"%#::$-#?>%9-1,*%)"%6"$7%'(3"$"2J(ID % /8%:-22'),"%/%9-1,*%,'@"%3-%3$7%3>"%*"?"(3$#,'K"*%!""BL%#::$-#?>%9'3>%-1$%4-$"%*"3#',"*%AM!L% 2723"4% 4-*",2% -(% 3>"% '(3"$#$"#% -2?',,#J-(% :$-),"4D% L-1,*% 2-% 2-4"% ?-*"% )"% 4#*"% #6#',#),"% % ;<=%%N%E-1,*%7-1%)"%'(3"$"23"*%'(%9-$@'(I%3-I"3>"$%3-%*-%21?>%#%*"4-(23$#J-(%N%%;<= %/3%9-$@2O%<%"6"(% -(%#(%"(J$",7% *'G"$"(3%4-*",%P% 2-Q9#$"%:,#R-$4 <%8"9%*#72%#Q"$% 2"(*'(I%-1$%?-*" 12/53

Slide 49

Slide 49 text

Reality check: black magic or hoax ? surely, nobody would put apply such a shaky data-driven method • on the world’s most complex engineered system (the electric grid), • using the world’s biggest actuators (Gigawatt-sized HVDC links), • and subject to real-time, safety, stability, constraints ...right? !"#$%&'()'(%#(*%+,-$'#(. % /% 0123% 21)4'5"*% #% 6"$7% 8#6-1$#),"% $"6'"9% -8% 7-1$% :#:"$% ;<=% 9>'?>% /% )",'"6"% ?-1,*% )"% -8% '4:-$3#(?"%3-%-1$%9-$@%#3%A'3#?>'%B-9"$%C$'*2D%E"%*-%>#6"%%;<=%$"F1'$"%-GH,'("%31('(I%3>#3%%;<=% % ?-4'22'2'-('(I%"(I'(""$%?#(%*-%-(%>'2%-9(%%;<=%%#(%#*#:J6"%#::$-#?>%9-1,*%)"%6"$7%'(3"$"2J(ID % /8%:-22'),"%/%9-1,*%,'@"%3-%3$7%3>"%*"?"(3$#,'K"*%!""BL%#::$-#?>%9'3>%-1$%4-$"%*"3#',"*%AM!L% 2723"4% 4-*",2% -(% 3>"% '(3"$#$"#% -2?',,#J-(% :$-),"4D% L-1,*% 2-% 2-4"% ?-*"% )"% 4#*"% #6#',#),"% % ;<=%%N%E-1,*%7-1%)"%'(3"$"23"*%'(%9-$@'(I%3-I"3>"$%3-%*-%21?>%#%*"4-(23$#J-(%N%%;<= %/3%9-$@2O%<%"6"(% -(%#(%"(J$",7% *'G"$"(3%4-*",%P% 2-Q9#$"%:,#R-$4 <%8"9%*#72%#Q"$% 2"(*'(I%-1$%?-*" at least someone believes that our method is practically useful ... 12/53

Slide 50

Slide 50 text

LTI system representations 13/53 1 exogeneous in put · ARX : y(+ + 2) + 2y(+ + 1) + 3y(t) = 4u(x) 11 auto-regressive · ARX-state space : x() = [ii] x(t+ 1) = [- = ]x(t) + [i]u( · ARX- > transfer function : y(H) = [n0]x(t) Y(z) = 2 , 34(2) us these are all parametric kernel representations

Slide 51

Slide 51 text

14/53 Iy (+ + 2) + 2y(+ + 1) + 3y(t) = 4u(t) (time Shift 3 : y(t) = y(++ 1) (2 + 28 + 3 , 4][37 = 0 ~ bervel representation"

Slide 52

Slide 52 text

Behavioral view on dynamical systems Definition: A discrete-time dynamical system is a 3-tuple (Z 0, W, B) where (i) Z 0 is the discrete-time axis, (ii) W is the signal space, & (iii) B ✓ WZ 0 is the behavior. 9 > > = > > ; B is the set of all trajectories 15/53 Yet of all discrete time series W

Slide 53

Slide 53 text

Behavioral view on dynamical systems Definition: A discrete-time dynamical system is a 3-tuple (Z 0, W, B) where (i) Z 0 is the discrete-time axis, (ii) W is the signal space, & (iii) B ✓ WZ 0 is the behavior. 9 > > = > > ; B is the set of all trajectories Definition: The dynamical system (Z 0, W, B) is (i) linear if W is a vector space & B is a subspace of WZ 0 (ii) & time-invariant if B ✓ B, where wt = wt+1 . 15/53

Slide 54

Slide 54 text

Behavioral view on dynamical systems Definition: A discrete-time dynamical system is a 3-tuple (Z 0, W, B) where (i) Z 0 is the discrete-time axis, (ii) W is the signal space, & (iii) B ✓ WZ 0 is the behavior. 9 > > = > > ; B is the set of all trajectories Definition: The dynamical system (Z 0, W, B) is (i) linear if W is a vector space & B is a subspace of WZ 0 (ii) & time-invariant if B ✓ B, where wt = wt+1 . y u 15/53

Slide 55

Slide 55 text

Behavioral view on dynamical systems Definition: A discrete-time dynamical system is a 3-tuple (Z 0, W, B) where (i) Z 0 is the discrete-time axis, (ii) W is the signal space, & (iii) B ✓ WZ 0 is the behavior. 9 > > = > > ; B is the set of all trajectories Definition: The dynamical system (Z 0, W, B) is (i) linear if W is a vector space & B is a subspace of WZ 0 (ii) & time-invariant if B ✓ B, where wt = wt+1 . LTI system = shift-invariant subspace of trajectory space ! abstract perspective suited for data-driven control y u 15/53

Slide 56

Slide 56 text

Properties of the LTI trajectory space 16/53 /EIRY /ERM · model x (t+ 1) = Ax ( + ) + Bult X (0) = Xini X (1) = AXini + Buld EM/YH=CX + Do X(2) = #Xini + ABu(0 : + Bu(d y(t) = (A + xin + A Bu(t) + Du(t) in vector notation : I IB D le ( I+ y(T) CAT u m extended It : extended observabilitmatix Of impulseresponse

Slide 57

Slide 57 text

17/53 compactly: y = Of Xini + 2 - u · observability : Xini can be reconstructed from (y , 4) from E) rank 0 = n · the smallest integer e so that Or has rankn is called the lg of the system : Sh JovaSISOyes is = given past data Mini = [u] and gi => Xini can be uniquely reconstructed E> Tini ? C

Slide 58

Slide 58 text

18/53 dimension of the L TI trajectory space & Xini ER" , what is the dimension of /ER" It = (i) I *I U u m ⊥ colem 1 pm . T / column has always has ranh n for Tze rank m . T E dimension o [Y] = m . T + 4 for is

Slide 59

Slide 59 text

LTI systems & matrix time series foundation of subspace system identification & signal recovery algorithms u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 19/53

Slide 60

Slide 60 text

LTI systems & matrix time series foundation of subspace system identification & signal recovery algorithms u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 u(t), y(t) satisfy LTI di erence equation b0ut+b1ut+1+. . .+bnut+n+ a0yt+a1yt+1+. . .+anyt+n = 0 (ARX / kernel representation) 19/53

Slide 61

Slide 61 text

LTI systems & matrix time series foundation of subspace system identification & signal recovery algorithms u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 u(t), y(t) satisfy LTI di erence equation b0ut+b1ut+1+. . .+bnut+n+ a0yt+a1yt+1+. . .+anyt+n = 0 (ARX / kernel representation) ) [ 0 b0 a0 b1 a1 ... bn an 0 ] in left nullspace of trajectory matrix (collected data) H ⇣ ud yd ⌘ = 2 6 6 6 6 6 6 6 4 ud 1,1 yd 1,1 ! ud 1,2 yd 1,2 ! ud 1,3 yd 1,3 ! ... ud 2,1 yd 2,1 ! ud 2,2 yd 2,2 ! ud 2,3 yd 2,3 ! ... . . . . . . . . . . . . ud T,1 yd T,1 ! ud T,2 yd T,2 ! ud T,3 yd T,3 ! ... 3 7 7 7 7 7 7 7 5 | {z } 1st experiment | {z } 2nd | {z } 3rd ... 19/53

Slide 62

Slide 62 text

LTI systems & matrix time series foundation of subspace system identification & signal recovery algorithms u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 u(t), y(t) satisfy LTI di erence equation b0ut+b1ut+1+. . .+bnut+n+ a0yt+a1yt+1+. . .+anyt+n = 0 (ARX / kernel representation) ( under assumptions ) [ 0 b0 a0 b1 a1 ... bn an 0 ] in left nullspace of trajectory matrix (collected data) H ⇣ ud yd ⌘ = 2 6 6 6 6 6 6 6 4 ud 1,1 yd 1,1 ! ud 1,2 yd 1,2 ! ud 1,3 yd 1,3 ! ... ud 2,1 yd 2,1 ! ud 2,2 yd 2,2 ! ud 2,3 yd 2,3 ! ... . . . . . . . . . . . . ud T,1 yd T,1 ! ud T,2 yd T,2 ! ud T,3 yd T,3 ! ... 3 7 7 7 7 7 7 7 5 | {z } 1st experiment | {z } 2nd | {z } 3rd ... 19/53

Slide 63

Slide 63 text

Fundamental Lemma u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 Given: data ⇣ ud i yd i ⌘ 2 Rm+p 20/53

Slide 64

Slide 64 text

Fundamental Lemma u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 Given: data ⇣ ud i yd i ⌘ 2 Rm+p & LTI complexity parameters ⇢ lag ` order n 20/53

Slide 65

Slide 65 text

Fundamental Lemma u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 Given: data ⇣ ud i yd i ⌘ 2 Rm+p & LTI complexity parameters ⇢ lag ` order n set of all T-length trajectories = n (u, y) 2 R(m+p)T : 9x 2 RnT s.t. x+ = Ax + Bu , y = Cx + Du o | {z } parametric state-space model 20/53

Slide 66

Slide 66 text

Fundamental Lemma u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 Given: data ⇣ ud i yd i ⌘ 2 Rm+p & LTI complexity parameters ⇢ lag ` order n set of all T-length trajectories = n (u, y) 2 R(m+p)T : 9x 2 RnT s.t. x+ = Ax + Bu , y = Cx + Du o | {z } | {z } parametric state-space model raw data (every column is an experiment) colspan 2 6 6 6 6 6 6 6 6 4 ud 1,1 yd 1,1 ! ud 1,2 yd 1,2 ! ud 1,3 yd 1,3 ! ... ud 2,1 yd 2,1 ! ud 2,2 yd 2,2 ! ud 2,3 yd 2,3 ! ... . . . . . . . . . . . . ud T,1 yd T,1 ! ud T,2 yd T,2 ! ud T,3 yd T,3 ! ... 3 7 7 7 7 7 7 7 7 5 20/53

Slide 67

Slide 67 text

Fundamental Lemma u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 Given: data ⇣ ud i yd i ⌘ 2 Rm+p & LTI complexity parameters ⇢ lag ` order n set of all T-length trajectories = n (u, y) 2 R(m+p)T : 9x 2 RnT s.t. x+ = Ax + Bu , y = Cx + Du o | {z } | {z } parametric state-space model raw data (every column is an experiment) colspan 2 6 6 6 6 6 6 6 6 4 ud 1,1 yd 1,1 ! ud 1,2 yd 1,2 ! ud 1,3 yd 1,3 ! ... ud 2,1 yd 2,1 ! ud 2,2 yd 2,2 ! ud 2,3 yd 2,3 ! ... . . . . . . . . . . . . ud T,1 yd T,1 ! ud T,2 yd T,2 ! ud T,3 yd T,3 ! ... 3 7 7 7 7 7 7 7 7 5 if and only if the trajectory matrix has rank m · T + n for all T > ` 20/53

Slide 68

Slide 68 text

set of all T-length trajectories = n (u, y) 2 R(m+p)T : 9x 2 RnT s.t. x+ = Ax + Bu , y = Cx + Du o | {z } | {z } parametric state-space model non-parametric model from raw data colspan 2 6 6 6 6 6 6 6 6 4 ud 1,1 yd 1,1 ! ud 1,2 yd 1,2 ! ud 1,3 yd 1,3 ! ... ud 2,1 yd 2,1 ! ud 2,2 yd 2,2 ! ud 2,3 yd 2,3 ! ... . . . . . . . . . . . . ud T,1 yd T,1 ! ud T,2 yd T,2 ! ud T,3 yd T,3 ! ... 3 7 7 7 7 7 7 7 7 5 21/53

Slide 69

Slide 69 text

set of all T-length trajectories = n (u, y) 2 R(m+p)T : 9x 2 RnT s.t. x+ = Ax + Bu , y = Cx + Du o | {z } | {z } parametric state-space model non-parametric model from raw data colspan 2 6 6 6 6 6 6 6 6 4 ud 1,1 yd 1,1 ! ud 1,2 yd 1,2 ! ud 1,3 yd 1,3 ! ... ud 2,1 yd 2,1 ! ud 2,2 yd 2,2 ! ud 2,3 yd 2,3 ! ... . . . . . . . . . . . . ud T,1 yd T,1 ! ud T,2 yd T,2 ! ud T,3 yd T,3 ! ... 3 7 7 7 7 7 7 7 7 5 all trajectories constructible from finitely many previous trajectories 21/53

Slide 70

Slide 70 text

set of all T-length trajectories = n (u, y) 2 R(m+p)T : 9x 2 RnT s.t. x+ = Ax + Bu , y = Cx + Du o | {z } | {z } parametric state-space model non-parametric model from raw data colspan 2 6 6 6 6 6 6 6 6 4 ud 1,1 yd 1,1 ! ud 1,2 yd 1,2 ! ud 1,3 yd 1,3 ! ... ud 2,1 yd 2,1 ! ud 2,2 yd 2,2 ! ud 2,3 yd 2,3 ! ... . . . . . . . . . . . . ud T,1 yd T,1 ! ud T,2 yd T,2 ! ud T,3 yd T,3 ! ... 3 7 7 7 7 7 7 7 7 5 all trajectories constructible from finitely many previous trajectories • standing on the shoulders of giants: classic Willems’ result was only “if” & required further assumptions: Hankel, persistency of excitation, controllability 21/53

Slide 71

Slide 71 text

set of all T-length trajectories = n (u, y) 2 R(m+p)T : 9x 2 RnT s.t. x+ = Ax + Bu , y = Cx + Du o | {z } | {z } parametric state-space model non-parametric model from raw data colspan 2 6 6 6 6 6 6 6 6 4 ud 1,1 yd 1,1 ! ud 1,2 yd 1,2 ! ud 1,3 yd 1,3 ! ... ud 2,1 yd 2,1 ! ud 2,2 yd 2,2 ! ud 2,3 yd 2,3 ! ... . . . . . . . . . . . . ud T,1 yd T,1 ! ud T,2 yd T,2 ! ud T,3 yd T,3 ! ... 3 7 7 7 7 7 7 7 7 5 all trajectories constructible from finitely many previous trajectories • standing on the shoulders of giants: classic Willems’ result was only “if” & required further assumptions: Hankel, persistency of excitation, controllability • terminology fundamental is justified : motion primitives, subspace SysID, dictionary learning, (E)DMD, ... all implicitly rely on this equivalence 21/53

Slide 72

Slide 72 text

set of all T-length trajectories = n (u, y) 2 R(m+p)T : 9x 2 RnT s.t. x+ = Ax + Bu , y = Cx + Du o | {z } | {z } parametric state-space model non-parametric model from raw data colspan 2 6 6 6 6 6 6 6 6 4 ud 1,1 yd 1,1 ! ud 1,2 yd 1,2 ! ud 1,3 yd 1,3 ! ... ud 2,1 yd 2,1 ! ud 2,2 yd 2,2 ! ud 2,3 yd 2,3 ! ... . . . . . . . . . . . . ud T,1 yd T,1 ! ud T,2 yd T,2 ! ud T,3 yd T,3 ! ... 3 7 7 7 7 7 7 7 7 5 all trajectories constructible from finitely many previous trajectories • standing on the shoulders of giants: classic Willems’ result was only “if” & required further assumptions: Hankel, persistency of excitation, controllability • terminology fundamental is justified : motion primitives, subspace SysID, dictionary learning, (E)DMD, ... all implicitly rely on this equivalence • many recent extensions to other system classes (bi-linear, descriptor, LPV, delay, Volterra series, Wiener-Hammerstein, ...), other matrix data structures (mosaic Hankel, Page, ...), & other proof methods 21/53

Slide 73

Slide 73 text

Input design for Fundamental Lemma u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 22/53

Slide 74

Slide 74 text

Input design for Fundamental Lemma u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 Definition: The data signal ud 2 RmTd of length Td is persistently exciting of order T if the Hankel matrix 2 4 u1 ··· uTd T +1 . . . ... . . . uT ··· uTd 3 5 is of full rank. 22/53 ↑ UT +1 -

Slide 75

Slide 75 text

Input design for Fundamental Lemma u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 Definition: The data signal ud 2 RmTd of length Td is persistently exciting of order T if the Hankel matrix 2 4 u1 ··· uTd T +1 . . . ... . . . uT ··· uTd 3 5 is of full rank. 22/53 m . T for full rank : Tn -T + mT => To is sufficiently

Slide 76

Slide 76 text

Input design for Fundamental Lemma u(t) t u4 u2 u1 u3 u5 u6 u7 y(t) t y4 y2 y1 y3 y5 y6 y7 Definition: The data signal ud 2 RmTd of length Td is persistently exciting of order T if the Hankel matrix 2 4 u1 ··· uTd T +1 . . . ... . . . uT ··· uTd 3 5 is of full rank. Input design [Willems et al, ’05]: Controllable LTI system & persistently exciting input ud of order T + n =) rank ⇣ H ⇣ ud yd ⌘⌘ = mT + n. 22/53

Slide 77

Slide 77 text

Data matrix structures & preprocessing 23/53 · trajectory mix H1w() - Spinar/perl- ] requires independent experiment · page matrix = HIw) = [W Wi Wat requires one long experiment · Hankel matrix = H(w) = [W W W. . requires one short experiment . . . or any combinations...

Slide 78

Slide 78 text

24/53 Pre-procession of noisy data : if wh is noisy, then all of the above matrices have full ranh . low-rank-preprocessing: min 11-w9 = find the closest i ranh (H(w) = mL + n low-rank data => standard solution is to take an SVD of H(w/ and only keep the largest mi + n singular values = is optimal if the matrix is unstructured . . . but does not apply time series are correlated

Slide 79

Slide 79 text

Bird’s view & today’s sample path through the accelerating literature Fundamental Lemma [Willems, Rapisarda, & Markovsky ’05] subspace intersection methods [Moonen et al., ’89] PE in linear systems [Green & Moore, ’86] many recent variations & extensions [van Waarde et al., ’20] generalized low- rank version [Markovsky & Dörfler, ’20] deterministic data-driven control [Markovsky & Rapisarda, ’08] data-driven control of linear systems [Persis & Tesi, ’19] regularizations & MPC scenario [Coulson et al., ’19] data informativity [van Waarde et al., ’20] LFT formulation [Berberich et al., ’20] … ? explicit implicit non-control applications: e.g., estimation. filtering, & SysID stabilization of nonlinear systems [Persis & Tesi, ’21] … robust stability & recursive feasibility [Berberich et al., ’20] (distributional) robustness [Coulson et al., ’20, Huang et al., ’21] regularizer from relaxed SysID [Dörfler et al., ’21] … … … subspace predictive control [Favoreel et al., ’99] subspace methods [Breschi, Chiuso, & Formention ’22] instrumental variables [Wingerden et al., ’22] 1980s 2005 today 25/53

Slide 80

Slide 80 text

Output Model Predictive Control (MPC) minimize u, x, y Tfuture X k=1 kyk rk k2 Q + kuk k2 R subject to xk+1 = Axk + Buk yk = Cxk + Duk 8k 2 {1, . . . , Tfuture } uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } quadratic cost with R 0, Q ⌫ 0 & ref. r model for prediction with k 2 [1, Tfuture] hard operational or safety constraints 26/53

Slide 81

Slide 81 text

Output Model Predictive Control (MPC) minimize u, x, y Tfuture X k=1 kyk rk k2 Q + kuk k2 R subject to xk+1 = Axk + Buk yk = Cxk + Duk 8k 2 {1, . . . , Tfuture } xk+1 = Axk + Buk yk = Cxk + Duk 8k 2 { Tini 1, . . . , 0} uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } quadratic cost with R 0, Q ⌫ 0 & ref. r model for prediction with k 2 [1, Tfuture] model for estimation with k 2 [ Tini 1, 0] & Tini lag (many flavors) hard operational or safety constraints 26/53

Slide 82

Slide 82 text

Output Model Predictive Control (MPC) minimize u, x, y Tfuture X k=1 kyk rk k2 Q + kuk k2 R subject to xk+1 = Axk + Buk yk = Cxk + Duk 8k 2 {1, . . . , Tfuture } xk+1 = Axk + Buk yk = Cxk + Duk 8k 2 { Tini 1, . . . , 0} uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } quadratic cost with R 0, Q ⌫ 0 & ref. r model for prediction with k 2 [1, Tfuture] model for estimation with k 2 [ Tini 1, 0] & Tini lag (many flavors) hard operational or safety constraints “[MPC] has perhaps too little system theory and too much brute force – Willems ’07 26/53

Slide 83

Slide 83 text

Output Model Predictive Control (MPC) minimize u, x, y Tfuture X k=1 kyk rk k2 Q + kuk k2 R subject to xk+1 = Axk + Buk yk = Cxk + Duk 8k 2 {1, . . . , Tfuture } xk+1 = Axk + Buk yk = Cxk + Duk 8k 2 { Tini 1, . . . , 0} uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } quadratic cost with R 0, Q ⌫ 0 & ref. r model for prediction with k 2 [1, Tfuture] model for estimation with k 2 [ Tini 1, 0] & Tini lag (many flavors) hard operational or safety constraints “[MPC] has perhaps too little system theory and too much brute force [...], but MPC is an area where all aspects of the field [...] are in synergy.” – Willems ’07 26/53

Slide 84

Slide 84 text

Output Model Predictive Control (MPC) minimize u, x, y Tfuture X k=1 kyk rk k2 Q + kuk k2 R subject to xk+1 = Axk + Buk yk = Cxk + Duk 8k 2 {1, . . . , Tfuture } xk+1 = Axk + Buk yk = Cxk + Duk 8k 2 { Tini 1, . . . , 0} uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } quadratic cost with R 0, Q ⌫ 0 & ref. r model for prediction with k 2 [1, Tfuture] model for estimation with k 2 [ Tini 1, 0] & Tini lag (many flavors) hard operational or safety constraints “[MPC] has perhaps too little system theory and too much brute force [...], but MPC is an area where all aspects of the field [...] are in synergy.” – Willems ’07 Elegance aside, for an LTI plant, deterministic, & with known model, MPC is the gold standard of control. 26/53

Slide 85

Slide 85 text

Data-enabled Predictive Control (DeePC) 27/53

Slide 86

Slide 86 text

Data-enabled Predictive Control (DeePC) minimize g, u, y Tfuture X k=1 kyk rk k2 Q + kuk k2 R subject to H ⇣ ud yd ⌘ · g = 2 6 6 4 uini yini u y 3 7 7 5 uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } quadratic cost with R 0, Q ⌫ 0 & ref. r non-parametric model for prediction and estimation hard operational or safety constraints • real-time measurements (uini, yini) for estimation • trajectory matrix H ⇣ ud yd ⌘ from past experimental data updated online collected o ine (could be adapted online) 27/53 oflength Tini-e

Slide 87

Slide 87 text

Data-enabled Predictive Control (DeePC) minimize g, u, y Tfuture X k=1 kyk rk k2 Q + kuk k2 R subject to H ⇣ ud yd ⌘ · g = 2 6 6 4 uini yini u y 3 7 7 5 uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } quadratic cost with R 0, Q ⌫ 0 & ref. r non-parametric model for prediction and estimation hard operational or safety constraints • real-time measurements (uini, yini) for estimation • trajectory matrix H ⇣ ud yd ⌘ from past experimental data updated online collected o ine (could be adapted online) ! equivalent to MPC in deterministic LTI case ... but needs to be robustified in case of noise / nonlinearity ! 27/53 #

Slide 88

Slide 88 text

Regularizations to make it work minimize g, u, y Tfuture X k=1 kyk rk k2 Q + kuk k2 R subject to H ⇣ ud yd ⌘ · g = 2 6 6 4 uini yini u y 3 7 7 5 uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } 28/53

Slide 89

Slide 89 text

Regularizations to make it work minimize g, u, y, Tfuture X k=1 kyk rk k2 Q + kuk k2 R + y k kp subject to H ⇣ ud yd ⌘ · g = 2 6 6 4 uini yini u y 3 7 7 5 + 2 6 6 4 0 0 0 3 7 7 5 uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } measurement noise ! infeasible yini estimate ! estimation slack ! moving-horizon least-square filter 28/53

Slide 90

Slide 90 text

Regularizations to make it work minimize g, u, y, Tfuture X k=1 kyk rk k2 Q + kuk k2 R + y k kp + gh(g) subject to H ⇣ ud yd ⌘ · g = 2 6 6 4 uini yini u y 3 7 7 5 + 2 6 6 4 0 0 0 3 7 7 5 uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } measurement noise ! infeasible yini estimate ! estimation slack ! moving-horizon least-square filter noisy or nonlinear (o ine) data matrix ! any (u y) feasible ! add regularizer h(g) 28/53

Slide 91

Slide 91 text

Regularizations to make it work minimize g, u, y, Tfuture X k=1 kyk rk k2 Q + kuk k2 R + y k kp + gh(g) subject to H ⇣ ud yd ⌘ · g = 2 6 6 4 uini yini u y 3 7 7 5 + 2 6 6 4 0 0 0 3 7 7 5 uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } measurement noise ! infeasible yini estimate ! estimation slack ! moving-horizon least-square filter noisy or nonlinear (o ine) data matrix ! any (u y) feasible ! add regularizer h(g) Bayesian intuition: regularization , prior, e.g., h(g) = kgk1 sparsely selects {trajectory matrix columns} = {motion primitives} ⇠ low-order basis 28/53

Slide 92

Slide 92 text

Regularizations to make it work minimize g, u, y, Tfuture X k=1 kyk rk k2 Q + kuk k2 R + y k kp + gh(g) subject to H ⇣ ud yd ⌘ · g = 2 6 6 4 uini yini u y 3 7 7 5 + 2 6 6 4 0 0 0 3 7 7 5 uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } measurement noise ! infeasible yini estimate ! estimation slack ! moving-horizon least-square filter noisy or nonlinear (o ine) data matrix ! any (u y) feasible ! add regularizer h(g) Bayesian intuition: regularization , prior, e.g., h(g) = kgk1 sparsely selects {trajectory matrix columns} = {motion primitives} ⇠ low-order basis Robustness intuition: regularization , robustifies, e.g., in a simple case 28/53

Slide 93

Slide 93 text

Regularizations to make it work minimize g, u, y, Tfuture X k=1 kyk rk k2 Q + kuk k2 R + y k kp + gh(g) subject to H ⇣ ud yd ⌘ · g = 2 6 6 4 uini yini u y 3 7 7 5 + 2 6 6 4 0 0 0 3 7 7 5 uk 2 U yk 2 Y 8k 2 {1, . . . , Tfuture } measurement noise ! infeasible yini estimate ! estimation slack ! moving-horizon least-square filter noisy or nonlinear (o ine) data matrix ! any (u y) feasible ! add regularizer h(g) Bayesian intuition: regularization , prior, e.g., h(g) = kgk1 sparsely selects {trajectory matrix columns} = {motion primitives} ⇠ low-order basis Robustness intuition: regularization , robustifies, e.g., in a simple case 28/53 minmuxl(+ )x-3min is llAx-b11 + 11XX1 = min 11Ax-b1 + g1xI * 10/118

Slide 94

Slide 94 text

regularization m incorporating priors + implicit SysID

Slide 95

Slide 95 text

Regularization = relaxing low-rank approximation in pre-processing minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n 9 = ; optimal control 9 = ; low-rank approximation 29/53

Slide 96

Slide 96 text

Regularization = relaxing low-rank approximation in pre-processing minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n # sequence of convex relaxations # minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n , kgk0  mL + n 9 = ; optimal control 9 = ; low-rank approximation 29/53

Slide 97

Slide 97 text

Regularization = relaxing low-rank approximation in pre-processing minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n # sequence of convex relaxations # minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n , kgk0  mL + n 9 = ; optimal control 9 = ; low-rank approximation 29/53

Slide 98

Slide 98 text

Regularization = relaxing low-rank approximation in pre-processing minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n # sequence of convex relaxations # minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n , kgk0  mL + n = ⇣ ud yd ⌘ 9 = ; optimal control 9 = ; low-rank approximation 29/53

Slide 99

Slide 99 text

Regularization = relaxing low-rank approximation in pre-processing minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n # sequence of convex relaxations # minimizeu,y,g control cost u, y subject to  u y = H ⇣ ud yd ⌘ g , kgk0  mL + n 9 = ; optimal control 9 = ; low-rank approximation 29/53

Slide 100

Slide 100 text

Regularization = relaxing low-rank approximation in pre-processing minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n # sequence of convex relaxations # minimizeu,y,g control cost u, y subject to  u y = H ⇣ ud yd ⌘ g , kgk1  mL + n 9 = ; optimal control 9 = ; low-rank approximation 29/53

Slide 101

Slide 101 text

Regularization = relaxing low-rank approximation in pre-processing minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n # sequence of convex relaxations # minimizeu,y,g control cost u, y + g · kgk1 subject to  u y = H ⇣ ud yd ⌘ g 9 = ; optimal control 9 = ; low-rank approximation 29/53

Slide 102

Slide 102 text

Regularization = relaxing low-rank approximation in pre-processing minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n # sequence of convex relaxations # minimizeu,y,g control cost u, y + g · kgk1 subject to  u y = H ⇣ ud yd ⌘ g `1 -regularization = relaxation of low-rank approximation & smoothened order selection 9 = ; optimal control 9 = ; low-rank approximation 29/53

Slide 103

Slide 103 text

Regularization = relaxing low-rank approximation in pre-processing minimizeu,y,g control cost u, y subject to  u y = H ⇣ ˆ u ˆ y ⌘ g where ⇣ ˆ u ˆ y ⌘ 2 argmin ⇣ ˆ u ˆ y ⌘ ⇣ ud yd ⌘ subject to rank H ˆ u ˆ y = mL + n # sequence of convex relaxations # minimizeu,y,g control cost u, y + g · kgk1 subject to  u y = H ⇣ ud yd ⌘ g `1 -regularization = relaxation of low-rank approximation & smoothened order selection 9 = ; optimal control 9 = ; low-rank approximation !"#$%&'"##()*#$+ realized closed-loop cost g 29/53 i To 104

Slide 104

Slide 104 text

Certainty-Equivalence Regularizer 30/53 ARX representation of predictor: DeePC representation of predictor: y = Of Xini + 2 + 4 where Xini satisfies Jin= Finixini = Hog =g + Tini Kini => y = 1 . [ii] + "noise or y = Yeg , where (ii)= where K is learned from data 1 = arguin 114-1 [ ]/ or y= Y [YgY)+ Ygna = y . (i grouze Gone (i) to re-create => y = y , /(ii) "SPC the model-based solutiona we need to penalize grom

Slide 105

Slide 105 text

Regularization , reformulate subspace ID ! indirect SysID + control problem minimizeu,y control cost(u, y) subject to y = K? 2 4 uini yini u 3 5 31/53

Slide 106

Slide 106 text

Regularization , reformulate subspace ID partition data as in subspace ID: H ⇣ ud yd ⌘ ⇠ 2 6 6 4 Up Yp Uf Yf 3 7 7 5 (m + p)Tini (m + p)Tfuture ! indirect SysID + control problem minimizeu,y control cost(u, y) subject to y = K? 2 4 uini yini u 3 5 31/53

Slide 107

Slide 107 text

Regularization , reformulate subspace ID partition data as in subspace ID: H ⇣ ud yd ⌘ ⇠ 2 6 6 4 Up Yp Uf Yf 3 7 7 5 (m + p)Tini (m + p)Tfuture ! indirect SysID + control problem minimizeu,y control cost(u, y) subject to y = K? 2 4 uini yini u 3 5 where K? = argmin K YF K 2 4 Up Yp Uf 3 5 31/53

Slide 108

Slide 108 text

Regularization , reformulate subspace ID partition data as in subspace ID: H ⇣ ud yd ⌘ ⇠ 2 6 6 4 Up Yp Uf Yf 3 7 7 5 (m + p)Tini (m + p)Tfuture ID of optimal multi-step predictor as in SPC: K? = YF  Up Yp Uf † 8 < : ! indirect SysID + control problem minimizeu,y control cost(u, y) subject to y = K? 2 4 uini yini u 3 5 where K? = argmin K YF K 2 4 Up Yp Uf 3 5 31/53

Slide 109

Slide 109 text

Regularization , reformulate subspace ID partition data as in subspace ID: H ⇣ ud yd ⌘ ⇠ 2 6 6 4 Up Yp Uf Yf 3 7 7 5 (m + p)Tini (m + p)Tfuture ID of optimal multi-step predictor as in SPC: K? = YF  Up Yp Uf † 8 < : ! indirect SysID + control problem minimizeu,y control cost(u, y) subject to y = K? 2 4 uini yini u 3 5 where K? = argmin K YF K 2 4 Up Yp Uf 3 5 The above is equivalent to regularized DeePC minimizeg,u,y control cost(u, y) + g Proj ⇣ ud yd ⌘ g p subject to H ⇣ ud yd ⌘ · g = 2 6 6 4 uini yini u y 3 7 7 5 31/53

Slide 110

Slide 110 text

Regularization , reformulate subspace ID partition data as in subspace ID: H ⇣ ud yd ⌘ ⇠ 2 6 6 4 Up Yp Uf Yf 3 7 7 5 (m + p)Tini (m + p)Tfuture ID of optimal multi-step predictor as in SPC: K? = YF  Up Yp Uf † 8 < : ! indirect SysID + control problem minimizeu,y control cost(u, y) subject to y = K? 2 4 uini yini u 3 5 where K? = argmin K YF K 2 4 Up Yp Uf 3 5 The above is equivalent to regularized DeePC where Proj ⇣ ud yd ⌘ projects orthogonal to ker  Up Yp Uf minimizeg,u,y control cost(u, y) + g Proj ⇣ ud yd ⌘ g p subject to H ⇣ ud yd ⌘ · g = 2 6 6 4 uini yini u y 3 7 7 5 31/53

Slide 111

Slide 111 text

Performance of regularizers applied to a stochastic LTI system kgkp Proj ⇣ ud yd ⌘ g p 32/53

Slide 112

Slide 112 text

Performance of regularizers applied to a stochastic LTI system kgkp Proj ⇣ ud yd ⌘ g p Hanke-Raus heuristic (often) reveals 32/53

Slide 113

Slide 113 text

Case study: wind turbine • detailed industrial model: 37 states & highly nonlinear (abc $ dq, MPTT, PLL, power specs, dynamics, etc.) • turbine & grid model unknown to commissioning engineer & operator • weak grid + PLL + fault ! loss of sync • disturbance to be rejected by DeePC 33/53

Slide 114

Slide 114 text

Case study: wind turbine • detailed industrial model: 37 states & highly nonlinear (abc $ dq, MPTT, PLL, power specs, dynamics, etc.) • turbine & grid model unknown to commissioning engineer & operator • weak grid + PLL + fault ! loss of sync • disturbance to be rejected by DeePC !"#" $%&&'$#(%) *(#+%,#-"!!(#(%)"&-$%)#.%& %/$(&&"#(%) %0/'.1'! h(g) = kgk2 2 h(g) = kgk1 h(g) = Proj ⇣ ud yd ⌘ g 2 2 2''34-"$#(1"#'! 2''34-"$#(1"#'! 33/53

Slide 115

Slide 115 text

Case study: wind turbine • detailed industrial model: 37 states & highly nonlinear (abc $ dq, MPTT, PLL, power specs, dynamics, etc.) • turbine & grid model unknown to commissioning engineer & operator • weak grid + PLL + fault ! loss of sync • disturbance to be rejected by DeePC !"#" $%&&'$#(%) *(#+%,#-"!!(#(%)"&-$%)#.%& %/$(&&"#(%) %0/'.1'! h(g) = kgk2 2 h(g) = kgk1 h(g) = Proj ⇣ ud yd ⌘ g 2 2 2''34-"$#(1"#'! 2''34-"$#(1"#'! regularizer tuning h(g) = kgk2 2 h(g) = kgk1 h(g) = Proj ⇣ ud yd ⌘ g 2 2 Hanke-Raus heuristic 33/53

Slide 116

Slide 116 text

Case study ++ : wind farm SG 1 SG 2 SG 3 1 2 3 4 5 6 7 9 8 IEEE nine-bus system wind farm 1 2 3 4 5 6 7 8 9 10 • high-fidelity models for turbines, machines, & IEEE-9-bus system • fast frequency response via decentralized DeePC at turbines 34/53

Slide 117

Slide 117 text

Case study ++ : wind farm SG 1 SG 2 SG 3 1 2 3 4 5 6 7 9 8 IEEE nine-bus system wind farm 1 2 3 4 5 6 7 8 9 10 • high-fidelity models for turbines, machines, & IEEE-9-bus system • fast frequency response via decentralized DeePC at turbines h(g) = Proj ⇣ ud yd ⌘ g 2 2 subspace ID + control 34/53

Slide 118

Slide 118 text

Case study ++ : wind farm SG 1 SG 2 SG 3 1 2 3 4 5 6 7 9 8 IEEE nine-bus system wind farm 1 2 3 4 5 6 7 8 9 10 • high-fidelity models for turbines, machines, & IEEE-9-bus system • fast frequency response via decentralized DeePC at turbines h(g) = Proj ⇣ ud yd ⌘ g 2 2 subspace ID + control 34/53

Slide 119

Slide 119 text

DeePC is easy to implement ! try it ! ! simple script adapted from our ETH Z¨ urich bachelor course on Computational control : https://colab.research.google.com/ drive/1URdRqr-Up0A6uDMjlU6gwmsoAAPl1GId?usp=sharing 35/53

Slide 120

Slide 120 text

Towards a theory for nonlinear systems 36/53

Slide 121

Slide 121 text

Towards a theory for nonlinear systems idea : lift nonlinear system to large/1-dimensional bi-/linear system ! Carleman, Volterra, Fliess, Koopman, Sturm-Liouville methods ! nonlinear dynamics can be approximated by LTI on finite horizon 36/53

Slide 122

Slide 122 text

Towards a theory for nonlinear systems idea : lift nonlinear system to large/1-dimensional bi-/linear system ! Carleman, Volterra, Fliess, Koopman, Sturm-Liouville methods ! nonlinear dynamics can be approximated by LTI on finite horizon regularization singles out relevant features / basis functions in data 36/53

Slide 123

Slide 123 text

Towards a theory for nonlinear systems idea : lift nonlinear system to large/1-dimensional bi-/linear system ! Carleman, Volterra, Fliess, Koopman, Sturm-Liouville methods ! nonlinear dynamics can be approximated by LTI on finite horizon regularization singles out relevant features / basis functions in data https://www.research-collection.ethz.ch/handle/20.500.11850/493419 36/53

Slide 124

Slide 124 text

Works very well across case studies 37/53

Slide 125

Slide 125 text

regularization m robustification

Slide 126

Slide 126 text

Distributional robustification beyond LTI • problem abstraction : minx2X c b ⇠, x where b ⇠ denotes measured data 38/53

Slide 127

Slide 127 text

Distributional robustification beyond LTI • problem abstraction : minx2X c b ⇠, x = minx2X E ⇠⇠b P ⇥ c (⇠, x) ⇤ where b ⇠ denotes measured data with empirical distribution b P = b ⇠ 38/53 Sen S See E E E5

Slide 128

Slide 128 text

Distributional robustification beyond LTI • problem abstraction : minx2X c b ⇠, x = minx2X E ⇠⇠b P ⇥ c (⇠, x) ⇤ where b ⇠ denotes measured data with empirical distribution b P = b ⇠ ) poor out-of-sample performance of above sample-average solution x? for real problem: E⇠⇠P ⇥ c (⇠, x?) ⇤ where P is the unknown distribution of ⇠ 38/53

Slide 129

Slide 129 text

Distributional robustification beyond LTI • problem abstraction : minx2X c b ⇠, x = minx2X E ⇠⇠b P ⇥ c (⇠, x) ⇤ where b ⇠ denotes measured data with empirical distribution b P = b ⇠ ) poor out-of-sample performance of above sample-average solution x? for real problem: E⇠⇠P ⇥ c (⇠, x?) ⇤ where P is the unknown distribution of ⇠ • distributionally robust formulation accounting for all (possibly nonlinear) stochastic processes that could have generated the data 38/53

Slide 130

Slide 130 text

Distributional robustification beyond LTI • problem abstraction : minx2X c b ⇠, x = minx2X E ⇠⇠b P ⇥ c (⇠, x) ⇤ where b ⇠ denotes measured data with empirical distribution b P = b ⇠ ) poor out-of-sample performance of above sample-average solution x? for real problem: E⇠⇠P ⇥ c (⇠, x?) ⇤ where P is the unknown distribution of ⇠ • distributionally robust formulation accounting for all (possibly nonlinear) stochastic processes that could have generated the data inf x2X sup Q2B✏(b P) E⇠⇠Q ⇥ c (⇠, x) ⇤ 38/53 maximize over all Q which are "E-close" to my samples i

Slide 131

Slide 131 text

Distributional robustification beyond LTI • problem abstraction : minx2X c b ⇠, x = minx2X E ⇠⇠b P ⇥ c (⇠, x) ⇤ where b ⇠ denotes measured data with empirical distribution b P = b ⇠ ) poor out-of-sample performance of above sample-average solution x? for real problem: E⇠⇠P ⇥ c (⇠, x?) ⇤ where P is the unknown distribution of ⇠ • distributionally robust formulation accounting for all (possibly nonlinear) stochastic processes that could have generated the data inf x2X sup Q2B✏(b P) E⇠⇠Q ⇥ c (⇠, x) ⇤ where B✏(b P) is an ✏-Wasserstein ball centered at empirical sample distribution b P : B✏(b P) = ⇢ P : inf ⇧ Z ⇠ b ⇠ p d⇧  ✏ ˆ ⇠ ⇠ ˆ P P ⇧ 38/53

Slide 132

Slide 132 text

• distributionally robustness ⌘ regularization : under minor conditions Theorem: inf x2X sup Q2B✏(b P) E⇠⇠Q ⇥ c (⇠, x) ⇤ | {z } distributional robust formulation 39/53

Slide 133

Slide 133 text

• distributionally robustness ⌘ regularization : under minor conditions Theorem: inf x2X sup Q2B✏(b P) E⇠⇠Q ⇥ c (⇠, x) ⇤ | {z } distributional robust formulation ⌘ min x2X c ⇣ b ⇠, x ⌘ + ✏ Lip(c) · kxk? p | {z } previous regularized DeePC formulation 39/53

Slide 134

Slide 134 text

• distributionally robustness ⌘ regularization : under minor conditions Theorem: inf x2X sup Q2B✏(b P) E⇠⇠Q ⇥ c (⇠, x) ⇤ | {z } distributional robust formulation ⌘ min x2X c ⇣ b ⇠, x ⌘ + ✏ Lip(c) · kxk? p | {z } previous regularized DeePC formulation Cor : `1 -robustness in trajectory space () `1 -regularization of DeePC 39/53

Slide 135

Slide 135 text

• distributionally robustness ⌘ regularization : under minor conditions Theorem: inf x2X sup Q2B✏(b P) E⇠⇠Q ⇥ c (⇠, x) ⇤ | {z } distributional robust formulation ⌘ min x2X c ⇣ b ⇠, x ⌘ + ✏ Lip(c) · kxk? p | {z } previous regularized DeePC formulation Cor : `1 -robustness in trajectory space () `1 -regularization of DeePC 10-5 10-4 10-3 10-2 10-1 100 0 0.5 1 1.5 2 2.5 3 3.5 Cost 105 cost ✏ 39/53

Slide 136

Slide 136 text

• distributionally robustness ⌘ regularization : under minor conditions Theorem: inf x2X sup Q2B✏(b P) E⇠⇠Q ⇥ c (⇠, x) ⇤ | {z } distributional robust formulation ⌘ min x2X c ⇣ b ⇠, x ⌘ + ✏ Lip(c) · kxk? p | {z } previous regularized DeePC formulation Cor : `1 -robustness in trajectory space () `1 -regularization of DeePC 10-5 10-4 10-3 10-2 10-1 100 0 0.5 1 1.5 2 2.5 3 3.5 Cost 105 cost ✏ • measure concentration: average matrix 1 N PN i=1 Hi(yd) from i.i.d. experiments =) ambiguity set B✏(b P) includes true P with high confidence if ✏ ⇠ 1/N1/ dim(⇠) N = 1 N = 10 39/53

Slide 137

Slide 137 text

Further ingredients • more structured uncertainty sets : tractable reformulations (relaxations) & performance guarantees 40/53

Slide 138

Slide 138 text

Further ingredients • more structured uncertainty sets : tractable reformulations (relaxations) & performance guarantees • distributionally robust probabilistic constraints sup Q2B✏(b P) CVaRQ 1 ↵ () averaging + regularization + tightening CVaRP 1 ↵ (X) P(X)  1 ↵ VaRP 1 ↵ (X) 40/53

Slide 139

Slide 139 text

Further ingredients • more structured uncertainty sets : tractable reformulations (relaxations) & performance guarantees • distributionally robust probabilistic constraints sup Q2B✏(b P) CVaRQ 1 ↵ () averaging + regularization + tightening CVaRP 1 ↵ (X) P(X)  1 ↵ VaRP 1 ↵ (X) • replace (finite) moving horizon estimation via (uini yini ) by recursive Kalman filtering based on optimization solution g? as hidden state ... 40/53

Slide 140

Slide 140 text

white elephant

Slide 141

Slide 141 text

white elephant: how does DeePC perform against SysID + control ?

Slide 142

Slide 142 text

white elephant: how does DeePC perform against SysID + control ? surprise: DeePC consistently beats (certainty-equivalence) identification & control of LTI models across all real case studies !

Slide 143

Slide 143 text

white elephant: how does DeePC perform against SysID + control ? surprise: DeePC consistently beats (certainty-equivalence) identification & control of LTI models across all real case studies ! why ?!?

Slide 144

Slide 144 text

Comparison: direct vs. indirect control indirect ID-based data-driven control minimize control cost u, y subject to u, y satisfy parametric model where model 2 argmin id cost ud, yd subject to model 2 LTI(n, `) class 41/53

Slide 145

Slide 145 text

Comparison: direct vs. indirect control indirect ID-based data-driven control minimize control cost u, y subject to u, y satisfy parametric model where model 2 argmin id cost ud, yd subject to model 2 LTI(n, `) class ) ID 41/53

Slide 146

Slide 146 text

Comparison: direct vs. indirect control indirect ID-based data-driven control minimize control cost u, y subject to u, y satisfy parametric model where model 2 argmin id cost ud, yd subject to model 2 LTI(n, `) class ) ID ID projects data on the set of LTI models • with parameters (n, `) • removes noise & thus lowers variance error • su ers bias error if plant is not LTI(n, `) 41/53

Slide 147

Slide 147 text

Comparison: direct vs. indirect control indirect ID-based data-driven control minimize control cost u, y subject to u, y satisfy parametric model where model 2 argmin id cost ud, yd subject to model 2 LTI(n, `) class ) ID ID projects data on the set of LTI models • with parameters (n, `) • removes noise & thus lowers variance error • su ers bias error if plant is not LTI(n, `) direct regularized data-driven control minimize control cost u, y + · regularizer subject to u, y consistent with ud, yd data 41/53 Ce Im H(i)

Slide 148

Slide 148 text

Comparison: direct vs. indirect control indirect ID-based data-driven control minimize control cost u, y subject to u, y satisfy parametric model where model 2 argmin id cost ud, yd subject to model 2 LTI(n, `) class ) ID ID projects data on the set of LTI models • with parameters (n, `) • removes noise & thus lowers variance error • su ers bias error if plant is not LTI(n, `) direct regularized data-driven control minimize control cost u, y + · regularizer subject to u, y consistent with ud, yd data • regularization robustifies ! choosing makes it work • no projection on LTI(n, `) ! no de-noising & no bias 41/53

Slide 149

Slide 149 text

Comparison: direct vs. indirect control indirect ID-based data-driven control minimize control cost u, y subject to u, y satisfy parametric model where model 2 argmin id cost ud, yd subject to model 2 LTI(n, `) class ) ID ID projects data on the set of LTI models • with parameters (n, `) • removes noise & thus lowers variance error • su ers bias error if plant is not LTI(n, `) direct regularized data-driven control minimize control cost u, y + · regularizer subject to u, y consistent with ud, yd data • regularization robustifies ! choosing makes it work • no projection on LTI(n, `) ! no de-noising & no bias hypothesis: ID wins in stochastic (variance) & DeePC in nonlinear (bias) case 41/53

Slide 150

Slide 150 text

Case study: direct vs. indirect control stochastic LTI case • LQR control of 5th order LTI system • Gaussian noise with varying noise to signal ratio (100 rollouts each case) • `1 -regularized DeePC, SysID via N4SID, & judicious hyper-parameters 42/53

Slide 151

Slide 151 text

Case study: direct vs. indirect control stochastic LTI case • LQR control of 5th order LTI system • Gaussian noise with varying noise to signal ratio (100 rollouts each case) • `1 -regularized DeePC, SysID via N4SID, & judicious hyper-parameters deterministic noisy 42/53

Slide 152

Slide 152 text

Case study: direct vs. indirect control stochastic LTI case ! indirect ID wins • LQR control of 5th order LTI system • Gaussian noise with varying noise to signal ratio (100 rollouts each case) • `1 -regularized DeePC, SysID via N4SID, & judicious hyper-parameters deterministic noisy 42/53

Slide 153

Slide 153 text

Case study: direct vs. indirect control stochastic LTI case ! indirect ID wins • LQR control of 5th order LTI system • Gaussian noise with varying noise to signal ratio (100 rollouts each case) • `1 -regularized DeePC, SysID via N4SID, & judicious hyper-parameters deterministic noisy nonlinear case • Lotka-Volterra + control: x+ = f(x, u) • interpolated system x+ = ✏·flinearized(x, u)+(1 ✏)·f(x, u) • same ID & DeePC as on the left & 100 initial x0 rollouts for each ✏ 42/53

Slide 154

Slide 154 text

Case study: direct vs. indirect control stochastic LTI case ! indirect ID wins • LQR control of 5th order LTI system • Gaussian noise with varying noise to signal ratio (100 rollouts each case) • `1 -regularized DeePC, SysID via N4SID, & judicious hyper-parameters deterministic noisy nonlinear case • Lotka-Volterra + control: x+ = f(x, u) • interpolated system x+ = ✏·flinearized(x, u)+(1 ✏)·f(x, u) • same ID & DeePC as on the left & 100 initial x0 rollouts for each ✏ nonlinear linear 42/53

Slide 155

Slide 155 text

Case study: direct vs. indirect control stochastic LTI case ! indirect ID wins • LQR control of 5th order LTI system • Gaussian noise with varying noise to signal ratio (100 rollouts each case) • `1 -regularized DeePC, SysID via N4SID, & judicious hyper-parameters deterministic noisy nonlinear case ! direct DeePC wins • Lotka-Volterra + control: x+ = f(x, u) • interpolated system x+ = ✏·flinearized(x, u)+(1 ✏)·f(x, u) • same ID & DeePC as on the left & 100 initial x0 rollouts for each ✏ nonlinear linear 42/53

Slide 156

Slide 156 text

Power system case study revisited !"#$ !"#% !"#& !"#' ()*+#$ ()*+#% !"#, !"#- !"#. !"#/ ()*+#& ()*+#' $ , % ' & 0 / - . $1 $$ $% $& $' $, $0 $- $. $/ %1 234*#$5, 234*#%5, 234*#,5- 234*#-5.5$ 234*#-5.5% 234*#.5/5$ 234*#.5/5% 234*#/50 234*#05& 234*#05' 234*#-5$1 234*#$%5%1 234*#/5$/ 234*#$$5$, 234*#$%5$, 234*#$,5$- 234*#$-5$.5$ 234*#$-5$.5% 234*#$.5$/5$ 234*#$.5$/5% 234*#$/5$0 234*#$05$& 234*#$05$' 6!758697 !:+:3;4#$ 6!758697 !:+:3;4#% 7;4:);<#!3=4+<> 7;4:);<#!3=4+<> !" !" # # # !" !" # # !" #$% !" ?@+>*52;AB*C#2;;D 7E))*4:#7;4:);<#2;;D 97#6;<:+=*#7;4:);<#2;;D 6;<:+=*#7;4:);<#2;;D !" #$% 7;4:);<#93+=)+F#;G#6!758697#!:+:3;4#% !" !" # # # !" !" # # !" #$% !" ?@+>*52;AB*C#2;;D 7E))*4:#7;4:);<#2;;D ?;H*)#7;4:);<#2;;D 6;<:+=*#7;4:);<#2;;D !" #$% 7;4:);<#93+=)+F#;G#6!758697#!:+:3;4#$ !I>:*F ?+):3:3;434= 2;+C#$ 2;+C#% 2;+C#& 2;+C#' control control ! " #! #" !&! !&$ !&' !&( 10 time (s) uncontrolled flow (p.u.) • complex 4-area power system: large (n = 208), few measurements (8), nonlinear, noisy, sti , input constraints, & decentralized control • control objective: damping of inter-area oscillations via HVDC link • real-time MPC & DeePC prohibitive ! choose T, Tini , & Tfuture wisely 43/53

Slide 157

Slide 157 text

Centralized control 0 5 10 15 20 25 30 0.2 0.4 0.6 0.8 0 5 10 15 20 25 30 0.0 0.2 0.4 0.6 0 5 10 15 20 25 30 0.0 0.2 0.4 0.6 time (s) a control; —– with PEM-MPC (s = 60); —– with DeePC Closed‐loop cost Number of simulations DeePC PEM‐MPC ost comparison of DeePC and PEM-MPC under the practic = Prediction Error Method (PEM) System ID + MPC t < 10 s : open loop data collection with white noise excitat. t > 10 s : control 44/53

Slide 158

Slide 158 text

Performance: DeePC wins (clearly!) Closed‐loop cost Number of simulations DeePC PEM‐MPC Measured closed-loop cost = P k kyk rk k2 Q + kuk k2 R 45/53

Slide 159

Slide 159 text

DeePC hyper-parameter tuning Closed‐loop cost Closed‐loop cost Tfuture regularizer g • for distributional robustness ⇡ radius of Wasserstein ball • wide range of sweet spots ! choose g = 20 estimation horizon Tini • for model complexity ⇡ lag • Tini 50 is su cient & low computational complexity ! choose Tini = 60 46/53 -4 I I

Slide 160

Slide 160 text

Closed‐loop cost Closed‐loop cost Closed‐loop cost Closed‐loop cost Tfuture prediction horizon Tfuture • nominal MPC is stable if horizon Tfuture long enough ! choose Tfuture = 120 & apply first 60 input steps data length T • long enough for low-rank condition but card(g) grows ! choose T = 1500 (data matrix ⇡ square) 47/53

Slide 161

Slide 161 text

Computational cost time (s) 0 5 10 15 20 25 30 0.2 0.4 0.6 0.8 0 5 10 15 20 25 30 0.0 0.2 0.4 0.6 0 5 10 15 20 25 30 0.0 0.2 0.4 0.6 • T = 1500 • g = 20 • Tini = 60 • Tfuture = 120 & apply first 60 input steps • sampling time = 0.02 s • solver (OSQP) time = 1 s (on Intel Core i5 7200U) ) implementable 48/53

Slide 162

Slide 162 text

Comparison: Hankel & Page matrix Control Horizon k Control Horizon k Averaged Closed‐loop Cost S0=1 ⌅ Hankel matrix ⌅ Hankel matrix with SVD ( threshhold = 1) ⌅ Page matrix ⌅ Page matrix with SVD ( threshhold = 1) • comparison baseline: Hankel and Page matrices of same size • perfomance : Page consistency beats Hankel matrix predictors • o ine denoising via SVD threshholding works wonderfully for Page though obviously not for Hankel (entries are constrained) • e ects very pronounced for longer horizon (= open-loop time) • price-to-be-paid : Page matrix predictor requires more data 49/53

Slide 163

Slide 163 text

Decentralized implementation !"#$ !"#% !"#& !"#' ()*+#$ ()*+#% !"#, !"#- !"#. !"#/ ()*+#& ()*+#' $ , % ' & 0 / - . $1 $$ $% $& $' $, $0 $- $. $/ %1 234*#$5, 234*#%5, 234*#,5- 234*#-5.5$ 234*#-5.5% 234*#.5/5$ 234*#.5/5% 234*#/50 234*#05& 234*#05' 234*#-5$1 234*#$%5%1 234*#/5$/ 234*#$$5$, 234*#$%5$, 234*#$,5$- 234*#$-5$.5$ 234*#$-5$.5% 234*#$.5$/5$ 234*#$.5$/5% 234*#$/5$0 234*#$05$& 234*#$05$' 6!758697 !:+:3;4#$ 6!758697 !:+:3;4#% 7;4:);<#!3=4+<> 7;4:);<#!3=4+<> !" !" # # # !" !" # # !" #$% !" ?@+>*52;AB*C#2;;D 7E))*4:#7;4:);<#2;;D 97#6;<:+=*#7;4:);<#2;;D 6;<:+=*#7;4:);<#2;;D !" #$% 7;4:);<#93+=)+F#;G#6!758697#!:+:3;4#% !" !" # # # !" !" # # !" #$% !" ?@+>*52;AB*C#2;;D 7E))*4:#7;4:);<#2;;D ?;H*)#7;4:);<#2;;D 6;<:+=*#7;4:);<#2;;D !" #$% 7;4:);<#93+=)+F#;G#6!758697#!:+:3;4#$ !I>:*F ?+):3:3;434= 2;+C#$ 2;+C#% 2;+C#& 2;+C#' control control ! " #! #" $! $ !&! !&$ !&' !&( 10 time (s) uncontrolled flow (p.u.) • plug’n’play MPC: treat interconnection P3 as disturbance variable w with past disturbance wini measurable & future wfuture 2 W uncertain • for each controller augment trajectory matrix with disturbance data w • decentralized robust min-max DeePC: ming,u,y maxw2W 50/53 min mu

Slide 164

Slide 164 text

Decentralized control performance 0 5 10 15 20 25 30 0.2 0.4 0.6 0.8 0 5 10 15 20 25 30 0.0 0.2 0.4 0.6 0 5 10 15 20 25 30 0.0 0.2 0.4 0.6 time (s) • colors correspond to di erent hyper- parameter settings (not discernible) • ambiguity set W is 1-ball (box) • for computational e ciency W is downsampled (piece-wise linear) • solver time ⇡ 2.6 s ) implementable 51/53

Slide 165

Slide 165 text

Conclusions main take-aways • matrix time series as predictive model • robustness & side-info by regularization • method that works in theory & practice • focus is robust prediction not predictor ID SG 1 SG 2 SG 3 1 2 3 4 5 6 7 9 8 IEEE nine-bus system wind farm 1 2 3 4 5 6 7 8 9 10 52/53

Slide 166

Slide 166 text

Conclusions main take-aways • matrix time series as predictive model • robustness & side-info by regularization • method that works in theory & practice • focus is robust prediction not predictor ID ongoing work ! certificates for adaptive & nonlinear cases ! applications with a true “business case”, push TRL scale, & industry collaborations SG 1 SG 2 SG 3 1 2 3 4 5 6 7 9 8 IEEE nine-bus system wind farm 1 2 3 4 5 6 7 8 9 10 52/53

Slide 167

Slide 167 text

Conclusions main take-aways • matrix time series as predictive model • robustness & side-info by regularization • method that works in theory & practice • focus is robust prediction not predictor ID ongoing work ! certificates for adaptive & nonlinear cases ! applications with a true “business case”, push TRL scale, & industry collaborations SG 1 SG 2 SG 3 1 2 3 4 5 6 7 9 8 IEEE nine-bus system wind farm 1 2 3 4 5 6 7 8 9 10 questions we should discuss • catch? violate no-free-lunch theorem ? ! more real-time computation 52/53 - LQR

Slide 168

Slide 168 text

Conclusions main take-aways • matrix time series as predictive model • robustness & side-info by regularization • method that works in theory & practice • focus is robust prediction not predictor ID ongoing work ! certificates for adaptive & nonlinear cases ! applications with a true “business case”, push TRL scale, & industry collaborations SG 1 SG 2 SG 3 1 2 3 4 5 6 7 9 8 IEEE nine-bus system wind farm 1 2 3 4 5 6 7 8 9 10 questions we should discuss • catch? violate no-free-lunch theorem ? ! more real-time computation • when does direct beat indirect ? ! Id4Control & bias/variance issues ? 52/53 QR & of objective should bias ID

Slide 169

Slide 169 text

53/53

Slide 170

Slide 170 text

Florian’s version of 53/53

Slide 171

Slide 171 text

Thanks ! Florian D¨ orfler mail: dorfl[email protected] [link] to homepage [link] to related publications