2.793

2018影响因子

(CJCR)

  • 中文核心
  • EI
  • 中国科技核心
  • Scopus
  • CSCD
  • 英国科学文摘

留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

基于强化学习的浓密机底流浓度在线控制算法

袁兆麟 何润姿 姚超 李佳 班晓娟 李潇睿

袁兆麟, 何润姿, 姚超, 李佳, 班晓娟, 李潇睿. 基于强化学习的浓密机底流浓度在线控制算法. 自动化学报, 2019, 45(x): 1−15. doi: 10.16383/j.aas.c190348
引用本文: 袁兆麟, 何润姿, 姚超, 李佳, 班晓娟, 李潇睿. 基于强化学习的浓密机底流浓度在线控制算法. 自动化学报, 2019, 45(x): 1−15. doi: 10.16383/j.aas.c190348
Yuan Zhao-Lin, He Run-Zi, Yao Chao, Li Jia, Ban Xiao-Juan, Li Xiao-Rui. Online reinforcement learning control algorithm for concentration of thickener underflow. Acta Automatica Sinica, 2019, 45(x): 1−15. doi: 10.16383/j.aas.c190348
Citation: Yuan Zhao-Lin, He Run-Zi, Yao Chao, Li Jia, Ban Xiao-Juan, Li Xiao-Rui. Online reinforcement learning control algorithm for concentration of thickener underflow. Acta Automatica Sinica, 2019, 45(x): 1−15. doi: 10.16383/j.aas.c190348

基于强化学习的浓密机底流浓度在线控制算法


DOI: 10.16383/j.aas.c190348
详细信息
    作者简介:

    北京科技大学计算机与通信工程学院博士研究生, 2017年获得北京科技大学计算机科学与技术系学士学位, 主要研究方向为自适应动态规划和强化学习. E-mail: b20170324@xs.ustb.edu.cn

    北京科技大学计算机与通信工程学院硕士研究生. 2017年获得北京信息科技大学计算机科学与技术系学士学位. 主要研究方向为流体仿真和强化学习. E-mail: hrz.claire@gmail.com

    2009年获北京交通大学计算机科学学士学位, 2016年获北京交通大学信息科学研究所博士学位. 2014年至2015年, 他在瑞士洛桑联邦理工学院担任访问博士. 2016年至2018年, 他在北京邮电大学传感技术与商业研究所担任博士后. 自2018年以来, 他一直是北京科技大学的助理教授. 他目前的研究方向包括图像和视频处理以及计算机视觉. E-mail: yaochao@ustb.edu.cn

    北京科技大学计算机与通信工程学院硕士研究生, 主要研究方向为自适应动态规划, 自适应控制, 强化学习. E-mail: lijia1117@foxmail.com

    北京科技大学教授, 中国人工智能学会常务理事. 研究领域: 人工智能、自然人机交互、三维可视化技术. 本文的通信作者. E-mail: banxj@ustb.edu.cn

    本科就读于北京科技大学, 主要研究方向为蒙特卡罗树搜索、强化学习. E-mail: i@lixiaorui.xyz

  • 基金项目:  国家重点基础研究发展计划(No. 2016YFB0700500), 国家自然科学基金(No. 61572075, No. 61702036, No. 61873299)资助

Online Reinforcement Learning Control Algorithm for Concentration of Thickener Underflow

More Information
  • Fund Project:  Supported by National Basic Research Program of China (No. 2016YFB0700500), National Natural Science Foundation of China (No. 61572075, No. 61702036, No. 61873299)
  • 摘要: 复杂过程工业控制一直是控制应用领域研究的前沿问题. 浓密机作为一种复杂大型工业设备广泛用于冶金、采矿等领域. 由于其在运行过程中具有多变量、非线性、高时滞等特点, 浓密机的底流浓度控制技术一直是学界、工业界的研究难点与热点. 本文提出了一种基于强化学习技术的浓密机在线控制算法. 该算法在传统启发式动态规划 (Heuristic dynamic programming, HDP)算法的基础上, 设计融合了评价网络与模型网络的双网结构, 并提出了基于短期经验回放的方法用于增强评价网络的训练准确性, 实现了对浓密机底流浓度的稳定控制, 并保持控制输入稳定在设定范围之内. 最后, 通过浓密机仿真实验的方式验证了算法的有效性, 实验结果表明本文提出的方法在时间消耗、控制精度上优于其他算法.
     1(Mean Square Error, MSE)=$\frac{1}{T} \sum_{k=1}^{T}\left|(y(k)-y^*(k))\right|^{2}$ 2(Max Absolute Error, MAE)=$\max _{1 \leq k \leq T}\{|y(k)-y^*(k)|\}$ 3(Integral Absolute Error, IAE)=$\frac{1}{T} \sum_{k=1}^{T}\left|(y(k)-y^*(k))\right|$
  • 图  1  浓密过程示意图

    Fig.  1  Illustration of thickening process.

    图  2  HCNVI算法结构示意图

    Fig.  2  Structure diagram of algorithm HCNVI

    图  3  人工神经网络结构示意图

    Fig.  3  Structure diagram of artificial neural network

    图  4  迭代梯度下降过程可视化

    Fig.  4  Visualize the process of iterative gradient decline

    图  5  短期经验回放对评价网络的输出值的影响

    Fig.  5  The effect of short-term experience replay on critic network

    图  6  噪音量变化曲线

    Fig.  6  Noise input in the simulation experiment

    图  7  HCNVI与其他ADP算法在恒定噪音输入下的对比

    Fig.  7  HCNVI versu other ADP algorithms under stable noisy input

    图  8  短期经验回放对HDP与HCNVI的影响

    Fig.  8  The influence of short-term experience replay on HDP and HCNVI

    图  9  实验一中HDP与HCNVI在时间消耗上的对比

    Fig.  9  Comparison of time consuming in HDP and HCNVI in experiment 1

    图  10  噪音量变化曲线

    Fig.  10  The fluctuation of noisy input

    图  11  HCNVI与其他ADP算法在波动噪声输入下的对比

    Fig.  11  HCNVI versu other ADP algorithms under fluctuate noisy input

    图  12  噪音持续变化下短期经验回放对HCNVI的影响

    Fig.  12  The influence of short-term experience replay on HCNVI

    图  13  实验二中HCNVI算法与HDP算法在时间消耗上的对比

    Fig.  13  Comparison of time consuming in HDP and HCNVI in experiment 2

    表  1  参量定义

    Table  1  Variables definition

    变量含义量纲初始值补充说明
    $f_{i}(t)$进料泵频$Hz$40扰动量
    $f_{u}(t)$底流泵频$Hz$85控制量
    $f_{f}(t)$絮凝剂泵频$Hz$40控制量
    $c _ { i } ( t )$进料浓度$kg/m^3$73扰动量
    $h(t)$泥层高度$m$1.48状态量
    $c_u(t)$底流浓度$kg/m^3$680目标量
    下载: 导出CSV

    表  2  仿真模型常量

    Table  2  Definitions for constant variables

    变量含义量纲参考值
    $\rho _s$干砂密度$kg/m^3$4 150
    $\rho _e$介质表观密度$kg/m^3$1 803
    $\mu _ { e }$悬浮体系的表观粘度$Pa \cdot s$1
    $d_0$进料颗粒直径$m$0.00008
    $p$平均浓度系数0.5
    $A$浓密机横截面积$m^2$300.5
    $k_s$絮凝剂作用系数$s/m^2$0.157
    $k_i$压缩层浓度系数$m^3/s$0.0005*3600
    $K_i$进料流量与进料泵频的系数$m^3/r$50/3 600
    $K_u$底流流量与底流泵频的系数$m^3/r$2/3 600
    $K_f$絮凝剂流量与絮凝剂泵频的系数$m^3/r$0.75/3 600
    $\theta$压缩时间$s$2 300
    下载: 导出CSV

    表  3  部分变量计算方法

    Table  3  Definitions for part intermediate variables

    变量含义公式
    $q_i(t)$进料流量$q _ { i } ( t ) = K _ { i } f _ { i } ( t )$
    $q_u(t)$底流流量$q _ { u } ( t ) = K _ { u } f _ { u } ( t )$
    $q_f(t)$絮凝剂添加量$q _ { f } ( t ) = K _ { f } f _ { f } ( t )$
    $d(t)$絮凝作用后的颗粒直径$d ( t ) = k _ { s } q _ { f } ( t ) + d _ { 0 }$
    $u_t(t)$颗粒的干涉沉降速度$u _ { t} ( t ) = \dfrac { d ^ { 2 } ( t ) \left( \rho _ { s } - \rho _ { e } \right) g } { 18 \mu _ { e } }$
    $u_r(t)$底流导致的颗粒下沉速度$u _ { r } ( t ) = \dfrac { q _ { u } ( t ) } { A }$
    $c_l(t)$泥层高度处单位体积含固量$c _ { l } ( t ) = k _ { i } q _ { i } ( t ) c _ { i } ( t )$
    $c_a(t)$泥层界面内单位体积含固量$c _ { a } ( t ) = p \left[ c _ { l } ( t ) + c _ { u } ( t ) \right]$
    $r(t)$泥层内液固质量比$r(t)=\rho_{l}\left(\dfrac{1}{c_ a(t)}-\frac{1}{\rho_s}\right)$
    $W ( t )$单位时间进入浓密机内的固体质量$W ( t ) = c _ { i } (t ) q _ { i } ( t )$
    下载: 导出CSV

    表  4  不同控制算法之间性能分析

    Table  4  Performances analysis of different algorithms

    实验组实验一实验二
    对比指标MSEMAEIAEMSEMAEIAE
    HDP414.182141.8547.2466 105.619275.07554.952
    DHP290.886109.3125.392732.81496.14516.560
    ILPL364.397135.4748.2892 473.661211.61535.222
    HCNVI44.44566.6043.867307.61876.17612.998
    下载: 导出CSV
  • [1] 1 Shen Y, Hao L, Ding S X. Real-time implementation of fault tolerant control systems with performance optimization. IEEE Trans. Ind. Electron, 2014, 61(5): 2402−2411 doi:  10.1109/TIE.2013.2273477
    [2] 2 Kouro S, Cortes P, Vargas R, Ammann U, Rodriguez J. Model predictive control-A simple and powerful method to control power converters. IEEE Trans. Ind. Electron, 2009, 56(6): 1826−1838 doi:  10.1109/TIE.2008.2008349
    [3] 3 Dai W, Chai T, Yang S X. Data-driven optimization control for safety operation of hematite grinding process. IEEE Trans. Ind. Electron, 2015, 62(5): 2930−2941 doi:  10.1109/TIE.2014.2362093
    [4] 4 Wang D, Liu D, Zhang Q, Zhao D. Data-based adaptive critic designs for nonlinear robust optimal control with uncertain dynamics. IEEE Trans. Syst., Man, Cybern., Syst., 2016, 46(11): 1544−1555 doi:  10.1109/TSMC.2015.2492941
    [5] Sutton S R, Barto G A. Reinforcement Learning: An Introduction. Cambridge: MIT Press, 2nd edition, 2018.
    [6] Lewis F L, Vrabie D, Syrmos V L. Optimal Control. New York, USA: John Wiley & Sons, Hoboken, 3rd Edition, 2012.
    [7] 7 Prokhorov V D, Wunsch C D. Adaptive critic design. IEEE Transactions on Neural Networks, 1997, 8(5): 997−1007 doi:  10.1109/72.623201
    [8] 8 Werbos P J. Foreword - ADP: the key direction for future research in intelligent control and understanding brain intelligence. *IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics)., 2008, 38(4): 898−900 doi:  10.1109/TSMCB.2008.924139
    [9] 段艳杰, 吕宜生, 张杰, 赵学亮, 王飞跃. 深度学习在控制领域的研究现状与展望. 自动化学报, 2016, 42(5): 643−654

    9 Duan Yan-Jie, Lv Yi-Sheng, Zhang Jie, Zhao Xue-Liang, Wang Fei-Yue. Deep learning for control: the state of the art and prospects. Acta Automatica Sinica, 2016, 42(5): 643−654
    [10] 10 Liu Y-J, Tang L, Tong S-C, Chen C L P, Li D-J. Reinforcement learning design-based adaptive tracking control with less learning parameters for nonlinear discrete-time MIMO systems. *IEEE Transactions on Neural Networks and Learning Systems, 2015, 26(1): 165−176 doi:  10.1109/TNNLS.2014.2360724
    [11] 11 Liu L, Wang Z, Zhang H. Adaptive fault-tolerant tracking control for MIMO discrete-time systems via reinforcement learning algorithm with less learning parameters. *IEEE Transactions on Automation Science and Engineering, 2017, 14(1): 299−313 doi:  10.1109/TASE.2016.2517155
    [12] 12 Xu X, Yang H, Lian C, Liu J. Self-learning control using dual heuristic programming with global laplacian eigenmaps. *IEEE Transactions on Industrial Electronics, 2017, 64(12): 9517−9526 doi:  10.1109/TIE.2017.2708002
    [13] 13 Wei Q-L, Liu D-R. Adaptive dynamic programming for optimal tracking control of unknown nonlinear systems with application to coal gasification. IEEE Transactions on Automation Science and Engineering, 2014, 11(4): 1020−1036 doi:  10.1109/TASE.2013.2284545
    [14] 14 Jiang Y, Fan J-L, Chai T-Y, Li J-N, Lewis L F. Data-driven flotation industrial process operational optimal control based on reinforcement learning. IEEE Transactions on Industrial Informatics, 2017, 14(5): 1974−1989
    [15] 15 Jiang Y, Fan J-L, Chai T-Y, Lewis L F. Dual-rate operational optimal control for flotation industrial process with unknown operational model. IEEE Transactions on Industrial Electronics, 2019, 66(6): 4587−4599 doi:  10.1109/TIE.2018.2856198
    [16] 16 Modares H, Lewis F L. Automatica integral reinforcement learning and experience replay for adaptive optimal control of partiallyunknownconstrained-input. Automatica, 2014, 50(1): 193−202 doi:  10.1016/j.automatica.2013.09.043
    [17] Mnih V, Silver D, Riedmiller M. Playing atari with deep reinforcement learning. In: NIPS Deep Learning Workshop 2013, Lake Tahoe, USA: NIPS 2013, 1−9
    [18] 18 Wang D, Liu D-R, Wei Q-L, Zhao D-B, Jin N. Automatica optimal control of unknown nonaffine nonlinear discrete-time systems basedon adaptive dynamic programming. Automatica, 2012, 48(8): 1825−1832 doi:  10.1016/j.automatica.2012.05.049
    [19] 19 Chai T-Y, Jia Y, Li H-B, Wang H. An intelligent switching control for a mixed separation thickener process. Control Engineering Practice, 2016, 57: 61−71 doi:  10.1016/j.conengprac.2016.07.007
    [20] 20 Kim B H, Klima M S. Development and application of a dynamic model for hindered-settling column separations. Minerals Engineering, 2004, 17(3): 403−410 doi:  10.1016/j.mineng.2003.11.013
    [21] 21 Wang L-Y, Jia Y, Chai T-Y, Xie W-F. Dual rate adaptive control for mixed separationthickening process using compensation signal basedapproach. IEEE Transactions on Industrial Electronics, 2017, PP: 1−1
    [22] 王猛. 矿浆中和沉降分离过程模型软件的研发. 东北大学, 2011

    Wang Meng. Design and development of model software of processes of slurry neutralization, sedimentation and separation. Northeastern University, 2011
    [23] 唐谟堂. 湿法冶金设备. 中南大学出版社, 2009

    Tang Mo-Tang. Hydrometallurgical equipment. Central South University, 2009
    [24] 王琳岩, 李健, 贾瑶, 柴天佑. 混合选别浓密过程双速率智能切换控制. 自动化学报, 2018, 44(2): 330−343

    24 Wang Lin-Yan, Li Jian, Jia Yao, Chai Tian-You. Dual-rate intelligent switching control for mixed separation thickening process. Acta Automatica Sinica, 2018, 44(2): 330−343
    [25] 25 Luo B, Liu D-R, Huang T-W, Wang D. Model-free optimal tracking control via critic-only Q-learning. IEEE Transactions on Neural Networks and Learning Systems, 2016, 27(10): 2134−2144 doi:  10.1109/TNNLS.2016.2585520
    [26] 26 Padhi R, Unnikrishnan N, Wang X-H, Balakrishnan S N. A single network adaptive critic (SNAC) architecture for optimal controlsynthesis for a class of nonlinear systems. Neural Networks, 2006, 19(10): 1648−1660 doi:  10.1016/j.neunet.2006.08.010
  • [1] 李晓理, 王康, 于秀明, 苏伟. 基于CPS框架的微粉生产过程多模型自适应控制[J]. 自动化学报, doi: 10.16383/j.aas.2018.c180387
    [2] 张耀中, 胡小方, 周跃, 段书凯. 基于多层忆阻脉冲神经网络的强化学习及应用[J]. 自动化学报, doi: 10.16383/j.aas.c180685
    [3] 张绍杰, 吴雪, 刘春生. 执行器故障不确定非线性系统最优自适应输出跟踪控制[J]. 自动化学报, doi: 10.16383/j.aas.2018.c170300
    [4] 孙景亮, 刘春生. 基于自适应动态规划的导弹制导律研究综述[J]. 自动化学报, doi: 10.16383/j.aas.2017.c160735
    [5] 王鼎, 穆朝絮, 刘德荣. 基于迭代神经动态规划的数据驱动非线性近似最优调节[J]. 自动化学报, doi: 10.16383/j.aas.2017.c160272
    [6] 陈兴国, 俞扬. 强化学习及其在电脑围棋中的应用[J]. 自动化学报, doi: 10.16383/j.aas.2016.y000003
    [7] 王康, 李晓理, 贾超, 宋桂芝. 基于自适应动态规划的矿渣微粉生产过程跟踪控制[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150808
    [8] 王澄, 刘德荣, 魏庆来, 赵冬斌, 夏振超. 带有储能设备的智能电网电能迭代自适应动态规划最优控制[J]. 自动化学报, doi: 10.3724/SP.J.1004.2014.01984
    [9] 张化光, 张欣, 罗艳红, 杨珺. 自适应动态规划综述[J]. 自动化学报, doi: 10.3724/SP.J.1004.2013.00303
    [10] 张吉烈, 张化光, 罗艳红, 梁洪晶. 基于广义模糊双曲模型的自适应动态规划最优控制设计[J]. 自动化学报, doi: 10.3724/SP.J.1004.2013.00142
    [11] 刘德荣, 李宏亮, 王鼎. 基于数据的自学习优化控制:研究进展与展望[J]. 自动化学报, doi: 10.3724/SP.J.1004.2013.01858
    [12] 陈杰, 李志平, 张国柱. 变结构神经网络自适应鲁棒控制[J]. 自动化学报, doi: 10.3724/SP.J.1004.2010.00174
    [13] 魏庆来, 张化光, 刘德荣, 赵琰. 基于自适应动态规划的一类带有时滞的离散时间非线性系统的最优控制策略[J]. 自动化学报, doi: 10.3724/SP.J.1004.2010.00121
    [14] 罗艳红, 张化光, 曹宁, 陈兵. 一类控制受约束非线性系统的基于单网络贪婪迭代DHP算法的近似最优镇定[J]. 自动化学报, doi: 10.3724/SP.J.1004.2009.01436
    [15] 赵冬斌, 刘德荣, 易建强. 基于自适应动态规划的城市交通信号优化控制方法综述[J]. 自动化学报, doi: 10.3724/SP.J.1004.2009.00676
    [16] 魏庆来, 张化光, 崔黎黎. 基于数据自适应评判的离散2-D系统零和博弈最优控制[J]. 自动化学报, doi: 10.3724/SP.J.1004.2009.00682
    [17] 石宇静, 柴天佑. 基于神经网络与多模型的非线性自适应广义预测控制[J]. 自动化学报, doi: 10.1360/aas-007-0540
    [18] 张天平. 基本积分型李亚普诺夫函数的直接自适应神经网络控制[J]. 自动化学报
    [19] 孙富春, 孙增圻, 张钹. 基于观测器的机械手神经网络自适应控制[J]. 自动化学报
    [20] 倪先锋, 陈宗基, 周绥平. 基于神经网络的非线性学习控制研究[J]. 自动化学报
  • 加载中
图(13) / 表(4)
计量
  • 文章访问数:  227
  • HTML全文浏览量:  104
  • PDF下载量:  11
  • 被引次数: 0
出版历程
  • 收稿日期:  2019-05-10
  • 录用日期:  2019-08-15
  • 修回日期:  2019-07-02
  • 网络出版日期:  2019-12-25

基于强化学习的浓密机底流浓度在线控制算法

doi: 10.16383/j.aas.c190348
    作者简介:

    北京科技大学计算机与通信工程学院博士研究生, 2017年获得北京科技大学计算机科学与技术系学士学位, 主要研究方向为自适应动态规划和强化学习. E-mail: b20170324@xs.ustb.edu.cn

    北京科技大学计算机与通信工程学院硕士研究生. 2017年获得北京信息科技大学计算机科学与技术系学士学位. 主要研究方向为流体仿真和强化学习. E-mail: hrz.claire@gmail.com

    2009年获北京交通大学计算机科学学士学位, 2016年获北京交通大学信息科学研究所博士学位. 2014年至2015年, 他在瑞士洛桑联邦理工学院担任访问博士. 2016年至2018年, 他在北京邮电大学传感技术与商业研究所担任博士后. 自2018年以来, 他一直是北京科技大学的助理教授. 他目前的研究方向包括图像和视频处理以及计算机视觉. E-mail: yaochao@ustb.edu.cn

    北京科技大学计算机与通信工程学院硕士研究生, 主要研究方向为自适应动态规划, 自适应控制, 强化学习. E-mail: lijia1117@foxmail.com

    北京科技大学教授, 中国人工智能学会常务理事. 研究领域: 人工智能、自然人机交互、三维可视化技术. 本文的通信作者. E-mail: banxj@ustb.edu.cn

    本科就读于北京科技大学, 主要研究方向为蒙特卡罗树搜索、强化学习. E-mail: i@lixiaorui.xyz

基金项目:  国家重点基础研究发展计划(No. 2016YFB0700500), 国家自然科学基金(No. 61572075, No. 61702036, No. 61873299)资助

摘要: 复杂过程工业控制一直是控制应用领域研究的前沿问题. 浓密机作为一种复杂大型工业设备广泛用于冶金、采矿等领域. 由于其在运行过程中具有多变量、非线性、高时滞等特点, 浓密机的底流浓度控制技术一直是学界、工业界的研究难点与热点. 本文提出了一种基于强化学习技术的浓密机在线控制算法. 该算法在传统启发式动态规划 (Heuristic dynamic programming, HDP)算法的基础上, 设计融合了评价网络与模型网络的双网结构, 并提出了基于短期经验回放的方法用于增强评价网络的训练准确性, 实现了对浓密机底流浓度的稳定控制, 并保持控制输入稳定在设定范围之内. 最后, 通过浓密机仿真实验的方式验证了算法的有效性, 实验结果表明本文提出的方法在时间消耗、控制精度上优于其他算法.

 1(Mean Square Error, MSE)=$\frac{1}{T} \sum_{k=1}^{T}\left|(y(k)-y^*(k))\right|^{2}$ 2(Max Absolute Error, MAE)=$\max _{1 \leq k \leq T}\{|y(k)-y^*(k)|\}$ 3(Integral Absolute Error, IAE)=$\frac{1}{T} \sum_{k=1}^{T}\left|(y(k)-y^*(k))\right|$

English Abstract

  • 在现代复杂过程工业生产中, 对控制性能指标进行优化是不同控制算法、控制系统的首要任务. 在冶金、采矿领域等复杂过程工业场景下, 浓密机是一种被广泛应用的大型沉降工具, 它通过重力沉降作用可以将低浓度的固液混合物进行浓缩形成高浓度的混合物, 起到减水、浓缩的作用. 在对浓密机进行控制时, 底流浓度是核心控制指标. 该参量与其他过程监控变量如进料流量、进料浓度、出料流量、泥层高度有着复杂的耦合关系. 在大部分的实际生产过程中, 浓密机底流浓度的控制一般是操作员根据个人经验, 通过对底流流量设定值、絮凝剂流量设定值进行调节, 间接地使底流浓度追踪其工艺设定值. 但是由于浓密机运行过程具有非线性、多变量、高时滞等特点, 操作员难以维持底流浓度持续稳定, 浓度存在偏差的底流会导致产品质量退化以及增加工业生产成本.

    浓密机是一种典型的复杂过程工业设备, 关于过程工业设备优化控制的研究一直是工业界、学术界研究的热点问题. 对于机械结构明确、且能够精确建立动态模型的工业设备, 可以采用基于模型的优化控制方法, 如: 实时优化控制(realtime optimization, RTO)[1]、模型预测控制(model predictive control, MPC)[2]等. 但由于浓密机系统机械结构复杂、部分变量难以观测, 因此难以建立准确的数学模型近似其运转机理, 导致基于模型的方法无法适用于此类复杂工业设备的控制. 研究人员提出了基于数据驱动的控制方法来实现对此类无模型工业设备的控制. Dai等[3]提出了用于解决赤铁矿研磨系统控制问题的数据驱动优化(Date driven opimization, DDO)控制算法. Wang等[4]采用基于数据驱动的自适应评价方法解决连续时间未知非线性系统的无穷范围鲁棒最优控制问题.

    近年来, 基于强化学习[5][6]理论的最优控制技术, 也称为自适应动态规划(Adaptive dynamic programming, ADP)[7][8][9]技术, 是控制领域的研究热点话题. 典型的自适应动态规划算法, 如HDP、双启发式动态规划(Dual heuristic programming, DHP)、动作依赖启发式动态规划(Action dependent heuristic dynamic programming, ADHDP)[8]等均采用多个神经网络分别对被控系统动态模型、控制策略、策略评价模型进行建模. 此类方法可以在模型未知的情况下以数据驱动的方式在线学习控制策略. Liu等[10]提出了一种在线自适应动态规划算法用来解决离散时间多输入多输出仿射系统控制问题, 且该方法仅需要训练少量网络参数. Liu等[11]采用一种基于强化学习的自适应跟踪控制技术解决多输入多输出系统容错控制问题. Xu等[12]采用拉普拉斯特征映射算法提取被控系统全局特征, 并将该全局特征用于DHP算法中以增强值函数网络的近似能力.

    近年来, 利用自适应动态规划方法解决过程工业控制问题也取得很大研究进展. Wei等[13]将煤炭气化过程的最优追踪控制转化为双人零和最优控制问题, 并采用迭代自适应动态规划方法求解最优控制率, 同时给出了收敛稳定性的分析. Jiang等[14]利用穿插学习策略迭代(Interleaved Learning Policy Iteration, ILPL)实现了对浮选过程操作指标优化的控制, 获得了比传统值函数迭代(Value iteration, VI)、策略迭代(Policy iteration, PI)算法更佳的控制效果. Jiang等[15]将强化学习与举升方法结合(lifting technology), 实现了对浮选过程设备层与操作层双速率系统的最优控制.

    上述算法均使用被控系统实时生成的数据对神经网络进行训练, 该训练方法忽略了系统在短期内产生的历史轨迹数据对模型学习的影响. 同时, 在工业场景下进行设备在线控制对算法实时性要求较高. 上述方法对于控制量的计算均依托于表征控制策略的神经网络, 而对于控制网络或动作网络的训练将产生较大的时间开销. 为了解决上述问题, 本文引入了短期经验回放技术[16][17]以对短期内的系统运行轨迹数据进行回放训练. 实验证明该技术有效增强了算法收敛稳定性, 且在其他ADP类在线控制算法中具有通用性. 同时本文根据浓密机系统特性提出了一种迭代梯度优化算法, 该算法可以在没有动作网络的情况下求解控制输入量. 实验表明该方法能够在提升控制精度的同时, 减少模型学习过程中产生的时间消耗.

    本文主要贡献总结如下:

    ● 提出了一种基于ADP算法架构的启发式评价网络值迭代算法 (Heuristic critic network value iteration, HCNVI). 该算法仅通过评价网络、模型网络和梯度优化算法即可求解系统最优控制输入.

    ● 提出了一种适用于评价网络训练的短期经验回放技术. 训练评价网络时, 将短期内系统运行轨迹数据共同用于模型训练, 该方法可以有效增强评价网络收敛速度.

    ● 通过浓密机仿真实验验证了HCNVI算法的有效性. 实验结果表明本文提出方法在时间消耗、控制精度上均优于其他对比方法.

    本文正文部分组织如下: 第一章, 对浓密机沉降过程进行形式化描述. 第二章, HCNVI算法介绍以及利用该算法实现浓密机在线控制. 第三章, 通过两组仿真实验验证本文提出控制模型的有效性. 第四章对本文研究工作进行总结.

    • 浓密机在采矿、冶金领域是重要的沉降分离设备, 其运行过程如图1所示. 低浓度的料浆源源不断地流入浓密机顶部进料口. 利用沙粒的密度大于水的特性以及絮凝剂的絮凝作用, 料浆中沙粒不断沉降, 并在浓密机底部形成高浓度的底流料浆. 高浓度的底流料浆多以管道输送的形式流至其他工业设备进行后续加工处理.

      图  1  浓密过程示意图

      Figure 1.  Illustration of thickening process.

      对于浓密沉降控制过程的性能进行评价, 其核心控制指标为底流浓度$ y $. 该因素受控制输入、系统状态参量、及其他外部噪音扰动影响. 控制输入包括底流泵转速$ u_1(k) $以及絮凝剂泵转速$ u_2(k) $, 系统状态参量为泥层高度$ h(k) $, 外部噪音输入为进料流量$ c_1(k) $、进料浓度$ c_2(k) $. 由于在部分工业场景中, 上游工序产生的物料浓度、物料流量是不可控的. 为了使提出的浓密机控制模型具有通用性, 因此本文将进料状态作为噪音输入量. 浓密机进料颗粒大小, 进料成分都会对浓密机底流浓度产生影响. 不过由于此类变量无法观测且波动较小, 为了简化问题, 本文假定其保持恒定. 根据上述定义, 其中$ {{u}}(k) = [u_1(k),u_2(k)] \in \mathbb{R}^2 $为可控制输入量, $ {{c}}(k) = $$ [c_1(k),c_2(k)] \in \mathbb{R}^2 $为不可控但是可观测的噪音量, $ h(k) \in \bf R $为系统状态量, 该参量是表征当前浓密机状态的重要参量, 它可被间接控制但不作为控制目标. 因此, 浓密机系统可表述为式(1)形式的非线性系统, 其中$ f ( \cdot ) $为未知非线性函数.

      $$ [y ( k + 1 ), h(k+1)]^{\rm T} = f ( y(k), {{u}} ( k ) ,{{c}} ( k ) ,h(k)) $$ (1)

      本文提出的浓密机底流浓度控制算法, 可以根据当前底流浓度$ y(k) $、泥层高度$ h(k) $、进料流量$ c_1(k) $、进料浓度$ c_2(k) $几个状态量, 自动地调节底流泵速$ u_1(k) $和絮凝剂泵速$ u_2(k) $, 使底流浓度$ y(\cdot) $追踪其设定值$ y^* $.

    • 当前, 工业场景下控制浓密机的方法主要依靠操作员手工控制. 操作员根据生产经验给出絮凝剂添加量的设定值($ m^3/h $)以及底流流量设定值($ m^3/h $), 浓密机内相配套的回路控制系统会根据设定值的大小自动调节絮凝剂泵速($ HZ $)与底流泵速($ HZ $), 使絮凝剂的实时流量、底流实时流量追踪操作员给出的设定值. 然而, 由于浓密机系统的复杂性, 操作员难以实时、完整地掌握系统运行参数, 因此无法及时、准确地设定目标点位. 这导致在实际生产过程中, 浓密机常常处于非最优工作状态, 底流浓度大范围频繁波动, 偏离理想的底流浓度.

      对于浓密过程式(1), 控制系统的首要目标是使底流浓度$ y(k) $, 追踪其设定值$ y^*(k) $. 另外, 为了保证系统运行安全与仪器寿命, 控制输入必须满足一定的限制条件. 综合上述指标因素, 可以将浓密机控制问题转化为有约束的最优化问题式(2).

      $$ \begin{split} &{\mathop {\min }\limits_{{{u}}(k)} \;\;\;\;\;J(k) = \sum\limits_{l = k}^\infty {{\gamma ^{l - k}}} U(l)}\\ &{\rm{s}}.{\rm{t}}. {{{[y(k + 1),h(k + 1)]}^{\rm{T}}} = f(y(k),{{u}}(k),{{c}}(k),h(k))}\\ &\qquad{{u_{i\min }} \le {u_i}(k) \le {u_{i\max }},i = 1,2} \end{split}$$ (2)
      $$ \begin{split} U ( k ) =\;& Q \left( y ( k ) - y ^ { * } \right) ^ { 2 } + \\ &\left( {{u}} ( k ) - \frac { {{u}} _ { mid } } { 2 } \right) ^ { \rm{T} } R \left( {{u}} ( k ) - \frac { {{u}}_{mid} } { 2 } \right) \end{split} \hspace{15pt} $$ (3)

      $ J(k) $为折扣累计评价值函数, 用来评估控制策略的好坏. 式(3)是效用函数, 代表在当前状态$ y(k) $下, 执行控制输入$ {{{u}}}(k) $需要承受的代价. $ \gamma \in (0,1] $是折扣因子, 代表系统短期控制过程中产生的惩罚值在累计惩罚项所占比重. $ Q>0 $, $ R $是对称正定矩阵, $ u _{i\min} $, $ u _{i\max} $分别代表对$ u _ { i } ( k ) $的限制, ${{u}}_{mid} = $$ \dfrac{{{u}} _ { \max } + {{u}} _ { \min }}{2} $.

    • 本节根据对式(2)的定义, 求解理想情况下最优控制输入$ {{u}}^*(k) $.

      式(2)可以表示为式(4)贝尔曼方程的形式:

      $$ \begin{split} J \left( k \right) =\;& U(k) + \gamma \sum\limits_ { l = k + 1 } ^ { \infty } \gamma ^ { l- k - 1 } U \left( l \right) =\\ & U(k) + \gamma J \left( k+1\right) \end{split} $$ (4)

      根据贝尔曼最优原则, 第$ k $时刻的最优评价值函数$ J^*(k) $满足离散哈密顿 − 雅可比 − 贝尔曼方程

      $$ J ^ { * } \left( k \right) = \mathop {\min }\limits_{{{u}}_k} \left\{ U(k) + \gamma J ^ { * } \left( k+1 \right) \right\} $$ (5)

      $ k $时刻, 最优的控制输入$ {{u}}^*(k) $可以表示为

      $$ {{u}} ^ { * } \left( k \right) = \arg \mathop {\min }\limits_{{{u}}_k} \left\{ U(k) + \gamma J ^ { * } \left(k+1 \right) \right\} $$ (6)

      由于式(1)中$ f(\cdot) $是复杂非线性函数, 无法直接对式(5)进行求解, 但可以利用算法1以值函数迭代的方式求解最优值函数和最优控制律, 其中$ x(k) $用于表征系统状态, $ {{x}}(k) = [y(k), h(k),{{c}} ( k )^{\rm T} ]^{\rm T} $. 根据文献[18], 可以证明当$ i\rightarrow \infty $时, 值函数$ V _ { i } \rightarrow J ^ { * } $, 控制律$ {{u}} _ { i } \rightarrow {{u}} ^ { * } $.

      Algorithm 1 值迭代算法

      初始化: 随机定义$V_0$(·)

      1: 定义控制约束集合$ \Omega _ {{{u}}} \!=\! \{{{u}}:{{u}} _ {\rm { min } } \!\leq \! {{u}} \!\leq \! {{u}} _ { \rm { max } }\} $

      2: for $ i=0,1,2,\cdots,\infty $ do

      3:  策略改进

      $$ {{u}} _ { i } \left( k \right) = \arg\mathop {\min}\limits_{{{u}}_{k}\in \Omega_{{{u}}}} U(y(k),{{u}}(k)) + \gamma V _ { i } ({{x}}(k+1))$$ (7)

      4:  策略评估

      $$ V _ { i + 1 } \left( {{x}}(k) \right) = U(y(k),{{u}}_i(k)) + \gamma V _ { i } ({{x}}(k+1)) $$ (8)
    • 本小节将基于算法1, 提出一种启发式评价网络值迭代算法. 该算法能根据浓密机系统产生的实时监测数据$ {{x}}(k) $进行在线学习, 并产生满足$ \Omega_{{{u}}} $约束的控制输入量$ {{{u}}}(k) $, 且最小化$ J(k) $. 算法整体结构如图2所示. HCNVI算法中包含两个神经网络, 分别是模型网络和评价网络. 神经网络均采用单隐层人工神经网络, 其基本结构如图3所示. 模型网络的训练全部离线进行, 在控制任务开始后, 将不再对模型网络参数进行调整. 控制动作决策算法根据浓密机实时反馈状态$ {{x}}(k) $计算控制变量$ {{{u}}}(k) $并用于浓密机系统控制, $ {{u}}(k),{{x}}(k) $被放入短期经验数据暂存区存储. 模型训练时, 由短期经验暂存区提供训练数据供模型训练. 算法学习过程中, 仅评价网络参数发生改变.

      图  2  HCNVI算法结构示意图

      Figure 2.  Structure diagram of algorithm HCNVI

      图  3  人工神经网络结构示意图

      Figure 3.  Structure diagram of artificial neural network

      评价网络. HCNVI采用一个称为评价网络的神经网络来近似算法1中的$ V(\cdot) $函数. 神经网络选择单隐层人工神经网络, 其基本结构如图3所示. 评价网络的具体定义如下:

      $$ \hat { J } ( k ) = W _ { c 2 } \tanh \left( W _ { c 1 } ( {{x}} ( k ) ) \right) $$ (9)

      $ \tanh(x) = \dfrac{{\rm e}^{x}-{\rm e}^{-x}}{{\rm e}^{x}+{\rm e}^{-x}} $是网络的激活函数, 网络输入层包含4个节点, 隐层包含14个节点, 输出层1个节点$ , W _ { c 1 } $$ W _ { c 2 } $内参数均初始化为$ -1\sim 1 $之间的随机数. 该模型采用由浓密机控制过程中产生的在线数据进行网络训练. 为了保证算法更新的实时性, 本文采用单步时序差分误差(Temporal difference error, TD error)[5]计算评价网络估计误差值, 见式(10).

      $$ e_{c }(k) = \hat{J}(k)-(\gamma \hat{J}(k+1)+U(k)) $$ (10)

      网络损失函数为$ E_c(k) = e_c^2(k) $. 通过极小化该目标函数, 可以使评价网络根据被控系统反馈的状态信号及效用值信号, 增量式地逼近对于当前控制策略的评价函数. 使用链式法则可以计算损失值$ E_c{k} $对网络参数的梯度:

      $$ \begin{split}& \dfrac{\partial e_c^2(k)}{\partial W_{c2}} = 2e_c(k) \tanh(W_{c1}{{x}}(k))^{\rm T} \\& \dfrac{\partial e_c^2(k)}{\partial W_{c1}} = 2e_c(k) [W_{c2}^{\rm T}\odot(1-\tanh^2(W_{c1}{{x}}(k)))]{{x}}(k)^{\rm T} \end{split} $$ (11)

      采用梯度下降算法对评价网络进行训练更新:

      $$ W_{ci}(k) = W_{ci}(k)-l_{c} \frac{\partial e_{c }^{2}(k)}{\partial W_{ci}(k)} $$ (12)

      $ l_c $是学习率, 由于浓密机所处环境的外界噪音是不断波动的, 当外界噪音$ {{c}}(k) $改变时, 网络需要根据训练数据快速收敛, $ l_c $需设定为固定值以保持学习能力.

      由于不同物理量的取值差异很大, 这会导致网络无法有效学习并且造成超参数设定困难. 因此本文采用浓密机系统产生的离线数据中各参量的极值对所有训练数据利用式(13)进行归一化放缩.

      $$ \overline{z} = \frac{2\left(z-z_{\min }\right)}{z_{\max }-z_{\min }}-1 $$ (13)

      模型网络. 建立模型网络用来对系统动态进行建模, 根据当前系统状态、外部噪音量、控制输入、预测下一时刻底流浓度和泥层高度变化. 网络结构仍采用单隐层神经网络, 如图3所示. 模型网络具体定义如下:

      $$ [\hat{y}(k+1), \hat{h}(k+1)]^{\rm T} = W_{m 2} \tanh \left(W_{m 1}( {{\phi}}(k))\right) $$ (14)

      其中$ {{\phi}} (k) = [{{x}}(k)^{\rm T}, {{u}}(k)^{\rm T}]^{\rm T} $, 网络输入层包含6个节点, 隐层包含20个节点, 输出层2个节点, $ W _ { m1 } $$ W _ { m 2 } $内各个参数均初始化为$ -1\sim 1 $之间的随机数. 通过梯度下降方法训练模型网络:

      $$ W_{mi}(k) = W_{m i}(k)-l_{m } \frac{\partial E_{m}(k)}{\partial W_{m i}(k)} $$ (15)

      损失函数$ E_{m}(k) $定义为:

      $$ E_{m}(k) = \frac{1}{2} {{e}}_{m}^{\rm T}(k){{L}}_{m}{{e}}_{m}(k) \hspace{13pt}$$ (16)
      $$ \begin{split} e_{m}(k) =\;& [\hat{y}(k+1), \hat{h}(k+1)]^{\mathrm{T}}-\\ &[y(k+1),h(k+1)]^{\mathrm{T}} \end{split} $$ (17)

      对于模型网络, 同样采用式(13)对训练数据进行放缩. 模型网络的训练全部离线进行, 在控制任务开始后, 将不再对模型网络进行调整.

    • 大部分的ADP类算法都是通过建立一个动作网络来计算控制输入, 并利用评价网络输出值更新动作网络的参数. HCNVI方法以HDP算法架构为基础, 去掉了动作网络, 直接利用评价网络和模型网络计算控制动作. 该方法可以在环境噪音改变时, 使被控系统更快速地收敛, 并且减少内存占用以及削减训练时间的消耗.

      利用评价网络和模型网络计算控制动作$ {{{u}}}(k) $的过程如算法2所示. 式(19)中在估计$ k+1 $时刻的折扣累计惩罚时, 下一时刻浓密机系统所处外界噪音是未知的. 不过由于真实工业环境下进料噪音都是连续变化的, 很少出现突变, 因此本模型用当前时刻噪音$ {{c}}(k) $来充当下一时刻噪音$ {{c}}(k+1) $.

      Algorithm 2 利用迭代梯度下降算法计算控制动作

      输入: 第k时刻系统状态 $y(k),h(k),{{c}}(k)$

      输出: 第k时刻的控制动作输出${{u}}(k)$

      1: 随机选取$ \begin{array}{c}{{{u}}_{0}=\left[v_{1}, v_{2}\right]^{\rm T}} \end{array} $

      2: $ {v_{1} \sim U(-1,1)} , {v_{2} \sim U(-1,1)} $

      3: $ i=0 $

      4: do

      5:  预测以$ {{u}}_i $为控制输入情况下, 下一时刻 系统状态

      $$ [\hat{y}(k+1), \hat{h}(k+1)] = W_{m 2} \tanh \left(W_{m 1}\left({{x}}(k),{{u}}_{i}\right)\right) $$ (18)

      6:  令$ \hat{{{x}}}(k+1)=[\hat{y}(k+1), \hat{h}(k+1),{{c}}(k)^{\rm T}]^{\rm T} $, 估计$ k+1 $时刻评价值

      $$ \hat{J}(k+1) = W_{c 2} \tanh \left(W_{c 1}(\hat{{{x}}}(k+1))\right) $$ (19)

      7:  计算第$ k $时刻评价值

      $$ \hat{J}(k) = U\left(y_{k}, {{u}}_{i}\right)+\gamma \hat{J}(k+1) $$ (20)

      8:  利用梯度下降算法对$ {{u}}_i $进行更新

      $$ {{u}}_{i+1} = {{u}}_i-l_u * \frac{\partial \hat{J}(k)}{\partial {{u}}_{i}} $$ (21)

      9:  将$ {{u}}_{i+1} $限定在$ \Omega_{{{u}}} $的约束内

      $$ {{u}}_{i+1} = max([-1,-1]^{\rm T}, min([1,1]^{\rm T},{{u}}_{i+1})) $$ (22)

      10:  $ i=i+1 $

      11: while $ \left\|{{u}}_{i+1}-{{u}}_{i}\right\|>\epsilon_{a} $ and $ i<Na $

      12: 反归一化$ {{{u}}}(k) $

      $$ {{u}}(k) = \frac{{{u}}(i+1) \odot\left({{u}}_{\max }-{{u}}_{\min }\right)}{2}+{{u}}_{mid } $$ (23)

      13: return $ {{u}}(k) $

      为了验证算法2的有效性, 本文对式(20)中$ \hat{J}(k) $$ {{{u}}}(k) $的关系及迭代求解$ {{u}}_i(k) $的过程进行了可视化探究. 在实验一3.1介绍的仿真实验中挑选了三个时刻分析了$ \hat{J}(k) $$ {{{u}}}(k) $之间的函数关系. 图4中的三个子图分别代表训练开始阶段、第一次系统达到稳态时、第二次系统达到稳态时的可视化结果. 横纵坐标代表被归一化后的底流泵速和絮凝剂泵速, 颜色深浅代表$ \hat{J}(k) $的大小. 黄色箭头线代表利用算法2寻找最优控制输入$ {{{u}}}(k) $的梯度下降轨迹. 根据实验结果发现: 在网络训练的三个阶段中, 图中颜色最深的点, 即$ \hat{J}(k) $的最小位置是唯一的, 且不存在其他局部最优解. 黄色箭头线能够准确地收敛至全局最优解. 该结果说明由于浓密机运行过程缓慢, 某一时刻的控制输入$ {{{u}}}(k) $对下一时刻浓密机状态$ {{x}}(k+1) $影响相对较小, 且评价网络式(9)和效用函数式(3)具有连续、可微的性质, 因此$ \hat{J}(k) $$ {{{u}}}(k) $变化的分布函数一般情况下为单峰函数. 采用梯度下降算法可以有效地寻找到全局最优的$ {{u}}^*(k) $, 而不会收敛到局部最优解, 进而满足式(7)的最小化条件,实现最优控制.

      图  4  迭代梯度下降过程可视化

      Figure 4.  Visualize the process of iterative gradient decline

    • 为了增加评价网络训练的准确性和收敛速度, 本文进一步提出短期经验回放方法优化网络训练损失函数, 并计算优化梯度. 短期经验回放方法将式(10)的误差值计算方法修改为

      $$ e_{c}(k) = \frac{1}{L} \sum_{i = 0}^{L-1} \hat{J}({{x}}(k-i)) - (U(k-i)+\gamma \hat{J}({{x}}(k-i+1))) $$ (24)

      通过存储短期内被控系统的运行轨迹数据, 在训练过程中, 短期轨迹数据可以用来共同计算评价网络的损失值以及优化梯度方向.

      HDP、DHP以及本文提出的HCNVI算法都是面向状态值函数进行建模的在线控制算法, 其策略模块的更新都是以模型网络作为媒介, 计算评价网络输出值$ \hat{J}(k) $对于控制输入$ {{{u}}}(k) $的梯度, 并在此梯度基础上更新动作网络或者利用算法2优化$ {{{u}}}(k) $. 因此对于$ {{{u}}}(k) $梯度估计的准确性极大地影响了策略模块的更新效果, 进而影响整个控制系统的控制效果与收敛速度. $ {{{u}}}(k) $的梯度表达式为式(25)

      $$ \nabla {{u}}(k) = \gamma\frac{\partial {{x}}(k+1)}{\partial {{u}}(k)}\frac{\partial\hat{J}(k+1)}{\partial {{x}}(k+1)}+\frac{\partial U(k)}{\partial {{u}}(k)} $$ (25)

      式中的$ \dfrac{\partial\hat{J}(k+1)}{\partial {{x}}(k+1)} $也称为$ (k+1) $时刻的协状态${{\lambda}}(k+ $$ 1) $, 代表了评价网络输出值对于系统状态量的梯度. 模型网络可以利用系统离线数据进行训练, 在训练数据量充足时可以达到极高的精度, 可以近似认为$ \dfrac{\partial {{x}}(k+1)}{\partial {{u}}(k)} $的估计是足够精确的. $ {{{U}}}(k) $作为确定的效用函数, $ \dfrac{\partial U(k)}{\partial {{u}}(k)} $也是确定的. 因此对于$ \nabla {{u}}(k) $的估计误差主要来源于对协状态$ {{\lambda}}(k+1) $的估计误差.

      对于浓密机等大型过程工业设备来说, 系统的运行过程缓慢, 短时间内系统状态不会发生剧烈改变, 即$ {{x}}(k)\approx {{x}}(k+1) $, 且评价网络具有连续可微的性质. 因此可以近似认为$ {{\lambda}}(k)\approx {{\lambda}}(k+1) $. 同样, 由于系统的运行过程缓慢会导致提供给控制模型学习的训练数据中系统状态参量分布非常集中, 可以近似认为式(26)成立.

      $$ \forall 1 \leq t<L, \| {{x}}(k-t)-{{x}}(t)||<\delta $$ (26)

      该式表明短期内系统状态点$ {{x}}(k-t) $都在以$ {{x}}(k) $为中心, $ \delta $为半径的领域内. 通过式(24)将短期$ L $条数据共同用于评价网络训练, 可以使评价网络在$ {{x}}(k) $的邻域内学习地更佳充分, 进而更准确地估计$ {{\lambda}}(k) $.

      为了更直观地展示增加短期经验回放对评价网络学习过程的影响, 本文对实验一3.1节中的评价网络进行了可视化, 实验结果如图5所示. 该实验中采用等高线图对评价网络的输出值进行展示, 其中图5(a)代表不使用经验回放, 利用式(10)训练网络, 图5(b)代表使用短期经验回放, 回放数据点数$ L $为2, 利用式(24)训练网络. 对于两种算法, 分别绘制了连续四次迭代中, 评价网络在更新后对不同泥层高度$ h(\cdot) $和底流浓度$ y(\cdot) $的评价值. 图中横纵坐标分别代表被归一化后的泥层高度和底流浓度. 根据实验结果发现. 在图5(a)中评价网络的输出值在不同输入下基本趋同. 且在当前时刻系统状态点附近, 网络输出值的梯度很小. 说明单数据点更新会造成评价网络很快地遗忘历史数据, 导致网络输出值整体漂移, 难以稳定地学习到正确的局部梯度. 在图5(b)中, 当前系统状态($ h(k) $, $ y(k) $)所处临域内, 网络输出值具有较大差异, 局部梯度值可以被较好地保持. 准确的梯度$ {{\lambda}}(k) $可以提高$ \nabla {{u}}(k) $估计的精确度, 因此对短期数据进行回放训练可以更好地指导控制策略输出更优控制动作, 促使评价网络和被控系统快速收敛. 同时, 当经验回放数据量式(24)中$ L $的过大, 会导致性能的退化. 其原因在于本文提出的方法是同策略(On-Policy)强化学习方法, 而时间相差较远的历史数据点不能表征由当前控制策略产生的控制轨迹, 因此评价网络会学习到错误的评价值. 另外, $ L $过大将不再满足性质式(26), 过多的历史数据回放将不再有助于评价网络学习$ {{x}}(k) $处的梯度值$ {{\lambda}}(k) $, 进而不会提高对$ \nabla {{u}}(k) $估计的精确度. 通过实验观察, 一般将$ L $限定在$ 5 $以内, 本文也将这种经验回放方法称为短期经验回放.

      图  5  短期经验回放对评价网络的输出值的影响

      Figure 5.  The effect of short-term experience replay on critic network

      将HCNVI算法用于浓密机控制的具体流程如算法3所示.

      Algorithm 3 利用HCNVI算法实现浓密机在线控制

      1: 使用浓密机运行离线数据, 用式(15)训练模 型网络

      2: $ k=0 $

      3: while k<T do

      4:  根据浓密机系统获得$ y(k), h(k),{{c}}(k) $

      5:  if $ k\geq 1 $ then

      6:   $ i=0 $

      7:   do

      8:    令$ L=\min(L_c, k) $, 用式(24)求解 $ e_c(k) $

      9:    利用式(12)训练评价网络

      10:    $ i=i+1 $

      11:    while $ i<N_c $ and $ e_c(k)^2>\epsilon _c $

      12:  利用算法2求解$ {{{u}}}(k) $

      13:  将$ {{{u}}}(k) $作用于浓密机系统, 并等待$ T_d $ 分钟.

      14:  $ k=k+1 $

    • 浓密机仿真模型. 由于在真实工业场景下进行浓密机控制实验成本较高, 本节采用浓密机仿真模型验证本文提出控制算法的有效性, 模型构建方法参考了[19][20][21][22][23][24]. 该仿真模型建立在如下假设基础上:

      ● 进料都是球形颗粒.

      ● 絮凝剂在浓密机的静态混合器中作用完全.

      ● 流体的扩散以固液混合物形式进行.

      ● 忽略颗粒间相互作用、浓密机中把机中轴的影响.

      模型推导过程中出现的变量如表1, 表2, 表3所示

      表 1  参量定义

      Table 1.  Variables definition

      变量含义量纲初始值补充说明
      $f_{i}(t)$进料泵频$Hz$40扰动量
      $f_{u}(t)$底流泵频$Hz$85控制量
      $f_{f}(t)$絮凝剂泵频$Hz$40控制量
      $c _ { i } ( t )$进料浓度$kg/m^3$73扰动量
      $h(t)$泥层高度$m$1.48状态量
      $c_u(t)$底流浓度$kg/m^3$680目标量

      表 2  仿真模型常量

      Table 2.  Definitions for constant variables

      变量含义量纲参考值
      $\rho _s$干砂密度$kg/m^3$4 150
      $\rho _e$介质表观密度$kg/m^3$1 803
      $\mu _ { e }$悬浮体系的表观粘度$Pa \cdot s$1
      $d_0$进料颗粒直径$m$0.00008
      $p$平均浓度系数0.5
      $A$浓密机横截面积$m^2$300.5
      $k_s$絮凝剂作用系数$s/m^2$0.157
      $k_i$压缩层浓度系数$m^3/s$0.0005*3600
      $K_i$进料流量与进料泵频的系数$m^3/r$50/3 600
      $K_u$底流流量与底流泵频的系数$m^3/r$2/3 600
      $K_f$絮凝剂流量与絮凝剂泵频的系数$m^3/r$0.75/3 600
      $\theta$压缩时间$s$2 300

      表 3  部分变量计算方法

      Table 3.  Definitions for part intermediate variables

      变量含义公式
      $q_i(t)$进料流量$q _ { i } ( t ) = K _ { i } f _ { i } ( t )$
      $q_u(t)$底流流量$q _ { u } ( t ) = K _ { u } f _ { u } ( t )$
      $q_f(t)$絮凝剂添加量$q _ { f } ( t ) = K _ { f } f _ { f } ( t )$
      $d(t)$絮凝作用后的颗粒直径$d ( t ) = k _ { s } q _ { f } ( t ) + d _ { 0 }$
      $u_t(t)$颗粒的干涉沉降速度$u _ { t} ( t ) = \dfrac { d ^ { 2 } ( t ) \left( \rho _ { s } - \rho _ { e } \right) g } { 18 \mu _ { e } }$
      $u_r(t)$底流导致的颗粒下沉速度$u _ { r } ( t ) = \dfrac { q _ { u } ( t ) } { A }$
      $c_l(t)$泥层高度处单位体积含固量$c _ { l } ( t ) = k _ { i } q _ { i } ( t ) c _ { i } ( t )$
      $c_a(t)$泥层界面内单位体积含固量$c _ { a } ( t ) = p \left[ c _ { l } ( t ) + c _ { u } ( t ) \right]$
      $r(t)$泥层内液固质量比$r(t)=\rho_{l}\left(\dfrac{1}{c_ a(t)}-\frac{1}{\rho_s}\right)$
      $W ( t )$单位时间进入浓密机内的固体质量$W ( t ) = c _ { i } (t ) q _ { i } ( t )$

      由文献[23],可得泥层高度与泥层液固质量比之间的关系.

      $$ h(t) = \frac{W(t) \theta}{A \rho_{s}}+\frac{W(t) \theta}{A}r(t) $$ (27)

      根据固体守恒定律, 泥层内固体质量变化量等于由进料导致泥层内固体量增加量与底流导致泥层内固体减少量的差. 因此可以建立泥层内平均单位体积含固量与粒子沉降速度的关系.

      $$ \frac{\mathrm{d}\left[c_{a}(t) A h(t)\right]}{\mathrm{d} t} = c_{l}(t)\left[u_{t}(t)+u_{r}(t)\right] A-c_{u}(t) u_{r}(t) A $$ (28)

      对式(28)做变形可得式(29)

      $$ \begin{split} c_{a}(t) \frac{\mathrm{d} h(t)}{\mathrm{d} t}+h(t) p \frac{\mathrm{d} c_{u}(t)}{\mathrm{d} t} =\;& c_{l}(t)\left[u_{t}(t)+u_{r}(t)\right] A- \\ &c_{u}(t) u_{r}(t) A \end{split} $$ (29)

      联立式(29), 式(27), 可得泥层高度$ h(t) $与底流浓度$ c_u(t) $的一阶变化率

      $$ \frac{d h(t)}{d t} = -\frac{W(t) \theta}{A c_{a}^{2}(t)}*\dfrac{ c_{l}(t)\left[u_{t}(t)+u_{r}(t)\right]-c_{u}(t) u_{r}(t)}{h(t)-c_{a}(t) \dfrac{W(t) \theta}{A c_{a}^{2}(t)}} $$ (30)
      $$ \frac{d c_{u}(t)}{d t} = \frac{c_{l}(t)\left[u_{t}(t)+u_{r}(t)\right]-c_{u}(t) u_{r}(t)}{p(h(t)-c_{a}(t) \dfrac{W(t) \theta}{A c_{a}^{2}(t)})} $$ (31)

      在该仿真模型中, 絮凝剂泵速$ f_f $和底流泵速$ f_u $是控制输入$ {{u}} = [f_u,f_f]^{\rm T} $, 进料泵速$ f_i $和进料浓度$ c_i $是外部干扰量$ {{c}} = [f_i,c_i]^{\rm T} $, 底流浓度$ c_u $为控制系统追踪变量$ y = c_u $. 理想的控制系统能够在外界干扰量$ c $不断波动下, 通过在合理范围内调节$ u $, 驱使$ y $追踪其设定值$ y^* $. 根据真实生产情况对部分变量做如下定义: $ {{u}}_{\rm{min}} = [40,30] $, $ {{u}}_{\rm{max}} = [120,50] $, $y_{\rm{min}} = $$ 280 $, $ y_{\rm{max}} = 1200 $, $ {{c}}_{\rm{min}} = [40,30] $, $ {{c}}_{\rm{max}} = [120,50] $, $ y^* = 680 $. 接下来本章节将基于浓密机仿真模型式(30)、式(31), 分别进行两组实验验证在两种类型噪音量$ {{c}}(k) $输入下HCNVI模型的控制效果, 并与其他算法进行比较.

    • 第一组实验中设置干扰量输入$ {{c}} $为恒定值, 并在某一时刻为其增加阶跃突变, 噪音输入量如图6所示. 该实验用来验证控制模型能否在浓密机外在环境发生大幅度变化下, 快速寻找到$ {{u}}^* $, 使被控模型达到理想收敛稳态.

      图  6  噪音量变化曲线

      Figure 6.  Noise input in the simulation experiment

      使用本文提出的HCNVI算法与HDP、DHP、ILPL算法进行对比实验. 仿真实验参数如下: 迭代轮次$ T = 270 $, 仿真步长$ T_d = 120\;s $, $ Q = 0.004 $, $ \gamma = $$ 0.6 $, $ N_a = 4000 $, $ N_c = 500 $, $ \epsilon _c = 0.001 $, $ \epsilon _a = 0.0001 $, $ l_m = 0.01 $, $ l_c = 0.01 $, $ l_a = 0.009 $, $ l_u = 0.4 $, $ L_c = 2 $, $ {{{L}}_{{m}}} = [0.01,3] $. 其中HDP、DHP算法也使用短期经验回放, 回放点数$ L $为2. 实验中HDP、ILPL、HCNVI的评价网络结构相同, 且网络参数初始化为相同数值. 实验结果如图7所示.

      图  7  HCNVI与其他ADP算法在恒定噪音输入下的对比

      Figure 7.  HCNVI versu other ADP algorithms under stable noisy input

      根据实验结果可以发现, 对于不同控制算法, 由于网络参数初始值均为随机设定值, 训练初期底流浓度有较大幅度的波动, 且在设定值两侧持续震荡. 随着各个控制模型的学习, 系统状态与网络参数不断趋于平稳, 直到某一时刻底流浓度开始稳定并与设定值重合且不再产生波动, 此时控制模型参数也不再发生变化, 被控系统和控制模型同时收敛到最优态. 从效用值变化曲线也可以看出, 早期由于底流浓度与其设定值偏差较大, 效用值较高. 但是随着模型与系统趋于稳态, 效用值$ {{{u}}}(k) $不断缩减直到接近于0的位置. 到达270分钟时, 系统进料浓度、进料流量发生突变, 底流浓度无法维持稳态, 开始远离设定值. 控制模型根据噪音量改变后的系统所产生的轨迹数据重新训练, 将底流浓度拉回设定值位置. 由于在第一阶段控制模型已经到达过一次稳态, 在第二阶段仅需要少量迭代就可以使系统重归理想收敛稳态. 通过观察不同控制算法产生的系统轨迹, 可以发现不同控制算法到达最优态所需的时间有较大差别, 且在收敛到最优态的过程中, 底流浓度的波动也有较大差异. 在实验第一阶段, 为使系统达到稳态, HCNVI算法所需要的迭代次数更少, 训练过程中产生的底流浓度振幅也更小. 并且在噪音量改变后, HCNVI算法可以迅速地使模型重归最优态, 且底流浓度几乎未发生大幅度波动.

      HCNVI的快速收敛能力主要来源于其采用迭代算法2得出的$ {{{u}}}(k) $严格满足式(7)的最小化条件, 可以使评价网络更快地收敛到最优评价值函数. 而其他ADP算法中引入了动作网络, 这会使策略的更新存在一定的滞后性, 进而拖慢评价网络的训练速度.

      为了验证短期经验回放技术对控制算法性能的影响, 本文分别对比了无经验回放、使用短期经验回放($ L = 2 $)情况下HDP、HCNVI的控制性能. 对比结果如图8所示. 在本实验中, 仅比较了两种算法的效用值变化, 效用值越快地收敛到0说明算法控制效果越佳. 通过观察图8(a)图8(b)中无经验回放情况下的效用值变化曲线, 可以发现曲线波动较大. 相比于使用短期经验回放, 无经验回放情况下控制模型需要更多的迭代轮次才能够使系统达到收敛. 特别是在图7(a)的HCNVI的实验中, 270分钟时系统噪音输入量改变, 效用值开始剧增, 底流浓度开始偏离设定值, 评价网络的学习结果如图5(a)中的第四部分所示. 评价网络对当前状态点$ {{x}}(k) $的局部梯度估计有较大偏差, 使得利用算法2求解的$ {{{u}}}(k) $并没有驱使底流浓度向其设定值移动, 被控系统无法收敛. 但在增加了短期经验数据回放后, 无论是本文提出的HCNVI算法还是HDP算法, 效用函数值可以快速收敛至最低点, 有效实现对被控系统的控制. 该实验结果表明短期经验回放技术对于控制模型的收敛速度改善效果明显, 且对不同ADP算法具有通用型.

      图  8  短期经验回放对HDP与HCNVI的影响

      Figure 8.  The influence of short-term experience replay on HDP and HCNVI

      另外本文进行了十组实验来对比HCNVI算法在时间上的优势. 选取HDP算法作为参考对象, $ T = 270 $, 结果如图9所示. 由于每次实验中网络初始值不同, 系统运行轨迹以及模型训练过程也不同, 因此每组实验中模型学习以及控制所需的累积时间略有差异. 但是从多次实验结果可以看出, 由于 HCNVI算法中去掉了动作网络, 仅需要训练评价网络, 所以模型整体训练时间大大缩减, 尽管算法2中计算控制输入所需时间相比于HDP算法直接利用动作网络前向传播求解控制动作所需时间长, 但是HCNVI算法总消耗时间明显少于HDP算法.

      图  9  实验一中HDP与HCNVI在时间消耗上的对比

      Figure 9.  Comparison of time consuming in HDP and HCNVI in experiment 1

      前人研究表明[25][26], 在启发式动态规划类算法中, 去掉动作网络可以有效减少模型训练时间. 但是在某些复杂系统控制问题中, 去除动作网络会使模型难以拟合复杂策略函数, 最终导致控制效果变差. 在本文的实验中, 由于浓密机系统运行缓慢且具有较高时滞性, 当前时刻控制输入量$ {{{u}}}(k) $$ \hat{{{x}}}(k+1) $的影响较小, 即对$ \hat{J}(k) $的影响较小. 因此利用算法2求解的$ {{{u}}}(k) $满足式(7)的最小化条件. 而在HDP、DHP、ILPL等方法中采用神经网络拟合出的控制策略, 难以输出严格满足式(7)的$ {{{u}}}(k) $, 算法2的最优性代表HCNVI可以最大程度地利用评价网络给出的协状态信息优化当前控制策略, 进而获得更高的控制效果. 但HCNVI方法也具有一定的局限性, 当被控系统状态变化速率较快, $ \hat{J}(k) $$ {{{u}}}(k) $变化的分布函数不再是单峰函数, 算法2求解出的$ {{{u}}}(k) $极容易陷入到局部最优解, 算法控制效果及收敛速度必然变差. 而此时在HDP、DHP、ILPL等方法中采用神经网络拟合的控制策略往往能够给出相对更优、鲁棒性更强的控制动作$ {{{u}}}(k) $, 其控制效果与收敛速率必然优于HCNVI算法.

    • 实验一中仿真模型的进料状态是恒定的, 只在某一时刻产生突变, 其目的是为了更好地观察不同控制算法的收敛速度. 而真实工业场景下, 浓密机的进料浓度和进料流量是实时波动的. 在本节实验中, 进料流量和进料浓度两个噪音量持续波动, 用来模仿真实工业场景下的浓密机系统环境. 噪音输入的单步变化增量服从高斯分布, 进料波动变化如图10所示.

      图  10  噪音量变化曲线

      Figure 10.  The fluctuation of noisy input

      $$ \begin{split}& c(k+1) = c(k)+\Delta c \\ & \Delta c \sim N(\mu = 0 , \Sigma = \operatorname{diag}(0.6,0.6)) \end{split} $$ (32)

      本实验中HCNVI控制器参数与实验一3.1节中的算法参数相同, 迭代轮次$ T = 270 $, 仿真步长$ T_d = 120\;s $. 利用该仿真模型再次对比HCNVI与其他算法控制性能的差异, 结果如图11所示.

      图  11  HCNVI与其他ADP算法在波动噪声输入下的对比

      Figure 11.  HCNVI versu other ADP algorithms under fluctuate noisy input

      通过观察实验结果发现在环境噪音连续变化条件下, 浓密机底流浓度会发生持续震荡. 随着对模型参数的不断训练, 各个算法的控制性能趋于平稳, 由于进料噪音导致的底流浓度波动稍有减弱. 对比不同控制算法的控制性能, 可以发现HCNVI相比于其他ADP算法能够更快地将底流浓度锁定在设定值临域范围内, 且浓度振幅小于其他算法. 从效用值变化曲线也可以看出, 相比于其他算法, HCNVI算法的效用值整体较小, 且在训练后期几乎0.

      该实验结果与实验一3.1中进料噪音突变条件下的实验结果相吻合. HCNVI算法在外界噪音频繁改变时, 可以更快地响应外部变化, 快速调节评价网络参数, 将底流浓度稳定在目标值附近. 其他算法由于增加了动作网络产生了训练滞后性, 进而导致无法快速适应外部环境的变化, 使其控制性能差于HCNVI.

      表4给出了不同算法在实验一3.1和实验二3.2节中底流浓度控制性能指标对比结果. 相比其他算法, HCNVI算法可以更好地控制底流浓度稳定在其设定值附近, 其控制总体稳定性(由MSE、IAE体现)、控制鲁棒性(由MAE体现)更佳. 在过程工业控制场景中, 控制系统的MAE指标尤为重要, 某一工序的物料性质发生剧烈波动会使下游物料加工工序出现连带波动, 严重影响生产的稳定性和最终产品的质量. HCNVI算法在MAE指标上的优势证实了其在过程工业控制问题中的适用性.

      表 4  不同控制算法之间性能分析

      Table 4.  Performances analysis of different algorithms

      实验组实验一实验二
      对比指标MSEMAEIAEMSEMAEIAE
      HDP414.182141.8547.2466 105.619275.07554.952
      DHP290.886109.3125.392732.81496.14516.560
      ILPL364.397135.4748.2892 473.661211.61535.222
      HCNVI44.44566.6043.867307.61876.17612.998

      图12展示在环境噪音持续变化条件下, 不使用经验回放和使用短期经验回放($ L = 2 $)两种情况下HCNVI算法控制性能. 在无经验回放情况下, 底流浓度稳定性明显较差, 且效用值明显较高, 使用短期经验回放($ L = 2 $)后模型控制效果较好. 实验结果表明, 短期经验回放技术在环境噪音持续变化下仍对模型控制效果与收敛速度有重要促进作用.

      图  12  噪音持续变化下短期经验回放对HCNVI的影响

      Figure 12.  The influence of short-term experience replay on HCNVI

      为了展现在噪音持续变化条件下, HCNVI算法在时间上的优势, 再次重复了十次实验对比了HCNVI算法与HDP算法的时间消耗, $ T = 270 $. 实验结果如图13所示. 在噪音持续变化环境下, HCNVI 算法和HDP算法的总时间消耗相比于图9中的结果均有增加. 这是由于当外部环境存在持续扰动时, 被控系统和控制模型参数不再如实验一3.1节中达到稳定态, 而是始终处于震荡状态, 被控系统轨迹数据不断变化. 每轮学习过程中, 为了满足评价网络的精度$ e_{c}(k)^{2}<\epsilon_{c} $所需要的训练迭代次数增加, 进而导致评价网络训练所需时间及模型总体训练时间增加. 但通过横向对比HCNVI算法与HDP算法的总时间消耗, HCNVI算法在训练和执行控制过程中所需的总时间消耗仍明显少于HDP, 说明利用算法2替代动作网络所产生的时间消耗削减在噪音连续波动条件仍十分明显.

      图  13  实验二中HCNVI算法与HDP算法在时间消耗上的对比

      Figure 13.  Comparison of time consuming in HDP and HCNVI in experiment 2

    • 本文提出了基于强化学习的自适应控制算法HCNVI, 该算法通过构建用于识别系统动态方程的模型网络以及用于估计折扣累计代价的评价网络来解决浓密机控制问题. 该方法可以在对浓密机系统未知的情况下, 仅利用浓密机系统输出数据以及历史运行数据即可实现在线学习并获得较好的控制效果. 另外本文提出的短期经验回放技术可以很好地增强评价网络训练的稳定性, 在其他自适应动态规划算法中也具有较好通用性. 根据仿真实验验证结果可以发现, 相比其他在线ADP算法, 由于HCNVI算法模型结构简单, 且具有较高的学习敏捷性, 因此在浓密机仿真系统控制问题中, HCNVI算法消耗了更少的训练时间但获得了更优的控制效果. 但是HCNVI算法也存在自身的局限性, 其去掉动作网络的可行性是建立浓密机具有运行缓慢、稳定的特性基础之上的. 但是当被控系统相对复杂且不再具有此特性时, 如系统状态量变化过程并不连续或系统运行速度较快, HCNVI依靠迭代算法求解的控制量难以保持最优性, 控制性能极有可能产生退化. 如何使HCNVI算法以及其他无动作网络类自适应动态规划类算法适用于此类复杂被控系统, 在优化训练时间消耗的同时保证其控制性能与收敛速度, 将是未来非常有意义的研究方向.

参考文献 (26)

目录

    /

    返回文章
    返回