哈密顿-雅可比-贝尔曼方程(Hamilton-Jacobi-Bellman equation,简称HJB方程)是一个偏微分方程,是最佳控制的中心。HJB方程式的解是针对特定动态系统及相关成本函数下,可以有最小成本的控制实值函数。
若只在某一个区域求解,HJB方程是一个必要条件,若是在整个状态空间下求解,HJB方程是充分必要条件。其解是针对开回路的系统,但也允许针对闭回路系统求解。HJB方程也可以扩展到随机系统。
一些经典的变分问题,例如最速降线问题,可以用此方法求解。
HJB方程的基础是以1950年代由理查德·贝尔曼及其同仁提出的动态规划[1]。对应的离散系统方程式一般称为贝尔曼方程。在连续时间的结果可以视为由卡尔·雅可比及威廉·哈密顿提出,经典力学中哈密顿-雅可比方程的延伸。
考虑在时间内,以下确定系统最佳控制的问题:
其中C[ ]为标量成本函数,D[ ]为计算其最终状态时效力时或经济值的函数,x(t)为系统状态向量,x(0)假设已知,及u(t)是想要求得的控制向量,在 0 ≤ t ≤ T。
此系统也需满足下式:
其中F[ ]可以根据状态向量决定向量后续的变化。
针对上述简单的系统,哈密顿-雅可比-贝尔曼微分方程如下:
需符合以下条件
其中为向量a和b的内积,而为梯度运算子。(注意: 表示 对 求导,非对 求导!)
上述PDE中的未知向量是贝尔曼间接效用函数,表示从时间,状态开始控制系统,以最佳方式控制系统一直到时间的成本。
HJB方程可以用以下的方式推导:假设是最佳的成本函数,则根据理查·贝尔曼的贝尔曼方程,从时间t到t + dt,可得:
注意最后一项的泰勒展开式如下:
其中o(dt)是泰勒展开式中的高阶项,若在等式两侧删除V(x(t), t),除以dt,并取dt趋近为零的极限,可得上述定义的HJB方程。
HJB方程一般会用逆向归纳法求解,也就是从往前求解到。
若对整个状态空间求解,HJB方程是最佳解的充份必要条件[2]。若可以求解,就可以找到达到最小成本的控制。
一般而言,HJB方程不会有一个传统光滑函数的解。为了这些情形发展了许多广义解的表示方式,包括皮埃尔-路易·利翁及迈克尔·克兰德尔的粘性解,Andrei Izmailovich Subbotin的极小化极大算法等。
上述的作法主要是应用贝尔曼的最优化原理,以及在时间上由最终时间倒推求解,针对随机控制问题也可以用类似的作法求最佳解。考虑以下的问题
此时为随机过程,而为控制变数。首先使用贝尔曼方程,再用伊藤引理将展开,可以得到以下的随机HJB方程。
其中为随机微分运算子,以下是最终时间的限制条件。
注意此时已没有随机性了。此例中后者的不一定是原来方程式的解,它只是可能解之一,需要再作验证。此技巧常用在财务数学中,决定在市场中的最佳投资策略(例如像默顿的投资组合问题)。
下例是一个有线性随机动态特性的系统,有二次式的成本。若系统动态为
而成本以以下的速度累积,则HJB方程为
假设价值函数是二次式,可以将一般的Riccati方程用在价值函数的海森矩阵中,即为线性二次高斯控制(LQG控制)。
- ^ R. E. Bellman. Dynamic Programming. Princeton, NJ, 1957.
- ^ Dimitri P Bertsekas. Dynamic programming and optimal control. Athena Scientific, 2005.
- Dimitri P. Bertsekas. Dynamic programming and optimal control. Athena Scientific. 2005.