HCR强化学习智能应用之赋能工业(下)
强化学习能够解决燃煤工业锅炉控制中很多“怎么办”的问题:
-
生产任务(热量需求)会持续变化,煤炭质量参差不齐,如何调整送煤量既满足需求又不浪费?
-
既要保证安全运行,又要保证煤炭充分燃烧,还要尽量减少空气带走的热量,如何精细化调整风机转速?
1首先要明确环境和交互
智能体:一个虚拟的实体(如阿尔法狗),通过与环境交互来学习控制策略。
环境:即要面对的任务(图中地球),如棋局、锅炉等。
交互:即面对环境智能体可以采取的动作(图中Action),如下棋时可以落子、烧锅炉时可以送煤、鼓风等。
2其次要定义学习目标
反馈:当采取行动后会导致状态发生变化,强化学习算法通过奖励值函数评估每个状态的优劣,做出惩罚或奖励(即图中reward) 。
目标:是指希望最终到达的状态,如赢得比赛、煤炭利用率最高。
奖励值函数:是强化学习的关键,设置恰当的奖励函数能够指引智能体达到目标。
例如,目标是取得比赛胜利,一种奖励函数值是对“比赛胜利”状态反馈奖励值1,其他状态反馈奖励值-1。
3最后要确定算法来寻找最优策略
策略:面对环境状态,策略(Policy)决定如何采取动作,最优策略在任何状态下选择的动作都能最快到达目标(累计奖励值最大)
算法:算法学习的目标是找到最优策略,算法从一无所知开始(随机策略),通过与环境交互、获得反馈来找到最优策略。
燃煤工业锅炉主要包括:
-
炉膛:燃烧的容器
-
给煤机:向炉膛内送煤
-
炉排:煤炭在炉排上燃烧并送出(类似传送带)
-
鼓风机:向锅炉内送风
-
引风机:从炉膛向外排气
-
吸热管网:吸收热量
-
传感器:实时采集锅炉状态,如负压、温度等
这里面有两个概念要需要重点讲一下:
-
一个是负压,如果锅炉火焰蹿到炉膛外会降低热效率、威胁人员设备安全,将炉膛内压力保持在略小于大气压状况(引风机向外抽气实现)可以避免此类危害,称炉膛为负压状态。
-
另一个是运行负荷,运行负荷是指锅炉的有效热量输出(用于供暖等),可以通过进水温度、出水温度、水流量计算得到。
来看下我们建立的强化学习模型:
环境:锅炉,环境状态包括:传感器采集的炉膛负压、温度、水温等;各组件运行状态:煤机、风机转速等。
交互动作:调整煤机、炉排、风机转速等。
目标:
-
安全:负压控制涉及到锅炉运行安全,道路千万条,安全第一条,安全问题容不得有丝毫马虎;
-
完成负荷输出任务:锅炉运行的意义在于提供热量输出,满足工业生产需求义不容辞;
-
节约煤炭:每节约一点煤炭都能为企业降低生产成本。
由目标确定反馈奖励值评估方法:
-
负压值超出安全区间,奖励值为指数级负数(巨大的惩罚)
-
负荷输出没有满足需求,奖励值为指数级负数(巨大的惩罚)
-
煤炭消耗量,奖励值为线性级负数(适当惩罚)
我们的奖励函数如下:
其中,PI为炉膛负压与理想范围偏离值,GL为锅炉负荷低于任务值, AR为煤炭消耗速度。
算法与策略:
锅炉燃烧控制是一个典型的连续空间寻优问题,我们基于Actor-Critic算法实现。我们创建一个智能体Agent(类似阿尔法狗),是一位专注于锅炉控制的好学生。
Agent从一无所知开始,通过大量实践来寻找锅炉控制的最佳策略,他会不断探索,通过实践来寻找最优策略,使长期reward最大(累计惩罚最少)。
到目前,我们已经把整个模型讲完了,程序也可以按部就班地开发出来了,但是我们无法直接应用到工业生产中。
阿尔法狗训练了数百万次才学会下围棋,在赢得比赛之前,它输了无数次。但是在工业领域中,一次失败代表一次锅炉事故,我们一次也不能失败,这也是大部分强化学习应用局限于游戏领域的原因。
如何解决这个问题呢?我们想到了向老师傅学习、以及现有数据分析。
首先,我们通过分析大量真实锅炉运行数据、集成一线专家经验,基于深度学习构建一个模拟环境。
随后,Agent通过与模拟环境交互来进行实践,在模拟环境内练习锅炉控制过程,不断优化控制策略。Agent学习的上限是我们模拟环境的真实程度,当模拟环境越接近真实环境时,Agent学习得到的策略越好。
然后,当Agent策略基本稳定后,我们会对Agent的策略进行评估,例如当锅炉负压值很大的时候,Agent采取什么样的行动;当输出负荷没有达到任务值的时候Agent会采取什么样的行动。
最后,当Agent的策略得到老师傅的认可后,我们将Agent应用到真实的锅炉控制中去(同时还需要有工作人员实时监督,这样Agent在控制生产锅炉时能做到不犯大错)。当系统长时间稳定运行之后(如稳定运行两个月),Agent就可以独立工作啦(学成出徒了)。
强化学习在实际工业应用中存在学习成本过大的问题,如何快速低成本地训练强化学习模型是影响其应用的关键。
我们利用深度学习和专家经验知识来降低学习成本,最终将强化学习应用于工业领域来降低生产成本、提高资源利用率。
通过在工业领域中运用强化学习技术来解决实际业务问题,HCR已经积累了一套可行的实践经验,相关算法已经申请专利,后续将拓展到更多的应用领域。