一种基于人工智能的SND网络路由筛选方法和电子设备与流程

文档序号:26057885发布日期:2021-07-27 15:36阅读:235来源:国知局
一种基于人工智能的SND网络路由筛选方法和电子设备与流程

本发明涉及snd网络技术领域,特别涉及一种基于人工智能的snd网络路由筛选方法和电子设备。



背景技术:

snd网络通常部署在高山、深林等人迹罕至的环境中,通常是采用无人机作为移动充电源。snd网络路由筛选方法,是用来寻找从源节点s(通常为传感器节点)到基站sink(即为节点基站)的一条通信路径,源节点通过其余传感器节点的不断转发将信息传送到基站。

现有的路由方法中,spin方法具体是接收信息时,节点在发送信息之前提前发送一个adv信息告知其余节点要发送信息,若其余节点同意接收信息,则返回一个req信息,但是,spin方法的目标更多的是将数据发送给基站,而不考虑其路径,从而忽略了许多影响决策的选择。flooding泛洪方法具体是收到数据的节点像广播一样向发送内所有节点转发,不管节点是否已经接收过信息还需不需要接受,虽然flooding泛洪方法能适用于人工智能,但其是无差别发送,容易造成信息的重复、内爆,降低传感器网络的性能。因此,有必要研究出能够适应动态规划并且合理高效的新路由方法。



技术实现要素:

为了解决现有技术的问题,本发明实施例提供了一种基于人工智能的snd网络路由筛选方法和电子设备。所述技术方案如下:

第一方面,提供了一种基于人工智能的snd网络路由筛选方法方法,所述方法包括:

将snd网络进行阶段划分,并根据每个阶段内的节点得到对应阶段的状态变量;

对每个阶段中的状态变量赋予阶段属性和接收属性;

将相互通讯的各个节点的节点信息进行记录,以此构建得到适用于人工智能的路由模型,节点信息包括节点所对应的阶段的状态变量、阶段属性、受当前阶段状态变量影响的下一阶段的状态变量、节点的坐标信息;

针对于适用于人工智能的路由模型,从中筛选出源节点和节点基站之间的可到达路由;

将snd网络转换为带权连通图,根据带权连通图建立从源节点到节点基站的最小权重函数;

将带权连通图转换为权重矩阵,根据权重矩阵,采用人工智能得到最小权重的可到达路由以及求解最小权重函数。

可选的,将snd网络进行阶段划分,并根据每个阶段内的节点得到对应阶段的状态变量包括:

步骤1、计算各个节点和源节点之间的距离,并作为第一距离;

针对于每个节点,判断第一距离是否小于源节点的通信半径,若是,则将对应的节点作为第一阶段的一个状态变量;遍历所有节点,得到第一阶段的所有状态变量;

将snd网络的所有节点中除去源节点和第一阶段的所有状态变量,得到剩余节点;

步骤2、针对于每个剩余节点,计算剩余节点与上一阶段各个状态变量之间的距离,并作为第二距离;

针对于各个剩余节点,判断第二距离是否小于对应的上一阶段状态变量的通信半径,若是,则将该节点作为当前阶段的一个状态变量;遍历所有节点,得到当前阶段的所有状态变量;

将剩余节点除去当前阶段的所有状态变量,得到更新后的剩余节点;

步骤3、重复步骤2,直至得到所有阶段的状态变量。

可选的,对每个阶段中的状态变量赋予阶段属性和接收属性包括:

在阶段划分时,对各个节点分别赋予阶段属性和接收属性,每个节点的阶段属性等于节点对应的阶段数值,每个节点的接收属性均为第一定值;

设置发送请求协议,发送数据的节点在数据发送之前先向接收数据的节点请求以及判断阶段属性,接收数据的节点判断发送数据的节点是否为同一阶段,若是,拒接请求;

在同一阶段的所有节点发送完数据之后,将节点的接收属性修改为第二定值。

可选的,利用三级备忘录方法将相互通讯的各个节点的节点信息记录在三级备忘录,节点信息以四维数组的形式进行保存包括:

