CN117150881A - 仿生机器鱼导航任务的强化学习训练回路方法及装置 - Google Patents
仿生机器鱼导航任务的强化学习训练回路方法及装置 Download PDFInfo
- Publication number
- CN117150881A CN117150881A CN202310894612.9A CN202310894612A CN117150881A CN 117150881 A CN117150881 A CN 117150881A CN 202310894612 A CN202310894612 A CN 202310894612A CN 117150881 A CN117150881 A CN 117150881A
- Authority
- CN
- China
- Prior art keywords
- robot fish
- bionic robot
- training
- reinforcement learning
- fish
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 241000251468 Actinopterygii Species 0.000 title claims abstract description 236
- 238000012549 training Methods 0.000 title claims abstract description 159
- 239000011664 nicotinic acid Substances 0.000 title claims abstract description 148
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000002787 reinforcement Effects 0.000 claims abstract description 126
- 238000004088 simulation Methods 0.000 claims abstract description 94
- 238000002474 experimental method Methods 0.000 claims abstract description 49
- 230000033001 locomotion Effects 0.000 claims abstract description 44
- 230000009182 swimming Effects 0.000 claims abstract description 37
- 230000006399 behavior Effects 0.000 claims abstract description 19
- 230000001133 acceleration Effects 0.000 claims abstract description 15
- 239000012530 fluid Substances 0.000 claims abstract description 14
- 230000003592 biomimetic effect Effects 0.000 claims description 36
- 238000004422 calculation algorithm Methods 0.000 claims description 32
- 230000009471 action Effects 0.000 claims description 31
- 230000006870 function Effects 0.000 claims description 22
- 238000005457 optimization Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 7
- 238000005259 measurement Methods 0.000 claims description 6
- 238000005070 sampling Methods 0.000 claims description 6
- 238000003860 storage Methods 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 abstract description 14
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000009826 distribution Methods 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 230000026058 directional locomotion Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005728 strengthening Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000013107 unsupervised machine learning method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/28—Design optimisation, verification or simulation using fluid dynamics, e.g. using Navier-Stokes equations or computational fluid dynamics [CFD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/092—Reinforcement learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/10—Numerical modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2113/00—Details relating to the application field
- G06F2113/08—Fluids
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A40/00—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production
- Y02A40/80—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production in fisheries management
- Y02A40/81—Aquaculture, e.g. of fish
Abstract
本申请涉及一种仿生机器鱼导航任务的强化学习训练回路方法及装置,其中,方法包括:基于仿生机器鱼的定点导航任务,构建强化学习训练平台;建立仿生机器鱼在流体中的运动学模型,确定数值仿真环境;基于强化学习训练平台,向数值仿真环境中的仿生机器鱼发送指令,并实时采集数值仿真环境中的仿生机器鱼的姿态、速度和加速度中的至少一个数据,以完成数值仿真训练;向实地实验中的仿生机器鱼发送指令,以控制仿生机器鱼的游动行为,同步接收双目定位系统解算的仿生机器鱼位置坐标,以进行实地实验训练。由此,解决了相关技术无法精确反映真实实验中机器鱼的运动状态,易导致计算成本极高,无法在可接受时间内提供强化学习所需的训练数据等问题。
Description
技术领域
本申请涉及仿生鱼技术领域,特别涉及一种仿生机器鱼导航任务的强化学习训练回路方法及装置。
背景技术
近年来,水下微型机器人得到了广泛关注,其中仿生机器鱼因其高能效、低噪音等优点而备受关注。然而,目前的仿生机器鱼往往只能以固定的模式运动,或是需要手动操控。在水下探测、侦察等任务中,流场环境通常较为复杂,机器鱼单一的运动模式或是手动控制往往难以应对真实任务场景。强化学习方法能够自动训练机器鱼完成特定任务,成为了研究机器鱼游动问题的有力工具。强化学习学习训练需要大量机器鱼在流动中运动的轨迹数据,这些数据一般可来自于数值模拟或实地试验。然而,数值模拟受限于计算能力与数值精度,获得的数据往往与真实环境存在偏差,训练所得的策略难以直接迁移到实验中,而通过实验获得数据则会有很高的成本。
相关技术中,通常仅在数值模拟仿真环境下获得机器鱼的运动数据并进行训练。例如,建立数值模拟仿真所需的机器鱼模型,通过数值模拟获取机器鱼的轨迹、姿态、运动状态等数据,并且同步用于强化学习训练算法。算法给出的运动策略应用于仿真环境,提供新的运动数据,进而继续用于训练。训练完成后的运动策略将部署到真实机器鱼上,进行实地测试。
然而,相关技术中,仅在仿真环境下训练得到的运动策略往往难以直接应用到真实实验中,且仿真环境受限于计算能力和模型精度,无法精确反映真实实验中机器鱼的运动状态,例如,复杂的非线性流动会干扰机器鱼的游动速度、游动方向。其干扰通常难以通过模型准确描述,而利用流固耦合数值模拟精确求解流动对机器鱼的影响,则会导致计算成本极高,无法在可接受的时间内提供强化学习所需的训练数据,亟待改善。
发明内容
本申请提供一种仿生机器鱼导航任务的强化学习训练回路方法及装置,以解决相关技术完全基于数值模拟仿真获得的数据进行强化学习训练,导致训练获得的游动策略难以直接部署到实验中,仿真环境受限于计算能力和模型精度,无法精确反映真实实验中机器鱼的运动状态,且易导致计算成本极高,无法在可接受的时间内提供强化学习所需的训练数据等问题。
本申请第一方面实施例提供一种仿生机器鱼导航任务的强化学习训练回路方法,包括以下步骤:基于仿生机器鱼的定点导航任务,构建强化学习训练平台;建立所述仿生机器鱼在流体中的运动学模型,确定数值仿真环境;基于所述强化学习训练平台,向所述数值仿真环境中的仿生机器鱼发送指令,以控制所述仿生机器鱼的游动行为,并实时采集所述数值仿真环境中的仿生机器鱼的姿态、速度和加速度中的至少一个数据,并从所述数值仿真环境中同步获取所述仿生机器鱼位置坐标,以完成数值仿真训练;向实地实验中的仿生机器鱼发送指令,以控制所述仿生机器鱼的游动行为,并实时采集所述仿生机器鱼通过无线信号所发送的姿态、速度和加速度中的至少一个数据,并同步接收双目定位系统解算的所述仿生机器鱼位置坐标,以进行实地实验训练。
可选地,在本申请的一个实施例中,所述构建强化学习训练平台,包括:将所述仿生机器鱼的传感器信号和位置信号作为强化学习的状态,并将所述仿生机器鱼的转向、前进的运动模式作为可选择的动作,通过预设近端策略优化算法进行训练,得到所述强化学习训练平台。
可选地,在本申请的一个实施例中,所述预设近端策略优化算法的损失函数为:
其中,θ和θ′分别表示进行参数更新的网络和进行动作采样的网络,st和at分别表示所述仿生机器鱼所测量的状态信号以及其执行的控制动作,为优势函数。
可选地,在本申请的一个实施例中,所述建立所述仿生机器鱼在流体中的运动学模型,确定数值仿真环境,包括:建立所述仿生机器鱼的至少一个运动模式,根据测量仿生机器鱼在特定流动中的所有运动模式下的游动速度、俯仰角速度和偏航角速度中的至少一个参数,建立所述运动学模型,以模拟产生的轨迹数,确定所述数值仿真环境。
可选地,在本申请的一个实施例中,所述以进行实地实验训练,包括:在所述实地实验中,计算所述仿生机器鱼在三维空间坐标系下的坐标,以获取所述仿生机器鱼的实际位置,并同步获取所述仿生机器鱼的实测信号数据,利用所述强化学习平台进行最终训练,直至所述仿真机器鱼能够在所述实地实验中完成指定任务。
本申请第二方面实施例提供一种仿生机器鱼导航任务的强化学习训练回路装置,包括:构建模块,用于基于仿生机器鱼的定点导航任务,构建强化学习训练平台;建立模块,用于建立所述仿生机器鱼在流体中的运动学模型,确定数值仿真环境;第一训练模块,用于基于所述强化学习训练平台,向所述数值仿真环境中的仿生机器鱼发送指令,以控制所述仿生机器鱼的游动行为,并实时采集所述数值仿真环境中的仿生机器鱼的姿态、速度和加速度中的至少一个数据,并从所述数值仿真环境中同步获取所述仿生机器鱼位置坐标,以完成数值仿真训练;第二训练模块,用于向实地实验中的仿生机器鱼发送指令,以控制所述仿生机器鱼的游动行为,并实时采集所述仿生机器鱼通过无线信号所发送的姿态、速度和加速度中的至少一个数据,并同步接收双目定位系统解算的所述仿生机器鱼位置坐标,以进行实地实验训练。
可选地,在本申请的一个实施例中,所述构建模块包括:第一训练单元,用于将所述仿生机器鱼的传感器信号和位置信号作为强化学习的状态,并将所述仿生机器鱼的转向、前进的运动模式作为可选择的动作,通过预设近端策略优化算法进行训练,得到所述强化学习训练平台。
可选地,在本申请的一个实施例中,所述预设近端策略优化算法的损失函数为:
其中,θ和θ′分别表示进行参数更新的网络和进行动作采样的网络,st和at分别表示所述仿生机器鱼所测量的状态信号以及其执行的控制动作,为优势函数。
可选地,在本申请的一个实施例中,所述建立模块包括:建立单元,用于建立所述仿生机器鱼的至少一个运动模式,根据测量仿生机器鱼在特定流动中的所有运动模式下的游动速度、俯仰角速度和偏航角速度中的至少一个参数,建立所述运动学模型,以模拟产生的轨迹数,确定所述数值仿真环境。
可选地,在本申请的一个实施例中,所述第二训练模块包括:第二训练单元,用于在所述实地实验中,计算所述仿生机器鱼在三维空间坐标系下的坐标,以获取所述仿生机器鱼的实际位置,并同步获取所述仿生机器鱼的实测信号数据,利用所述强化学习平台进行最终训练,直至所述仿真机器鱼能够在所述实地实验中完成指定任务。
本申请第三方面实施例提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如上述实施例所述的仿生机器鱼导航任务的强化学习训练回路方法。
本申请第四方面实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,该程序被处理器执行时实现如上的仿生机器鱼导航任务的强化学习训练回路方法。
本申请实施例可以结合数值模拟仿真和实验数据,利用数值模拟获得大量粗粒度的数据进行强化学习预训练,然后在实验环境中获得少量高质量数据进行微调训练,最终使强化学习策略能够应用在实验环境中的真实机器鱼,从而使得用户能够通过强化学习方法获得鲁棒的游动策略,克服了完全基于数值模拟仿真获得的强化学习策略难以应用到实际场景的问题,也避免了完全基于实验数据进行训练带来的高额成本。由此,解决了相关技术中,仅在仿真环境下训练得到的运动策略往往难以直接应用到真实实验中,仿真环境受限于计算能力和模型精度,无法精确反映真实实验中机器鱼的运动状态,且易导致计算成本极高,无法在可接受的时间内提供强化学习所需的训练数据等问题。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本申请实施例提供的一种仿生机器鱼导航任务的强化学习训练回路方法的流程图;
图2为根据本申请一个实施例的仿生机器鱼导航任务的强化学习训练回路方法的PPO算法网络结构示意图;
图3为根据本申请一个实施例的仿生机器鱼导航任务的强化学习训练回路方法的强化学习平台示意图;
图4为根据本申请一个实施例的仿生机器鱼导航任务的强化学习训练回路方法的双目视觉定位示意图;
图5为根据本申请一个实施例的仿生机器鱼导航任务的强化学习训练回路方法的机器鱼导航任务强化学习训练回路图;
图6为根据本申请实施例提供的一种仿生机器鱼导航任务的强化学习训练回路装置的结构示意图;
图7为根据本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的仿生机器鱼导航任务的强化学习训练回路方法及装置。针对上述背景技术中提到的相关技术中,仅在仿真环境下训练得到的运动策略往往难以直接应用到真实实验中,仿真环境受限于计算能力和模型精度,无法精确反映真实实验中机器鱼的运动状态,且易导致计算成本极高,无法在可接受的时间内提供强化学习所需的训练数据的问题,本申请提供了一种仿生机器鱼导航任务的强化学习训练回路方法,在该方法中,可以结合数值模拟仿真和实验数据,利用数值模拟获得大量粗粒度的数据进行强化学习预训练,然后在实验环境中获得少量高质量数据进行微调训练,最终使强化学习策略能够应用在实验环境中的真实机器鱼,从而使得用户能够通过强化学习方法获得鲁棒的游动策略,克服了完全基于数值模拟仿真获得的强化学习策略难以应用到实际场景的问题,也避免了完全基于实验数据进行训练带来的高额成本。由此,解决了相关技术中,仅在仿真环境下训练得到的运动策略往往难以直接应用到真实实验中,仿真环境受限于计算能力和模型精度,无法精确反映真实实验中机器鱼的运动状态,且易导致计算成本极高,无法在可接受的时间内提供强化学习所需的训练数据等问题。
具体而言,图1为本申请实施例所提供的一种仿生机器鱼导航任务的强化学习训练回路方法的流程示意图。
如图1所示,该仿生机器鱼导航任务的强化学习训练回路方法包括以下步骤:
在步骤S101中,基于仿生机器鱼的定点导航任务,构建强化学习训练平台。
在实际执行过程中,本申请实施例可以基于仿生机器鱼的定点导航任务,构建强化学习训练平台,从而有利于进行强化学习预训练,训练机器鱼在复杂流场中自主调整游动策略以实现稳定高效的定向运动或停留在特定区域,最终使强化学习策略能够应用在实验环境中的真实机器鱼。
可选地,在本申请的一个实施例中,构建强化学习训练平台,包括:将仿生机器鱼的传感器信号和位置信号作为强化学习的状态,并将仿生机器鱼的转向、前进的运动模式作为可选择的动作,通过预设近端策略优化算法进行训练,得到强化学习训练平台。
可以理解的是,本申请实施例中的强化学习是一种无监督机器学习方法,可以利用智能体如机器鱼与环境的交互数据,训练一个决策器,给出智能体在不同状态下的最佳行动,强化学习依赖于机器鱼和环境的实时交互。
作为一种可能实现的方式,本申请实施例可以将仿生机器鱼搭载的传感器信号,以及通过外部定位系统给出的位置信号,作为强化学习的状态sn,并将仿生机器鱼的转向、前进的运动模式作为可选择的动作an,根据仿生机器鱼的定点导航任务,强化学习的回报函数设置为当前时刻与上一时刻,仿生机器鱼与目标位置的距离可表示为:rn=dn+1-dn。
本申请实施例可以通过预设近端策略优化算法(PPO2)进行训练,得到强化学习训练平台,其中,PPO(Proximal Policy Optimization,近端策略优化)算法是一种深度强化学习算法,可用于处理状态和动作均为连续值的情况。具体来说,PPO算法涉及到两个深度神经网络,分别是动作网络(Actor)和评价网络(Critic)。
如图2所示,动作网络以当前的状态作为输入,输出动作的概率分布。本方法使用高斯分布作为所有动作的分布,因此当动作是一个da维向量时,动作网络的输出是一个2da维的向量,包括了动作每一维上的均值和方差。本申请实施例选取特定的动作时将使用均值和方差进行采样。评价网络的输入也是当前的状态,而输出则是当前状态的价值函数(标量)。
本申请实施例可以将仿生机器鱼的传感器信号和位置信号作为强化学习的状态,并通过预设近端策略优化算法进行训练,保证可以进一步训练机器鱼在复杂流场中自主调整游动策略,以实现稳定高效的定向运动或停留在特定区域。
需要说明的是,针对机器鱼的定点导航任务设计强化学习问题,本申请实施例使用PPO强化学习算法。实际上,其他成熟、可靠、合适的强化学习算法可代替PPO算法,例如DDPG,D3QN,Q-Learning等。
可选地,在本申请的一个实施例中,预设近端策略优化算法的损失函数为:
其中,θ和θ′分别表示进行参数更新的网络和进行动作采样的网络,st和at分别表示仿生机器鱼所测量的状态信号以及其执行的控制动作,为优势函数。
在实际执行过程中,本申请实施例可以通过预设近端策略优化算法的损失函数:
提升计算的精准度,其中,本申请实施例可以采用广义优势估计进行计算。
进一步地,在设计强化学习问题后,可以编写强化学习训练平台,使其能够利用数值模拟仿真或者实验中产生的经验片段进行强化学习策略的训练。强化学习训练平台示意图如图3所示,本申请实施例可以搭建数值仿真环境,通过保存经验片段进行回放缓存,PPO算法涉及到两个深度神经网络,分别是动作网络(Actor)和评价网络(Critic),评价网络结合目标网络可以得到PPO算法的损失函数,梯度下降后更新评价网络。
在步骤S102中,建立仿生机器鱼在流体中的运动学模型,确定数值仿真环境。
在实际执行过程中,本申请实施例可以建立仿生机器鱼在流体中的运动学模型,确定数值仿真环境,从而保证强化学习策略能够应用在实验环境中的真实机器鱼。
可选地,在本申请的一个实施例中,建立仿生机器鱼在流体中的运动学模型,确定数值仿真环境,包括:建立仿生机器鱼的至少一个运动模式,根据测量仿生机器鱼在特定流动中的所有运动模式下的游动速度、俯仰角速度和偏航角速度中的至少一个参数,建立运动学模型,以模拟产生的轨迹数,确定数值仿真环境。
具体而言,本申请实施例为了在数值仿真环境中进行预训练,需要建立仿生机器鱼在流体中的运动学模型。首先,建立仿生机器鱼的至少一个运动模式,包括但不限于直线运动、不同速度的左转、右转等;然后,通过实验测量机器鱼在特定流动中的所有运动模式下的游动速度、俯仰角速度和偏航角速度等参数,建立仿生机器鱼的运动学模型,借助数值模拟产生轨迹数,从而有利于确定数值仿真环境,进而利用了数值模拟所提供的大量数据,以及实验所提供的高质量数据,弥补强化学习策略难以落地的缺陷。
本申请实施例可以采用以下仿生机器鱼模型:
v=+vsn,
其中,v、n分别为机器鱼的平动速度和前进方向,ωs为机器鱼的转动角速度,u为机器鱼当地的流体速度。
接下来,本申请实施例可以根据获得的机器鱼运动学模型,利用计算流体力学相关方法进行数值仿真,以获得机器鱼在流动中的运动轨迹数据。
在步骤S103中,基于强化学习训练平台,向数值仿真环境中的仿生机器鱼发送指令,以控制仿生机器鱼的游动行为,并实时采集数值仿真环境中的仿生机器鱼的姿态、速度和加速度中的至少一个数据,并从数值仿真环境中同步获取仿生机器鱼位置坐标,以完成数值仿真训练。
在实际执行过程中,本申请实施例可以基于强化学习训练平台,向数值仿真环境中的仿生机器鱼发送指令,利用数值仿真软件接口控制仿生机器鱼的游动行为,并实时采集数值仿真环境中的仿生机器鱼参数,包括但不限于姿态、位置、速度和加速度等数据,从而可以在数值仿真环境中进行训练,最终有利于完成数值仿真训练。
在步骤S104中,向实地实验中的仿生机器鱼发送指令,以控制仿生机器鱼的游动行为,并实时采集仿生机器鱼通过无线信号所发送的姿态、速度和加速度中的至少一个数据,并同步接收双目定位系统解算的仿生机器鱼位置坐标,以进行实地实验训练。
作为一种可能实现的方式,本申请实施例可以通过无线通信和视觉定位系统获取训练所需的数据,其中,本申请实施例可以向实地实验中的仿生机器鱼发送指令,以控制仿生机器鱼的游动行为,从而通过实测的信号以及外部定位系统来获取训练所需的数据,利用Qt程序框架编写控制系统,向仿生机器鱼发送指令以控制仿生机器鱼的游动行为。具体而言,仿生机器鱼可选择的游动行为分为6种,分别为:停止、大幅左转、小幅左转、直线前进、小幅右转、大幅右转,游动行为事先通过硬件编程确定,上位机中的控制系统发送特定指令到仿生机器鱼后,仿生机器鱼便会执行指令规定的游动行为,直到收到下一个指令。
同时,控制系统具有信号接收功能,能够实时采集机器鱼通过无线信号所发送的姿态、速度和加速度等数据,并同步接收双目定位系统解算的机器鱼位置坐标,基于实时信号数据,控制系统利用强化学习算法推理获取最优控制动作,并实时发送至机器鱼。此外,上位机建立数据库存储机器鱼的各项数据,以支持上位机对机器鱼的实时监控和控制。
本申请实施例可以进一步通过实测的信号以及外部定位系统来获取训练所需的数据,保证上述利用数值模拟获得大量粗粒度的数据进行强化学习预训练,结合实地实验获得少量高质量数据进行微调训练,最终使强化学习策略能够应用在实验环境中的真实机器鱼。
可选地,在本申请的一个实施例中,以进行实地实验训练,包括:在实地实验中,计算仿生机器鱼在三维空间坐标系下的坐标,以获取仿生机器鱼的实际位置,并同步获取仿生机器鱼的实测信号数据,利用强化学习平台进行最终训练,直至仿真机器鱼能够在实地实验中完成指定任务。
可以理解的是,本申请实施例中的仿生机器鱼的外部定位基于双目定位算法,该算法可以利用两个不同位置的固定摄像机对机器鱼进行目标识别,保证在实地实验中,计算出仿生机器鱼在三维空间坐标系下的坐标,从而有助于取仿生机器鱼的实际位置,直至完成训练。
在实际执行过程中,如图4所示,本申请实施例可以将双目定位算法分为三个步骤:
(1)获取两个摄像机当前时刻的图像;
(2)对图像进行处理,识别机器鱼的中心位置在图像中的坐标(x(i),y(i)),其中i代表了第i个摄像机;
(3)通过以下步骤中的摄像机坐标变换关系,求解出机器鱼中心位置在世界坐标系下的三维坐标(xw,yw,zw)。
其中,zci,f(i)为相机的内参系数,R33 (i)和T31 (i)分别为相机的旋转和平移矩阵。
本申请实施例在获取仿生机器鱼在水域中的三维位置后,可以将相关信息发送并存储到控制系统中,从而提供一个可行的、完整的强化学习训练回路,使得用户能够通过强化学习方法获得鲁棒的游动策略,在实验环境下也能有良好效果,结合数值模拟仿真和实验的优势,克服了完全基于数值模拟仿真获得的强化学习策略难以应用到实际场景的问题,也避免了完全基于实验数据进行训练带来的高额成本。
需要说明的是,本申请实施例采用双目视觉定位算法获得机器鱼的三维空间坐标。实际上,根据具体情况,也可以使用红外定位、超声定位、激光定位、GPS定位等其他定位算法。
具体地,结合图5所示,以一个具体实施例对本申请实施例中的仿生机器鱼导航任务的强化学习训练回路方法的工作原理进行详细阐述。
如图5所示,本申请实施例可以将仿生机器鱼的实时运动状态发送至上位机,上位机中的控制系统可以发送控制信息至仿生机器鱼,通过双目视觉定位系统实时测量仿生机器鱼的位置信息,并上传至上位机。
进一步地,本申请实施例中的上位机可以将状态信息通过强化学习决策器进行强化学习,并将决策信息发送至上位机;本申请实施例可以将数值模拟仿真或者实验中产生的经验片段进行强化学习策略的训练。
根据本申请实施例提出的仿生机器鱼导航任务的强化学习训练回路方法,可以结合数值模拟仿真和实验数据,利用数值模拟获得大量粗粒度的数据进行强化学习预训练,然后在实验环境中获得少量高质量数据进行微调训练,最终使强化学习策略能够应用在实验环境中的真实机器鱼,从而使得用户能够通过强化学习方法获得鲁棒的游动策略,克服了完全基于数值模拟仿真获得的强化学习策略难以应用到实际场景的问题,也避免了完全基于实验数据进行训练带来的高额成本。由此,解决了相关技术中,仅仅针对于训练机器鱼的关节运动参数(例如尾鳍的摆动参数),而非具体的机器鱼工作任务(例如本方案考虑的定点导航问题),仿真环境受限于计算能力和模型精度,无法精确反映真实实验中机器鱼的运动状态,且易导致计算成本极高,无法在可接受的时间内提供强化学习所需的训练数据的问题。
其次参照附图描述根据本申请实施例提出的仿生机器鱼导航任务的强化学习训练回路装置。
图6是本申请实施例的仿生机器鱼导航任务的强化学习训练回路装置的结构示意图。
如图6所示,该仿生机器鱼导航任务的强化学习训练回路装置10包括:构建模块100、建立模块200、第一训练模块300和第二训练模块400。
具体地,构建模块100,用于基于仿生机器鱼的定点导航任务,构建强化学习训练平台。
建立模块200,用于建立仿生机器鱼在流体中的运动学模型,确定数值仿真环境。
第一训练模块300,用于基于强化学习训练平台,向数值仿真环境中的仿生机器鱼发送指令,以控制仿生机器鱼的游动行为,并实时采集数值仿真环境中的仿生机器鱼的姿态、速度和加速度中的至少一个数据,并从数值仿真环境中同步获取仿生机器鱼位置坐标,以完成数值仿真训练。
第二训练模块400,用于向实地实验中的仿生机器鱼发送指令,以控制仿生机器鱼的游动行为,并实时采集仿生机器鱼通过无线信号所发送的姿态、速度和加速度中的至少一个数据,并同步接收双目定位系统解算的仿生机器鱼位置坐标,以进行实地实验训练。
可选地,在本申请的一个实施例中,构建模块100包括:第一训练单元。
其中,第一训练单元,用于将仿生机器鱼的传感器信号和位置信号作为强化学习的状态,并将仿生机器鱼的转向、前进的运动模式作为可选择的动作,通过预设近端策略优化算法进行训练,得到强化学习训练平台。
可选地,在本申请的一个实施例中,预设近端策略优化算法的损失函数为:
其中,θ和θ′分别表示进行参数更新的网络和进行动作采样的网络,st和at分别表示仿生机器鱼所测量的状态信号以及其执行的控制动作,为优势函数。
可选地,在本申请的一个实施例中,建立模块200包括:建立单元。
其中,建立单元,用于建立仿生机器鱼的至少一个运动模式,根据测量仿生机器鱼在特定流动中的所有运动模式下的游动速度、俯仰角速度和偏航角速度中的至少一个参数,建立运动学模型,以模拟产生的轨迹数,确定数值仿真环境。
可选地,在本申请的一个实施例中,第二训练模块包括:第二训练单元。
其中,第二训练单元,用于在实地实验中,计算仿生机器鱼在三维空间坐标系下的坐标,以获取仿生机器鱼的实际位置,并同步获取仿生机器鱼的实测信号数据,利用强化学习平台进行最终训练,直至仿真机器鱼能够在实地实验中完成指定任务。
需要说明的是,前述对仿生机器鱼导航任务的强化学习训练回路方法实施例的解释说明也适用于该实施例的仿生机器鱼导航任务的强化学习训练回路装置,此处不再赘述。
根据本申请实施例提出的仿生机器鱼导航任务的强化学习训练回路装置,可以结合数值模拟仿真和实验数据,利用数值模拟获得大量粗粒度的数据进行强化学习预训练,然后在实验环境中获得少量高质量数据进行微调训练,最终使强化学习策略能够应用在实验环境中的真实机器鱼,从而使得用户能够通过强化学习方法获得鲁棒的游动策略,克服了完全基于数值模拟仿真获得的强化学习策略难以应用到实际场景的问题,也避免了完全基于实验数据进行训练带来的高额成本。由此,解决了相关技术中,仅在仿真环境下训练得到的运动策略往往难以直接应用到真实实验中,仿真环境受限于计算能力和模型精度,无法精确反映真实实验中机器鱼的运动状态,且易导致计算成本极高,无法在可接受的时间内提供强化学习所需的训练数据的问题。
图7为本申请实施例提供的电子设备的结构示意图。该电子设备可以包括:
存储器701、处理器702及存储在存储器701上并可在处理器702上运行的计算机程序。
处理器702执行程序时实现上述实施例中提供的仿生机器鱼导航任务的强化学习训练回路方法。
进一步地,电子设备还包括:
通信接口703,用于存储器701和处理器702之间的通信。
存储器701,用于存放可在处理器702上运行的计算机程序。
存储器701可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
如果存储器701、处理器702和通信接口703独立实现,则通信接口703、存储器701和处理器702可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(PeripheralComponent,简称为PCI)总线或扩展工业标准体系结构(Extended Industry StandardArchitecture,简称为EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选地,在具体实现上,如果存储器701、处理器702及通信接口703,集成在一块芯片上实现,则存储器701、处理器702及通信接口703可以通过内部接口完成相互间的通信。
处理器702可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。
本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上的仿生机器鱼导航任务的强化学习训练回路方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或N个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“N个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或N个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或N个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,N个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (12)
1.一种仿生机器鱼导航任务的强化学习训练回路方法,其特征在于,包括以下步骤:
基于仿生机器鱼的定点导航任务,构建强化学习训练平台;
建立所述仿生机器鱼在流体中的运动学模型,确定数值仿真环境;
基于所述强化学习训练平台,向所述数值仿真环境中的仿生机器鱼发送指令,以控制所述仿生机器鱼的游动行为,并实时采集所述数值仿真环境中的仿生机器鱼的姿态、速度和加速度中的至少一个数据,并从所述数值仿真环境中同步获取所述仿生机器鱼位置坐标,以完成数值仿真训练;
向实地实验中的仿生机器鱼发送指令,以控制所述仿生机器鱼的游动行为,并实时采集所述仿生机器鱼通过无线信号所发送的姿态、速度和加速度中的至少一个数据,并同步接收双目定位系统解算的所述仿生机器鱼位置坐标,以进行实地实验训练。
2.根据权利要求1所述的方法,其特征在于,所述构建强化学习训练平台,包括:
将所述仿生机器鱼的传感器信号和位置信号作为强化学习的状态,并将所述仿生机器鱼的转向、前进的运动模式作为可选择的动作,通过预设近端策略优化算法进行训练,得到所述强化学习训练平台。
3.根据权利要求2所述的方法,其特征在于,所述预设近端策略优化算法的损失函数为:
其中,θ和θ′分别表示进行参数更新的网络和进行动作采样的网络,st和at分别表示所述仿生机器鱼所测量的状态信号以及其执行的控制动作,为优势函数。
4.根据权利要求1所述的方法,其特征在于,所述建立所述仿生机器鱼在流体中的运动学模型,确定数值仿真环境,包括:
建立所述仿生机器鱼的至少一个运动模式,根据测量仿生机器鱼在特定流动中的所有运动模式下的游动速度、俯仰角速度和偏航角速度中的至少一个参数,建立所述运动学模型,以模拟产生的轨迹数,确定所述数值仿真环境。
5.根据权利要求1所述的方法,其特征在于,所述以进行实地实验训练,包括:
在所述实地实验中,计算所述仿生机器鱼在三维空间坐标系下的坐标,以获取所述仿生机器鱼的实际位置,并同步获取所述仿生机器鱼的实测信号数据,利用所述强化学习平台进行最终训练,直至所述仿真机器鱼能够在所述实地实验中完成指定任务。
6.一种仿生机器鱼导航任务的强化学习训练回路装置,其特征在于,包括:
构建模块,用于基于仿生机器鱼的定点导航任务,构建强化学习训练平台;
建立模块,用于建立所述仿生机器鱼在流体中的运动学模型,确定数值仿真环境;
第一训练模块,用于基于所述强化学习训练平台,向所述数值仿真环境中的仿生机器鱼发送指令,以控制所述仿生机器鱼的游动行为,并实时采集所述数值仿真环境中的仿生机器鱼的姿态、速度和加速度中的至少一个数据,并从所述数值仿真环境中同步获取所述仿生机器鱼位置坐标,以完成数值仿真训练;
第二训练模块,用于向实地实验中的仿生机器鱼发送指令,以控制所述仿生机器鱼的游动行为,并实时采集所述仿生机器鱼通过无线信号所发送的姿态、速度和加速度中的至少一个数据,并同步接收双目定位系统解算的所述仿生机器鱼位置坐标,以进行实地实验训练。
7.根据权利要求6所述的装置,其特征在于,所述构建模块包括:
第一训练单元,用于将所述仿生机器鱼的传感器信号和位置信号作为强化学习的状态,并将所述仿生机器鱼的转向、前进的运动模式作为可选择的动作,通过预设近端策略优化算法进行训练,得到所述强化学习训练平台。
8.根据权利要求7所述的装置,其特征在于,所述预设近端策略优化算法的损失函数为:
其中,θ和θ′分别表示进行参数更新的网络和进行动作采样的网络,st和at分别表示所述仿生机器鱼所测量的状态信号以及其执行的控制动作,为优势函数。
9.根据权利要求6所述的装置,其特征在于,所述建立模块包括:
建立单元,用于建立所述仿生机器鱼的至少一个运动模式,根据测量仿生机器鱼在特定流动中的所有运动模式下的游动速度、俯仰角速度和偏航角速度中的至少一个参数,建立所述运动学模型,以模拟产生的轨迹数,确定所述数值仿真环境。
10.根据权利要求6所述的装置,其特征在于,所述第二训练模块包括:
第二训练单元,用于在所述实地实验中,计算所述仿生机器鱼在三维空间坐标系下的坐标,以获取所述仿生机器鱼的实际位置,并同步获取所述仿生机器鱼的实测信号数据,利用所述强化学习平台进行最终训练,直至所述仿真机器鱼能够在所述实地实验中完成指定任务。
11.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如权利要求1-5任一项所述的仿生机器鱼导航任务的强化学习训练回路方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以用于实现如权利要求1-5任一项所述的仿生机器鱼导航任务的强化学习训练回路方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310894612.9A CN117150881A (zh) | 2023-07-20 | 2023-07-20 | 仿生机器鱼导航任务的强化学习训练回路方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310894612.9A CN117150881A (zh) | 2023-07-20 | 2023-07-20 | 仿生机器鱼导航任务的强化学习训练回路方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117150881A true CN117150881A (zh) | 2023-12-01 |
Family
ID=88899567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310894612.9A Pending CN117150881A (zh) | 2023-07-20 | 2023-07-20 | 仿生机器鱼导航任务的强化学习训练回路方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117150881A (zh) |
-
2023
- 2023-07-20 CN CN202310894612.9A patent/CN117150881A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109866752B (zh) | 基于预测控制的双模式并行车辆轨迹跟踪行驶系统的方法 | |
Surmann et al. | Deep reinforcement learning for real autonomous mobile robot navigation in indoor environments | |
JP6514166B2 (ja) | ロボットの動作プログラムを学習する機械学習装置,ロボットシステムおよび機械学習方法 | |
Drews et al. | Aggressive deep driving: Combining convolutional neural networks and model predictive control | |
JP6855524B2 (ja) | 低速特徴からのメトリック表現の教師なし学習 | |
CN110941272B (zh) | 自动驾驶控制方法和设备 | |
CN113614730B (zh) | 多帧语义信号的cnn分类 | |
CN111971574A (zh) | 用于自动驾驶车辆的lidar定位的基于深度学习的特征提取 | |
CN112631296B (zh) | 基于深度强化学习的机器人导航方法及系统、设备、介质 | |
CN109855616B (zh) | 一种基于虚拟环境和强化学习的多传感器机器人导航方法 | |
Zieliński et al. | 3D robotic navigation using a vision-based deep reinforcement learning model | |
Sans-Muntadas et al. | Learning an AUV docking maneuver with a convolutional neural network | |
CN110610130A (zh) | 一种多传感器信息融合的输电线路机器人导航方法及系统 | |
CN109764876B (zh) | 无人平台的多模态融合定位方法 | |
CN117301047A (zh) | 双臂空间机器人视觉伺服协调控制方法及装置 | |
Podbucki et al. | Aspects of autonomous drive control using NVIDIA Jetson Nano microcomputer | |
CN112232484B (zh) | 一种基于类脑神经网络的空间碎片识别捕获方法及系统 | |
CN117150881A (zh) | 仿生机器鱼导航任务的强化学习训练回路方法及装置 | |
Chen et al. | Learning trajectories for visual-inertial system calibration via model-based heuristic deep reinforcement learning | |
CN114594776B (zh) | 一种基于层次化和模块化学习的导航避障方法 | |
Akilan et al. | Multimodality weight and score fusion for slam | |
Liu et al. | Trajectory prediction and visual localization of snake robot based on BiLSTM neural network | |
Crnokic et al. | Artificial neural networks-based simulation of obstacle detection with a mobile robot in a virtual environment | |
Khidhir et al. | Comparative Transfer Learning Models for End-to-End Self-Driving Car | |
Yun et al. | Mobile robot navigation: neural Q-learning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |