一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于蚁群算法在不均匀空间中的多定位方法与流程

2022-02-19 10:23:10 来源:中国专利 TAG:


1.本发明涉及区域定位算法技术领域,尤其涉及一种基于蚁群算法在不均匀空间中的多定位方法。


背景技术:

2.在现代城市生活中,单一的区域规划是无法满足人民正常生活需求的,例如道路、惠民设施、交通枢纽等,因此对于大多数目标设施需要规划多个区域进行定位选址,但在真实世界中,需要进行规划定位的区域大小不一致且城市中也存在面积不等、形状各异的不可用区域,基于上述情况首先需要解决的即是对不均匀空间的建模问题。
3.随着经济的发展,越来越多的人口集中于城市之中,近年来城市病问题也日益成为社会热点问题,而各类型城市病问题的产生并不能完全归结于城市人口的增长,相反科学的空间区域规划以及设施选址定位可以很大程度上缓解城市病难题,对于多种目标设施的进行选址定位时考虑其覆盖范围、各区域之间的路径代价以及设施所在位置对于附近区域的重要程度,综合以上多种影响因素进行定位选址有利于城市使用较少的开销满足城市居民的日常需求,缓解人地矛盾以及城市病难题。
4.在城市生活中部分区域状态在一定时间段内较为稳定,具有静态性质,而区域的有些状态会随时间、季节等各种因素而变化,例如区域人口集中程度等,其状态具有动态性质,因此综合考虑城市区域的静态、动态性质也是目标设施的定位点选址所面临的复杂情况之一,因此,本发明提出一种基于蚁群算法在不均匀空间中的多定位方法以解决现有技术中存在的问题。


技术实现要素:

5.针对上述问题,本发明的目的在于提出一种基于蚁群算法在不均匀空间中的多定位方法,该方法基于四叉树的思想对二维栅格空间进行划分,可同时适用于均匀空间和不均匀空间的建模问题,使用递归的思想对栅格空间进行划分时可生成一颗四叉树,均匀空间生成完全四叉树,不均匀空间生成不完全四叉树,在栅格空间生成的四叉树上使用蚁群算法以根节点作为起点进行栅格单元的选址定位,更符合城市场景中的空间划分和多定位点选址问题。
6.为了实现本发明的目的,本发明通过以下技术方案实现:一种基于蚁群算法在不均匀空间中的多定位方法,包括以下步骤:
7.步骤一
8.选择一个空间并在空间中根据各位置的重要程度以及其他影响因素赋予不同权值,抽象为一个二维矩阵;
9.步骤二
10.基于二维矩阵,使用四叉树的思想递归的进行划分,四叉树节点的值为所包含栅格单元权值的总和,若四叉树节点的值等于1,停止划分以该栅格单元为基础生成子叶节
点,若四叉树节点的值大于1,则继续划分,直到栅格单元大小等于实际所需的定位空间大小并生成子叶节点,最终得到一个不完全四叉树;
11.步骤三
12.初始化距离矩阵以及信息素矩阵,其中距离矩阵根据各个栅格单元的实际路径代价赋值,维度为[叶节点总数,叶节点总数],而信息素矩阵初值设为四叉树各节点值,维度为[4,4
layer
],其中layer为四叉树深度,并使用递归的思想赋值,不存在的节点在信息素矩阵中设为0,信息素矩阵类似下三角矩阵;
[0013]
步骤四
[0014]
初始化蚁群,每只蚂蚁以根节点作为起点,每个节点计算转移概率公式如式(1)所示:
[0015][0016]
式(1)中,代表第t代蚂蚁中第k只蚂蚁选择不同节点的概率,i表示当前节点,j表示可选择节点,η
ij
为启发因子,反映蚂蚁由节点i转移到节点j的启发程度,具体值由节点i~j之间路径代价的倒数得到,即d
ij
为距离矩阵中i~j节点之间的路径开销,α代表信息素的相对重要程度,β代表启发因子的相对重要程度;
[0017]
当每个计算得到每个可选节点的转移概率之后,以轮盘赌算法选择下个节点,设可选节点总数为n,在轮盘赌算法中每个可选节点j的个体选择概率如式(2)所示:
[0018][0019]
式(2)中,x
j
为下个可选节点,p(x
j
)由式(1)计算得出节点的转移概率;
[0020]
计算得到每个可选节点的个体选择概率之后,将所有节点的个体概率进行累加得到累积概率,累积概率公式如式(3)所示:
[0021][0022]
累积概率将可选节点的概率空间转换为线型区间,在区间[0,1]中产生一个随机数,随机数所在区间即为被选中的节点;
[0023]
式(1)中,τ
ij
(t)表示第t代蚂蚁在i~j路径上的信息素,每代信息素更新公式如式(4)所示:
[0024]
τ
ij
(t 1)=(1

ρ)τ
ij
(t) δτ
ij
ꢀꢀ
(4)
[0025]
式(4)中,ρ为信息素挥发系数,假设第t代总共m只蚂蚁选择节点j,则δτ
ij
是m只蚂蚁在节点i~j路径上释放的信息素量之和,δτ
ij
乘以挥发系数即ρδτ
ij
,δτ
ij
计算公式如
式(5)所示:
[0026][0027]
其中每只蚂蚁释放的信息素由式(6)计算:
[0028][0029]
式(6)中,q为信息素常数,l
k
表示多定位点间的总路径开销;
[0030]
步骤五
[0031]
当蚁群移动完成之后根据式(6)对信息素矩阵进行更新,将l
k
的计算转换为旅行商问题用以求得已选定节点间的最优路径,最优路径满足如下式(7)的约束:
[0032][0033]
即l
k
的最优路径问题由式(8)表示:
[0034][0035]
式(8)中,c
mn
为节点m到节点n间的距离;
[0036]
将l
k
更新并运行定位算法;
[0037]
重复以上步骤直至收敛。
[0038]
进一步改进在于:所述步骤一中,所选空间的重要程度以及其他影响选址的因素通过二维矩阵中的权值衡量,对于不可选择的空间则将权值设为0,即空间不可选。
[0039]
进一步改进在于:所述步骤二中,若根据递归划分栅格空间的方法生成四叉树,则在生成过程中所遇栅格单元权值为0,若四叉树节点停止,则生成的四叉树是一不完全四叉树,并在栅格单元权值为0时继续生成,生成的四叉树为一完全四叉树。
[0040]
进一步改进在于:所述步骤二中,根据不同应用场景选择不同的生成策略,不完全四叉树生成策略应用于静态确定的空间,同时减少算法所需空间复杂度,完全四叉树生成策略应用于动态不确定的空间,实时更新各栅格单元的同时更新四叉树各节点值。
[0041]
进一步改进在于:所述步骤四中,信息素的更新方式包括以下两种方式:
[0042]
第一种:每代蚂蚁经过的节点,都根据信息素更新公式更新该节点的信息素;
[0043]
第二种:根据每代蚂蚁所选择的路径,只使用信息素更新公式更新该路径的子叶节点,其路径上的非子叶节点等于其更新后的子叶结点信息素之和。
[0044]
进一步改进在于:信息素的第二种更新方式中,选中路径上的每个非子叶节点从叶节点更新信息素后开始回溯,递归的对该节点所包含叶节点的信息素进行累加。
[0045]
进一步改进在于:所述步骤五中,若在空间中只要求一个定位点,则l
k
设为一个常数进行蚁群智能的定位运算,若在空间中要求多个定位点,则l
k
赋初值之后每次使用蚁群进行寻址的过程中,使用蚁群优化路径算法得到各定位点间最小路径开销l
k
,并赋值进行寻址运算。
[0046]
本发明的有益效果为:本发明针对现实世界各区域的复杂性,使用四叉树进行自适应划分构建栅格模型的方法,并在此基础上提出了基于蚁群算法在不均匀空间中的多定位方法,以不均匀栅格单元为基础综合考虑各区域动静状态、覆盖范围、区域重要程度以及各定位点间最小路径开销等因素进行目标区域定位选址,在信息素矩阵结构、信息素更新方式、状态转移概率计算方法以及定位点约束条件等方面对蚁群算法进行了改进,提高了蚁群算法在用于区域定位方面的求解质量,更加符合在复杂城市区域进行多目标设施选址定位的需要。
附图说明
[0047]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0048]
图1是本发明的方法流程图;
[0049]
图2是本发明的完全四叉树划分栅格单元示意图;
[0050]
图3是本发明的不完全四叉树划分栅格单元示意图;
[0051]
图4是本发明的四叉树生成对应信息素矩阵示意图。
具体实施方式
[0052]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0053]
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”、“第四”等仅用于描述目的,而不能理解为指示或暗示相对重要性。
[0054]
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
[0055]
参见图1、2、3、4,本实施例提供了一种基于蚁群算法在不均匀空间中的多定位方法,包括以下步骤:
[0056]
在进行目标设施选址之前,首先需要对城市二维平面进行栅格空间建模,基于真实世界中城市状态的复杂情况,针对城市状态中受众人群数量,采用四叉树结构对城市空间划分为栅格单元,且目标设施具有一定的可移动性,可根据城市状态的变化进行移动,建模方式所划分栅格单元不同的颜色代表区域的权值大小,颜色越深受众人群越多。
[0057]
以某城市为例将该城市空间栅格单元化,首先获得该城市的二维空间图,设城市空间总长宽为(h,w),使用权值表示区域各影响因素的重要程度,权值为0表示不可选或重要程度较低,生成一个二维权值矩阵,设定栅格单元的长宽为(h,w),区域使用四叉树思想对城市二维空间进行递归的划分,假设为理想状态即均匀空间中递归划分栅格单元长宽直到等于(h,w)停止划分,则总单元格数为4
layer
‑1;
[0058]
栅格单元长宽公式如下:
[0059][0060][0061]
在不均匀空间中,可设定一个权重阈值,若空间区域受众人群数量低于阈值或栅格单元长宽等于(h,w)停止划分;
[0062]
基于栅格空间的划分过程生成四叉树,将根节点为整个栅格空间且节点值等于所有栅格单元权值之和,各栅格单元作为子叶节点,各叶节点的祖先节点的权值为所包含叶节点权值的累加。
[0063]
(一)蚁群定位算法选址目标设施
[0064]
完成城市空间划分以及四叉树结构建模之后,使用蚁群定位算法在划分好的栅格单元的基础上进行多定位点区域选址,首先根据四叉树节点以及栅格单元初始化信息素矩阵和距离矩阵,以根节点为蚁群起点,计算每个可选节点的转移概率,直到抵达子叶节点,作为定位点选址区域,每一代蚂蚁运行完成之后更新所选区域的信息素。
[0065]
1.在四叉树上运行蚁群定位算法进行目标设施选址之前需要初始化信息素矩阵和距离矩阵,如图4所示为四叉树的信息素矩阵初始化过程,将四叉树中各节点权值赋值为信息素矩阵中对应行列的值,信息素矩阵维度为[layer,4
layer
‑1],layer为四叉树叶节点总数,不存在的节点在信息素矩阵中设为0,根据图4所示为四叉树初始化信息素矩阵示意图,可以看出信息素矩阵形状类似下三角矩阵但不完全一致;
[0066]
距离矩阵为各城市栅格单元到其他栅格单元的路径开销代价,矩阵维度为[4
layer
‑1,4
layer
‑1],若城市中各栅格单元之间的路径开销难以计算,可计算两个格网中心点之间的欧式距离并存入距离矩阵。
[0067]
2.以四叉树根节点为蚁群起点,运行蚁群定位算法进行目标设施选址,每只蚂蚁在当前节点移动到下一节点之前都需计算所包含子节点的转移概率,转移概率计算公式如式(1)所示。
[0068][0069]
其中代表第t代蚂蚁中第k只蚂蚁选择不同节点的概率,i表示当前节点,j
表示可选择节点,η
ij
为节点i~j之间城市区域路径代价的倒数得到,即d
ij
为距离矩阵中i~j节点之间的路径开销,α代表信息素的相对重要程度,β代表启发因子的相对重要程度,当每个计算得到每个可选节点的转移概率之后,以轮盘赌算法选择下个节点,设可选节点总数为n,在轮盘赌算法中每个可选节点j的个体选择概率如式(2)所示:
[0070][0071]
其中x
j
为下个可选节点,p(x
j
)由式(1)计算得出节点的转移概率;
[0072]
计算得到每个可选节点的个体选择概率之后,将所有节点的个体概率进行累加得到累积概率,累积概率公式如式(3)所示:
[0073][0074]
累积概率将可选节点的概率空间转换为线型区间,在区间[0,1]中产生一个随机数,随机数所在区间即为被选中的节点;
[0075]
在式(1)中,τ
ij
(t)表示第t代蚂蚁在i~j路径上的信息素,每代信息素更新公式如式(4)所示:
[0076]
τ
ij
(t 1)=(1

ρ)τ
ij
(t) δτ
ij
ꢀꢀ
(4)
[0077]
其中ρ为信息素挥发系数,假设第t代总共m只蚂蚁选择节点j,则δτ
ij
是m只蚂蚁在节点i~j路径上释放的信息素量之和,δτ
ij
选择乘以挥发系数即ρδτ
ij
,δτ
ij
计算公式如式(5)所示:
[0078][0079]
其中每只蚂蚁释放的信息素由公式(6)计算:
[0080][0081]
其中q为信息素常数,l
k
表示多定位点间的总路径开销,每个已选节点有两种信息素更新方法:第一种为蚂蚁经过的节点,都根据信息素更新公式更新该节点的信息素,这种信息素更新方法直观,但会使得四叉树生成的信息素矩阵中父节点的信息素不等于其子节点信息素之和;第二种为根据蚂蚁所选择的路径,只使用信息素更新公式更新该路径的叶子节点,其路径上的非子叶节点等于其更新后的叶子结点信息素之和,因此选中路径上的每个非子叶节点需从叶节点更新信息素后开始回溯,递归的对该节点所包含叶节点的信息素进行累加;此种更新方法需从叶节点向上遍历更新所有祖先节点的信息素,较为复杂,但可以保证四叉树生成的信息素矩阵中父节点的信息素等于其子节点信息素之和。
[0082]
(二)目标设施间最优路径
[0083]
在运行定位算法进行目标设施选址的过程中,某代蚁群移动完成之后需根据式
(6)对信息素矩阵进行更新,因此需要求得该代蚁群选择目标设施所在区域间的最小路径开销l
k
,目标设施间的最优路径问题是一种旅行商问题,为求得最小路径开销l
k
,可使用蚁群算法进行最优路径规划,再根据距离矩阵计算所有目标设施路径开销之和l
k
,将l
k
的计算转换为旅行商问题用以求得已选定节点间的最优路径,式(7)表示距离矩阵中是否选定栅格单元:
[0084][0085]
即l
k
的最优路径问题由式(8)表示:
[0086][0087]
重复以上步骤直到蚁群定位算法收敛到所需的定位中即为目标设施所选址区域。
[0088]
基于蚁群算法在不均匀空间中的多定位方法在初始城市空间划分时综合考虑了目标设施覆盖范围以及受众人群数量两个方面的影响因素,并在后续的蚁群定位算法执行过程中以受众人群数量作为主要权值进行目标设施的选址定位,并在每代蚂蚁的定位过程中考虑多目标设施定位点间的路径开销,并作为参数加入到信息素矩阵的更新公式中,基于蚁群算法在不均匀空间中的多定位方法流程图。
[0089]
因此根据以上步骤运行蚁群算法的定位方法是综合考虑覆盖范围、受众人群数量以及路径代价等因素所得到的多目标设施选址结果。
[0090]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献