{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,9]],"date-time":"2026-07-09T15:50:27Z","timestamp":1783612227030,"version":"3.55.0"},"reference-count":72,"publisher":"Annual Reviews","issue":"1","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Annu. Rev. Control Robot. Auton. Syst."],"published-print":{"date-parts":[[2018,5,28]]},"abstract":"<jats:p> In autonomous systems, the ability to make forecasts and cope with uncertain predictions is synonymous with intelligence. Model predictive control (MPC) is an established control methodology that systematically uses forecasts to compute real-time optimal control decisions. In MPC, at each time step an optimization problem is solved over a moving horizon. The objective is to find a control policy that minimizes a predicted performance index while satisfying operating constraints. Uncertainty in MPC is handled by optimizing over multiple uncertain forecasts. In this case, performance index and operating constraints take the form of functions defined over a probability space, and the resulting technique is called stochastic MPC. Our research over the past 10 years has focused on predictive control design methods that systematically handle uncertain forecasts in autonomous and semiautonomous systems. In the first part of this article, we present an overview of the approach we use, its main advantages, and its challenges. In the second part, we present our most recent results on data-driven predictive control. We show how to use data to efficiently formulate stochastic MPC problems and autonomously improve performance in repetitive tasks. The proposed framework is able to handle a large set of predicted scenarios in real time and learn from historical data. <\/jats:p>","DOI":"10.1146\/annurev-control-060117-105215","type":"journal-article","created":{"date-parts":[[2018,5,30]],"date-time":"2018-05-30T00:50:56Z","timestamp":1527641456000},"page":"259-286","source":"Crossref","is-referenced-by-count":92,"title":["Data-Driven Predictive Control for Autonomous Systems"],"prefix":"10.1146","volume":"1","author":[{"given":"Ugo","family":"Rosolia","sequence":"first","affiliation":[{"name":"Department of Mechanical Engineering, University of California, Berkeley, California 94720-1740, USA;, ,"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Xiaojing","family":"Zhang","sequence":"additional","affiliation":[{"name":"Department of Mechanical Engineering, University of California, Berkeley, California 94720-1740, USA;, ,"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Francesco","family":"Borrelli","sequence":"additional","affiliation":[{"name":"Department of Mechanical Engineering, University of California, Berkeley, California 94720-1740, USA;, ,"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"22","reference":[{"key":"B1","doi-asserted-by":"publisher","DOI":"10.1137\/1.9780898718010"},{"key":"B2","doi-asserted-by":"publisher","DOI":"10.1177\/0278364910395339"},{"key":"B3","doi-asserted-by":"publisher","DOI":"10.1007\/s10514-015-9479-3"},{"key":"B4","unstructured":"4.\u2002  Metz  C.  2016.  How Google's AI viewed the move no human could understand.  Wired,  Mar. 14. https:\/\/www.wired.com\/2016\/03\/googles-ai-viewed-move-no-human-understand"},{"key":"B5","doi-asserted-by":"publisher","DOI":"10.1017\/9781139061759"},{"key":"B6","doi-asserted-by":"publisher","DOI":"10.1016\/j.automatica.2015.07.013"},{"key":"B7","unstructured":"7.\u2002  Zhang  X.  2016.  Robust and stochastic control of uncertain systems: from scenario optimization to adjustable uncertainty sets.  PhD Thesis, ETH Zurich"},{"key":"B8","doi-asserted-by":"crossref","unstructured":"8.\u2002  Rosolia  U,  Borrelli  F.  2018.  Learning model predictive control for iterative tasks. A data-driven control framework.  IEEE Trans. Autom. Control.  In press. https:\/\/doi.org\/10.1109\/TAC.2017.2753460","DOI":"10.1109\/TAC.2017.2753460"},{"key":"B9","doi-asserted-by":"publisher","DOI":"10.1016\/j.ifacol.2017.08.324"},{"key":"B10","doi-asserted-by":"publisher","DOI":"10.1016\/0005-1098(89)90002-2"},{"key":"B11","doi-asserted-by":"publisher","DOI":"10.1016\/S0098-1354(98)00301-9"},{"key":"B12","doi-asserted-by":"publisher","DOI":"10.1016\/S0005-1098(99)00214-9"},{"key":"B13","volume-title":"Model Predictive Control: Theory and Design","author":"Rawlings J","year":"2009"},{"key":"B14","volume-title":"Model Predictive Control","author":"Camacho EF","year":"2013"},{"key":"B15","doi-asserted-by":"publisher","DOI":"10.1109\/IVS.2005.1505122"},{"key":"B16","doi-asserted-by":"publisher","DOI":"10.1109\/TITS.2007.909241"},{"key":"B17","doi-asserted-by":"publisher","DOI":"10.1109\/JPROC.2006.888388"},{"key":"B18","first-page":"341","volume-title":"2016 International Symposium on Experimental Robotics","author":"Bestick A","year":"2016"},{"key":"B19","unstructured":"19.\u2002  Dragan  AD.  2017.  Robot planning with mathematical models of human state and action.  arXiv:170504226D"},{"key":"B20","doi-asserted-by":"publisher","DOI":"10.1109\/IROS.2015.7354197"},{"key":"B21","first-page":"940","volume-title":"AAMAS '16: Proceedings of the 2016 International Conference on Autonomous Agents & Multiagent Systems","author":"Liu C","year":"2016"},{"key":"B22","doi-asserted-by":"publisher","DOI":"10.1109\/TASE.2014.2376492"},{"key":"B23","doi-asserted-by":"publisher","DOI":"10.1109\/CACSD.2004.1393890"},{"key":"B24","unstructured":"24.\u2002  Grant  M,  Boyd  S.  2016.  CVX: Matlab software for disciplined convex programming.  http:\/\/cvxr.com\/cvx"},{"key":"B25","unstructured":"25.\u2002  Zhang  X,  Liniger  A,  Borrelli  F.  2017.  Optimization-based collision avoidance.  arXiv:1711.03449"},{"key":"B26","doi-asserted-by":"publisher","DOI":"10.1007\/s12532-012-0043-2"},{"key":"B27","doi-asserted-by":"publisher","DOI":"10.1109\/IROS.2013.6696852"},{"key":"B28","doi-asserted-by":"publisher","DOI":"10.1109\/TRO.2015.2479878"},{"key":"B29","unstructured":"29.\u2002  LaValle  S.  1998.  Rapidly-exploring random trees: a new tool for path planning.  Tech. Rep., Iowa State Univ., Ames"},{"key":"B30","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-16595-0_27"},{"key":"B31","unstructured":"31.\u2002  Optim  Gurobi.  2017.  Gurobi Optimizer reference manual.  https:\/\/www.gurobi.com\/documentation\/7.5\/refman"},{"key":"B32","unstructured":"32.\u2002  MOSEK  ApS.  2017.  The MOSEK optimization toolbox for MATLAB manual. Version 7.1 (revision 63).  http:\/\/docs.mosek.com\/7.1\/toolbox\/index.html"},{"key":"B33","doi-asserted-by":"publisher","DOI":"10.1016\/j.automatica.2005.08.023"},{"key":"B34","doi-asserted-by":"publisher","DOI":"10.1109\/CDC.1998.758479"},{"key":"B35","doi-asserted-by":"publisher","DOI":"10.1016\/S0005-1098(01)00051-6"},{"key":"B36","doi-asserted-by":"publisher","DOI":"10.1109\/ACC.2006.1656440"},{"key":"B37","doi-asserted-by":"publisher","DOI":"10.1016\/j.automatica.2004.08.019"},{"key":"B38","doi-asserted-by":"publisher","DOI":"10.1109\/CDC.2003.1272813"},{"key":"B39","doi-asserted-by":"publisher","DOI":"10.1016\/j.automatica.2016.09.016"},{"key":"B40","doi-asserted-by":"publisher","DOI":"10.1109\/CDC.2002.1184742"},{"key":"B41","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9780511804441"},{"key":"B42","doi-asserted-by":"publisher","DOI":"10.1016\/j.automatica.2010.06.034"},{"key":"B43","doi-asserted-by":"publisher","DOI":"10.1016\/j.automatica.2011.08.058"},{"key":"B44","doi-asserted-by":"publisher","DOI":"10.1109\/CDC.2013.6761117"},{"key":"B45","doi-asserted-by":"publisher","DOI":"10.1109\/CDC.2012.6425919"},{"key":"B46","doi-asserted-by":"publisher","DOI":"10.1109\/ACC.2014.6858851"},{"key":"B47","doi-asserted-by":"publisher","DOI":"10.1109\/CDC.2014.7039819"},{"key":"B48","doi-asserted-by":"publisher","DOI":"10.1109\/CDC.2015.7402590"},{"key":"B49","doi-asserted-by":"publisher","DOI":"10.1016\/j.automatica.2013.02.060"},{"key":"B50","doi-asserted-by":"publisher","DOI":"10.1016\/j.automatica.2014.10.035"},{"key":"B51","doi-asserted-by":"crossref","first-page":"334","DOI":"10.1109\/TAC.2015.2513368","volume":"61","author":"Grammatico S","year":"2016","journal-title":"IEEE Trans. Autom. Control"},{"key":"B52","doi-asserted-by":"publisher","DOI":"10.1016\/j.automatica.2017.03.031"},{"key":"B53","doi-asserted-by":"publisher","DOI":"10.1109\/TAC.2015.2511587"},{"key":"B54","doi-asserted-by":"publisher","DOI":"10.1109\/TAC.2014.2303232"},{"key":"B55","doi-asserted-by":"publisher","DOI":"10.1109\/CDC.2015.7402675"},{"key":"B56","doi-asserted-by":"publisher","DOI":"10.1109\/ECC.2016.7810413"},{"key":"B57","doi-asserted-by":"publisher","DOI":"10.23919\/ACC.2017.7963833"},{"key":"B58","doi-asserted-by":"publisher","DOI":"10.1007\/s10107-003-0499-y"},{"key":"B59","doi-asserted-by":"publisher","DOI":"10.1109\/TAC.2006.875041"},{"key":"B60","doi-asserted-by":"publisher","DOI":"10.1137\/07069821X"},{"key":"B61","doi-asserted-by":"publisher","DOI":"10.1137\/090773490"},{"key":"B62","doi-asserted-by":"publisher","DOI":"10.1109\/ECC.2014.6862498"},{"key":"B63","doi-asserted-by":"publisher","DOI":"10.1137\/120878719"},{"key":"B64","doi-asserted-by":"publisher","DOI":"10.23919\/ACC.2017.7963748"},{"key":"B65","volume-title":"2017 IEEE Conference on Decision and Control","author":"Rosolia U","year":"2018"},{"key":"B66","volume-title":"2017 IEEE Conference on Decision and Control","author":"Brunner M","year":"2018"},{"key":"B67","doi-asserted-by":"publisher","DOI":"10.23919\/ECC.2013.6669664"},{"key":"B68","doi-asserted-by":"publisher","DOI":"10.1109\/ECC.2015.7330692"},{"key":"B69","doi-asserted-by":"publisher","DOI":"10.3182\/20140824-6-ZA-1003.02629"},{"key":"B70","doi-asserted-by":"publisher","DOI":"10.3182\/20140824-6-ZA-1003.02436"},{"key":"B71","doi-asserted-by":"publisher","DOI":"10.1109\/ACC.2016.7525268"},{"key":"B72","unstructured":"72.\u2002  Bezanzon  J,  Karpinski  S,  Shah  V,  Edelman  A.  2012.  Julia: a fast dynamic language for technical computing.  arXiv:1209.5145"}],"container-title":["Annual Review of Control, Robotics, and Autonomous Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.annualreviews.org\/doi\/pdf\/10.1146\/annurev-control-060117-105215","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,10,8]],"date-time":"2021-10-08T10:41:02Z","timestamp":1633689662000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.annualreviews.org\/doi\/10.1146\/annurev-control-060117-105215"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,5,28]]},"references-count":72,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2018,5,28]]}},"alternative-id":["10.1146\/annurev-control-060117-105215"],"URL":"https:\/\/doi.org\/10.1146\/annurev-control-060117-105215","relation":{},"ISSN":["2573-5144","2573-5144"],"issn-type":[{"value":"2573-5144","type":"print"},{"value":"2573-5144","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018,5,28]]}}}