收藏 分销(赏)

优质毕业设计物流调度中的混合人工智能算法.doc

上传人:w****g 文档编号:2596765 上传时间:2024-06-02 格式:DOC 页数:33 大小:258.04KB
下载 相关 举报
优质毕业设计物流调度中的混合人工智能算法.doc_第1页
第1页 / 共33页
优质毕业设计物流调度中的混合人工智能算法.doc_第2页
第2页 / 共33页
优质毕业设计物流调度中的混合人工智能算法.doc_第3页
第3页 / 共33页
优质毕业设计物流调度中的混合人工智能算法.doc_第4页
第4页 / 共33页
优质毕业设计物流调度中的混合人工智能算法.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

1、目 录摘要1Abstract21 引言32 车辆优化调度问题描述42.1 组合优化问题描述42.2 车辆调度问题数学模型43 关键人工智能群算法研究53.1 人工鱼群算法原理及其模型63.1.1 人工鱼群算法原理63.1.2 人工鱼群数学模型73.1.3 人工鱼群算法93.2 人工蜂群算法及其模型93.2.1 人工蜂群算法原理及数学模型93.2.2 人工蜂群算法步骤104 人工鱼群算法在VRP问题上改善124.1 人工鱼群算法传统处理方法124.1.1 初始化种群124.1.2 食物浓度计算134.1.3 人工鱼行为设计134.1.4 行为选择154.1.5公告栏154.2 传统处理方法改善1

2、64.2.1 基于相同片段距离164.2.2 基于相同片段距离人工鱼觅食行为164.2.3 人工鱼视域改变174.3传统处理方法和改善方法试验对比分析174.3.1 试验参数设置174.3.2 试验结果及对结果分析185 混合人工蜂群鱼群算法及VRP应用研究205.1人工蜂群算法和人工鱼群算法优缺点分析205.2 混合人工智能算法设计215.3 混合人工蜂群人工鱼群算法示意图215.4 混合人工蜂群人工鱼群算法实现225.5 基于混合人工蜂群人工鱼群算法VRP问题求解225.5.1 人工蜂行为设计225.5.2 公告栏236 混合人工智能算法试验结果分析246.1混合人工智能算法参数设置246

3、.2三种人工智能算法试验结果246.3 试验结果分析257 结束语278 致谢28参考文件29物流调度中混合人工智能算法摘要伴随经济增加更多行业分工愈加细化,越来越多企业一些原料在南方加工,而物品深入加工和组装在北方进行,进而促进物流配送行业快速增加,成为企业盈利关键一步。现在网购行为被大部分人认可,良好配送模式能够节省用户和卖家时间成本和经济成本,从而使得双方达成共赢。所以,配送中心作业关键就是怎样将车辆有效使用,并决定最经济行驶路线,使商品能在最短时间内送到各个用户手中。实际上上述物流配送问题就是车辆路线问题(VRP,Vehicle Routing Problem),它是组合领域中很著名N

4、P难题,近二十年来,VRP全部是一个很活跃研究领域。伴随问题规模增大,使用数学中确实定算法获正确解几乎是不可能。对于这一问题,现在出现了较多应用人工智能算法来处理思绪。本论文中关键讨论是人工蜂群算法和人工鱼群算法,并将这两种进行融合得到新混合人工智能算法以处理VRP问题。人工鱼群算法在VRP问题上传统处理方法存在一定缺点,本论文将会给一定修正。改变对人工鱼距离定义,使用两条人工鱼中相同片段个数作为人工鱼距离;改变人工鱼觅食行为方法,使得人工鱼觅食行为关键经过变换人工鱼中位置信息片段位置来实现;伴随迭代次数增加,增大人工鱼视域,使得人工鱼搜索范围逐步变大。混合人工智能算法刚开始使用人工蜂群算法搜

