最优控制(optimal control)可以理解为最优化(optimization)领域下的一个子领域。
最优化理论一般研究涉及最优化问题的建模与求解。一个最优化模型一般包括目标函数,决策变量,以及约束条件这三个基本要素。最优化问题的目标是选择一组满足约束条件决策变量,使得目标函数最优(如最小化成本,或最大化收益)。常见的问题包括线性规划,整数规划等。
最优化控制问题可视为最优化问题中的一种,该类问题主要针对控制系统进行优化。系统有特定的状态(state),以及相应的控制器(controller),该类问题的目标一般也是选取最优的控制策略(control policy,即告诉我们在什么状态下进行什么样的行动),以使得系统最优(可以是成本最小,也可以是收益最大)。以库存控制问题为例,可将当前库存量视为系统状态,决策变量即为订货量,最优的策略即为在什么样的库存量下,订多少货,使得总体的库存持有成本最低。上述库存问题,同样可以建立成一个数学规划的模型(目标函数,决策变量,约束)。
最优化控制理论根据问题的特点,又可细分为确定型最优化理论(deterministic)与随机型最优化理论(stochastic),根据系统输入输出之前的关系又可分为的线性最优化控制理论(linear)与非线性最优化控制理论(nonlinear)。不同的问题因为其特点不同,也会对应不同的方法,这些就难以一一列举了。
最明显直白的区别,最优控制的约束条件一般都是微分方程等式(也就是系统的动态模型),最优化的约束条件可就广了去了。另外最优控制要想实用一定要求出在线的近似解析解来,但是最优化没这要求
没有什么本质的区别。
有的人说:“不对,一个是静态优化,一个是动态优化。”因为很多人学的最优化都是讨论 中的非线性规划,然后 Optimal Control 一般又是另外开一门课,感觉好像不一样。
其实真没啥区别,从泛函分析的观点看就基本没啥区别。什么静态的动态的,无非就是一个在 中考虑问题,一个是在函数空间,比如 或者 , 中考虑问题罢了。
其实不论怎么样,优化问题的基本结构就是构造(抽象的) Lagrange Functional :
。(1)
所有具体的拉格朗日函数/泛函都是这个抽象形式的特例罢了。
只不过 的空间性质实在太好了,比如有界闭集就是紧的,同时对偶空间就是自身,对偶作用表现形式就是内积(一般的 Banach 空间可没有内积,但是可以用“线性泛函的作用”替代,也就是(1)式的尖括号),导致优化问题被大大简化了。
比如 的优化问题
Lagrange函数怎么构造的,那不就是对偶向量作用在约束函数上(有限维就表现为内积)么:
。配合上所谓的KT条件,求导,欧了。
这里的 就是 , 就是 。
这就是(1)式的特例!
一般的希尔伯特空间还好,由于有表示定理,我们知道其对偶空间就是自身,从而那个拉格朗日乘子其实就是空间本身的一个元素(一个向量),这与 中是一样的 。
一个简单的无限维优化问题:
约束条件是以泛函的形式给出的,泛函的好处就是值域是 (不考虑复泛函), 的对偶空间还是 ,对偶作用那就是内积(数乘)。
所以在这里,(1)式其实就是 。同样再配上KT条件就行了。
这里的 就是 , 而 就是 。
然后求变分,欧了。
什么?无限维空间不会写KT条件?其实一样的,那就是互补松弛条件照写!
,若 则 。
你看,有啥区别嘛!
没有。
然后最优控制无非就是函数空间上一种特殊的最优化问题罢了,只不过约束条件是微分方程。
你依然从最抽象的 Lagrange形式(也就是(1)式)入手(但是这里需要考虑适当的函数空间)。就可以证明 Pontryagin's maximum principle。
当然,这个证明可不简单,不过切入点就是这样。
__________________________________________________________________________
有人质疑说“最优控制最重要和主流的方法 不是胖加押金那套 而是贝尔曼……”
我想说首先,任何一本正规的最优控制教材Pontryagin's maximum principle都是重点介绍的核心结论之一,不是你觉得不是就不是了。另外Bellman方程本身跟我回答中提到的抽象 Lagrange形式是两套方法,Bellman方程得益于最优控制问题本身具备递归结构,这根本不妨碍抽象Lagrange形式的适用性和概括性。
另外我通篇都没有谈及数值优化的内容,麻烦搞清楚。
一个是泛函,一个是数分。
最优化是个超大课题, 是对某一目标函数在满足给定的约束条件下求极值. 如果你能精通, 你已经能解决所有(对, 所有!)应用数学问题的70%~80%, 包括最热门的AI的大部分问题(95%以上, 不夸张!). 还能赚最多的钱, 泡最靓的妞, 吃最香的饭, 住最大的房, 走向人生最高峰(人生想白了不过是在有限的时间内追逐最优化的结果, 只是每人目标不同而已).
最优控制是它的一个比较高级的分支, 有控制论背景, 即寻找一个控制方法(开环或闭环反馈, 并有一定的限制)来控制一个系统(一般是微分或差分方程表示, 系统状态也可能有限制)使其达到某种最优的结果(如系统运行能耗最低或响应速度最快等), 需要各种方程(差分, 常微, 偏微, 随机过程, 随机微分方程等), 泛函分析, 控制论, 变分法, 动态规划等比较高深的数学知识.
标准学习途径是数分求极值, 线代/线性规划, 凸分析/非光滑分析/非线性规划, 泛函分析/变分法, 再到线性系统/控制论/最优控制/庞氏最大值原理/动态规划/随机控制, 还有整数规划, 对策论等. 够任何人学一阵子的, 有本事你也可以用适合你的最佳(优)方法来学习.