掌桥专利:专业的专利平台
掌桥专利
首页

基于DDPG算法的臂架动作模型训练方法、臂架动作推荐方法

文献发布时间:2023-06-19 19:30:30


基于DDPG算法的臂架动作模型训练方法、臂架动作推荐方法

技术领域

本发明涉及自动控制技术领域,特别是涉及一种基于DDPG算法的臂架动作模型训练方法、臂架动作推荐方法、电子设备及可读存储介质。

背景技术

机械臂架作为一种智能化机械设备,其主要功能是协助或替代人类完成一定的工作任务。目前,泵车、汽车起重机等这类具有多关节臂架的工程装备,主要依靠多个相关人员协同作业完成臂架动作的控制。然而,这类装备臂架长、姿态多,且多为高空作业,在工地复杂的环境下,无法很好地确定臂架所要执行的动作,以满足使臂架合理运动和/或达到期望状态的需求。

发明内容

有鉴于此,本发明的目的在于提供一种基于DDPG算法(Deep DeterministicPolicy Gradient,深度确定性策略梯度算法)的臂架动作模型训练方法、臂架动作推荐方法、电子设备及可读存储介质,基于DDPG算法训练臂架动作模型,且训练时使用关联于臂架的姿态、位置、动作节臂数量等运动参数的奖惩机制,能够使模型应用于推荐臂架动作,以满足臂架合理运动和/或达到期望状态的需求。

为达到上述目的,本发明提供一种基于DDPG算法的臂架动作模型训练方法,所述方法包括:

创建初始的臂架动作模型,所述臂架动作模型包括Actor网络与Critic网络;

通过所述Actor网络与环境进行互动,确定所述臂架在第一状态采取第一动作到达的第二状态及所得到的奖励值,其中,所述奖励值根据预设奖惩策略确定,所述预设奖惩策略包括关联于臂架目标姿态、臂架动作节臂数量中至少一项的奖惩机制;

将互动所获得的所述第一状态、所述第一动作、所述奖励值及所述第二状态作为训练数据,存储于训练数据库;

基于所述训练数据库中的训练数据,对所述Actor网络、所述Critic网络进行训练,得到训练后的臂架动作模型。

可选地,在所述预设奖惩策略中,关联于臂架目标姿态的奖惩机制包括根据所述臂架的姿态与臂架目标姿态的匹配结果进行奖励或惩罚,关联于臂架动作节臂数量的奖惩机制包括根据所述臂架动作节臂数量进行奖励。

可选地,所述预设奖惩策略包括关联于臂架目标姿态和臂架动作节臂数量的奖惩机制,还包括关联于臂架末端目标位置的奖惩机制,所述通过所述Actor网络与环境进行互动,确定所述臂架在第一状态采取第一动作到达的第二状态及所得到的奖励值,包括:

通过所述Actor网络与环境进行互动,确定所述臂架在第一状态采取第一动作到达的第二状态;

根据所述第二状态确定所述臂架的末端位置,获取所述臂架的末端位置与所述臂架末端目标位置之间的距离值;根据所述第二状态确定所述臂架的姿态;根据所述第一动作确定所述臂架动作节臂数量;

根据所述预设奖惩策略确定奖励值,所述预设奖惩策略为:

reward=r+r

其中,reward为所述奖励值;r为初始值,取值为所述距离值的负值;r

可选地,所述预设奖惩策略还包括关联于臂架末端目标位置的奖惩机制,所述通过所述Actor网络与环境进行互动,确定所述臂架在第一状态采取第一动作到达的第二状态及所得到的奖励值,包括:

重置所述第一状态;

通过所述Actor网络与环境进行互动,确定所述臂架在所述第一状态采取第一动作到达的第二状态及所得到的奖励值;

当结束本次交互时,判断所述臂架的姿态和/或所述臂架的末端位置是否满足预设条件;

若满足预设条件,则进入所述将互动所获得的所述第一状态、所述第一动作、所述奖励值及所述第二状态作为训练数据,存储于训练数据库的步骤;

若不满足预设条件,则返回所述重置所述第一状态的步骤。

可选地,所述基于所述训练数据库中的训练数据,对所述Actor网络、所述Critic网络进行训练,得到训练后的臂架动作模型,包括:

从所述训练数据库中随机抽取训练数据,对所述Actor网络、所述Critic网络进行训练;

通过训练后的所述Actor网络与环境进行交互,并根据交互结果对所述训练数据库中的训练数据进行更新;

基于更新后的训练数据继续对所述Actor网络、所述Critic进行训练;

返回通过训练后的所述Actor网络与环境进行交互的步骤,直至满足训练条件时停止训练,得到训练后的臂架动作模型。

本申请还提供一种臂架动作推荐方法,应用于采用如上任一所述的方法训练得到的臂架动作模型,所述臂架动作推荐方法包括:

获取臂架的当前状态;

将所述臂架的当前状态输入所述臂架动作模型进行环境互动,输出臂架推荐动作。

可选地,所述将所述臂架的当前状态输入所述臂架动作模型进行环境互动,输出臂架推荐动作,包括:

将所述臂架的当前状态输入所述臂架动作模型进行环境互动,确定所述臂架的臂架推荐动作及采取所述臂架推荐动作到达的下一状态;

判断所述第一状态下,所述臂架的姿态和所述臂架的末端位置是否满足预设条件;

若满足预设条件,则将连续满足预设条件的次数加一;

若连续满足预设条件的次数未达到预设次数,则继续搜索,返回所述将所述臂架的当前状态输入所述臂架动作模型进行环境互动的步骤;

若连续满足预设条件的次数达到预设次数,则结束互动,输出所述臂架推荐动作。

可选地,所述判断所述第一状态下,所述臂架的姿态和/或所述臂架的末端位置是否满足预设条件之后,所述方法还包括:

若不满足预设条件,则将搜索步数加一;

若搜索步数达到预设搜索步数,则结束互动,输出推荐失败信息。

本申请还提供一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上任一所述的方法的步骤。

本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上任一所述的方法的步骤。

由上述,本申请的基于DDPG算法的臂架动作模型训练方法,包括:创建Actor网络与Critic网络;通过Actor网络与环境进行互动,确定臂架在第一状态采取第一动作到达的第二状态及所得到的奖励值,奖励值使用的预设奖惩策略包括关联于臂架目标姿态、臂架末端目标位置、臂架动作节臂数量中至少一项的奖惩机制;将第一状态、第一动作、奖励值及第二状态存储于训练数据库;对Actor网络、Critic网络进行训练,得到训练后的臂架动作模型。通过这种方式,本申请基于DDPG算法训练臂架动作模型,能够使模式应用于推荐臂架动作,并且,训练时使用关联于臂架的姿态、位置、动作节臂数量等运动参数的奖惩机制,使得模型推荐的臂架动作能够满足臂架合理运动和/或达到期望状态的需求。

本申请的臂架动作推荐方法,包括:获取臂架的当前状态;将臂架的当前状态输入臂架动作模型进行环境互动,输出臂架推荐动作。通过这种方式,由于臂架动作模型基于DDPG算法训练得到,且训练时使用关联于臂架的姿态、位置、动作节臂数量等运动参数的奖惩机制,能够使臂架推荐动作满足臂架合理运动和/或达到期望状态的需求。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明一实施例提供的基于DDPG算法的臂架动作模型训练方法的流程示意图。

图2为本发明一实施例提供的基于DDPG算法的臂架动作模型训练方法所使用的网络结构示意图。

图3为本发明另一实施例提供的臂架动作推荐方法的流程示意图。

具体实施方式

下面将结合附图,对本发明的特定实施例进行详细描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明的描述,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明的描述中,除非另有明确的规定和限定,术语“设置”、“安装”、“连接”等应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电性连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语的具体含义。

术语“第一”、“第二”、“第三”等仅仅是为了区别属性类似的数值或元件,而不是指示或暗示相对的重要性或者特定的顺序。

术语“包括”、“包含”或者其任何其他变体,意在涵盖非排他性的包含,除了包含所列的那些要素,而且还可包含没有明确列出的其他要素。

图1为本发明一实施例提供的基于DDPG算法的臂架动作模型训练方法的流程示意图。如图1所示,一种基于DDPG算法的臂架动作模型训练方法,包括:

S1,创建初始的臂架动作模型,臂架动作模型包括Actor网络与Critic网络;

S2,通过Actor网络与环境进行互动,确定臂架在第一状态采取第一动作到达的第二状态及所得到的奖励值,其中,奖励值根据预设奖惩策略确定,预设奖惩策略包括关联于臂架目标姿态、臂架动作节臂数量中至少一项的奖惩机制;

S3,将互动所获得的第一状态、第一动作、奖励值及第二状态作为训练数据,存储于训练数据库;

S4,基于训练数据库中的训练数据,对Actor网络、Critic网络进行训练,得到训练后的臂架动作模型。

通过这种方式,本申请基于DDPG算法训练臂架动作模型,能够使模式应用于推荐臂架动作,并且,训练时使用关联于臂架的姿态、位置、动作节臂数量等运动参数的奖惩机制,使得模型推荐的臂架动作能够满足臂架合理运动和/或达到期望状态的需求。

在训练模型时,DDPG算法分别为Actor网络与Critic网络创建神经网络的拷贝,即两个独立的目标Actor网络与目标Critic网络,从而得到四个网络:在线Actor网络、目标Actor网络、在线Critic网络、目标Critic网络。采用固定网络(Fix network)技术,在训练完一个批量(mini-batch)的数据之后,通过梯度上升/梯度下降算法更新在线(online)网络的参数,然后再通过滑动平均(soft update)方法更新目标(target)网络的参数,滑动平均指的是在进行目标网络参数更新时,遵循的是:θ′→τθ+(1-τ)θ′,且τ<<1,一般取τ=0.001,这就意味着目标网络参数只能缓慢变化,大大提高了学习的稳定性。

请参考图2,是基于DDPG算法的臂架动作模型训练方法所使用的网络结构示意图,并描述了在训练过程中进行网络更新的主要过程。后续公式描述中,θ

在线Critic网络对参数θ

其中,目标值y

在线Actor网络的网络参数θ

目标Actor网络和目标Critic网络采用滑动平均方式更新,公式为:

θ

θ

以下对在线Critic网络、目标Critic网络、在线Actor网络、目标Actor网络的输入、输出进行介绍。

在线Actor网络:输入为当前状态s

目标Actor网络:其输入为下一状态s

当前Critic网络:输入为当前状态S

目标Critic网络:输入为下一状态s

基于对上述网络结构的应用,本申请的训练方法创建了臂架动作模型,使得模型推荐的臂架动作能够满足臂架合理运动和/或达到期望状态的需求。

S1步骤中,创建初始的臂架动作模型,臂架动作模型包括Actor网络与Critic网络。其中,Actor网络包括在线Actor网络与目标Actor网络,Critic网络包括在线Critic网络与目标Critic网络。

S2步骤中,通过Actor网络与环境进行互动,确定臂架在第一状态采取第一动作到达的第二状态及所得到的奖励值,其中,奖励值根据预设奖惩策略确定,预设奖惩策略包括关联于臂架目标姿态、臂架动作节臂数量中至少一项的奖惩机制。

考虑到DDPG算法的特性:当策略为确定性策略后,算法的动作-状态值函数Q(s,a)只与环境有关系,因此,结合臂架特性设计与推荐姿态关联的策略,并且结合环境设计相应的惩罚/激励函数,用以达到算法的预期目的。

所述奖励值用于计算在线Critic网络的目标值。可选地,在预设奖惩策略中,关联于臂架目标姿态的奖惩机制包括根据臂架的姿态与臂架目标姿态的匹配结果进行奖励或惩罚,关联于臂架动作节臂数量的奖惩机制包括根据臂架动作节臂数量进行奖励。如此,可以使训练得到的臂架动作模型能够更好优化臂架的姿态与动作节臂数量,符合臂架运动的特性。此外,预设奖惩策略还可以包括关联于臂架末端目标位置的奖惩机制,从而训练得到的臂架动作模型能够更好优化臂架的末端位置,进行更准确的动作推荐。