5、索全局,然后将这个过程中最好多个解给人工鱼鱼群作为人工鱼初始位置,最终使用人工鱼群算法算法进行人工鱼聚群、追尾和觅食等行为搜索可行解。每次迭代过程中将最好解全部放在公告栏上,迭代完成以后那么公告栏上解即为整个搜索过程中得到最优解。混合人工智能算法能够克服人工鱼群算法早熟现象和人工蜂群算法收敛度不高等缺点,在一样条件下混合人工智能算法取得解通常情况下比人工鱼群算法和人工蜂群算法要愈加好。关键词:混合人工智能、人工鱼群算法、人工蜂群算法AbstractWith the development of economy and more detailed branches,more and more e

6、nterprises finds its raw materials in the south of China,while for the further process,it will be in the north.So this kind of situation accelerate the increase of logistics,thus becoming an important step of companys profit.Nowadays,e-shopping is recognized by most people.A sound delivery pattern c

7、an save both the buyers and the sellerss time and money,leading a win-win result.So the focus of delivery center is how to use cars effectively and make a most economical route so that to ensure that goods can be distribute to every customer in a shortest time.Actually,the problem about logistic is

8、just VRP,which is a quiet famous question in combination.In the recent 20 years ,VRP is always a very active research area.With the enlargement of the problem,it is almost impossible to attain an accurate result with the fixed algorithm in mathematics.For this problem,artificial intelligence algorit

9、hm is used to the most to solve it.In this text ,we mainly discuss Artificial Bee Colony (ABC) algorithm and artificial fish school algorithm(AFSA) and we will combine these two to form a combined artificial intelligence algorithm to solve the problem of VRP.At first ,Mixed artificial intelligence a

10、lgorithms just uses ABC to search the whole area, then several the best results will be given to the AFSA as the its initial position, and finally using the AFSA to search actives of clusters, rear-end and foraging behavior of artificial fish to find the feasible solution .After each iteration, the

11、best solution will be on the bulletin board. When all iterations are finished, the solution on the bulletin boards is the optimal solution.Mixed artificial intelligence algorithms can overcome the shortcomings that AFSA would be premature and ABC would not have a high degree of convergence. Under th

12、e same condition, mixed artificial intelligence algorithms will generally obtain a better solution than that of AFSA and ABC.Keyword: ABC, AFSA , artificial intelligence algorithm1 引言伴随市场经济发展步伐加紧,作为“第三利润源泉”物流行业对经济活动影响益显著,越来越引发大家重视1。在现代物流配送系统中,各零售商为了降低资金积压并提供多样化商品,肯定要降低多种商品存货数量,把关键库存集中到配送中心,由其统一配送;同时

13、又必需考虑到向用户提供最好服务品质(不许可缺货等),这就要求配送含有按时等特征. 所以,配送中心作业关键就是怎样将车辆有效使用,并决定最经济行驶路线,使商品能在最短时间内送到各个零售商手中2。而且合理运输路线能够降低物流配送运输费用,从而使得零售商利润最大化。上述物流配送问题实际上就是车辆路线问题(VRP,Vehicle Routing Problem),它是组合领域中很著名NP难题,近二十年来,VRP全部是一个很活跃研究领域3。伴随问题规模增大,使用数学中确实定算法获正确解几乎是不可能4。对于这一问题,现在出现了较多应用人工智能算法来处理思绪,比如:遗传算法5、蚁群算法6-7、鱼群算法和蜂群

14、算法等。中国李晓磊博士于提出一个人工智能算法即人工鱼群算法8-9,该算法含有快速收敛能力,能够很好地克服局部极值,而且算法对参数选择和初值不敏感,对搜索空间也就有一定自适应能力,是一个高效、并行、自适应全局搜索算法,尤其适合于处理组合优化领域问题,所以应用该算法来求解车辆调度问题是个不错选择。不过人工鱼群算法也有本身缺点,在计算早期表现收敛速度较快,能够快速靠近最好求解点,不过后期计算过程中该算法收敛速度会降低很多,而且求解精度较低10。人工蜂群算法是由土耳其学者KaraBoga11提出模拟蜜蜂群体寻求优质蜜源一个动物仿真智能算法,是群体智能思想应用。它关键特点是不需要了解问题特殊信息,只需要

15、对问题进行优劣比较,经过各人工蜂个体局部寻优行为,最终在群体中使全局最优值突现出来,能避免解早熟现象,不过人工蜂群算法收敛速度不快。所以本文将蜂群和鱼群特点结合起来,开始使用蜂群算法能够全局搜索解,然后使用鱼群个体聚群、追尾等群体行为进行搜索,使得全局最优值能够突现出来,达成快速收敛目标。本文以VRP为基础,经过建立该问题数学模型,设计含有良好近似解和较高收敛速度混合人工智能算法。为了研究方便起见,本文假设不存在某用户需求量超出一个货车载重量情况,而且全部车辆载重量相同,同时不考虑时间窗约束,仅仅将车辆最短行驶距离作为目标函数。2 车辆优化调度问题描述2.1 组合优化问题描述为了满足通常性,对

16、求解最小化问题进行描述,其数学模型以下所表示: min g(x) s.t. h(x)0 xM上述公式中,x为决议变量,g(x)为需要求解最小化目标函数,h(x)为约束函数即需要满足条件,M为有限个点组合集合。用M表示决议变量定义域,G表示问题可行域,g表示目标函数,x*为满足条件可行解,故该问题解数学模型以下:g(x*)=ming(x*)|x*GG=x*|x*M and h(x*)02.2 车辆调度问题数学模型将通常车辆优化调度问题(VRP)进行以下描述:从某个物流配送中心(设其编号为0)使用m辆货车向n个货物需关键点配送货物(编号依次为1,2,n)为第i个用户货物需求量,其中这些货车含有相同

17、载重量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值为

18、1,不然则为0.VRP数学模型以下:xijk=1表示车辆k从货物需求点i行驶到需求点j,其它情况则xijk=0(i or j=1,2,n; k=1,2,m);yki=1表示车辆k经过需求点i,其它情况则yki=0(i=1,2,n; k=1,2,m)。 3 关键人工智能群算法研究本章关键研究人工鱼群算法和人工蜂群算法基础原理、数学模型、算法实现等内容。3.1 人工鱼群算法原理及其模型人工鱼群算法由李晓磊等人采取自下而上寻优模式在提出。该算法模拟自然界鱼群觅食行为,关键以鱼觅食、聚群和追尾行为结构个体底层行为;经过鱼群中各个体局部寻优,达成全局最优值在群体中突现出来目标。3.1.1 人工鱼群算法原

19、理人工鱼群算法是一个基于动物行为自治体寻优模式。动物自治体通常指自主机器人或动物模拟实体,它关键是用来展示动物在复杂多变环境里面能够自主产生自适应智能行为一个方法。鱼类生活习性含有以下多个经典行为:(1)觅食行为:指鱼经过味觉、视觉来判定食物位置和浓度,从而靠近食物行为。通常情况下,鱼在水中随机自由游动,当发觉食物时,则会向着食物逐步增多方向快速游去。这是生物一个最基础行为,是经过感知水中食物量或浓度来选择趋向。(2)聚群行为:指鱼在游动过程中趋于聚集在一起来寻觅食物(集体觅食)、躲避敌害行为。这是鱼类较常见一个现象,鱼聚群时所遵守规则有三条:分隔规则:尽可能避免和临近伙伴过于拥挤:对准规则:

