物流调度中的混合人工智能算法设计大学本科毕业论文.docx

上传人:b****4 文档编号:4897325 上传时间:2022-12-11 格式:DOCX 页数:25 大小:157.32KB
下载 相关 举报
物流调度中的混合人工智能算法设计大学本科毕业论文.docx_第1页
第1页 / 共25页
物流调度中的混合人工智能算法设计大学本科毕业论文.docx_第2页
第2页 / 共25页
物流调度中的混合人工智能算法设计大学本科毕业论文.docx_第3页
第3页 / 共25页
物流调度中的混合人工智能算法设计大学本科毕业论文.docx_第4页
第4页 / 共25页
物流调度中的混合人工智能算法设计大学本科毕业论文.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

物流调度中的混合人工智能算法设计大学本科毕业论文.docx

《物流调度中的混合人工智能算法设计大学本科毕业论文.docx》由会员分享,可在线阅读,更多相关《物流调度中的混合人工智能算法设计大学本科毕业论文.docx(25页珍藏版)》请在冰豆网上搜索。

物流调度中的混合人工智能算法设计大学本科毕业论文.docx

物流调度中的混合人工智能算法设计大学本科毕业论文

目录

摘要1

Abstract2

1引言3

2车辆优化调度问题的描述4

2.1组合优化问题的描述4

2.2车辆调度问题的数学模型4

3主要人工智能群算法研究5

3.1人工鱼群算法原理及其模型6

3.1.1人工鱼群算法原理6

3.1.2人工鱼群的数学模型7

3.1.3人工鱼群算法9

3.2人工蜂群算法及其模型9

3.2.1人工蜂群算法原理及数学模型9

3.2.2人工蜂群算法步骤10

4人工鱼群算法在VRP问题上的改进12

4.1人工鱼群算法的传统处理方法12

4.1.1初始化种群12

4.1.2食物浓度的计算13

4.1.3人工鱼行为的设计13

4.1.4行为选择15

4.1.5公告栏15

4.2传统处理方法的改进16

4.2.1基于相似片段的距离16

4.2.2基于相似片段距离的人工鱼觅食行为16

4.2.3人工鱼视域的改变17

4.3传统处理方法与改进的方法的实验对比分析17

4.3.1实验参数的设置17

4.3.2实验结果及对结果的分析18

5混合人工蜂群—鱼群算法及VRP应用研究20

5.1人工蜂群算法和人工鱼群算法的优缺点分析20

5.2混合人工智能算法的设计21

5.3混合人工蜂群—人工鱼群算法示意图21

5.4混合人工蜂群—人工鱼群算法的实现22

5.5基于混合人工蜂群—人工鱼群算法的VRP问题求解22

5.5.1人工蜂行为的设计22

5.5.2公告栏23

6混合人工智能算法的实验结果分析24

6.1混合人工智能算法的参数设置24

6.2三种人工智能算法的实验结果24

6.3实验结果的分析25

7结束语27

8致谢28

参考文献29

物流调度中的混合人工智能算法

摘要

随着经济的增长更多行业的分工更加细化,越来越多的企业某些原料在南方加工,而物品的进一步加工和组装在北方进行,进而促使物流配送行业的快速增加,成为企业盈利的重要一步。

现在网购行为被大部分人的认可,良好的配送模式能够节省客户和卖家的时间成本和经济成本,从而使得双方达到共赢。

因此,配送中心作业的重点就是如何将车辆有效的使用,并决定最经济的行驶路线,使商品能在最短的时间内送到各个客户手中。

实际上上述物流配送问题就是车辆路线问题(VRP,VehicleRoutingProblem),它是组合领域中非常著名的NP难题,近二十年来,VRP都是一个非常活跃的研究领域。

随着问题规模的增大,使用数学中的确定算法获精确解几乎是不可能的。

对于这一问题,目前出现了较多的应用人工智能算法来解决的思路。