可选地,预设奖惩策略包括关联于臂架目标姿态和臂架动作节臂数量的奖惩机制,还包括关联于臂架末端目标位置的奖惩机制,通过Actor网络与环境进行互动,确定臂架在第一状态采取第一动作到达的第二状态及所得到的奖励值,包括:

通过Actor网络与环境进行互动,确定臂架在第一状态采取第一动作到达的第二状态;

根据第二状态确定臂架的末端位置,获取臂架的末端位置与臂架末端目标位置之间的距离值;根据第二状态确定臂架的姿态;根据第一动作确定臂架动作节臂数量;

根据预设奖惩策略确定奖励值,预设奖惩策略为:

roward=r+r

其中,reward为奖励值;r为初始值,取值为距离值的负值;r

上述互动过程为在线Actor网络与环境互动的过程。可选地,r

可选地,预设奖惩策略还包括关联于臂架末端目标位置的奖惩机制,通过Actor网络与环境进行互动,确定臂架在第一状态采取第一动作到达的第二状态及所得到的奖励值,还包括:

重置第一状态;

通过Actor网络与环境进行互动,确定臂架在第一状态采取第一动作到达的第二状态及所得到的奖励值;

当结束本次交互时,判断臂架的姿态和/或臂架的末端位置是否满足预设条件;

若满足预设条件,则进入将互动所获得的第一状态、第一动作、奖励值及第二状态作为训练数据,存储于训练数据库的步骤;

若不满足预设条件,则返回重置第一状态的步骤。

其中,上述互动过程为在线Actor网络与环境互动的过程。在一次EPISODES开始时,重置第一状态,通过在线Actor网络与环境进行互动,确定臂架在第一状态采取第一动作到达的第二状态及所得到的奖励值。其中,获取奖励值使用到上述的三层条件:①臂架的末端位置与臂架末端目标位置之间的距离值在预设范围内;②臂架的姿态与臂架目标姿态近似;③臂架动作节臂数量。基于上述三层条件进行奖励或惩罚,获得所述奖励值。

