第1章 绪论
1.1 优控制理论
优控制理论是现代控制理论的核心,起源于控制理论的发展[1,2]。优控制的奠基性贡献可以追溯到20世纪40年代维纳(Wiener)提出的控制论(Cybernetics)[3]。20世纪50年代,钱学森的专著 Engineering Cybernetics进一步推动了优控制理论的发展[4]。1960年在莫斯科召开的第一届国际自动控制联合会(International Federation of Automatic Control,IFAC)上,美国科学家卡尔曼(Kalman)、贝尔曼(Bellman)和苏联科学家庞特里亚金(Pontryagin)做了《控制系统的一般性理论》(On the General Theory of Control Systems)、《动态规划》和《优控制理论》的报告,这是优控制理论发展的里程碑。
优控制问题本质上是带约束条件的优化问题,在一定约束条件下(比如系统的动态方程或控制输入受限制),寻求优反馈控制,使得性能指标取极值。早期解决优控制问题的数学工具主要为变分法[5],将性能指标视为控制函数的泛函,通过对泛函求极值得到优控制。经典变分法建立在容许控制集为开集的假设前提下,只适用于控制输入不受限制的情况[6]。然而许多实际问题中,控制输入往往受限,容许控制集为闭集,这使得变分法的应用受到了很大限制。苏联科学家庞特里亚金把优控制问题描述为具有约束的非经典变分学问题,针对闭集约束的变分问题,提出了极大值原理[7]。优控制问题发展中的另一个理论基石,是美国科学家贝尔曼在研究多级决策过程优化问题中提出的优性原理[8]。另外,动态规划方法在经济管理、生产调度、工程技术等方面得到了广泛的应用,是求解优控制问题的有效手段。
1.1.1 离散时间动态系统的优控制
考虑形如式(1-1)的离散时间动态系统:
(1-1)
其中,是系统的状态变量,系统的初始状态为x0;是系统的控制变量。优控制问题的目标是设计反馈控制,使得形如式(1-2)的性能指标取得极小值:
(1-2)
其中,通常被称为回报函数(reward function)[9,10]。
关于系统(1-1)的多级决策优化问题可以描述为图1-1。系统从初始状态 x0出发,在时刻 i时,系统的状态为 xi,此时施加控制 ui,则系统根据式(1-1)进行状态更新。
图1-1多级决策优化问题
在k时刻,将反馈控制 u表达为状态的函数 uxk,性能指标 Jxk表示为状态 xk的函数;在 k+1时刻,性能指标则可以表示为(k+1) ,则和之间的关系为
(1-3)
上式被称为贝尔曼方程。根据贝尔曼优性原理,优性能指标满足[9]:
(1-4)
且优控制可以表示为
(1-5)
从式(1-3)、式(1-4)和式(1-5)可以看出性能指标 Jxk和控制策略之间的关系:是对控制策略 u性能的评价,的设计直接影响性能的大小;反过来,根据式(1-5)可知,优控制策略 uk也依赖于优性能指标。
1.1.2 连续时间动态系统的优控制
考虑形如式(1-6)的连续时间动态系统:
(1-6)
其中,是系统的状态变量,系统的初始状态为统的控制输入。优控制问题的目标是设计反馈控制,使得如下的性能指标取得极小值:
(1-7)
其中,为回报函数。
连续时间动态系统(式(1-6))关于性能指标(式(1-7))优控制问题的优解所满足的充分条件可以由哈密顿-雅可比-贝尔曼(Hamilton-Jacobi-Bellman,HJB)方程所描述[10-12]。假设 t时刻的优性能指标为,并且和的偏导数存在,则优控制和优性能指标满足:
(1-8)
其中,Ωu表示容许控制集。
根据 HJB方程可知,对于连续时间动态系统,优控制问题的求解终归结为求解 HJB方程(式(1-8))。然而 HJB方程本质上是一个非线性偏微分方程,该方程的求解比较困难。此外,对于离散时间动态系统,难以对优控制进行在线求解。这是因为离散时间动态系统是根据式(1-1)进行状态更新,但是根据式(1-5), k时刻优控制 uxk依赖于(k+1) ,不满足因果关系。传统动态规划方法的另一个缺陷,就是所谓的“维数灾难”问题[13]。所以,传统动态规划方法仅适用小规模系统的优控制问题求解。自适应/近似动态规划(adaptive/ approximate dynamic programming),作为一种优控制问题的近似求解方法,可以有效地解决传统动态规划存在的问题。
1.2 强化学习与自适应动态规划
1.2.1 自适应动态规划理论基本原理
自适应动态规划的基本原理是利用函数近似结构(如用神经网络)来逼近经典动态规划中的性能指标函数,从而逼近优性能指标和优控制[14-27]。自适应动态规划的结构如图1-2所示[18-20]。
自适应动态规划算法主要由三部分组成:动态系统、动作网络和评价网络。在实际应用中,每个部分的实现由神经网络执行。当系统模型未知时,可以通过神经网络对系统模型进行辨识。动作网络生成系统的控制策略,通过调节动作网络的参数来达到逼近优控制策略的目的;评价网络用于评价动作网络生成的控制策略。不同于传统的反馈控制方法,图1-2中评价网络到动作网络的增强信号是对动作网络控制策略的评价结果,这一信号有助于指导动作网络的优化设计。这里需要指出动作网络和评价网络的参数优化目标之间的区别:评价网络的参数优化的目标是使得评价网络的输出满足贝尔曼方程(式(1-3));建立在评价网络基础上,动作网络参数优化的目标是小化评价网络的输出[28]。
图1-2 自适应动态规划结构
自适应动态规划中,动作网络和评价网络的实现采用神经网络。动作网络和评价网络的经典学习方法分别为值迭代算法和策略迭代算法[9,20-22]。值迭代算法和策略迭代算法的流程如图1-3所示。从图中可以看出,自适应动态规划的迭代算法由两部分组成:策略评价和策略改进,分别对应评价网络和动作网络的权值更新。此外,在经典的动态规划方法中,当前时刻的优控制依赖于未来时刻状态的值函数,这种非因果特性不利于在线应用。然而自适应动态规划算法具有因果特性,每个部分的参数调整可以实时进行,从而在线地优化整个闭环系统性能。
图1-3 值迭代算法和策略迭代算法流程图
1.2.2 自适应动态规划理论发展现状
自适应动态规划是人工智能、机器学习和控制科学交叉的新兴领域,以传统的优控制理论为基础,融合了强化学习(reinforcement learning)[29-32]、自适应评价设计(adaptive critic design)[28]、函数逼近[33]、自适应控制[34,35]等理论和方法,在电力系统[23-27]、智能电网[36-38]、污水处理[39,40]、交通网络控制[41]等工程技术领域有着广泛的应用,为大规模复杂非线性系统优化控制问题提供了有效解决途径。
机器学习领域里,监督学习、非监督学习和强化学习是三种基本的学习模式。自适应动态规划与强化学习方法有着密切的联系[30,31,42]。Widrow等首次在自适应控制结构中引入了“评价网络”的概念,通过评价网络产生的奖励或惩罚信号,进一步优化控制器设计[43]。Werbos利用函数近似结构来产生奖惩信号,并将这种带有评价网络的反馈结构称为“自适应评价设计”[44]。
神经网络理论推动了智能控制方法的发展[45-49]。Werbos利用神经网络进行评价网络设计,形成了“启发式动态规划”(heuristic dynamic programming)、“二次启发式动态规划”(dual heuristic dynamic programming),以及控制策略依赖型评价策略,包括“控制依赖启发式动态规划”(action dependent heuristic dynamic programming)和“控制依赖二次启发式规划”(action dependent dual heuristic dynamic programming)的控制系统结构,奠定了自适应动态规划的基础[50]。在此基础上, Prokhorov和 Wunsch提出了两种自适应评价结构,包括“全局二次启发式规划”(generalized dual heuristic programming)以及“控制依赖全局二次启发式规划”(action dependent generalized dual heuristic programming),其核心思想是设计评价网络,同时逼近性能指标函数及其梯度,以提高控制精度和网络参数的学习收敛速度[28]。为了方便自适应动态规划在线运行, Si和 Wang提出了基于模型的启发式动态规划结构[51],Ni等提出了无模型二次启发式规划结构[52]。Padhi等进一步简化了自适应动态规划的网络结构,提出了单一评价网络的自适应评价设计[53],并且得到了成功应用[51,54]。美国罗得岛大学的何海波教授在“评价机制”的基础上,引入了“参考网络”,并且推导出了在线学习算法,更进一步完善了自适应动态规划的结构[55]。
上述关于自适应动态规划的理论研究主要针对网络结构的优化和简化。近年来,很多学者在自适应动态规划所构成的闭环系统的稳定性方面进行了大量工作。20世纪60年代, Howard针对多级决策问题,提出了值迭代和策略迭代算法,这为自适应动态规划的稳定性和收敛性的证明提供了理论基础[56]。20世纪80年代末到90年代初, Sutton等结合了蒙特卡罗方法(Monte Carlo method)和动态规划理论,提出了“时序差分学习”方法,开辟了强化学习这一新领域[29,31]。20世纪90年代末,美国麻省理工学院(Massachusetts Institute of Technology,MIT)的 Bertsekas等利用泛函分析理论证明了值迭代和策略迭代的收敛性[9,57,58]。
在控制科学领域,自适应动态规划在动态系统的优控制问题上有着成功的应用。 Murray等第一次严格证明了策略迭代算法的收敛性以及闭环系统的稳定性[59]。Abu-Khalaf和 Lewis针对控制输入幅值受限的连续时间动态系统,设计了自适应动态规划策略迭代方法,并且证明了该算法的闭环稳定性[60]。Vrabie等针对连续时间动态系统,提出了一种仅依赖部分模型信息的策略迭代算法[61]。
近年来,数据驱动方法被应用于控制器设计上。这种方法的特点是不依赖于被控对象的数学模型,仅利用采集到的被控系统的运行数据,进行控制器设计,并保证闭环系统的稳定性和鲁棒性[62-64]。北京交通大学的侯忠生教授所提出的模型参考自适应控制(model reference adaptive control,MRAC)[65-67],就是一种典型的数据驱动控制方法。在自适应动态规划的数据驱动算法方面,很多学者做了大量的基础性研究工作。纽约大学姜钟平教授团队借鉴了强化学习中的异轨策略方法,提出了一种数据驱动方法[68]。在此基础上, Modares等将数据驱动自适应动态规划方法应用于跟踪控制问题[69]和 H∞控制问题[70];Song等将数据驱动自适应动态规划方法应用于不确定系统的状态调节问题[71]和非零和微分博弈问题[72]。对于不确定系统的鲁棒控制问题,自适应动态规划理论也有着成功的应用。东北大学张化光教授等提出了利用递归神经网络进行系统模型的辨识,系统模型的辨识与评价网络、动作网络的权值