CN102158799A - 一种确定推荐经由地顺序的方法及系统 - Google Patents
一种确定推荐经由地顺序的方法及系统 Download PDFInfo
- Publication number
- CN102158799A CN102158799A CN2011100327984A CN201110032798A CN102158799A CN 102158799 A CN102158799 A CN 102158799A CN 2011100327984 A CN2011100327984 A CN 2011100327984A CN 201110032798 A CN201110032798 A CN 201110032798A CN 102158799 A CN102158799 A CN 102158799A
- Authority
- CN
- China
- Prior art keywords
- ground
- individuality
- destination
- unit
- adaptive 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.)
- Granted
Links
Images
Landscapes
- Navigation (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种确定推荐经由地顺序的方法及系统,其中的方法包括:根据实际地理数据信息计算现在地、经由地和目的地之间的花费矩阵;为由现在地、经由地和目的地组成的顺序序列进行编码并生成初始种群;对所编码的每一序列进行适应值评价;判断序列的适应值是否满足遗传算法的收敛条件,如果满足,则将适应值满足收敛条件的个体作为推荐经由地的结果输出;否则对个体进行遗传算法的算法操作后再次判断序列的适应值是否满足遗传算法的收敛条件;其中,遗传算法的操作包括选择、交叉、变异操作和加速收敛操作。本发明能够在现有个体适应值的基础上,利用探索空间的景象信息,插值新的有较好适应值的个体,删除进化缓慢的个体,加速算法的收敛。
Description
技术领域
本发明涉及使用遗传进化算法的位置服务技术领域,更为具体地,涉及一种确定在位置服务系统中推荐经由地顺序的方法及系统。
背景技术
基于位置服务系统根据用户的空间位置及时地提供与位置信息相关的移动信息服务,包括基于位置信息的交通信息查询,最优路径计算,推荐经由地顺序,商场打折信息、酒店和餐厅的周边信息查询服务,紧急救援,区域广告和位置的游戏和娱乐等。其中,推荐经由地顺序的功能是位置服务系统中一个比较常用的功能。
进化计算是通过模拟自然界中生物进化机制进行搜索的一种算法。进化计算的研究起源于20世纪50年代。1965年,John Henry Holland首次提出了人工遗传操作的重要性,并把这些应用于自然系统和人工系统中,大约在同一时期,Ingo Rechenberg和Hans-Paul Schwefel提出了进化策略,Lawrence J.Fogel提出了进化规划。进化算法包括遗传算法、进化程序设计、进化规划和进化策略等等,进化算法的基本框架还是简单遗传算法所描述的框架,但在进化的方式上有较大的差异,选择、交叉、变异、种群控制等有很多变化,进化算法的大致框图可描述如图1所示。
进化算法的收敛性有一些实证性结果,在Guenter Rudolph的《Convergence analysis of canonical genetic algorithms》中证明了在保存最优个体时通用的进化计算是收敛的,进化算法的很多结果是从遗传算法推理得到的。遗传算法对交叉操作要看重一些,认为变异操作是算法的辅助操作;而进化规划和进化策略认为在一般意义上说交叉并不优于变异,甚至可以不要交叉操作。
进化算法的应用主要集中在用传统的优化方法不能够解决或者不能够有效解决的问题上,也可以应用于位置服务系统中推荐经由地顺序的功能中。但是由于这是一个NP(Non-deterministic Polynomial,多项式复杂程度的非确定性)难题,即解决问题的算法时空复杂度都不是多项式级的。在车载导航系统中,推荐经由地顺序功能的理论模型是旅行推销员问题。旅行推销员问题(Traveling Salesman Problem,又称为旅行商问题、货郎担问题、TSP问题)是一个多局部最优的最优化问题,这个问题可以这样描述:有n个城市,一个推销员要从其中某一个城市出发,唯一走遍所有的城市,再回到他出发的城市,求最短的路线。
在位置服务系统中推荐经由地顺序的功能,稍加修改可以抽象为旅行推销员问题。旅行推销员问题被证明是NP最明显的算法就是穷举法,图2为穷举法解决TSP问题的示意图,如图2所示,采用穷举法解决旅行推销员问题即为寻找一切组合并取其最短。这种算法的排列数为O(n!)(其中n为节点个数),用动态规划技术,可以在O(n22n)时间内解决此问题。虽然这仍然是指数级的,但要比O(n!)快得多。
在车载导航系统中,现有的解决推荐经由地顺序功能的技术解决方案,一种是仅限于很少的经由地数目,实现计算经由地之间的花费后排列组合,求解出顺序。另一种,利用直线距离代替实际花费,按照从离当前经由地直线距离,确定最近的另一个经由地,以此类推,确定顺序。现有的技术解决方案,没有很好的解决推荐经由地顺序的功能。
进化计算可以在有限的常数项O(m)时空复杂度内解决传统的TSP问题,但是由于进化计算的固有缺陷,算法很容易造成过早收敛到局部收敛而非全局最优解、种群多样性降低等现象,从而造成算法收敛缓慢、收敛到局部最优解或者不收敛。
从上述确定推荐经由地顺序的解决方案可以看出,现有的解决方案不能完全在性能和效果上完全满足用户对位置服务系统要求,并且随着经由地数目的增加,现有的算法收敛很慢,因此,亟需一种在性能和效果都可以满足需求的技术方案来解决这个问题。
发明内容
鉴于上述问题,本发明的目的是提供一种用加速收敛的进化计算确定在位置服务系统中推荐经由地顺序的方法及系统。
根据本发明的一个方面,提供了一种确定推荐经由地顺序的方法,包括:
根据实际地理数据信息计算现在地、经由地和目的地之间的花费矩阵;
为由现在地、经由地和目的地组成的位置序列进行编码生成个体和由个体组成的初始种群;
对所编码的每一序列个体进行适应值评价;
判断序列个体的适应值是否满足所使用的遗传算法的收敛条件,如果满足,则将适应值满足收敛条件的个体作为推荐经由地的结果输出;否则对所述个体进行所使用的遗传算法的操作,形成下一代种群后,再次判断个体的适应值是否满足遗传算法的收敛条件;
其中,所述个体进行遗传算法的操作包括:
根据所述个体的适应值评价对所述个体进行选择、交叉、变异;
对变异后的个体进行通过个体适应值信息利用插值方法或者逼近方法获得探索空间的景象信息进而找到全局最优个体的加速收敛操作。
根据本发明的另一方面,提供了一种确定推荐经由地顺序的系统,包括:
花费矩阵计算单元,用于根据实际地理数据信息计算现在地、经由地和目的地之间的花费矩阵;
编码及种群初始化单元,用于为由现在地、经由地和目的地组成的位置序列进行编码生成个体和由个体组成的初始种群;
适应值评价单元,用于对所述编码及种群初始化单元所编码的每一由现在地、经由地和目的地组成的序列个体进行适应值评价;
收敛判断单元,用于根据所述适应值评价单元所作出的适应值评价判断个体的适应值是否满足所使用的遗传算法的收敛条件;
推荐经由地输出单元,用于在所述判断收敛单元判断为满足所述收敛条件时,将适应值满足收敛条件的个体作为推荐经由地的结果输出;
遗传进化计算单元,用于对不满足所述收敛条件的个体进行所使用的遗传算法的操作,其中
所述遗传进化计算单元包括:
选择、交叉、变异单元用于根据个体的适应值评价对所述个体进行选择、交叉、变异;
加速收敛单元用于对变异后的所述个体进行通过个体适应值信息利用插值方法或者逼近方法获得探索空间的景象信息进而找到全局最优个体的加速收敛操作。
利用上述根据本发明的利用加速收敛的进化计算确定推荐经由地顺序的方法及系统,在利用现有个体适应值的基础上,利用探索空间的景象信息,在整个问题的探索空间插值新的有较好适应值的个体,删除进化缓慢的个体,加速算法的收敛。本发明既保证了在整个探索空间上的局部深度探索加速寻找全局最优解,又没有破坏整个探索空间的进化信息,是一种低花费高回报的技术改进方法。并且,在本发明中还利用实际地理信息数据形成的多个经由地之间的花费矩阵,高拟合的逼近了实际花费矩阵,结合加速的进化计算方法高效解决了在位置服务系统中推荐经由地顺序的技术难题。
本发明适用于基于位置服务系统,特别是车载导航系统,实现推荐经由地顺序功能的应用。
为了实现上述以及相关目的,本发明的一个或多个方面包括后面将详细说明并在权利要求中特别指出的特征。下面的说明以及附图详细说明了本发明的某些示例性方面。然而,这些方面指示的仅仅是可使用本发明的原理的各种方式中的一些方式。此外,本发明旨在包括所有这些方面以及它们的等同物。
附图说明
通过参考以下结合附图的说明及权利要求书的内容,并且随着对本发明的更全面理解,本发明的其它目的及结果将更加明白及易于理解。在附图中:
图1示出了进化计算的一般流程示意图;
图2示出了穷举法解决TSP问题的示意图;
图3示出了本发明确定推荐经由地顺序的方法流程示意图;
图4~图8示出了本发明计算经由地之间花费矩阵过程中的现在地、经由地和目的地中任意两点间实际地理信息数据的选择、点的确定以及坐标系变换的示意图;
图9示出了进化计算的探索空间示意图;
图10示出了探索空间的景象信息示意图;
图11示出了本发明确定推荐经由地顺序过程中加速遗传算法收敛的流程示意图;
图12示出了验证本发明De Jong Function1平均收敛比较示意图;
图13示出了验证本发明De Jong Function1最优收敛比较示意图;
图14示出了本发明确定推荐经由地顺序的系统的逻辑结构框图。
在所有附图中相同的标号指示相似或相应的特征或功能。
具体实施方式
以下将结合附图对本发明的具体实施例进行详细描述。
为了完全在性能和效果上实现推荐经由地顺序的目的,满足位置服务系统的需求,本发明提供一种用加速收敛的进化计算确定推荐经由地顺序的方法,利用实际的地理数据信息作为实际的输入,有效地逼近经由地之间的实际花费,利用逼近/插值方法有效的加快了技术方案的收敛。
本发明提出了一种用加速收敛的进化计算确定在位置服务系统中推荐经由地顺序的方法,这种方法在利用现有适应值的基础上,利用探索空间的景象信息,在整个问题的探索空间,插值新的有较好适应值的个体,删除进化缓慢的个体,加速算法的收敛。这种方法既保证了在整个探索空间上的局部深度探索加速寻找全局最优解,又没有破坏整个探索空间的进化信息,可以说是一种低花费高回报的技术改进方法。利用实际地理信息数据形成的现在地、多个经由地和目的地之间的花费矩阵,高拟合的逼近了实际花费矩阵,结合加速的进化计算方法高效解决了在位置服务系统中推荐经由地顺序的技术难题。
按照进化计算的一般步骤,结合在导航系统中解决推荐经由地顺序的具体应用,本发明确定推荐经由地顺序的方法流程如图3所示:
S310:根据实际地理数据信息计算现在地、经由地和目的地之间的花费矩阵;
S320:为现在地、经由地和目的地组成的位置序列进行编码生成个体和由个体组成的初始种群;
S330:对所编码的每一序列个体进行适应值评价;
S340:判断序列个体的适应值是否满足所使用的遗传算法的收敛条件,如果满足,则转至步骤S350;如果不满足,则顺序进行步骤S360~步骤S390的流程对个体进行所使用的遗传算法的操作,形成下一代种群,然后再次进行适应值评价;
S350:将适应值满足收敛条件的个体作为推荐经由地的结果输出;
S360:对适应值不满足收敛条件的个体进行所使用的遗传算法的选择操作,
S370:对所选择的个体进行所使用的遗传算法的交叉操作;
S380:对所交叉的个体进行所使用的遗传算法的变异操作;
S390:对变异后的个体进行加速的进化计算;通过个体适应值信息利用插值方法或者逼近方法获得探索控件的景象信息进而保留精英个体,确定找到全局最优解。
下面将对图3所示流程中的具体细节进行详细说明。
图4~图8示出了本发明计算现在地、经由地和目的地之间花费矩阵过程中的现在地、经由地和目的地中任意两点间实际地理信息数据的选择、点的确定以及坐标系变换的示意图,也就是图3中步骤S310的更为详细的花费矩阵计算流程。本发明中的花费矩阵指的是现在地、经由地和目的地之间的矩阵,现在地、若干个经由地和目的地之间都需要计算花费,这个花费可以是现在地、若干个经由地和目的地之间的时间或者距离,也可以是现在地、若干个经由地和目的地之间的其它花费。在下面的具体实施方式中,将以计算现在地和目的地之间的距离花费矩阵为例进行示例性说明。
如图4~图8所示,在步骤S310计算经由地之间花费矩阵的过程中,具体包括:
S311:根据n个点的坐标建立n×n的两点间花费矩阵,其中n为坐标的点数。
S312:从需要确定经由地顺序的原始数据中取得现在地和目的地以及两点间的用于路径计算的Mesh,并将其表示在步骤S311所建立的花费矩阵中。其中Mesh的含义是实际地理数据中的一块数据,在图4所示的坐标示意图中,一个斜线格所代表的数据表示所取得的Mesh,现在地记为A,目的地记为B。
具体到车载导航系统的应用来讲,在取得Mesh的过程中,现在地坐标即为车辆坐标,目的地坐标即为目的地坐标。通过车辆坐标、目的地坐标和若干经由地坐标计算坐标节点之间的距离,即形成上述现在地、若干个经由地和目的地之间的距离花费矩阵。也就是说,在计算距离花费矩阵时,根据实际的数据地图格式存储的地理数据信息,计算出实际的直线距离之和,从而形成经由地之间的花费矩阵。
S313:确定步骤S312的花费矩阵中各个Mesh的几何中心点的坐标,如图5中所示的各个Mesh中的实心黑点。
S314:对步骤S313中确定了现在地和目的地以及各个Mesh的几何中心点的坐标的花费矩阵进行坐标系的变化,以现在地A为原点,以现在地A和目的地B所在的直线为x轴建立坐标系,如图6所示。
S315:以Mesh的宽度为单位,从原点(现在地A)开始将x轴划分为若干个区间,并在每个区间内选取与x轴距离最短的点。图7中空心的点位即为选取出的每个区间内与x轴距离最短的点。
S316:通过现在地A、每个区间内与x轴距离最短的点以及目的地B确定现在地A至目的地B的距离。具体为:将现在地A和上述每个区间内与x轴距离最短的点沿x轴方向依次连接,最终与目的地B相连,所形成的线段长度即为现在地A至目的地B的距离。在图8所示的坐标矩阵示意图中,A->P1->P2->P3->P4->P5->P6->B,这些在步骤S315中所选取的距离x轴最短的空心点位连成的线段的长度即为A到B的距离。
按上述步骤S311~S316的流程,能够计算出n个坐标点中任意两点间的距离,放到矩阵中即可。
在上述步骤S311~S316中对于经由地之间的花费矩阵的选择和逼近处理的过程,在具体的车载导航系统的应用中,即为根据不同地图格式的道路数据信息,对于经由地之间的花费矩阵进行逼近,目的是尽可能的使度量两点(现在地和目的地)间的实际距离与所计算的路径信息更加贴近。
在确定了经由地之间的最终花费矩阵之后,就需要对所有可能的经由地顺序进行个体的编码。在本发明确定推荐经由地顺序的具体应用中,个体是指现在地、经由地、目的地顺序的排列,现在地和目的地是组成个体的第一个和最后一个元素,经由地的顺序可以任意组合。具体到图4所示的实施例,个体就是指自现在地A起至目的地B止的每一个经由地顺序的组合,个体的编码指的是现在地、经由地和目的地的序号的排列(序号不可重复)。当然,图4中的现在地A和目的地B也可以视为两个经由地,或者一个是现在地一个是经由地,或者一个是经由地一个是目的地,任意两点间的花费矩阵都可以通过本发明所提供的上述方法确定。
在确定推荐经由地顺序的数据处理过程中,由于现在地和目的地是确定(不能改变)的,因此,个体DNA中第一个基因和最后一个基因是不变的。
在现有的个体编码实现过程中,多采用二进制对个体进行编码,但由于经由地的个数是不固定的,使用二进制编码需要确定每个基因编码的长度;并且二进制编码在进行变异时实现复杂、变异后可能出现重复的经由地序号,而为了避免重复经由地序号情况的发生,还需要在变异后将二进制转换为整数来进行处理,处理过程比较繁琐。因此,为了使编码和后期数据处理更加容易实现,在本发明的一个具体实施方式中,采用整数(十进制形式)代替二进制。
具体到车载导航系统的应用来讲,对经由地顺序进行个体的编码也就是对以坐标点表示的经由地进行个体的编码,即进化计算中的个体适应值编码,能够将车辆位置、目的地位置、经由地位置以某种形式的编码形式表达出来,而且要求不产生过多的编码冗余,易于进化计算的各种操作和适应度函数的评价计算。因此定义个体编码为十进制形式,即
Individual={xi} i=0,1,...,n
具体的二进制形式,例如x0=123、x1=231、x2=312...,这样的十进制形式,其十进制值为花费矩阵的下标,这样的定义利于加快适应值函数的计算。
其中,对于个体编码适应值计算,由个体编码的十进制直接定位花费矩阵计算其适应值对于适应度函数的定义,指的是车辆位置->经由地序列->目的地的花费之和,即有个体编码的十进制表示可以直接定位到花费矩阵的下标,可以减小适应值评价计算的计算量。
在进行种群的初始化之前,需要先根据系统的运算能力以及对计算结果的要求等因素确定种群的大小,在本具体实施方式中,将种群的大小确定为包含30个个体。
在确定了种群大小之后,就随机产生第一代种群,其中需要以传入的经由地的排列作为其中的一个个体。
选择操作指的是赌轮选择方法和精英保留机制的选择方法,但是在不同的应用问题中可以采用不同的选择策略,本具体实施方式中仅以赌轮选择方法为例进行示例性说明,但该示例性说明不应理解为对于本发明的限制。
在个体的选择方面,因为要求的个体的适应值是一个最小值,所以在使用赌轮选择方式进行选择时,需要根据每个个体适应值的倒数来确定每个个体被选中的概率。交叉操作指的是用单点交叉的策略产生新个体的方法,但是在不同的应用问题中可以采用不同的交叉策略。在本具体实施方式中,采用基于整数编码进行单点交叉,交叉率为90%。由于除了发生交叉变换的基因会变,为了防止出现重复的基因,发生交叉变换以外的基因也会变,因此,可以固定需要进行交叉变换的基因位。
具体地,作为示例,当DNA中的基因个数是2和3时,基因的排列数为2和6。此时认为当基因个数是2和3时,在30个个体中会缺少某一个基因排列的事件是小概率事件。所以当基因个数是2和3时,不进行交叉处理。对基因个数大于3的情况,进行交叉变换的基因位可以固定为除现在地、目的地以外的表示经由地的基因位。
变异操作指的是基于单点变异策略产生新个体的方法,但是在不同的应用问题中可以采用不同的变异策略。在本具体实施方式中,采用随机交换两个基因位的方法来进行变异,变异率为10%,同样,在该具体实施方式中所采用的变异策略不应理解为对于本发明的限制。
传统的进化计算在评价和算法迭代过程中,只依据适应值来进行,而忽视了探索空间的景象信息。如图9所示进化计算的探索空间和图10所示的探索空间的景象信息。如果可以从适应值信息中利用插值或者逼近获得探索空间的景象信息,就可以根据景象信息,找到全局最优解。
基于上述分析,本发明采用加速算法收敛的方法根据景象信息找到确定经由地顺序的全局最优解。具体而言,本发明所采用的加速收敛算法指的是在整个探索空间或者某个个体最优局部区域,用插值或者逼近的方法,寻找全局或者局部最优解的过程。其中的插值方法可以采用Lagrange(拉格朗日)插值法、Newton(牛顿)插值法、最小二乘逼近法等,回归整个探索空间或者某个个体最优局部区域,在利用空间的梯度信息,求出最优解。
简而言之,在本发明利用加速收敛的进化计算确定在位置服务系统中推荐经由地顺序的方法中,加速的基本思想为:进化计算的探索空间是根据优化目标和优化变量的个数来确定的多维的空间,利用插值方法或者逼近方法获得探索空间的景象信息,进而利用景象信息确定每个世代中的最优个体,加速进化计算的收敛。
在下面的具体实施方式表述中,以牛顿插值法来确定空间的景象信息为例来对寻找全局或者局部最优解的过程进行说明,当然,本领域技术人员应当知晓,确定空间的景象信息的方法不限于牛顿插值法,在不同的应用问题中可以采用不同的插值或者逼近的方法,此项说明不应理解为对于本发明的限制。
下面先对牛顿插值法做简单概述:
牛顿插值,求多项式pn(x)满足插值条件:pn(xi)=f(xi)=fi i=0,1,2,...,n(5.1-1)
其中点xi∈[a,b]i=0,1,2,...,n,称为插值节点,区间[a,b]称为插值区间,pn(x)称为插值多项式
牛顿插值的基函数为:
即将pn(x)表示为:
由插值条件:pn(xi)=f(xi)=fi i=0,1,2,...,n可得
c0=f0
...
称为i阶差商(i=1,2,...,n)
下面说明牛顿插值在本发明进化计算加速方法中的应用。首先选取在上一次迭代种群中适应值最高的若干个个体进行相应的数值转换。其中,选取的个体数量可以根据系统的需求以及处理能力灵活确定,在本具体实施例中选取适应值最高的3个个体进行相应的数值转换。然后对转换后的数值采用牛顿插值法求出离散数据的近似函数。然后对此函数求出导数为0的极值点,距离这个极值点最近的符合种群个体要求的点即作为加速算法的输出。
在进化计算的种群中,个体的表示是以数组的方式呈现出来的。因此需要把个体转换成插值方法能够使用的数值xi,上述相应的数值转换即为将所选取的适应值最高的3个个体转换为插值方法所使用的数值。考虑到个体的数组大小最大只有6个,所以可以把每个个体转换成10进制数作为牛顿插值法的插值节点。
例如:
如下个体
6 | 4 | 3 | 2 | 5 | 1 |
转换成unsigned long a=643251;
本发明利用牛顿插值法确定空间的景象信息,然后根据适应值和所确定的空间的景象信息进行加速的进化计算,这样就能够使遗传算法(GeneticAlgorithm,简称GA)加速收敛,更快地确定全局最优解,高效达到在位置服务系统中推荐经由地顺序的目的。
图11为本发明确定推荐经由地顺序过程中加速遗传算法收敛的流程示意图,如图11所示,加速遗传算法的收敛主要包括排序、筛选、插值、求导和返回5个步骤。具体地,在确定了种群中的个体以及个体的适应值后,首先需要对种群中的个体根据其适应值的大小进行排序(排序步骤S391);然后挑选出排序中位置靠前若干个个体,进行相应的数值转换(筛选步骤S392);接着对于转换后的数值进行插值,得出近似函数(插值步骤S393);进而通过求导得出近似函数的极值(求导步骤S394);最后将距离极值点最近的符合要求的个体作为输出返回(返回步骤S395)。
在筛选步骤S392中,可以根据系统的需求以及处理能力灵活确定所选取的排序中位置靠前的个体数量,在本发明的一个具体实施方式中,选取排序位置中靠前的3个个体进行插值方法所需要的数据形式的数值转换。
在上述对本发明的具体实施方式的表述中,部分算法的参数如下表所示:
但是,应当明了,本具体实施方式的上述参数设置只是为了说明本发明的一个实施例而用,在本发明的其他具体实施过程中还可以根据系统条件、用户需求等因素对参数进行合理的选择和修改,上述示例性的参数设置不应理解为对于本发明的限制。
通过上述对本发明具体实施方式的说明,可以看出,本发明所提供的确定推荐经由地顺序的方法,将进化计算的方法引入到在位置服务系统中推荐经由地顺序的功能上来,不仅扩展了进化计算的应用领域,还创新性地利用Newton插值方法获得了探索空间的景象信息,进而利用景象信息确定每个世代中的最优个体,加速了进化计算的收敛,提高了进化计算探索的效率。并且,在两个现在地、经由地和目的地之间的花费确定方面,利用地图数据信息近似逼近了现在地、经由地和目的地中任意两个地点间的花费,取代传统的利用直线距离的方法,从而使现在地、经由地和目的地之间的花费矩阵更加符合实际的情况,为获得更加准确的推荐经由地顺序提供了良好的地理数据基础。
为了进一步说明本发明的应用效果,在本发明的具体实施方式中,还进一步利用测试函数对本发明的应用效果进行了测试函数和模拟程序的实验验证,图12和图13分别示出了利用De Jong Function1验证本发明的平均收敛比较示意图和利用Jong Function1验证本发明的最优收敛比较示意图,将普通的遗传算法(GA)和利用本发明进行利用插值或者逼近方法寻找全局或者局部最优解的加速收敛的遗传算法的收敛效果进行直观地对比。
在图12和图13中,GA-N代表普通的GA,用“-------”表示;GA-LR表示Langrage代表二次多项式局部插值的GA,用“-.-.-.-”表示;GA-LS代表用最小二乘法线性局部逼近的GA,用“——”表示,通过上述验证可以看出,本发明所提供的这种进行利用插值或者逼近方法寻找全局或者局部最优解的加速收敛的遗传算法能够有效加速GA的收敛。
在模拟程序中的验证过程中,利用本发明的上述技术方案,优化下列花费矩阵的TSP问题,每个世代的最优适应值,平均适应值和标准差,模拟程序的验证数据见下表,加速的方案到第10代,达到标准差为0,没有加速处理的方案到第18代,标准差才达到为0。
优化的矩阵:
模拟程序的验证数据表格
通过以上验证图示和数据可以更为明确的看出,本发明提供的用加速收敛的进化计算确定在位置服务系统中推荐经由地顺序的方法,能够在现有适应值的基础上,利用探索控件的景象信息,在整个问题的探索空间,插值新的有较好适应值的个体,删除进化缓慢的个体,加速算法的收敛,从而高效解决了在位置服务系统中推荐经由地顺序的技术难题。
与上述确定推荐经由地顺序的方法相对应,本发明还提供一种确定推荐经由地顺序的系统1400,用以在利用现有适应值的基础上,利用探索空间的景象信息,在整个问题的探索空间,插值新的有较好适应值的个体,删除进化缓慢的个体,加速算法的收敛,为位置服务系统推荐经由地顺序。
图14为本发明确定推荐经由地顺序的系统的逻辑结构框图,如图14所示,确定推荐经由地顺序的系统1400包括花费矩阵计算单元1410、编码及种群初始化单元1420、适应值评价单元1430、收敛判断单元1440、遗传进化计算单元1450和推荐经由地输出单元1460,其中遗传进化计算单元1450进一步包括选择、交叉、变异单元1451和加速收敛单元1452。
具体地,花费矩阵计算单元1410用于根据实际地理数据信息计算经由地之间的花费矩阵;编码及种群初始化单元1420用于为经由地个体进行编码并生成初始种群;适应值评价单元1430用于对编码及种群初始化单元1420所编码的每一经由地个体进行适应值评价;收敛判断单元1440用于根据适应值评价单元1430所作出的适应值评价判断经由地个体的适应值是否满足遗传算法的收敛条件,如果满足,则由推荐经由地输出单元1460将适应值满足收敛条件的个体作为推荐经由地的结果输出;否则由遗传进化计算单元1450对个体进行遗传算法的进化计算,然后再由收敛判断单元1440判断经由地个体的适应值是否满足遗传算法的收敛条件。
选择、交叉、变异单元1451用于根据个体的适应值评价对所述个体进行选择、交叉、变异操作,加速收敛单元1452用于对变异后的个体进行通过个体适应值信息利用插值或者逼近获得探索空间的景象信息、进而找到全局最优个体的加速收敛操作。
更为具体地,加速收敛单元还包括排序单元、优选个体数值转换单元、插值单元、近似函数处理单元和新种群个体确定单元(图中未示出),其中:
排序单元,用于对每一代种群中的个体根据其适应值的大小进行排序;
优选个体数值转换单元,用于挑选出所述排序中位置靠前的若干个个体,并将其包含的位置信息转换为相应的数值;
插值单元,用于对于转换后的数值进行插值,得出近似函数;
近似函数处理单元,用于对所述插值单元得出的近似函数进行求导,得到近似函数的极值;
新种群个体确定单元,用于将距离所述极值点最近的符合要求的个体作为所述下一代种群的个体。
另外,花费矩阵计算单元还具体包括地理数据信息获取单元和数据选择处理单元(图中未示出),其中,地理数据信息获取单元用于获取实际地理数据信息;数据选择处理单元用于对所述地理数据信息获取单元获取的所述实际地理数据信息进行数据选择,根据所述被选择数据对现在地、经由地和目的地之间的花费数据用曲线进行逼近处理,形成新的现在地、经由地和目的地之间的花费数据,由所述新的花费数据形成所述花费矩阵。
由于本发明所提供的确定推荐经由地顺序的系统是与上述确定推荐经由地顺序的方法所对应的,因此,在图14所示的框架结构下,具体结构单元的工作方式和细化结构也和上述方法所对应,如选择、交叉、变异单元1451的选择、交叉、变异策略,加速收敛单元1452的插值和逼近方法的选择等,本领域技术人员根据上述对本发明确定推荐经由地顺序的方法的具体实施方式的表述,就能够推出确定推荐经由地顺序的系统的更为细化的逻辑结构和工作方式,因此,在本发明的描述中,就不再对推荐经由地顺序的系统1400的细化结构和工作方式等做更详细的表述。毋庸置疑,能够根据上述对本发明确定推荐经由地顺序的方法的具体实施方式的表述所推测出来的所有可能的系统实现形式也都应属于本发明所要求的保护方案。
如上参照附图以示例的方式描述根据本发明的确定推荐经由地顺序的方法及系统。但是,本领域技术人员应当理解,对于上述本发明所提出的确定推荐经由地的方法及系统,还可以在不脱离本发明内容的基础上做出各种变形和改进,比如对经由地个体的编码形式、交叉策略、选择策略、变异策略、插值法的选择以及具体参数的设定等等,都可以根据不同的应用环境而采用不同的编码形式、进化策略或则进化参数。因此,本发明的保护范围应当由所附的权利要求书的内容确定。
Claims (10)
1.一种确定推荐经由地顺序的方法,包括:
根据实际地理数据信息计算现在地、经由地和目的地之间的花费矩阵;
为由现在地、经由地和目的地组成的位置序列进行编码生成个体和由个体组成的初始种群;
对所编码的每一个个体进行适应值评价;
判断个体的适应值是否满足所使用的遗传算法的收敛条件,如果满足,则将适应值满足收敛条件的个体作为推荐经由地的结果输出;否则对所述个体进行所使用的遗传算法的操作,形成下一代种群,再次判断个体的适应值是否满足遗传算法的收敛条件;
其中,所述对所述个体进行操作包括:
根据所述个体的适应值评价对所述个体进行选择、交叉、变异;
对变异后的个体进行通过个体适应值信息利用插值方法或者逼近方法获得探索空间的景象信息进而找到全局最优个体的加速收敛操作。
2.如权利要求1所述的确定推荐经由地顺序的方法,其中,所述加速收敛操作包括:
对每一代种群中的个体根据其适应值的大小进行排序;
挑选出所述排序中位置靠前的若干个个体,将其包含的位置信息转换为相应的数值;
对于转换后的数值进行插值,得出近似函数;
对所述近似函数进行求导,得出近似函数的极值;
将距离所述极值点最近的符合要求的个体作为所述下一代种群的个体。
3.如权利要求1所述的确定推荐经由地顺序的方法,其中,所述根据实际地理数据信息计算现在地、经由地和目的地之间的花费矩阵包括:
获取实际地理数据信息;
对所述实际地理数据信息进行数据选择,根据所述被选择数据对现在地、经由地和目的地之间的花费数据用曲线进行逼近处理,形成新的现在地、经由地和目的地之间的花费数据,由所述新的花费数据形成所述花费矩阵。
4.如权利要求3所述的确定推荐经由地顺序的方法,其中,所述根据实际地理数据信息计算现在地、经由地和目的地之间的花费矩阵的步骤具体包括:
根据n个点的坐标建立n×n的两点间花费矩阵,其中n为包括现在地、经由地和目的地在内的坐标点的个数;
从需要确定经由地顺序的原始数据中取得现在地和目的地以及两点间的用于路径计算的Mesh,并将其表示在所建立的花费矩阵中;
确定所述花费矩阵中各个Mesh的几何中心点的坐标;
对确定了现在地和目的地以及各个Mesh的几何中心点的坐标的花费矩阵进行坐标系的变化,以现在地为原点,以现在地和目的地所在的直线为x轴建立坐标系;
以Mesh的宽度为单位,从原点开始将x轴划分为若干个区间,并在每个区间内选取与x轴距离最短的点;
通过现在地、每个区间内与x轴距离最短的点以及目的地确定现在地至目的地的花费。
5.如权利要求1所述的确定推荐经由地顺序的方法,其中,在所述选择操作中,采用赌轮选择方法和精英保留机制的选择方法。
在使用赌轮盘选择方式进行选择时,根据每个个体适应值的倒数来确定每个个体被选中的概率。
6.如权利要求1所述的确定推荐经由地顺序的方法,其中,在所述交叉操作中,采用基于整数编码进行单点交叉的交叉策略。
7.如权利要求1所述的确定推荐经由地顺序的方法,其中,在所述变异操作中,采用随机交换两个基因位的方法来进行变异。
8.一种确定推荐经由地顺序的系统,包括:
花费矩阵计算单元,用于根据实际地理数据信息计算现在地、经由地和目的地之间的花费矩阵;
编码及种群初始化单元,用于为由现在地、经由地和目的地组成的位置序列进行编码生成个体和由个体组成的初始种群;
适应值评价单元,用于对所述编码及种群初始化单元所编码的每一由现在地、经由地和目的地组成的序列个体进行适应值评价;
收敛判断单元,用于根据所述适应值评价单元所作出的适应值评价判断个体的适应值是否满足所使用的遗传算法的收敛条件;
推荐经由地输出单元,用于在所述判断收敛单元判断为满足所述收敛条件时,将适应值满足收敛条件的个体作为推荐经由地的结果输出;
遗传进化计算单元,用于对不满足所述收敛条件的个体进行所使用的遗传算法的操作,其中
所述遗传进化计算单元包括:
选择、交叉、变异单元用于根据个体的适应值评价对所述个体进行选择、交叉、变异;
加速收敛单元用于对变异后的所述个体进行通过个体适应值信息利用插值方法或者逼近方法获得探索空间的景象信息进而找到全局最优个体的加速收敛操作。
9.如权利要求8所述的确定推荐经由地顺序的系统,其中,所述加速收敛单元包括:
排序单元,用于对每一代种群中的个体根据其适应值的大小进行排序;
优选个体数值转换单元,用于挑选出所述排序中位置靠前的若干个个体,并将其包含的位置信息转换为相应的数值;
插值单元,用于对于转换后的数值进行插值,得出近似函数;
近似函数处理单元,用于对所述插值单元得出的近似函数进行求导,得到近似函数的极值;
新种群个体确定单元,用于将距离所述极值点最近的符合要求的个体作为所述下一代种群的个体。
10.如权利要求8所述的确定推荐经由地顺序的系统,其中,所述花费矩阵计算单元包括:
地理数据信息获取单元,用于获取实际地理数据信息;
数据选择处理单元,用于对所述地理数据信息获取单元获取的所述实际地理数据信息进行数据选择,根据所述被选择数据对现在地、经由地和目的地之间的花费数据用曲线进行逼近处理,形成新的现在地、经由地和目的地之间的花费数据,由所述新的花费数据形成所述花费矩阵。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110032798 CN102158799B (zh) | 2011-01-24 | 2011-01-24 | 一种确定推荐经由地顺序的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110032798 CN102158799B (zh) | 2011-01-24 | 2011-01-24 | 一种确定推荐经由地顺序的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102158799A true CN102158799A (zh) | 2011-08-17 |
CN102158799B CN102158799B (zh) | 2013-07-31 |
Family
ID=44439924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110032798 Active CN102158799B (zh) | 2011-01-24 | 2011-01-24 | 一种确定推荐经由地顺序的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102158799B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105069518A (zh) * | 2015-07-15 | 2015-11-18 | 西安交通大学 | 一种基于可变长基因遗传算法的物资调度方法及系统 |
CN111209679A (zh) * | 2020-01-13 | 2020-05-29 | 广东工业大学 | 一种基于遗传算法的土壤重金属含量空间插值方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020169563A1 (en) * | 2000-08-10 | 2002-11-14 | De Carvalho Ferreira Maria Candida | Linear and non-linear genetic algorithms for solving problems such as optimization, function finding, planning and logic synthesis |
CN101398901A (zh) * | 2008-10-31 | 2009-04-01 | 中国航空无线电电子研究所 | 用于辅助导航的快速图像匹配方法 |
CN101520858A (zh) * | 2008-02-28 | 2009-09-02 | 北京航空航天大学 | 一种求解旅行商问题的蚁群优化-微分进化融合方法 |
CN101853294A (zh) * | 2010-05-21 | 2010-10-06 | 中国科学院地理科学与资源研究所 | 一种基于遗传算法的多模式多标准路径选择方法 |
-
2011
- 2011-01-24 CN CN 201110032798 patent/CN102158799B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020169563A1 (en) * | 2000-08-10 | 2002-11-14 | De Carvalho Ferreira Maria Candida | Linear and non-linear genetic algorithms for solving problems such as optimization, function finding, planning and logic synthesis |
CN101520858A (zh) * | 2008-02-28 | 2009-09-02 | 北京航空航天大学 | 一种求解旅行商问题的蚁群优化-微分进化融合方法 |
CN101398901A (zh) * | 2008-10-31 | 2009-04-01 | 中国航空无线电电子研究所 | 用于辅助导航的快速图像匹配方法 |
CN101853294A (zh) * | 2010-05-21 | 2010-10-06 | 中国科学院地理科学与资源研究所 | 一种基于遗传算法的多模式多标准路径选择方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105069518A (zh) * | 2015-07-15 | 2015-11-18 | 西安交通大学 | 一种基于可变长基因遗传算法的物资调度方法及系统 |
CN105069518B (zh) * | 2015-07-15 | 2018-10-30 | 西安交通大学 | 一种基于可变长基因遗传算法的物资调度方法及系统 |
CN111209679A (zh) * | 2020-01-13 | 2020-05-29 | 广东工业大学 | 一种基于遗传算法的土壤重金属含量空间插值方法 |
CN111209679B (zh) * | 2020-01-13 | 2023-09-29 | 广东工业大学 | 一种基于遗传算法的土壤重金属含量空间插值方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102158799B (zh) | 2013-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Shanmugasundaram et al. | Genetic algorithm-based road network design for optimising the vehicle travel distance | |
US7537523B2 (en) | Dynamic player groups for interest management in multi-character virtual environments | |
CN108664022A (zh) | 一种基于拓扑地图的机器人路径规划方法及系统 | |
CN109102124B (zh) | 基于分解的动态多目标多路径诱导方法、系统及存储介质 | |
CN112902969B (zh) | 一种无人机在数据收集过程中的路径规划方法 | |
Hosseinabadi et al. | GELS-GA: hybrid metaheuristic algorithm for solving multiple travelling salesman problem | |
CN105430706A (zh) | 一种基于改进粒子群算法的无线传感网络路由优化方法 | |
CN104700160B (zh) | 一种车辆路径优化方法 | |
CN115202394B (zh) | 一种基于改进遗传算法的无人机全覆盖路径规划方法 | |
CN113359849B (zh) | 一种针对运动目标的多无人机协同快速搜索方法 | |
CN112347596B (zh) | 一种城市公交线网优化方法 | |
CN107040879A (zh) | 一种基于遗传模糊树的无线传感网节点联合移动算法 | |
CN109862532A (zh) | 轨道交通状态监测多传感器节点布局优化方法及系统 | |
Chou et al. | A clonal selection algorithm for energy-efficient mobile agent itinerary planning in wireless sensor networks | |
CN104866903A (zh) | 基于遗传算法的最美路径导航算法 | |
CN102158799B (zh) | 一种确定推荐经由地顺序的方法及系统 | |
Chiu et al. | Robot routing using clustering-based parallel genetic algorithm with migration | |
CN111754095A (zh) | 基于人工智能的车辆调度方法、装置及系统 | |
CN116503571A (zh) | 一种道路交叉口动态交通场景智能生成方法 | |
CN116307328A (zh) | 一种旅行商问题的贪婪求解方法 | |
Meng et al. | Optimization and application of artificial intelligence routing algorithm | |
CN104142151A (zh) | 一种导航方法 | |
CN114061604A (zh) | 基于移动轨迹大数据的载客路线推荐方法、装置及系统 | |
CN114676640A (zh) | 基于遗传算法和maddpg算法的楼栋排布方法 | |
Fellek et al. | Edge Encoded Attention Mechanism to Solve Capacitated Vehicle Routing Problem with Reinforcement Learning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |