← 返回列表

一种基于深度强化学习的非合作目标捕获方法

申请号: CN202311655229.4
申请人: 哈尔滨工业大学
申请日期: 2023/12/5

摘要文本

一种基于深度强化学习的非合作目标捕获方法,它属于空间机械臂控制与非合作目标捕获领域。本发明解决了当同时要求目标捕获和能量、时间损失性能优化时,现有深度强化学习算法训练的时间成本高以及目标捕获的成功率低的问题。本发明针对空间机械臂非合作目标抓捕这类复杂高维控制问题,提出了预训练加主任务训练的方法,在预训练过程中完成目标抓捕任务,并在主任务训练过程中对抓捕时的待优化目标函数进行优化,解决了在训练过程中同时进行抓捕和目标函数优化时存在的训练成功率低,算法难以收敛的问题,而且训练时间成本较低、利用训练好的控制策略进行目标捕获的成功率高。本发明方法可以应用于非合作目标捕获。

专利详细信息

项目 内容
专利名称 一种基于深度强化学习的非合作目标捕获方法
专利类型 发明申请
申请号 CN202311655229.4
申请日 2023/12/5
公告号 CN117464687A
公开日 2024/1/30
IPC主分类号 B25J9/16
权利人 哈尔滨工业大学
发明人 邵翔宇; 雷文骁; 赵彤宇; 张欧阳; 陈伟良; 孙光辉
地址 黑龙江省哈尔滨市南岗区西大直街92号

专利主权项内容

1.一种基于深度强化学习的非合作目标捕获方法,其特征在于,所述方法具体包括以下步骤:步骤一、确定待优化目标函数C以及强化学习控制策略的状态向量和动作向量;步骤二、根据漂浮基空间机械臂的动作向量维度确定控制策略函数π、第一价值函数第二价值函数/>及待优化损失函数C的网络结构,其中,θ是控制策略函数的网络参数,φ是第一价值函数的网络参数,φ是第二价值函数的网络参数,ψ是待优化损失函数的网络参数;θψ12步骤三、设置预训练步数为T、主任务训练步数为T、任务每一幕的长度、策略更新时batch的大小、缓冲器的容量、策略更新频率以及训练时的超参数;premain所述超参数包括控制策略函数学习率λ、价值函数学习率λ、待优化损失函数学习率λ、温度系数学习率λ和软更新系数τ;θφψα步骤四、设计预训练奖励函数及优化奖励函数;步骤五、初始化控制策略函数π、第一价值函数第二价值函数/>及待优化损失函数C的网络参数;并设置第一目标价值函数/>第二目标价值函数/>和目标待优化损失函数/>第一目标价值函数/>第二目标价值函数/>和目标待优化损失函数/>的参数利用软更新系数τ、第一价值函数/>第二价值函数/>和待优化损失函数C的网络参数进行软更新;θψψ步骤六、初始化预训练步数t=1;步骤七、重置训练环境,将漂浮基空间机械臂和非合作目标置为初始状态;步骤八、在预训练阶段的第t步,从环境中获取当前状态s后,将当前状态s输入控制策略函数π的网络,控制策略函数π的网络输出动作分布的均值μ和方差σ,再从动作分布中采样得到当前状态下漂浮基空间机械臂系统要执行的动作是动作分布,动作分布为正态分布;ttθθtt漂浮基空间机械臂系统执行动作a,与环境交互后获得奖励r和待优化奖励r,并进入下一个状态s;将元组(s, a, r, r, s)存入缓冲器;ttpretoptt+1tttpretoptt+1步骤九、判断当前幕的任务是否结束,即判断步数是否达到当前幕的长度;若当前幕的任务未结束,则令t=t+1,利用状态s返回执行步骤八;t+1否则,若当前幕的任务结束,则根据策略更新频率判断是否需要更新策略;若达到策略更新频率,则从缓冲器中采样一个batch的元组更新控制策略函数π的网络参数、第一价值函数的网络参数、第二价值函数/>的网络参数、待优化损失函数C的网络参数和温度系数α,并分别采用更新后第一价值函数/>的网络参数、第二价值函数/>的网络参数和待优化损失函数C的网络参数对第一目标价值函数/>的网络参数、第二目标价值函数/>的网络参数和目标待优化损失函数/>的网络参数进行软更新,再执行步骤十;θψψ否则未达到策略更新频率,则直接执行步骤十;步骤十、判断是否达到设置的预训练步数T;pre若达到设置的预训练步数,则结束预训练阶段,并执行步骤十一;若未达到设置的预训练步数,则令t=t+1,返回执行步骤七;步骤十一、将训练步数设置为主任务训练步数T,更新任务的目标函数;并初始化训练步数t=1;main步骤十二、重置训练环境,将空间机械臂和非合作目标置为初始状态;步骤十三、在训练过程的第t步,从环境中获取当前状态s′,再将当前状态s′输入控制策略函数π的网络,控制策略函数π的网络输出动作分布的均值μ′和方差σ′,从动作分布/>中采样得到当前状态下空间机械臂系统要执行的动作空间机械臂系统执行动作a′,与环境交互后获得奖励r和待优化奖励r,并进入下一个状态s′;ttθθttttpretoptt+1将元组(s′, a′, r, r, s′)存入缓冲器;tttpretoptt+1步骤十四、判断当前幕的任务是否结束,即判断步数是否达到当前幕的长度;若当前幕的任务未结束,则令t=t+1,利用状态s′返回执行步骤十三;t+1否则,当前幕的任务结束,根据策略更新频率判断是否需要更新策略;若达到策略更新频率,则从缓冲器中采样一个batch的元组,采用Lagrange法更新控制策略函数π、价值函数Q、待优化损失函数C的网络参数和Lagrange乘子β,其中,θφψ并分别使用更新后价值函数Q的网络参数和待优化损失函数C的网络参数对目标价值函数的网络参数和目标待优化损失函数/>的网络参数进行软更新,再执行步骤十五;φψ否则未达到策略更新频率,则直接执行步骤十五;步骤十五、判断是否达到设置的训练步数;若达到设置的训练步数,则结束训练阶段,执行步骤十六;若未达到设置的训练步数,则令t=t+1,返回步骤十二;步骤十六、将结束训练时获得的控制策略函数的网络参数作为训练好的网络参数,根据训练好的网络参数对漂浮基空间机械臂系统进行实时控制。