在阶段划分时,将同一阶段的状态变量保存在三级备忘录的第一级目录下,其中,阶段属性作为四维数组的第一维,阶段的状态变量作为四维数组的第二维;

在通讯过程中,将受当前阶段状态变量影响的下一阶段状态变量保存在三级备忘录的二级目录下,下一阶段状态变量作为四维数组的第三维;

在随机生成节点时,对节点进行编号,并通过二维数组将节点的坐标信息保存在三级备忘录的三级目录下,坐标信息作为四维数组的第四维。

可选的,采用节点路由筛选方法筛选出源节点和节点基站之间的可到达路由包括:

赋予每个节点一个初始阶段属性和初始可到达属性,并新建一个三级的筛选备忘录,在筛选备忘录中,阶段属性保存在筛选备忘录的一级目录,可到达属性保存在筛选备忘录的二级目录;

通过三级备忘录的二级目录,反向查出与节点基站通信的各个节点,并将节点的阶段属性修改为第三定值并保存在筛选备忘录;

遍历与节点基站通信的各个节点,从中找出具有初始可到达属性和阶段属性为第三定值的节点,通过三级备忘录的二级目录,反向查出与所找出的节点通讯的上一阶段节点,将上一阶段节点的阶段属性修改为第三定值和可到达属性修改为第四定值,并将修改后的阶段属性和可到达属性保存在筛选备忘录;

遍历上一阶段节点,从中找出阶段属性为第三定值和可到达属性为第四定值的节点,并针对于所找出的阶段属性为第三定值和可到达属性为第四定值的各个节点,通过三级备忘录的二级目录,反向查出与节点通讯的上一阶段节点,将上一阶段节点的阶段属性修改为第三定值和可到达属性修改为第四定值,并将修改后的阶段属性和可到达属性保存在筛选备忘录;

重复如上步骤,直至当反向查出的上一阶段节点为源节点,则结束筛选,筛选出来的节点的坐标信息保存在筛选备忘录的三级目录中,筛选出来的源节点和节点基站之间的路径为可到达路由。

可选的,当权重为能耗e时,将snd网络转换为带权连通图包括:

针对于snd网络的各个节点,计算充电过程的损耗:

e损=e充(1/e-1);

其中,e充为节点需要充电的能量;e为无人机通过无线充电设备为节点充电的能量转换率;

针对于为节点充电的无人机,计算无人机的飞行损耗e飞:

e飞=(d/v飞)·p飞;

其中,d为相互通讯的两个节点之间的距离,具体是通过筛选备忘录查询相互通讯的两个节点的坐标信息,由坐标信息计算得到;v飞为无人机的飞行速度;p飞为无人机的飞行功率;

计算节点发送数据的损耗etx:

其中,d0为临界距离;l为数据位数;eelec为发送每位数据消耗的能量;efs为距离d小于临界距离d0时发送每位数据耗散的能量;emp为距离d大于或者等于临界距离d0时发送每位数据的耗散能量;

计算节点接收数据的损耗erx:

erx=l·eelec;

其中,l为数据位数;eelec为发送每位数据消耗的能量;

计算snd网络中两个节点之间的权重e:

e=e充+e损+e飞+etx+erx;

根据所计算出的权重,将snd网络转换为带权连通图:

g=(v,e,d);

其中,v为节点数量;

根据带权连通图建立从源节点到节点基站的最小能耗函数fk,n(sk):

fk,n(sk)=min{ek(sk,dk(sk))+fk+1,n(sk+1)},k=n,n-1,...,1;

fk+1,n(sk+1)=0;

其中,k为阶段变量;n为阶段总数;fk+1,n(sk+1)为从第k+1阶段的状态变量sk+1出发到节点基站的最小能耗;ek(sk,dk(sk))为从第k阶段的状态变量sk出发到第k+1阶段的状态变量sk+1的能耗;所构建的最小能耗函数为最小权重函数。

可选的,采用权重矩阵生成方法将带权连通图转换为权重矩阵包括:

赋予各节点的阶段属性c(i)=0和可达到属性d(i)=0,初始权重矩阵为(1,1);

