Control and Estimation by Real-Time Optimization

Optimal control problems of nonlinear systems generally cannot be solved explicitly, and their numerical solutions are computationally expensive. Therefore, implementing an optimal control in the form of feedback has long been regarded as impossible. However, we have developed efficient numerical algorithms for a class of nonlinear optimal control problems, i.e., model predictive control (receding horizon control), and succeeded in implementing optimal feedback control with a sampling period in the order of milliseconds, which is one of the world's first real-time optimization algorithms tailored for model predictive control. Since then, our algorithms have also been applied to various systems such as autopilot systems of ships and airplanes. Applications of real-time optimization are not limited to control but expand to estimation, differential games, adaptation, learning, and their integration. Our research topics include not only numerical algorithms but also automatic code generation by symbolic computation, tuning of performance indexes, parallel computing, and so on.



Figure: A model hovercraft.



Figure: Autopilot for a ship (Photo: Kawasaki Heavy Industry)


■ Keywords

Nonlinear systems, Optimal control, Real-time optimization, Numerial computation, Symbolic computation.

References

  • T. Ohtsuka, and H. A. Fujii: Real-Time Optimization Algorithm for Nonlinear Receding-Horizon Control, Automatica, Vol. 33, No. 6, pp. 1147-1154 (1997) DOI:10.1016/S0005-1098(97)00005-8
  • T. Ohtsuka: On a Computational Method for Nonlinear Receding Horizon Control, Journal of the Society of Instrument and Control Engineers, Vol. 41, No. 5, pp. 366-371 (2002) (in Japanese) JOI:JST.Journalarchive/sicejl1962/41.366
  • T. Ohtsuka, and A. Kodama: Automatic Code Generation System for Nonlinear Receding Horizon Control, Transactions of the Society of Instrument and Control Engineers, Vol. 38, No. 7, pp. 617-623 (2002) JOI:JST.Journalarchive/sicetr1965/38.617
  • H. Seguchi, and T. Ohtsuka: Nonlinear Receding Horizon Control of an Underactuated Hovercraft, International Journal of Robust and Nonlinear Control, Vol. 13, Nos. 3-4, pp. 381-398 (2003) DOI:10.1002/rnc.824
  • T. Ohtsuka: A Continuation/GMRES Method for Fast Computation of Nonlinear Receding Horizon Control, Automatica, Vol. 40, No. 4, pp. 563-574 (2004) DOI:10.1016/j.automatica.2003.11.005
  • T. Ohtsuka, and T. Shimomura: Weight Tuner's Melancholy, Systems, Control, and Information, Vol. 48, No. 9, pp. 389-390 (2004) (in Japanese) NAID:110003892321
  • T. Ohtsuka: Introduction to Nonlinear Optimal Control, Corona Publishing (2011) (in Japanese) ISBN:978-4-339-03318-2 [The Society of Instrument and Control Engineers, Best Writing Award]
  • N. Fujii, and T. Ohtsuka: Nonlinear Adaptive Model Predictive Control via Immersion and Invariance Stabilizability, Transactions of the Institute of Systems, Control and Information Engineers, Vol. 25, No. 10, pp. 281-288 (2012) DOI:10.5687/iscie.25.281 [The Institute of Systems, Control and Information Engineers Best Paper Award]
  • T. Hashimoto, Y. Yoshioka, and T. Ohtsuka: Receding Horizon Control with Numerical Solution for Nonlinear Parabolic Partial Differential Equations, IEEE Transactions on Automatic Control, Vol. 58, No. 3, pp. 725-730 (2013) DOI:10.1109/TAC.2012.2208318
  • T. Ohtsuka (Ed.): Practical Applications of Control by Real-Time Optimization, Corona Publishing (2015) (in Japanese) ISBN:978-4-339-03210-9
  • Automatic Code Generation System, AutoGenU [Maple Version] [Mathematica Version; Matlab Interface] [Python Version]
  • Maplesoft Webinar: Real Time Code Generation for Nonlinear Model Predictive Control [YouTube]
  • H.Deng, and T. Ohtsuka: A Parallel Newton-type Method for Nonlinear Model Predictive Control, Automatica, Vol. 109, No. 12, 108560 (2019) DOI:10.1016/j.automatica.2019.108560
  • H. Deng, and T. Ohtsuka: A Parallel Code Generation Toolkit for Nonlinear Model Predictive Control, Proceedings of the 57th IEEE Conference on Decision and Control, pp. 4920-4926 (2018) DOI:10.1109/CDC.2018.8619035
  • A Parallel Computing Toolbox ParNMPC [GitHub]