CN113965943B - 基于双向Q-Learning优化AODV路由的方法 - Google Patents
基于双向Q-Learning优化AODV路由的方法 Download PDFInfo
- Publication number
- CN113965943B CN113965943B CN202111068193.0A CN202111068193A CN113965943B CN 113965943 B CN113965943 B CN 113965943B CN 202111068193 A CN202111068193 A CN 202111068193A CN 113965943 B CN113965943 B CN 113965943B
- Authority
- CN
- China
- Prior art keywords
- node
- hop
- value
- neighbor
- information
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000002457 bidirectional effect Effects 0.000 title claims abstract description 18
- 230000004083 survival effect Effects 0.000 claims abstract description 40
- 238000005457 optimization Methods 0.000 claims abstract description 5
- 230000005540 biological transmission Effects 0.000 claims description 12
- 241001123248 Arma Species 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 4
- 238000012790 confirmation Methods 0.000 claims description 4
- 238000005265 energy consumption Methods 0.000 claims description 4
- 230000003993 interaction Effects 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 claims description 4
- 238000009499 grossing Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 11
- 238000004364 calculation method Methods 0.000 description 6
- 230000002787 reinforcement Effects 0.000 description 4
- 201000004569 Blindness Diseases 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/04—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
- H04W40/10—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources based on available power or energy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/12—Communication route or path selection, e.g. power-based or shortest path routing based on transmission quality or channel quality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/20—Communication route or path selection, e.g. power-based or shortest path routing based on geographic position or location
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- 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
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种基于双向Q‑Learning优化AODV路由协议的方法,包括修改Hello包帧格式,在Hello包中添加用于计算单跳链路生存时间的位置和速度信息,同时添加节点自身的网络负载信息与剩余能量信息;以路由协议Hello包为载体,将位置和速度信息、网络负载信息和剩余能量信息作为QoS指标,在源节点和目的节点之间通过双向Q‑Learning算法更新经过下一跳节点到目的节点的Q值和经过上一跳节点到源节点的Q值,完成优化。本发明解决传统AODV协议在寻路过程中只考虑最短跳数,无法获得具体场景下的最佳路由的问题。
Description
技术领域
本发明涉及优化AODV路由的方法,具体涉及一种基于双向Q-Learning优化AODV路由的方法。
背景技术
随着新一代信息通信技术的快速发展,数字化、网络化、智能化日益成为未来制造业发展的主要趋势。船厂分段车间内,由于接入设备数量众多、设备终端动态性强、网络环境变化大,对于数字化、网络化、智能化技术的应用提出了特殊要求。在船厂分段车间内,由众多设备终端所构成的网络,具有动态的网络拓扑、可扩展性强等特点,可以将其看作为移动自组织网络中的一种。由于该网络存在动态性强的特点,如果建立的路由不能适应网络的动态性,很容易导致链路中断,进而产生丢包,影响到船舶建设的进程。其次,在船厂分段车间内,有些设备终端在船舶建设过程中存在充能不便的问题,如何平衡设备终端的能量消耗、延长其在网络中的生存时间,也是一个重要问题。
AODV(Adhoc On-Demand Distance Vector Routing)路由协议是无线自组织网的经典协议,其被动路由协议,网络中的节点不主动维护网络的路由信息,当节点有业务传输需求的时候,源节点如果没有在自身的路由表中找到关于目的节点的有效路由,将会发起路由寻路过程。源节点广播路由请求RREQ包,中间节点转发RREQ包,直至到达目的节点。目的节点随后将路由确认信息沿原路径反向传递给源节点,完成路由寻路过程。AODV协议因为按需寻路,控制开销少,并且链路发生中断时会及时发送路由错误包RERR进行路由修复,对复杂网络环境的适应性更强,因此在无线自组织网络中得到了广泛应用。但同时,AODV协议在寻路过程中仅仅考虑了最短跳数问题,缺乏对网络中其他指标(如节点动态性、网络负载等)的收集判断,因此未必能够得到最佳路由。
强化学习(Reinforcement Learning,RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标。Q-Learning算法属于强化学习的算法之一,其在网络及路由领域已经得到了广泛应用,被证明为优化路由的有效方法。Q-Learning通过将网络中的信息映射为Q值并进行迭代学习来寻找最佳路由。如何使Q-learning算法更好地适应网络特性以及改善Q-Learning算法本身的局部最优问题,加快迭代速度等,对路由协议的性能有很大影响。
发明内容
本发明的目的在于提供一种基于双向Q-Learning优化AODV路由的方法,以解决传统AODV协议在寻路过程中只考虑最短跳数,无法获得最佳路由的问题。
实现本发明目的的技术方案为:一种基于双向Q-Learning优化AODV路由的方法,包括以下步骤:
修改Hello包帧格式,在Hello包中添加用于计算单跳链路生存时间的位置和速度信息,同时添加节点自身的网络负载信息与剩余能量信息;
以路由协议Hello包为载体,将位置和速度信息、网络负载信息和剩余能量信息作为QoS指标,在源节点和目的节点之间通过双向Q-Learning算法更新经过下一跳节点到目的节点的Q值和经过上一跳节点到源节点的Q值,完成优化。
进一步的,在源节点和目的节点之间通过双向Q-Learning算法更新经过下一跳节点到目的节点的Q值和经过上一跳节点到源节点的Q值,完成优化,具体包括以下步骤:
步骤1,启动移动自组织网络中各个节点设备,源节点产生业务需求,为起始节点;目的节点为终止节点;
步骤2,当前节点基于Hello包中位置和速度信息、网络负载信息和剩余能量信息,获取QoS指标加权因子;若该节点为起始节点,执行步骤4;
步骤3,使用上一跳节点到起始节点的最大Q值更新本节点到起始节点的Q值;
步骤4,基于QoS指标加权因子,当前节点根据Hi-ε-greedy算法,分别以概率ε1、ε2、1-ε1-ε2选择Q值最大节点、次优节点、其它节点作为下一跳节点;
步骤5,使用下一跳节点缓存的到终止节点的Q值的最大值更新本节点到终止的Q值,该节点将RREQ包传递给下一跳节点;
步骤6,重复步骤2-5直至RREQ包到达终止节点,使用上一跳节点到起始节点的最大Q值更新本节点到起始节点的Q值;
步骤7,另目的节点作为起始节点,源节点为终止节点,返回路由确认包RREP,执行步骤2-6,路由建立完成;
步骤8,从源节点开始,选取Q值最大的节点作为下一跳节点,获取最优传输路径,完成数据传输。
进一步的,当前节点基于Hello包中位置和速度信息、网络负载信息和剩余能量信息,获取QoS指标加权因子,具体包括以下步骤:
步骤2-1,当前节点i获取Hello包中其邻居节点j∈Ni的位置信息(xj,yj,zj)和速度信息(vxj,vyj,vzj),Ni为节点i的邻居节点集合,节点i并根据自身的位置信息(xi,yi,zi)以及速度信息(vxi,vyi,vzi)计算当前周期节点i与邻居节点j的链路生存因子SFij(t);
步骤2-2,通过统计发送队列的长度,来表征本节点的网络负载信息,通过节点i的两跳邻居集的平均网络负载对当前节点的网络负载进行归一化,得到当前周期节点i的负载因子LFi(t);
步骤2-3,基于Hello包中剩余能量信息,获取当前周期节点i的能量因子EFi(t);
步骤2-4,对链路生存因子SFij(t)、负载因子LFi(t)和能量因子EFi(t)加权得到QoS指标加权因子,
QFi(t)=k1LFi(t)+k2SFi(t)+(1-k1-k2)EFi(t)
其中,k1和k2是参数因子,分别为发送和接收数据包的比特数。
进一步的,所述步骤2-1具体包括:
步骤2-1-1,假设所有的接入设备在同一高度,节点i根据自身的位置信息(xi,yi,zi)、速度信息(vxi,vyi,vzi)和求解方程确定节点i与邻居节点j的链路生存时间Tij,方程为:
(xi+vxiTij-xj-vyiTij)2+(yi+vyiTij-yj-vyjTij)2=r2
其中,r为节点i与邻居节点j两节点间的通信距离;
步骤2-1-2,节点通过Hello包的交互,获得两跳邻居集的链路生存时间,并计算两跳邻居集内的平均链路生存时间Tavg为:
其中,∑Tone-hop为节点i与一跳邻居节点j的链路生存时间之和,∑Ttwo-hop为节点i的一跳邻居节点j与两跳邻居节点的链路生存时间之和。N、为点i与一跳邻居节点的链路数,m为节点i的一跳邻居与两跳邻居节点间的链路数;
步骤2-1-3,采用自回归平滑机制,根据上一周期的链路生存因子SFij(t-δ)预测当前周期节点i与邻居节点j的的链路生存因子SFij(t)为:
其中α1为ARMA参数,δ为一个统计周期的时间差。
进一步的,所述步骤2-2具体包括:
步骤2-2-1,节点统计Hello包中发送队列的长度,来表征本节点的网络负载信息;确定两跳邻居集内的平均负载程度Lavg为:
其中,∑Lone-hop和∑Ltwo-hop分别为节点i的一跳邻居节点和两跳邻居节点的排队队列长度之和;
步骤2-2-2,使用节点i的两跳邻居集的平均网络负载Lavg对当前节点i的网络负载进行归一化,得到当前负载因子LFi(t)为:
其中,α2为ARMA参数,Li为节点i的排队队列长度,Fi(t-δ)为上一周期负载因子。
进一步的,所述步骤2-3具体包括:
步骤2-3-1,假设传输功率与节点间距离的二次方呈正比关系,定义节点能量消耗模型为:
其中,Eelec为发射电路和接收电路消耗的能量,L表示两节点之间的距离,μ是常数,ESi为节点i发送数据包消耗的能量,ERi为节点i接收数据包消耗的能量;
步骤2-3-2,获取节点i的剩余能量Ei为:
Ei=E-ESi-ERi
其中,E为节点的初始能量;
步骤2-3-3,获取节点i的两跳邻居集的平均剩余能量Eavg为:
其中,∑Eone-hop和∑Etwo-hop分别为节点i的一跳邻居节点和两跳邻居节点的剩余能量之和;
步骤2-3-4,使用节点i的两跳邻居集的平均剩余能量Eavg对当前节点的剩余能量Ei进行归一化,得到当前周期节点i的能量因子EFi(t)为:
其中,α3为ARMA参数,δ为一个统计周期的时间差,EFi(t-δ)为上一个周期节点的能量因子。
进一步的,所述概率ε1为1-ε,ε为设定的概率。
进一步的,所述概率ε2为n为当前节点的邻居节点数。
进一步的,步骤5中下一跳节点缓存的到终止节点的Q值的最大值更新本节点到终止的Q值,Q值更新公式为:
其中,θ为学习率,N(b)为节点b的邻居节点集合,为t+1时刻节点i通过下一跳节点b到终止节点d的Q值,/>为节点b在t时刻缓存的通过邻居节点到终止节点的Q值的最大值,QFb(t)为节点b在t时刻的QoS指标加权因子,R为节点i选择节点b为下一跳节点后获得的奖励,定义如下:
进一步的,,使用上一跳节点到起始节点的最大Q值更新本节点到起始节点的Q值,Q值更新公式为:
其中N(k)为节点k的邻居节点集合,节点e∈N(k),为t+1时刻节点i通过上一跳节点k到起始点s的Q值,/>为节点k在t时刻以起始节点s为源节点的邻居表的Q值的最大值,QFk(t)为节点k在t时刻的QoS指标加权因子,R为节点e作为节点k的上一跳节点的奖励,定义如下:
本发明与现有技术相比,其显著效果为:
(1)通过特定的添加修改Hello包帧格式,在Hello包中添加位置与速度信息用于计算单跳链路的生存时间,同时添加节点自身的网络负载信息与剩余能量信息,通过收集两跳内邻居节点的状态信息,以此对本节点的QoS权值进行归一化,用作双向Q-Learning学习公式的QoS折扣因子,提升折扣因子计算的准确性;
(2)通过特定的定义引入次优集概念,以不同概率选择最大节点、次优节点、其它节点作为下一跳节点,减小路由随机探索的盲目性;
(3)通过特定的方法,采用双向学习机制来计算经过下一跳节点到目的节点的Q值和经过上一跳节点到源节点的Q值;
(4)以路由协议Hello为载体,对Q-Learning算法在路由协议中的应用进行改进,加快学习算法迭代收敛的速度,提升计算的准确性;
(5)改进传统算法在平衡开发(Exploitation)和探索(Exploration)时使用的ε-greedy算法,提出Hi-ε-greedy(Hierarchicalε-greedy)算法,引入次优集概念,减少随机探索的盲目性。
附图说明
图1为本发明实施例方法的流程图。
图2为本发明中移动自组织网络示意图。
具体实施方式
下面将结合附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图对本发明的具体实施方式进行详细的说明。
以下描述涉及附图时,除非另有表示,不同附图中的相同数字符号表示相同或相似的要素,所使用的所有技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。应该注意,此处所描述的具体实施例仅仅是本申请中的一部分实施例,而不是全部的实施例,仅用于解释本申请,而非对本申请的限定。基于本申请中的实施例,本领域普通技术人员在没有做出创作性劳动前提下所获得的所有其他实施例,都属于本申请的保护范畴。
下面以具体实例对本发明的技术方案以及本申请的技术方法如何解决上述技术问题进行详细说明。下面的这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不在赘述。下面对本发明的实施例进行描述。
本发明针对船厂分段车间这一具体场景引入QoS指标,以解决传统AODV协议在寻路过程中只考虑最短跳数,无法获得具体场景下的最佳路由的问题。在移动自组织网络场景下:
如表1所示,修改Hello包帧格式,在Hello包中添加位置与速度信息用于计算单跳链路的生存时间,同时添加节点自身的网络负载信息与剩余能量信息;将链路生存时间、排队时延和节点剩余能量QoS信息用作双向Q-Learning学习公式的QoS折扣因子,使得Q值大小反应网络状况。网络中每个节点通过Hello包信息的传递交互,每个节点获得两跳邻居集的QoS信息,提升折扣因子计算的准确性。两跳邻居集包含当前节点的所有一跳邻居节点和二跳邻居节点,一跳邻居节点为当前节点的邻居节点,二跳邻居节点为当前节点一跳邻居节点的邻居节点;通过在ε-greedy算法中引入次优集概念,减少随机探索的盲目性。
表1 Hello包帧格式表
节点i通过邻居广播的Hello消息获得邻居节点j∈Ni的位置信息(xj,yj,zj)和速度(vxj,vyj,vzj),并根据自身的位置信息(xi,yi,zi)以及速度信息(vxi,vyi,vzi)计算链路生存时间Tij。计算公式如下(为简化计算,假设所有的接入设备在同一高度):
(xi+vxiTij-xj-vyiTij)2+(yi+vyiTij-yj-vyjTij)2=r2
其中r为两节点间的通信距离;
节点通过Hello包的交互,获得两跳邻居集的链路生存时间,并计算两跳邻居集内的平均链路生存时间。计算公式如下:
其中∑Tone-hop为节点i与一跳邻居节点的链路生存时间之和,∑Ttwo-hop为节点i的一跳邻居与两跳邻居的链路生存时间之和;n和m节分别为点i与一跳邻居的链路数,节点i的一跳邻居与两跳邻居间的链路数。
使用两跳邻居集的平均链路生存时间对当前节点对的链路生存时间进行归一化,得到链路生存因子,使用自回归平滑机制,根据上一周期的链路生存因子SFij(t-δ)预测当前周期的链路生存因子SFij(t):
其中α1为ARMA参数,δ为一个统计周期的时间差。
节点通过统计发送队列的长度,来表征本节点的网络负载状况。并计算两跳邻居集内的平均负载程度。计算公式如下:
其中∑Lone-hop和∑Ltwo-hop分别为节点i的一跳邻居和两跳邻居的排队队列长度之和,n和m分别为节点i的一跳邻居节点数和两跳邻居节点数;
通过统计发送队列的长度,来表征本节点的网络负载状况,两跳邻居集的平均网络负载对当前节点的网络负载进行归一化,得到负载因子,使用节点i的两跳邻居集的平均网络负载对当前节点的网络负载进行归一化,得到当前负载因子:
其中α2为ARMA参数,δ为一个统计周期的时间差。Li为节点i的排队队列长度,Fi(t-δ)为上一周期负载因子。
考虑到有些设备终端续航时间短,任务执行过程中充能不便的问题,引入节点能量分布因子,延长网络生存时间。设备终端之间使用无线的方式进行通信。假设传输功率与节点间距离的二次方呈正比关系,定义节点能量消耗模型如下:
式中Eelec为发射电路和接收电路消耗的能量,L表示两节点之间的距离,k1和k2为参数因子,分别为发送和接收数据包的比特数,μ是常数。
节点i的剩余能量Ei表示为:
Ei=E-ESi-ERi
其中E为节点的初始能量;
获取节点i的两跳邻居集的平均剩余能量Eavg为:
其中,∑Eone-hop和∑Etwo-hop分别为节点i的一跳邻居节点和两跳邻居节点的剩余能量之和;
使用节点i的两跳邻居集的平均剩余能量对当前节点的剩余能量进行归一化,得到当前周期节点的能量因子EFi(t):
其中α3为ARMA参数,δ为一个统计周期的时间差,EFi(t-δ)为上一个周期节点的能量因子。
综合考虑以上链路生存因子、负载因子、能量因子,加权得到QoS指标加权因子:
QFi(t)=k1LFi(t)+k2SFi(t)+(1-k1-k2)EFi(t)
如图2所示为本发明在移动自组织网络应用场景下的实时例的一种示意图。自组织网络中存在多个节点,每个节点之间通过修改格式后的Hello包传递QoS信息。
结合图1,为本发明一个实施例提供的使系统时延确定性最大化的流程图,本实例提供一种基于双向Q-Learning优化AODV路由的方法包括以下几个步骤:
步骤S101:移动自组织网络中各个节点设备的启动阶段;
步骤S102:源节点s会通过节点i、a、m发来的Hello包里的位置和速度信息,结合上述QoS指标加权因子计算方法计算各节点对(s-i,s-a,s-m)的链路生存时间,同时节点s的一跳邻居节点(节点i、a、m)计算的自身的节点对(如a-b)链路生存时间也会通过Hello包发送给节点s,使得节点s获得两跳邻居集的链路生存时间。同样的方式,节点s获得两跳邻居集的排队时延、剩余能量。随后节点s使用收集到的两跳邻居集的QoS信息,对自身的QoS信息进行归一化,获取当前QoS指标加权因子;
步骤S103:节点s产生业务传输需求后,作为源节点广播RREQ包。以节点a为例,当RREQ包到达节点a时,节点a会根据关于目的节点d的Q表和Hi-ε-greedy算法进行下一跳节点的选择,节点a关于节点d的Q表如表2。
表2节点a关于节点d的Q表
节点a会以概率ε选择Q值最大的节点(节点b)作为下一跳节点,以的概率选择次优集中的节点(节点c、m)作为下一跳节点,以/>的概率选择其他节点作为下一跳节点(节点i);
步骤S104:假定节点a选择节点b作为下一跳节点,节点a会根据节点b中缓存的到目的节点d的最大Q值(如表3所示)对自身的Q值使用Q-Learning公式进行计算更新,并将RREQ包转发给节点b。更新公式如下:
其中θ为学习率,N(b)为节点b的邻居节点集合,为t+1时刻节点a通过下一跳节点b到目的节点d的Q值。/>为节点b在t时刻以节点d为目的节点的邻居表的Q值的最大值,QFb(t)为节点b在t时刻的QoS指标加权因子。R为节点a选择节点b为下一跳节点后获得的奖励,定义如下:
表3节点b关于节点d的Q表
步骤S105:当节点b收到节点a发来的RREQ包后,从RREQ包中获知源节点s和目的节点d,以及上一跳节点a缓存的关于源节点s的最大Q值(如表4所示),并以此使用Q-Learning公式更新节点b关于源节点s(如表5所示)的Q值:
其中,N(a)为节点a的邻居节点集合,节点e∈N(a),为t+1时刻节点b通过上一跳节点a到源节点s的Q值,/>为节点a在t时刻以节点s为源节点的邻居表的Q值的最大值,R为节点e作为节点a的上一跳节点的奖励,定义如下:
表4节点a关于源节点s的Q表
下一跳节点 | Q值 |
i | 0.6 |
s | 0.8 |
m | 0.5 |
b | 0.1 |
表5节点b关于源节点s的Q表
下一跳节点 | Q值 |
n | 0.4 |
a | 0.8 |
f | 0.6 |
c | 0.1 |
e | 0.1 |
节点b查询缓存的Q表中以节点d为目的节点的Q值最大的节点(节点c),根据节点c中缓存的到目的节点d的最大Q值对自身的Q值使用Q-Learning公式进行计算更新,随后将RREQ包转发给节点c,RREQ包重复进行此过程,直到到达目的节点,RREQ转发结束;
步骤S106:RREQ包到达目的节点d以后,目的节点计算奖励值,代入计算Q值,并返回路由确认包RREP,RREP包在返回至源节点的路径上执行与RREQ包相同的Q值迭代策略;
步骤S107:RREP包到达源节点后,路由建立完成;
步骤S108:数据包将选择Q值最大的节点作为下一跳节点,直到到达目的节点,完成数据传输。
虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包含更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (9)
1.一种基于双向Q-Learning优化AODV路由的方法,其特征在于,包括以下步骤:
修改Hello包帧格式,在Hello包中添加用于计算单跳链路生存时间的位置和速度信息,同时添加节点自身的网络负载信息与剩余能量信息;
以路由协议Hello包为载体,将位置和速度信息、网络负载信息和剩余能量信息作为QoS指标,在源节点和目的节点之间通过双向Q-Learning算法更新经过下一跳节点到目的节点的Q值和经过上一跳节点到源节点的Q值,完成优化;
在源节点和目的节点之间通过双向Q-Learning算法更新经过下一跳节点到目的节点的Q值和经过上一跳节点到源节点的Q值,完成优化,具体包括以下步骤:
步骤1,启动移动自组织网络中各个节点设备,源节点产生业务需求,为起始节点;目的节点为终止节点;
步骤2,当前节点基于Hello包中位置和速度信息、网络负载信息和剩余能量信息,获取QoS指标加权因子;若该节点为起始节点,执行步骤4;
步骤3,使用上一跳节点到起始节点的最大Q值更新本节点到起始节点的Q值;
步骤4,基于QoS指标加权因子,当前节点根据Hi-ε-greedy算法,分别以概率ε1、ε2、1-ε1-ε2选择Q值最大节点、次优节点、其它节点作为下一跳节点;
步骤5,使用下一跳节点缓存的到终止节点的Q值的最大值更新本节点到终止的Q值,该节点将RREQ包传递给下一跳节点;
步骤6,重复步骤2-5直至RREQ包到达终止节点,使用上一跳节点到起始节点的最大Q值更新本节点到起始节点的Q值;
步骤7,另目的节点作为起始节点,源节点为终止节点,返回路由确认包RREP,执行步骤2-6,路由建立完成;
步骤8,从源节点开始,选取Q值最大的节点作为下一跳节点,获取最优传输路径,完成数据传输。
2.根据权利要求1所述的一种基于双向Q-Learning优化AODV路由的方法,其特征在于,当前节点基于Hello包中位置和速度信息、网络负载信息和剩余能量信息,获取QoS指标加权因子,具体包括以下步骤:
步骤2-1,当前节点i获取Hello包中其邻居节点j∈Ni的位置信息(xj,yj,zj)和速度信息(vxj,vyj,vzj),Ni为节点i的邻居节点集合,节点i并根据自身的位置信息(xi,yi,zi)以及速度信息(vxi,vyi,vzi)计算当前周期节点i与邻居节点j的链路生存因子SFij(t);
步骤2-2,通过统计发送队列的长度,来表征本节点的网络负载信息,通过节点i的两跳邻居集的平均网络负载对当前节点的网络负载进行归一化,得到当前周期节点i的负载因子LFi(t);
步骤2-3,基于Hello包中剩余能量信息,获取当前周期节点i的能量因子EFi(t);
步骤2-4,对链路生存因子SFij(t)、负载因子LFi(t)和能量因子EFi(t)加权得到QoS指标加权因子,
QFi(t)=k1LFi(t)+k2SFi(t)+(1-k1-k2)EFi(t)
其中,k1和k2是参数因子,分别为发送和接收数据包的比特数。
3.根据权利要求2所述的一种基于双向Q-Learning优化AODV路由的方法,其特征在于,所述步骤2-1具体包括:
步骤2-1-1,假设所有的接入设备在同一高度,节点i根据自身的位置信息(xi,yi,zi)、速度信息(vxi,vyi,vzi)和求解方程确定节点i与邻居节点j的链路生存时间Tij,方程为:
(xi+vxiTij-xj-vyiTij)2+(yi+vyiTij-yj-vyjTij)2=r2
其中,r为节点i与邻居节点j两节点间的通信距离;
步骤2-1-2,节点通过Hello包的交互,获得两跳邻居集的链路生存时间,并计算两跳邻居集内的平均链路生存时间Tavg为:
其中,∑Tone-hop为节点i与一跳邻居节点j的链路生存时间之和,∑Ttwo-hop为节点i的一跳邻居节点j与两跳邻居节点的链路生存时间之和,n为点i与一跳邻居节点的链路数,m为节点i的一跳邻居与两跳邻居节点间的链路数;
步骤2-1-3,采用自回归平滑机制,根据上一周期的链路生存因子SFij(t-δ)预测当前周期节点i与邻居节点j的的链路生存因子SFij(t)为:
其中α1为ARMA参数,δ为一个统计周期的时间差。
4.根据权利要求3所述的一种基于双向Q-Learning优化AODV路由的方法,其特征在于,所述步骤2-2具体包括:
步骤2-2-1,节点统计Hello包中发送队列的长度,来表征本节点的网络负载信息;确定两跳邻居集内的平均负载程度Lavg为:
其中,∑Lone-hop和∑Ltwo-hop分别为节点i的一跳邻居节点和两跳邻居节点的排队队列长度之和;
步骤2-2-2,使用节点i的两跳邻居集的平均网络负载Lavg对当前节点i的网络负载进行归一化,得到当前负载因子LFi(t)为:
其中,α2为ARMA参数,Li为节点i的排队队列长度,LFi(t-δ)为上一周期负载因子。
5.根据权利要求3所述的一种基于双向Q-Learning优化AODV路由的方法,其特征在于,所述步骤2-3具体包括:
步骤2-3-1,假设传输功率与节点间距离的二次方呈正比关系,定义节点能量消耗模型为:
其中,Eelec为发射电路和接收电路消耗的能量,L表示两节点之间的距离,μ是常数,ESi为节点i发送数据包消耗的能量,ERi为节点i接收数据包消耗的能量;
步骤2-3-2,获取节点i的剩余能量Ei为:
Ei=E-ESi-ERi
其中,E为节点的初始能量;
步骤2-3-3,获取节点i的两跳邻居集的平均剩余能量Eavg为:
其中,∑Eone-hop和ΣEtwo-hop分别为节点i的一跳邻居节点和两跳邻居节点的剩余能量之和;
步骤2-3-4,使用节点i的两跳邻居集的平均剩余能量Eavg对当前节点的剩余能量Ei进行归一化,得到当前周期节点i的能量因子EFi(t)为:
其中,α3为ARMA参数,δ为一个统计周期的时间差,EFi(t-δ)为上一个周期节点的能量因子。
6.根据权利要求1所述的一种基于双向Q-Learning优化AODV路由的方法,其特征在于,所述概率ε1为1-ε,ε为设定的概率。
7.根据权利要求6所述的一种基于双向Q-Learning优化AODV路由的方法,其特征在于,所述概率ε2为n为当前节点的邻居节点数。
8.根据权利要求1所述的一种基于双向Q-Learning优化AODV路由的方法,其特征在于,步骤5中下一跳节点缓存的到终止节点的Q值的最大值更新本节点到终止的Q值,Q值更新公式为:
其中,θ为学习率,N(b)为节点b的邻居节点集合,为t+1时刻节点i通过下一跳节点b到终止节点d的Q值,/>为节点b在t时刻缓存的通过邻居节点到终止节点的Q值的最大值,QFb(t)为节点b在t时刻的QoS指标加权因子,R为节点i选择节点b为下一跳节点后获得的奖励,定义如下:
9.根据权利要求1所述的一种基于双向Q-Learning优化AODV路由的方法,其特征在于,使用上一跳节点到起始节点的最大Q值更新本节点到起始节点的Q值,Q值更新公式为:
其中N(k)为节点k的邻居节点集合,节点e∈N(k),为t+1时刻节点i通过上一跳节点k到起始点s的Q值,/>为节点k在t时刻以起始节点s为源节点的邻居表的Q值的最大值,QFk(t)为节点k在t时刻的QoS指标加权因子,R为节点e作为节点k的上一跳节点的奖励,定义如下:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111068193.0A CN113965943B (zh) | 2021-09-13 | 2021-09-13 | 基于双向Q-Learning优化AODV路由的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111068193.0A CN113965943B (zh) | 2021-09-13 | 2021-09-13 | 基于双向Q-Learning优化AODV路由的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113965943A CN113965943A (zh) | 2022-01-21 |
CN113965943B true CN113965943B (zh) | 2024-05-17 |
Family
ID=79461725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111068193.0A Active CN113965943B (zh) | 2021-09-13 | 2021-09-13 | 基于双向Q-Learning优化AODV路由的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113965943B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115103421B (zh) * | 2022-06-17 | 2024-06-04 | 电子科技大学 | 船舶自识别系统中基于aodv路由协议的消息中继方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111614559A (zh) * | 2020-05-15 | 2020-09-01 | 上海交通大学 | 实现全局优化aodv路由的方法、系统及介质 |
CN111741448A (zh) * | 2020-06-21 | 2020-10-02 | 天津理工大学 | 一种基于边缘计算策略的分簇aodv路由方法 |
CN112804726A (zh) * | 2021-01-06 | 2021-05-14 | 南京理工大学 | 一种基于地理位置的多智能体强化学习路由算法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10136250B2 (en) * | 2015-09-02 | 2018-11-20 | Estimote Polska Sp. Z O. O. | System and method for lower power data routing |
US10142909B2 (en) * | 2015-10-13 | 2018-11-27 | The Board Of Trustees Of The University Of Alabama | Artificial intelligence-augmented, ripple-diamond-chain shaped rateless routing in wireless mesh networks with multi-beam directional antennas |
-
2021
- 2021-09-13 CN CN202111068193.0A patent/CN113965943B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111614559A (zh) * | 2020-05-15 | 2020-09-01 | 上海交通大学 | 实现全局优化aodv路由的方法、系统及介质 |
CN111741448A (zh) * | 2020-06-21 | 2020-10-02 | 天津理工大学 | 一种基于边缘计算策略的分簇aodv路由方法 |
CN112804726A (zh) * | 2021-01-06 | 2021-05-14 | 南京理工大学 | 一种基于地理位置的多智能体强化学习路由算法 |
Non-Patent Citations (1)
Title |
---|
"移动自组织网络Q学习和改进蚁群QoS路由算法";高良城;《吉林大学学报(理学版)》;参见正文第1-2节 * |
Also Published As
Publication number | Publication date |
---|---|
CN113965943A (zh) | 2022-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101945432B (zh) | 一种用于无线mesh网络的多速率机会路由方法 | |
CN104168620B (zh) | 无线多跳回传网络中的路由建立方法 | |
Donta et al. | Congestion-aware data acquisition with q-learning for wireless sensor networks | |
CN110167097B (zh) | 基于加权度量转发和路径规划的移动机器人中继路由方法 | |
CN108462983B (zh) | 基于改进蚁群aodv协议的多机器人通信组网方法 | |
CN104410997A (zh) | 一种用于无线传感器网络的层次型拓扑结构构建方法 | |
CN110932969B (zh) | 一种智能电网高级量测系统ami网络抗干扰攻击路由算法 | |
CN113965943B (zh) | 基于双向Q-Learning优化AODV路由的方法 | |
Lim et al. | Q-learning based stepwise routing protocol for multi-UAV networks | |
CN106686680B (zh) | 一种用于车联网的路由优化系统及方法 | |
CN113660710B (zh) | 一种基于强化学习的移动自组织网络路由方法 | |
Yin et al. | Qebr: Q-learning based routing protocol for energy balance in wireless mesh networks | |
CN105025545A (zh) | 基于竞争转发的适用于无线网络的路由方法 | |
CN109803342A (zh) | 一种面向能量均衡高可靠传输的无人机自组织网络路由方法 | |
CN111970731B (zh) | 一种基于节点信誉的Spray and Wait移动机会网络路由方法 | |
Feyzi et al. | Application of fuzzy logic for selecting the route in AODV routing protocol for vehicular ad hoc networks | |
CN111160513B (zh) | 一种电力配电网的能量优化方法 | |
CN111565153B (zh) | 基于Q-learning算法和OLSR路由机制维护路由表的方法及系统 | |
Aitha et al. | A strategy to reduce the control packet load of aodv using weighted rough set model for manet | |
CN108307411B (zh) | 基于生物启发的移动自组织网络自适应网关选择方法 | |
Chetret et al. | Reinforcement learning and CMAC-based adaptive routing for manets | |
Hao et al. | Design of opportunistic routing based on Markov decision process | |
Bokhari et al. | AMIRA: interference-aware routing using ant colony optimization in wireless mesh networks | |
Pattnaik et al. | Optimal shortest path selection by MSFO-SCNN for dynamic ring routing protocol in WSN | |
Prema et al. | Effective Routing Using Multi-Objective Levy flight-Artificial Rabbit Optimization Algorithm for Wireless Mesh Networks. |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 222061 No.18, Shenghu Road, Lianyungang City, Jiangsu Province Applicant after: The 716th Research Institute of China Shipbuilding Corp. Address before: 222061 No.18, Shenghu Road, Lianyungang City, Jiangsu Province Applicant before: 716TH RESEARCH INSTITUTE OF CHINA SHIPBUILDING INDUSTRY Corp. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |