[发明专利]一种基于策略重用和强化学习的导航路径规划方法有效
申请号: | 201910255926.8 | 申请日: | 2019-04-01 |
公开(公告)号: | CN110081893B | 公开(公告)日: | 2020-09-25 |
发明(设计)人: | 郝建业;王汉超;侯韩旭 | 申请(专利权)人: | 东莞理工学院 |
主分类号: | G01C21/34 | 分类号: | G01C21/34;G01C21/20 |
代理公司: | 深圳市道勤知酷知识产权代理事务所(普通合伙) 44439 | 代理人: | 何兵;饶盛添 |
地址: | 523000 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 策略 重用 强化 学习 导航 路径 规划 方法 | ||
1.一种基于策略重用和强化学习的导航路径规划方法,其特征在于,该方法包括以下步骤:
步骤一、选取当前路网地图对应的策略库,计算策略库中未包含关键地图位置的源策略的重要状态;
步骤二、设置最大训练周期的个数为K,利用置信度从策略库的源策略中选取出重用策略,并对自身策略或选取出的重用策略进行重用;
步骤三、策略重用获得的新策略通过强化学习进行更新,获得更新后的新策略;
步骤四、判断是否将更新后的新策略加入策略库中,若加入,则获得新的策略库继续用于导航路径规划;若不加入,则将原策略库继续用于导航路径规划;
所述步骤一的具体过程为:
选取当前路网地图对应的策略库,对于策略库中未包含关键地图位置的源策略,则需要计算未包含关键地图位置的源策略的重要状态;
对于需要计算重要状态的任一源策略,初始化浮动阈值θ=0,再进入M’个策略执行周期,每个策略执行周期的第一步均选取路网地图的一个边缘位置作为初始状态s0,对于每个策略执行周期的第t步,车辆导航系统的当前状态为st-1,选取使得数值函数Q(st-1,a)值最大的动作at来行动到达st,并在第t+1步判断st是否为更新重要状态,若
其中:st为第t+1步车辆导航系统的当前状态;C(st)为状态st上的数值函数,C(st+1)为状态st+1上的数值函数,C(st-1)为状态st-1上的数值函数;
则将源策略的临时的重要状态更新为st,并更新θ:
M’个策略执行周期结束后,将最终保留下来的临时的重要状态作为该源策略的重要状态
同理,计算出全部的需要计算重要状态的源策略的重要状态;
所述步骤二的具体过程为:
步骤二一、在第一个训练周期将各个源策略πk的初始置信度pk均设置为0.5;对于之后的每一个训练周期,各个源策略πk的置信度将通过在前一个训练周期车辆导航系统是否达到目标位置sG且通过源策略πk的重要状态来确定,如式(3)所示:
其中:Ik代表判决条件;
设τ′为上一训练周期包含所有经过的状态的一条轨迹,则有:
sG∈τ′且代表上一训练周期达到目标位置sG且通过源策略πk的重要状态
每一个训练周期开始,若某源策略的置信度低于最高置信度的源策略的置信度的一半时,则置信度低于的一半的源策略将不再作为备选源策略重用于当前任务;
步骤二二、继续在剩余的备选源策略中选取,若第n-1个训练周期的轨迹τn-1达到任务终止状态sG且经过至少一个备选源策略的重要状态,则取τn-1中从sG开始到最后一个重要状态期间所经过的所有状态组成的集合Sn-1,且集合Sn-1中包含sG和分别计算出每个源策略πk在集合Sn-1中所有状态上的C值的均值
若中最大的值超过阈值则取使最大的k对应的源策略πk作为重用策略π′;若第n-1个训练周期的轨迹τn-1未达到任务终止状态sG和任何备选源策略的重要状态,或求得的中最大的值未超过阈值则依次取各源策略以及自身策略作为重用策略π′;
步骤二三、每个训练周期均对当前训练周期内选定的重用策略π′进行重用,设置最大限定步数为H,第一步迭代开始时随机选取路网地图的一个位置作为初始状态s0′,每一步迭代车辆导航系统均将执行一个动作;
迭代过程中车辆导航系统的探索行为分为以下两种情况:
若以源策略作为重用策略且还未到达该源策略的重要状态,则选取使得选定的重用策略的状态-动作值函数Q(sh-1,a)值最大的动作;
若以自身策略作为重用策略或以源策略作为重用策略且该策略的重要状态在当前训练周期已经经过,则依概率∈选取使得自身策略的状态-动作值函数Q(sh-1,a)值最大的动作,或依概率(1-∈)随机选择一个动作;
每一步迭代均获得对自身策略更新后的策略,每一步迭代都对更新后策略的Q函数和C函数进行处理;
对于第h步迭代,车辆导航系统的当前状态为sh-1,经过选择的动作ah-1到达sh,并得到一个收益rh,每一步迭代中更新Q值、并预更新C值:
C′(sh)←(1-α)C(sh)+α·C(sh-1)+1 (8)
其中:γ是折扣因子,取值为[0,1];α为更新步长,C′函数对于重复经过的状态只在第一次经过时进行预备更新,且在当前训练周期到达目的位置时候才将C′函数的值直接赋值给C,作为正式对C的更新;
当到达终止状态或达到最大限定步数H后,停止当前训练周期;
若经过K’个训练周期,备选策略数目仍然多于一个,则跳出步骤二直接执行步骤三;
若已经持续重用某一源策略超过K’个训练周期且最近K’个训练周期达到目标位置的次数占比不高于或不低于则跳出步骤二直接执行步骤三;否则继续步骤二的下一个训练周期,直至跳出步骤二来执行步骤三;
若步骤二的训练周期已经达到K步,则跳出步骤二来执行步骤三;
所述步骤三的具体实现过程为:
对策略重用获得的新策略进行强化学习,每个训练周期的最大迭代步数为H步,每个训练周期开始时随机选取路网地图的一个位置作为初始状态s0″,在第h步车辆导航系统的当前状态sh-1下,依概率∈选取使得自身策略的状态-动作值函数Q(sh-1,a)值最大的动作且依概率(1-∈)随机选择一个动作,并经过选择的动作ah-1到达sh,得到一个收益rh,在每一步中更新Q值,并预更新C值,更新方式与式(7)和式(8)相同:
C′(sh)←(1-α)C(sh)+α·C(sh-1)+1 (8)
若步数超过H或车辆导航系统到达终止状态,则跳出当前周期;
设ε=0.001,若Q函数值满足收敛条件:
Qn(s,a)代表第n个训练周期更新后的Q值,Q′n-N′(s,a)代表第n-N′个训练周期更新后的Q值;
Q函数值满足收敛条件后得到训练好的Q函数,从真实环境的当前位置出发依次按照各个位置s上使得函数Q(s,a)最大的动作a行动,并到达终止状态跳出步骤三进入步骤四;否则继续步骤三的下一个周期;
结束步骤三后即获得更新后的新策略;
所述判断是否将更新后的新策略加入策略库中,其具体过程为:
计算源策略相对于更新后的新策略的KL散度DKL来判定源策略是否能够代表更新后的新策略,如式(10)所示:
式(10)中DKL值越大,越表明源策略不能代表更新后的新策略,当DKL超过设定阈值δ,单向KL散度方法决定将更新后的新策略加入策略库中;
计算更新后的新策略相对于源策略的KL散度DKL-inv来判定更新后的新策略是否能代表源策略,如式(11)所示:
式(11)中DKL-inv值越小,表示更新后的新策略能够替代源策略,当DKL值超过设定阈值δ,而DKL-inv值却低于设定阈值δ时,决定用更新后的新策略替换掉策略库中代表性弱的源策略。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东莞理工学院,未经东莞理工学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910255926.8/1.html,转载请声明来源钻瓜专利网。