登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 开题报告 > 计算机类 > 计算机科学与技术 > 正文

深度强化学习机器人避障研究开题报告

 2020-06-03 21:57:36  

1. 研究目的与意义(文献综述包含参考文献)

研究背景

近些年,人工智能的研究又掀起新高潮。人工智能技术在美国、欧洲和日本发展迅速,并且带动了多种信息科学领域的发展,信息学、控制学、仿生学、计算机学等领域技术均被运用到人工智能应用中去。人工智能与机器人避障的联系也日益紧密。

现有的多种机器人避障算法的实现:

1. 人工势场避障控制法

  人工势场避障控制法,是一种比较简单又新颖的做法,是另一种仿生学,仿照物理学中电势和电场力的概念,建立机器人工作空间中的虚拟势场,按照虚拟势场力方向,实现局部路径规划。通过构造目标位姿引力场和障碍物周围斥力场共同作用的人工势场,来搜索势函数的下降方向,然后寻找无碰撞路径。

  听起来很玄乎,但是早已经有应用产品了,Khatib曾应用于移动机器人的导航上。但是并没有得到大规模应用。因为即使对于简单环境很有效,但是都是在静态的研究中得出的,而没有考虑障碍物的速度和加速度的影响,所以在动态避障控制中,人工势场法避障控制不是很理想。因为在复杂的多障碍环境中,不合理的势场数学方程容易产生局部极值点,导致机器人未到达目标就停止运动,或者产生振荡、摆动等现象。另外,传统的人工势场法着眼于得到一条能够避障的可行路径,还没有研究出什么最优路径。2. 模糊逻辑控制避障法

  模糊逻辑控制避障法出现得并不晚,1965年美国的一位教授就提出过模糊逻辑的概念。1974年,英国伦敦大学一位教授利用模糊控制语句组成的模糊控制器控制锅炉和气轮机的运行获得成功,开始将模糊数学应用于自动控制领域,包括机器人领域。由于不必创建可分析的环境模型,目前模糊逻辑方法在解决机器人避开障碍物问题上己经有了大量的研究工作。另一个独特优点也让用专家知识调整规则成为可能,因为规则库的每条规则具有明确的物理意义。

  在模糊逻辑控制避障法中,模糊控制规则是模糊控制的核心。当前研究工作的新趋势之一是它的渐增本质,特别是在模糊控制规则的自动生成方面,即连同自动模糊数据获取,给予算法在线模糊规则学习能力,数据获取和规则生成均自动执行。

3. 栅格法避障控制法

  这属于用启发式算法在单元中搜索安全路径。赋予每个栅格一个通行因子后,路径规划问题就变成在栅格网上寻求两个栅格节点间的最优路径问题。搜索过程多采用四叉树或八叉树表示工作空间。

  栅格法以基本元素为最小栅格粒度,将地图进行栅格划分,比如基本元素位于自由区取值为0,处在障碍物区或包含障碍物区为1,直到每个区域中所包含的基本单元全为0或全为1,这样在计算机中就较容易建立一幅可用于路径规划的地图。

  栅格粒度越小,障碍物的表示会越精确,也就更好避障。但往往会占用大量的储存空间,而且算法也将按指数增加。

4.  声波避障控制法

  声波避障行为能够实时监测长距离超声波传感器,为机器人搜索开阔路径。当机器人离障碍物还有一定距离时,超声波传感器就能够检测到相关信息,并据此控制机器人离开。

  然而,超声波传感器对非常接近的物体会探测不到,这个距离称为物理探测盲区。在刚发射信号的时候,返回信号的阈值会被设定得很高以防止发射波直接触发接收器,因此如果检测的距离很短、阈值没有下降,返回信号已经到达接收器,这时接收器会认为这个返回信号是刚发出的信号从而拒绝接收,使超声波传感器形成一个探测盲区,没法对近距离物体探测。

  另一个缺陷是,如果在一个比较小的转弯角度上安装有平滑的表面,该表面能够将声纳波束向前反射,而不是反射回机器人。在这种情况下,由于没有回波返回,传感器就会产生一次漏报,机器人也会因此认为在自己行走的路径上没有障碍物存在。此时,声波避障行为不能得以触发,也就无法避障。