通过筛选备忘录查询与节点基站通讯的i个节点,并定义为第一阶段,权重矩阵扩展为(i+1,i+1);

从权重矩阵的第一行第二列开始依次记录i个节点,并使i个节点的阶段属性c(i)为第五定值;

读取权重矩阵第一行的节点,通过筛选备忘录查询与权重矩阵第一行的节点通讯的j个节点,定义为第二阶段,权重矩阵扩展为(i+j+1,i+j+1);

从权重矩阵的第i+1行第i+2列开始记录j个节点,并使j个节点的阶段属性c(i)为第五定值;

读取权重矩阵第i+j+1行的节点,通过筛选备忘录查询与权重矩阵第i+j+1行的节点通讯的k个节点,定义为第i+j阶段,权重矩阵扩展为(i+j+1+k,i+j+1+k);

从权重矩阵的第i+j+1行第i+j+2列开始记录k个节点,并使这些节点的阶段属性c(i)为第五定值;

判断拓展后的权重矩阵是否记录到源节点,若是,则读取权重矩阵第一行第一个与节点基站通讯的节点,将其作为第一通讯节点;

通过筛选备忘录查询与第一通讯节点相互通讯的节点,将其作为第二通讯节点;

找出第二通讯节点在权重矩阵第i+j+1行中对应的列数n,并将第二通讯节点记录在权重矩阵的第二行第n列中;以此类推,记录与权重矩阵第一行其他节点相互通讯的节点;

读取权重矩阵第i+j+1行第一个与节点基站通讯的节点,将其作为第一通讯节点;

通过筛选备忘录查询与第一通讯节点相互通讯的节点,将其作为第二通讯节点;

找出第二通讯节点在权重矩阵第i+j+1+k行中对应的列数n,并将第二通讯节点记录在权重矩阵的第i+j+2行第n列中;以此类推,记录与权重矩阵第i+j+1行其他节点相互通讯的节点;

判断是否记录到权重矩阵的最后一行,若是,则权重矩阵转换完成。

可选的,采用人工智能得到最小权重的可到达路由以及求解最小权重函数包括:

步骤1、初始化权重矩阵a(x,y):将权重矩阵第一行第一列的初始点设置为0,为为起始点,将权重矩阵中没有记录到的其他矩阵元素设置为inf,为为无穷大不可达到;

其中,x为权重矩阵的行序号,1≤x≤i+j+1+k;y为权重矩阵的列序号,1≤y≤i+j+1+k;

步骤2、生成一个与权重矩阵维数相同的路径矩阵path(x,y);

遍历权重矩阵,判断a(x,y)是否等于inf,

若是,则path(x,y)=a(x,y);

步骤3、分别对x、y、z进行赋值:

z=1:i+j+1+k;

x=1:i+j+1+k;

y=1:i+j+1+k;

其中,z为当前节点路径中可改变节点路径的其他待选节点;

判断a(x,y)是否小于a(x,z)+a(z,y),

若否,则重复步骤3;

若是,则对当前的节点路径长度进行修改:a(x,y)=a(x,z)+a(z,y);

对当前的节点路径进行修改:path(x,y)=path(x,z);

当遍历完赋值,路径矩阵中所为的节点路径为最小权重的可到达路由,根据最小权重的可到达路由和权重矩阵求解出最小权重函数的最小权重值。

可选的,当权重为时间t时,将snd网络转换为带权连通图包括:

计算snd网络中两个节点之间的权重t:

t=t充+t飞;

其中,t飞为无人机的飞行时间;t充为无人机通过无线充电设备为节点充电的时间;

根据所计算出的权重,将snd网络转换为带权连通图:

g=(v,t,d);

其中,v为节点数量;d为相互通讯的两个节点之间的距离,具体是通过筛选备忘录查询相互通讯的两个节点的坐标信息,由坐标信息计算得到;

根据带权连通图建立从源节点到节点基站的最短时间函数fk,n(sk):

fk,n(sk)=min{tk(sk,dk(sk))+fk+1,n(sk+1)},k=n,n-1,...,1;

fk+1,n(sk+1)=0;

