欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 一种基于无线紫外光通信的蜂群无人机编队分簇路由方法独创技术21236字

一种基于无线紫外光通信的蜂群无人机编队分簇路由方法

2021-03-04 21:42:19

一种基于无线紫外光通信的蜂群无人机编队分簇路由方法

  技术领域

  本发明属于光电信息技术领域,具体涉及一种基于无线紫外光通信的蜂群无人机编队分簇路由方法。

  背景技术

  近年来,无人机相关的新兴产业迎来了一个高速发展时期,不仅在情报侦察、军事打击、信息对抗等军用领域大显身手,在航拍、航测、电力线巡逻、森林防火、海洋监测、农业植保等民用领域的应用也日益广泛。由于单个无人机计算、探测和作业能力有限,使用多无人机协同编队飞行其相对单无人机在复杂环境适应性、载荷量、探测视野、多任务执行等方面呈现出巨大优势,能充分提高无人机执行任务的能力。

  无人机通信网络具有自组织特点,在实际飞行中的强电磁干扰、复杂大气环境和无线电静默等情况会破坏编队通信网络的完整性。无线紫外光通信具有抗电磁干扰能力强、背景噪声小、低窃听率、低位辨率、全天候非直视通信、低功耗、易于机载等特点,将无线紫外光通信技术应用于无人机通信网络,能够为无人机编队在复杂环境中提供机间可靠隐秘通信。

  移动Ad Hoc网络具有无中心、多跳传输、抗毁性强、可快速展开的特点,是集群无人机网络首选的通信模式。在无人机集群自组网中,路由协议的作用是为任意有通信需求的无人机节点建立有效的通信路径。但随着无人机集群规模的扩大,最初的平面结构路由算法会占用本来就少的带宽资源,造成多余的路由开销,降低集群作战的效能。在无人机集群组网中,节点的高速移动会造成网络拓扑结构更新频繁,使网络管理变得更加复杂。分簇能够增大网络容量,实现空间资源的复用,是优化网络管理的有效手段之一。

  发明内容

  本发明的目的是提供一种基于无线紫外光通信的蜂群无人机编队分簇路由方法,可有效避免较小ID的节点负载过重而较早死亡的情况,有效延长网络生命周期。

  本发明所采用的技术方案是,一种基于无线紫外光通信的蜂群无人机编队分簇路由方法,具体按照以下步骤实施:

  步骤1,簇构成阶段,利用改进的最小ID算法对无人机网络进行分簇;

  步骤2,簇的维护;

  步骤3,路由算法,具体为:

  步骤3.1,利用蚁群算法进行簇内路由发现;

  步骤3.2,釆用洪泛方式进行簇间路由发现。

  本发明的特点还在于,

  步骤1中,具体为:

  步骤1.1,初始化无人机网络,为每个无人机节点分配唯一的ID号,应用最小ID算法为网络分簇,选出簇首;

  步骤1.2,各个无人机节点通过搭载紫外LED阵列周期性地广播HELLO消息来获取邻居节点的信息,消息中包括节点的ID号、位置、速度、节点剩余能量以及节点权值,节点权值Wi如公式(1)所示,无人机节点接收到邻居发现消息后,提取相关信息,建立邻节点信息表;

  

  其中,α1、α2、α3为权值系数,Ei为无人机节点i的能量,Di为无人机节点i的节点度;

  为无人机节点i的逻辑通信链路路径损耗均值,如式(2)所示;

  

  L为紫外光非直视通信的路径损耗,如式(3)所示;

  L=ξrα(3);

  r为通信距离,ξ为路径损耗因子,α为路径损耗指数;

  步骤1.3,各个无人机节点将自己的权值Wi发送给自己的簇首,簇首收到本群所有的Wi值后,将这些值按照递减的顺序重新进行排序,并重新分配ID号,把最小的ID号分配给具有最大Wi值的节点,最大ID号分配给具有最小Wi值的节点;若多个无人机节点的Wi值相同,则簇首将ID号随机分给一个节点,然后依次发送新的ID号给其成员节点;

  步骤1.4,成员节点更新ID号,然后调用最小ID算法进行重新分簇。

  步骤2中,具体为:

  步骤2.1,新节点的增加;当一个新节点想加入一个分簇时,通过收到簇首广播的HELLO消息计算自己的权值Wi,然后在此分簇内根据步骤1重新进行簇首选举;

  步骤2.2,簇内节点的删除,当簇内的无人机节点收不到簇头传播的HELLO消息或者簇头节点收不到该节点周期性广播的HELLO消息,则此节点已经不在簇头的通信范围之内,该节点的消息将从簇内删除;

  步骤2.3,簇头的更换;当簇头收不到带有簇内成员信息的HELLO消息或者簇头退出网络时;簇内成员恢复到初始状态,按照步骤1重新进行簇头的选举。

  步骤3.1,具体为:

  步骤3.1.1,源节点S向簇内成员节点D发送数据,若自己的路由表中存在目的节点的路由信息,则直接发送数据,否则进行下一步;

  步骤3.1.2,源节点S产生m只前向蚂蚁FANT,初始化蚂蚁分组,每只蚂蚁按照初始信息素表中的转移概率选择可转移的下一跳节点;

  步骤3.1.3,中间节点接收到FANT分组,判断本节点是否接受过此蚂蚁,如果接受过,则丢弃该蚂蚁;若没有接受过,中间节点选择信息素表中最大转移概率的邻节点作为蚂蚁移动的下一跳节点,同时根据FANT分组携带的节点剩余能量值,按照更新公式(3)和信息素增量公式(4)更新链路上的信息素值并记录路径信息,重复步骤3.1.3,直到FANT到达的节点为目的节点;

  τij(t+Δt)=ρτij(t)+(1-ρ)Δτij(t)(3);

  

  其中,ρ为信息素挥发系数,1-ρ为信息素残留系数,Δτij(t)表示蚂蚁在经过链路(i,j)时释放的信息素增量,Q为信息量,Eij为节点剩余能量与初始能量的比值,Disij表示节点i到节点j的距离;τij(t)表示t时刻链路(i,j)上的信息素值;τij(t+Δt)表示当蚂蚁成功从i转移到节点j时,更新链路(i,j)的信息素值;

  步骤3.1.4,目的节点接收到FANT分组,前向蚂蚁死亡,目的节点生成后向蚂蚁并接受前向蚂蚁所拥有的路径信息,沿原路径返回源节点S,在返回过程中依次更新信息素表直到返回源节点S;

  步骤3.1.5,源节点S接收到后向蚂蚁,更新源节点的信息素表,同时丢弃后向蚂蚁。

  步骤3.2中,具体为:

  步骤3.2.1,源节点S向簇内成员节点D发送数据,节点向簇首发送一个带源节点和目的节点地址的请求包REQ,判断目的节点是否在本簇内,若目的节点在本簇内,则直接通过本地路由把REQ发送给目的节点,否则,进行下一步;

  步骤3.2.2,簇首在群成员表中找到目的节点所在簇群,并在路由表中找到通往目的的下一相邻簇首,以及通往相邻簇首的网关节点,然后把这一相邻簇首和目的节点加入REQ发往该网关节点;

  步骤3.2.3,若网关节点己经在相邻簇群中,去掉REQ中簇首,并把自己加入REQ中,并发送到这一簇首,簇首重复步骤3.2.1、步骤3.2.2,判断目的节点是否在本簇中;若不在本簇内,网关节点在自己路由表中找到通往相邻簇首的网关节点,把自己添加到REQ并发送到相邻群的网关节点,重复该步骤,直至找到目的节点;

  步骤3.2.4,目的节点根据收到的REQ消息后,根据REQ发送应答消息REPLY,每个网关节点可以根据REQ通过本地路由表直接发送;

  步骤3.2.5,源节点S收到REPLY后,将沿着REPLY发送信息。

  本发明的有益效果是:

  1)采用无线紫外光协作无人机蜂群编队飞行具有全天候、非直视、不受射频干扰和隐秘通信等优势,能为无人机蜂群在强电磁干扰环境中顺利执行任务提供有效保障。

  2)改进的最小ID算法在簇构成阶段考虑了节点的能量及移动性等因素,可有效避免较小ID的节点负载过重而较早死亡的情况,有效延长网络生命周期。且分簇路由协议相比于平面路由协议具有可扩展性好、洪泛开销较小、移动性适应能力强等特点,在无人机编队网络规模较大时优势明显。

  附图说明

  图1为本发明实施例中无人机最小ID分簇网络结构图;

  图2为本发明实施例中簇内路由发现流程图。

  具体实施方式

  下面结合附图和具体实施方式对本发明作进一步详细阐述。

  本发明一种基于无线紫外光通信的蜂群无人机编队分簇路由方法,该方法由分簇算法和路由算法两部分组成,首先利用改进的最小ID算法对无人机Ad Hoc网络进行分簇,然后将蚁群算法应用到簇内路由机制中,簇间路由发现釆用洪泛方式进行路由查找;

  具体按照以下步骤实施:

  步骤1,簇构成阶段;具体为:

  步骤1.1,初始化无人机网络,如图1所示,为每个无人机节点分配唯一的ID号,应用最小ID算法为网络分簇,选出簇首;

  步骤1.2,各个无人机节点通过搭载紫外LED阵列周期性地广播HELLO消息来获取邻居节点的信息,消息中主要包括节点的ID号、位置、速度、节点剩余能量以及节点权值,节点权值Wi如公式(1)所示,无人机节点接收到邻居发现消息后,提取相关信息,建立邻节点信息表;

  

  其中,α1、α2、α3为权值系数,Ei为无人机节点i的能量,Di为无人机节点i的节点度;

  为无人机节点i的逻辑通信链路路径损耗均值,如式(2)所示;

  

  L为紫外光非直视通信的路径损耗,如式(3)所示;

  L=ξrα(3);

  r为通信距离,ξ为路径损耗因子,α为路径损耗指数。

  步骤1.3,各个无人机节点将自己的权值Wi发送给自己的簇首,簇首收到本群所有的Wi值后,将这些值按照递减的顺序重新进行排序,并重新分配ID号,把最小的ID号分配给具有最大Wi值的节点,最大ID号分配给具有最小Wi值的节点;若多个无人机节点的Wi值相同,则簇首将ID号随机分给一个节点,然后依次发送新的ID号给其成员节点;

  步骤1.4,成员节点更新ID号,然后调用最小ID算法进行重新分簇;

  步骤2,簇的维护,具体为:

  步骤2.1,新节点的增加;新节点包括网络中最新加入的节点和被其它分簇删除的节点;当一个新节点想加入一个分簇时,通过收到簇首广播的HELLO消息由公式(1)计算自己的权值Wi,然后在此分簇内根据步骤1重新进行簇首选举;

  步骤2.2,簇内节点的删除,当簇内的无人机节点收不到簇头传播的HELLO消息或者簇头节点收不到该节点周期性广播的HELLO消息,则此节点已经不在簇头的通信范围之内,该节点的消息将从簇内删除;

  步骤2.3,簇头的更换;当簇头收不到带有簇内成员信息的HELLO消息或者簇头退出网络时;簇内成员恢复到初始状态,按照步骤1重新进行簇头的选举;

  步骤3,路由算法,具体为;

  步骤3.1,簇内路由发现,具体为:

  步骤3.1.1,源节点S向簇内成员节点D发送数据,若自己的路由表中存在目的节点的路由信息,则直接发送数据,否则进行下一步;

  步骤3.1.2,源节点S产生m只前向蚂蚁FANT,初始化蚂蚁分组,每只蚂蚁按照初始信息素表中的转移概率选择可转移的下一跳节点;

  步骤3.1.3,中间节点接收到FANT分组,判断本节点是否接受过此蚂蚁,如果接受过,则丢弃该蚂蚁;若没有接受过,中间节点选择信息素表中最大转移概率的邻节点作为蚂蚁移动的下一跳节点,同时根据FANT分组携带的节点剩余能量值,按照更新公式(3)和信息素增量公式(4)更新链路上的信息素值并记录路径信息,重复步骤3.1.3,直到FANT到达的节点为目的节点;

  τij(t+Δt)=ρτij(t)+(1-ρ)Δτij(t)(3);

  

  其中,ρ为信息素挥发系数,1-ρ为信息素残留系数,Δτij(t)表示蚂蚁在经过链路(i,j)时释放的信息素增量,Q为信息量,Eij为节点剩余能量与初始能量的比值,Disij表示节点i到节点j的距离;τij(t)表示t时刻链路(i,j)上的信息素值;τij(t+Δt)表示当蚂蚁成功从i转移到节点j时,更新链路(i,j)的信息素值;

  步骤3.1.4,目的节点接收到FANT分组,前向蚂蚁死亡,目的节点生成后向蚂蚁并接受前向蚂蚁所拥有的路径信息,沿原路径返回源节点S,在返回过程中依次更新信息素表直到返回源节点S;

  步骤3.1.5,源节点S接收到后向蚂蚁,更新源节点的信息素表,同时丢弃后向蚂蚁;

  步骤3.2,簇间路由发现,具体为:

  步骤3.2.1,源节点S向其余簇内成员节点D发送数据,节点向簇首发送一个带源节点和目的节点地址的请求包REQ,判断目的节点是否在本簇内,若目的节点在本簇内,则直接通过本地路由把REQ发送给目的节点,否则,进行下一步;

  步骤3.2.2,簇首在群成员表中找到目的节点所在簇群,并在路由表中找到通往目的的下一相邻簇首,以及通往相邻簇首的网关节点,然后把这一相邻簇首和目的节点加入REQ发往该网关节点;

  步骤3.2.3,若网关节点己经在相邻簇群中,去掉REQ中簇首,并把自己加入REQ中,并发送到这一簇首,簇首重复步骤3.2.1、步骤3.2.2,判断目的节点是否在本簇中;若不在本簇内,网关节点在自己路由表中找到通往相邻簇首的网关节点,把自己添加到REQ并发送到相邻群的网关节点,重复该步骤,直至找到目的节点;

  步骤3.2.4,目的节点根据收到的REQ消息(REQ中仅包含源节点、目的节点和经过的网关节点)后,根据REQ发送应答消息REPLY,每个网关节点可以根据REQ通过本地路由表直接发送;

  步骤3.2.5,源节点S收到REPLY后,将沿着REPLY发送信息。

  实施例

  一种基于无线紫外光通信的蜂群无人机编队分簇路由方法,具体按照以下步骤实施:

  步骤1,簇构成阶段;

  如图1所示,在分簇路由协议中,网络中的节点被分成多个簇,每个簇中由最小ID算法初始选出一个簇首节点,负责簇结构的稳定和重组。通过改进的分簇算法,簇首节点根据本簇内节点权值重新排序并分配ID号,可有效均衡节点能量消耗,延长网络生命周期。

  具体为:步骤1,簇构成阶段;具体为:

  步骤1.1,初始化无人机网络,如图1所示,为每个无人机节点分配唯一的ID号,应用最小ID算法为网络分簇,选出簇首;

  步骤1.2,各个无人机节点通过搭载紫外LED阵列周期性地广播HELLO消息来获取邻居节点的信息,消息中主要包括节点的ID号、位置、速度、节点剩余能量以及节点权值,节点权值Wi如公式(1)所示,无人机节点接收到邻居发现消息后,提取相关信息,建立邻节点信息表;

  

  其中,α1、α2、α3为权值系数,Ei为无人机节点i的能量,Di为无人机节点i的节点度;

  为无人机节点i的逻辑通信链路路径损耗均值,如式(2)所示;

  

  L为紫外光非直视通信的路径损耗,如式(3)所示;

  L=ξrα(3);

  r为通信距离,ξ为路径损耗因子,α为路径损耗指数。

  步骤1.3,各个无人机节点将自己的权值Wi发送给自己的簇首,簇首收到本群所有的Wi值后,将这些值按照递减的顺序重新进行排序,并重新分配ID号,把最小的ID号分配给具有最大Wi值的节点,最大ID号分配给具有最小Wi值的节点;若多个无人机节点的Wi值相同,则簇首将ID号随机分给一个节点,然后依次发送新的ID号给其成员节点;

  步骤1.4,成员节点更新ID号,然后调用最小ID算法进行重新分簇;

  步骤2,簇的维护,具体为:

  步骤2.1,新节点的增加。新节点包括网络中最新加入的节点和被其它分簇删除的节点。当一个新节点想加入一个分簇时,通过收到簇首广播的HELLO消息由公式(1)计算自己的权值Wi,然后在此分簇内根据步骤1重新进行簇首选举。

  步骤2.2,簇内节点的删除。当簇内的无人机节点收不到簇头传播的HELLO消息或者簇头节点收不到该节点周期性广播的HELLO消息,则此节点已经不在簇头的通信范围之内,该节点的消息将从簇内删除。

  步骤2.3,簇头的更换。当簇头收不到带有簇内成员信息的HELLO消息或者簇头退出网络时。簇内成员恢复到初始状态,按照步骤1重新进行簇头的选举。

  步骤3,路由算法。

  步骤3.1,簇内路由发现。簇内路由发现流程图,如图2所示;

  具体为:步骤3.1.1,如图1所示,源节点8向目的节点5发送数据,其自己的路由表中不存在到目的节点5的路由信息;

  步骤3.1.2,源节点8产生m只前向蚂蚁,初始化蚂蚁分组。蚂蚁分组格式如表1所示,每只蚂蚁按照初始信息素的转移概率选择可转移的下一跳节点10。

  表1蚂蚁分组格式

  步骤3.1.3,中间节点10接收到FANT分组,判断本节点是否接受过此蚂蚁,如果接受过,则丢弃该蚂蚁。若没有接受过,中间节点选择信息素表中最大转移概率的邻节点作为蚂蚁移动的下一跳节点,同时根据FANT分组携带的节点剩余能量值按照更新公式(3)和信息素增量公式(4)更新链路上的信息素值并记录路径信息。重复步骤3.1.3,直到FANT到达的节点为目的节点时,则转向步骤3.1.4。

  τij(t+Δt)=ρτij(t)+(1-ρ)Δτij(t)(3)

  

  其中,ρ为信息素挥发系数,1-ρ为信息素残留系数,Δτij(t)表示蚂蚁在经过链路(i,j)时释放的信息素增量,Q为信息量,Eij为节点剩余能量与初始能量的比值,Disij表示节点i到节点j的距离;τij(t)表示t时刻链路(i,j)上的信息素值。τij(t+Δt)表示当蚂蚁成功从i转移到节点j时,更新链路(i,j)的信息素值。

  步骤3.1.4,目的节点5接收到FANT分组,前向蚂蚁死亡,目的节点5生成后向蚂蚁并接受前向蚂蚁所拥有的路径信息8-10-5,沿原路径返回源节点5-10-8,在返回过程中依次更新信息素表直到返回源节点。

  步骤3.1.5,源节点接收到后向蚂蚁,更新源节点的信息素表,同时丢弃后向蚂蚁。

  步骤3.2,簇间路由发现;具体为:

  步骤3.2.1,如图1所示,源节点5向其余簇内成员节点7发送数据,源节点5向簇首2发送一个带源节点和目的节点地址的请求包REQ。判断目的节点是否在本簇内。目的节点在本簇内,则直接通过本地路由把REQ发送给目的节点;

  步骤3.2.2,簇首2在群成员表中找到目的节点所在群,并在路由表中找到通往目的的下一相邻簇首节点,以及通往相邻簇首的网关节点8,然后把这一相邻簇首和目的节点加入REQ发往该网关节点8。

  步骤3.2.3,网关节点8己经在相邻群中,去掉REQ中簇首,并把自己加入REQ中,并发送到簇首节点1,簇首节点1未在簇内发现目的节点7,则簇首节点1在群成员表中找到目的节点所在群,并在路由表中找到通往目的的下一相邻簇首4,以及通往相邻簇首的网关节点9,然后把这一相邻簇首和目的节点加入REQ发往该网关节点9。网关节点9己经在相邻群中,去掉REQ中簇首,并把自己加入REQ中,并发送到簇首节点4,簇首节点4在本簇内发现目的节点7;

  步骤3.2.4,目的节点7根据收到的REQ消息(REQ中仅包含源节点、目的节点和经过的边界节点)后,根据REQ发送应答消息REPLY,每个边界节点可以根据REQ通过本地路由表直接发送。

  步骤3.2.5,源节点5收到REPLY后,将沿着REPLY发送信息。

  本发明一种基于无线紫外光通信的蜂群无人机编队分簇路由方法。该方法由分簇算法和路由算法两部分组成,首先利用改进的最小ID算法对无人机Ad Hoc网络进行分簇,然后将蚁群算法应用到簇内路由机制中,簇间路由发现釆用洪泛方式进行路由查找,其可有效避免较小ID的节点负载过重而较早死亡的情况,有效延长网络生命周期。

《一种基于无线紫外光通信的蜂群无人机编队分簇路由方法.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)