5.  激光雷达避障控制法

  近年来,激光雷达在移动机器人导航中的应用日益增多。这主要是由于基于激光的距离测量技术具有很多优点,特别是其具有较高的精度。

  激光雷达与其它距离传感器相比,能够同时考虑精度要求和速度要求,这一点特别适用于移动机器人领域。此外,激光雷达不仅可以在有环境光的情况下工作,也可以在黑暗中工作,而且在黑暗中测量效果更好。不过,该传感器也有一些相应的缺点,比如安装精度要求高、价格比较昂贵等。

参考文献:

[1] Gao Xin,Jia Qingxuan,Sun Hanxu,Chen Gang . Real-time dynamic system to path tracking and collision avoidance for redundant robotic arms[J].《The Journal of China Universities of Posts and Telecommunications》.2016

[2] Shih-An Li . Dynamic Obstacles Avoidance Based on Potential Field Implement on Mobile Robot[A]. 中国自动化学会控制理论专业委员会、The Society of Instrument and Control Engineers (SICE).Proceedings of the Society of Instrument and Control Engineers Annual Conference 2015[C].

[3] Y.C.Lei . Research on Obstacle Avoidance of Fire-Fighting Robot Based On Fuzzy Control[A]. Science and Engineering Research Center.Proceedings of 2015 International Conference on Computer Information Systems and Industrial Applications(CISIA2015)[C].Science and Engineering Research Center.2015

[4] Volodymyr Mnih,Koray Kavukcuoglu,David Silver,Playing Atari with Deep Reinforcement Learning.

[5] Sivaranjini Srikanthakumar. Optimisation-based Verification Process of Obstacle Avoidance Systems for Unicycle-like Mobile Robots[J]. International Journal of Automation amp;amp; Computing.2011

[6] A.Filipescu. Fuzzy Control and Bubble Rebound Obstacle Avoidance of a Mobile Platform Used as Robotic Assistant[A]. 中国自动化学会控制理论专业委员会(Technical Committee on Control Theory,Chinese Association of Automation).第二十九届中国控制会议论文集[C].中国自动化学会控制理论专业委员会(Technical Committee on Control Theory,Chinese Association of Automation). 2010

[7] 薛晗,马宏绪. Swarm intelligence based dynamic obstacle avoidance for mobile robots under unknown environment using WSN[J] .《Journal of Central South University of Technology》.2008

[8] Formation Control of Mobile Robots with Active Obstacle Avoidance[J]. 《自动化学报》.2007

[9] Kai Arulkumaran,Nat Dilokthanakul,Murray Shanahan,Classifying Options for Deep Reinforcement Learning,《Statistics》 2016

[10] X.Q.Guan. A Redundant DOFs Manipulator Motion Obstacle Avoidance Algorithm[A]. Advanced Science and Industry Research Center.Proceedings of 2015 International Conference on Automation,Mechanical and Electrical Engineering(AMEE 2015)[C].Advanced Science and Industry Research Center.2015

[11]Y.C.Lei. Research on Obstacle Avoidance of Fire-Fighting Robot Based On Fuzzy Control[A]. Science and Engineering Research Center.Proceedings of 2015 International Conference on Computer Information Systems and Industrial Applications(CISIA2015)[C].Science and Engineering Research Center.2015

[12] S Mahadevan,J Connell, Automatic programming of behavior-based robots using reinforcement learning, 《Artificial Intelligence》, 1992, 55(2#8211;3):311-365

[13] P Piggott,A Sattar ,Reinforcement learning of iterative behaviour with multiple sensors, 《Applied Intelligence》, 1994, 4(4):351-365

[14] 乔俊飞,侯占军,阮晓钢,基于神经网络的强化学习在避障中的应用, 中国过程控制会议, 2008

[15] 陈春林 陈宗海 卓睿 周光明,基于分层式强化学习的移动机器人导航控制,南京航空航天大学学报,2006, 38(1) ,TP24 TP18

[16] 赵冬斌 邵坤 朱圆恒 李栋 陈亚冉 王海涛 刘德荣 周彤 王成红,深度强化学习综述:兼论计算机围棋的发展,《控制理论与应用》2016年 第6期

[17] 唐鹏,李小坚,强化学习在移动机器人避障上的应用,《科学家》2016年第5期

[18] 陈兴国 俞扬 南京邮电大学计算机学院/软件学院,强化学习及其在电脑围棋中的应用,《自动化学报》2016年 第5期

[19] 史忠植,突破通过机器进行学习的极限,《科学通报》2016年 第33期

[20]IEEE Transactions on Neural Networks and Learning Systems special section on deep reinforcement learning and adaptive dynamic programming,《IEEE Transactions on Neural Networks and Learning Systems》 2017

2. 研究的基本内容、问题解决措施及方案

一:研究问题:

本实验采用深度强化学习算法来实现机器人避障功能。深度学习的概念源于人工神经网络的研究。含多隐层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。从广义上说深度学习的网络结构也是多层神经网络的一种。

而人工神经网络是由许多单元(又称神经元),按照一定的拓扑结构相互连接而成的一种具有并行计算能力的网络系统,它具有较强的非线性拟合能力和多输入多输出同时处理的能力。用在机器人上,就是通过模拟人脑神经网络处理信息的方式,从另一个研究角度来获取具有人脑那样的信息处理能力。

  对于智能机器人来说,采用人工神经网络进行信息融合有一个最大优势,即可大规模地并行处理和分布式信息存储,具有良好的自适应、自组织性,以及很强的学习功能、联想功能和容错功能,接近人脑的信息处理模式。

具体问题

1.本实验即在原有小游戏flappy bird基础上进行改进。Flappy bird是一个垂直分向的智能体躲避障碍物算法,是单Q算法。而我在本次研究中则将机器人避障看作是平面上的agent(智能体)躲避障碍物从一个角成功达到平面的另外一个角落。二者原理基本相同,机器人避障其实是对flappy bird的深化。

2.通过Q-Learning算法来实现机器人的路线学习功能,在这基础上加上记忆功能,所以又要运用一个Q,即运用double Q来实现,从而完成机器人避障实验。

主要问题就是利用深度Q网络来解决机器人的学习以及记忆双功能。研究用到是深度网络的基础#8212;#8212;double Q。以后的课题我们会遇到越来越多的Q值,当然这不是本次实验的内容。

二:研究手段:

一、开发语言Python

本次的开发用到的是一种新语言#8212;#8212;Python 。Python 是由 Guido van Rossum 在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计出来的。

Python 特点:

1. 易于学习2.易于阅读3.易于维护4.一个广泛的标准库:跨平台的,在UNIX,Windows和Macintosh兼容很好。5.互动模式6.可移植7.可扩展8.数据库:Python提供所有主要的商业数据库的接口。9.GUI编程:Python支持GUI可以创建和移植到许多系统调用。10.可嵌入。

总之,Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。它的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。所以这里选择用Python而不是其他编程语言。

二、算法要求

通过习得强化学习,再到深度学习,再到二者的结合,最后完成深度Q网络的学习,运用到机器人避障。

1 Reinforcement Learning

强化学习就是智能体通过与环境的交互学习一个从环境状态到行为映射,学习的目标是使其累积折扣回报值最大。传统的强化学习依赖于组合人工特征和线性价值函数或策略表达来实现。

2 Markov Decision Process

状态和动作的集合,以及相邻两次转换的规则,构成了马尔科夫决策过程。每一轮过程(如一局游戏)是一系列有限的状态、动作和回报:

  s#8320;,a#8320;,r#8321;,s#8321;,a#8321;,r#8322;,s#8322;,#8230;,sn-1,an-1,rn,sn

 这里si表示状态,ai表示动作,ri 1表示执行动作后得到的回报。

3 Discounted Future Reward

为了取得长期良好的表现,我们不仅需要考虑即刻的回报,还有未来将会取得的回报。

假定有一次马尔科夫决策过程,我们很容易计算出一轮中取得的所有回报(total reward):

  R=r1 r2 r3 #8230; rn

基于此,时间t之后的所有未来回报(total future reward)可以表示为:

  Rt=rt rt 1 rt 2 #8230; rn

但由于我们的环境是随机的,不能保证下次进行同样动作时候可以得到同样的回报。我们越深入未来,越可能出现分歧。出于这个原因,通常使用未来回报折扣来代替:

  Rt=rt rt 1 rt 2 #8230;rn

其中γ是介于0到1之间的折扣因子#8212;#8212;回报越是深入未来,γ值越小。很容易看出,在t时刻的未来回报折扣可以用t 1时刻同样的事情来表示:

  Rt=rt yrt 1 y2rt 2#8230; yn-trn

  如果我们令折扣因子γ=0,那么这种策略将是目光短浅的,我们只依赖于即刻回报。如果我们希望保持即刻回报与未来回报之间的平衡,应该将折扣因子γ设为与0.9近似的值。如果的环境是恒定的,相同的动作总是能够得到同样的回报,那么我们可以把折扣因子设为1。

 对于一个agent良好的策略是,总是选择能够使未来回报(折扣)最大化的动作。

4 Q-learning

在Q学习中,我们定义一个函数Q(s, a),表示在状态s下进行a动作时最大的未来回报折扣,并以此继续优化。

Q(st,at)=max Rt 1

一旦你使用了神奇的Q函数,那么答案就相当简单#8212;#8212;选择Q值最高的那个动作。

  π(s)=ar gmaxa Q(s,a)

其中π表示策略,我们在每个状态下如何选择动作。

与上一节的未来回报折扣一样,可以用下一个状态s#8217;的Q值来表示s状态下执行a动作时的Q值。

  Q(s,a)=r ymaxa',Q(s',a')

 这被称为贝尔曼方程。

Q学习的主要思想是,我们可以使用贝尔曼方程迭代逼近Q函数。在最简单的情况下,Q函数用一个表来实现,状态作为行,动作作为列。

5 Deep Q Network

DeepMind使用的网络架构如下:

 网络的输入是4个84#215;84的灰度游戏屏幕图像。网络的输出是每个可能动作(Atari中的18个)的Q值。Q值可以是任何实数,这样就可以使用回归,通过简单的平方误差损失进行优化。

  给定一个转换lt; s, a, r, s#8217;gt;,之前算法中Q表的更新法则需要替换成:

  1、对于当前状态s进行前馈操作,得到所有动作的预测Q值。

  2、对于下一个状态s#8217;进行前馈操作,并计算所有网络输出的最大值maxa#8217; Q(s#8217;, a#8217;)。

  3、将针对某个动作的Q值设定为r γmaxa#8217; Q(s#8217;,a#8217;)(使用步骤2中计算出的最大值)。对于其他的动作,将Q值设定为步骤1中的Q值,对于这些输出把误差设为0。

  4、使用反向传播更新权值。

  经验重播(Experience Replay)

  现在,我们已经知道了如何使用Q学习来估计每个状态下未来回报,以及使用卷积神经网络来逼近Q函数。但事实证明,使用非线性函数的Q值近似不是那么稳定。让它收敛有很多种方法。这也相当耗时,使用一块GPU大概要花一个星期。

  最重要的诀窍是经验重播。在游戏中,所有的经验lt; s, a, r, s#8217;gt;被存储在重播内存中。在训练网络时,从重播内存中随机使用小批次,代替多数最近的转换。这打破了后续训练样本的相似性,这可能会导致网络陷入局部最小中。经验重播使得训练任务与常规的监督式学习非常相像,简化了算法的调试和测试。可以从人类玩家中获取所有的经验来训练网络。

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图