20、尽可能和临近伙伴平均方向一致;内聚规则:尽可能向临近伙伴中心移动。(3)追尾行为:当某一条鱼或几条鱼发觉食物时,它们周围鱼会尾随其后快速游过来,进而造成更远处鱼也尾随过来。(4)随机行为:鱼在水中悠闲自由游动,基础上是随机,其实它们也是为了更大范围寻觅食物或同伴。随机行为实际上是觅食行为一个缺省。每条人工鱼经过对环境感知,在每次移动中经过尝试后,实施其中一个行为。人工鱼群算法就是利用这多个经典行为从结构单条鱼底层行为做起,经过鱼群中各个体局部寻优达成全局最优值在群体中突现出来目标。算法进行就是人工鱼个体自适应活动过程,整个过程包含觅食、聚群和追尾三种行为,最优解将在该过程中突现出来。其中觅食行

21、为是人工鱼依据目前本身适应值随机游动行为,是一个个体极值寻优过程,属于自学习过程;而聚群和追尾行为则是人工鱼和周围环境交互过程。这两种过程是在确保不和伙伴过于拥挤,且和临近伙伴平均移动方向一致情况下向群体极值(中心)移动。由此可见,人工鱼群算法也是一类基于群体智能优化方法。人工鱼整个寻优过程中充足利用本身信息和环境信息来调整本身搜索方向,从而最终搜索达成食物浓度最高地方,即全局极植。3.1.2 人工鱼群数学模型假设在一个D维目标搜索空间中,有N条组成一个群体人工鱼,其中第i条人工鱼:位置向量Xi=(xi1, xi2, xiD),位置食物浓度(目标函数适应值) Yi=f(Xi),两条人工鱼Xi和

22、Xj之间距离表示为|Xj-Xi|,d表示拥挤度因子,代表某个位置周围拥挤程度,以避免和临近伙伴过于拥挤,Visual表示人工鱼感知范围,人工鱼每次移动全部要观察感知范围内其它鱼运动情况及其适应值,从而决定自己运动方向。Step表示人工鱼每次移动最大步长,为了预防运动速度过快而错过最优解,步长不能设置过大,当然,太小步长也不利于算法收敛。Try_number表示人工鱼在觅食过程中最大试探次数。(1)觅食行为觅食行为是鱼循着食物多方向游动一个行为。状态为Xi(t)第i条人工鱼觅食行为计算过程为:Step1 置k=1。Step2 在其感知范围内随机选择一个状态Xv(t):xvj(t)=xij(t)+

23、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)聚群行为聚群行为是每条鱼在游动过程中尽可能向临近伙伴中心移动并避免过分

24、拥挤。状态为Xi(t)第i条人工鱼聚群行为计算过程为:Step1 计算以本身位置为中心其感知范围内人工鱼形成集合Si:Si=Xj(t)| Xj(t)- Xi(t)|Visual,ji并计算Si中人工鱼数目Nf=|Si|。Step2 若Nf 0,则计算该集合中心位置Xc(t):Xc(t)=(Xj(t)|j=1,2,Nf, Xj(t)Si)/NfStep3 若Yc(t)Yi(t)且Nf Yc(t)1),(表明该中心位置状态较优而且不太拥挤)则向该中心位置方向前深入,达成状态Xi(t+1):xij(t+1)=xij(t)+rand()Step(xcj(t)-xij(t)/| Xc(t)- Xi(t)

25、| (j=1,2,D)结束。Step4 实施觅食行为。(3)追尾行为追尾行为是鱼向临近最活跃者追捉行为。状态为Xi(t)第i条人工鱼追尾行为计算过程为:Step1 计算以本身位置为中心其感知范围内人工鱼形成集合Si:Si=Xj(t)| Xj(t)- Xi(t)|Visual,ji计算Si中人工鱼数目Nf=|Si|。Step2 若Nf 0,则计算感知范围内全部伙伴中适应值为最小伙伴位置Xm(t):Ym(t)=minYj(t)|Xj(t)SiStep3 若Ym(t)Yi(t)且Nf Ym(t)1),(表明该位置状态较优而且不太拥挤)则向该位置方向前深入,达成状态Xi(t+1):xij(t+1)=x

