CN109587751B - 无人机自组网自适应路由方法和系统 - Google Patents

无人机自组网自适应路由方法和系统 Download PDF

Info

Publication number
CN109587751B
CN109587751B CN201910012976.3A CN201910012976A CN109587751B CN 109587751 B CN109587751 B CN 109587751B CN 201910012976 A CN201910012976 A CN 201910012976A CN 109587751 B CN109587751 B CN 109587751B
Authority
CN
China
Prior art keywords
node
neighbor
data packet
equal
value
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.)
Active
Application number
CN201910012976.3A
Other languages
English (en)
Other versions
CN109587751A (zh
Inventor
王琪
刘建敏
徐勇军
徐亦达
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN201910012976.3A priority Critical patent/CN109587751B/zh
Publication of CN109587751A publication Critical patent/CN109587751A/zh
Application granted granted Critical
Publication of CN109587751B publication Critical patent/CN109587751B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/04Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/20Communication route or path selection, e.g. power-based or shortest path routing based on geographic position or location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种无人机自组网自适应路由方法,包括:以无人机自组网中的无人机为节点,所有节点以预定周期发送握手包;任一节点接收其邻居节点发送的握手包,获取并更新该邻居节点的节点信息;该节点发送或转发数据包时,获取该数据包从该节点到目标节点的要求传输速度,以及该数据包从该节点到该邻居节点的实际传输速度,以大于或等于该要求传输速度的该实际传输速度对应的邻居节点为候选节点;根据该候选节点的节点信息,通过Q‑learning算法获得该候选节点的Q值,以最大Q值对应的候选节点为下一跳的路由节点进行该数据包的路由。

Description

无人机自组网自适应路由方法和系统
技术领域
本发明涉及信息技术领域,具体涉及一种无人机自适应组网的路由方法和系统。
背景技术
在由无人机组成的自组织网络(简称,无人机自组网)中,无人机自主移动、无线链路不稳定、无人机遭受碰撞和干扰等因素,导致无人机自组网拓扑频繁变化,数据传输无法保持固定路径,需要根据网络当前状态,动态改变数据传输路径,以保证数据高效传送到目的无人机。然而,传统的基于网络拓扑的路由协议,由于需要维护固定的路由表,在无人机自组网中无法正常工作。基于地理信息的路由协议主要分为定位辅助路由和贪心周边无状态路两类路由协议,虽然适用于无人机自组网,但定位辅助路由,由于必须等待完整路由建立才能开始传输数据,其路由建立之初的报文端到端延迟较高;贪心周边无状态路(GPSR)仅使用邻居位置信息,虽然减少了路由控制开销,但在无人机网络中存在路由能耗高且时延大的问题。由于无人机具有更丰富的感知手段,能够对外部作业环境和自身工作状态等多个维度的态势进行全方位感知,无人机可以利用Q-learning方法,通过自学习选择能达到其目标的最优传输路径。
近年来,已有研究工作利用Q-learning实现了无人机自组网的数据转发,而无人机动态移动(移动速度约30-100km/h),其位置和无线链路质量快速变化,但由于该方法的学习率和折扣因子等参数不能随着位置和无线链路质量变化而自适应地改变,导致路由健壮性差,无法适用于动态无人机自组网。此外,上述工作提出的路由协议未考虑数据包在无人机的排队等待时延和数据转发的能量消耗。
发明内容
针对上述问题,本发明提出一种无人机自组网自适应路由方法,包括:以无人机自组网中的无人机为节点,所有节点以预定周期发送握手包;任一节点接收其邻居节点发送的握手包,获取并更新该邻居节点的节点信息;该节点发送或转发数据包时,获取该数据包从该节点到目标节点的要求传输速度,以及该数据包从该节点到该邻居节点的实际传输速度,以不小于该要求传输速度的该实际传输速度对应的邻居节点为候选节点;根据该候选节点的节点信息,通过Q-learning算法获得该候选节点的Q值,以最大Q值对应的候选节点为下一跳的路由节点进行该数据包的路由。
本发明所述的自适应路由方法,其中该要求传输速度
Figure BDA0001938022860000021
dis(i,D) 为该节点i到该数据包路由的目标节点D的距离,deadlinei为该数据包从该节点i到该目标节点D的最大要求传输时间;该实际传输速度
Figure BDA0001938022860000022
Figure BDA0001938022860000023
为该节点i到该邻居节点j的端到端时延,
Figure BDA0001938022860000024
为该数据包到达该邻居节点j时该邻居节点j到该目标节点D的预测距离。
本发明所述的自适应路由方法,其中,该Q值的更新式为
Figure BDA0001938022860000025
其中maxQ(si,ai)s.t.
Figure BDA0001938022860000026
α为学习率,0≤α≤1,si表示该数据包处于节点i的状态,r(si,ai)为该节点i 采取行动ai使该数据包由处于该节点i转换到处于该邻居节点j所获得的奖励值,γ为折扣因子,0≤γ≤1,
Figure BDA0001938022860000028
为下一个状态该邻居节点j采取一个行为aj所能获得的最大Q值。
本发明所述的自适应路由方法,其中该奖励值r(si,ai)为:当该邻居节点j 为该目的节点D时,r(si,ai)=rmax;当该节点i的所有邻居节点j与该目的节点 D的距离均大于该节点i与该目的节点D的距离,r(si,ai)=rmin;当存在该邻居节点j与该目的节点D的距离小于或等于该节点与该目的节点的距离,则
Figure BDA0001938022860000027
其中,w为该节点i到该邻居节点j的端到端时延的权重值,0≤w≤1,
Figure BDA0001938022860000038
为将该数据包从该节点i传输到该邻居节点j并离开该邻居节点j所需要的时间,Eres为该邻居节点j的剩余电量,Einit为该邻居节点j的初始电量;
本发明所述的自适应路由方法,其中该折扣因子γ和该学习率α为:
Figure BDA0001938022860000031
α=1-e,其中,Nt-1(i)和Nt(i)分别为该节点 i在t-1和t时刻拥有邻居节点的个数,
Figure BDA0001938022860000032
Figure BDA0001938022860000033
为该节点i到该邻居节点j的端到端时延,μ和σ分别为所有该节点i到其邻居节点的端到端时延的均值和方差。
本发明还提出一种无人机自组网自适应路由系统,包括:
邻居节点更新模块,用于以无人机自组网中的无人机为节点,获取该节点的邻居节点的节点信息;其中所有该节点以预定周期发送握手包;任一节点接收其邻居节点发送的握手包,获取并更新该邻居节点的节点信息;
候选节点筛选模块,用于该节点从其所有邻居节点中筛选数据包路由候选节点;其中当该节点发送或转发数据包时,获取该数据包从该节点到目标节点的要求传输速度,以及该数据包从该节点到该邻居节点的实际传输速度,以大于该要求传输速度的该实际传输速度对应的邻居节点为该候选节点;
路由节点选择模块,用于根据该候选节点的节点信息,通过Q-learning算法获得该候选节点的Q值,以最大Q值对应的候选节点为下一跳的路由节点进行该数据包的路由。
本发明所述的自适应路由方法,其中该要求传输速度
Figure BDA0001938022860000034
dis(i,D) 为该节点i到该数据包路由的目标节点D的距离,deadlinei为该数据包从该节点i到该目标节点D的最大要求传输时间;该实际传输速度
Figure BDA0001938022860000035
Figure BDA0001938022860000036
为该节点i到该邻居节点j的端到端时延,
Figure BDA0001938022860000037
为该数据包到达该邻居节点j时该邻居节点j到该目标节点D的预测距离。
本发明所述的自适应路由方法,其中,该Q值的更新式为
Figure BDA0001938022860000041
其中maxQ(si,ai)s.t.
Figure BDA0001938022860000042
α为学习率,0≤α≤1,si表示该数据包处于节点i的状态,r(si,ai)为该节点i 采取行动ai使该数据包由处于该节点i转换到处于该邻居节点j所获得的奖励值,γ为折扣因子,0≤γ≤1,
Figure BDA0001938022860000043
为下一个状态该邻居节点j采取一个行为aj所能获得的最大Q值。
本发明所述的自适应路由方法,其中该奖励值r(si,ai)为:当该邻居节点j 为该目的节点D时,r(si,ai)=rmax;当该节点i的所有邻居节点j与该目的节点 D的距离均大于该节点i与该目的节点D的距离,r(si,ai)=rmin;当存在该邻居节点j与该目的节点D的距离小于或等于该节点与该目的节点的距离,则
Figure BDA0001938022860000044
其中,w为该节点i到该邻居节点j的端到端时延的权重值,0≤w≤1,
Figure BDA0001938022860000045
为将该数据包从该节点i传输到该邻居节点j并离开该邻居节点j所需要的时间,Eres为该邻居节点j的剩余电量,Einit为该邻居节点j的初始电量;
本发明所述的自适应路由方法,其中该折扣因子γ和该学习率α为:
Figure BDA0001938022860000046
α=1-e,其中,Nt-1(i)和Nt(i)分别为该节点 i在t-1和t时刻拥有邻居节点的个数,
Figure BDA0001938022860000047
Figure BDA0001938022860000048
为该节点i到该邻居节点j的端到端时延,μ和σ分别为所有该节点i到其邻居节点的端到端时延的均值和方差。
本方法提出的适用于动态无人机自组网的自适应路由方法,利用无人机当前位置信息、电量等先验知识,基于Q-learning进行时延和能量消耗联合优化的路由决策,其中Q-learning方法的学习率和折扣因子可随着位置和无线链路质量变化进行自适应调节,实现自适应路由,提高路由健壮性。
附图说明
图1是本发明的无人机自适应组网方法的流程图。
图2A、2B、2C是单个数据流从源节点到达目的节点路由决策图。
图3、图4和图5是本发明实例的仿真实验结果图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明提出的无人机自适应组网方法和系统进一步详细说明。应当理解,此处所描述的具体实施方法仅仅用以解释本发明,并不用于限定本发明。
为了解决现有技术中所存在的上述问题,本发明提出一种无人机自组网自适应路由方法,该路由方法基于无人机地理位置信息,但不需要全局信息,可以分布式执行,利用Q-learning方法,可在动态网络场景中进行最优路由决策。
所述最优路由决策,在Q-learning的奖励函数中,同时考虑端到端时延和节点的电量,实现低时延、低能耗的路由。此外,Q-learning中学习率和折扣因子将随端到端时延和节点的电量,自适应地调节,实现健壮性路由;针对不满足速度要求的传输问题,选择实际速度最大的邻居节点进行数据的传输,使得数据包尽可能在其初始的最大要求传输时间内到达目的节点;针对当前节点为局部最优节点问题,采用惩罚措施,进而避免其他节点再次选择该节点,造成数据不可达的问题。
在具体描述本发明提出的无人机自组网自适应路由方法之前,首先对本发明涉及的一些概念和术语进行简单的说明。
“网络健壮性”:在网络拓扑动态、链路质量不稳定的条件下,数据包仍可从源节点到达目的节点。
“最大要求传输时间”:数据包从该节点到达目的节点的最大时延。
“排队等待时延”:是数据包到达节点的时刻与离开节点时刻的差值,即数据包在节点的停留时间。
下面将通过一个具体的实施例来详细介绍根据本发明的针对无人机自组网自适应路由方法,参考图1,所述方法包括:
步骤101:节点以100ms的时间间隔周期性地发送握手包,握手包中含有当前节点的地理位置、电量、移动模型、等待时延和折扣因子,收到握手包的节点,利用握手包中的信息建立并维护邻居表,邻居表中含有邻居的地理位置、电量、移动模型、到达时间、信道接入时延、等待时延、Q值、折扣因子和学习率,每个邻居节点的生命周期为400ms,节点在发送握手包之后,根据每个邻居节点的到达时间和生命周期,从邻居表中删去生命期结束的邻居。
步骤102:针对每一个数据包,确定从源节点S到潜在的目的节点D的最大要求传输时间(本实例中,最大要求传输时间的范围为100ms~500ms),在已知最大要求传输时间条件下,节点在转发数据包之前,需更新该数据包的最大要求传输时间,并将所更新的最大要求传输时间加载到数据包中,一起发送给下一跳。
所述最大要求传输时间是数据包从源节点S到达目的节点D的最大时延限制,假设节点i向邻居节点j发送数据包,数据包在节点i和邻居节点j的最大要求传输时间分别为deadlinei、deadlinej,则最大要求传输时间更新公式为:
Figure BDA00019380228600000611
其中,
Figure BDA0001938022860000061
为数据包从节点i到达邻居节点j并从邻居节点j离开的时间,即节点i与邻居节点j的端到端时延。
所述端到端时延
Figure BDA0001938022860000062
在本发明中,节点间不需要保持时钟同步,节点利用邻居表中所记录的邻居信道接入时延和排队等待时延信息,来计算端到端时延
Figure BDA0001938022860000063
Figure BDA0001938022860000064
的表达式为:
Figure BDA0001938022860000065
其中,delayMAC为数据包的信道接入时延,delaypro为数据包的传播时延, delayWR为数据包在邻居节点j的停留时间即排队等待时延,由于数据包在无线媒体中以光速传播,在百米量级的通信范围内,传播时延为微秒量级,因此传播时延较信道接入时延和排队等待时延可忽略不计,
Figure BDA00019380228600000610
可近似为:
Figure BDA0001938022860000066
所述端到端时延
Figure BDA0001938022860000067
可利用ACK包进行估算,即将节点i向邻居节点 j发送数据包的时刻与收到邻居节点j发来ACK包时刻的时差作为时延
Figure BDA0001938022860000068
的值并采用WMEWMA技术更新
Figure BDA0001938022860000069
对于一个拥有m个邻居的节点i,其始终维持m个长度为n的滑动窗口(本实例中n的取值为5),每个窗口记录了节点i向邻居节点j发送的最近n个数据包的时延,第l次更新
Figure BDA00019380228600000612
的公式如下:
Figure BDA0001938022860000071
其中,β为参数(本实施例中β的取值为0.5),0≤β≤1,τ为节点i收到邻居节点j发来的最新ACK包的时延,τ的表达公式为:
τ=tACK-tleave
其中,tACK为节点i收到邻居节点j发送的ACK包的时刻,tleave为数据包离开节点i的时刻。
步骤103:在数据包的转发过程中,根据当前数据包的最大要求传输时间,动态地计算数据包从当前节点i到目的节点D在传输过程中所要求的速度Vi和数据包从节点i到邻居邻居节点j的实际速度
Figure BDA0001938022860000074
并根据Vi
Figure BDA0001938022860000075
获取候选节点集合,候选节点需满足
Figure BDA0001938022860000072
所述数据包在传输过程中所要求速度Vi的表达式为:
Figure BDA0001938022860000073
其中,dis(i,D)为节点i到目的节点D的距离,deadlinei为数据包在节点i 的最大要求传输时间。
所述数据包在传输过程中实际速度
Figure BDA0001938022860000076
的计算方法为:考虑节点的移动性,首先利用邻居表中所记录的邻居节点的移动速度,来预测邻居节点的位置。设节点i在t1时刻将邻居节点j加入到邻居表中,即在t1时刻邻居节点j成为节点i的邻居,邻居节点j在t1时刻的地理位置为[x(j,t1),y(j,t1),z(j,t1)],速度的大小为vj,方向为[angle_xyj,angle_zj],t2为当前时刻,即在t2时刻节点i进行路由决策,假设节点i选择邻居节点j作为下一跳节点,数据包于t3时刻到达邻居节点j,则可预测邻居节点j在t3时刻的位置为:
x(j,t3)=x(j,t1)+υj*cos(angle_xy)*cos(angle_z)*(t3-t1)
y(j,t3)=y(j,t1)+υj*sin(angle_xy)*cos(angle_z)*(t3-t1)
z(j,t3)=z(j,t1)+υj*sin(angle_z)*(t3-t1)
t3=t2+T
其中,T为节点i将数据包传送到邻居节点j的平均时延。
根据节点i的当前位置和邻居节点j的预测位置,可求得数据包从节点i 到邻居节点j所能提供的实际速度
Figure BDA0001938022860000081
Figure BDA0001938022860000082
的表达式为:
Figure BDA0001938022860000083
其中,
Figure BDA0001938022860000084
为节点i与邻居节点j的端到端时延,dis(i,D)为节点i在t2时刻的实际位置与目的节点D的距离,
Figure BDA0001938022860000085
为邻居节点j在t3时刻的预测位置与目的节点D的距离。
步骤104:根据步骤103所得到的候选节点集合,进行最优路由决策,若候选节点集合不为空,则利用Q-learning在候选节点中,选择Q值最大的候选节点作为下一跳,表达式为:
Figure BDA0001938022860000086
其中,α是学习率,0≤α≤1,si表示系统处于节点i状态,r(si,ai)为该节点 i采取行动ai使系统状态由该节点i转换到该邻居节点j所获得的奖励值,γ是折扣因子,0≤γ≤1,
Figure BDA0001938022860000089
为下一个状态该邻居节点j采取一个行为aj所能获得的最大Q值。这里所述的系统是指无人机自组网系统,系统处于节点i状态是指数据包处于节点i时无人机自组网的状态。
所述Q-learning中的奖励函数,同时考虑了端到端时延和节点的电量,其表达式为:
Figure BDA0001938022860000087
其中,w为端到端时延的权重值,0≤w≤1(本实施例中,w的取值为0.6),假设节点i采取行动ai,系统状态由节点i换为邻居节点j,即节点i选用邻居节点j作为下一跳传输数据,则
Figure BDA0001938022860000088
为将数据从节点i传输到邻居节点j并离开邻居节点j所需要的时间,Eres为邻居节点j的剩余电量,Einit为邻居节点j 的初始电量;当所选的邻居节点j为目的节点时,节点i与邻居节点j之间的链路获得最大奖励值rmax(本实施例中,rmax的取值为1);当节点i为局部最优节点时,即节点i的所有邻居节点与目的节点D的距离均大于节点i与目的节点D的距离,则节点i获得最小奖励值rmin(本实施例中,rmin的取值为-1)。
所述Q-learning的学习率α和折扣因子γ,节点将随该节点与邻居节点的端到端时延变化更新相应的学习率α,同时节点将随该节点和邻居节点的位置变化(本发明利用邻居节点个数的变化情况反应节点的位置变化)周期性地更新折扣因子γ(本实施例中,γ的更新周期为0.1s),γ和α的表达式为:
Figure BDA0001938022860000091
Figure BDA0001938022860000092
α=1-e
其中,Nt-1(i)和Nt(i)分别为节点i在t-1和t时刻拥有邻居节点的个数,μ和σ分别为端到端时延的均值和方差。
根据本发明的一个优选实施例,对于当前节点i,若其候选节点的集合为空集,但有实际速度大于0的邻居节点,则选择拥有最大速度且速度不小于0 的邻居节点进行数据传输。
根据本发明的一个优选实施例,对于当前节点i,若既无候选节点,也无实际速度大于0的邻居节点,即节点i为局部最优节点时,则采用惩罚措施即赋予当前节点最小奖励值,并利用Q-learning重新学习当前节点的链路状况,避免其他节点再次选择该节点,造成数据不可达的问题。
为了更清晰地阐述本发明中节点在候选节点集合不为空、候选节点集合为空但有实际速度大于0的邻居节点和候选节点集合为空且无实际速度大于0 的邻居节点,3种情况下的路由决策过程,参考图2A、2B、2C对其进行详细说明。图2A显示了在候选节点集合不空情况下的路由决策过程,假设数据流已从源节点S转发到节点A,且从当前节点A到目的节点D在传输过程中所要求的速度VA等于20m/s,节点A有B、C、E三个邻居,从节点A到节点B、 C、E的实际速度分别为18m/s、28m/s、25m/s,根据候选节点要求,节点C 和E为节点A的候选节点,而节点C和E的Q值分别为0.82、0.85,根据选择最大Q值原则,节点A将选择节点E进行数据传输;图2B显示了在候选节点集合为空但有实际速度大于0的邻居节点情况下的路由决策过程,假设数据流已从源节点S转发到节点A,且从当前节点A到目的节点D在传输过程中所要求的速度VA等于20m/s,节点A有B、C、E三个邻居,从节点A到节点B、C、E的实际速度分别为-8m/s、19m/s、15m/s,根据候选节点要求,节点A邻居的实际速度均小于要求速度,因此节点A无候选节点,即候选节点集合为空,但有实际速度大于0的邻居C和E,则节点A将选择实际速度最大的邻居C进行数据传输;图2C显示了在候选节点集合为空且无实际速度大于0的邻居无人机情况下的路由决策过程,假设数据流已从源节点S转发到节点A,且从当前节点A到目的节点D在传输过程中所要求的速度VA等于20m/s,节点A有B、C两个邻居,从节点A到节点B、C的实际速度分别为-5m/s、 -9m/s,根据候选节点要求,节点A邻居的实际速度均小于要求速度,因此节点A无候选节点,即候选节点集合为空,同时节点A也无实际速度大于0的邻居节点,因此无人机A对原传输链路进行惩罚。
下面将针对在步骤101~步骤104中的具体数学计算式及其中所涉及的变量进行详细介绍。
<步骤101的计算式>
节点周期性地发送握手包,握手包中含有当前节点的地理位置、电量、移动模型、等待时延和折扣因子,收到握手包的节点,利用握手包中的信息建立并维护邻居表,邻居表中含有邻居的地理位置、电量、移动模型、到达时间、信道接入时延、等待时延、Q值、折扣因子和学习率,节点确定每个邻居节点的生命周期,并在发送握手包之后,根据每个邻居节点的到达时间和生命周期,从邻居表中删去生命期结束的邻居,握手包的时间间隔和邻居节点的生命周期均可根据节点的移动速度进行调节。
<步骤102的计算式>
本路由方法中,每一个数据包都有一个初始的最大要求传输时间,即源节点S在发送数据包时,需赋予数据包明确的最大要求传输时间,数据包需在相应的最大要求传输时间内到达目的节点D。在转发过程中,数据包的最大要求传输时间会实时更新,假设节点i向邻居节点j发送数据包,数据包在节点i 和j的最大要求传输时间分别为deadlinei、deadlinej,则数据包的最大要求传输时间更新公式为:
Figure BDA0001938022860000101
其中,
Figure BDA0001938022860000102
为数据包从节点i到达邻居节点j并从邻居节点j离开的时间,其由三部分组成:
Figure BDA0001938022860000103
其中,delayMAC为数据包的信道接入时延,delaypro为数据包的传播时延, delayWR为数据包在邻居节点j的停留时间即排队等待时延,由于数据包在无线媒体中以光速传播,在百米量级的通信范围内,传播时延为微秒量级,因此传播时延较信道接入时延和排队等待时延可忽略不计,
Figure BDA0001938022860000111
可近似为:
Figure BDA0001938022860000112
本方法中,利用ACK包对
Figure BDA0001938022860000113
进行估算,即将节点i向邻居节点j发送数据包的时刻与收到邻居节点j发来ACK包时刻的时差作为
Figure BDA0001938022860000114
的值,同时采用WMEWMA技术更新
Figure BDA0001938022860000115
对于一个拥有m个邻居的节点i,其始终维持m个长度为n的滑动窗口,每个窗口记录了节点i向邻居节点j发送的最近 n个数据包的时延,第l次更新
Figure BDA0001938022860000116
的公式如下:
Figure BDA0001938022860000117
其中,β为参数,0≤β≤1,如果节点的端到端时延随时间变化较大,那么应赋予β一个较大值(一般为0.7~0.9),以强调新测量的信道接入时延。但是如果节点的端到端时延变化很小,则β可以选择一个较小的值(一般为 0.2~0.4),τ为节点i收到邻居节点j发来的最新ACK包的时延,τ的表达公式为:
τ=tACK-tleave
其中,tACK为节点i收到邻居节点j发送的ACK包的时刻,tleave为数据包离开节点i的时刻。
<步骤103的计算式>
本方法中,数据包在传输过程中需满足一定的速度要求,根据当前数据包的端到端最大要求传输时间和当前节点i与目的节点D之间的距离,确定数据包从当前节点i到目的节点D在传输过程中所要求的速度Vi,Vi的表达式为:
Figure BDA0001938022860000118
同时根据当前节点i与邻居邻居节点j间的端到端时延和邻居节点j与目的节点D间的距离以及邻居节点j的移动状况,确定数据包从节点i到邻居节点j的实际速度
Figure BDA0001938022860000119
其计算方法为,设节点i在t1时刻将邻居节点j加入到邻居表中,即在t1时刻邻居节点j成为节点i的邻居,邻居节点j在t1时刻的地理位置为[x(j,t1),y(j,t1),z(j,t1)],速度的大小为vj,方向为[angle_xyj,angle_zj],t2为当前时刻,即在t2时刻节点i进行路由决策,假设节点i选择邻居节点j作为下一跳节点,数据包于t3时刻到达邻居节点j,则可预测邻居节点j在t3时刻的位置为:
x(j,t3)=x(j,t1)+υj*cos(angle_xy)*cos(angle_z)*(t3-t1)
y(j,t3)=y(j,t1)+υj*sin(angle_xy)*cos(angle_z)*(t3-t1)
z(j,t3)=z(j,t1)+υj*sin(angle_z)*(t3-t1)
t3=t2+T
其中,T为节点i将数据包传送到邻居节点j的时延。
根据节点i的当前位置和邻居节点j的预估位置,可求得数据包从节点i 到邻居节点j所能提供的实际速度
Figure BDA0001938022860000126
Figure BDA0001938022860000127
的表达式为:
Figure BDA0001938022860000121
其中,
Figure BDA0001938022860000122
为节点i与邻居节点j的端到端时延,dis(i,D)为节点i在t2时刻的实际位置与目的节点D的距离,
Figure BDA0001938022860000123
为邻居节点j在t3时刻的预测位置与目的节点D的距离。
根据上述Vi
Figure BDA0001938022860000128
获取候选节点集合,候选节点需满足
Figure BDA0001938022860000124
<步骤104的计算式>
根据步骤103所得的候选节点集合,进行最优路由决策,若候选节点集合不为空,则利用Q-learning在候选节点中,选择Q值最大的节点作为下一跳,表达式如下:
Figure BDA0001938022860000125
其中,α是学习率(0≤α≤1),用于控制Q值的更新速度,α值越小,表示Q值更新较慢,反之,Q值更新较快。si表示系统处于节点i状态,r(si,ai) 为该节点i采取行动ai使系统状态由该节点i转换到该邻居节点j所获得的奖励值,γ是折扣因子(0≤γ≤1),γ越小,表示智能体更趋向于考虑即时奖励;反之,γ越大,表示智能体将以更大的权重考虑未来的奖励。
未来状态转换的稳定性,较高的γ值表示未来的状态转换是稳定的,而较低的γ值表示节点的状态转换不稳定。
Figure BDA0001938022860000131
为下一个状态该邻居节点j采取一个行为aj所能获得的最大Q 值。
本方法中,Q-learning的奖励函数同时考虑了端到端时延和节点的电量,其表达式为:
Figure BDA0001938022860000132
其中,w(0≤w≤1)为端到端时延的权重值,较高的w值表示在数据包的传输过程中,更侧重于低时延要求;较低的w值表示在数据包的传输过程中,更侧重于低能耗要求。假设节点i采取行动ai使系统由节点i状态转换为节点j状态,即选用邻居节点j传输数据,则delayi j为将数据从节点i传输到邻居节点j并离开邻居节点j所需要的时间,Eres为邻居节点j的剩余电量,Einit为邻居节点j的初始电量,当所选的邻居节点j为目的节点时,节点i与邻居节点j之间的链路获得最大奖励值rmax;当节点i为最优节点时,即节点i的所有邻居节点与目的节点D的距离均大于节点i与目的节点D的距离,则节点i 获得最小奖励值rmin
本方法中,Q-learning的学习率α和折扣因子γ将随端到端时延和节点的位置变化,进行自适应地调节,从而实现自适应路由,γ和α的表达式为:
Figure BDA0001938022860000133
Figure BDA0001938022860000134
α=1-e
其中,Nt-1(i)和Nt(i)分别为节点i在t-1和t时刻拥有邻居节点的个数,折扣因子γ与节点邻居个数的变化成反比,若当前节点的邻居个数变化较大,说明该节点处于一个较不稳定的状态,则γ应拥有一个较小的值来表示当前节点未来的状态转换不稳定,若当前节点的邻居个数变化较小,说明该节点处于一个较稳定的状态,则γ应拥有一个较大的值来表示当前节点未来的状态转换较为稳定。μ和σ分别为端到端时延的均值和方差,学习率α与数据包的端到端时延有关,端到端时延的波动越大,表示该链路越不稳定,因此α应拥有一个更大的值,使Q值更新速度较快,否则较小的α值使得Q值更新速度较慢。
本方法中,针对候选节点的集合为空集,即所有候选节点的实际速度均小于当前节点的要求速度,本方法将选择最大实际速度的邻居邻居节点j进行数据传输,使数据包尽可能在初始的最大要求传输时间内到达目的节点。
本方法中,针对当前节点为局部最优节点问题,即当前节点既无候选节点,也无实际速度大于0的邻居节点,采用了惩罚措施,即赋予当前节点最小的奖励值,同时利用Q-learning重新学习当前节点的链路状况,避免其他节点再次选择该节点,造成数据不可达的问题。
下面将通过具体的实例对本发明所述的基于Q-learning的自适应路由进行仿真实验并给予说明。
本实例在无线网络模拟器WSNet环境中仿真实验,实例中,25个节点分布在500m×500m的区域内,目的节点固定于(500,500)的位置上,而其他节点随机分布。表1描述了本发明实验参数的详细信息。
表1参数配置表
Figure BDA0001938022860000141
在本实例中,一个握手包的时间间隔为100ms,每个邻居的生命周期为 400ms,折扣因子更新的时间间隔为100ms。实验中,仅有源节点在发送数据,目的节点接收数据,而其他节点对收到的数据进行转发。除了目的节点,其他节点以200ms的时间间隔周期性地随机改变移动速度和方向,移动速度范围为10m/s~30m/s。源节点发送数据的时间间隔为10ms~50ms,根据源节点发送数据的时间间隔进行了5组实验,每组实验仿真1000次,源节点发送1000 个数据包,数据包的大小为127Bytes。
本实验中,将本发明实例与现有的QGeo路由协议(QGeo:Q-Learning basedGeographic Ad-Hoc Routing Protocol for Unmanned Robotic Networks, Jung W S,2017)进行了比较,并从平均端到端时延、数据包的到达率和能耗,这3个性能指标对本发明所述无人机自组网自适应路由方法进行评估。在分析实验结果之前,先对本实验所涉及的3个性能指标进行简单的说明:
平均端到端时延AD:数据包从源节点S成功到达目的节点D的平均时延;
到达率AR:目的节点D所收到的数据包数(不包括冗余的数据包数)占源节点S所发送的数据包数的百分比;
能量消耗(EC):考虑节点转发和接受数据包是主要的能量消耗因素。能量消耗指标EC定义为:EC=(source_fp+rely_rp+reply_fp)/des_rp,其中, source_fp源节点转发数据包数,rely_rp、reply_fp分别是中继节点接受和转发数据包数,des_rp是目的节点接受的数据包数。图3显示了平均端到端时延随着源节点发送数据时间间隔增大的变化,红色曲线为本发明所述的无人机自组网自适应路由方法的平均端到端时延变化情况,蓝色曲线为现有的QGeo路由协议的平均端到端时延变化情况,从图3中可以看到,本发明的平均端到端时延低于现有的QGeo路由协议,特别是当源节点发送数据包的时间间隔小于 20ms时。相比于QGeo算法,本发明方法的平均端到端时延平均降低45%。这主要原因是本发明对数据包在传输过程中的速度进行了约束,要求数据包在传输过程中的速度不小于时延约束范围内所要求的速度。相比QGeo路由,本发明在Q学习的奖励函数中,不仅考虑了数据的信道接入时延,还考虑了数据在节点的排队等待时延。通过对信道接入时延和等待时延的联合考虑,节点总是选择低时延的路径进行数据的传输,从而使数据包能以较小的时延到达目的节点。
图4显示了数据包的到达率随着源节点发送数据时间间隔增大的变化,红色曲线为本发明所述的无人机自组网自适应路由方法的数据包到达率变化情况,蓝色曲线为现有的QGeo路由协议的数据包到达率变化情况,从图中可以看到,本发明的数据到达率明显高于QGeo算法,且与QGeo相比,到达率平均增加6%。当源节点发送数据的时间间隔为10m/s时,本发明的到达率仍可达到90%。这主要是因为在本发明中,Q学习中的学习率和折扣因子将随端到端时延和节点的位置变化情况,自适应地调节,使得节点能够快速地预测链路的状况。通过这种方式,节点总会选择更稳固的链路进行数据的传输,进而提高了数据的到达率。
图5显示了能耗EC随着源节点发送数据时间间隔增大的变化,红色曲线为本发明所述的无人机自组网自适应路由方法的能耗变化情况,蓝色曲线为现有的QGeo路由协议的能耗变化情况,从图中可以看到,相比QGeo路由,本发明中节点的平均能耗更小,使得网络的生命周期更长。相比QGeo,本发明的能耗平均降低28%,这主要是因为,本发明在Q学习的奖励函数中考虑了节点的电量。通过综合考虑节点的初始电量和剩余电量,选择电量消耗较小的节点进行数据传输,进而平衡了网络中每个节点电量消耗的问题。
本实例的实验结果说明了本发明所述的基于Q-learning的自适应路由较现有路由协议有更低的平均端到端时延、更低的能耗和更高的数据包到达率,适用于动态自组织网络,例如无人机自组网。
本发明所提供的无人机自组网自适应路由方法,在路由决策时综合考虑了数据的信道接入时延、排队等待时延和节点的电量,实现低时延、低能耗路由。此外,本发明通过自适应地调节Q-learning中的学习率和折扣因子,能够很好地预测链路不稳定问题,从而实现健壮的路由。
需要说明的是,上述实施例中介绍的各个步骤并非都是必须的,本领域技术人员可以根据实际需要进行适当的取舍、替换、修改等。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管上文参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (6)

1.一种无人机自组网自适应路由方法,其特征在于,包括:
以无人机自组网中的无人机为节点,所有节点以预定周期发送握手包;任一节点接收其邻居节点发送的握手包,获取并更新该邻居节点的节点信息;
该节点发送或转发数据包时,获取该数据包从该节点到目标节点的要求传输速度Vi,以及该数据包从该节点到该邻居节点的实际传输速度
Figure FDA0002653214890000011
以大于或等于该要求传输速度Vi的该实际传输速度
Figure FDA0002653214890000012
对应的邻居节点为候选节点;
根据该候选节点的节点信息,通过Q-learning算法获得该候选节点的Q值,以最大Q值对应的候选节点为下一跳的路由节点进行该数据包的路由;
其中,该Q值的更新式为
Figure FDA0002653214890000013
max Q(si,ai)s.t.
Figure FDA0002653214890000014
α为学习率,0≤α≤1,si表示该数据包处于节点i的状态,r(si,ai)为该节点i采取行动ai使该数据包由处于该节点i转换到处于该邻居节点j所获得的奖励值,γ为折扣因子,0≤γ≤1,
Figure FDA0002653214890000015
为下一个状态该邻居节点j采取一个行为aj所能获得的最大Q值;该折扣因子γ和该学习率α为:
Figure FDA0002653214890000016
α=1-e,Nt-1(i)和Nt(i)分别为该节点i在t-1和t时刻拥有邻居节点的个数,
Figure FDA0002653214890000017
Figure FDA0002653214890000018
为该节点i到该邻居节点j的端到端时延,μ和σ分别为所有该节点i到其邻居节点的端到端时延的均值和方差。
2.如权利要求1所述的自适应路由方法,其特征在于,该要求传输速度
Figure FDA0002653214890000019
其中,dis(i,D)为该节点i到该数据包路由的目标节点D的距离,deadlinei为该数据包从该节点i到该目标节点D的最大要求传输时间;该实际传输速度
Figure FDA00026532148900000110
其中,
Figure FDA00026532148900000111
为该数据包到达该邻居节点j时该邻居节点j到该目标节点D的预测距离。
3.如权利要求1所述的自适应路由方法,其特征在于,该奖励值r(si,ai)为:
当该邻居节点j为该目标节点D时,r(si,ai)=rmax
当该节点i的所有邻居节点j与该目标节点D的距离均大于该节点i与该目标节点D的距离,r(si,ai)=rmin
当存在该邻居节点j与该目标节点D的距离小于或等于该节点i与该目标节点D的距离,则
Figure FDA0002653214890000021
其中,w为该节点i到该邻居节点j的端到端时延的权重值,0≤w≤1,Eres为该邻居节点j的剩余电量,Einit为该邻居节点j的初始电量。
4.一种无人机自组网自适应路由系统,其特征在于,包括:
邻居节点更新模块,用于以无人机自组网中的无人机为节点,获取该节点的邻居节点的节点信息;其中所有该节点以预定周期发送握手包;任一节点接收其邻居节点发送的握手包,获取并更新该邻居节点的节点信息;
候选节点筛选模块,用于该节点从其所有邻居节点中筛选数据包路由候选节点;其中当该节点发送或转发数据包时,获取该数据包从该节点到目标节点的要求传输速度Vi,以及该数据包从该节点到该邻居节点的实际传输速度
Figure FDA0002653214890000022
以大于或等于该要求传输速度Vi的该实际传输速度
Figure FDA0002653214890000023
对应的邻居节点为该候选节点;
路由节点选择模块,用于根据该候选节点的节点信息,通过Q-learning算法获得该候选节点的Q值,以最大Q值对应的候选节点为下一跳的路由节点进行该数据包的路由;
其中,该Q值的更新式为
Figure FDA0002653214890000024
max Q(si,ai)s.t.
Figure FDA0002653214890000025
α为学习率,0≤α≤1,si表示该数据包处于节点i的状态,r(si,ai)为该节点i采取行动ai使该数据包由处于该节点i转换到处于该邻居节点j所获得的奖励值,γ为折扣因子,0≤γ≤1,
Figure FDA0002653214890000026
为下一个状态该邻居节点j采取一个行为aj所能获得的最大Q值;该折扣因子γ和该学习率α为:
Figure FDA0002653214890000031
α=1-e,Nt-1(i)和Nt(i)分别为该节点i在t-1和t时刻拥有邻居节点的个数,
Figure FDA0002653214890000032
Figure FDA0002653214890000033
为该节点i到该邻居节点j的端到端时延,μ和σ分别为所有该节点i到其邻居节点的端到端时延的均值和方差。
5.如权利要求4所述的自适应路由系统,其特征在于,该要求传输速度
Figure FDA0002653214890000034
其中,dis(i,D)为该节点i到该数据包路由的目标节点D的距离,deadlinei为该数据包从该节点i到该目标节点D的最大要求传输时间;该实际传输速度
Figure FDA0002653214890000035
其中,
Figure FDA0002653214890000036
为该数据包到达该邻居节点j时该邻居节点j到该目标节点D的预测距离。
6.如权利要求4所述的自适应路由系统,其特征在于,该奖励值r(si,ai)为:
当该邻居节点j为该目标节点D时,r(si,ai)=rmax
当该节点i的所有邻居节点j与该目标节点D的距离均大于该节点i与该目标节点D的距离,r(si,ai)=rmin
当存在该邻居节点j与该目标节点D的距离小于或等于该节点i与该目标节点D的距离,则
Figure FDA0002653214890000037
其中,w为该节点i到该邻居节点j的端到端时延的权重值,0≤w≤1,Eres为该邻居节点j的剩余电量,Einit为该邻居节点j的初始电量。
CN201910012976.3A 2019-01-07 2019-01-07 无人机自组网自适应路由方法和系统 Active CN109587751B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910012976.3A CN109587751B (zh) 2019-01-07 2019-01-07 无人机自组网自适应路由方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910012976.3A CN109587751B (zh) 2019-01-07 2019-01-07 无人机自组网自适应路由方法和系统

Publications (2)

Publication Number Publication Date
CN109587751A CN109587751A (zh) 2019-04-05
CN109587751B true CN109587751B (zh) 2020-12-22

Family

ID=65916212

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910012976.3A Active CN109587751B (zh) 2019-01-07 2019-01-07 无人机自组网自适应路由方法和系统

Country Status (1)

Country Link
CN (1) CN109587751B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110519020B (zh) * 2019-08-13 2020-09-11 中国科学院计算技术研究所 无人系统网络智能跨层数据传输方法及系统
CN111479306B (zh) * 2020-04-02 2023-08-04 中国科学院上海微系统与信息技术研究所 一种基于Q-learning的飞行自组网QoS路由方法
CN111542097B (zh) * 2020-04-19 2022-03-22 北京工业大学 一种基于Q-Learning的广播路由算法
CN116170816A (zh) * 2021-11-24 2023-05-26 南京航空航天大学 一种基于灰色感知的自适应无人机协同机会路由方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107333312A (zh) * 2017-08-01 2017-11-07 陕西师范大学 机会网络中的路由选择方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104135436B (zh) * 2014-08-20 2018-03-16 重庆邮电大学 一种车辆自组织网络路由选择方法
CN108040353A (zh) * 2017-12-18 2018-05-15 北京工业大学 一种q学习的无人机集群智能地理路由方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107333312A (zh) * 2017-08-01 2017-11-07 陕西师范大学 机会网络中的路由选择方法

Also Published As

Publication number Publication date
CN109587751A (zh) 2019-04-05

Similar Documents

Publication Publication Date Title
CN109587751B (zh) 无人机自组网自适应路由方法和系统
Ji et al. SDGR: An SDN-based geographic routing protocol for VANET
CN111132258B (zh) 一种基于虚拟势场法的无人机集群协同机会路由方法
Li et al. QGrid: Q-learning based routing protocol for vehicular ad hoc networks
CN108513330B (zh) 一种基于网络情境感知的路由协议分布式自适应切换方法
CN114499648B (zh) 基于多智能体协作的无人机集群网络智能多跳路由方法
CN114339936A (zh) 基于q学习的飞行器自组织网络优化链路状态路由机制
CN108462983B (zh) 基于改进蚁群aodv协议的多机器人通信组网方法
Yarinezhad et al. A new routing algorithm for vehicular ad-hoc networks based on glowworm swarm optimization algorithm
Lim et al. Q-learning based stepwise routing protocol for multi-UAV networks
CN111356199B (zh) 一种三维场景中车载自组织网络路由选择方法
KR20210143021A (ko) 강화학습 기반 uav 애드혹 네트워크 중계 시스템
CN117793844B (zh) 一种基于模糊逻辑的地理位置路由方法
Hussain et al. Performance evaluation of vertical handover in Internet of Vehicles
CN114401540A (zh) 一种基于q学习的多目标优化路由算法
Huang et al. Dynamic routing in flying ad-hoc networks using link duration based MPR selection
Waheed et al. Laod: Link aware on demand routing in flying ad-hoc networks
Li et al. Ad hoc network routing protocol based on location and neighbor sensing
CN107548120B (zh) 临空通信网络的路由方法和装置
CN108832995B (zh) 基于动态规划的无人机协同消息传输方法
Serhan et al. Energy efficient QoS routing and adaptive status update in WMSNS
Gazori et al. Sbgrp as an improved stable cds-based routing protocol in vehicular ad hoc networks
CN107124359B (zh) 基于802.11的感知传输质量保障链路稳定路由方法和车载自组织网络
Ji et al. Context-aware unified routing for VANETs based on virtual clustering
CN106850428B (zh) 基于802.11的感知链路质量的机会路由协议方法

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
GR01 Patent grant
GR01 Patent grant