1.一种基于Q学习的自主水下航行器协助下水下数据收集方法,其特征在于,包括以下步骤:
步骤1:将水下监测区域划分为若干个子区域,每个子区域部署若干个用于执行水下监测任务的传感器节点和一个用于从传感器节点收集数据的数据收集器;
步骤2:在每个子区域,传感器节点通过声通信寻找自身邻居节点,建立各自的邻居列表,然后采用博弈论对传感器网络进行拓扑优化,生成基于最优刚性图的传感器网络拓扑;
步骤3:通过所述传感器网络拓扑,得到各个传感器节点的通信节点,并提取海图信息,确定障碍物位置,传感器节点基于Q学习算法选择路由策略,将采集到的数据发送至数据收集器;
步骤4:每个数据收集器通过声通信向自主水下航行器广播一个短控制数据包,所述短控制数据包包含数据收集器的位置信息和数据收集器正在收集的事件的数据值;
步骤5:自主水下航行器根据接收到的短控制数据包,将收益函数最大的数据收集器作为目标数据收集器;所述数据收集器的收益函数通过位置信息和动态数据值定义;
步骤6:自主水下航行器在根据已知海域信息建立的水下环境三维模拟中基于Q学习算法规划到达目标数据收集器的路径;
步骤7:自主水下航行器利用PD控制器对规划的路径进行跟踪,完成对目标数据收集器的访问,返回步骤4;
步骤8:当到达自主水下航行器规定访问时间后,自主水下航行器上浮至水面,并将数据传送到水面控制中心,完成本周期数据收集任务。
2.根据权利要求1所述的基于Q学习的自主水下航行器协助下水下数据收集方法,其特征在于,所述传感器节点受水流影响的移动采用弯曲水流移动模型来描述;且所述传感器节点仅在预定的子区域中移动。
3.根据权利要求1所述的基于Q学习的自主水下航行器协助下水下数据收集方法,其特征在于,采用博弈论对传感器网络进行拓扑优化,包括:在每一轮博弈中,通过调整连接到节点的边,使节点博弈模型的效用函数最大化,生成最优刚性子图;
所述节点博弈模型的效用函数为:u(si,s‑i)=αhi(si,s‑i)+βtrace(X(p,W));
其中α是一个正数,β是一个正数,trace(X(p,W))表示刚度矩阵的秩,边的刚度矩阵为:hi(si,s‑i)为连通性函数,其中R(p,W)为加权刚度矩阵;N表示传感器节点的数量。
4.根据权利要求1所述的基于Q学习的自主水下航行器协助下水下数据收集方法,其特征在于,传感器节点基于Q学习算法选择路由策略包括:定义当前传感器节点st,下一个可选传感器节点集A,传感器的奖励函数R(st,at)定义如下: 其中at∈A为下一个选择节点,Rmax是最大奖励值,表示当下一个节点是数据收集器时,奖金值被设置为最大值;‑Rmax是将奖励值设置为负值,以避免传感器节点不直接连接或存在环境空隙时出现空白区域;结合传感器的位置信息,‑diffi,j为节点之间的距离,表示为了减少传输距离,当下一个节点既不是目标也不是空白区域时,结合传感器节点之间的距离设置负奖励值;通过得到及时的奖励函数R(st,at)来更新当前节点的Q值,Q值函数Q(st,at)定义如下:Q(st,at)=R(st,at)+γ×max(Q(st+1,at+1));其中折扣因子γ是满足0≤γ<1的常数;当执行所选节点并得到相应的返回值时,当前节点被转移到下一个选择的节点,根据新节点下的最大Q值和返回值更新前一节点的Q值;直到满足结束条件,停止Q值的更新;传感器节点根据Q矩阵选择最大Q值的节点作为下一跳转发节点,最后将传感器节点收集的数据汇集到数据收集器。
5.根据权利要求1所述的基于Q学习的自主水下航行器协助下水下数据收集方法,其特征在于,所述数据收集器正在收集的事件的数据值包括:假设一组事件集E={E1,E2,...,E|E|}发生在水下监测区域;
当传感器节点i∈{1,...,N}在时间tk,i监测到事件Ek时,获得对于事件Ek上的监测数据信息值:
其中 分别表示事件Ek的重要性和及时性;0<βk<1表示信息权重,其作用是平衡重要性和及时性之间的权衡;事件重要性可以根据监测级别进行设计和修改;同时,事件时效性是一个单调递减的函数,它随捕捉感知数据的时间衰减;定义一个二进制变量kk,i,当传感器i感应到事件Ek时,kk,i=1,否则为0;任意传感器节点i发送到数据收集器的信息值为: 则数据收集器j得到的传感器的信息值为:RCj(t)=∑liCE,i(t);
其中j∈{1,...,M},li是一个二进制变量,当数据收集器接收传感器i发送的数据时,li=1,否则li=0。
6.根据权利要求5所述的基于Q学习的自主水下航行器协助下水下数据收集方法,其特征在于,数据收集器的收益函数:Ij(t)=RCj(t)‑μD(t);其中t∈[0,T],D(t)是自主水下航行器当前位置到数据收集器j的距离;距离做减法的目的是减少访问距离,μ是常数。
7.根据权利要求1所述的基于Q学习的自主水下航行器协助下水下数据收集方法,其特征在于,根据已知海域信息建立水下环境三维模拟,包括:以自主水下航行器的当前位置作为学习过程的初始点,以当前收益函数最大的收集器为目标点,将该区域地图的x轴,y轴和z轴划分为n个部分,使其均匀地离散为M=n×n×n个区域,自主水下航行器以每个区域作为一个动作,所以有M个可选动作区域;然后根据每个区域的不同先验知识确定奖惩机制,奖惩函数为:
其中上式表示当自主水下航行器下一个动作为目标点区域时,给予奖励RAmax;当自主水下航行器下一个动作是危险区域或非邻域时,得到惩罚‑RAmax,其中RAmax为常数;当目标状态为其他情况时,不指导全局情况。
8.根据权利要求7所述的基于Q学习的自主水下航行器协助下水下数据收集方法,其特征在于,基于Q学习算法规划到达目标数据收集器的路径,包括:自主水下航行器随机在M个可选动作区域中选择当前区域st,并根据当前区域的所有可能动作区域中选择一个动作区域at,并得到当前区域的奖惩RA(st,at),根据选定的动作区域at,作为下一个当前区域st+1,计算下一个当前区域st+1下的最高Q值,并根据QA(st,at)=RA(st,at)+γ×max(QA(st+1,at+1))更新QA(st,at);
重复上述步骤,直到Q值满足收敛要求;
自主水下航行器根据更新后的Q值,找出具有最大Q值的动作区域所组成的路径即为最佳路径。
9.根据权利要求1所述的基于Q学习的自主水下航行器协助下水下数据收集方法,其特征在于,所述PD控制器如下:τ=kpe(t+1)+kd(e(t+1)‑e(t));
4×4 4×4
其中kp∈R 是比例增益,kd∈R 是微分增益;通过调整kp和kd参数来控制反馈输出数据,驱使自主水下航行器到达目标位置。
10.根据权利要求1所述的基于Q学习的自主水下航行器协助下水下数据收集方法,其特征在于,数据收集器被自主水下航行器访问后,数据值被重置为零。