26、ij(t)+rand()Step(xmj(t)-xij(t)/| Xm(t)- Xi(t)| (j=1,2,D)结束。Step4 实施觅食行为。(4)设置公告板在人工鱼群算法中,设置一个公告板,用以统计目前搜索到最优人工鱼状态及对应适应值,各条人工鱼在每次行动后,将本身目前状态适应值和公告板进行比较,假如优于公告板,则用本身状态及其适应值替换公告板中对应值,以使公告板能够统计搜索到最优状态及该状态适应值。即算法结束时,最终公告板值就是系统最优解。(5)行为选择(移动策略)依据所要处理问题性质,对人工鱼目前所处环境进行评价,从上述各行为中选择一个适宜行为。常见方法有两种:(进步即可标准)优异行追

27、尾行为,假如没有进步则进行聚群行为,假如仍然没有进步则进行觅食行为。也就是选择较优行为前进,即任选一个行为,只要能向优方向前进即可。(进步最快标准)试探实施多种行为,选择各行为中使得向最优方向前进最快行为,即模拟实施聚群、追尾等行为,然后选择行动后状态较优动作来实际实施,缺省行为方法为觅食行为。也就是选择各行为中使得人工鱼下一个状态最优行为,假如没有能使下一状态优于目前状态行为,则采取随机行为。对于此种方法,一样迭代步数下,寻优效果会好部分,但计算量也会加大。人工鱼群算法经过这些行为选择形成了一个高效寻优策略,最终,人工鱼集结在多个局部极值周围,且值较优极值区域周围通常能集结较多人工鱼。3.1

28、.3 人工鱼群算法人工鱼群算法具体计算步骤为:Step1 (初始化)确定人工鱼群规模N,在变量可行域内随机生成N个人工鱼,设定人工鱼可视域Visual,人工鱼移动步长Step,拥挤度因子d,尝试次数Try_number。Step2 (设置公告板)计算初始鱼群各个人工鱼适应值并进行比较大小,取最优人工鱼状态及其值赋给公告板。Step3 (行为选择)各个人工鱼分别模拟追尾行为和聚群行为,经过比较适应值选择最好行为来实施,缺省行为为觅食行为。Step4 (更新公告板)每条人工 鱼对本身适应值和公告板值进行比较,如优于公告板值则替换之,不然公告板值不变。Step5:(终止条件判定)当公告板上最优解达成

29、了满意误差界内时,算法结束,输出最优解,不然转step3。3.2 人工蜂群算法及其模型 自然界中蜂群总是能很快找到优良蜜源或花粉,经过这些发觉,Karaboga等提出了人工蜂群算法。人工蜂群算法是模拟蜜蜂行为从而提出一个优化方法,是集群智能思想一个具体应用,它关键特点是不需要了解问题特殊信息,只需要对问题进行优劣比较,经过各人工蜂个体局部寻优行为,最终在群体中使全局最优值突现出来,有着较快收敛速度。3.2.1 人工蜂群算法原理及数学模型在ABC算法中有3个关键基础部分:食物源、人工蜂群、算法过程。(1) 食物源。不一样食物源代表了多种可能解,且食物源值由多个原因决定, 比如蜜源和蜂巢距离、能量

30、大小和集中程度和采取该食物轻易程度等,所以每个食物源全部包含了一系列可优化参数。但为了算法简单分析起见,算法中仅仅将食物源“质量”作为衡量标准。(2) 人工蜂群。人工蜂群包含三种蜜蜂:引领蜂、跟随蜂和侦察蜂。引领蜂先出去寻求食物源;跟随蜂在舞蹈区等候引领蜂带回食物源相关信息,而且依据信息选择食物源;侦查蜂则完全随机寻求新食物源,假如某个食物源被引领蜂和跟随蜂丢弃,那么和这个食物源对应引领蜂就变成了侦查蜂。(3) 算法过程及数学模型首先,ABC算法生成含有SN个解(食物源)初始种群。每个解xi(i=1,2,D)是一个D维向量。然后,蜜蜂对全部食物源进行循环搜索,循环次数为MCN。引领蜂先对对应食

31、物源(解)进行一次领域搜索,并选择花蜜数量多也就是适应度较高食物源(解)。引领蜂根据以下表示式进行领域搜索: vij = xij + Rij(xij - xkj) (k i) k1,2,.,SN , j1,2,.,D,这两个数全部是随机选择,Rij是一个在-1和1之间随机数,这个步长能够合适减小。 全部引领蜂完成搜索以后,在舞蹈区把食物源信息传达给跟随蜂,跟随蜂依据得到信息根据概率选择食物源。在花蜜越多食物源,被选择概率越大。跟随蜂根据概率值pi选择食物源,依据以下表示式计算:Pi = fi / j=0SNfj fi是第i个解适应度值随即,跟随蜂也进行一次领域搜索,并选择很好解。跟随蜂依据以下

32、表示式进行领域搜索: vij = xij + Rij(xij - xkj) (k i)k1,2,.,SN , j1,2,.,D,这两个数全部是随机选择,Rij是一个在-1和1之间随机数,这个步长能够合适减小。假如某个解经过limit次循环后没有得到改善,那么这个节就要被丢弃。假定被丢掉解是xi,那么就由侦查蜂根据以下表示式产生一个新解来替换xi: xij = xjmin + rand(0,1)(xjmax - xjmin) 3.2.2 人工蜂群算法步骤人工蜂群算法具体计算步骤为:设定3个参数:食物源个数=引领蜂个数=跟随蜂个数(SN)、领域搜索次数limit、最大循环次数MCN。算法步骤以下:

33、Step1 产生初始解集xij,i1,2,.,SN,j1,2,.,D;Step2 计算各个解xij适应度值;Step3 置cycle=1(外循环);Step4 置 s=1(内循环);Step5 引领蜂依据以下公式做领域搜索产生新解vij ,并计算其适应度值: vij = xij + Rij(xij - xkj) k1,2,.,SN 且 kiStep6 假如vij适应度值大于xij,则xij=vij,不然xij不变;Step7 计算xij适应度,并依据以下公式计算概率值Pi: Pi = fi / j=0SNfj Step8 跟随蜂依据Pi选择食物源(解),并进行领域搜索产生新解vij,计算其适应

34、度;Step9 同时骤6;Step10 统计到现在为止最好解; Step11 s = s + 1Step12 cycle cycle + 1Step13 假如 s limit ,则转步骤5;Step14 经过limit次循环后,判定是否有要丢弃解,假如存在,则侦查蜂依据以下公式产生一个新解xij替换: xij = xjmin + rand(0,1)(xjmax - xjmin) Step15 假如cycle MCN (最大循环次数),则转步骤Step4。4 人工鱼群算法在VRP问题上改善人工鱼群算法在VRP问题上传统方法没有考虑VRP问题最优解结构型问题,仅仅只是单纯对解结构进行离散化,所以在

35、程序实现过程中并没有表现人工鱼群算法优势,反而使得在求解过程中对一些问题复杂处理造成求解时间过长,使得我们通常错误认为人工鱼群算法不适合处理VRP问题。因为上述部分原因,本论文对传统方法加以改善,使用独特人工鱼视域和人工鱼觅食行为,使得人工鱼在VRP问题上愈加快向最优解靠近。4.1 人工鱼群算法传统处理方法4.1.1 初始化种群每个种群状态描述利用一个二维数组xFood_NumberClient_Number,Food_Number表示种群个数(人工鱼或跟随蜂个数),Client_Number表示需要运输站点个数,xij表示第i条人工鱼(跟随蜂)第j个需要送货站点(为了方便研究,我们令站点取值

36、分别为1Client_Number正整数),比如1表示1号站点,2表示2号站点Client_Number表示Client_Number号站点。这么就确定了货车依次需要进过站点,再依据货车载重量就能够确定车辆配送路径。比如数组xFood_NumberClient_Number(设Food_Number=4,Client_Number=5)为:3 2 4 1 51 4 3 2 52 5 1 4 31 3 5 4 2该数组表示含义为:第0个种群(因为本文中变量是基于C语言中二维数组结构存放,所以数组下标是从0开始)依次需要经过站点为32 4 1 5第1个种群依次需要经过站点为1 4 3 2 5第2个

37、种群依次需要经过站点为2 5 1 4 3第3个种群依次需要经过站点为1 3 5 4 2依据上面对变量意义描述能够看出,对于xFood_NumberClient_Number数组有以下2个特点:从横向看,每个数取值全部是在1Client_Number正整数,而且互不相同;从全局看,每一行数不能和其它行数完全一样,最少有两个数是不一样,这是因为不一样种群不能产生一样解,不然就会造成种群个数浪费或种群过于拥挤。经过上述特点,本文对每个种群初始化采取以下策略:(1)随机生成一组1Client_Number这Client_Number个正整数排列,将该排列赋给种群;(2)确保每个种群值是不一样,不然从新

38、生成新排列。生成种群解并不是货车路径,仅仅是货车需要依次经过站点,因为在设计货车路径是我们还需要考虑货车载重量这个参数。比如,假设货车载重量为1,weightClient_Number=0.5,0.2,0.6,0.3,0.4为1Client_Number号站点依次需要货物重量。第1个种群依次需要经过站点为1 4 3 2 5,则经过上述计算可得该货车需要经过路径为0 1 4 0 3 2 0 5 0(0表示货物仓库,货车必需要从仓库出发,而且最终回到仓库)。4.1.2 食物浓度计算食物浓度是指模型中目标函数值,用来衡量种群目前状态优劣程度。每个种群每次迭代后所在状态食物浓度计算就是VRP问题目标函

39、数值计算问题,它是判定状态优劣标准。该食物浓度计算如VRP模型由两部分组成为:(1)判定未达成满载率要求车辆数目是否超出要求车辆数目,假如超出则将之乘以一个很大权数100000(该能够依据实际情况设定,不过一定要确保充足大),加入计算中是为了使得所求食物浓度尽可能小时,首先考虑满足车辆要求条件。(2)实际距离计算,则需要知道distanceClient_Number+1Client_Number+1值,distanceij表示是从站点i到站点j距离,当i或j为0时,则表示到货物仓库距离。4.1.3 人工鱼行为设计(1)感知能力设计人工鱼感知能力是它感知其它伙伴状态和周围环境确保,它感知能力设计

40、为有限(在visual范围内,只有和鱼距离小于visual时才能被感知),符合现实中鱼实际情况,也从一定程度上降低了人工鱼行为复杂度。这么我们就必需处理两条人工鱼之间距离d,对于距离问题计算,传统方法采取计算两个变量取值相同程度做法。对于任意两个变量数组,将数组中每个存放位置值进行比较,假如二者不相等,则取值为1,不然取值为0。最终将全部位置比较后值相加就是两条鱼之间距离d(xm,xn分别表示第m条和第n条人工鱼)取值。用数学语言描述以下: 1 xmj xnj= 0 xmj = xnj 其中C表示Client_Number,j表示人工鱼第j个参数。从变量意义描述中能够看出,变量中存放每个数值全

41、部不含有数值真正含义,仅仅表示一个符号而已。所以用日常欧氏距离显著是不适宜,因为那样得出距离是毫无意义,而且对不能真正表现人工鱼视觉意义。采取上述距离计算方法简单易行,它是以方案总体视角来考虑问题,比较两个种群,计算它们相同程度,取值越大就说明这两个种群相同程度越小,当它大于所给visual时,就认为这两个种群全部是对方看不见。对于两个种群距离运算中,最坏情况是两种种群里面值完全是不一样,这是她们之间距离就是2*Client_Number。(2) 觅食行为 从VRP问题能够看出,每个变量全部是一个可行处理方案,它解集空间是不连续,而是很多离散点,而且变量中每个分量取值全部不含有数值含义。所以步

42、长设计对于该问题意义就不大。假如强硬设置出步长并让人工鱼根据步长行动,会造成变量取值混乱,反而对求解不是有利。基于上面考虑,对于每个种群行动采取让人工鱼直接跳向更优状态策略,这么会使问题变得愈加简单易行,而且收效也很好。实施觅食行为过程能够描述为:首先,对于任意一条人工鱼,设其现在状态为x,在其视野范围内任意找到一点y,采取以下方法:确保y在x视野范围内。使得两条人工鱼之间距离dvisual确保y任意性,并符合变量定义规则。在寻求y过程中,关键采取是首先将x内任意(Client_Number-visual)个数保持不变赋给y,然后将剩下visual个数随机存放在y空位置处,得到新位置y。得到y

43、后就深入判定该点食物浓度是否更优,假如是则跳向它。假如并没有在视野内找到愈加好状态则继续扫描,这么寻优会连续try_number次;假如经过try_number后还没有找到一个更优状态,就采取随机行为。(3) 聚群行为 聚群行为实现过程是首先找到视野范围内其它人工鱼,将它们状态存在friendflagindexi(其中index表示这条人工编号,i表示第i条人工,这个数组存放值为bool型,true表示在该鱼视野范围内,false则表示不在其视野范围内)中,然后计算出这些人工鱼中心位置,在判定这一中心是否优于人工鱼目前状态,假如比目前状态优而且周围并不拥挤,该人工鱼就跳向中心,不然就保持原来状

44、态不变。这个过程中关键是怎样计算该中心状态。中心状态依据xFood_NumberClient_Number矩阵得出,设中心点坐标为centerClient_Number=0(初始化),对于矩阵计算是:首先标识出人工鱼index视野范围内人工鱼,将friendflagindexFood_Number内在范围内人工鱼标号为true。计算这个鱼群中第1个经过站点标号(axj1+,其中j表示在该鱼群中第j条人工鱼,axj1表示存放第一次经过某个标号次数),经过axFood_Number1计算出第一次经过最数次数某个点point,并进行赋值使得center1=point。将上述操作依次进行Client_

45、Number次,计算出center内每一个值。不过使用上面方法可能使得中心位置不符合变量定义标准,所以需要对它进行修复,centerClient_Number可能出现问题为:某个站点出现在很多位置;某个站点没有出现在任何位置。依据上面出现两个问题采取以下修复方法;依次比较centerClient_Number内每个值,使得反复站点只能出现一次,其它值设定位0;依据centerClient_Number内值,计算出没有出现站点编号,将这些没有出现编号存放在center_pClient_Number中,将center_pClient_Number内非0值随机赋值到centerClient_Numb

46、er中出现0值地方(4) 追尾行为 追尾行为实现过程是:先寻求这条人工鱼视野内其它人工鱼,计算全部视野范围内人工鱼适应度值,寻求最优那条人工鱼记为b,然后找出人工鱼b视野内人工鱼数量记为nf(用于判定该人工鱼周围是否拥挤),假如b状态更优,而且周围并不拥挤,则就选择跳向它,不然就保持不变。4.1.4 行为选择 本文关键采取是进步即可标准来进行行为选择。该行为具体步骤以下:优异行追尾行为,假如没有进步则进行聚群行为,假如仍然没有进步则进行觅食行为。也就是选择较优行为前进,即任选一个行为,只要能向更优方向前进即可。4.1.5公告栏 该函数作用是将传入人工鱼状态和公告栏中统计最优状态进行比较,假如传入人工鱼状态更优,就用该状态刷新公告栏中最优状态GlobalParams

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服