approximate mpc based on machine learning and
TRANSCRIPT
Approximate MPC based on machine learning and probabilistic verification
Sergio Lucia
Technische Universität BerlinEinstein Center Digital Future
www.iot.tu-berlin.de
Motivation
Solving NMPC problems in real time is still challenging:• For very fast systems• On low-cost embedded hardware
Even more challenging in the case of robust NMPC
• Goal: Development of an approach that simultaneously• Obtains approximate optimal robust solutions• Has small memory footprint • Can be rapidly evaluated on an embedded device
2
Explicit MPC in the linear case
The MPC control law for LTI systems is a piecewise-affine function• Depends only on the current state (and possibly parameters)• Can be offline precomputed and stored
Each region is described by a polyhedron:
[A. Bemporad, M Morari, V. Dua, E.N. Pistikopoulos, 2002] 3
Reducing complexity of explicit MPC
• Optimal representations:• Merging of regions with same feedback law• Lattice representation
• Suboptimal approximations:• Trade-off between complexity reduction and performance• Simplicial partitions• Neural networks
[T. A. Johannsen, A. Bemporad, F. Borrelli, C. Jones, M. Morari, M. Kvanisca and others]4
Using neural networks to approximate MPC
It is an old idea: already done in 1995 for nonlinear MPC• What is new?
Common practice until recent successes in deep learning was:• Because of universal approximation theorem: use only 1 layer
What are the possible advantages of deep learning for approximating complex MPC laws?
[T. Parisini and R. Zoppoli, 1995, Akesson and Toivonen, 2006]5
Deep neural networks (DNN)
Neural network with L hidden layersand M neurons per layer
• Affine transformation
• Activation function- tanh:
- ReLU:
gl(fl) = tanh(fl) =efl � e�fl
efl � e�fl<latexit sha1_base64="4I3Lpd3wB7qiagOTAc4KuIj+ufQ=">AAACjHicbZDfa9swEMcV71eXbV26Pe5FLAy6hwS7FFYYhUJh7LGDpi3EnjnLp0RUko0ktwThP6h/zV7X/2Zy6pWl3YHgo+/dSXffopbCuji+HURPnj57/mLr5fDV6zfbb0c7785s1RiGM1bJylwUYFEKjTMnnMSL2iCoQuJ5cXnc5c+v0FhR6VO3qjFTsNCCCwYuSPnoeJHLXZ7Lz/SQpg708v7CDTCPP324t3RCA006bP9qk3slH43jabwO+hiSHsakj5N8Z5CkZcUahdoxCdbOk7h2mQfjBJPYDtPGYg3sEhY4D6hBoc38etuWfgpKSXllwtGOrtV/Ozwoa1eqCJUK3NI+zHXi/3LzxvGDzAtdNw41u/uIN5K6inbW0VIYZE6uAgAzIsxK2RKCTS4YvPGSZSCxzPwS5RW6sI9BjdesUgp0mXJQQq5K5NBI51PLe2zpxiOnSea7DbtZhsNgcvLQ0sdwtjdN4mnyY398dNDbvUU+kI9klyTkCzki38kJmRFGbsgv8pvcRtvRfvQ1OrwrjQZ9z3uyEdG3P0mPyHE=</latexit><latexit sha1_base64="4I3Lpd3wB7qiagOTAc4KuIj+ufQ=">AAACjHicbZDfa9swEMcV71eXbV26Pe5FLAy6hwS7FFYYhUJh7LGDpi3EnjnLp0RUko0ktwThP6h/zV7X/2Zy6pWl3YHgo+/dSXffopbCuji+HURPnj57/mLr5fDV6zfbb0c7785s1RiGM1bJylwUYFEKjTMnnMSL2iCoQuJ5cXnc5c+v0FhR6VO3qjFTsNCCCwYuSPnoeJHLXZ7Lz/SQpg708v7CDTCPP324t3RCA006bP9qk3slH43jabwO+hiSHsakj5N8Z5CkZcUahdoxCdbOk7h2mQfjBJPYDtPGYg3sEhY4D6hBoc38etuWfgpKSXllwtGOrtV/Ozwoa1eqCJUK3NI+zHXi/3LzxvGDzAtdNw41u/uIN5K6inbW0VIYZE6uAgAzIsxK2RKCTS4YvPGSZSCxzPwS5RW6sI9BjdesUgp0mXJQQq5K5NBI51PLe2zpxiOnSea7DbtZhsNgcvLQ0sdwtjdN4mnyY398dNDbvUU+kI9klyTkCzki38kJmRFGbsgv8pvcRtvRfvQ1OrwrjQZ9z3uyEdG3P0mPyHE=</latexit><latexit sha1_base64="4I3Lpd3wB7qiagOTAc4KuIj+ufQ=">AAACjHicbZDfa9swEMcV71eXbV26Pe5FLAy6hwS7FFYYhUJh7LGDpi3EnjnLp0RUko0ktwThP6h/zV7X/2Zy6pWl3YHgo+/dSXffopbCuji+HURPnj57/mLr5fDV6zfbb0c7785s1RiGM1bJylwUYFEKjTMnnMSL2iCoQuJ5cXnc5c+v0FhR6VO3qjFTsNCCCwYuSPnoeJHLXZ7Lz/SQpg708v7CDTCPP324t3RCA006bP9qk3slH43jabwO+hiSHsakj5N8Z5CkZcUahdoxCdbOk7h2mQfjBJPYDtPGYg3sEhY4D6hBoc38etuWfgpKSXllwtGOrtV/Ozwoa1eqCJUK3NI+zHXi/3LzxvGDzAtdNw41u/uIN5K6inbW0VIYZE6uAgAzIsxK2RKCTS4YvPGSZSCxzPwS5RW6sI9BjdesUgp0mXJQQq5K5NBI51PLe2zpxiOnSea7DbtZhsNgcvLQ0sdwtjdN4mnyY398dNDbvUU+kI9klyTkCzki38kJmRFGbsgv8pvcRtvRfvQ1OrwrjQZ9z3uyEdG3P0mPyHE=</latexit><latexit sha1_base64="RuBeFd1vxVoknAUxP6ONLtul5gQ=">AAACOXicbVHLTsMwEHR4lvDsmYtFhcSpSrjAEYkLR5Boi9RGaONsWgvbiewNqIr6A1z5KX6Bn+CGuOKUHigwkqXRrL2enU1LJR1F0Vuwsrq2vrHZ2gq3d8Ldvf2Dnb4rKiuwJwpV2LsUHCppsEeSFN6VFkGnCgfpw2VTHzyidbIwtzQtMdEwNjKXAshL1/cHnagbzcH/knhBOmyB+3YQj7JCVBoNCQXODeOopKQGS1IonIWjymEJ4gHGOPTUgEaX1HOfM37slYznhfXHEJ+rP1/UoJ2b6tTf1EAT97vWiP/VhhXl50ktTVkRGvH9UV4pTgVvhuaZtChITT0BYaX3ysUELAjy0Sx1cgIUZkk9QfWI5OexaPBJFFqDyUY5aKmmGeZQKapHLl/QGV9qchsndTNh4yUMfcbx70T/kv5pN4668U3EWuyQHbETFrMzdsGu2DXrMcEy9sxegtfgPfj43sVKsFhKmy0h+PwCzCSwQg==</latexit><latexit sha1_base64="NsnQ7zDm+8e3H7WffNtyJzkTI+Q=">AAACgXicbZFNa9wwEIa1Tj/SbZpueu1FNBTSwy52CbRQAoVcekwhmwTWrhnL410RSTbSOGUR/kH9Nbkm/ybyZhu6SQcEj97Rx8w7RaOkozi+HURbz56/eLn9avh6583u29HezpmrWytwKmpV24sCHCppcEqSFF40FkEXCs+Ly+M+f36F1snanNKywUzD3MhKCqAg5aPjea4Oqlx94kc8JTCLh01lQXj85cO+42MeaNxj91cbPyj5aD+exKvgTyFZwz5bx0m+N0jSshatRkNCgXOzJG4o82BJCoXdMG0dNiAuYY6zgAY0usyvuu34x6CUvKptWIb4Sv33hgft3FIX4aQGWrjHuV78X27WUvU189I0LaER9x9VreJU8946XkqLgtQyAAgrQ61cLCDYRMHgjZecAIVl5heorpBCPxYN/ha11mDKtAIt1bLEClpFPnXVGju+8chpkvm+w76W4TCYnDy29CmcfZ4k8ST5GbNt9p59YAcsYV/Yd/aDnbApE+wPu2Y37DbajQ6jb/fjiAbrubxjGxEd3QGpUMeD</latexit><latexit sha1_base64="NsnQ7zDm+8e3H7WffNtyJzkTI+Q=">AAACgXicbZFNa9wwEIa1Tj/SbZpueu1FNBTSwy52CbRQAoVcekwhmwTWrhnL410RSTbSOGUR/kH9Nbkm/ybyZhu6SQcEj97Rx8w7RaOkozi+HURbz56/eLn9avh6583u29HezpmrWytwKmpV24sCHCppcEqSFF40FkEXCs+Ly+M+f36F1snanNKywUzD3MhKCqAg5aPjea4Oqlx94kc8JTCLh01lQXj85cO+42MeaNxj91cbPyj5aD+exKvgTyFZwz5bx0m+N0jSshatRkNCgXOzJG4o82BJCoXdMG0dNiAuYY6zgAY0usyvuu34x6CUvKptWIb4Sv33hgft3FIX4aQGWrjHuV78X27WUvU189I0LaER9x9VreJU8946XkqLgtQyAAgrQ61cLCDYRMHgjZecAIVl5heorpBCPxYN/ha11mDKtAIt1bLEClpFPnXVGju+8chpkvm+w76W4TCYnDy29CmcfZ4k8ST5GbNt9p59YAcsYV/Yd/aDnbApE+wPu2Y37DbajQ6jb/fjiAbrubxjGxEd3QGpUMeD</latexit><latexit sha1_base64="HjjQ2zwHGXiyj3EBa5vvW8DL/Es=">AAACjHicbZDfa9swEMcV71eXbl3aPe5FLBS6hwR7DFYYhUJh7LGDpi3EnjnLp0RUko0kdwThP2h/TV/X/2Zy6pWl3YHgo+/dSXffopbCuji+HURPnj57/mLr5XD71eudN6PdvXNbNYbhjFWyMpcFWJRC48wJJ/GyNgiqkHhRXJ10+YtrNFZU+sytaswULLTggoELUj46WeTygOfyAz2iqQO9vL9wA8zjDx/uLZ3QQJMO27/a5F7JR+N4Gq+DPoakhzHp4zTfHSRpWbFGoXZMgrXzJK5d5sE4wSS2w7SxWAO7ggXOA2pQaDO/3ral+0EpKa9MONrRtfpvhwdl7UoVoVKBW9qHuU78X27eOH6YeaHrxqFmdx/xRlJX0c46WgqDzMlVAGBGhFkpW0KwyQWDN16yDCSWmV+ivEYX9jGo8SerlAJdphyUkKsSOTTS+dTyHlu68chZkvluw26W4TCYnDy09DGcf5wm8TT5Ho+PD3u7t8g78p4ckIR8JsfkGzklM8LIL3JDfpPbaCf6FH2Jju5Ko0Hf85ZsRPT1D0hPyG0=</latexit><latexit sha1_base64="4I3Lpd3wB7qiagOTAc4KuIj+ufQ=">AAACjHicbZDfa9swEMcV71eXbV26Pe5FLAy6hwS7FFYYhUJh7LGDpi3EnjnLp0RUko0ktwThP6h/zV7X/2Zy6pWl3YHgo+/dSXffopbCuji+HURPnj57/mLr5fDV6zfbb0c7785s1RiGM1bJylwUYFEKjTMnnMSL2iCoQuJ5cXnc5c+v0FhR6VO3qjFTsNCCCwYuSPnoeJHLXZ7Lz/SQpg708v7CDTCPP324t3RCA006bP9qk3slH43jabwO+hiSHsakj5N8Z5CkZcUahdoxCdbOk7h2mQfjBJPYDtPGYg3sEhY4D6hBoc38etuWfgpKSXllwtGOrtV/Ozwoa1eqCJUK3NI+zHXi/3LzxvGDzAtdNw41u/uIN5K6inbW0VIYZE6uAgAzIsxK2RKCTS4YvPGSZSCxzPwS5RW6sI9BjdesUgp0mXJQQq5K5NBI51PLe2zpxiOnSea7DbtZhsNgcvLQ0sdwtjdN4mnyY398dNDbvUU+kI9klyTkCzki38kJmRFGbsgv8pvcRtvRfvQ1OrwrjQZ9z3uyEdG3P0mPyHE=</latexit><latexit sha1_base64="4I3Lpd3wB7qiagOTAc4KuIj+ufQ=">AAACjHicbZDfa9swEMcV71eXbV26Pe5FLAy6hwS7FFYYhUJh7LGDpi3EnjnLp0RUko0ktwThP6h/zV7X/2Zy6pWl3YHgo+/dSXffopbCuji+HURPnj57/mLr5fDV6zfbb0c7785s1RiGM1bJylwUYFEKjTMnnMSL2iCoQuJ5cXnc5c+v0FhR6VO3qjFTsNCCCwYuSPnoeJHLXZ7Lz/SQpg708v7CDTCPP324t3RCA006bP9qk3slH43jabwO+hiSHsakj5N8Z5CkZcUahdoxCdbOk7h2mQfjBJPYDtPGYg3sEhY4D6hBoc38etuWfgpKSXllwtGOrtV/Ozwoa1eqCJUK3NI+zHXi/3LzxvGDzAtdNw41u/uIN5K6inbW0VIYZE6uAgAzIsxK2RKCTS4YvPGSZSCxzPwS5RW6sI9BjdesUgp0mXJQQq5K5NBI51PLe2zpxiOnSea7DbtZhsNgcvLQ0sdwtjdN4mnyY398dNDbvUU+kI9klyTkCzki38kJmRFGbsgv8pvcRtvRfvQ1OrwrjQZ9z3uyEdG3P0mPyHE=</latexit><latexit sha1_base64="4I3Lpd3wB7qiagOTAc4KuIj+ufQ=">AAACjHicbZDfa9swEMcV71eXbV26Pe5FLAy6hwS7FFYYhUJh7LGDpi3EnjnLp0RUko0ktwThP6h/zV7X/2Zy6pWl3YHgo+/dSXffopbCuji+HURPnj57/mLr5fDV6zfbb0c7785s1RiGM1bJylwUYFEKjTMnnMSL2iCoQuJ5cXnc5c+v0FhR6VO3qjFTsNCCCwYuSPnoeJHLXZ7Lz/SQpg708v7CDTCPP324t3RCA006bP9qk3slH43jabwO+hiSHsakj5N8Z5CkZcUahdoxCdbOk7h2mQfjBJPYDtPGYg3sEhY4D6hBoc38etuWfgpKSXllwtGOrtV/Ozwoa1eqCJUK3NI+zHXi/3LzxvGDzAtdNw41u/uIN5K6inbW0VIYZE6uAgAzIsxK2RKCTS4YvPGSZSCxzPwS5RW6sI9BjdesUgp0mXJQQq5K5NBI51PLe2zpxiOnSea7DbtZhsNgcvLQ0sdwtjdN4mnyY398dNDbvUU+kI9klyTkCzki38kJmRFGbsgv8pvcRtvRfvQ1OrwrjQZ9z3uyEdG3P0mPyHE=</latexit><latexit sha1_base64="4I3Lpd3wB7qiagOTAc4KuIj+ufQ=">AAACjHicbZDfa9swEMcV71eXbV26Pe5FLAy6hwS7FFYYhUJh7LGDpi3EnjnLp0RUko0ktwThP6h/zV7X/2Zy6pWl3YHgo+/dSXffopbCuji+HURPnj57/mLr5fDV6zfbb0c7785s1RiGM1bJylwUYFEKjTMnnMSL2iCoQuJ5cXnc5c+v0FhR6VO3qjFTsNCCCwYuSPnoeJHLXZ7Lz/SQpg708v7CDTCPP324t3RCA006bP9qk3slH43jabwO+hiSHsakj5N8Z5CkZcUahdoxCdbOk7h2mQfjBJPYDtPGYg3sEhY4D6hBoc38etuWfgpKSXllwtGOrtV/Ozwoa1eqCJUK3NI+zHXi/3LzxvGDzAtdNw41u/uIN5K6inbW0VIYZE6uAgAzIsxK2RKCTS4YvPGSZSCxzPwS5RW6sI9BjdesUgp0mXJQQq5K5NBI51PLe2zpxiOnSea7DbtZhsNgcvLQ0sdwtjdN4mnyY398dNDbvUU+kI9klyTkCzki38kJmRFGbsgv8pvcRtvRfvQ1OrwrjQZ9z3uyEdG3P0mPyHE=</latexit><latexit sha1_base64="4I3Lpd3wB7qiagOTAc4KuIj+ufQ=">AAACjHicbZDfa9swEMcV71eXbV26Pe5FLAy6hwS7FFYYhUJh7LGDpi3EnjnLp0RUko0ktwThP6h/zV7X/2Zy6pWl3YHgo+/dSXffopbCuji+HURPnj57/mLr5fDV6zfbb0c7785s1RiGM1bJylwUYFEKjTMnnMSL2iCoQuJ5cXnc5c+v0FhR6VO3qjFTsNCCCwYuSPnoeJHLXZ7Lz/SQpg708v7CDTCPP324t3RCA006bP9qk3slH43jabwO+hiSHsakj5N8Z5CkZcUahdoxCdbOk7h2mQfjBJPYDtPGYg3sEhY4D6hBoc38etuWfgpKSXllwtGOrtV/Ozwoa1eqCJUK3NI+zHXi/3LzxvGDzAtdNw41u/uIN5K6inbW0VIYZE6uAgAzIsxK2RKCTS4YvPGSZSCxzPwS5RW6sI9BjdesUgp0mXJQQq5K5NBI51PLe2zpxiOnSea7DbtZhsNgcvLQ0sdwtjdN4mnyY398dNDbvUU+kI9klyTkCzki38kJmRFGbsgv8pvcRtvRfvQ1OrwrjQZ9z3uyEdG3P0mPyHE=</latexit><latexit sha1_base64="4I3Lpd3wB7qiagOTAc4KuIj+ufQ=">AAACjHicbZDfa9swEMcV71eXbV26Pe5FLAy6hwS7FFYYhUJh7LGDpi3EnjnLp0RUko0ktwThP6h/zV7X/2Zy6pWl3YHgo+/dSXffopbCuji+HURPnj57/mLr5fDV6zfbb0c7785s1RiGM1bJylwUYFEKjTMnnMSL2iCoQuJ5cXnc5c+v0FhR6VO3qjFTsNCCCwYuSPnoeJHLXZ7Lz/SQpg708v7CDTCPP324t3RCA006bP9qk3slH43jabwO+hiSHsakj5N8Z5CkZcUahdoxCdbOk7h2mQfjBJPYDtPGYg3sEhY4D6hBoc38etuWfgpKSXllwtGOrtV/Ozwoa1eqCJUK3NI+zHXi/3LzxvGDzAtdNw41u/uIN5K6inbW0VIYZE6uAgAzIsxK2RKCTS4YvPGSZSCxzPwS5RW6sI9BjdesUgp0mXJQQq5K5NBI51PLe2zpxiOnSea7DbtZhsNgcvLQ0sdwtjdN4mnyY398dNDbvUU+kI9klyTkCzki38kJmRFGbsgv8pvcRtvRfvQ1OrwrjQZ9z3uyEdG3P0mPyHE=</latexit>
6
Why deep (and not shallow)?
Number of linear regions represented by a ReLU network of depth L and width M
• Exponential growth of regions w.r.t. depth• Greater expressiveness with same
amount of weights
[Montufar et al., 2014]7
Proposed approach
2: Offline training of the deepneural network
1: Generate training samples bysolving many MPC problems
mathx = f(x, u)
<latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="RuBeFd1vxVoknAUxP6ONLtul5gQ=">AAACOXicbVHLTsMwEHR4lvDsmYtFhcSpSrjAEYkLR5Boi9RGaONsWgvbiewNqIr6A1z5KX6Bn+CGuOKUHigwkqXRrL2enU1LJR1F0Vuwsrq2vrHZ2gq3d8Ldvf2Dnb4rKiuwJwpV2LsUHCppsEeSFN6VFkGnCgfpw2VTHzyidbIwtzQtMdEwNjKXAshL1/cHnagbzcH/knhBOmyB+3YQj7JCVBoNCQXODeOopKQGS1IonIWjymEJ4gHGOPTUgEaX1HOfM37slYznhfXHEJ+rP1/UoJ2b6tTf1EAT97vWiP/VhhXl50ktTVkRGvH9UV4pTgVvhuaZtChITT0BYaX3ysUELAjy0Sx1cgIUZkk9QfWI5OexaPBJFFqDyUY5aKmmGeZQKapHLl/QGV9qchsndTNh4yUMfcbx70T/kv5pN4668U3EWuyQHbETFrMzdsGu2DXrMcEy9sxegtfgPfj43sVKsFhKmy0h+PwCzCSwQg==</latexit><latexit sha1_base64="VeRRbKBUFNCloUo8V4Tj80Zz/+E=">AAACTnicbVHBattAEB2pTeuqSev02svSUEghGCmX9FIo9JJjCnESsIUZrUbxkt2V2B25McJ/0mv6TyU/k5XjQ510YOHx3u7bmTdFo5XnNP0bxS9e7rx6PXiTvN3de/d+uL974evWSRrLWtfuqkBPWlkas2JNV40jNIWmy+LmR69fLsh5VdtzXjaUG7y2qlISOVCz4XBa1tzdrsQ3UR3eHrVfZsODdJSuSzwH2QYcwKbOZvtRFjxka8iy1Oj9JEsbzjt0rKSmVTJtPTUob/CaJgFaNOTzbt36SnwOTCmq2oVjWazZf190aLxfmiLcNMhz/1Tryf9pk5arr3mnbNMyWfn4UdVqwbXocxClciRZLwNA6VToVcg5OpQc0tpy8hI1lXk3J70gDvM4svRL1sagLacVGqWXJVXYau6mvtrAldgyOc/yrp+w7yVJQsjZ00ifg4vjUZaOsp8pDOAjfIJDyOAEvsMpnMEYJCzgN9zBn+g+juLB4zriaLOXD7BVcfIAowi0VA==</latexit><latexit sha1_base64="VeRRbKBUFNCloUo8V4Tj80Zz/+E=">AAACTnicbVHBattAEB2pTeuqSev02svSUEghGCmX9FIo9JJjCnESsIUZrUbxkt2V2B25McJ/0mv6TyU/k5XjQ510YOHx3u7bmTdFo5XnNP0bxS9e7rx6PXiTvN3de/d+uL974evWSRrLWtfuqkBPWlkas2JNV40jNIWmy+LmR69fLsh5VdtzXjaUG7y2qlISOVCz4XBa1tzdrsQ3UR3eHrVfZsODdJSuSzwH2QYcwKbOZvtRFjxka8iy1Oj9JEsbzjt0rKSmVTJtPTUob/CaJgFaNOTzbt36SnwOTCmq2oVjWazZf190aLxfmiLcNMhz/1Tryf9pk5arr3mnbNMyWfn4UdVqwbXocxClciRZLwNA6VToVcg5OpQc0tpy8hI1lXk3J70gDvM4svRL1sagLacVGqWXJVXYau6mvtrAldgyOc/yrp+w7yVJQsjZ00ifg4vjUZaOsp8pDOAjfIJDyOAEvsMpnMEYJCzgN9zBn+g+juLB4zriaLOXD7BVcfIAowi0VA==</latexit><latexit sha1_base64="lgns5EqoSGrtIMz3rrtu+tBCYn8=">AAACWXicbVDBTttAEF270AYX2lCOXFaNkKiEIruHtpdKSFw4gkQAKbGi8XpMVuyurd1xSmTlT3ot/4T4GdbBBwIdaaWn92Zm37ysUtJRHD8E4buNzfcfelvRx+2dT5/7u18uXVlbgSNRqtJeZ+BQSYMjkqTwurIIOlN4ld2etPrVHK2TpbmgRYWphhsjCymAPDXt9yd5Sc3dkv/mxeHdUf1t2h/Ew3hV/C1IOjBgXZ1Nd4PE7xC1RkNCgXPjJK4obcCSFAqX0aR2WIG4hRsce2hAo0ublfUlP/BMzovS+meIr9iXEw1o5xY6850aaOZeay35P21cU/ErbaSpakIjnj8qasWp5G0OPJcWBamFByCs9F65mIEFQT6ttU1OgMI8bWao5kj+HosG/4hSazD5pAAt1SLHAmpFzcQVHVzytSUXSdq0F7ZeosiHnLyO9C24/D5M4mFyHg+Of3Rx99g++8oOWcJ+smN2ys7YiAk2Z3/ZP3YfPIZB2Auj59Yw6Gb22FqFe09sW7UJ</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit>
3: High performance implementationon low-cost embedded hardware
Place here your preferred (overcomplicated)
robust NMPC Method
(x0, u⇤0)
<latexit sha1_base64="UH+Wqa1L45ChxLxgDfU5cwHA/4A=">AAACU3icbVBNT9wwEHUCtHSBlo8jF6urSoDQKkFV6RGJS48gsYC0SVcTZ8Ja2E5kT6CraP9Gr+VP9cBv4YKz5NCFPsnS03sz45mXVUo6iqLHIFxaXnn3fvVDb2194+Onza3tS1fWVuBQlKq01xk4VNLgkCQpvK4sgs4UXmW3p61/dYfWydJc0LTCVMONkYUUQF5K9n6No0Ne/zwYR/vjzX40iObgb0nckT7rcDbeCuIkL0Wt0ZBQ4NwojipKG7AkhcJZL6kdViBu4QZHnhrQ6NJmvvSMf/FKzovS+meIz9V/OxrQzk115is10MS99lrxf96opuJ72khT1YRGvHxU1IpTydsEeC4tClJTT0BY6XflYgIWBPmcFiY5AQrztJmgukPy91g0eC9KrcHkSQFaqmmOBdSKmsQVHZ3xhSEXcdq0F7a79Ho+5Ph1pG/J5dEgjgbx+df+ybcu7lW2yz6zPRazY3bCfrAzNmSCVew3+8Megr/BUxiGyy+lYdD17LAFhBvPPFezgw==</latexit><latexit sha1_base64="UH+Wqa1L45ChxLxgDfU5cwHA/4A=">AAACU3icbVBNT9wwEHUCtHSBlo8jF6urSoDQKkFV6RGJS48gsYC0SVcTZ8Ja2E5kT6CraP9Gr+VP9cBv4YKz5NCFPsnS03sz45mXVUo6iqLHIFxaXnn3fvVDb2194+Onza3tS1fWVuBQlKq01xk4VNLgkCQpvK4sgs4UXmW3p61/dYfWydJc0LTCVMONkYUUQF5K9n6No0Ne/zwYR/vjzX40iObgb0nckT7rcDbeCuIkL0Wt0ZBQ4NwojipKG7AkhcJZL6kdViBu4QZHnhrQ6NJmvvSMf/FKzovS+meIz9V/OxrQzk115is10MS99lrxf96opuJ72khT1YRGvHxU1IpTydsEeC4tClJTT0BY6XflYgIWBPmcFiY5AQrztJmgukPy91g0eC9KrcHkSQFaqmmOBdSKmsQVHZ3xhSEXcdq0F7a79Ho+5Ph1pG/J5dEgjgbx+df+ybcu7lW2yz6zPRazY3bCfrAzNmSCVew3+8Megr/BUxiGyy+lYdD17LAFhBvPPFezgw==</latexit><latexit sha1_base64="UH+Wqa1L45ChxLxgDfU5cwHA/4A=">AAACU3icbVBNT9wwEHUCtHSBlo8jF6urSoDQKkFV6RGJS48gsYC0SVcTZ8Ja2E5kT6CraP9Gr+VP9cBv4YKz5NCFPsnS03sz45mXVUo6iqLHIFxaXnn3fvVDb2194+Onza3tS1fWVuBQlKq01xk4VNLgkCQpvK4sgs4UXmW3p61/dYfWydJc0LTCVMONkYUUQF5K9n6No0Ne/zwYR/vjzX40iObgb0nckT7rcDbeCuIkL0Wt0ZBQ4NwojipKG7AkhcJZL6kdViBu4QZHnhrQ6NJmvvSMf/FKzovS+meIz9V/OxrQzk115is10MS99lrxf96opuJ72khT1YRGvHxU1IpTydsEeC4tClJTT0BY6XflYgIWBPmcFiY5AQrztJmgukPy91g0eC9KrcHkSQFaqmmOBdSKmsQVHZ3xhSEXcdq0F7a79Ho+5Ph1pG/J5dEgjgbx+df+ybcu7lW2yz6zPRazY3bCfrAzNmSCVew3+8Megr/BUxiGyy+lYdD17LAFhBvPPFezgw==</latexit><latexit sha1_base64="UH+Wqa1L45ChxLxgDfU5cwHA/4A=">AAACU3icbVBNT9wwEHUCtHSBlo8jF6urSoDQKkFV6RGJS48gsYC0SVcTZ8Ja2E5kT6CraP9Gr+VP9cBv4YKz5NCFPsnS03sz45mXVUo6iqLHIFxaXnn3fvVDb2194+Onza3tS1fWVuBQlKq01xk4VNLgkCQpvK4sgs4UXmW3p61/dYfWydJc0LTCVMONkYUUQF5K9n6No0Ne/zwYR/vjzX40iObgb0nckT7rcDbeCuIkL0Wt0ZBQ4NwojipKG7AkhcJZL6kdViBu4QZHnhrQ6NJmvvSMf/FKzovS+meIz9V/OxrQzk115is10MS99lrxf96opuJ72khT1YRGvHxU1IpTydsEeC4tClJTT0BY6XflYgIWBPmcFiY5AQrztJmgukPy91g0eC9KrcHkSQFaqmmOBdSKmsQVHZ3xhSEXcdq0F7a79Ho+5Ph1pG/J5dEgjgbx+df+ybcu7lW2yz6zPRazY3bCfrAzNmSCVew3+8Megr/BUxiGyy+lYdD17LAFhBvPPFezgw==</latexit>
8
Increasingly popular
In many cases including strategies to have some guarantees:
• Chen et al., ACC 2018 (Projection at the output to achieve guarantees)• Hertneck et al., IEEE Control System Letters 2018 (Hoeffdings inequality)• Zhang, Bujarbaruah and Borrelli, ACC 2019 (Statistical validation)• Drgona et al., Applied Energy 2018 (application on building control)• Karg and Lucia, ECC 2018, NMPC 2018, ECC 2019 (applications, validation)
9
It works well in practice
B
[Lucia, Andersson, Brandt, Diehl and Engell. JPC 2014]10
An industrial polymerization reactor
��# = ��#,&
��' = ��',& − 𝑘*+𝑚',* −𝑝+𝑘*-𝑚'#.𝑚'
𝑚/01
��2 = 𝑘*+𝑚',* +𝑝+𝑘*-𝑚'#.𝑚'
𝑚/01
��* =1
𝑐7,*𝑚/01��&𝑐7,& 𝑇& − 𝑇* + Δ𝐻*𝑘*+𝑚',* − 𝑘:𝐴 𝑇* − 𝑇< − ��'#.𝑐7,* 𝑇* − 𝑇=:
��< = 1/(𝑐7,<𝑚<) 𝑘:𝐴 𝑇* − 𝑇< − 𝑘:𝐴 𝑇< − 𝑇A��A =
1𝑐7,#𝑚A,:#
��A,:#𝑐7# 𝑇ABC − 𝑇A + 𝑘:𝐴 𝑇< − 𝑇A
��=: =1
𝑐7,*𝑚'#.��'#.𝑐7,# 𝑇* − 𝑇=: − 𝛼 𝑇=: − 𝑇'#. +
𝑝+𝑘*-𝑚'𝑚'#.ΔH*𝑚/01
��'#. =1
𝑐7,#𝑚'#.,:#��'#.,:#𝑐7,F 𝑇'#.
BC − 𝑇'#. − 𝛼 𝑇'#. − 𝑇=:
𝑘*+ = 𝑘G𝑒I =J*.K 𝑘L+ 1 − 𝑈 + 𝑘L-𝑈
𝑘*- = 𝑘G𝑒I =J*.NO (𝑘L+ 1 − 𝑈 + 𝑘L-𝑈)
8 differential states3 control inputs2 uncertain parameters
11
Simulation results for multi-stage NMPC
Simple scenario tree• Extreme values of the uncertainty• Branch the tree only one stage
• Economic cost function12x
22x
32x
42x
52x
62x
72x
82x
92x
0x
13x
23x
33x
43x
53x
63x
73x
83x
93x
14x
24x
34x
44x
54x
64x
74x
84x
94x
12u
12u
12u
42u
52u
62u
72u
82u
92u
13u
13u
13u
43u
53u
63u
73u
83u
93u
………………………
11u
11d
21d
21u
31d
31u
41u
41d
51d51u
61d
61u71u
71d
81d
81u
91d
91u
11x
21x
31x
41x
51x
61x
71x
81x
91x
129x
229x
329x
429x
529x
629x
729x
829x
929x
130x
230x
330x
430x
530x
630x
730x
830x
930x
129u
129u
129u
429u
529u
629u
729u
829u
929u
12d
22d
32d
42d
52d
62d
72d
82d
92d
13d
23d
33d
43d
53d
63d
73d
83d
93d
129d
229d
329d
429d
529d
629d
729d
829d
929d
10u10d
20d2
0u30d3
0u40u
40d
50d50u60d
60u70u 7
0d
80d
80u
90d
90u
Simulations for different values of 𝑘 and 𝛥𝐻 (±30%)
Multi-stage NMPC
12
Proposed approach
2: Offline training of the deepneural network
1: Generate training samples bysolving many MPC problems
mathx = f(x, u)
<latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="RuBeFd1vxVoknAUxP6ONLtul5gQ=">AAACOXicbVHLTsMwEHR4lvDsmYtFhcSpSrjAEYkLR5Boi9RGaONsWgvbiewNqIr6A1z5KX6Bn+CGuOKUHigwkqXRrL2enU1LJR1F0Vuwsrq2vrHZ2gq3d8Ldvf2Dnb4rKiuwJwpV2LsUHCppsEeSFN6VFkGnCgfpw2VTHzyidbIwtzQtMdEwNjKXAshL1/cHnagbzcH/knhBOmyB+3YQj7JCVBoNCQXODeOopKQGS1IonIWjymEJ4gHGOPTUgEaX1HOfM37slYznhfXHEJ+rP1/UoJ2b6tTf1EAT97vWiP/VhhXl50ktTVkRGvH9UV4pTgVvhuaZtChITT0BYaX3ysUELAjy0Sx1cgIUZkk9QfWI5OexaPBJFFqDyUY5aKmmGeZQKapHLl/QGV9qchsndTNh4yUMfcbx70T/kv5pN4668U3EWuyQHbETFrMzdsGu2DXrMcEy9sxegtfgPfj43sVKsFhKmy0h+PwCzCSwQg==</latexit><latexit sha1_base64="VeRRbKBUFNCloUo8V4Tj80Zz/+E=">AAACTnicbVHBattAEB2pTeuqSev02svSUEghGCmX9FIo9JJjCnESsIUZrUbxkt2V2B25McJ/0mv6TyU/k5XjQ510YOHx3u7bmTdFo5XnNP0bxS9e7rx6PXiTvN3de/d+uL974evWSRrLWtfuqkBPWlkas2JNV40jNIWmy+LmR69fLsh5VdtzXjaUG7y2qlISOVCz4XBa1tzdrsQ3UR3eHrVfZsODdJSuSzwH2QYcwKbOZvtRFjxka8iy1Oj9JEsbzjt0rKSmVTJtPTUob/CaJgFaNOTzbt36SnwOTCmq2oVjWazZf190aLxfmiLcNMhz/1Tryf9pk5arr3mnbNMyWfn4UdVqwbXocxClciRZLwNA6VToVcg5OpQc0tpy8hI1lXk3J70gDvM4svRL1sagLacVGqWXJVXYau6mvtrAldgyOc/yrp+w7yVJQsjZ00ifg4vjUZaOsp8pDOAjfIJDyOAEvsMpnMEYJCzgN9zBn+g+juLB4zriaLOXD7BVcfIAowi0VA==</latexit><latexit sha1_base64="VeRRbKBUFNCloUo8V4Tj80Zz/+E=">AAACTnicbVHBattAEB2pTeuqSev02svSUEghGCmX9FIo9JJjCnESsIUZrUbxkt2V2B25McJ/0mv6TyU/k5XjQ510YOHx3u7bmTdFo5XnNP0bxS9e7rx6PXiTvN3de/d+uL974evWSRrLWtfuqkBPWlkas2JNV40jNIWmy+LmR69fLsh5VdtzXjaUG7y2qlISOVCz4XBa1tzdrsQ3UR3eHrVfZsODdJSuSzwH2QYcwKbOZvtRFjxka8iy1Oj9JEsbzjt0rKSmVTJtPTUob/CaJgFaNOTzbt36SnwOTCmq2oVjWazZf190aLxfmiLcNMhz/1Tryf9pk5arr3mnbNMyWfn4UdVqwbXocxClciRZLwNA6VToVcg5OpQc0tpy8hI1lXk3J70gDvM4svRL1sagLacVGqWXJVXYau6mvtrAldgyOc/yrp+w7yVJQsjZ00ifg4vjUZaOsp8pDOAjfIJDyOAEvsMpnMEYJCzgN9zBn+g+juLB4zriaLOXD7BVcfIAowi0VA==</latexit><latexit sha1_base64="lgns5EqoSGrtIMz3rrtu+tBCYn8=">AAACWXicbVDBTttAEF270AYX2lCOXFaNkKiEIruHtpdKSFw4gkQAKbGi8XpMVuyurd1xSmTlT3ot/4T4GdbBBwIdaaWn92Zm37ysUtJRHD8E4buNzfcfelvRx+2dT5/7u18uXVlbgSNRqtJeZ+BQSYMjkqTwurIIOlN4ld2etPrVHK2TpbmgRYWphhsjCymAPDXt9yd5Sc3dkv/mxeHdUf1t2h/Ew3hV/C1IOjBgXZ1Nd4PE7xC1RkNCgXPjJK4obcCSFAqX0aR2WIG4hRsce2hAo0ublfUlP/BMzovS+meIr9iXEw1o5xY6850aaOZeay35P21cU/ErbaSpakIjnj8qasWp5G0OPJcWBamFByCs9F65mIEFQT6ttU1OgMI8bWao5kj+HosG/4hSazD5pAAt1SLHAmpFzcQVHVzytSUXSdq0F7ZeosiHnLyO9C24/D5M4mFyHg+Of3Rx99g++8oOWcJ+smN2ys7YiAk2Z3/ZP3YfPIZB2Auj59Yw6Gb22FqFe09sW7UJ</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit><latexit sha1_base64="6regc1NyKJ94QJZtnS5Ha/oByYc=">AAACWXicbVDBShxBEO0ZY1wnmqx6zKXJEjAgy4yEJJeAkEuOBlwVdoelpqfGbezuGbprVpdh/8Sr+SfxZ9KzzsHVFDQ83quqfvWySklHcfwQhBtvNt9u9bajdzu77z/09/bPXVlbgSNRqtJeZuBQSYMjkqTwsrIIOlN4kV3/avWLOVonS3NGiwpTDVdGFlIAeWra70/ykprbJf/Ji8Pbo/rLtD+Ih/Gq+GuQdGDAujqd7gWJ3yFqjYaEAufGSVxR2oAlKRQuo0ntsAJxDVc49tCARpc2K+tL/tkzOS9K658hvmKfTzSgnVvozHdqoJl7qbXk/7RxTcWPtJGmqgmNePqoqBWnkrc58FxaFKQWHoCw0nvlYgYWBPm01jY5AQrztJmhmiP5eywavBGl1mDySQFaqkWOBdSKmokrOrjka0vOkrRpL2y9RJEPOXkZ6WtwfjxM4mHy5+vg5FsXd499ZJ/YIUvYd3bCfrNTNmKCzdkdu2d/g8cwCHth9NQaBt3MAVur8OAfbZu1DQ==</latexit>
3: High performance implementationon low-cost embedded hardware
12x
22x
32x
42x
52x
62x
72x
82x
92x
0x
13x
23x
33x
43x
53x
63x
73x
83x
93x
14x
24x
34x
44x
54x
64x
74x
84x
94x
12u
12u
12u
42u
52u
62u
72u
82u
92u
13u
13u
13u
43u
53u
63u
73u
83u
93u
………………………
11u
11d
21d
21u
31d
31u
41u
41d
51d51u
61d
61u71u
71d
81d
81u
91d
91u
11x
21x
31x
41x
51x
61x
71x
81x
91x
129x
229x
329x
429x
529x
629x
729x
829x
929x
130x
230x
330x
430x
530x
630x
730x
830x
930x
129u
129u
129u
429u
529u
629u
729u
829u
929u
12d
22d
32d
42d
52d
62d
72d
82d
92d
13d
23d
33d
43d
53d
63d
73d
83d
93d
129d
229d
329d
429d
529d
629d
729d
829d
929d
10u10d
20d2
0u30d3
0u40u
40d
50d50u60d
60u70u 7
0d
80d
80u
90d
90u
(x0, u⇤0)
<latexit sha1_base64="UH+Wqa1L45ChxLxgDfU5cwHA/4A=">AAACU3icbVBNT9wwEHUCtHSBlo8jF6urSoDQKkFV6RGJS48gsYC0SVcTZ8Ja2E5kT6CraP9Gr+VP9cBv4YKz5NCFPsnS03sz45mXVUo6iqLHIFxaXnn3fvVDb2194+Onza3tS1fWVuBQlKq01xk4VNLgkCQpvK4sgs4UXmW3p61/dYfWydJc0LTCVMONkYUUQF5K9n6No0Ne/zwYR/vjzX40iObgb0nckT7rcDbeCuIkL0Wt0ZBQ4NwojipKG7AkhcJZL6kdViBu4QZHnhrQ6NJmvvSMf/FKzovS+meIz9V/OxrQzk115is10MS99lrxf96opuJ72khT1YRGvHxU1IpTydsEeC4tClJTT0BY6XflYgIWBPmcFiY5AQrztJmgukPy91g0eC9KrcHkSQFaqmmOBdSKmsQVHZ3xhSEXcdq0F7a79Ho+5Ph1pG/J5dEgjgbx+df+ybcu7lW2yz6zPRazY3bCfrAzNmSCVew3+8Megr/BUxiGyy+lYdD17LAFhBvPPFezgw==</latexit><latexit sha1_base64="UH+Wqa1L45ChxLxgDfU5cwHA/4A=">AAACU3icbVBNT9wwEHUCtHSBlo8jF6urSoDQKkFV6RGJS48gsYC0SVcTZ8Ja2E5kT6CraP9Gr+VP9cBv4YKz5NCFPsnS03sz45mXVUo6iqLHIFxaXnn3fvVDb2194+Onza3tS1fWVuBQlKq01xk4VNLgkCQpvK4sgs4UXmW3p61/dYfWydJc0LTCVMONkYUUQF5K9n6No0Ne/zwYR/vjzX40iObgb0nckT7rcDbeCuIkL0Wt0ZBQ4NwojipKG7AkhcJZL6kdViBu4QZHnhrQ6NJmvvSMf/FKzovS+meIz9V/OxrQzk115is10MS99lrxf96opuJ72khT1YRGvHxU1IpTydsEeC4tClJTT0BY6XflYgIWBPmcFiY5AQrztJmgukPy91g0eC9KrcHkSQFaqmmOBdSKmsQVHZ3xhSEXcdq0F7a79Ho+5Ph1pG/J5dEgjgbx+df+ybcu7lW2yz6zPRazY3bCfrAzNmSCVew3+8Megr/BUxiGyy+lYdD17LAFhBvPPFezgw==</latexit><latexit sha1_base64="UH+Wqa1L45ChxLxgDfU5cwHA/4A=">AAACU3icbVBNT9wwEHUCtHSBlo8jF6urSoDQKkFV6RGJS48gsYC0SVcTZ8Ja2E5kT6CraP9Gr+VP9cBv4YKz5NCFPsnS03sz45mXVUo6iqLHIFxaXnn3fvVDb2194+Onza3tS1fWVuBQlKq01xk4VNLgkCQpvK4sgs4UXmW3p61/dYfWydJc0LTCVMONkYUUQF5K9n6No0Ne/zwYR/vjzX40iObgb0nckT7rcDbeCuIkL0Wt0ZBQ4NwojipKG7AkhcJZL6kdViBu4QZHnhrQ6NJmvvSMf/FKzovS+meIz9V/OxrQzk115is10MS99lrxf96opuJ72khT1YRGvHxU1IpTydsEeC4tClJTT0BY6XflYgIWBPmcFiY5AQrztJmgukPy91g0eC9KrcHkSQFaqmmOBdSKmsQVHZ3xhSEXcdq0F7a79Ho+5Ph1pG/J5dEgjgbx+df+ybcu7lW2yz6zPRazY3bCfrAzNmSCVew3+8Megr/BUxiGyy+lYdD17LAFhBvPPFezgw==</latexit><latexit sha1_base64="UH+Wqa1L45ChxLxgDfU5cwHA/4A=">AAACU3icbVBNT9wwEHUCtHSBlo8jF6urSoDQKkFV6RGJS48gsYC0SVcTZ8Ja2E5kT6CraP9Gr+VP9cBv4YKz5NCFPsnS03sz45mXVUo6iqLHIFxaXnn3fvVDb2194+Onza3tS1fWVuBQlKq01xk4VNLgkCQpvK4sgs4UXmW3p61/dYfWydJc0LTCVMONkYUUQF5K9n6No0Ne/zwYR/vjzX40iObgb0nckT7rcDbeCuIkL0Wt0ZBQ4NwojipKG7AkhcJZL6kdViBu4QZHnhrQ6NJmvvSMf/FKzovS+meIz9V/OxrQzk115is10MS99lrxf96opuJ72khT1YRGvHxU1IpTydsEeC4tClJTT0BY6XflYgIWBPmcFiY5AQrztJmgukPy91g0eC9KrcHkSQFaqmmOBdSKmsQVHZ3xhSEXcdq0F7a79Ho+5Ph1pG/J5dEgjgbx+df+ybcu7lW2yz6zPRazY3bCfrAzNmSCVew3+8Megr/BUxiGyy+lYdD17LAFhBvPPFezgw==</latexit>
13
Performance of deep-learning based ms-NMPC
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.885
90
95
T R [°
C]
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.880
100
120
T adia
b [°C
]
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.80
2
4
mF [k
g/h]
�104
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8Time [hours]
300
350
400
T MIN [°
C]
multi-stagedeep networkshallow network
0 0.5 1 1.5 2 2.585
90
95
T R [°
C]
0 0.5 1 1.5 2 2.580
100
120
T adia
b [°C
]
0 0.5 1 1.5 2 2.50
2
4
mF [k
g/h]
�104
0 0.5 1 1.5 2 2.5Time [hours]
300
350
400
T MIN [°
C]
Exact vs. deep vs. shallow multi-stage NMPC Deep-learning based multi-stage NMPC
14
Performance of deep-learning based ms-NMPC
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.885
90
95
T R [°
C]
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.880
100
120
T adia
b [°C
]
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.80
2
4
mF [k
g/h]
�104
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8Time [hours]
300
350
400
T MIN [°
C]
multi-stagedeep networkshallow network
0 0.5 1 1.5 2 2.585
90
95
T R [°
C]
0 0.5 1 1.5 2 2.580
100
120
T adia
b [°C
]
0 0.5 1 1.5 2 2.50
2
4
mF [k
g/h]
�104
0 0.5 1 1.5 2 2.5Time [hours]
300
350
400
T MIN [°
C]
Deep-learning based multi-stage NMPC
Average performance over random 100 batches
Exact vs. deep vs. shallow multi-stage NMPC
15
Two main advantages
Enable low-cost emb. implementation• 32 bit ARM Cortex M0+• 48 MHz with 32 kB RAM
Approx. robust NMPC:• Memory footprint: 27 kB• Evaluation time on a uC: 37 ms• Trivial code-generation (uC, FPGA)
16
Two main advantages
Enable large(r)-scale systemsProblem with 5 uncertainties• 243 scenarios• ~115,000 variables and constraints
0 0.5 1 1.5 2 2.585
90
95
T R [°
C]
0 0.5 1 1.5 2 2.50
2
4
mF [k
g/h]
�104
0 0.5 1 1.5 2 2.5Time [hours]
300
350
400
T MIN [°
C]
0 0.5 1 1.5 2 2.580
100
120
T adia
b [°C
]
Enable low-cost emb. implementation• 32 bit ARM Cortex M0+• 48 MHz with 32 kB RAM
Approx. robust NMPC:• Memory footprint: 27 kB• Evaluation time on a uC: 37 ms• Trivial code-generation (uC, FPGA)
17
Mixed-integer case: Energy management system
• You can learn a global optimal solution
18
Mixed-integer casestates inputs
[Karg and Lucia, ECC 2018]19
Robust NMPC in 1 microsecond
20
Inductor
Vitroceramic glass
Control
Powerelectronics
Pan
Induction heating is currently used in many industrial and domestic applications
Control switching frequency and duty cycle. Satisfy constraints under uncertainty
Hardware-in-the-loop implementation
Advanced approximate optimization-based control in 1 μs (on an FPGA).Easy to optimize FPGA implementation
21
Moving horizon estimation for sensor fusion
Fusing visual information and inertial sensors• Common problem in autonomous driving, robotics• Usually many assumptions to simplify online optimization (or EKF)
22
EKF
MHE
600 800 1000 1200 1400 1600 1800
time [s]
−100
0
100
position[m
]
MHE.
x
y
z
EKF
x
y
z
EKF
x
y
z
EKF
MHE
600 800 1000 1200 1400 1600 1800
time [s]
−100
0
100
position[m
]
MHE.
x
y
z
EKF
x
y
z
EKF
x
y
z
Fiedler et al., ECC 2020
Wait a minute... guarantees?
Compute the maximum approximation error
Design a controller that is robust against and iterate
23
d = maxx0
|⇡NN(x0)� ⇡MPC(x0)|<latexit sha1_base64="UpO0+fx99ALIy0UeraXKl0Wf51o=">AAACnHicbZFda9swFIYV76vzvtLtcjDEQqG7WLC70Q7GoNBdbIyWDJq0EBtzLB83opJsJDlLcP1j9mt2u13u30xOfZG0OyB4ec450jmv0lJwY4Pgb8+7c/fe/QdbD/1Hj588fdbffj4xRaUZjlkhCn2egkHBFY4ttwLPS40gU4Fn6eVRmz+boza8UKd2WWIs4ULxnDOwDiX9jxn9RCMJi6ReJEFzFZU8qSOLC1ufnDTNroNv6Ns1ejw66vBV0h8Ew2AV9LYIOzEgXYyS7d7XKCtYJVFZJsCYaRiUNq5BW84ENn5UGSyBXcIFTp1UINHE9WrLhu44ktG80O4oS1d0vaMGacxSpq5Sgp2Zm7kW/i83rWz+Ia65KiuLil0/lFeC2oK2ltGMa2RWLJ0AprmblbIZaGDWGevvrF9lGAjM4nqGYo62cUmNCn+wQkpQWZSD5GKZYQ6VsHVk8k42dGOg0zCu2x3baTa24I7pOYjG95354U2rb4vJ3jB8N9z7/n5wuN99wxZ5SV6TXRKSA3JIvpARGRNGfpJf5Df5473yPnvfvOPrUq/X9bwgG+FN/gGyq8+y</latexit>
d<latexit sha1_base64="atqb6Tk79/5uoOmMsunvLDvg1rA=">AAACYXicbVFNT+MwEHXDfkD2g8IeuVhbIe2pSlgEHJG4wI1FFJDaCE2cCbWwnciedFVF+Qdc4b9x5o/glBwoMJKlp/dm7DfPaamkoyh67AUrnz5/+bq6Fn77/uPnen9j88IVlRU4EoUq7FUKDpU0OCJJCq9Ki6BThZfp7VGrX87QOlmYc5qXmGi4MTKXAshTZxm/7g+iYbQo/h7EHRiwrk6vN3onk6wQlUZDQoFz4zgqKanBkhQKm3BSOSxB3MINjj00oNEl9cJqw7c9k/G8sP4Y4gv29UQN2rm5Tn2nBpq6t1pLfqSNK8oPklqasiI04uWhvFKcCt7uzTNpUZCaewDCSu+ViylYEOTTCbdfX+UEKMySeopqhtR40aLB/6LQGkw2yUFLNc8wh0pRPXF5Bxu+ZOg8Tup2x9bN0hbSc3YGqglDH378Nur34GJnGP8d7vzbHRzudd+wyrbYb/aHxWyfHbJjdspGTLCc3bF79tB7CtaCfrD50hr0uplfbKmCrWecz7ku</latexit>
Wait a minute... guarantees?
Compute the maximum approximation error
Design a controller that is robust against and iterate• Computing the maximum is often not possible• Probabilistic Validation
24
d = maxx0
|⇡NN(x0)� ⇡MPC(x0)|<latexit sha1_base64="UpO0+fx99ALIy0UeraXKl0Wf51o=">AAACnHicbZFda9swFIYV76vzvtLtcjDEQqG7WLC70Q7GoNBdbIyWDJq0EBtzLB83opJsJDlLcP1j9mt2u13u30xOfZG0OyB4ec450jmv0lJwY4Pgb8+7c/fe/QdbD/1Hj588fdbffj4xRaUZjlkhCn2egkHBFY4ttwLPS40gU4Fn6eVRmz+boza8UKd2WWIs4ULxnDOwDiX9jxn9RCMJi6ReJEFzFZU8qSOLC1ufnDTNroNv6Ns1ejw66vBV0h8Ew2AV9LYIOzEgXYyS7d7XKCtYJVFZJsCYaRiUNq5BW84ENn5UGSyBXcIFTp1UINHE9WrLhu44ktG80O4oS1d0vaMGacxSpq5Sgp2Zm7kW/i83rWz+Ia65KiuLil0/lFeC2oK2ltGMa2RWLJ0AprmblbIZaGDWGevvrF9lGAjM4nqGYo62cUmNCn+wQkpQWZSD5GKZYQ6VsHVk8k42dGOg0zCu2x3baTa24I7pOYjG95354U2rb4vJ3jB8N9z7/n5wuN99wxZ5SV6TXRKSA3JIvpARGRNGfpJf5Df5473yPnvfvOPrUq/X9bwgG+FN/gGyq8+y</latexit>
d<latexit sha1_base64="atqb6Tk79/5uoOmMsunvLDvg1rA=">AAACYXicbVFNT+MwEHXDfkD2g8IeuVhbIe2pSlgEHJG4wI1FFJDaCE2cCbWwnciedFVF+Qdc4b9x5o/glBwoMJKlp/dm7DfPaamkoyh67AUrnz5/+bq6Fn77/uPnen9j88IVlRU4EoUq7FUKDpU0OCJJCq9Ki6BThZfp7VGrX87QOlmYc5qXmGi4MTKXAshTZxm/7g+iYbQo/h7EHRiwrk6vN3onk6wQlUZDQoFz4zgqKanBkhQKm3BSOSxB3MINjj00oNEl9cJqw7c9k/G8sP4Y4gv29UQN2rm5Tn2nBpq6t1pLfqSNK8oPklqasiI04uWhvFKcCt7uzTNpUZCaewDCSu+ViylYEOTTCbdfX+UEKMySeopqhtR40aLB/6LQGkw2yUFLNc8wh0pRPXF5Bxu+ZOg8Tup2x9bN0hbSc3YGqglDH378Nur34GJnGP8d7vzbHRzudd+wyrbYb/aHxWyfHbJjdspGTLCc3bF79tB7CtaCfrD50hr0uplfbKmCrWecz7ku</latexit>
Wait a minute... guarantees?
Compute the maximum approximation error
Design a controller that is robust against and iterate• Computing the maximum is often not possible• Probabilistic Validation
- Hertneck et al., IEEE CSL 2018:- Based on Hoeffdings inequality and indicator (binary functions)
- Karg and Lucia, arXiv:1806.10644, (2018), ECC 2019- Based on Hoeffdings inequality and temporal logic with finite-time simulations
- Zhang et al., ACC 2019:- Based on prob. validation results (Tempo, Bai, Dabbene, 1997) to achieve primal
and dual guarantees25
d = maxx0
|⇡NN(x0)� ⇡MPC(x0)|<latexit sha1_base64="UpO0+fx99ALIy0UeraXKl0Wf51o=">AAACnHicbZFda9swFIYV76vzvtLtcjDEQqG7WLC70Q7GoNBdbIyWDJq0EBtzLB83opJsJDlLcP1j9mt2u13u30xOfZG0OyB4ec450jmv0lJwY4Pgb8+7c/fe/QdbD/1Hj588fdbffj4xRaUZjlkhCn2egkHBFY4ttwLPS40gU4Fn6eVRmz+boza8UKd2WWIs4ULxnDOwDiX9jxn9RCMJi6ReJEFzFZU8qSOLC1ufnDTNroNv6Ns1ejw66vBV0h8Ew2AV9LYIOzEgXYyS7d7XKCtYJVFZJsCYaRiUNq5BW84ENn5UGSyBXcIFTp1UINHE9WrLhu44ktG80O4oS1d0vaMGacxSpq5Sgp2Zm7kW/i83rWz+Ia65KiuLil0/lFeC2oK2ltGMa2RWLJ0AprmblbIZaGDWGevvrF9lGAjM4nqGYo62cUmNCn+wQkpQWZSD5GKZYQ6VsHVk8k42dGOg0zCu2x3baTa24I7pOYjG95354U2rb4vJ3jB8N9z7/n5wuN99wxZ5SV6TXRKSA3JIvpARGRNGfpJf5Df5473yPnvfvOPrUq/X9bwgG+FN/gGyq8+y</latexit>
d<latexit sha1_base64="atqb6Tk79/5uoOmMsunvLDvg1rA=">AAACYXicbVFNT+MwEHXDfkD2g8IeuVhbIe2pSlgEHJG4wI1FFJDaCE2cCbWwnciedFVF+Qdc4b9x5o/glBwoMJKlp/dm7DfPaamkoyh67AUrnz5/+bq6Fn77/uPnen9j88IVlRU4EoUq7FUKDpU0OCJJCq9Ki6BThZfp7VGrX87QOlmYc5qXmGi4MTKXAshTZxm/7g+iYbQo/h7EHRiwrk6vN3onk6wQlUZDQoFz4zgqKanBkhQKm3BSOSxB3MINjj00oNEl9cJqw7c9k/G8sP4Y4gv29UQN2rm5Tn2nBpq6t1pLfqSNK8oPklqasiI04uWhvFKcCt7uzTNpUZCaewDCSu+ViylYEOTTCbdfX+UEKMySeopqhtR40aLB/6LQGkw2yUFLNc8wh0pRPXF5Bxu+ZOg8Tup2x9bN0hbSc3YGqglDH378Nur34GJnGP8d7vzbHRzudd+wyrbYb/aHxWyfHbJjdspGTLCc3bF79tB7CtaCfrD50hr0uplfbKmCrWecz7ku</latexit>
Probabilistic validation with performance indicators
A general (not necessarily binary) finite-time performance indicator
Given a controller , a final simulation step and i.i.d samples
26
w(j) = {x(j)(0), x(j)(0), d(j)(0), . . . , d(j)(Nsim)}, j = 1, . . . , N,<latexit sha1_base64="10Zpnxf8hKksEobqj6vCxAFnV7Q=">AAACynicbVFda9swFFW8r877SrfHvYiFQgIh2N3YBqNQ2MsGo3TQtIXYC4p83aiVbCNdpzHCb/t/e94P2es2OTEsaXdBcDjnXN2vWSGFwSD42fHu3L13/8HOQ//R4ydPn3V3n5+avNQcxjyXuT6fMQNSZDBGgRLOCw1MzSScza4+NvrZArQReXaCVQGxYheZSAVn6KhpV1x/s/3LQU0PaGSXa9wPBkMazRnaZb3BJJtqkqP5Rx1NbYSwRGuEqutBVDvHB3p5EA4juXIeDf1ptxeMglXQ2yBsQY+0cTzd7Xx2ZXipIEMumTGTMCgwtkyj4BJqPyoNFIxfsQuYOJgxBSa2q53UdM8xCU1z7V6GdMVuZlimjKnUzDkVw7m5qTXk/7RJien72IqsKBEyvi6UlpJiTpsF00Ro4CgrBxjXwvVK+ZxpxtGdwd/b/MpwJiGJ7RzkArB2ooYMrnmuFMuSKGVKyCqBlJUSbWTSFtZ0q6GTMLbNjE03W1MIx+kFk7XfLD+8uerb4HR/FL4e7X990zt8255hh7wkr0ifhOQdOSSfyDEZE05+kF/kN/njffG0V3l2bfU6bc4LshXe97+6dt1+</latexit>
�(w;Nsim,) = �(x(0), x(0),(x(0)), d(0), x(1),(x(1)), d(1), . . . , x(Nsim)).<latexit sha1_base64="m05iGF3DTzTlhdLCRO36LMpUld0=">AAAC7nicbVHLattAFB2pr9R9xGlXpZshJmBDMFJa2kIpBLppNyWFOAlYwlyPruLBM5KYuXJshD6h2+5Kt/2lfkd/oCNblDjphYHDOec+5t5poaSlIPjt+Xfu3rv/YOdh59HjJ093u3vPzmxeGoEjkavcXEzBopIZjkiSwovCIOipwvPp/GOjny/QWJlnp7QqMNZwmclUCiBHTbrfuIuomMn+1Xv+ZVJFhEuqrNR1fcijORQFDPiHjWPZDwaH0QyIr1Er9/8xjkrWwrIfOuOWGm7UsElLcrKNabvdYDDsTLq9YBisg98GYQt6rI2TyZ732ZUTpcaMhAJrx2FQUFyBISkU1p2otFiAmMMljh3MQKONq/Xean7gmISnuXEvI75mr2dUoK1d6alzaqCZvak15P+0cUnpu7iSWVESZmLTKC0Vp5w3R+CJNChIrRwAYaSblYsZGBDkTtU5uF7KClCYxNUM1QKpdqLBDK9ErjVkSZSClmqVYAqloiqyaQtrvjXQaRhXzR+babZ+IR1nFqDqTrP88Oaqb4Ozo2H4anj09XXv+E17hh32ku2zPgvZW3bMPrETNmKC/fFeePtezy/87/4P/+fG6nttznO2Ff6vvyaI5Ts=</latexit>
<latexit sha1_base64="WwoGcNGN17YYqPTPn0blaOQnw28=">AAACZnicbVHBTtwwEPWm0NK0pdAK9dCLxQqJ0yqhlcqBAxKX9gYSyyJtIjRxJqy1thPZk61WUT6CK3xZ/6CfUWfJgYWOZOnpvRn7zXNWKekoiv4Mglcbm6/fbL0N373/sP1xZ/fTlStrK3AsSlXa6wwcKmlwTJIUXlcWQWcKJ9n8rNMnC7ROluaSlhWmGm6NLKQA8tQkmUNVQXizM4xG0ar4SxD3YMj6Or/ZHfxK8lLUGg0JBc5N46iitAFLUihsw6R2WIGYwy1OPTSg0aXNym/LDzyT86K0/hjiK/bpRAPauaXOfKcGmrnnWkf+T5vWVBynjTRVTWjE40NFrTiVvFue59KiILX0AISV3isXM7AgyEcUHjy9yglQmKfNDNUCqfWiRYO/Rak1mDwpQEu1zLGAWlGTuKKHLV8zdBmnTbdj52ZtC+k5uwDVhl348fOoX4Kro1H8bXR08X14etJ/wxb7yvbZIYvZD3bKfrJzNmaCzdkdu2cPg7/BdrAXfHlsDQb9zGe2VgH/BzgGu1U=</latexit> Nsim
<latexit sha1_base64="Pd5O1xze2A7L5OehVZfjyBvdv98=">AAACbXicbVFNb9QwEPWGrxK+WhAnELJYVXBaJQWpHDhU4gIXVKRuW2kTVhNn0rVqO5E92bKy8j+4wr/iV/AXcLY5dFtGsvT03oz95rlolHSUJH9G0a3bd+7e27ofP3j46PGT7Z2nx65urcCpqFVtTwtwqKTBKUlSeNpYBF0oPCnOP/X6yRKtk7U5olWDuYYzIyspgAL1/evcZ4Q/yDupu26+PU4mybr4TZAOYMyGOpzvjL5kZS1ajYaEAudmadJQ7sGSFAq7OGsdNiDO4QxnARrQ6HK/tt3x3cCUvKptOIb4mr064UE7t9JF6NRAC3dd68n/abOWqg+5l6ZpCY24fKhqFaea9xnwUloUpFYBgLAyeOViARYEhaTi3atXOQEKy9wvUC2RuiBaNHghaq3BlFkFWqpViRW0inzmqgF2fMPQUZr7fsfezcYWMnB2CaqL4xB+ej3qm+B4b5K+m+x9ez8++Dh8wxZ7wV6ztyxl++yAfWaHbMoEs+wn+8V+j/5Gz6OX0avL1mg0zDxjGxW9+Qd1KL8v</latexit>
N<latexit sha1_base64="La3ac4yYYK5PX6+li0DfxLNhkUQ=">AAACYHicbVHBTtwwEPWm0G5TKGy50YvVFRKnVQKV2gMHpF7aCwKJBaTdCE2cCWthO5E9WbSK8gW9wsf12i/BWXJggZEsPb03Y795TkslHUXRv17wbm39/Yf+x/DTxubnre3BlwtXVFbgWBSqsFcpOFTS4JgkKbwqLYJOFV6mt79a/XKO1snCnNOixETDjZG5FECeOju53h5Go2hZ/DWIOzBkXZ1eD3p/plkhKo2GhALnJnFUUlKDJSkUNuG0cliCuIUbnHhoQKNL6qXThu95JuN5Yf0xxJfs84katHMLnfpODTRzL7WWfEubVJT/TGppyorQiKeH8kpxKni7Ns+kRUFq4QEIK71XLmZgQZAPJ9x7fpUToDBL6hmqOVLjRYsG70ShNZhsmoOWapFhDpWieuryDjZ8xdB5nNTtjq2blS2k5+wcVBOGPvz4ZdSvwcXBKD4cHZx9Hx4fdd/QZ1/ZN7bPYvaDHbPf7JSNmWDI/rJ79tD7H/SDrWDw1Br0upkdtlLB7iMNtbj0</latexit>
Probabilistic validation with performance indicators
A general (not necessarily binary) finite-time performance indicator
Given a controller , a final simulation step and i.i.d samples
With probability no smaller than
is the maximum value of simulated among all N, after removing the largest elements
Provided that:27
N � 1
✏
r � 1 + ln
M
�+
r2(r � 1) ln
M
�
!.
<latexit sha1_base64="2Ll2XlF1F9c0K686npTQjeBnrB4=">AAACzHicbVFNaxsxENVuv9Ltl9MeexE1AYdS43VL0mOgl/bQkEKcBLyL0WpnbWGtdiPNuhiha/9fj/0lvVZr7yF2+kDwePMkzbzJaikMjkZ/gvDBw0ePnxw8jZ49f/HyVe/w9ZWpGs1hwitZ6ZuMGZBCwQQFSripNbAyk3CdLb+09esVaCMqdYnrGtKSzZUoBGfopVlveU6TOdzSpNCM29jZBGojZKVcIqHAAaX6Q0zf00SqreW7t+QgkblWNbca7XjgPcfeQfctLtFivsDjIfWIZr3+aDjagN4ncUf6pMPF7DD4luQVb0pQyCUzZhqPakwt0yi4BBcljYGa8SWbw9RTxUowqd2k4uiRV3JaVNofhXSj3r1hWWnMusy8s2S4MPu1Vvxfbdpg8Tm1QtUNguLbj4pGUqxoGzHNhQaOcu0J41r4XilfMJ8M+kVER3efMpxJyFO7ALkCdL6oQcFPXpUlU3lSsFLIdQ4FayTaxBQddXSnocs4te2MbTc7Uwiv6RWTLmrDj/ejvk+uxsP443D841P/7KRbwwF5S96RAYnJKTkjX8kFmRBOfpO/AQmC8DzE0IZuaw2D7s4bsoPw1z/wwN8x</latexit>
w(j) = {x(j)(0), x(j)(0), d(j)(0), . . . , d(j)(Nsim)}, j = 1, . . . , N,<latexit sha1_base64="10Zpnxf8hKksEobqj6vCxAFnV7Q=">AAACynicbVFda9swFFW8r877SrfHvYiFQgIh2N3YBqNQ2MsGo3TQtIXYC4p83aiVbCNdpzHCb/t/e94P2es2OTEsaXdBcDjnXN2vWSGFwSD42fHu3L13/8HOQ//R4ydPn3V3n5+avNQcxjyXuT6fMQNSZDBGgRLOCw1MzSScza4+NvrZArQReXaCVQGxYheZSAVn6KhpV1x/s/3LQU0PaGSXa9wPBkMazRnaZb3BJJtqkqP5Rx1NbYSwRGuEqutBVDvHB3p5EA4juXIeDf1ptxeMglXQ2yBsQY+0cTzd7Xx2ZXipIEMumTGTMCgwtkyj4BJqPyoNFIxfsQuYOJgxBSa2q53UdM8xCU1z7V6GdMVuZlimjKnUzDkVw7m5qTXk/7RJien72IqsKBEyvi6UlpJiTpsF00Ro4CgrBxjXwvVK+ZxpxtGdwd/b/MpwJiGJ7RzkArB2ooYMrnmuFMuSKGVKyCqBlJUSbWTSFtZ0q6GTMLbNjE03W1MIx+kFk7XfLD+8uerb4HR/FL4e7X990zt8255hh7wkr0ifhOQdOSSfyDEZE05+kF/kN/njffG0V3l2bfU6bc4LshXe97+6dt1+</latexit>
�<latexit sha1_base64="zcOG32XpC3jfbuGz7b/mLIL0JkE=">AAACZXicbVHBTtwwEPUGKDSFFtqKSw9YXSH1tEooantE4tLeQGIXpE2EJs6EdbGdyJ5stYryD73Cn/UL+ht1lhxY6EiWnt6bsd88Z5WSjqLozyBYW994sbn1Mny1vfP6ze7e24kraytwLEpV2qsMHCppcEySFF5VFkFnCi+z29NOv5yjdbI0F7SoMNVwY2QhBZCnJkmOiuB6dxiNomXx5yDuwZD1dXa9N/iR5KWoNRoSCpybxlFFaQOWpFDYhkntsAJxCzc49dCARpc2S7stP/RMzovS+mOIL9nHEw1o5xY6850aaOaeah35P21aU/EtbaSpakIjHh4qasWp5N3uPJcWBamFByCs9F65mIEFQT6h8PDxVU6AwjxtZqjmSK0XLRr8JUqtweRJAVqqRY4F1IqaxBU9bPmKoYs4bbodOzcrW0jP2TmoNgx9+PHTqJ+DydEo/jw6Oj8ennzpv2GLfWAf2ScWs6/shH1nZ2zMBPvJfrM7dj/4G+wE74P9h9Zg0M+8YysVHPwD9Hq7OA==</latexit>
�(w;Nsim,) = �(x(0), x(0),(x(0)), d(0), x(1),(x(1)), d(1), . . . , x(Nsim)).<latexit sha1_base64="m05iGF3DTzTlhdLCRO36LMpUld0=">AAAC7nicbVHLattAFB2pr9R9xGlXpZshJmBDMFJa2kIpBLppNyWFOAlYwlyPruLBM5KYuXJshD6h2+5Kt/2lfkd/oCNblDjphYHDOec+5t5poaSlIPjt+Xfu3rv/YOdh59HjJ093u3vPzmxeGoEjkavcXEzBopIZjkiSwovCIOipwvPp/GOjny/QWJlnp7QqMNZwmclUCiBHTbrfuIuomMn+1Xv+ZVJFhEuqrNR1fcijORQFDPiHjWPZDwaH0QyIr1Er9/8xjkrWwrIfOuOWGm7UsElLcrKNabvdYDDsTLq9YBisg98GYQt6rI2TyZ732ZUTpcaMhAJrx2FQUFyBISkU1p2otFiAmMMljh3MQKONq/Xean7gmISnuXEvI75mr2dUoK1d6alzaqCZvak15P+0cUnpu7iSWVESZmLTKC0Vp5w3R+CJNChIrRwAYaSblYsZGBDkTtU5uF7KClCYxNUM1QKpdqLBDK9ErjVkSZSClmqVYAqloiqyaQtrvjXQaRhXzR+babZ+IR1nFqDqTrP88Oaqb4Ozo2H4anj09XXv+E17hh32ku2zPgvZW3bMPrETNmKC/fFeePtezy/87/4P/+fG6nttznO2Ff6vvyaI5Ts=</latexit>
<latexit sha1_base64="WwoGcNGN17YYqPTPn0blaOQnw28=">AAACZnicbVHBTtwwEPWm0NK0pdAK9dCLxQqJ0yqhlcqBAxKX9gYSyyJtIjRxJqy1thPZk61WUT6CK3xZ/6CfUWfJgYWOZOnpvRn7zXNWKekoiv4Mglcbm6/fbL0N373/sP1xZ/fTlStrK3AsSlXa6wwcKmlwTJIUXlcWQWcKJ9n8rNMnC7ROluaSlhWmGm6NLKQA8tQkmUNVQXizM4xG0ar4SxD3YMj6Or/ZHfxK8lLUGg0JBc5N46iitAFLUihsw6R2WIGYwy1OPTSg0aXNym/LDzyT86K0/hjiK/bpRAPauaXOfKcGmrnnWkf+T5vWVBynjTRVTWjE40NFrTiVvFue59KiILX0AISV3isXM7AgyEcUHjy9yglQmKfNDNUCqfWiRYO/Rak1mDwpQEu1zLGAWlGTuKKHLV8zdBmnTbdj52ZtC+k5uwDVhl348fOoX4Kro1H8bXR08X14etJ/wxb7yvbZIYvZD3bKfrJzNmaCzdkdu2cPg7/BdrAXfHlsDQb9zGe2VgH/BzgGu1U=</latexit> Nsim
<latexit sha1_base64="Pd5O1xze2A7L5OehVZfjyBvdv98=">AAACbXicbVFNb9QwEPWGrxK+WhAnELJYVXBaJQWpHDhU4gIXVKRuW2kTVhNn0rVqO5E92bKy8j+4wr/iV/AXcLY5dFtGsvT03oz95rlolHSUJH9G0a3bd+7e27ofP3j46PGT7Z2nx65urcCpqFVtTwtwqKTBKUlSeNpYBF0oPCnOP/X6yRKtk7U5olWDuYYzIyspgAL1/evcZ4Q/yDupu26+PU4mybr4TZAOYMyGOpzvjL5kZS1ajYaEAudmadJQ7sGSFAq7OGsdNiDO4QxnARrQ6HK/tt3x3cCUvKptOIb4mr064UE7t9JF6NRAC3dd68n/abOWqg+5l6ZpCY24fKhqFaea9xnwUloUpFYBgLAyeOViARYEhaTi3atXOQEKy9wvUC2RuiBaNHghaq3BlFkFWqpViRW0inzmqgF2fMPQUZr7fsfezcYWMnB2CaqL4xB+ej3qm+B4b5K+m+x9ez8++Dh8wxZ7wV6ztyxl++yAfWaHbMoEs+wn+8V+j/5Gz6OX0avL1mg0zDxjGxW9+Qd1KL8v</latexit>
N<latexit sha1_base64="La3ac4yYYK5PX6+li0DfxLNhkUQ=">AAACYHicbVHBTtwwEPWm0G5TKGy50YvVFRKnVQKV2gMHpF7aCwKJBaTdCE2cCWthO5E9WbSK8gW9wsf12i/BWXJggZEsPb03Y795TkslHUXRv17wbm39/Yf+x/DTxubnre3BlwtXVFbgWBSqsFcpOFTS4JgkKbwqLYJOFV6mt79a/XKO1snCnNOixETDjZG5FECeOju53h5Go2hZ/DWIOzBkXZ1eD3p/plkhKo2GhALnJnFUUlKDJSkUNuG0cliCuIUbnHhoQKNL6qXThu95JuN5Yf0xxJfs84katHMLnfpODTRzL7WWfEubVJT/TGppyorQiKeH8kpxKni7Ns+kRUFq4QEIK71XLmZgQZAPJ9x7fpUToDBL6hmqOVLjRYsG70ShNZhsmoOWapFhDpWieuryDjZ8xdB5nNTtjq2blS2k5+wcVBOGPvz4ZdSvwcXBKD4cHZx9Hx4fdd/QZ1/ZN7bPYvaDHbPf7JSNmWDI/rJ79tD7H/SDrWDw1Br0upkdtlLB7iMNtbj0</latexit>
Prob{�i(w) > �N (r)} ✏, i = 1, . . . ,M,
<latexit sha1_base64="LWsB6hCmMs1lOXy1L0O6yi3fF1k=">AAACsnicbVFda9swFFW8r877SrfHvYiFQAoh2F1ZB2OjsJftYSOFpi2LPCPL142oLLmSnC4I/679lj3sdfsbk1M/NO0uCA7n3Cvdc5RVghsbRb96wZ279+4/2HoYPnr85Omz/vbzY6NqzWDGlFD6NKMGBJcws9wKOK000DITcJKdf2z1kyVow5U8sqsKkpKeSV5wRq2n0v4hsfDDuqlWWYOJw6Ra8JSPLnfwB48NT93X5rtr2QaP9A7xTQIuMAGvCSXHmLzD/H08JiJX1oy/jMO0P4gm0brwbRB3YIC6mqbbvc8kV6wuQVomqDHzOKps4qi2nAloQlIbqCg7p2cw91DSEkzi1t4bPPRMjgul/ZEWr9nrE46WxqxK725YUrswN7WW/J82r23xNnFcVrUFya4eKmqBrcJtkDjnGpgVKw8o09zvitmCasqsjzscXr/KMCogT9wCxBJs40UNEi6ZKksqc1LQkotVDgWthXXEFB1s8MZCR3HiWo/tNhsuuOf0koombMOPb0Z9GxzvTuLXk93DvcHBm+4bttBL9AqNUIz20QH6hKZohhj6iX6jP+hvsBd8C2jArlqDXjfzAm1UIP4BbPLWxw==</latexit>
�N (r)
<latexit sha1_base64="dgtlpcNXJ33Q6mpiU7w/y7yQWxQ=">AAACdXicbVFNT9wwEPWmtIX0aym9VUhWt1T0siS0ajki9UIvCCQWkDbpauJMWAvbiWxnq62V/9Jr+Uf8Eq44Sw4sdCRLT+/N2G+es0pwY6Pouhc8WXn67PnqWvji5avXb/rrb09NWWuGI1aKUp9nYFBwhSPLrcDzSiPITOBZdvmj1c9mqA0v1YmdV5hKuFC84Ayspyb9d0ll+MQdNr9cUk15Q7f153DSH0TDaFH0MYg7MCBdHU3Wez+TvGS1RGWZAGPGcVTZ1IG2nAlswqQ2WAG7hAsce6hAokndwn5DtzyT06LU/ihLF+z9CQfSmLnMfKcEOzUPtZb8nzaubbGXOq6q2qJidw8VtaC2pG0WNOcamRVzD4Bp7r1SNgUNzPrEwq37VxkGAvPUTVHM0DZe1KjwNyulBJUnBUgu5jkWUAvrElN0sKFLhk7i1LU7tm6WtuCe0zMQTdiGHz+M+jE43R3GX4a7x18H+9+6b1gl78kHsk1i8p3skwNyREaEkT/kL/lHrno3wWbwMfh01xr0upkNslTBzi1JyMC8</latexit>
�i(w)<latexit sha1_base64="pjNdJ6fZ9Tm5xNj3RbAMwEFD0WM=">AAACanicbVHLatxAEJxVXo7ysp1T8GXIxuBcFskJdo6GXJKbA17bsBJLa9TyDp6HmGmtWYQ+I9fku/IP+YiM1jp47TQMFFXdM9U1Ra2kpyT5M4oePX7y9NnW8/jFy1ev32zv7J572ziBU2GVdZcFeFTS4JQkKbysHYIuFF4U1197/WKJzktrzmhVY67hyshKCqBAzbJ6Iefy4OYjj+fb42SSrIs/BOkAxmyo0/nO6HtWWtFoNCQUeD9Lk5ryFhxJobCLs8ZjDeIarnAWoAGNPm/Xnju+H5iSV9aFY4iv2bsTLWjvV7oInRpo4e9rPfk/bdZQ9SVvpakbQiNuH6oaxcnyPgBeSoeC1CoAEE4Gr1wswIGgEFO8f/cqL0BhmbcLVEukLogODd4IqzWYMqtAS7UqsYJGUZv5aoAd3zB0luZtv2PvZmMLGTi3BNXFffjp/agfgvPDSfppcvjj8/jkaPiGLbbH3rMDlrJjdsK+sVM2ZYJZ9pP9Yr9Hf6Pd6F20d9sajYaZt2yjog//AJyDvFs=</latexit>
r<latexit sha1_base64="6e41fEPCV1CaaROn7IBbMo+GjrY=">AAACYHicbVFNT9wwEPWGfiyhLSzc6MVihdTTKqEV9IjEhd5AYgFpN0ITZ8Ja2E5kT7ZaRfkFvcKP48ovqbPkwAIjWXp6b8Z+85yWSjqKosdesPbh46fP/fVw48vXb5tbg+1LV1RW4FgUqrDXKThU0uCYJCm8Li2CThVepXcnrX41R+tkYS5oUWKi4dbIXAogT53bm61hNIqWxd+CuAND1tXZzaD3Z5oVotJoSChwbhJHJSU1WJJCYRNOK4cliDu4xYmHBjS6pF46bfi+ZzKeF9YfQ3zJvpyoQTu30Knv1EAz91pryfe0SUX576SWpqwIjXh+KK8Up4K3a/NMWhSkFh6AsNJ75WIGFgT5cML9l1c5AQqzpJ6hmiM1XrRo8K8otAaTTXPQUi0yzKFSVE9d3sGGrxi6iJO63bF1s7KF9Jydg2rC0Icfv476Lbg8GMU/Rwfnv4bHh9039Nl3tsd+sJgdsWN2ys7YmAmG7B+7Zw+9p6AfbAaD59ag183ssJUKdv8DU1e5Eg==</latexit>
Differences with previous works
• Validation on general closed-loop performance guarantees• Not only binary functions• Not only error in the controller. Validation includes e.g. estimation errors
• Discard the largest values to facilitate successful validations
• Simultaneous design of several controllers (finite families)
More details in:Karg, Alamo and Lucia, Probabilistic performance validation of deep learning-based robust NMPC controllers. arXiv:1910.13906 (2019)
28
r<latexit sha1_base64="6e41fEPCV1CaaROn7IBbMo+GjrY=">AAACYHicbVFNT9wwEPWGfiyhLSzc6MVihdTTKqEV9IjEhd5AYgFpN0ITZ8Ja2E5kT7ZaRfkFvcKP48ovqbPkwAIjWXp6b8Z+85yWSjqKosdesPbh46fP/fVw48vXb5tbg+1LV1RW4FgUqrDXKThU0uCYJCm8Li2CThVepXcnrX41R+tkYS5oUWKi4dbIXAogT53bm61hNIqWxd+CuAND1tXZzaD3Z5oVotJoSChwbhJHJSU1WJJCYRNOK4cliDu4xYmHBjS6pF46bfi+ZzKeF9YfQ3zJvpyoQTu30Knv1EAz91pryfe0SUX576SWpqwIjXh+KK8Up4K3a/NMWhSkFh6AsNJ75WIGFgT5cML9l1c5AQq zpJ6hmiM1XrRo8K8otAaTTXPQUi0yzKFSVE9d3sGGrxi6iJO63bF1s7KF9Jydg2rC0Icfv476Lbg8GMU/Rwfnv4bHh9039Nl3tsd+sJgdsWN2ys7YmAmG7B+7Zw+9p6AfbAaD59ag183ssJUKdv8DU1e5Eg==</latexit>
Some further results
Probabilistically safe, embedded robust output-feedback NMPC
Objective is to maximize thrustTwo states can be measured, EKF to estimateUncertain aerodinamic coefficients and wind parameters
29
Erhard and Strauch, 2012
ResultsEmbedded real-time implementation on an ARM-Cortex M3 • 96 kB memory footprint, 32 ms running time for DNN and 28 ms for EKF
30
Summary
1. Efficient approximation of the MPC control law using deep learning• Enables simple embedded implementation with very low memory footprint• Enables real-time robust NMPC of large complex systems
2. Statistical verification can be used to achieve guarantees
3. Recently good results for many different applications
31
Some material for discussion• What is better:
• First approximate then solve (usual path)• First solve (as complex as you can) then approximate
• What is more rigorous:• A priori guarantees (assumes knowledge of reality, including unc. description)• Probabilistic validation (assumes a reality simulator exists)• Many approaches use safety sets / backup controllers:
• Nonlinear optimization running online -> one probably needs safety checks anyway…
• Hierarchy: learn a new controller when something changes
• Are finite-time guarantees acceptable? (even t is large?)32
Open Invited Track at IFAC WC 2020 in Berlin
• Together with Ali Mesbah (UC Berkeley)• Open Invited Track on „Machine Learning and MPC“• Use submission code a1d55
• Deadline just extended to November 18th
33
Graceful performance degradation
0 0.5 1 1.5 2 2.5 385
90
95
T R [°
C]
0 0.5 1 1.5 2 2.5 350
100
150
T adia
b [°C
]
0 0.5 1 1.5 2 2.5 30
2
4
mF [k
g/h]
�104
0 0.5 1 1.5 2 2.5 3Time [hours]
300
350
400
T MIN [°
C]
0 0.5 1 1.5 2 2.5 380
90
100
T R [°
C]
0 0.5 1 1.5 2 2.5 350
100
150
T adia
b [°C
]
0 0.5 1 1.5 2 2.5 30
2
4
mF [k
g/h]
�104
0 0.5 1 1.5 2 2.5 3Time [hours]
300
350
400
T MIN [°
C]
Larger set of random initial conditions and uncertain parameters (±40%)Exact multi-stage NMPC Deep-learning based multi-stage NMPC
34
TrainingSamples generated solving multi-stage NMPC (CasADi + IPOPT)100 batches of data (with random initial cond. and uncertain param.)
- 50 s sampling time- Total of 21050 samples
• Training with Keras / TensorflowOutput neural network Output multi-stage NMPC
35
Summary
• Scheme to approximate complex model predictive controllers• Efficient approximation of the MPC control law using deep learning• Two main advantages• Enable embedded implementation with very low memory footprint• Enable real-time robust NMPC of large complex systems
• Some kind of safety net is necessary to have guarantees• (don‘t we always need this in reality, at least for the complex nonlinear case?)
• Other problems: adaptation and RL, optimal training, optimal structure36