HCR强化学习智能应用之赋能工业(下)

来源:HCR慧辰资讯 时间:2019-07-23 08:15:28

 

强化学习能够解决燃煤工业锅炉控制中很多“怎么办”的问题:

 

  • 生产任务(热量需求)会持续变化,煤炭质量参差不齐,如何调整送煤量既满足需求又不浪费?

     

  • 既要保证安全运行,又要保证煤炭充分燃烧,还要尽量减少空气带走的热量,如何精细化调整风机转速?


 1首先要明确环境和交互

 

智能体:一个虚拟的实体(如阿尔法狗),通过与环境交互来学习控制策略。

 

环境:即要面对的任务(图中地球),如棋局、锅炉等。

 

交互:即面对环境智能体可以采取的动作(图中Action),如下棋时可以落子、烧锅炉时可以送煤、鼓风等。


 2其次要定义学习目标

 

反馈:当采取行动后会导致状态发生变化,强化学习算法通过奖励值函数评估每个状态的优劣,做出惩罚或奖励(即图中reward) 

 

目标:是指希望最终到达的状态,如赢得比赛、煤炭利用率最高。

 

奖励值函数:是强化学习的关键,设置恰当的奖励函数能够指引智能体达到目标。

 

例如,目标是取得比赛胜利,一种奖励函数值是对“比赛胜利”状态反馈奖励值1,其他状态反馈奖励值-1。


 3最后要确定算法来寻找最优策略

 

策略:面对环境状态,策略(Policy)决定如何采取动作,最优策略在任何状态下选择的动作都能最快到达目标(累计奖励值最大)

 

算法:算法学习的目标是找到最优策略,算法从一无所知开始(随机策略),通过与环境交互、获得反馈来找到最优策略。

燃煤工业锅炉主要包括:

 

  • 炉膛:燃烧的容器

  • 给煤机:向炉膛内送煤

  • 炉排:煤炭在炉排上燃烧并送出(类似传送带)

  • 鼓风机:向锅炉内送风

  • 引风机:从炉膛向外排气

  • 吸热管网:吸收热量

  • 传感器:实时采集锅炉状态,如负压、温度等

     

这里面有两个概念要需要重点讲一下:

 

  1. 一个是负压,如果锅炉火焰蹿到炉膛外会降低热效率、威胁人员设备安全,将炉膛内压力保持在略小于大气压状况(引风机向外抽气实现)可以避免此类危害,称炉膛为负压状态。

     

  2. 另一个是运行负荷,运行负荷是指锅炉的有效热量输出(用于供暖等),可以通过进水温度、出水温度、水流量计算得到。

 

来看下我们建立的强化学习模型:

 

环境:锅炉,环境状态包括:传感器采集的炉膛负压、温度、水温等;各组件运行状态:煤机、风机转速等。

 

交互动作:调整煤机、炉排、风机转速等。

 

目标

  1. 安全:负压控制涉及到锅炉运行安全,道路千万条,安全第一条,安全问题容不得有丝毫马虎;

  2. 完成负荷输出任务:锅炉运行的意义在于提供热量输出,满足工业生产需求义不容辞;

  3. 节约煤炭:每节约一点煤炭都能为企业降低生产成本。

 

由目标确定反馈奖励值评估方法:

  1. 负压值超出安全区间,奖励值为指数级负数(巨大的惩罚)

  2. 负荷输出没有满足需求,奖励值为指数级负数(巨大的惩罚)

  3. 煤炭消耗量,奖励值为线性级负数(适当惩罚)

 

我们的奖励函数如下:

其中,PI为炉膛负压与理想范围偏离值,GL为锅炉负荷低于任务值, AR为煤炭消耗速度。

 

算法与策略:

 

锅炉燃烧控制是一个典型的连续空间寻优问题,我们基于Actor-Critic算法实现。我们创建一个智能体Agent(类似阿尔法狗),是一位专注于锅炉控制的好学生。

 

Agent从一无所知开始,通过大量实践来寻找锅炉控制的最佳策略,他会不断探索,通过实践来寻找最优策略,使长期reward最大(累计惩罚最少)。

 

到目前,我们已经把整个模型讲完了,程序也可以按部就班地开发出来了,但是我们无法直接应用到工业生产中。

 

阿尔法狗训练了数百万次才学会下围棋,在赢得比赛之前,它输了无数次。但是在工业领域中,一次失败代表一次锅炉事故,我们一次也不能失败,这也是大部分强化学习应用局限于游戏领域的原因。

 

如何解决这个问题呢?我们想到了向老师傅学习、以及现有数据分析。

 

1

 

首先,我们通过分析大量真实锅炉运行数据、集成一线专家经验,基于深度学习构建一个模拟环境。

 

2

 

随后,Agent通过与模拟环境交互来进行实践,在模拟环境内练习锅炉控制过程,不断优化控制策略。Agent学习的上限是我们模拟环境的真实程度,当模拟环境越接近真实环境时,Agent学习得到的策略越好。

 

3

 

然后,当Agent策略基本稳定后,我们会对Agent的策略进行评估,例如当锅炉负压值很大的时候,Agent采取什么样的行动;当输出负荷没有达到任务值的时候Agent会采取什么样的行动。

 

4

 

最后,当Agent的策略得到老师傅的认可后,我们将Agent应用到真实的锅炉控制中去(同时还需要有工作人员实时监督,这样Agent在控制生产锅炉时能做到不犯大错)。当系统长时间稳定运行之后(如稳定运行两个月),Agent就可以独立工作啦(学成出徒了)。

 

 

<section powered-by="xiumi.us" style="margin: 0px; padding: 0px; max-width: 100%; box-sizing: border-box; color: rgb(51, 51, 51); font-family: -apple-system-font, BlinkMacSystemFont, " helvetica="" neue",="" "pingfang="" sc",="" "hiragino="" sans="" gb",="" "microsoft="" yahei="" ui",="" yahei",="" arial,="" sans-serif;="" letter-spacing:="" 0.544px;="" text-align:="" justify;="" word-wrap:="" break-word="" !important;"="">

强化学习在实际工业应用中存在学习成本过大的问题,如何快速低成本地训练强化学习模型是影响其应用的关键。

 

我们利用深度学习和专家经验知识来降低学习成本,最终将强化学习应用于工业领域来降低生产成本、提高资源利用率。

 

通过在工业领域中运用强化学习技术来解决实际业务问题,HCR已经积累了一套可行的实践经验,相关算法已经申请专利,后续将拓展到更多的应用领域。