当臂架的姿态和臂架的末端位置连续满足条件①、②达到预设次数时,结束本次互动,得到一组状态转换序列(s

通过上述方式,可以在训练数据库中存储足够的训练数据。

可选地,S3步骤中,将互动所获得的第一状态、第一动作、奖励值及第二状态作为训练数据,存储于训练数据库,包括:

将对应于一次互动的第一状态、第一动作、奖励值及第二状态以一个状态转换序列的方式,存放在矩阵表示的训练数据库中;

判断训练数据库中的状态转换序列的数量是否达到预设数量;

若达到预设数量,则进入基于训练数据库中的训练数据对Actor网络、Critic网络进行训练的步骤;

若未达到预设数量,则返回通过Actor网络与环境进行互动的步骤。

其中,在生成样本数据时,DDPG将从环境中探索得到的数据,以一个状态转换序列的为单元(s

数据抽样过程包括:从数据库中随机抽取BATCH_SIZE个行号;将数据抽取出来;根据保存的数据,将抽取出来的数据进行切割,恢复成bs,ba,br,bs四组,便于后续训练。

可选地,S4步骤中,基于训练数据库中的训练数据,对Actor网络、Critic网络进行训练,得到训练后的臂架动作模型,包括:

从训练数据库中随机抽取训练数据,对Actor网络、Critic网络进行训练;

通过训练后的Actor网络与环境进行交互,并根据交互结果对训练数据库中的训练数据进行更新;

基于更新后的训练数据继续对Actor网络、Critic进行训练;

返回通过训练后的Actor网络与环境进行交互的步骤,直至满足训练条件时停止训练,得到训练后的臂架动作模型。

Actor网络、Critic网络的训练方式参考前文中关于图2的描述。在训练过程中,通过训练后的Actor网络与环境进行交互,并根据交互结果对训练数据库中的训练数据进行更新,再基于更新后的训练数据继续对Actor网络、Critic进行训练,从而,借鉴DQN算法中经验回放机制,打破训练数据的相关性,提高了神经网络训练过程的稳定性。并且,持续优化环境互动的采样策略,增加模型的准确性。

由上述,本申请的基于DDPG算法的臂架动作模型训练方法,创建Actor网络与Critic网络;通过Actor网络与环境进行互动,确定臂架在第一状态采取第一动作到达的第二状态及所得到的奖励值,奖励值使用的预设奖惩策略包括关联于臂架目标姿态、臂架末端目标位置、臂架动作节臂数量中至少一项的奖惩机制;将第一状态、第一动作、奖励值及第二状态存储于训练数据库;对Actor网络、Critic网络进行训练,得到训练后的臂架动作模型。通过这种方式,本申请基于DDPG算法训练臂架动作模型,能够使模式应用于推荐臂架动作,并且,训练时使用关联于臂架的姿态、位置、动作节臂数量等运动参数的奖惩机制,使得模型推荐的臂架动作能够满足臂架合理运动和/或达到期望状态的需求。

图3为本发明另一实施例提供的臂架动作推荐方法的流程示意图。如图3所示,本申请的臂架动作推荐方法,应用于采用如上实施例的方法训练得到的臂架动作模型,臂架动作推荐方法包括:

S10,获取臂架的当前状态;

S20,将臂架的当前状态输入臂架动作模型进行环境互动,输出臂架推荐动作。

通过这种方式,由于臂架动作模型基于DDPG算法训练得到,且训练时使用关联于臂架的姿态、位置、动作节臂数量等运动参数的奖惩机制,能够使臂架推荐动作满足臂架合理运动和/或达到期望状态的需求。

可选地,将臂架的当前状态输入臂架动作模型进行环境互动,输出臂架推荐动作,包括:

将臂架的当前状态输入臂架动作模型进行环境互动,确定臂架的臂架推荐动作及采取臂架推荐动作到达的下一状态;

判断第一状态下,臂架的姿态和臂架的末端位置是否满足预设条件;

若满足预设条件,则将连续满足预设条件的次数加一;

若连续满足预设条件的次数未达到预设次数,则继续搜索,返回将臂架的当前状态输入臂架动作模型进行环境互动的步骤;

若连续满足预设条件的次数达到预设次数,则结束互动,输出臂架推荐动作。

可选地,判断第一状态下,臂架的姿态和臂架的末端位置是否满足预设条件之后,方法还包括:

若不满足预设条件,则将搜索步数加一;

若搜索步数达到预设搜索步数,则结束互动,输出推荐失败信息。

其中,在推荐动作的过程中,臂架的当前状态输入臂架动作模型,确定臂架的臂架推荐动作及采取臂架推荐动作到达的下一状态。若在第一状态下,臂架的姿态和臂架的末端位置满足预设条件,例如,预设条件包括臂架的末端位置与臂架末端目标位置之间的距离值在预设范围内,且臂架的姿态与臂架目标姿态近似,则连续满足预设条件的次数达到预设次数时,表明模型的输出将能满足臂架控制的需要,此时可结束互动,输出臂架推荐动作。反之,若不满足预设条件,则将搜索步数加一,若搜索步数达到预设搜索步数,则结束互动,输出推荐失败信息,表明没有适用于当前状态的臂架推荐动作。

本申请的臂架动作推荐方法,包括:获取臂架的当前状态;将臂架的当前状态输入臂架动作模型进行环境互动,输出臂架推荐动作。通过这种方式,由于臂架动作模型基于DDPG算法训练得到,且训练时使用关联于臂架的姿态、位置、动作节臂数量等运动参数的奖惩机制,能够使臂架推荐动作满足臂架合理运动和/或达到期望状态的需求。

本申请还提供一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上任一实施例所述的方法的步骤。

本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上任一实施例所述的方法的步骤。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所附的权利要求为准。

技术分类

06120115935693