本发明属于深海载人潜器智能辅助驾驶领域,特别涉及一种基于模仿学习的深海载人潜器智能辅助驾驶方法。
背景技术:
1、海洋中蕴含着丰富的矿产及战略资源,而载人潜器(human occupied vehicle,hov)是海洋科学研究、海洋资源开发利用、海洋权益维护中必不可少的重要装备,从20世纪70年代开始,我国开始着眼于深海探索技术,经过几十年的发展历程,形成了从“蛟龙号”—“深海勇士号”—“奋斗者号”里程碑式的跨越,2020年11月,“奋斗者号”成功下潜至马里亚纳海沟最深处,下潜深度达10909米,目前,三台潜器已累计下潜超过1100次,成功抵达深海海山、热液和洋脊等地,完成了深海生物种群调查、海底资源采样等任务。
2、深海载人潜器抵达指定作业深度后,主要通过巡航、悬停、定点作业等运动用以完成相应任务,在作业过程中,有手动控制、自动控制和应急控制三种方式,手动分为两种方式,潜航员通过操纵杆进行驾驶,信号传递给航行控制软件,而后控制推进器,从而调整潜器速度与姿态,这是最常用、最基本的方式,另外可以通过控制软件的面板直接调整推进器控制电压或操作盒控制量,来改变潜器的运动状态;自动控制是不需要人为进行操控的时候的控制方式;应急控制指控制信号完全脱离计算机而进行的一些操作,主要是一些突发状况下的应急操作,但操作范围有限。
3、对于自主航行而言,目前的载人潜器自动航行的方式有限,只能完成自动定深、自动定向、自动定高、定速、悬停定位几种控制方式,在实际过程中的运动形式较为单一,智能性较差,同时由于海底作业区域沟壑复杂及一些障碍物的存在,潜航员在作业过程中,可能并未注意到避碰声纳信息,手操航行时具有一定的碰撞危险,因此增强载人潜器的智能性,设计智能辅助驾驶系统,不仅增强了潜器的安全性能,同时可以更好更高效地完成一些复杂任务,从而应对未来的挑战。
技术实现思路
1、本发明目的是提供一种基于模仿学习的深海载人潜器智能辅助驾驶方法,该辅助驾驶系统搭载一个智能体模型,模型由模仿学习方法训练得到,通过收集载人潜器下潜过程中的位置、姿态、速度、设备状态,以及潜航员的操作信息,将其作为专家示范样本,使用模仿学习方法训练智能体从专家轨迹中学习状态动作对,从而模仿潜航员的驾驶行为,训练完毕后,通过搭载该智能辅助驾驶系统,潜器可以在保留手操控制的方式基础上,进行自动驾驶或智能辅助驾驶,不仅可以在潜航员脱离驾驶时接管驾驶任务,同时可以在某些危险情况下进行控制量矫正,增强了潜器的安全性能,同时潜器的智能性也得到了提高,使其可以更高效地完成一些复杂任务。
2、本发明为实现上述目的所采用的技术方案是:一种基于模仿学习的深海载人潜器智能辅助驾驶方法,包括以下步骤:
3、s1:构建载人潜器六自由度运动学及动力学模型;
4、s2:收集载人潜器状态及潜航员的操作信息,设计状态动作对,将其作为专家示范样本,供智能体模仿、学习;
5、s3:基于生成对抗性模仿学习方法,构建算法网络模型,基于步骤s2的专家示范样本,训练模型中的判别器和生成器网络,在二者不断地对抗中,使智能体获得最优策略,从而能够具备驾驶载人潜器的能力;
6、s4:基于步骤s3训练的智能体,构建智能辅助驾驶系统,载人潜器搭载智能辅助驾驶系统后,在保留原有的航行控制系统的基础上,设计多种驾驶模式;
7、s5:基于步骤s4设定的驾驶模式,设计整个驾驶系统的运行流程,通过航行控制系统与智能辅助驾驶系统的配合,实现对潜器的控制。
8、所述构建载人潜器六自由度运动学及动力学模型,即:
9、
10、其中,η代表载人潜器的位置姿态,j(η)为载体自身坐标系到大地坐标系的转换矩阵,v代表速度,m表示惯性矩阵,c(v)为科式向心力矩阵,d(v)代表阻尼矩阵,g(η)为恢复力矩阵,b为推进器配置矩阵,τ代表控制输入向量。
11、所述载人潜器的位置姿态为:载人潜器在三维环境由进退、横移、升沉、横摇、纵倾以及转艏六部分运动形式组成,表示为:
12、
13、其中,(x,y,z)代表大地坐标系下的位置坐标,θ与ψ分别代表横摇角、纵倾角与艏向角。
14、所述速度v为:
15、v=[u,v,w,p,q,r]t
16、其中,(u,v,w)分别代表auv的纵向速度、横向速度与垂向速度,p、q与r分别表示横摇角速度、纵倾角速度与转艏角速度。
17、所述载体自身坐标系到大地坐标系的转换矩阵j(η)为:
18、
19、其中,c表示cos函数,s表示sin函数。
20、所述步骤s2,包括以下步骤:
21、s2-1:基于模仿学习方法进行训练,需要智能体从专家示范样本中学习状态动作对,从而模仿潜航员的驾驶行为;
22、所述状态动作对由(s,a)表示,根据步骤s1中载人潜器六自由度运动学及动力学模型,获取与潜器运动相关的状态信息;
23、状态s组成为:
24、s=(η,v,dev,tar)
25、其中,η代表载人潜器的位置姿态,v代表速度,dev为设备的状态信息,包括避碰声纳探测到的障碍物距离,以及设备的报警信息,即目前设备所处正常工作状态还是预警、报警状态,可由[0,2]区间的整数表示;tar代表目标位置信息;
26、s2-2:a表示智能体输出的动作,为六自由度上的推力与力矩,即τ,表示为:
27、[tx,ty,tz,mx,my,mz]t
28、s2-3:通过与推力分配矩阵相乘,对各个推进器进行推力分配,并转化为控制电压,从而改变推进器的转速来控制潜器的航行;
29、s2-4:通过模仿学习方法,基于专家示范样本,智能体获得在不同的状态s下选择不同的动作a。
30、所述步骤s3,具体为:
31、s3-1:基于生成对抗性模仿学习的方法,构建智能辅助驾驶系统,其中,算法模型包括:生成器和判别器;
32、s3-2:总的训练的目标为:
33、
34、其中,d:s×a→(0,1)由判别器输出,表示输入数据来自于专家数据的概率,πe代表专家策略,π代表生成的策略,h(π)代表信息熵,λ代表熵参数;
35、s3-3:基于该目标,判别器的训练目标为:
36、
37、s3-4:利用近端策略优化算法进行策略更新,即对生成器网络进行更新;在该方法中,ppo的奖励函数设定为:
38、r=-log(1-d(s,a))
39、其中,该奖励值由判别器网络提供,奖励函数中包含d(s,a),用于区别专家策略和生成器生成的策略π;
40、s3-5:在更新生成器网络时,固定判别器,更新采用梯度下降的方式更新神经网络,即:
41、
42、其中,g与d分别代表生成器和判别器,v表示状态价值函数,φ为生成器网络参数,η表示学习率;
43、s3-6:判别器与生成器在训练过程中不断地进行对抗,随着时间的推移,二者将达到一个均衡;最终,智能体获得最优策略。
44、步骤s4中,所述载人潜器驾驶模式,包括:辅助驾驶系统关闭时的航行模式、辅助驾驶功能模式以及完全自动驾驶功能模式;
45、所述辅助驾驶系统关闭时的航行模式,用于实现手动驾驶、基础自动驾驶以及应急驾驶的方式,根据潜航员通过驾驶操纵杆来进行载人潜器的控制;
46、所述辅助驾驶功能,用于在潜航员进行手操控制的基础上,在潜航员脱离操纵杆时,系统基于载人潜器所处环境、当前状态及设备状况进行辅助驾驶,接管潜航员的驾驶角色,同时在一些紧急状况下,进行决策优化,影响潜器的运动;
47、所述完全自动驾驶,是全部交由智能体进行决策的方式,基于获得的最优策略,对载人潜器进行航行控制。
48、所述整个驾驶系统的运行流程,包括以下步骤:
49、s5-1:判断潜器是否开启智能辅助驾驶系统,默认情况下为关闭状态,需要潜航员手动开启,如果尚未开启,此时载人潜器处于辅助驾驶系统关闭时的航行模式,由航行控制系统输出控制量,潜航员可以进行手操控制、自动定向等自动航行控制;
50、s5-2:若潜航员开启智能辅助驾驶系统,则进行判断在开启期间是否同时需要潜航员进行操作,若不需要,此时潜器驾驶状态为完全自动驾驶模式,由智能辅助驾驶系统控制,推进器的推力与力矩由智能体输出;
51、s5-3:若在开启智能辅助驾驶系统的同时,需要潜航员进行操作,则执行辅助驾驶功能模式,此时为潜器在多数时间下所处的状态,在每个状态下,航行控制系统输出动作为τ1,即潜航员通过操纵杆输出的力与力矩,辅助驾驶系统中智能体输出动作为τ2;再进行判断:
52、τ1≠0
53、若不等式成立,表示在开启智能辅助驾驶系统的同时,潜航员仍然使用操纵杆进行控制,反之,代表此时未使用操纵杆进行驾驶,由智能辅助驾驶系统输出控制量,直至潜航员接管驾驶过程;
54、s5-4:在辅助驾驶功能模式中,使用操纵杆进行潜器的航行控制时,需要进一步判断,使用动作τ1是否会影响潜器的安全,若不影响潜器的安全性,则以操纵杆输出的控制量τ1控制潜器的航行,即:智能辅助驾驶系统不影响潜航员的操作,实际航行仍以人工操作为主;
55、当动作τ1影响潜器的安全性时,智能辅助驾驶系统输出的控制量τ2将替代τ1来控制潜器的航行;
56、s5-5:基于步骤s5-1~s5-4的步骤,输出的控制量,通过执行机构来实现潜器的航行过程。
57、本发明具有以下有益效果及优点:
58、1.本发明设计整个驾驶系统的运行流程,通过航行控制系统与智能辅助驾驶系统的配合,实现对潜器的控制,不仅增强了潜器的安全性能,同时可以更加高效地完成一些复杂任务。
59、2.本发明通过搭载该智能辅助驾驶系统,潜器可以在保留手操控制的方式基础上,进行自动驾驶或智能辅助驾驶,不仅可以在潜航员脱离驾驶时接管驾驶任务,同时可以在某些危险情况下进行控制量矫正。
60、3.本发明训练模型中的判别器和生成器网络,在二者不断地对抗中,使智能体获得最优策略,从而能够具备驾驶载人潜器的能力。
61、4.本发明训练的智能体,相比于行为克隆这种传统的模仿学习方法,不仅可以学习到专家样本中的专家轨迹,对于一些未采样的数据,仍然可以获得最优策略。
62、5.本发明的辅助驾驶系统具有一定的识别危险状态的能力,在潜器处于危险状态时,通过智能辅助驾驶系统进行矫正,可以有效减少潜器处于危险状态的概率,同时在软件面板上进行信息提示,为潜航员下一步决策提供参考,提高了潜器的智能性与安全性。
1.一种基于模仿学习的深海载人潜器智能辅助驾驶方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于模仿学习的深海载人潜器智能辅助驾驶方法,其特征在于,所述构建载人潜器六自由度运动学及动力学模型,即:
3.根据权利要求2所述的一种基于模仿学习的深海载人潜器智能辅助驾驶方法,其特征在于,所述载人潜器的位置姿态为:载人潜器在三维环境由进退、横移、升沉、横摇、纵倾以及转艏六部分运动形式组成,表示为:
4.根据权利要求2所述的一种基于模仿学习的深海载人潜器智能辅助驾驶方法,其特征在于,所述速度v为:
5.根据权利要求2所述的一种基于模仿学习的深海载人潜器智能辅助驾驶方法,其特征在于,所述载体自身坐标系到大地坐标系的转换矩阵j(η)为:
6.根据权利要求1所述的一种基于模仿学习的深海载人潜器智能辅助驾驶方法,其特征在于,所述步骤s2,包括以下步骤:
7.根据权利要求1所述的一种基于模仿学习的深海载人潜器智能辅助驾驶方法,其特征在于,所述步骤s3,具体为:
8.根据权利要求1所述的一种基于模仿学习的深海载人潜器智能辅助驾驶方法,其特征在于,步骤s4中,所述载人潜器驾驶模式,包括:辅助驾驶系统关闭时的航行模式、辅助驾驶功能模式以及完全自动驾驶功能模式;
9.根据权利要求1所述的一种基于模仿学习的深海载人潜器智能辅助驾驶方法,其特征在于,所述整个驾驶系统的运行流程,包括以下步骤:
