基于PPO算法的仿生鱼循迹智能控制.pdf
《基于PPO算法的仿生鱼循迹智能控制.pdf》由会员分享,可在线阅读,更多相关《基于PPO算法的仿生鱼循迹智能控制.pdf(9页珍藏版)》请在咨信网上搜索。
1、基于 PPO 算法的仿生鱼循迹智能控制李云飞1,3,严嫏4,张来平2,3,邓小刚2,邹舒帆41(四川大学计算机学院,成都610207)2(军事科学院,北京100071)3(四川大学天府工程数值模拟与软件创新中心,成都610207)4(国防科技大学空天科学学院,长沙410003)通信作者:邹舒帆,E-mail:摘要:仿生鱼具有广阔的工程应用前景,对于仿生鱼的控制,首先要解决的是循迹问题.然而,现有的基于 CFD 方式和传统控制算法的鱼游控制方法存在训练数据获取成本高、控制不稳定等缺点.本文提出了基于 PPO 算法的仿生鱼循迹智能控制方法:使用代理模型替代 CFD 方式产生训练数据,提高数据的产生
2、效率;引入高效的 PPO 算法,加快策略模型的学习速度,提高训练数据的效用;引入速度参数,解决鱼体在急转弯区域无法顺利循迹的问题.实验表明,我们提出的方法在多种类型的路径上均具有更快的收敛速度和更加稳定的控制能力,在仿生机器鱼的智能控制方面具有重要的指导意义.关键词:深度强化学习;仿生鱼;智能控制;代理模型;PPO引用格式:李云飞,严嫏,张来平,邓小刚,邹舒帆.基于 PPO 算法的仿生鱼循迹智能控制.计算机系统应用,2023,32(9):230238.http:/www.c-s- Control of Bionic Fish Tracking Based on PPO AlgorithmLIY
3、un-Fei1,3,YANLang4,ZHANGLai-Ping2,3,DENGXiao-Gang2,ZOUShu-Fan41(CollegeofComputerScience,SichuanUniversity,Chengdu610207,China)2(AcademyofMilitaryScience,Beijing100071,China)3(TianfuEngineering-orientedNumericalSimulation&SoftwareInnovationCenter,SichuanUniversity,Chengdu610207,China)4(CollegeofAero
4、spaceScienceandEngineering,NationalUniversityofDefenseTechnology,Changsha410003,China)Abstract:Bionicfishhasbroadprospectforengineeringapplication.Forthecontrolofbionicfish,thefirstthingtosolveisthetrackingproblem.However,theexistingfishcontrolmethodsbasedonCFDmethodsandtraditionalcontrolalgorithmsf
5、eaturehightrainingdataacquisitioncostsandunstablecontrol.ThisstudyproposesanintelligentcontrolmethodbasedonthePPOalgorithmforbionicfishtracking.ThesurrogatemodelisemployedinsteadofCFDtogeneratetrainingdatatoimprovethedatagenerationefficiency.TheefficientPPOalgorithmisintroducedtoacceleratethelearnin
6、gspeedofthestrategymodelandimprovetheutilityofthetrainingdata.Thespeedparameterisintroducedtosolvetheproblemthatthefishcannottracksmoothlyinthesharpturningarea.Experimentsshowthattheproposedmethodhasfasterconvergencespeedandmorestablecontrolabilityinvariouspaths,withguidingsignificancefortheintellig
7、entcontrolofbionicroboticfish.Key words:deepreinforcementlearning;bionicfish;intelligentcontrol;proxymodel;proximalpolicyoptimization(PPO)计算机系统应用ISSN1003-3254,CODENCSAOBNE-mail:ComputerSystems&Applications,2023,32(9):230238doi:10.15888/ki.csa.009231http:/www.c-s-中国科学院软件研究所版权所有.Tel:+86-10-62661041基金项
8、目:国家重大专项(GJXM92579)收稿时间:2023-02-22;修改时间:2023-03-22;采用时间:2023-04-07;csa 在线出版时间:2023-07-14CNKI 网络首发时间:2023-07-17230研究开发ResearchandDevelopment与普通的水下推进器相比,鱼游具有推进效率高、机动性能好、隐蔽性能好等显著优点.仿生机器鱼结合了鱼类推进机理和机器人技术,为研制水下推进器提供了新思路,具有重要的研究价值和应用前景1.对于仿生鱼的控制,首先要解决的是循迹问题,即鱼体能够自主、准确地沿规定路线游动,这需要引入合适的闭环控制算法.比例积分微分(PID)算法被广
9、泛应用于传统的机器人控制领域,该算法通过减少目标与实际情况的偏差完成任务,对于流程清晰的问题非常有效.然而,在复杂流动环境中,仿生鱼不同时刻执行同一动作指令时,所产生的位移并不相同,导致 PID 算法无法进行稳定的控制,因此,需要使用更加智能的控制算法.最近的研究成果表明,强化学习算法在一定程度上具备解决复杂问题的通用智能,已被用于解决多种复杂的机器控制问题,这为仿生鱼控制提供了新的研究方向.本文提出了一种基于强化学习的仿生鱼智能控制方法,用以解决仿生鱼的循迹问题.该方法有两个显著优势:第一,鱼体不需要对环境有任何先验知识,而是通过试错对环境信息进行采样,从而完成自主学习;第二,该方法能够解决
10、鱼体游动中存在随机扰动的问题,从而精准控制鱼体沿规定路线游动.在多个场景中的实验结果表明,本文提出的方法对探索鱼类在复杂环境中的游动机制与仿生鱼智能控制方面有着重要的指导意义.1相关工作仿生鱼的控制属于学科交叉问题,包括计算流体动力学(CFD)和控制算法两部分.其中,CFD 用于计算鱼体的受力情况,而控制算法用于闭环控制,使鱼体可以根据设定好的目标自行选择自己的游动方式25.许多传统算法6都可以实现自动控制,但在鱼游控制中表现不佳.Tian 等人7通过反馈控制方式实现了鱼体的自主游动控制,但生成的迹线波动较大,不够平滑.Khan 等人8使用 PID 算法控制机器鱼的下沉深度,发现即使经过适当的
11、增益调优,PID 控制器仍存在一定的局限.而在人工智能领域,Novati 等人9使用深度强化学习(DRL)算法实现对水下 2D 椭圆型模型的控制,他们发现使用 DRL 生成的迹线更加光滑,并且比传统的控制优化算法更加稳定.Zhu 等人10使用深度循环 Q 网络获取鱼游的序列信息,控制鱼体完成了静水中捕猎、流动水中维持自身位置等任务.Yan 等人11,12使用 DRL 训练鱼体完成循迹任务,在使用直线完成训练后,鱼体可以沿着曲线游动,同时能够完成简单的避障游动,说明经过训练后的鱼体具有一定的泛化能力.强化学习为解决仿生鱼游动的控制问题提供了智能方案,但仍然存在一些问题.在 CFD 中,为了得到流
12、体对鱼作用力的精确值,需要进行鱼体模型离散化,网格量达到数十万乃至百万,导致完成一次数值解算非常耗时;同时,由于鱼体在流体中的游动是连续的,鱼体在水中的每一时刻的运动状态都必须使用 CFD 的方式计算得到.这两个因素叠加,使得 CFD 模拟的时间成本巨大,难以满足强化学习对大量训练数据的需求.为了解决上述问题,本文从两方面进行改进:一是提高训练数据的产生效率,用代理模型代替数值模拟产生训练数据,提升训练效率;二是提高训练数据的效用,通过引入更加高效的强化学习算法 PPO 和训练策略,加快策略模型的学习速度,减少对训练数据的需求.此外,文献 11 中发现仿生鱼容易在急转弯区域偏移过度直至越界,导
13、致循迹任务的失败,并通过增加转弯处的边界宽度以避免这一问题.本文引入对速度参数的训练,使鱼体学习在急转弯区域主动减速,从而顺利通过该区域.2模型和算法如图 1 所示,强化学习的基本结构由环境(Environ-ment)、智能体(Agent)和策略(Policy)这 3 部分组成.环境用于产生训练数据,它根据当前状态(State)和智能体的动作(Action),利用状态转移函数得到下一状态.智能体利用大量的训练数据更新策略(Policy),以获取更高的奖励值.在鱼游问题中,环境指的是鱼体所处的流体环境,训练数据指的是鱼体的游动数据.Reward奖励Environment环境Policy策略Act
14、ion行为State状态Agent智能体图 1强化学习模型示意图2023年第32卷第9期http:/www.c-s-计 算 机 系 统 应 用ResearchandDevelopment研究开发231 2.1 代理模型过往的研究中大多采用 CFD 方法模拟流体环境,得到的训练数据真实可靠,与真实场景误差很小,但时间成本十分高昂.本文使用代理模型对鱼游环境进行建模,提高数据的产生效率,同时兼顾了数据精度.代理模型包括鱼体动作数据库和雷达系统两部分.2.1.1鱼体动作数据库鱼体动作数据库储存了鱼体所有动作能够产生的位移效果,用于描述环境的状态转移函数.构建该数据库的步骤如下.首先,建立 2D 鱼体
15、几何模型,对模型生成计算域的初始重叠网格并分区,图 2 中展示了鱼体不同动作下生成的网格及分区情况.(a)初始网格(b)小变形网格(c)大变形网格图 2仿生鱼网格分区示意图然后,使用 CFD 软件在鱼体模型上完成对 N-S 方程13,14的求解,计算初始流场信息,从而获取鱼体在流体中游动时所受到的压力和阻力信息.最后,结合动力学/运动学方程,求得鱼体在某一状态下使用某动作能够得到的位移和转角,并将对应结果存储在数据库中.在本文中,共计算了 25 个鱼体动作,每个动作包括整周期和半周期两个状态.实际训练中,为了模拟流体环境的非定常特性,要在数据库的数据上叠加一个随机值(噪声),使得鱼体每一次的动
16、作都会在一定范围内产生不确定的位移和转角.代理模型通过上述方式,仅在数据准备阶段进行一次 CFD 计算,并在之后的训练中使用该结果,从而在可接受的误差范围内,大大降低了时间成本.由于CFD 的原理并不是本文的重点,这里只简要叙述,更详细的介绍可以查阅文献 11,12.2.1.2雷达系统鱼体使用雷达系统获取环境状态信息,如图 3 所示,中间的实线是轨迹,鱼体将学习如何沿着该轨迹平滑游动.点 P 表示鱼的质心在轨迹上的投影,点 Q 表示雷达范围与轨迹的交点,鱼体在游动时总是将此点视为目标点,d 表示鱼体偏移轨迹的距离,v 表示鱼体当前的速度.Left-boundaryBoundary-widthR
17、ight-boundaryPdvQ图 3雷达系统示意图鱼体游动过程中,使用雷达系统获取当前状态信息并传递给鱼体.鱼体将获得的环境信息作为输入,利用策略模型从数据库中选取动作,每个动作都使鱼体完成一定的位移和转向,并到达新的位置,雷达系统再次获取新的状态信息.重复以上步骤,即可控制鱼体完成游动过程.2.2 训练算法在鱼游问题中,产生训练数据花费的时间占总训练时间的 90%以上.因此,提高数据的效用,加快策略模型的学习速度,可以减少对训练数据的需求,节省大量时间成本.为了提高训练数据的效用,本文使用近端策略优化(PPO)算法作为鱼体的训练算法.计 算 机 系 统 应 用http:/www.c-s-
18、2023年第32卷第9期232研究开发ResearchandDevelopment2.2.1PPO 算法PPO 算法15是基于 AC 架构16的算法,可以解决离散动作空间和连续动作空间的强化学习问题17.如图 4 所示,AC 架构的算法一般由两个神经网络组成:Actor 网络和 Critic 网络.Actor 网络的输入为状态,输出为策略;Critic 网络的输入为状态,输出为状态的价值.AC 算法的训练中,Critic 网络的学习目标是尽可能准确地评价当前状态的价值;而 Actor 网络的学习目标是找到最优策略*,使得 Critic 网络的输出最大化.stActor网络V(st)V(st+1
19、)最小化带权重梯度TD-errorRCritic网络stst+1图 4AC 算法的一般框架相比 AC 算法,PPO 算法有两个改进.第一,使用 TD(n)算法取代 TD(0)算法,增强了算法的前向探索能力,使得对动作的效果评估更加准确,提高了算法泛化性.具体做法是使鱼体按照当前策略运动 n 步,得到 n 步后的价值,再往回反推每一步的价值.bAtrt()第二,解决了 AC 算法的 on-policy 问题,使算法可以重复利用训练数据,从而提高了数据利用率,加快算法收敛速度.具体方法是使用重要性采样:计算得到优势函数和重要性权值的值,将二者相乘用于更新 Actor 网络.rt()的计算是以目标策
20、略出现动作的概率值除以行为策略出现同一动作的概率值,定义如下:rt()=(at|st)old(at|st)(1)bAtGt优势函数相当于 AC 算法中的 TD-error,定义如式(2)所示,其中表示 TD(n)算法下的折扣回报,定义如式(3)所示,n 为向前探索的步数.bAt=GtV(st)(2)Gt=rt+1+rt+2+n1V(sn)(3)1,1+综上,更新 Actor 网络的损失函数如式(4)所示,其中 clip 函数用于将重要性权重的值限制在()范围内.Lclip()=bEtmin(rt()bAt,clip(rt(),1,1+)bAt)(4)GtV(st)而 Critic 网络的更新方
21、法是:将折扣回报与Critic 网络预测值的均方误差 MSE 作为损失函数,执行梯度下降算法.2.2.2状态、动作空间和奖励函数状态空间中共有 5 个状态特征:包括 4 个空间特征和 1 个时间特征.空间特征变量的示意图如图 3 中的雷达系统所示,各特征变量的含义如表 1 所示.表 1模型中状态变量含义状态含义鱼体速度方向与轨迹方向的夹角鱼体到目标点的连线与轨迹方向的夹角d鱼体质心偏离轨迹的距离v鱼体游动速度Tt时间特征值(整周期为0,半周期为1)鱼体的动作空间包含 25 个离散值,分别对应鱼体动作数据库中存储的 25 个动作的索引值.R1R2R1|d|boundary_width|d|算法的
22、训练目标是使鱼体能够以平滑的路线沿着特定轨迹游动并到达终点,游动过程中尽可能减少鱼体距离迹线的偏差和时间花费,并规避越界情况的发生.为达到这一目的,奖励函数的设计包括距离奖励和越界惩罚两部分.的定义如式(5)所示,其中为鱼体与轨迹的距离,为边界与轨迹的距离.在游动过程中,鱼体每执行一个动作,获得一个奖励值,获得的奖励值与成反比.R1=1|d|boundary_width(5)R2表示鱼体执行一个动作导致超出边界时,获得惩罚值(50),并结束本轮训练.2.3 引入速度参数现有的模型条件下,鱼体在急转弯处表现不佳,很容易偏离轨迹并越界,无法完成寻迹任务.然而,这种急转弯广泛存在于鱼类的真实运动轨迹
23、中,鱼类面对障碍、捕食或遇到天敌时,都需要急速转弯机动.若无法实现对急转弯曲线的循迹,会极大限制仿生鱼的机动性能.为解决这一问题,需要在现有模型中加入对速度参数的训练.2023年第32卷第9期http:/www.c-s-计 算 机 系 统 应 用ResearchandDevelopment研究开发2332.3.1速度参数对动作空间进行改进,在鱼体 25 个动作的基础上,增加一个减速标志,并且使用另一个网络 Actor2 完成训练.减速标志是一个布尔值,True 表示执行减速动作,False 表示不对速度进行干扰.v0v0代理模型中不考虑减速时,鱼体速度 v 的定义如式(6)所示,其中是鱼体游速
24、的上限值,n 为鱼体游动步数,初始值为 1 并不断增大.是为了模拟流体的非定常特性而增加的随机因子,其值为 0.91.1 之间的随机值.可以看出,随着鱼体游动,n 越来越大,速度 v 随之增大,最后在上限值处波动.v=v0(111.15n)(6)考虑减速机制时,为了简化问题,当代理模型从Actor2 网络中获取到的减速标志为 True 时,将 n 重置为 1,使鱼体速度 v 恢复为初始状态,并在之后的游动中根据式(6)逐渐增大.为了防止出现 RewardHacking 问题(鱼体为了获得更高的奖励而全程低速游动),需要引入新的奖励函数 R3.R3表示当鱼体执行减速动作时,获得一个惩罚值(5),
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 PPO 算法 仿生 鱼循迹 智能 控制
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。