Professional Documents
Culture Documents
.
学 校代 码
学 号
硕 士 学 位论文
( 学 术 学位
)
基 于 强 化 学 习 的 倒 立 摆 控 制 算 法研 究
杨文 乐
学 科 门 类 工 :
学
级 学 科 控 制 科 学 与 工 程
一
二 级 学 科 ; 控 制 理 论与 控 制 工 程
指 导 教 师 郑 :
崗 教授
徐开 亮 副 教 授
申 请 日 期 : 2 0 1 9 年 6
月
独 创 性 声 明
本人 所 呈 交 的 学 位 论 文 是 在 导 师 指 导 下 进 行 的 研 究 工 作 及 取 得 的 成 果 。
尽 我所 知
,
除 特 别 加 以 标注 的 地 方 外 论 文 中 不 包含 其 他 人 的 研 究 成 果 与我 同 工作 的 同 志 对本
一
, 。
文 的 研 究 工 作 和 成 果 的 任 何 贡 献 均 己 在 论 文 中 作 了 明 确 的 说 明 并 已 致谢
。
本 论 文 及 其 相 关 资 料 若有 不 实 之 处 , 由 本 人承 担
一
切相 关 责 任
。
论 文 作者 签名 :
年 《 月 ^ 日
学位论文使用 授权
本人 作 为 学 位 论 文 作 者 了 解 并 愿 意 遵 守 学 校 有 关 保 留 、
使 用 学位 论文 的 规 定 , 即
;
在 导 师 的 指 导 下 创 作 完 成 的 学 位论 文 的 知 识 产 权 归 西 安 理 工 大 学 所 有 , 本 人今 后 在 使 用
或 发 表 该 论文 涉 及 的 研 宄 内 容 时 ,
会注 明 西 安理 工大 学 。
西 安 理 工 大 学 拥 有学 位 论 文 的
如 下使用 权 , 包括 ; 学 校可 以 保 存 学 位 论 文 ;
可 以采用影 印 、
缩 印 或其 他 复 制 手 段 保 存
论文 ;
可 以査 阅或借 阅 。 本 人授 权 西 安 理 工 大 学 对 学 位论 文 全部 内 容编 入 公 开 的 数 据 库
进行检 索 。
本 学位 论 文全 部或 部 分 内 容 的 公布 ( 包 括 刊登 ) 授 权 西 安理 工大 学研 宄 生 院
办理
。
经 过 学 校保 密 办 公 室 确 定 密 级 的 涉密 学 位 论 文 , 按 照 相 关 保密 规 定 执 行
; 需 要进
行
技 术 保 密
的
学 位
论文 s
按
照
《
西 安
理工 大
学 学
位
论文 技 术 保
密
申 请 表 》
内 容
进 行 保 密
(
附
《
西 安
理工 大 学 学 位论 文
技
术
保 密 申 请表 》 )
。
保
密
的 学 位 论
文 在 解密 后
,
适 用 本 授 权
。
论
文 作
者
签 名
: 、 导 师 签 名 :
趣备 年
/
月 a
日
摘 要
论文题 目 :
基 于 强 化 学 习 的 倒 立 摆控 制 算 法 研 究
学 科名 称 : 控制 理 论 与 控 制 工 程
研 宄 生 : 杨 文 乐 签 名 : 亦V 戈 i
、
指 导教 师 : 郑 岗 教授 签 名
s
徐开 亮 副 教 授签 名 :
4^ 3 -
-
S
i
摘
要
科 技 时 代 人 工 智 能 充 斥 在我 们 生 活 的 各个领 域 从 A , , I
p ha G o 到 Al p h a Z er o 都 在涂释
着 它 的 强 大 机 器 学 习 作 为人 工 智 能 的 核 心 。 ,
是 使 计 算 机 具 有 智 能 的 根本 途 径 强 化 学 习
D
作 为 机器 学 习 研 究 领域 的 个 热 门 方 向 其 通过 智 能 体 与 环 境 的 交 互 作 用 从 中 汲 取 经 验
一
,
,
,
以 自 学 习 的 方 式 不 断 更 新改 进 控 制 策 略 , 逐 步 达 到 最 优或 近 优 控 制 效 果 a
由 于强 化学习 是
种 无模 型 无 监 督 的 机 器 学 习 方法 因 此 具 有通 用 性 强 适用 范围 广泛 参数 自 整定 等 优
一
, ^ ,
点 3
能 够 极 大 降 低 控 制 系 统 的 设 计难度 和 人 力 投 入 ,
具 有 广 阔 的 应 用 前景 。 因此 f
研究 强
化 学 习 具 有 重 要 的 理 论 价 值 和 实 际 工 程应 用 价 值
。
倒立摆系 统 是 个 多 变量 非 线 性 髙 阶次 强耦 合 的 不稳定系 统 能 够 模 拟反 映
一
、 、 、
自 ,
多 数 常见 的 控制对象 其 控 制 算 法 具 有 多 输入 单 输 出 的 特 点 因 而是 种 典 型 的 自 动控 制
一
, ,
理 论 研 宄 装置 。 以 该 问 题作 为 研 究 对 象 ,
能 够 有 效反 映 出 控 制 算 法在 实 际 应 用 系 统 中 的 随
动性 鲁 棒性 跟踪 及 镇 定性 等 问 题 因此 本文 以 级 直线 倒 立 摆 系 统 为 对 象 进行 深
一
、 、 。 , ,
度 强 化 学 习 算法 的 研 究 。 主要研 宄 内 容
以
及
成 果 如 下
;
( 1 )
对 强 化 学 习 的 基础 概 念进 行 介 绍 并 分 析
。
通过对 常 用
强 化学 习 算
法 的 理论 推 导
和
马
尔 科
夫 决 策
过 程 各 参 数 分 析
,
为强化 学 习 以 及深 度 强 化 学 习 算 法 在 倒
立摆 控 制 系 统
中
的 应 用 奠 定 了
理论 基
础
。
( 2 )
通过 O p
e n A I G
y
m 游戏 库
,
完
成 了
深 度 强 化学 习
D Q
N
算
法 双 、
网 络 D Q
N
算 法
、
法在 级直 立 平 衡控 表 三 控 法 可
速
一
P G
算 线 倒 摆 制 中 的 实 验 仿 真
^ ,
结 果 明 种 制 算 均 以 恢
完 成 训
练 ,
达 到
对 倒 立摆 的 平 衡 控 制
。
在 此基础 上 论 ,
文 进
一
步 研 究 测 试 了
三 种 不 同
r e w a r
d
给 定 方 式
对 算 法 的 影 响
, 通过 实 验 比
较 ,
发现 线 性化 ew
r a r d
方 式
具
有 最 快
的 训
练 速 度
,
从而 为
强
化
学
习 在 真 实 倒
立 摆
控 制 训 练
提 供
了
重要 经 验
。
建 基于 立 摆硬 件 验平 通过 控 对 立摆
一
3 ) P L C
( 直 5 P I D
搭 了 的 级 线 倒 实 台 制 算 法 倒
的 平 衡 控制 , 验证 了 实
验平 台 的 有 效 性 , 并 为
强
化 学 习
算
法
的 控
制 研 宄 提 供 了
测 试 基准
。
基于 D 法 现 级直 立摆 经过 练
合
一
( 4 ) N ,
实 了 。 5 0
Q 算 线 倒 的 起 摆 控 制 大 约 个 回
训
I
西安理工大学硕士学位论文
II
A b str a c t
T i tl e : R E S E A R C H O N N V E R T E D P E N D U L U M C O N T R O L A L G O R T H M
I
I
B A S E D O N R E N F O R C E M E M T L E A R M M G
S
I
Ma j
o r : D e te c t o nTe c h n o o g y a n d A u to m at
i l i c E
q u p m en
i
t
Ham e : Wen
l e YA N G S i g natu r e : I
a yl
T
S u p e rv i sor : P r o f G a n g Z H E N G S g n a t u
. i re
:
P ro f .
Ka i l i a n g X U S i g n at u re :Y j
/
(J
A bs t ra c t
In t h e age o f ec h n o l o if
art i c i al i n t el li g en ce is ub i qu ou s in all are as o f o u r l iv es fr o m
t
gy ,
i t
,
m n
p . i i i
g ,
fu nd ame nt al w a
yt o m ake c om p u te r s i n tel l i ge nt A s a h o t d i re c t on i n the f
mn nw
i eld o f
nm n n
ro
a ch i
e
n
*
i
nm uu m n n
le a sfr th e i terac tio
v
b e t ee th e a e n ta nd th e
w
g g g
mn m
e v iro n e n t,
an d c o n tin u o sly
u nm
d ate sa n d i ro e sth eco n tro lstrate i a self learn i
-
a
p p gy g
y
m
to g ra d all ach iev eo ti alo r -
nu n m
e ar o ti alc on tro le ffec ts.
B ec au se rei fo rc e en tle a rn in
m
y p p is
g
w
a o d el free a d n su
n m w
ervise d a ch i e le arn in eth o d ,
it h as th e ad v an ta
n
es o f stro n
u
p g g
g
i
f
-
unm w
v ersatilit , id e a ca tio n ran
om
p p li e se lf tu i f ar a e tc ,
ete rs, h ic h c an re atl
o
n n
y g , g o p , g y red ceth e
nm
d e si n d i c lt a d an o erin u to f
th ec tr ls e an d h a sb ro ad ap p lic atio
mn vn
g y p p y st ,
p
ro s ec ts.
p
T h ere fo re ,
th e stu d fre i fo rc e e n tle arn in
vu
y o g
h a s i
po
rta tth e oretic al alu e a d
p
rac tic al
en n
g i ee r
i n ga lic atio n al e.
mmm v n
u
p p
n m m
T h e in v erted e n d u lu s ste isa
u n m
u lti ar
i ab le , o n lin e ar,
h ig h o rd er,stro n g ly co
umom
mnn
p y led
p
m n
self stab les ste th a tc an si late o stc c o trolob e c ts .
Itsco tro lalg o r h as
u um
y o j i th
th e ch arac ter
n m
i stic s o f u lti le in u t a d sin g le o u t
nv
p p t, so it is a ty ic al a to atic .
C o n tro l
p p
wu
T ak i th is r b le asth e re se arch o b
n o mnr
p o ec t,
itc a e f ec ti ely refle c tth e
n a
g j
-
fo llo ro b stn e ss,
track in g a
nm u
mm
u p , d sta b iliz at
i o f th e c on tr o l alg orith i th e p ctic al
a lica tio nn -
nm
s ste .
T h erefo re ,
th isp ap ertak e sth e f
i rst ord erli
nu
e ari v e rte d en d u l s ste
mm n
pp y p y
asth eo b e cta d st d ie sth ed ee rei forc e e n tle arn in .
w
j p al o rith T h e ai rese arc h c o n te n ts
g g
unn
an d
resu ltsareasfollo
m
s:
n n u
l In tro d ce a d a al z e th e b a sic
mu m
c o n ce s o f rein forc e
vn m nn m nn
( ) y p t e t le arn i
g
.
T h ro
gh
th e
m M
th e o reticald eri of th e c o
v n
atio o nl sed re in fo rce e tle arn i al o r
i th a d th ea al sis
o mn
y g g y
I
西安理工大学硕士学位论文
learning and the application of the deep reinforcement learning algorithm in the inverted
pendulum control system is laid.
(2)Through the OpenAI Gym game library, the experimental simulation of deep
reinforcement learning DQN algorithm, dual network DQN algorithm and PG algorithm in the
balance control of the first linear inverted pendulum is completed. The results show that all
three control algorithms can complete the training quickly and achieve the balance control of
the inverted pendulum. On this basis, the paper further studies and tests the effects of three
different reward methods on the algorithm. Through experimental comparison, it is found that
the linearized reward method has the fastest training speed, which provides a reinforcement
learning for real inverted pendulum control training. Important experience.
(3)The hardware experiment platform of the first-level linear inverted pendulum based on
PLC is built. The balance control of the inverted pendulum is verified by the PID control
algorithm. The validity of the experimental platform is verified and the test benchmark is
provided for the control research of the reinforcement learning algorithm.
(4)Based on the DQN algorithm, the swing control of the first-order linear inverted
pendulum is realized. After about 100 training rounds, the control algorithm can swing the
pendulum from the sagging position to the upright position within 200 control cycles (one
control cycle is 20ms) to complete the inverted pendulum swing control.
(5)Based on Q-learning, the inverted pendulum balance control is studied. Aiming at the
limitations of real control environment, such as high noise, limited training and difficult to
obtain some training samples, an off-policy control algorithm with multi-training strategy is
designed. It can be obtained from artificial teaching or other control algorithms. Experience,
improve training efficiency, and thus quickly complete training and obtain better control effects
through limited experiments. Because the method effectively reduces the amount of
experimental training, so that the reinforcement learning algorithm can achieve better control
effects with less manpower input, and has made preliminary practice for the application of
reinforcement learning in practical engineering, and has a good application prospect.
Keywords:reinforcement learning; inverted pendulum; DQN algorithm; PG algorithm; Q
learning algorithm
II
目录
目录
1 绪论 ........................................................................................................................................... 1
1.1 研究背景及意义 ............................................................................................................. 1
1.2 国内外研究现状 ............................................................................................................. 1
1.2.1 强化学习研究现状 ............................................................................................... 2
1.2.2 深度强化学习研究现状 ....................................................................................... 2
1.2.3 倒立摆控制研究现状 ........................................................................................... 4
1.3 研究工作及内容安排 ..................................................................................................... 4
2 理论基础 ................................................................................................................................... 7
2.1 引言 ................................................................................................................................. 7
2.2 强化学习基础理论 ......................................................................................................... 7
2.2.1 强化学习基础概念 ............................................................................................... 7
2.2.2 马尔科夫决策过程(MDP) .............................................................................. 7
2.2.3 强化学习模型及四要素 ....................................................................................... 8
2.2.4 强化学习常用算法 ............................................................................................... 9
2.3 深度强化学习基础概念及常用算法 ........................................................................... 12
2.4 一级直线倒立摆基础理论 ........................................................................................... 14
2.5 小结 ............................................................................................................................... 16
3 基于深度强化学习的倒立摆平衡控制仿真实验 ................................................................. 17
3.1 引言 ............................................................................................................................... 17
3.2 基于 DQN 算法的倒立摆平衡控制仿真实验 ............................................................ 17
3.3 基于双网络 DQN 算法的倒立摆平衡控制仿真实验 ................................................ 20
3.4 基于 PG 算法的倒立摆平衡控制仿真实验 ................................................................ 22
3.5 小结 ............................................................................................................................... 23
4 基于 PLC 的倒立摆硬件实验平台搭建................................................................................ 25
4.1 引言 ............................................................................................................................... 25
4.2 实验平台搭建原理 ....................................................................................................... 25
4.3 基于 PID 的倒立摆平衡控制 ...................................................................................... 26
4.4 小结 ............................................................................................................................... 28
5 基于深度强化学习 DQN 算法的倒立摆起摆控制 .............................................................. 29
5.1 引言 ............................................................................................................................... 29
5.2 倒立摆起摆过程描述 .................................................................................................... 29
5.3 DQN 算法倒立摆起摆控制 .......................................................................................... 30
5.4 小结 ............................................................................................................................... 33
6 基于强化学习 Q 学习算法的倒立摆平衡控制 .................................................................... 35
I
西安理工大学硕士学位论文
6.1 引言 ............................................................................................................................... 35
6.2 Q 学习算法倒立摆平衡控制 ........................................................................................ 35
6.3 引入经验回放的 Q 学习算法倒立摆平衡控制 .......................................................... 39
6.4 改进型 Q 学习算法倒立摆平衡控制 .......................................................................... 40
6.5 实验结果对比 ............................................................................................................... 43
6.6 小结 ............................................................................................................................... 47
7 总结与展望 ............................................................................................................................. 49
7.1 总结 ............................................................................................................................... 49
7.2 展望 ............................................................................................................................... 49
致谢 ............................................................................................................................................. 51
参考文献 ..................................................................................................................................... 53
II
绪论
1 绪论
1.1 研究背景及意义
作为人工智能的核心,机器学习的根本目的是使计算机能够具备模拟甚至实现人类的
学习活动的能力,对它的研究可以促进人工智能的发展[1]。强化学习是目前机器学习研究
领域的一个热门方向,吸引了多个学科专家学者的目光。强化学习根源于机器学习与学习
心理学的融合,其根据动物学习心理学的相关原理知识,采用动物和人类学习中的“试错”
机制[2],一方面采用已经发现的有效行为,另一方面探索没有被发现的行为,通过智能体
与外界环境的交互获得即时反馈信息,做出最佳决策并采取行为。在人工智能领域由于其
卓越的决策能力而备受瞩目。然而,对于环境的特征提取需要依靠人工来完成,对于复杂
高维的问题就显得非常棘手,所以强化学习的发展始终受限,但近几年随着深度学习发展,
算法可以从原始的图像直接提取出高维数据的特征,为复杂环境的认知问题提供了一种新
的方法。由于深度学习具有强感知能力,弱决策能力,而强化学习具有强决策能力,但对
感知问题无法解决。因此,将两种算法结合起来,扬长避短,能够为复杂状态下的感知决
策问题提供思路。
倒立摆系统是一种典型的自动控制理论研究装置,在倒立摆系统的控制过程中能够有
效的反应随动性、鲁棒性、跟踪及镇定性等关键问题[3],因此,倒立摆系统逐渐成为广大
学者验证控制方法正确性及有效性的典型对象[4][5]。所以本文以一级直线倒立摆系统为载
体进行强化学习算法以及深度强化学习算法的研究。通过对近几年有关强化学习算法的文
献研究后,发现绝大多数都只是在仿真研究,在实物控制方面的研究非常少,众所周知,
在真实的工业现场环境中,会存在很多噪声干扰,与仿真的理想环境具有很大区别。本文
搭建了以 PLC 为核心的一级倒立摆硬件实验平台,在该硬件平台中电机转速较小,动态
性能一般,通过上位机与 PLC 之间的通信来驱动步进电机对倒立摆的控制,会存在一定
的时间滞后,齿轮换向也会出现打滑、间隙,还有种种摩擦带来的控制噪声,所以该平台
还原了部分真实工业现场的环境,通过该实验平台对强化学习以及深度强化学习的研究成
果,具有在实际工程领域的应用价值。
1.2 国内外研究现状
随着人类社会的飞速发展,强化学习以及深度强化学习在越来越多复杂的现实场景任
务中,取得了突破,利用深度学习来自动学习大规模输入数据的抽象表征,并以此表征为
依据进行强化学习的训练 [6] ,优化解决问题的策略。在很多挑战性领域中,谷歌的
DeepMind 人工智能研究团队构造并实现了人类专家级别的智能体(agent)。这些 agent
对自身知识的构建和学习都直接来自原始输入信号,无需任何的人工编码和领域知识[7]。
因此深度强化学习是一种端对端的感知与控制系统,有很强的通用性,具有广阔的应用前
景[8][9]。
1
西安理工大学硕士学位论文
1.2.1 强化学习研究现状
强化学习(Reinforcement Learning,RL)作为一类机器学习方法,最早可以追溯到
Thorndike 对动物心理学方面的研究,1954 年,Marvin Lee Minsky 遵循学习心理学中相关
理论在其博士论文中实现了一种人工学习系统,即随机神经模拟强化计算器[10],并于 1961
年正式提出强化学习概念,其理论的形成在上个世纪七八十年代,理论的基础为 1957 年
Bellman 提出的动态规划方法(Dynamic Programming,DP),即马尔科夫决策过程 [11][12]
(Markov decision progress),动态规划本质上讲是一种非线性规划方法,基本思想就是
将问题分解成一系列子问题,通过子问题的解,得到原问题的解[13]。1977 年,美国学者
Paul J. Werbos 首次提出了自适应动态规划(ADP),该方法有效地解决了动态规划"维数灾"
的难题[14]。1988 年,Sutton 将动态规划理论和蒙特卡洛算法相融合提出了时间差分算法,
基于时间差分的强化学习算法又叫 TD 算法[15],是当前强化学习研究领域的基础,1989
年,Watkin 提出了一种强化学习领域中的经典算法 Q 学习算法,该算法利用环境状态-
智能体执行动作组合而成的智能体奖励来完成对整个智能体决策过程的训练和设计
[16][17]
。1994 年,Rummry 提出 Sarsa 算法,其与 Q 学习算法同为单步更新,但更新的目
标值不同。1996 年 Bersekas 提出解决随机过程中优化控制的神经动态规划方法。2006 年
Kocsis 提出了置信上限树算法。2009 年 kewis 提出反馈控制只适应动态规划算法。2014
年 silver 提出确定性策略梯度(Policy Gradents)算法[18]。然而,对于环境的特征提取需
要依靠人工来完成,对于复杂高维的问题难以处理,所以强化学习的发展始终受限。但近
年来,随着深度学习的崛起,强化学习感知能力差的问题得到了解决,使其处在了发展的
高速期。
1.2.2 深度强化学习研究现状
2013 年底,谷歌人工智能研究团队 DeepMind 发表文章 Playing Atari with Deep
Reinforcement Learning,在强化学习任务中,首次成功运用深度学习,通过无监督的学习
方法实现从单纯图像输入来玩 Atari2600 游戏的效果。通过对算法的改进,使得 DQN 在
Atari 几乎一半的游戏中超过人类水平。2015 年,DeepMind 团队提出了深度 Q 网络(DQN),
该算法是一种端到端(end-to-end)的学习方式[19][20]。在 Atari 游戏控制中达到了与人类
不相上下的控制效果。DQN 作为深度强化学习研究领域的重要开创,引起了众多学者以
及研究团队的关注并且进行了大量改进,例如分布式 DQN、双重 DQN、带优先级经验回
放的 DQN、竞争架构 DQN、引导 DQN 以及异步 DQN 等[21]。
此后,研究人员提出了深度 SARSA 算法,该算法是一种在线策略强化学习算法。实
验证明在一些 Atari 视频游戏上,深度 SARSA 算法的性能要优于 DQN[22]。Anschel 等针
对深度强化学习算法的不稳定性做了一定的改善,提出了平均 DQN 算法,达到了降低目
标函数方差的效果。实验结果表明,在 ALE 测试平台上,平均 DQN 的性能要超过 DQN
和双重 DQN[23][24]。分类 DQN 算法作为传统 DQN 的一种变体,对深度强化学习从分布式
方面做了分析。它将奖励值看做一个近似分布,并且采用贝尔曼方程来学习这个近似分布,
2
绪论
3
西安理工大学硕士学位论文
1.2.3 倒立摆控制研究现状
倒立摆控制系统的研究是从上世纪 60 年代开始的,1966 年,Schaefer 等人利用
Bang-Bang 控制理论,成功将一个曲轴稳定在了倒置位置[32]。1972 年 Sturgen 等人利用极
点配置方法完成了二级倒立摆的平衡控制[33]。1976 年 Mori 首次对倒立摆系统进行线性化
处理,设计出了 PID 控制器[34]。
国内对于倒立摆的研究始于 80 年代,从一级倒立摆到二级直至三级四级,倒立摆控
制方法有了很大的进展,如模糊控制、神经网络、强化学习等。2001 年李洪兴等人实现
了三级倒立摆的实物控制,并在第二年完成了四级倒立摆的平衡控制[35]。2004 年张义明
等人使用线性二次状态控制器(LQR)和线性二次输出控制器(LQY)实现了二级倒立摆系
统的平衡控制。2015 年 Wang 等人通过引进神经网络对 Q 学习算法难以处理状态变量维
度过大的问题进行了优化,实现了一级倒立摆的平衡控制。
1.3 研究工作及内容安排
本文以一级直线倒立摆系统为载体,通过对强化学习 Q 学习算法以及深度强化学习
DQN 算法、双网络 DQN 算法、PG 算法的理论研究,首先在 Python 语言环境下借助 OpenAI
Gym 游戏库分别完成了基于 DQN 算法、双网络 DQN 算法、PG 算法的倒立摆平衡控制
仿真,在 DQN 算法的仿真中通过对比不同 reward 给定方式下神经网络的训练速度,得出
了针对于倒立摆平衡控制系统训练速度最快的线性化 reward 给定方式。其次搭建了基于
PLC 的一级直线倒立摆硬件实验平台,并通过传统控制算法 PID 对硬件实验平台的有效
性做了验证。在倒立摆硬件平台上完成了基于 DQN 算法的倒立摆起摆控制。最后针对于
单纯 Q 学习算法在自学习过程中训练速度慢,部分样本经验在探索中很难获得的缺点,
研究设计了具有多元训练策略的改进型 Q 学习算法,完成了改进型 Q 学习算法在倒立摆
硬件实验平台的平衡控制。
本文研究内容的章节安排如下:
第一章:绪论,主要介绍了研究强化学习的重要理论意义以及强化学习和深度强化学
习的研究现状,分析了常见的倒立摆控制方法。
第二章:首先介绍了强化学习、深度强化学习的基础原理以及常用算法,最后对倒立
摆系统进行了建模以及定性分析。
第三章:主要介绍了在 Pyhthon 编程环境下利用 OpenAI Gym 游戏库完成了深度强化
学习 DQN 算法、双网络 DQN 算法以及 PG 算法对一级直线倒立摆平衡控制的仿真实验,
在 DQN 算法的仿真实验中通过对比不同 reward 给定方式下神经网络的训练速度,得出了
针对于倒立摆平衡控制系统训练速度最快的线性化 reward 给定方式。
第四章:主要介绍了一级倒立摆的硬件平台搭建。并且采用传统的 PID 控制方法对
一级倒立摆实现了平衡控制,验证了平台的有效性,为后续强化学习的研究提供了测试基
准。
第五章:在硬件平台实现了 DQN 算法一级直线倒立摆的起摆控制。表明了 DQN 算
4
绪论
法在倒立摆起摆控制的有效性。
第六章:针对单纯的 Q 学习算法在实际应用中部分训练样本难以获得的问题,研究
设计了具有多元训练策略的的改进型 Q 学习算法,完成了改进型 Q 学习算法在一级直线
倒立摆硬件平台的平衡控制。并通过改进型 Q 学习算法与人工精良调参 PID 算法对倒立
摆平衡控制效果的测试对比,得出面向离散控制的改进型 Q 学习算法对倒立摆平衡控制
效果已经十分接近于连续控制的 PID 算法,而改进型 Q 学习算法相比 PID 控制算法具有
参数自整定不需人力调参,通用性更强,适用范围更广泛,能够极大降低控制系统的设计
难度和人力投入等优点,具有良好的应用前景。
第七章:对工作进行总结并给出了下一步的工作方向。
5
西安理工大学硕士学位论文
6
理论基础
2 理论基础
2.1 引言
本章首先对强化学习、深度强化学习基础概念以及模型进行介绍并分析。其次通过对
马尔科夫决策过程各参数进行分析以及对常用强化学习算法理论推导,为强化学习以及深
度强化学习算法在倒立摆控制系统中的应用奠定了理论基础。最后通过对一级直线倒立摆
的系统建模对该系统给出了定性分析。
2.2 强化学习基础理论
2.2.1 强化学习基础概念
强化学习(Reinforcement learning)是机器学习的重要方法之一[36][37],被广泛的应用于
智能控制、分析预测等领域。其通过智能体与环境的不断交互反馈,利用反馈信息不断更
新策略,最终获得最优决策。智能体在训练过程中,通过不断试错,获得环境反馈的评价,
从而积累经验,更新策略,将得到的累积奖惩值最大化。其不需要正确的指导信息,只需
要通过不断试错的方法来获得训练样本,最终达到最优的行为策略。
目前强化学习已经成为机器学习领域的核心研究方向之一[38]。其示意图如图 2-1 所
示:
图 2-1 强化学习示意图
Fig.2-1 Enhanced learning schematic
2.2.2 马尔科夫决策过程(MDP)
马尔科夫决策过程(Markov Decision Process)是指,智能体未来的状态只与当前的
状态以及行为有关,而与之前所有的历史状态无关。强化学习问题是基于马尔科夫决策过
程的[39]。马尔科夫决策过程由四元组(S,A,P,R)构成,其中 S 为智能体环境状态集,A 为智
能体有可能选择的行为集,R 为奖惩函数,P 为系统状态转移概率, R s, a, s ' 为智能体在环
境状态 s 下选择行为 a 从而使环境到达状态 s 的奖惩值, P s, a, s ' 为系统在状态 s 下采
7
西安理工大学硕士学位论文
式 2-2 中:
Q ——状态行为价值;
R ——瞬时奖惩值;
P ——状态转移概率。
2.2.3 强化学习模型及四要素
图 2-2 为标准的强化学习模型图。
动作 a
奖惩值r
智能体 环境
状态 s
图 2-2 强化学习模型图
Fig.2-2 Reinforced learning model diagram
智能体在当前状态 s 下选择行为 a,通过环境反馈给智能体的奖惩信息以及到达的状
态再来决定下一时刻的行为[41]。
8
理论基础
强化学习四要素分别为模型、策略、奖惩函数和值函数。
(1)模型
模型是对环境的一种抽象表达方式,智能体在状态 s 下选择行为 a 后环境通过计算得
到下一时刻状态 s ,并且反馈给智能体一定的奖惩值 r,在环境模型中,智能体能够更多
的对下一过程进行预测。
(2)策略
策略是状态到行为的一种映射[42],智能体将观察到的环境状态作为输入,经过训练
的策略 π 得出当前的行为 a。策略集是智能体选择行为的重要支撑,是整个系统的核心。
(3)奖惩函数
奖惩函数是智能体与环境交互中获得的评价性反馈信号。通常为一常数,数值大小代
表了奖惩力度,可以是正数的奖励值,也可以是负数的惩罚值。
(4)值函数
值函数是更新策略的关键因素,是强化学习的核心组成部分,它是当前状态下所选择
的行为对后续一系列状态所造成影响的整体评价。值函数模型如式 2-3 所示:
V
s t i r t i, 0 1 (2-3)
i 0
式 2-3 中:
V
s t ——从状态 s t 开始累计获得奖惩值的期望;
i ——步数;
——衰减因子;
r t i ——瞬时奖惩值
与奖惩函数的瞬时评价不同,值函数是对当前状态下选择的行为对于后续所有状态影
响的整体评价。有些行为可能在当前状态下获得了一个很高的瞬时奖惩值,但从长远来看,
该行为未必是很好的。值函数取值就不是很大。相反,有些行为就目前来看并不是一个很
好的选择,获得的奖惩值也较小,但从长远来看,却有一个很高的价值,其值函数就会较
大。
2.2.4 强化学习常用算法
强化学习算法主要分为基于值迭代以及基于策略迭代两种 [43]。常见的基于值迭代的
算法有 Q 学习算法和 Sarsa 算法两种,基于策略迭代的有策略梯度(PolicyGradient,PG)
算法,本节分别对 Q 学习算法、策略梯度算法加以说明。
(1)Q 学习算法
1989 年 Watkins 提出 Q 学习,又称 off-policy TD 学习[44],是强化学习中最经典的方
法之一。Q 学习[45]迭代时采用当前状态-行为值 Q s, a 作为估计函数。通过表格的形式
式中:
Q s, a ——所有即时奖励的期望;
r ——即时奖励值;
——衰减因子;
At —— t 时刻智能体在行为空间 A 中所选择的行为;
S t ——状态空间 S 中智能体在 t 时刻所到达的状态。
通过下一时刻状态的最大行为值函数完成当前时刻状态行为值函数的更新,其更新形
式如式 2-5 所示:
Q s t , a t Q s t , a t r t 1 max Q s t 1, a Q s t , a t
a
(2-5)
式中:
Q s t , a t ——状态 s t 下选择行为 a t 的状态行为值函数;
——学习率;
r t 1 ——状态 s t 下选择行为 a t 的瞬时奖惩值;
——衰减因子;
Q s t 1, a ——下一时刻的状态行为值函数。
Q学习算法流程如下:
1)初始化 Q s, a ;
2)每个 episode 执行以下操作:
a.采样得到状态变量 s;
b.在状态变量 s 下采用 -greedy 策略选择行为 a 并执行,状态转移到 s ' 并得到奖
惩值 r;根据式(2-5)更新状态行为值函数 Q s, a 并令 s s ' 。重复 b 操作直至达到
该 episode 训练结束条件;
3)重复 2)直至训练结束。
(2)策略梯度(PolicyGradient,PG)算法
基于值迭代的 Q 学习算法是一种间接的学习方式,而基于策略迭代的 PG 算法则是
通过更新策略直接选择行为[46]。
策略网络定义如式 2-6 所示:
(a | s, ) (2-6)
式中:
a ——当前状态 s 下选择的行为;
s ——当前状态;
——策略网络的参数(即神经网络每一层的权值 和偏移 b );
——在状态 s 下选择的策略。
策略网络用于计算在状态 s 下,每一个行为的选择概率。通过概率,来选取行为。该
网络通常由多个全连接网络构成,当输入为图像时,开始的几层可能为卷积层。中间几层
10
理论基础
式中:
z i ——神经网络第 i 个神经元的输出值。
从状态s出发,策略 所能产生的预期奖惩值(reward)如式2-8所示:
E (s) a (a | s, ) f (s, a) (2-8)
式中:
( s) ——在状态s下采用策略π获得的预期奖惩值;
f (s, a) ——在状态s下选择行为a所能获得收益的期望值。
策略更新的目标是,针对每一个状态s,选择最好的行为(即令该行为的选择概率最大
化),从而使reward的期望值最大。为此,需要计算出该期望对于 的梯度场,计算过程如
式2-9所示:
E ( s ) j (a j | s, ) f ( s, a j )
j f ( s, a j ) (a j | s, )
(a j | s, )
j f ( s, a j ) (a j | s, )
( a j | s, ) (2-9)
j f ( s, a j ) (a j | s, ) log (a j | s, )
j (a j | s, ) f ( s, a j ) log (a j | s, )
E log (a j | s, ) f ( s, a j )
式中:
n——样本数量。
11
西安理工大学硕士学位论文
通过式2-11或式2-12的目标函数对策略网络参数的不断优化,达到对策略的最优解,
完成对智能体的训练。PG是一种蒙特卡洛算法,通常情况下,需要记录每个时间步的状
态变量、行为、奖惩值。每完成一个episode(情节式任务),则从最后时刻开始,反向
计算每个时刻的状态行为值。完成神经网络参数的更新。
2.3 深度强化学习基础概念及常用算法
传统的强化学习局限于动作空间和样本空间都很小,且一般是离散的情境下。然而比
较复杂的、更加接近实际情况的任务则往往有着很大的状态空间和连续的动作空间。当输
入数据为图像,声音时,往往具有很高维度,传统的强化学习很难处理,深度强化学习就
是把深度学习对于高维输入的感知与强化学习的决策结合起来。其模型图如图 2-3 所示:
DL感知 RL决策
智能体
观察 奖惩 动作
环境
图 2-3 深度强化学习模型图
Fig.2-3 Deep reinforcement learning model
通过深度学习对环境的感知,将观察到的信息传递给智能体,用于智能体决策并执行
动作,再通过环境得到相应的奖惩值不断更新决策能力,最终达到智能体自动寻优的训练
效果。常见的深度强化学习算法有 DQN(Deep Q Network)、AC(Actor Critic)、DDPG(Deep
Deterministic Policy Gradient)等。本节只对本文中用到的 DQN 算法及双网络 DQN 算法做
以说明。
在解决状态变量以及行为空间维度较低(如一维、二维)时,基于表格形式的 Q 学
习算法还可以对 Q 表格进行训练,然而当遇到一些复杂问题时,这种问题的状态变量维
度都比较高,构建的 Q 表格就会非常庞大,基于表格形式的 Q 学习算法将难以训练,这
时候我们将神经网络与 Q 学习算法结合起来,利用神经网络来代替 Q 表格,就可以解决
维度较大难以训练的问题。
然而将 Q 学习算法与神经网络相结合时又存在一些问题:
(1)用于训练的状态是一个序列,该序列中前后的状态高度相关。
(2)Q 参数有微小更新就会导致策略发生巨大变化,并因此导致训练样本分布的巨
大变化。
12
理论基础
DQN损失函数
s
(s,a)
s
r
s, a, r, s
经验池
式中:
13
西安理工大学硕士学位论文
为损失函数,对估计值网络不断更新,每隔一定的时间步 N 将参数
2
以 Q目标-Q 估计
拷贝给目标值网络,最终完成对智能体的训练。
2.4 一级直线倒立摆基础理论
一级直线倒立摆系统主要由小车、摆杆以及导轨组成,其物理示意图如图 2-5 所示:
图 2-5 一级直线倒立摆系统物理示意图
Fig.2-5 Physical schematic diagram of a linear inverted pendulum system
(1)建立模型
倒立摆系统是一种典型的复杂系统,倒立摆系统模型的建立通常采用牛顿力学分析方
法和 Lagrange 方程法,建模过程中通常将空气阻力、皮带弹性、皮带与小车之间的摩擦
以及齿轮间隙等次要因素忽略。本文通过参考文献[47],采用 Lagrange 方程法[48]对一级直
线倒立摆进行建模。对系统作如下假设:
1) 摆杆为刚体;
2) 忽略摩檫力;
3) 齿轮不打滑;
4) 皮带不会出现拉伸。
Lagrange 方程如下所示:
L q, q T q, q V q, q (2-14)
式中:
L——拉格朗日算子;
q——系统广义坐标;
T——系统动能;
V——系统势能。
经过推理计算,系统动能与势能分别如式 2-15,2-16 所示:
1 1 2
T M x 2 m x 2 mlx cos ml 2 (2-15)
2 2 3
式中:
M ——小车质量(1.096 Kg)
x ——小车位移
m ——摆杆质量(0.109 Kg)
l ——转动轴心到摆杆质心距离(0.25m)
——摆杆与竖直向上方向的夹角
在广义坐标系 下只有摩擦力作用,故式 2-17 成立。
d L L
0 (2-17)
dt
倒立摆系统状态变量为 x, , x, ,设
f ( x, , x, ) (2-18)
在平衡位置附近进行泰勒级数展开,并线性化可得:
k 11x k 12 k 13x k 14 k 15x (2-19)
带入数据计算得出系统状态方程如式 2-20,式 2-21 所示:
0 1 0 0 0
0 0 0 0 1
x X u (2-20)
0 0 0 1 0
0 0 29.4 0 3
1 0 0 0 0
Y X u (2-21)
0 0 1 0 0
(2)定性分析
1)稳定性:
由式 2-20,式 2-21,经过计算可得系统的开环特征根分别为:
1 2 0, 3 5.4222, 4 5.4222
由于 3 0 ,因此倒立摆系统不稳定。
2)能控性:
倒立摆系统能控性矩阵如式 2-22 所示:
M A AB 2
AB A B
3
(2-22)
经计算得出该矩阵满秩,因此倒立摆系统能控。
3)能观性:
倒立摆系统能观性矩阵如式 2-23 所示:
T
M A CA CA
2
CA
3 (2-23)
经计算得出该矩阵满秩,因此倒立摆系统能观。
15
西安理工大学硕士学位论文
2.5 小结
本章主要介绍了强化学习及倒立摆的相关基础知识。首先介绍了强化学习的基本概
念、模型以及一些主要的强化学习算法,其次介绍了深度强化学习的基础概念以及常用算
法,最后介绍了倒立摆的工作原理,并对直线一级倒立摆进行了定性分析,为下文的工作
奠定了理论基础。
16
基于深度强化学习的倒立摆平衡控制仿真实验
3 基于深度强化学习的倒立摆平衡控制仿真实验
3.1 引言
本章完成了深度强化学习 DQN 算法、双网络 DQN 算法以及强化学习 PG 算法对一
级直线倒立摆的平衡控制仿真实验,在 DQN 算法对倒立摆平衡控制仿真中,通过三种
reward 给定方式的训练结果对比,得出了针对于倒立摆平衡控制,线性化 reward 给定方
式训练速度更快的结论。
(a)训练图 (b)测试图
图 3-2 恒定值奖励方式下 DQN 算法倒立摆平衡控制仿真曲线
Fig.3-2 DQN algorithm inverted pendulum balance control simulation curve under constant value reward
mode
图 3-3 为线性化奖励值方式下 DQN 算法倒立摆平衡控制仿真曲线,其中图(a)为训
练过程中倒立摆每个 episode 保持平衡步数的曲线,图(b)为每训练 20 个 episode 测试
三次平均的测试结果曲线,由图 3-3 可以看出线性化的 reward 给定方式在训练了大概 80
个 episode 后倒立摆系统在训练与测试中均达到了每个 episode 上限 200 个 step 的平衡控
制。
(a)训练图 (b)测试图
图 3-3 线性化奖励值方式下 DQN 算法倒立摆平衡控制仿真曲线
Fig.3-3 DQN algorithm inverted pendulum balance control simulation curve under linearized reward value
mode
图 3-4 为稀疏化奖励值方式下 DQN 算法倒立摆平衡控制仿真曲线,其中图(a)为训
练过程中倒立摆每个 episode 保持平衡步数的曲线,图(b)每训练 20 个 episode 测试三
次平均的测试结果曲线,由图 3-4 可以看出较稀疏的 reward 给定方式在训练了大概 180
个 episode 后倒立摆系统在训练与测试中均达到了每个 episode 上限 200 个 step 的平衡控
19
西安理工大学硕士学位论文
制。
(a)训练图 (b)测试图
图 3-4 稀疏化奖励值方式下 DQN 算法倒立摆平衡控制仿真曲线
Fig.3-4 DQN algorithm inverted pendulum balance control simulation curve under sparse bonus value mode
通过仿真实验,三种 reward 给定方式下的 DQN 算法均完成了一级直线倒立摆的平衡
控制,达到每个 episode 上限 200 个 step 的平衡。将三种 reward 给定方式做以对比可以发
现,较稀疏的 reward 给定方式,在训练前期提升比较缓慢,在大概 70 个 episode 训练后
才逐渐有了改善,这也导致了整体训练速度的缓慢,需要 180 个 episode 才能达到训练目
的,反观线性化的 reward 给定方式,在 25 个 episode 训练后,每个 episode 所能达到的
step 已经明显在逐渐提高。最终 80 个 episode 的训练就达到了上限 200 步的平衡控制。恒
定值 reward 给定方式在 40 个 episode 训练后,每个 episode 所达到的 step 逐渐提高,在
140 个 episode 的训练后达到平衡控制。所以在保证倒立摆平衡控制的基础上,线性化的
reward 给定方式是三种 reward 给定方式中训练速度最快的。
(a)训练图 (b)测试图
图 3-5 双网络 DQN 算法倒立摆平衡控制仿真曲线
Fig.3-5 Dual network DQN algorithm inverted pendulum balance control simulation curve
由实验结果可知,双网络的 DQN 算法在 50 个 episode 的训练后逐渐有了提升,大概
100 个 episode 的训练后完成了一级倒立摆的平衡控制任务。验证了双网络 DQN 算法对一
级直线倒立摆平衡控制的有效性。由于训练过程中存在小概率的随机行为选择,所以会存
21
西安理工大学硕士学位论文
在小的起伏,但在测试中完全贪婪的行为选择。避免了小概率的随机,所以控制效果良好。
3.4 基于 PG 算法的倒立摆平衡控制仿真实验
基于值迭代的 DQN 算法是一种离线学习方法。而基于策略的 PG(policy gradients)
算法是一种在线学习方法。相比较 DQN 这种通过行为评价的间接学习法,PG 通过更新
策略直接选择行为,更加直接。
本次仿真同样在 Pycharm 语言环境下借助 OPEN AI Gym 开源游戏库 CartPole(一级
倒立摆)游戏环境来研究 PG 算法。
(1)PG 算法参数设置
衰减因子 取 0.99。经验池的样本存储空间为 100000,每次训练随机抽取 32 份样本
进行训练,Reward 给定为线性化奖励方式。在每个 step 中 0 度角 reward 最大为 1,在边
缘角度±12 度最小为 0。
(2)神经网络的搭建
采用三层全连接神经网络,输入层神经元数量为 4 个,隐层神经元 20 个,输出层神
经元 2 个。隐层激活函数为 Relu 函数。隐层激活函数为 tanh。神经网络的输入为状态变
量 s t ,输出为行为空间中每个行为的选择概率。采用 Adam 优化器作为神经网络优化器。
神经网络学习率取 0.002。由于 Adam 神经网络优化器是以最小化损失函数来完成对神经
网络的更新,因此损失函数为- log a j | s, Q s, a j 。其推导过程在第二章已经有明确的
讲解,本节不再赘述。
(3)实验过程说明
对神经网络初始化后,以每个 episode 中上限 200 个 step 进行实验,满足以下任一条
件,该 episode 训练结束。
1)小车走出移动空间
2)摆杆角度超出-12 度到 12 度的范围空间
3)200 个 step 全部走完
每完成一个episode实验,则从最后时刻开始,反向计算每个时刻的状态行为值,完
成神经网络参数的更新。由于策略梯度算法对倒立摆平衡控制的训练过程本身也是对其训
练结果的测试,所以本节实验不再专门设置测试实验来验证训练效果。
对上述实验过程不断重复进行,直到神经网络达到收敛,并且连续10个episode达到
上限200个step的倒立摆平衡控制,实验结束。
(4)实验结果及分析
PG 算法倒立摆平衡控制仿真曲线如图 3-6 所示,由图可知,倒立摆在训练了大概 100
个 episode 后保持平衡的步数达到上限 200 步,达到收敛,控制效果良好。验证了 PG 算
法对一级直线倒立摆平衡控制的有效性。
22
基于深度强化学习的倒立摆平衡控制仿真实验
图 3-6 PG 算法倒立摆平衡控制仿真曲线
Fig.3-6 Strategy gradient algorithm inverted pendulum balance control simulation curve
3.5 小结
本章在 Python 语言环境下,利用 OpenAI Gym 游戏库中 Cartpole 游戏首先完成了深
度强化学习 DQN 算法对一级直线倒立摆平衡控制的仿真实验,在实验中通过三种 reward
给定方式训练结果的比较,得出了更有利于倒立摆平衡控制的线性化 reward 给定方式,
为后文的倒立摆硬件平台平衡控制提供了宝贵的经验。最后,分别完成了双网络 DQN 算
法以及 PG 算法对一级直线倒立摆平衡控制的仿真实验,实验结果表明,两种控制算法对
倒立摆的平衡控制均具有有效性。由于一级直线倒立摆系统并不是非常复杂,所以未能体
现出 PG 算法、双网络 DQN 算法在收敛性能上的优势。
23
西安理工大学硕士学位论文
<此页空白>
24
基于 PLC 的倒立摆硬件实验平台搭建
4 基于 PLC 的倒立摆硬件实验平台搭建
4.1 引言
本章首先介绍了一级直线倒立摆系统硬件平台的搭建过程与原理,最后完成了基于
PID 算法的倒立摆平衡控制实验,验证了硬件平台的有效性。
4.2 实验平台搭建原理
本文硬件实验平台的搭建以 PLC 为基础,通过上位机与 PLC 之间的实时通信完成对
步进电机的控制,从而达到对倒立摆的控制。硬件平台框图如图 4-1 所示:
上位机
模式切换 PLC模块
驱动器 编码器
手动控制左右开关
步进电机
限位开关 倒立摆
PUL- +V 步进电机
1M 0.2 0.3 0.4 2M 1.2 1.3 L+ M D
A相绕组+
DIR+ A+
DIa 24V DC
DIR- A相绕组-
A-
INPUTS ENA+ B+ B相绕组+
DQa 24V DC
图 4-2 硬件系统接线图
Fig.4-2 Hardware system wiring diagram
PLC 输入端 0.2、0.3、0.4 接口分别与手动驱动小车左、右水平运动按钮、手动自动
模式切换按钮相连接,1.2、1.3 分别与左、右光电式限位开关连接,输出端 0.2、0.3 接口
分别与步进电机伺服驱动器控制脉冲信号输入端、方向信号输入端相连接。
搭建好的倒立摆硬件系统如图 4-3 所示:
图 4-3 倒立摆系统硬件平台实物图
Fig.4-3 Inverted pendulum system hardware platform physical map
输入 + 输出
PID 倒立摆
编码器
- -
编码器
位置传感器
28
基于深度强化学习 DQN 算法的倒立摆起摆控制
5.1 引言
本章首先介绍了倒立摆起摆控制过程以及一些起摆控制方法,然后设计了基于强化学
习 DQN 算法的倒立摆起摆控制实验。实验结果表明了 DQN 算法对于一级直线倒立摆起摆
控制的有效性,最后,在起摆测试中通过手动施加作用力的方式增加了扰动实验,实验结
果表明,在扰动作用下,倒立摆系统依然可以通过不断摆动最终到达起摆成功角度区域,
实现倒立摆的起摆控制。
5.2 倒立摆起摆过程描述
一级直线倒立摆的起摆控制,实质就是倒立摆系统从摆杆竖直向下的状态在外力作用
下到达摆杆竖直向上状态的过程。起摆过程如图 5-1 所示:
图 5-1 倒立摆起摆过程示意图
Fig.5-1 Schematic diagram of the inverted pendulume
一般情况下,由于受到导轨长度的制约,一个单向力 F 不能使摆杆从竖直向下位置
( 0 )摆起到达竖直向上位置( 或 )。因此起摆过程可以分为以下几个步
骤:
1)外力 F 下,小车从静止状态沿导轨水平运动,由于惯性,摆杆从竖直向下位置
( 0 )开始摆起到 0 / 2 位置。
2)沿力 F 相反方向施加力 F,摆杆由 0 / 2 位置摆动到 / 2 0 位置。
3)沿力 F 方向施加作用力 F,摆杆由 / 2 0 位置摆动到 0 / 2 位置。
4)不断重复 2)3)步,直到摆杆达到竖直向上位置( )结束。
由于倒立摆系统输入、输出的非线性关系,许多常用的线性控制理论均不适用。基于
非线性理论,目前常用的倒立摆起摆控制方法主要有时间最优控制、拟人智能控制、能量
反馈以及强化学习等[49][50]。
基于时间最优控制的 Bang-Bang 控制方法采用极小值解决时间最优控制问题,优点
是容易实现,且反应速度快,缺点是控制比较粗糙,控制效果不太理想。拟人智能控制需
要记录起摆过程中大量的参数变化,然后通过计算机对于数据的处理实现实时控制。能量
反馈控制主要通过控制倒立摆系统中摆杆的能量来达到起摆控制。强化学习通过其独有的
“试错”机制,不断尝试各种状态下可选择的行为,利用给定的奖励机制,最大化当前状态
下所能获得的奖励,从而通过自学习方式不断探索最优行为来达到起摆控制。
29
西安理工大学硕士学位论文
30
基于深度强化学习 DQN 算法的倒立摆起摆控制
(a) (b)
(c) (d)
(e) (f)
31
西安理工大学硕士学位论文
(g) (h)
(a,b,c,d,e,f,g,h 分别为从初始位置开始最终超越竖直向上位置的起摆过程图)
(a, b, c, d, e, f, g, h are the starting process diagrams that eventually go beyond the vertical position from the
initial position.)
图 5-2 起摆过程实物图
Fig.5-2 Lifting process physical map
摆杆角度变化如图所示 5-3 所示:
扰动
5.4 小结
本章采用三层全连接神经网络完成了 DQN 算法在一级直线倒立摆硬件实验平台的起
摆控制,在大概训练了 50 个 episode 后,摆杆通过不到 200 个控制周期(每个控制周期
20ms)就可以完成从竖直向下位置(0 度)开始最终超越竖直向上位置(180 度)的起摆
控制任务,控制效果良好。
33
西安理工大学硕士学位论文
34
基于强化学习 Q 学习算法的倒立摆平衡控制
6 基于强化学习 Q 学习算法的倒立摆平衡控制
6.1 引言
本章在 Q 学习算法的基础上研究设计了具有多元训练策略的改进型 Q 学习算法,完
成了一级直线倒立摆硬件实验平台的平衡控制。
6.2 Q 学习算法倒立摆平衡控制
Q 学习算法是一种针对离散状态空间以及离散动作空间的表格式学习方法,其主要通
过更新表格中各种状态下所有行为的状态行为值(Q 值)来完成智能体(本节指倒立摆)
的自学习过程。最后通过一个完善的 Q 表格达到对智能体的控制。
(1)Q 学习算法设计
本次实验选取的状态变量为两维,分别是前一时刻倒立摆角度值(状态变量 s1 )与
当前时刻倒立摆角度值(状态变量 s 2 )(通过连续两个时刻的角度值,即可得到此时角
度值以及角度变化量和角度的变化方向)。由于该实验平台电机最大转速较小,当角度偏
离竖直向上位置超过 2.4 度时,将无法完成对倒立摆的平衡控制,因此本文将状态变量的
角度值变化范围限定到-2.4 度到+2.4 度。行为是驱动电机转动的不同脉冲信号。
Q 表格为三维,由状态变量 s1 、状态变量 s 2 以及各种行为构成。考虑到过于精细的
Q 表格在训练量以及训练难度上要求更高,而过于粗糙的表格训练结果又不太理想,经过
反复训练测试,最终将状态变量 s1 取值与状态变量 s 2 取值均线性化的离散为 33 个。状态
变量 s1 与 Q 表格第一维元素的对应关系如表 6-1 所示。状态变量 s 2 与 Q 表格第二维的对
应关系和 s1 与第一维对应关系类似,只是换成了与第二维对应。行为空间由驱动电机转
动的 23 个不同脉冲信号构成,对于控制精度要求更高的 0 速左右行为要更多,行为空间
中各个行为与 Q 表格第三维元素对应关系如表 6-2 所示(行为数值代表脉冲频率,正负
号代表脉冲方向)。最终建立 Q 表格的大小为(33,33,23),并对其初始化。
奖励方式取在仿真结果中训练速度与效果较好的线性化奖励机制,0 度角 reward 最
大为 1,边缘角度±2.4 度最小为 0。由于每次实验均要手动将摆杆转至 0 度附近,然后扶
着摆杆开始训练,具有较大的噪音。所以将学习率调到比较小的 0.1。衰减因子取 0.99。
表 6-1 状态变量 s1 离散化表
Tab.6-1 State variable discretization table
状态变量 s1 Q 表格第一维元素
[-2.4,-2.25) 0
[-2.25,-2.1) 1
[-2.1,-1.95) 2
[-1.95,-1.8) 3
... …
[1.8,1.95) 29
[1.95,2.1) 30
[2.1,2.25) 31
[2.25,2.4] 32
35
西安理工大学硕士学位论文
(a)训练图 (b)测试图
图 6-1 0.1, 0.99 ,倒立摆平衡控制结果曲线
Fig.6-1 0.1, 0.99 ,Inverted pendulum balance control result curve
(a)训练图 (b)测试图
图 6-2 0.05, 0.99 ,倒立摆平衡控制结果曲线
Fig.6-2 0.05, 0.99 ,Inverted pendulum balance control result curve
(a)训练图 (b)测试图
图 6-3 0.1, 0.97 倒立摆平衡控制结果曲线
Fig.6-3 0.1, 0.97 ,Inverted pendulum balance control result curve
制实验的失败并不是最直接的原因。因此我们猜测可能是 Q 表格训练量的不足导致了实
验的失败,基于以上猜想,我们将本节第一次实验重新进行,并对实验时 Q 表格中每组
状态变量 s1, s 2 的训练次数做以记录,每组状态变量的训练次数如表 6-3,表 6-4 所示(由
于训练主要集中在状态变量 s1, s 2 表格的对角线区域所以只取表格左上角和右下角部分
观察即可)。
通过观察表中数据,可以看到大部分状态的训练量只有不到 50 次,而每组状态变量
对应的行为有 23 种,平均下来每种行为只训练了 2 次,训练量严重不足,导致了本次实
验失败。
表 6-3 部分状态变量对应训练量
Tab.6-3 Partial state variables correspond to the amount of training
s2
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
s1
0 33 36 17 9 9 10 4 2 1 0 0 0 0 0 0 0
1 53 63 44 31 19 12 5 4 2 1 0 1 0 0 0 0
3 41 51 40 40 26 11 5 11 6 1 1 0 0 0 0 0
4 29 60 58 70 64 24 8 6 7 6 4 0 0 0 0 0
5 20 62 64 67 81 63 35 11 7 1 1 0 0 0 0 0
6 13 27 30 66 73 80 50 35 7 12 5 7 5 1 0 0
7 0 4 13 41 70 75 59 57 29 19 4 3 2 0 0 0
8 2 5 13 23 56 92 61 75 51 28 6 5 3 2 0 0
9 0 0 2 5 13 30 93 80 160 80 39 19 14 4 1 0
10 3 2 1 4 11 19 40 90 141 155 78 35 13 4 0 4
11 2 3 2 3 2 11 7 21 50 113 142 94 84 35 6 19
12 9 3 2 1 4 11 19 40 37 92 121 178 58 53 59 33
15 0 0 0 0 0 2 0 2 7 14 24 41 63 134 188 74
表 6-4 部分状态变量对应训练量
Tab.6-4 Partial state variables correspond to the amount of training
s2
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
s1
16 97 64 12 4 3 1 1 0 0 0 0 0 0 0 0 0
17 169 124 79 30 8 2 1 1 0 0 0 0 0 0 0 0
18 71 132 78 58 28 10 7 27 15 12 8 1 0 0 0 0
38
基于强化学习 Q 学习算法的倒立摆平衡控制
s2
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
s1
19 42 67 105 70 55 21 4 3 4 1 1 1 0 1 0 0
20 14 25 54 84 72 56 25 14 5 0 0 0 0 0 0 0
21 3 15 25 63 77 60 47 27 11 4 0 0 0 0 0 0
22 0 2 9 22 58 73 57 52 30 9 5 1 1 0 0 0
23 0 2 3 6 15 36 34 45 52 33 12 6 4 4 1 0
24 0 3 4 4 10 35 54 64 57 40 20 5 8 2 1 1
25 2 5 1 6 2 9 16 36 52 56 39 21 15 3 3 4
26 0 1 0 0 3 3 6 25 29 36 45 43 22 22 5 2
27 0 0 1 0 3 4 1 5 11 29 33 37 38 19 4 5
28 0 0 0 0 0 2 0 1 5 10 13 28 46 45 11 14
29 0 0 0 0 0 0 1 1 3 5 9 19 34 44 45 31
30 0 0 0 0 0 0 0 5 0 4 3 10 22 34 32 34
个 step 数的平衡控制,实验结束。
(3)实验结果与分析
引入经验回放的 Q 学习算法在 500 个 episode 训练过程中,倒立摆平衡控制结果曲线
如图 6-4 所示:
(a)训练图 (b)测试图
图 6-4 引入经验回放的倒立摆平衡控制结果曲线
Fig.6-4 Inverted pendulum balance control result curve with experience playback
图 6-4(a)为训练过程中倒立摆每个 episode 保持平衡的 step 数,图 6-4(b)为训练
过程中,每 20 个 episode 采用贪婪法则对训练出的 Q 表格倒立摆平衡控制测试三次的平
均 step 数,由图 6-4(a)可以看出经过训练倒立摆每个 episode 所能达到的平衡 step 数逐
渐增多,开始时每个 episode 能保持平衡的 step 数大约不到 50 步,随着实验量与 Q 表格
训练量的增加,倒立摆保持平衡的步数逐渐提升,最高时可以达到 250 个 step,但在稳定
性上效果较差,训练速度依旧缓慢。图 6-4(b)显示了随着训练量的增加,Q 表格对倒
立摆平衡控制的测试结果不断提升,最大达到 100 个 step 数。较上节的结果有了一定的
提升。但在控制效果上仍然不理想。
在训练与测试实验中,我们发现经过训练,倒立摆在状态变量中间区域的控制效果良
好,但在状态变量边缘位置非常容易因为行为选择错误而导致整个实验失败。分析其原因
可能是状态变量的边缘位置训练量不足,为此,我们对 500 个 episode 实验后状态变量
s1, s 2 的训练量作以探究,经过对训练量的查看,发现中间区域的训练量平均可以达到
五千次左右,最高可以达到 1 万多次,但在边缘位置的训练量大多都只有不到 100 次。分
析其原因,主要是边缘位置训练样本稀缺。
受限于电机转速,此次实验的状态变量取值空间较小,因此边缘位置的训练情况对于
整体实验的影响较大,而边缘状态的训练样本较中间状态又难以获得,所以解决 Q 表格
边缘位置训练样本稀缺的问题是本次实验的关键。
解决边缘位置训练样本稀缺的一种方法是继续大量增加实验量,但这种方法获得的经
验样本绝大多数都集中在状态变量的中间区域,边缘位置极其少,大约只能占到中间区域
的 1%到 2%,效率太低。而且在很多的工业现场也不允许如此大的实验量去获取足够多的
经验样本,人力、物力消耗太大。
强化学习算法分为两类,一类是 On-policy 学习算法(如 sarsa),另一类是 Off-policy
学习算法(如 Q 学习)。On-policy 学习算法是指在实验中生成样本的策略(从状态变量
到行为的映射)与训练的策略是同一种策略,而 Off-policy 学习算法是实验中生成样本的
策略与训练的策略不同,这意味着它可以使用在实验期间任何时候收集的样本,无论这些
样本是如何产生的,也就是说这些训练样本可以通过智能体在环境的探索中获得,也可以
通过其他的控制算法的控制经验而获得。基于 Off-policy 算法的这种特性,本文研究设计
了具有人工示教的改进型 Q 学习算法,针对本次实验状态变量边缘位置的训练样本难以
获得,引入一个参数粗调的 PID 控制器对倒立摆进行平衡控制,通过 Q 学习算法中随机
行为对倒立摆平衡控制探索得到的自学习经验和这个参数粗调的 PID 控制器对倒立摆平
衡控制的一些经验相结合来训练 Q 表格,完成改进型 Q 学习算法在一级直线倒立摆的平
衡控制。之所以选用一个参数粗调的 PID 控制器,是因为这个粗糙的 PID 比较容易帮助
我们获得 Q 学习算法在之前探索中难以获得的状态变量边缘位置的训练样本,而且获得
的经验也是相对正确的经验,加快强化学习算法的训练速度。
改进型 Q 学习算法流程如下:
1)初始化 Q s, a ,s S , a A ,初始化经验池容量 D、随机抽取样本数量 M、每个 episode
训练 step 数上限 T,将其他控制算法(如 PID)的输出离散化为与 Q 表格行为相同的数
值。
2)连续执行 N 个 episode 以下操作:
a.采样得到当前状态变量 s;
b.在当前状态 s 下根据 greedy 策略确定行为 a 并执行,获得 reward 值 r,采样
得到状态变量 s ,将(s,a,r,s ,训练结束判定)存储到经验池 replay_buffer。并令 s s ,
若经验池样本数大于 M,Q 表格随机抽取 M 个样本逐个进行训练,根据式 2-7 更新 Q s, a ,
若未达到该 episode 训练结束条件,重复 b 操作,若达到该 episode 训练结束条件,则该
episode 训练结束。
3)执行一次以下操作:
a.采样得到状态变量 s;
b.在状态 s 下根据其他控制算法(如 PID)确定行为 a 并执行,获得 reward 值 r,
采样得到状态变量 s ,将(s,a,r, s ,训练结束判定)存储到经验池 replay_buffer。
并令 s s ,若经验池样本数大于 M,Q 表格随机抽取 M 个样本逐个进行训练,根据式
2-7 更新 Q s, a ,若未达到该 episode 训练结束条件,重复 b 操作,若达到该 episode 训练
结束条件,则该 episode 训练结束。
41
西安理工大学硕士学位论文
4)不断重复 2)3)直至训练结束。
(1)改进型 Q 学习算法设计
状态变量、行为的选取以及与 Q 表格元素的对应关系均与上节相同,取线性化奖励
机制作为 reward 给定方式,在 0 度角 reward 最大为 1,在边缘角度±2.4 度最小为 0。学
习率 α 为 0.1,衰减因子 γ 为 0.97。
(2)实验过程说明
采用 -greedy 的实验方法以每个 episode 中上限 500 个 step 进行实验。每经过 20 个
episode 的实验,加入一次 500 个 step 的 PID 倒立摆平衡控制实验,由于 PID 控制器输出
的控制量是连续的。所以在实验前,需要先将 PID 的输出离散化为与 Q 表格行为相同的
数值,这样由 PID 控制实验所获得的经验样本才能用于 Q 表格的训练。将实验获得的经
验样本逐一存储在经验池 replay_buffer 中,获得的经验样本超过 32 份后(每个 step 获得
一份经验样本),每经过一个 step,Q 表格在经验池中随机抽取 32 份样本进行训练。 初
始取 0.3,随着 Q 表格训练量的增加逐渐减小至 0.01 不再变化,每经过 20 个 episode 的
训练,采用贪婪法则对训练出的 Q 表格进行三次平衡控制实验,对三次保持平衡的 step
数进行平均。每个 episode 训练结束的条件与之前相同。
不断重复上述实验,直至测试结果中倒立摆能连续 10 个 episode 达到上限 500 个 step
数的平衡控制,实验结束。
(3)实验结果与分析
在实验过程中我们发现在学习到较粗糙 PID 对直线倒立摆平衡控制的经验后,Q 表
格对状态变量边缘位置的控制效果有了极大的改善,在 200 个 episode 训练过程中,改进
型 Q 学习算法倒立摆平衡控制结果曲线如图 6-5 所示,其中图(a)为训练过程中倒立摆
每个 episode 保持平衡的 step 数,图(b)为训练过程中每 20 个 episode 采用贪婪法则对
训练出的 Q 表格倒立摆平衡控制测试的平均 step 数。
(a)训练图 (b)测试图
图 6-5 改进型 Q 学习算法倒立摆平衡控制结果曲线
Fig.6-5 Improved Q learning algorithm inverted pendulum balance control result curve
由图 6-5 可以看出,随着训练量的提升,倒立摆可以保持平衡的 step 逐渐上升,只需
要大概 180 个 episode 的实验,就可以达到上限 500 步的平衡控制。实现了改进型 Q 学习
42
基于强化学习 Q 学习算法的倒立摆平衡控制
算法在一级直线倒立摆的平衡控制任务。验证了改进型 Q 学习算法对一级直线倒立摆平
衡控制的有效性。
在倒立摆平衡控制测试实验中,通过手动作用力的方式加入扰动,增加扰动的实验结
果如图 6-6 所示:
6.5 实验结果对比
由于倒立摆平衡控制算法中没有一个绝对标准的对比模型,所以本文以工业中最常见
的 PID 算法和上节训练好的 Q 表格在硬件实验平台对倒立摆的平衡控制效果作以对比,
将两种算法分别做 10 次平衡控制测试,通过测试的平均方差来反映倒立摆平衡控制的稳
定性。
Q 表格倒立摆平衡控制测试的摆杆角度变化如图 6-7 所示,角度平均值与方差如表
6-5 所示:
表 6-5 改进型 Q 学习算法倒立摆平衡控制摆杆角度变化均值与方差
Tab.6-5 Improved Q learning algorithm inverted pendulum balance control pendulum angle change mean and
variance
实验标号 a b c d e f g h i j
平均值 0.0768 -0.0091 -0.0539 0.0684 0.1266 0.0912 -0.0348 0.2219 0.0534 -0.1109
方差 0.3984 0.3677 0.3394 0.4144 0.3146 0.3561 0.3206 0.4412 0.3757 0.3546
平均方差 0.3683
43
西安理工大学硕士学位论文
(a) (b)
(c) (d)
(e) (f)
(g) (h)
44
基于强化学习 Q 学习算法的倒立摆平衡控制
(i) (j)
(a,b,c,d,e,f,g,h,i,j 分别为第一次到第十次的测试曲线)
(a, b, c, d, e, f, g, h, i, j are the first to tenth test curves respectively)
图 6-7 改进型 Q 学习算法倒立摆平衡控制摆杆角度变化曲线
Fig.6-7 Improved Q learning algorithm inverted pendulum balance control pendulum angle variation curve
(a) (b)
(c) (d)
45
西安理工大学硕士学位论文
(e) (f)
(g) (h)
(i) (j)
(a,b,c,d,e,f,g,h,i,j 分别为第一次到第十次的测试曲线)
(a, b, c, d, e, f, g, h, i, j are the first to tenth test curves respectively)
图 6-8 PID 倒立摆平衡控制摆杆角度变化曲线
Fig.6-8 PID inverted pendulum balance control swing angle variation curve
通过以上对比实验可以得出以下结论:
1)通过训练好的 Q 表格对倒立摆平衡控制的测试结果可以发现,在 10 次测试中倒
立摆均可以达到上限 500 步的平衡控制,摆杆偶尔会到达角度值较大的边缘位置,但绝大
多数时候可以稳定在平衡位置 1 度以内的区间内,控制效果良好。
2)通过表 6-5 与表 6-6 对比可以发现 Q 表格与人工精良调参 PID 控制下倒立摆均可
以围绕摆杆竖直向上位置保持平衡,但 Q 表格对倒立摆平衡控制的平均方差稍大于 PID,
46
基于强化学习 Q 学习算法的倒立摆平衡控制
摆杆角度变化较大一些,平衡性稍差,分析其原因,主要是改进型 Q 学习算法针对的是
离散状态空间以及离散行为空间,而 PID 属于连续控制,控制量远比改进型 Q 学习算法
精细,所以在控制效果上改进型 Q 学习算法比 PID 稍差,但也十分接近。而 Q 学习算法
相比 PID 也有参数自整定不需人力调参,通用性更强,适用范围更广泛,能够极大降低
控制系统的设计难度和人力投入等优点。
6.6 小结
在硬件实验平台中,基于 Q 学习算法的倒立摆平衡控制由于实验量不足,导致了 Q
表格训练量缺乏,而在真实环境中不允许过大的实验量,而且也比较耗费人力的情况下,
研究设计了具有多元训练策略的改进型 Q 学习算法,该算法解决了真实环境中实验量受
限、部分训练样本难以获得的问题,弥补了中间状态变量与边缘状态变量训练量的不足,
完成了倒立摆平衡控制,为强化学习在实际工程的应用做了初步的实践。
47
西安理工大学硕士学位论文
48
总结与展望
7 总结与展望
7.1 总结
本文以多变量、非线性、高阶次、强耦合的倒立摆系统为载体,完成了部分强化学习
与深度强化学习算法的研究,目的在于将强化学习算法在实物控制方面的应用做以探究。
针对真实控制环境中噪音较大、训练量受限、部分训练样本难以获得的局限性,研究设计
了具有多元训练策略的改进型 Q 学习算法,并利用该算法完成了倒立摆硬件实验平台的
平衡控制。
具体研究内容有以下几点:
(1)通过查阅文献,对强化学习、深度强化学习的研究现状进行分析总结。
(2)对本文中用到的强化学习、深度强化学习基础概念以及模型进行介绍并分析。
通过对马尔科夫决策过程各参数进行分析以及几种常用强化学习算法理论推导,为强化学
习以及深度强化学习算法在倒立摆控制系统中的应用奠定了理论基础。
(3)在 Python 语言开发环境下利用 OpenAI Gym 游戏库完成了深度强化学习 DQN
算法、双网络 DQN 算法、强化学习 PG 算法在一级直线倒立摆平衡控制的实验仿真,仿
真结果表明,三种控制算法均可以快速完成神经网络的训练达到一级直线倒立摆的平衡控
制,通过 DQN 算法在一级直线倒立摆平衡控制仿真实验中三种 reward 给定方式的训练结
果比较,得出在倒立摆平衡控制中线性化 reward 给定方式对神经网络的训练速度更快,
为硬件平台实现倒立摆平衡控制奠定了基础。
(4)完成了基于 PLC 的一级直线倒立摆硬件实验平台搭建,介绍并分析了实验平台
搭建的流程以及工作原理,通过上位机与 PLC 之间的实时通信完成倒立摆系统的控制。
并采用传统控制算法 PID 对一级直线倒立摆的平衡控制,验证了实验平台的有效性,为
后续强化学习算法在一级直线倒立摆硬件平台的控制提供了基础。
(5)采用三层全连接神经网络完成了 DQN 算法在一级直线倒立摆硬件实验平台的
起摆控制,在大概训练了 50 个回合后,摆杆通过不到 200 个控制周期
(每个控制周期 20ms)
就可以达到从竖直向下位置(0 度)开始最终超越竖直向上位置(180 度)的起摆控制任
务。
(6)研究设计了具有多元训练策略的 off-policy 改进型 Q 学习算法,并通过该算法
完成了倒立摆的平衡控制。该算法一方面利用人工经验、或其他算法经验加快强化学习算
法训练速度,另一方面通过强化学习算法的自学习能力对控制系统自寻优,自主提高控制
系统控制精度,从而以更小的人力投入,获得更好的控制效果,为强化学习在实际工程的
应用做了初步的实践,具有良好的应用前景。
7.2 展望
本文将强化学习 Q 学习算法与传统控制方法相结合研究设计了具有多元训练策略的
改进型 Q 学习算法,并且通过该算法完成了倒立摆的平衡控制,为强化学习在实际工程
49
西安理工大学硕士学位论文
的应用做了初步的实践,但仍然存在着一些不足与进一步扩展的空间。
(1)改进型 Q 学习算法仍然是基于表格形式的,因此对于状态变量维度较大的控制
系统,Q 表格将会变得极其庞大,难以训练,具有一定的局限性。
(2)本文所研究的 DQN 算法、双网络 DQN 算法以及研究设计的改进型 Q 学习算
法均针对的是离散状态空间,离散动作空间。故如何将这些算法扩展到连续空间是下一步
的研究方向之一。
50
致谢
致谢
从开始研究生生活的第一天起,郑岗老师以及徐开亮老师对我们每个学生的安排都很
细致,从学生的兴趣以及基础能力方面为我们每个人选择了更合适自己的课题,每周定期
汇报,对每个人近阶段所做工作以及课题方面的进展做以监督,而且平时也会对一些重要
的理论性的知识进行讲解,并且组织大家讨论学习。两位老师平时也是严于律己,尤其在
科研以及教导学生方面,不容一点马虎,在研究生阶段遇到二位老师是我的荣幸。在生活
中两位老师和蔼可亲,平易近人,使我们感到与二位老师的相处倍感亲切,不会有一点压
力。
非常感谢西安理工大学控制科学与工程学科的所有老师,感谢老师们孜孜不倦、默默
无闻的奉献,在这里我衷心的说一声老师,你们辛苦了。同样要感谢的还有 710 教研室的
一众伙伴们,在平时的学习生活中你们给了我很大帮助。使我感受到教研室有一种家的感
觉,谢谢你们。
最后,我要感谢我的妻子,在我论文完成阶段给了我很大的帮助,路漫漫,愿与尔携
手同行。
51
西安理工大学硕士学位论文
52
参考文献
参考文献
[1] 钱征.基于强化学习的倒立摆控制研究[D].北京:北京工业大学,2005.
[2] 程玉虎.连续状态—动作空间下强化学习方法的研究[D].北京:中国科学院自动化研究
所,2005.
[3] 丁丽.直线倒立摆控制策略的对比研究[D].山东:齐鲁工业大学, 2015
[4] 张东军,从爽.倒立摆控制系统研究综述[J].控制工程,2003,7 (10): 9-12.
[5] 韩复健.倒立摆系统的发展研究及意义[J].山东工业技术,2014 (17):144-144.
[6] 夏旻,宋稳柱,施必成,等.基于加权密集连接卷积网络的深度强化学习方法[J].计算机应
用,2018,38(8):2141-2147.
[7] 赵冬斌,邵坤,朱圆恒,等.深度强化学习综述:兼论计算机围棋的发展[J]. 控制理论与应
用, 2016, 33(6):701-717.
[8] 吴睿.基于深度强化学习的游戏博弈策略的研究与实现[D]. 吉林大学, 2018.
[9] 赵星宇,丁世飞.深度强化学习研究综述[J]. 计算机科学, 2018, 45(7):1-6.
[10] 季挺.非参数化值函数逼近强化学习研究[D].江西:南昌大学,2018.
[11] 陆鑫,高阳,李宁等.基于神经网络的强化学习算法研究[J].计算机研究与发展,2002,
39(8): 981-985.
[12] 张汝波,顾国昌.强化学习理论,算法及应用[J].控制理论与应用,2000,17(5) :637-642.
[13] 廖慧芬,邵小兵.动态规划算法的原理及应用[J]. 中国科技信息, 2005(21):42-42.
[14] Werbos P J. Foreword - ADP: The Key Direction for Future Research in Intelligent Control
and Understanding Brain Intelligence[J]. IEEE Transactions on Systems Man &
Cybernetics Part B, 2008, 38(4):898-900.
[15] Sutton R S. Temporal credit assignment in reinforcement learning[J]. Journal of
Community Psychology, 1984, 34(5):601-616.
[16] Watkins J C H and Dayan P. Q-learning [J]. Machine Learning, 1992,8(3):279 -292.
[17] R.S.Sutton,Learning to predict by the methods of temporal differences[J],Machine.
Learning, 1988(3):944-944.
[18] 陈科雯.基于深度卷积神经网络的人脸表情识别方法[D].四川:西安电子科技大学,2017.
[19] 郭勤.基于深度强化学习的视频游戏决策模型研究与应用[D]. 江西理工大学, 2018.
[20] 王康.基于深度强化学习在游戏上的应用[D]. 沈阳理工大学, 2018.
[21] 李蓓蓓.基于深度神经网络的特征提取算法及其应用研究[D]. 江南大学, 2018.
[22] Elfwing S, Uchibe E, Doya K. Sigmoid-weighted linear units for neural network function
approximation in reinforcement learning[J]. Neural Netw, 2018(21):77-78.
[23] Anschel O, Baram N, Shimkin N. Averaged-DQN: Variance Reduction and Stabilization
for Deep Reinforcement Learning[J], Machine. Learning, 2016(8):14-15.
53
西安理工大学硕士学位论文
[24] Anschel O, Baram N, Shimkin N. Deep Reinforcement Learning with Averaged Target
DQN[J], Machine. Learning, 2016(33):61-64.
[25] 唐振韬,邵坤,赵冬斌等.深度强化学习进展:从 AlphaGo 到 AlphaGo Zero[J].控制理论与
应用,2017,34(12):1529-1546.
[26] 郭宪.基于 DQN 的机械臂控制策略的研究[D].北京:北京交通大学,2018.
[27] 颜志鹏.基于深度强化学习的游戏控制算法研究与实现[D].四川:电子科技大学,2018.
[28] Plappert M, Houthooft R, Dhariwal P, et al. Parameter Space Noise for Exploration[J],
Machine. Learning, 2017(26):85-88.
[29] Tavakoli A, Pardo F, Kormushev P. Action Branching Architectures for Deep
Reinforcement Learning[J],Machine. Learning,2017(18):35-36.
[30] 刘全,翟建伟,章宗长等深度强化学习综述[J].计算机学报,2018,41(1):1-27.
[31] Sun R,Merrill E,Peterson T. From implicit skills to explicit knowledge: a bottom-up model
of skill learning [J]. Cognitive Science, 2001, 25(2):203-244.
[32] 王贞卫.倒立摆的非线性控制研究及虚拟现实[D] 新疆:新疆大学, 2008
[33] 崔平,翁正新.基于状态空间极点配置的倒立摆平衡控制[J]. 实验室研究与探索, 2003,
22(2):70-72.
[34] 杜岗,徐静.倒立摆系统数学建模与 PID 控制器实现[J]. 连云港职业技术学院学报, 2013,
26(2):19-23.
[35] 李洪兴,苗志宏,王加银.四级倒立摆的变论域自适应模糊控制[J]. 中国科学:技术科学,
2002, 32(1):65-75.
[36] 刘忠,李海红,刘全.强化学习算法研究[J].计算机工程与设计,2008,29(22): 5805-5809.
[37] 陈学松,杨宜民.强化学习研究综述[J].计算机应用研究,2010,27(8): 2834-2838.
[38] 尤 树 华 , 周 谊 成 , 王 辉 . 基 于 神 经 网 络 的 强 化 学 习 研 究 概 述 [J]. 电 脑 知 识 与 技
术,2012,(28):6782-6786.
[39] 施梦宇.强化学习中基函数构造方法研究[D].江苏:苏州大学,2015.
[40] 李楠.基于强化学习算法的多智能体学习问题的研究[D].江苏:江南大学,2006.
[41] 孙魁,吴成东.强化学习模型及其在避障中的应用[J].山东工业技术,2016,(1):261-263.
[42] Sutton R S, Barto A G. Reinforcement Learning: An Introduction[J]. IEEE Transactions on
Neural Networks, 1998, 9(5):1054-1054.
[43] Thrun S, Littman M L. Reinforcement Learning: An Introduction[J]. IEEE Transactions on
Neural Networks, 2005, 16(1):285-286.
[44] Lin L J. Self-improving reactive agents based reinforcement learning, planning and
teaching [J] Machine Learning, 1992, 8(4):293-321.
[45] 杨善林,罗贺,胡小建. 基于 Q 学习的自主 Agent 模型[C] 全国开放式分布与并行计算学
术会议. 2006.
54
参考文献
55