本论文中主要讨论的是人工蜂群算法和人工鱼群算法,并将这两种进行融合得到新的混合人工智能算法以解决VRP问题。

人工鱼群算法在VRP问题上传统的处理方法存在一定的缺陷,本论文将会给予一定的修正。

改变对人工鱼距离的定义,使用两条人工鱼中的相同片段的个数作为人工鱼的距离;改变人工鱼觅食行为的方式,使得人工鱼的觅食行为主要通过变换人工鱼中位置信息的片段位置来实现;随着迭代次数的增加,增大人工鱼的视域,使得人工鱼的搜索范围逐渐变大。

混合人工智能算法刚开始使用人工蜂群算法搜索全局,然后将这个过程中最好的几个解给予人工鱼鱼群作为人工鱼的初始位置,最后使用人工鱼群算法算法进行人工鱼的聚群、追尾和觅食等行为搜索可行解。

每次迭代过程中将最好的解都放在公告栏上,迭代完成以后那么公告栏上的解即为整个搜索过程中得到的最优解。

混合人工智能算法能够克服人工鱼群算法的早熟现象和人工蜂群算法的收敛度不高等缺点,在同样的条件下混合人工智能算法获得的解一般情况下比人工鱼群算法和人工蜂群算法要更好。

关键词:

混合人工智能、人工鱼群算法、人工蜂群算法

Abstract

Withthedevelopmentofeconomyandmoredetailedbranches,moreandmoreenterprisesfindsitsrawmaterialsinthesouthofChina,whileforthefurtherprocess,itwillbeinthenorth.Sothiskindofsituationacceleratetheincreaseoflogistics,thusbecominganimportantstepofcompany’sprofit.Nowadays,e-shoppingisrecognizedbymostpeople.Asounddeliverypatterncansaveboththebuyersandthesellers’stimeandmoney,leadingawin-winresult.Sothefocusofdeliverycenterishowtousecarseffectivelyandmakeamosteconomicalroutesothattoensurethatgoodscanbedistributetoeverycustomerinashortesttime.

Actually,theproblemaboutlogisticisjustVRP,whichisaquietfamousquestionincombination.Intherecent20years,VRPisalwaysaveryactiveresearcharea.Withtheenlargementoftheproblem,itisalmostimpossibletoattainanaccurateresultwiththefixedalgorithminmathematics.Forthisproblem,artificialintelligencealgorithmisusedtothemosttosolveit.Inthistext,wemainlydiscussArtificialBeeColony(ABC)algorithmandartificialfishschoolalgorithm(AFSA)andwewillcombinethesetwotoformacombinedartificialintelligencealgorithmtosolvetheproblemofVRP.

Atfirst,MixedartificialintelligencealgorithmsjustusesABCtosearchthewholearea,thenseveralthebestresultswillbegiventotheAFSAastheitsinitialposition,andfinallyusingtheAFSAtosearchactivesofclusters,rear-endandforagingbehaviorofartificialfishtofindthefeasiblesolution.Aftereachiteration,thebestsolutionwillbeonthebulletinboard.Whenalliterationsarefinished,thesolutiononthebulletinboardsistheoptimalsolution.

MixedartificialintelligencealgorithmscanovercometheshortcomingsthatAFSAwouldbeprematureandABCwouldnothaveahighdegreeofconvergence.Underthesamecondition,mixedartificialintelligencealgorithmswillgenerallyobtainabettersolutionthanthatofAFSAandABC.

Keyword:

ABC,AFSA,artificialintelligencealgorithm

1引言

随着市场经济发展步伐的加快,作为“第三利润源泉”的物流行业对经济活动的影响益明显,越来越引起人们的重视[1]。

在现代物流配送系统中,各零售商为了减少资金积压并提供多样化的商品,必然要减少各种商品的存货数量,把主要库存集中到配送中心,由其统一配送;同时又必须考虑到向顾客提供最好的服务品质(不允许缺货等),这就要求配送具有准时等特性.因此,配送中心作业的重点就是如何将车辆有效的使用,并决定最经济的行驶路线,使商品能在最短的时间内送到各个零售商手中[2]。

而且合理的运送路线可以减少物流配送的运输费用,从而使得零售商的利润最大化。

上述物流配送问题实际上就是车辆路线问题(VRP,VehicleRoutingProblem),它是组合领域中非常著名的NP难题,近二十年来,VRP都是一个非常活跃的研究领域[3]。

随着问题规模的增大,使用数学中的确定算法获精确解几乎是不可能的[4]。

对于这一问题,目前出现了较多的应用人工智能算法来解决的思路,比如:

遗传算法[5]、蚁群算法[6-7]、鱼群算法和蜂群算法等。

我国李晓磊博士于2002年提出的一种人工智能算法即人工鱼群算法[8-9],该算法具有快速的收敛能力,能够较好地克服局部极值,并且算法对参数选择以及初值不敏感,对搜索空间也就有一定的自适应能力,是一种高效、并行、自适应的全局搜索算法,特别适合于解决组合优化领域的问题,所以应用该算法来求解车辆调度问题是个不错的选择。

但是人工鱼群算法也有自身的缺点,在计算早期表现的收敛速度较快,能够迅速靠近最佳求解点,但是后期计算过程中该算法的收敛速度会降低很多,而且求解精度较低[10]。

人工蜂群算法是2005年由土耳其学者KaraBoga[11]提出的模拟蜜蜂群体寻找优质蜜源的一种动物仿真的智能算法,是群体智能思想的应用。

它的主要特点是不需要了解问题的特殊信息,只需要对问题进行优劣的比较,通过各人工蜂个体的局部寻优行为,最终在群体中使全局最优值突现出来,能避免解的早熟现象,

但是人工蜂群算法收敛速度不快。

所以本文将蜂群和鱼群的特点结合起来,开始使用蜂群算法能够全局搜索解,然后使用鱼群个体的聚群、追尾等群体行为进行搜索,使得全局最优值能够突现出来,达到快速收敛的目的。

本文以VRP为基础,通过建立该问题的数学模型,设计具有良好的近似解和较高收敛速度的混合人工智能算法。

为了研究方便起见,本文假设不存在某客户的需求量超过一个货车载重量的情况,并且所有车辆的载重量相同,同时不考虑时间窗约束,仅仅将车辆的最短行驶距离作为目标函数。

2车辆优化调度问题的描述

2.1组合优化问题的描述

为了满足一般性,对求解最小化问题进行描述,其数学模型如下所示:

ming(x)

s.t.

h(x)

0

x

M

上述公式中,x为决策变量,g(x)为需要求解的最小化目标函数,h(x)为约束函数即需要满足的条件,M为有限个点的组合集合。

用M表示决策变量的定义域,G表示问题的可行域,g表示目标函数,x*为满足条件的可行解,故该问题解的数学模型如下:

g(x*)=min{g(x*)|x*

G}

G={x*|x*

Mandh(x*)

0}

2.2车辆调度问题的数学模型

将一般车辆的优化调度问题(VRP)进行如下描述:

从某个物流配送中心(设其编号为0)使用m辆货车向n个货物需要点配送货物(编号依次为1,2,…,n)为第i个客户的货物需求量,其中这些货车具有相同的载重量qmax,配送中心和各需求点的位置事先已经确定,dij(i=0,1,2,,n;j=0,1,2,…,n)为点i和点j之间的运输距离,要求配送的车辆均从配送中心出发,完成货物运送任务后返回配送中心。

该问题的目标是:

在满足车辆载重量约束和各需求点需求量的约束的情况下,尽量使用较少的车辆且使得车辆的运输距离最短。

VRP的解必须满足以下条件:

(1)每个需求点的需求量均小于或等于配送货车的载重量;

(2)客户的需求必须得到满足,且每个需求点只能由一辆货车一次运送完成;

(3)运送完后,货车必须要回到配送中心。

若客户i的需求由车辆k完成,则yij的值为1,否则则为0;若车辆k从货物需求点i行驶到需求点j,则xijk的值为1,否则则为0.

VRP的数学模型如下:

xijk=1表示车辆k从货物需求点i行驶到需求点j,其他情况则xijk=0(iorj=1,2,…,n;k=1,2,…,m);yki=1表示车辆k经过需求点i,其他情况则yki=0(i=1,2,…,n;k=1,2,…,m)。

 

3主要人工智能群算法研究

本章主要研究人工鱼群算法和人工蜂群算法的基本原理、数学模型、算法实现等内容。

3.1人工鱼群算法原理及其模型

人工鱼群算法由李晓磊等人采用自下而上的寻优模式在2002年提出。

该算法模仿自然界鱼群觅食行为,主要以鱼的觅食、聚群和追尾行为构造个体的底层行为;通过鱼群中各个体的局部寻优,达到全局最优值在群体中突现出来的目的。

3.1.1人工鱼群算法原理

人工鱼群算法是一种基于动物行为的自治体寻优模式。

动物自治体通常指自主机器人或动物模拟实体,它主要是用来展示动物在复杂多变的环境里面能够自主的产生自适应的智能行为的一种方式。

鱼类生活习性具有以下几种典型行为:

(1)觅食行为:

指鱼通过味觉、视觉来判断食物的位置和浓度,从而接近食物的行为。

一般情况下,鱼在水中随机的自由游动,当发现食物时,则会向着食物逐渐增多的方向快速游去。

这是生物的一种最基本的行为,是通过感知水中的食物量或浓度来选择趋向的。

(2)聚群行为:

指鱼在游动过程中趋于聚集在一起来寻觅食物(集体觅食)、躲避敌害的行为。

这是鱼类较常见的一种现象,鱼聚群时所遵守的规则有三条:

①分隔规则:

尽量避免与临近伙伴过于拥挤:

②对准规则:

尽量与临近伙伴的平均方向一致;

③内聚规则:

尽量向临近伙伴的中心移动。

(3)追尾行为:

当某一条鱼或几条鱼发现食物时,它们附近的鱼会尾随其后快速游过来,进而导致更远处的鱼也尾随过来。

(4)随机行为:

鱼在水中悠闲的自由游动,基本上是随机的,其实它们也是为了更大范围的寻觅食物或同伴。

随机行为实际上是觅食行为的一种缺省。

每条人工鱼通过对环境的感知,在每次移动中经过尝试后,执行其中的一种行为。

人工鱼群算法就是利用这几种典型行为从构造单条鱼底层行为做起,通过鱼群中各个体的局部寻优达到全局最优值在群体中突现出来的目的。

算法的进行就是人工鱼个体的自适应活动过程,整个过程包括觅食、聚群以及追尾三种行为,最优解将在该过程中突现出来。

其中觅食行为是人工鱼根据当前自身的适应值随机游动的行为,是一种个体极值寻优过程,属于自学习的过程;而聚群和追尾行为则是人工鱼与周围环境交互过程。

这两种过程是在保证不与伙伴过于拥挤,且与临近伙伴的平均移动方向一致的情况下向群体极值(中心)移动。

由此可见,人工鱼群算法也是一类基于群体智能的优化方法。

人工鱼整个寻优过程中充分利用自身信息和环境信息来调整自身的搜索方向,从而最终搜索达到食物浓度最高的地方,即全局极植。

3.1.2人工鱼群的数学模型

假设在一个D维的目标搜索空间中,有N条组成一个群体的人工鱼,其中第i条人工鱼:

位置向量Xi=(xi1,xi2,…,xiD),

位置的食物浓度(目标函数适应值)Yi=f(Xi),

两条人工鱼Xi与Xj之间的距离表示为||Xj-Xi||,

表示拥挤度因子,代表某个位置附近的拥挤程度,以避免与临近伙伴过于拥挤,

Visual表示人工鱼的感知范围,人工鱼每次移动都要观测感知范围内的其它鱼的运动情况及其适应值,从而决定自己的运动方向。

Step表示人工鱼每次移动的最大步长,为了防止运动速度过快而错过最优解,步长不能设置的过大,当然,太小的步长也不利于算法的收敛。

Try_number表示人工鱼在觅食过程中最大的试探次数。

(1)觅食行为

觅食行为是鱼循着食物多的方向游动的一种行为。

状态为Xi(t)的第i条人工鱼的觅食行为计算过程为:

Step1置k=1。

Step2在其感知范围内随机选择一个状态Xv(t):

xvj(t)=xij(t)+rand()Visual(j=1,2,…,D)

Step3若Yv(t)Yi(t),则向该方向前进一步,达到状态Xi(t+1):

xij(t+1)=xij(t)+rand()Step(xvj(t)-xij(t))/||Xv(t)-Xi(t)||(j=1,2,…,D)

结束。

Step4若k=Try_number,则转Step5;否则,置k=k+1,转Step2。

Step5在感知范围内随机移动一步,达到状态Xi(t+1):

xij(t+1)=xij(t)+rand()Step(j=1,2,…,D)结束。

其中rand()是[0,1]内的随机数。

(2)聚群行为

聚群行为是每条鱼在游动过程中尽量向临近伙伴的中心移动并避免过分拥挤。

状态为Xi(t)的第i条人工鱼的聚群行为计算过程为:

Step1计算以自身位置为中心其感知范围内的人工鱼形成集合Si:

Si={Xj(t)|||Xj(t)-Xi(t)||Visual,ji}

并计算Si中人工鱼数目Nf=|Si|。

Step2若Nf0,则计算该集合的中心位置Xc(t):

Xc(t)=(Xj(t)|j=1,2,…,Nf,Xj(t)Si)/Nf

Step3若Yc(t)Yi(t)且NfYc(t)Yi(t)

(1),(表明该中心位置状态较优并且不太拥挤)则向该中心位置方向前进一步,达到状态Xi(t+1):

xij(t+1)=xij(t)+rand()Step(xcj(t)-xij(t))/||Xc(t)-Xi(t)||(j=1,2,…,D)

结束。

Step4执行觅食行为。

(3)追尾行为

追尾行为是鱼向临近的最活跃者追捉的行为。

状态为Xi(t)的第i条人工鱼的追尾行为计算过程为:

Step1计算以自身位置为中心其感知范围内的人工鱼形成集合Si:

Si={Xj(t)|||Xj(t)-Xi(t)||Visual,ji}

计算Si中人工鱼数目Nf=|Si|。

Step2若Nf0,则计算感知范围内的所有伙伴中适应值为最小的伙伴位置Xm(t):

Ym(t)=min{Yj(t)|Xj(t)Si}

Step3若Ym(t)Yi(t)且NfYm(t)Yi(t)

(1),(表明该位置状态较优并且不太拥挤)则向该位置方向前进一步,达到状态Xi(t+1):

xij(t+1)=xij(t)+rand()Step(xmj(t)-xij(t))/||Xm(t)-Xi(t)||(j=1,2,…,D)

结束。

Step4执行觅食行为。

(4)设立公告板

在人工鱼群算法中,设置一个公告板,用以记录当前搜索到的最优人工鱼状态及对应的适应值,各条人工鱼在每次行动后,将自身当前状态的适应值与公告板进行比较,如果优于公告板,则用自身状态及其适应值取代公告板中的相应值,以使公告板能够记录搜索到的最优状态及该状态的适应值。

即算法结束时,最终公告板的值就是系统的最优解。

(5)行为选择(移动策略)

根据所要解决的问题性质,对人工鱼当前所处的环境进行评价,从上述各行为中选取一种合适的行为。

常用的方法有两种:

①(进步即可原则)先进行追尾行为,如果没有进步则进行聚群行为,如果依然没有进步则进行觅食行为。

也就是选择较优行为前进,即任选一种行为,只要能向优的方向前进即可。

②(进步最快原则)试探执行各种行为,选择各行为中使得向最优方向前进最快的行为,即模拟执行聚群、追尾等行为,然后选择行动后状态较优的动作来实际执行,缺省的行为方式为觅食行为。

也就是选择各行为中使得人工鱼的下一个状态最优的行为,如果没有能使下一状态优于当前状态的行为,则采取随机行为。

对于此种方法,同样的迭代步数下,寻优效果会好一些,但计算量也会加大。

人工鱼群算法通过这些行为的选择形成了一种高效的寻优策略,最终,人工鱼集结在几个局部极值的周围,且值较优的极值区域周围一般能集结较多人工鱼。

3.1.3人工鱼群算法

人工鱼群算法的具体计算步骤为:

Step1(初始化)确定人工鱼群规模N,在变量可行域内随机生成N个人工鱼,设定人工鱼的可视域Visual,人工鱼的移动步长Step,拥挤度因子,尝试次数Try_number。

Step2(设置公告板)计算初始鱼群各个人工鱼的适应值并进行比较大小,取最优的人工鱼状态及其值赋给公告板。

Step3(行为选择)各个人工鱼分别模拟追尾行为和聚群行为,通过比较适应值选择最佳行为来执行,缺省行为为觅食行为。

Step4(更新公告板)每条人工鱼对自身的适应值和公告板的值进行比较,如优于公告板的值则取代之,否则公告板的值不变。

Step5:

(终止条件判断)当公告板上的最优解达到了满意的误差界内时,算法结束,输出最优解,否则转step3。

3.2人工蜂群算法及其模型

自然界中的蜂群总是能很快的找到优良的蜜源或花粉,通过这些发现,2005年,Karaboga等提出了人工蜂群算法。

人工蜂群算法是模仿蜜蜂行为从而提出的一种优化方法,是集群智能思想的一个具体应用,它的主要特点是不需要了解问题的特殊信息,只需要对问题进行优劣的比较,通过各人工蜂个体的局部寻优行为,最终在群体中使全局最优值突现出来,有着较快的收敛速度。

3.2.1人工蜂群算法原理及数学模型

在ABC算法中有3个重要的基本部分:

食物源、人工蜂群、算法过程。

(1)食物源。

不同的食物源代表了各种可能的解,且食物源的值由多种因素决定,比如蜜源和蜂巢的距离、能量的大小和集中程度以及采取该食物的容易程度等,所以每个食物源都包含了一系列的可优化参数。

但为了算法的简单分析起见,算法中仅仅将食物源的“质量”作为衡量的标准。

(2)人工蜂群。

人工蜂群包含三种蜜蜂:

引领蜂、跟随蜂以及侦察蜂。

引领蜂先出去寻找食物源;跟随蜂在舞蹈区等待引领蜂带回食物源的相关信息,并且根据信息选择食物源;侦查蜂则完全随机的寻找新的食物源,如果某个食物源被引领蜂和跟随蜂丢弃,那么和这个食物源对应的引领蜂就变成了侦查蜂。

(3)算法过程及数学模型

首先,ABC算法生成含有SN个解(食物源)的初始种群。

每个解

xi(i=1,2,…,D)是一个D维的向量。

然后,蜜蜂对所有的食物源进行循环搜索,循环次数为MCN。

引领蜂先对对应的食物源(解)进行一次领域搜索,并选择花蜜数量多也就是适应度较高的食物源(解)。

引领蜂按照以下表达式进行领域搜索:

vij=xij+Rij(xij-xkj)(k≠i)

k

{1,2,...,SN},j

{1,2,...,D},这两个数都是随机选取的,Rij是一个在-1和1之间的随机数,这个步长可以

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 哲学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1