其中,n为阶段数;k为阶段变量;fk+1,n(sk+1)为从第k+1阶段的状态变量sk+1出发到节点基站所用的最短时间;tk(sk,dk(sk))为从第k阶段的状态变量sk出发到第k+1阶段的状态变量sk+1所用的时间;最短时间函数为最小权重函数。

第二方面,提供了一种电子设备,包括处理器以及用于存储处理器可执行程序的存储器,其特征在于,所述处理器执行存储器存储的程序时,实现权利要求1至9中任一项所述的方法。

本发明实施例提供的技术方案带来的有益效果是:

通过构建适用于人工智能的路由模型,将snd网络进行阶段划分,对得到的阶段的状态变量赋予阶段属性和接收属性;记录通讯的各个节点的节点信息,以此得到适用于人工智能的路由模型;从路由模型中筛选出可到达路由;将snd网络转换为带权连通图,根据带权连通图建立从源节点到节点基站的最小权重函数;将带权连通图转换为权重矩阵,根据权重矩阵,采用人工智能得到最小权重的可到达路由以及求解最小权重函数。本发明实现了为无线充电传感网络建立合理高效的充电策略,提高能量的利用率和效率,缩减时间和人工成本。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种基于人工智能的snd网络路由筛选方法流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参照图1所示,本发明实施例提供了一种基于人工智能的snd网络路由筛选方法,具体包括:

101、将snd网络进行阶段划分,并根据每个阶段内的节点得到对应阶段的状态变量;

102、对每个阶段中的状态变量赋予阶段属性和接收属性;

103、将相互通讯的各个节点的节点信息进行记录,以此构建得到适用于人工智能的路由模型,节点信息包括节点所对应的阶段的状态变量、阶段属性、受当前阶段状态变量影响的下一阶段的状态变量、节点的坐标信息;

104、针对于适用于人工智能的路由模型,从中筛选出源节点和节点基站之间的可到达路由;

105、将snd网络转换为带权连通图,根据带权连通图建立从源节点到节点基站的最小权重函数;

106、将带权连通图转换为权重矩阵,根据权重矩阵,采用人工智能得到最小权重的可到达路由以及求解最小权重函数。

上述技术方案可以具体为:

步骤s1、构建适用于人工智能的路由模型:

(1)将snd网络进行阶段划分,并根据每个阶段内的节点得到对应阶段的状态变量,使得阶段划分后的snd网络能够具有最优子结构性质。过程具体如下:

步骤1、计算各个节点和源节点之间的距离,并作为第一距离;

针对于每个节点,判断第一距离是否小于源节点的通信半径,若是,则将对应的节点作为第一阶段的一个状态变量;遍历所有节点,得到第一阶段的所有状态变量;

将snd网络的所有节点中除去源节点和第一阶段的所有状态变量,得到剩余节点;

步骤2、针对于每个剩余节点,计算剩余节点与上一阶段各个状态变量之间的距离,并作为第二距离;

针对于各个剩余节点,判断第二距离是否小于对应的上一阶段状态变量的通信半径,若是,则将该节点作为当前阶段的一个状态变量;遍历所有节点,得到当前阶段的所有状态变量;

将剩余节点除去当前阶段的所有状态变量,得到更新后的剩余节点;

步骤3、重复步骤2,直至得到所有阶段的状态变量。

(2)对每个阶段中的状态变量赋予阶段属性和接收属性,使得同阶段的状态变量相互独立,互不影响,同时,当前阶段状态变量可影响下一阶段,却不能影响上一阶段,由此可见,snd网络具有离散状态变量性质。过程具体如下:

在阶段划分时,对各个节点分别赋予阶段属性和接收属性,每个节点的阶段属性等于节点对应的阶段数值,即第一阶段节点的阶段属性为1,第二阶段节点的阶段属性为2;每个节点的接收属性均为第一定值,本实施例的第一定值设为0。

设置发送请求协议,发送数据的节点在数据发送之前通过发送请求协议先向接收数据的节点请求以及判断阶段属性,接收数据的节点判断发送数据的节点是否为同一阶段,若是,拒接请求;

在同一阶段的所有节点发送完数据之后,将节点的接收属性修改为第二定值,使得节点不受下一阶段节点的影响。本实施例的第二定值设为1。

(3)将相互通讯的各个节点的节点信息进行记录,以此构建得到适用于人工智能的路由模型,节点信息包括节点所对应的阶段的状态变量、阶段属性、受当前阶段状态变量影响的下一阶段的状态变量、节点的坐标信息。

在本实施例中,具体是利用三级备忘录方法将相互通讯的各个节点的节点信息记录在三级备忘录,节点信息以四维数组的形式进行保存,过程如下:

在阶段划分时,将同一阶段的状态变量保存在三级备忘录的第一级目录下,其中,阶段属性作为四维数组的第一维,阶段的状态变量作为四维数组的第二维;

在通讯过程中,将受当前阶段状态变量影响的下一阶段状态变量保存在三级备忘录的二级目录下,下一阶段状态变量作为四维数组的第三维;

在随机生成节点时,对节点进行编号,并通过二维数组将节点的坐标信息保存在三级备忘录的三级目录下,坐标信息作为四维数组的第四维。

在snd网络中,当前阶段的状态变量在下一阶段将被多次使用,即snd网络重叠子问题性质,并且,状态变量个数随着snd网络规模的大小是呈多项式增长的,因此,整个过程是一个多项式时间过程。若每次均重新计算,将大大降低效率。本实施例通过建立三级备忘录,当需要寻找相互通讯的节点时,直接查询三级备忘录即可,不必重新计算节点之间的距离再找出相互通讯的节点,因此可提高方法的计算效率。

步骤s2、针对于适用于人工智能的路由模型,从中筛选出源节点s和节点基站sink之间的可到达路由,剔除无法到达节点基站的多余节点路由,避免这些多余节点路由严重影响路由方法计算效率和计算结果。

在本实施例中,具体是采用节点路由筛选方法进行筛选,过程如下:

赋予每个节点一个初始阶段属性和初始可到达属性,并新建一个三级的筛选备忘录,在筛选备忘录中,阶段属性保存在筛选备忘录的一级目录,可到达属性保存在筛选备忘录的二级目录;

通过步骤s1中的三级备忘录的二级目录,反向查出与节点基站通信的各个节点,并将节点的阶段属性修改为第三定值并保存在筛选备忘录;

遍历与节点基站通信的各个节点,从中找出具有初始可到达属性和阶段属性为第三定值的节点,通过三级备忘录的二级目录,反向查出与所找出的节点通讯的上一阶段节点,将上一阶段节点的阶段属性修改为第三定值和可到达属性修改为第四定值,并将修改后的阶段属性和可到达属性保存在筛选备忘录;

遍历上一阶段节点,从中找出阶段属性为第三定值和可到达属性为第四定值的节点,并针对于所找出的阶段属性为第三定值和可到达属性为第四定值的各个节点,通过三级备忘录的二级目录,反向查出与节点通讯的上一阶段节点,将上一阶段节点的阶段属性修改为第三定值和可到达属性修改为第四定值,并将修改后的阶段属性和可到达属性保存在筛选备忘录;

重复如上步骤,直至当反向查出的上一阶段节点为源节点,则结束筛选,筛选出来的节点的坐标信息保存在筛选备忘录的三级目录中,筛选出来的源节点和节点基站之间的路径为可到达路由。

在本实施例中,初始阶段属性设为0,初始可到达属性也设为0;第三定值设为1,第四定值也设为1。

步骤s3、将snd网络转换为带权连通图,根据带权连通图建立从源节点到节点基站的最小权重函数。权重具体可以是能耗e,也可以是时间t。

其中,当权重为能耗e时,将snd网络转换为带权连通图,具体如下:

(1)针对于snd网络的各个节点,计算充电过程的损耗:

e损=e充(1/e-1);

其中,e充为节点需要充电的能量;e为无人机通过无线充电设备为节点充电的能量转换率;

针对于为节点充电的无人机,计算无人机的飞行损耗e飞:

e飞=(d/v飞)·p飞;

其中,d为相互通讯的两个节点之间的距离,具体是通过筛选备忘录查询相互通讯的两个节点的坐标信息,由坐标信息计算得到;v飞为无人机的飞行速度;p飞为无人机的飞行功率;

计算节点发送数据的损耗etx:

其中,d0为临界距离;l为数据位数;eelec为发送每位数据消耗的能量;efs为距离d小于临界距离d0时发送每位数据耗散的能量;emp为距离d大于或者等于临界距离d0时发送每位数据的耗散能量;

计算节点接收数据的损耗erx:

erx=l·eelec;

其中,l为数据位数;eelec为发送每位数据消耗的能量;

(2)计算snd网络中两个节点之间的权重e:

e=e充+e损+e飞+etx+erx;

(3)根据所计算出的权重,将snd网络转换为带权连通图:

g=(v,e,d);

其中,v为节点数量;

(4)根据带权连通图建立从源节点到节点基站的最小能耗函数fk,n(sk):

fk,n(sk)=min{ek(sk,dk(sk))+fk+1,n(sk+1)},k=n,n-1,...,1;

fk+1,n(sk+1)=0;

其中,k为阶段变量;n为阶段总数;fk+1,n(sk+1)为从第k+1阶段的状态变量sk+1出发到节点基站的最小能耗;ek(sk,dk(sk))为从第k阶段的状态变量sk出发到第k+1阶段的状态变量sk+1的能耗;所构建的最小能耗函数为最小权重函数。

其中,当权重为时间t时,将snd网络转换为带权连通图,具体如下:

(1)计算snd网络中两个节点之间的权重t:

t=t充+t飞;

其中,t飞为无人机的飞行时间;t充为无人机通过无线充电设备为节点充电的时间;

(2)根据所计算出的权重,将snd网络转换为带权连通图:

g=(v,t,d);

其中,v为节点数量;d为相互通讯的两个节点之间的距离,具体是通过筛选备忘录查询相互通讯的两个节点的坐标信息,由坐标信息计算得到;

(3)根据带权连通图建立从源节点到节点基站的最短时间函数fk,n(sk):

fk,n(sk)=min{tk(sk,dk(sk))+fk+1,n(sk+1)},k=n,n-1,...,1;

fk+1,n(sk+1)=0;

其中,n为阶段数;k为阶段变量;fk+1,n(sk+1)为从第k+1阶段的状态变量sk+1出发到节点基站所用的最短时间;tk(sk,dk(sk))为从第k阶段的状态变量sk出发到第k+1阶段的状态变量sk+1所用的时间;最短时间函数为最小权重函数。步骤s4、将带权连通图转换为权重矩阵,根据权重矩阵,采用人工智能得到最小权重的可到达路由以及求解最小权重函数。

其中,采用权重矩阵生成方法将带权连通图转换为权重矩阵,过程如下:

(1)赋予各节点的阶段属性c(i)=0和可达到属性d(i)=0,初始权重矩阵为(1,1);

通过筛选备忘录查询与节点基站通讯的i个节点,并定义为第一阶段,权重矩阵扩展为(i+1,i+1);

从权重矩阵的第一行第二列开始依次记录i个节点,并使i个节点的阶段属性c(i)为第五定值;

(2)读取权重矩阵第一行的节点,通过筛选备忘录查询与权重矩阵第一行的节点通讯的j个节点,定义为第二阶段,权重矩阵扩展为(i+j+1,i+j+1);

从权重矩阵的第i+1行第i+2列开始记录j个节点,并使j个节点的阶段属性c(i)为第五定值;

(3)读取权重矩阵第i+j+1行的节点,通过筛选备忘录查询与权重矩阵第i+j+1行的节点通讯的k个节点,定义为第i+j阶段,权重矩阵扩展为(i+j+1+k,i+j+1+k);

从权重矩阵的第i+j+1行第i+j+2列开始记录k个节点,并使这些节点的阶段属性c(i)为第五定值;在本实施例中,第五定值设为1。

(4)判断拓展后的权重矩阵是否记录到源节点,若是,则读取权重矩阵第一行第一个与节点基站通讯的节点,将其作为第一通讯节点;

通过筛选备忘录查询与第一通讯节点相互通讯的节点,将其作为第二通讯节点;

找出第二通讯节点在权重矩阵第i+j+1行中对应的列数n,并将第二通讯节点记录在权重矩阵的第二行第n列中;以此类推,记录与权重矩阵第一行其他节点相互通讯的节点;

(5)读取权重矩阵第i+j+1行第一个与节点基站通讯的节点,将其作为第一通讯节点;

通过筛选备忘录查询与第一通讯节点相互通讯的节点,将其作为第二通讯节点;

找出第二通讯节点在权重矩阵第i+j+1+k行中对应的列数n,并将第二通讯节点记录在权重矩阵的第i+j+2行第n列中;以此类推,记录与权重矩阵第i+j+1行其他节点相互通讯的节点;

判断是否记录到权重矩阵的最后一行,若是,则权重矩阵转换完成。

其中,采用人工智能得到最小权重的可到达路由以及求解最小权重函数的过程如下:

(1)初始化权重矩阵a(x,y):将权重矩阵第一行第一列的初始点设置为0,为为起始点,将权重矩阵中没有记录到的其他矩阵元素设置为inf,为为无穷大不可达到;

其中,x为权重矩阵的行序号,1≤x≤i+j+1+k;y为权重矩阵的列序号,1≤y≤i+j+1+k;

(2)生成一个与权重矩阵维数相同的路径矩阵path(x,y);

遍历权重矩阵,判断a(x,y)是否等于inf,

若是,则path(x,y)=a(x,y);

(3)分别对x、y、z进行赋值:

z=1:i+j+1+k;

x=1:i+j+1+k;

y=1:i+j+1+k;

其中,z为当前节点路径中可改变节点路径的其他待选节点;

判断a(x,y)是否小于a(x,z)+a(z,y),

若否,则重复步骤3;

若是,则对当前的节点路径长度进行修改:a(x,y)=a(x,z)+a(z,y);

对当前的节点路径进行修改:path(x,y)=path(x,z);

当遍历完赋值,路径矩阵中所为的节点路径为最小权重的可到达路由,根据最小权重的可到达路由和权重矩阵即可求解出最小权重函数的最小权重值。

最小能耗的可到达路由的确定过程是从节点基站开始,自下往上地寻找最小能耗路由节点的过程。由路径矩阵可得出,在从源节点到节点基站的最小能耗的可到达路由上,连接节点基站的节点为path(1,16)=2,为路径矩阵第1行第2列,对应节点顺序矩阵的第2个节点1。

在权重矩阵中,a(1,16)有两个数值,一个是位于第1行第2列的节点1,对应于路径矩阵第1行第2列,另一个是位于第1行第3列的节点8,对应于路径矩阵第1行第3列。

下一个最小能耗路由节点为path(2,16)=5,为路径矩阵第2行第5列,对应权重矩阵中第2行第5列的节点15,也即是节点顺序矩阵的第5个节点15;再下一个节点为path(5,16)=10,为路径矩阵第5行第10列,对应权重矩阵中第5行第10列的节点38,也即是节点顺序矩阵的第10个节点38;再下一个节点为path(10,16)=13,为路径矩阵第10行第13列,对应权重矩阵中第10行第13列的节点28,也即是节点顺序矩阵的第13个节点28;再下一个节点为path(13,16)=16,为路径矩阵第13行第16列,对应权重矩阵中第13行第16列的节点32,也即节点顺序矩阵的第16个节点32。

因为节点32连接源节点,因此,最小能耗的可到达路由的中间节点已经全部确认完毕,最终确定出的最小能耗的可到达路由为:s-32-28-38-15-1-sink,根据这些节点和最小能耗函数,即可计算出最小能耗值。由此可见,本实施例方法能够正确找到最小能耗的可到达路由和求解出最小能耗函数的最小能耗值。

实施例2

本实施例公开了一种计算设备,包括处理器以及用于存储处理器可执行程序的存储器,所述处理器执行存储器存储的程序时,实现实施例1项所述的基于人工智能的snd网络路由筛选方法

上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1