文档库 最新最全的文档下载
当前位置:文档库 › 随机用户均衡交通分配问题的蚁群优化算法

随机用户均衡交通分配问题的蚁群优化算法

随机用户均衡交通分配问题的蚁群优化算法
随机用户均衡交通分配问题的蚁群优化算法

Transcad交通分配关键操作指南20111220

TransCAD交通分配操作指南2011 上海海事大学交通运输学院刘兰辉 本文介绍通过TransCAD进行交通分配的关键操作。机动车出行OD表和各小区的交通生成表可通过Excel计算生成。交通方式划分可由交通工程师根据资料和发展趋势判定。 1 建立一个路网 在建路网前,可先打开tif格式的地图作为画路网得依据。(File-Open, 选择*.tif格式)。 新建线层地理文件(菜单File-New, 文件类型选Geographic File-Line Geographic File)。路网文件的字段属性一般包含路名(name)、道路等级(type)、车道数(lanes)、设计速度(speed)、通行能力(capacity)、背景交通量(basicvolume)和小区连接线(centroidline)等。各字段的推荐类型见表1。还可通过工具栏的Formula Field命令计算获得RoadLength和TravelTime字段。自身的默认字段有ID,length, dir。 表1路网文件的字段属性及其类型 字段属性name lanes roadtype speed capacity basicvolume centroidline 单位――――――(km/h) (pcu/h) (pcu/h) ―― 字段类型Character Integer Integer Integer Real Real Integer 通过工具栏的Working layer将点层设为当前工作层。通过工具栏的Open Dataview 命令按钮打开点层的Dataview文件。点层Dataview文件的默认字段有ID,longitude,latitude。选择菜单Dataview-Modify Table,增加小区形心点类型(Centroid Point)字段,类型设为Integer。 建路网前,建议将系统的默认单位设为m和cm(Edit-Preferences)。比例尺推荐设为1cm=100m(1:10000)。 通过工具栏的Working layer将线层设为当前层,开始建立路网。选择Tools-Map Editing-Toolbox,得到画图工具框。建路网时,可按由上向下、先左后右以及道路等级由高到低的顺序根据tif地图创建道路网。同时,打开点层文件,并标注显示节点ID。时刻注意节点ID是否连续,若发生节点ID跳跃,说明可能有的路段没连上,从而生成了2个节点。这往往比较难发现。所以,等画完所有路段后进行一下路段连接性检查(选择Tools-map editing-check line layer connectivity)。

交通分配之用户均衡分配模型二(matlab源码)

例 总流量为100,走行函数为: ??? ??+=40)(6.04)(111t x x c ?? ? ??+=40)(9.06)(222t x x c ?? ? ??+=60)(3.02)(333t x x c ??? ??+=40)(75.05)(444t x x c ?? ? ??+=40)(45.03)(555t x x c 模型求解的Matlab 源码: syms lambda ; tt =[0 0 0 ]; xx = [0 0 0 0 0] ; t1 = 4 + (0.6/40)*xx(1,1); t2 =6 + (0.9/40) *xx(1,2); t3 = 2 + (0.3/60) *xx(1,3); t4 = 5 + (0.75/40) *xx(1,4) ; t5 = 3 + (0.45/40) *xx(1,5) ; Q = 100; N=8 ; % 迭代次数 ,本例只设置最大迭代次数。也可另外设置收敛条件 tt(1,1)= t1 +t4 ; tt(1,2) = t2 + t5 ; tt(1,3) =t1+ t3 +t5 ; y = [0 0 0]; %置初值 Min = 50000; for j = 1 : 3 if tt(1 ,j)

% y(1,index) = Q; if index ==1 xx(1,1)= Q; xx(1,4)=Q; elseif index ==2 xx(1,2)= Q; xx(1,5)=Q; else xx(1,1)= Q; xx(1,3)=Q; xx(1,5)=Q; end for i =1 :N y = [0 0 0 0 0 ]; t1 = 4 + (0.6/40)*xx(1,1); t2 =6 + (0.9/40) *xx(1,2); t3 = 2 + (0.3/60) *xx(1,3); t4 = 5 + (0.75/40) *xx(1,4) ; t5 = 3 + (0.45/40) *xx(1,5) ; tt(1,1)= t1 +t4 ; tt(1,2) = t2 + t5 ; tt(1,3) =t1+ t3 +t5 ; fprintf('第%d 次迭代的路径时间值:' , i); tt Min = 50000; for j = 1 : 3 if tt(1 ,j)

蚁群算法的基本原理

2.1 蚁群算法的基本原理 蚁群优化算法是模拟蚂蚁觅食的原理,设计出的一种群集智能算法。蚂蚁在觅食过程中能够在其经过的路径上留下一种称之为信息素的物质,并在觅食过程中能够感知这种物质的强度,并指导自己行动方向,它们总是朝着该物质强度高的方向移动,因此大量蚂蚁组成的集体觅食就表现为一种对信息素的正反馈现象。某一条路径越短,路径上经过的蚂蚁越多,其信息素遗留的也就越多,信息素的浓度也就越高,蚂蚁选择这条路径的几率也就越高,由此构成的正反馈过程,从而逐渐的逼近最优路径,找到最优路径。 蚂蚁在觅食过程时,是以信息素作为媒介而间接进行信息交流,当蚂蚁从食物源走到蚁穴,或者从蚁穴走到食物源时,都会在经过的路径上释放信息素,从而形成了一条含有信息素的路径,蚂蚁可以感觉出路径上信息素浓度的大小,并且以较高的概率选择信息素浓度较高的路径。 (a) 蚁穴 1 2 食物源 A B (b) 人工蚂蚁的搜索主要包括三种智能行为: (1)蚂蚁的记忆行为。一只蚂蚁搜索过的路径在下次搜索时就不再被该蚂蚁选择,因此在蚁群算法中建立禁忌表进行模拟。 (2)蚂蚁利用信息素进行相互通信。蚂蚁在所选择的路径上会释放一种信息素的物质,当其他蚂蚁进行路径选择时,会根据路径上的信息素浓度进行选择,这样信息素就成为蚂蚁之间进行通信的媒介。 (3)蚂蚁的集群活动。通过一只蚂蚁的运动很难达到事物源,但整个蚁群进行搜索就完全不同。当某些路径上通过的蚂蚁越来越多时,路径上留下的信息素数量也就越多,导致信息素强度增大,蚂蚁选择该路径的概率随之增加,从而进一步增加该路径的信息素强度,而通过的蚂蚁比较少的路径上的信息素会随着时间的推移而挥发,从而变得越来越少。3.3.1蚂蚁系统 蚂蚁系统是最早的蚁群算法。其搜索过程大致如下: 在初始时刻,m 只蚂蚁随机放置于城市中, 各条路径上的信息素初始值相等,设为:0(0)ij ττ=为信息素初始值,可设0m m L τ=,m L 是由最近邻启发式方法构 造的路径长度。其次,蚂蚁(1,2,)k k m = ,按照随机比例规则选择下一步要转

13基于蚁群算法的连续函数优化通用MATLAB源代码

基于蚁群算法的连续函数优化通用MATLAB源代码 此源码是对人工蚁群算法的一种实现,用于无约束连续函数的优化求解,对于含有约束的情况,可以先使用罚函数等方法,把问题处理成无约束的模型,再使用本源码进行求解。 function [BESTX,BESTY,ALLX,ALLY]=ACOUCP(K,N,Rho,Q,Lambda,LB,UB) %% Ant Colony Optimization for Unconstrained Continuous Problem %% ACOUCP.m %% 无约束连续函数的蚁群优化算法 %% 此函数实现蚁群算法,用于求解无约束连续函数最小化问题 %% 对于最大化问题,请先将其加负号转化为最小化问题 % GreenSim团队——专业级算法设计&代写程序 % 欢迎访问GreenSim团队主页→https://www.wendangku.net/doc/a416658670.html,/greensim %% 输入参数列表 % K 迭代次数 % N 蚁群规模 % Rho 信息素蒸发系数,取值0~1之间,推荐取值0.7~0.95 % Q 信息素增加强度,大于0,推荐取值1左右 % Lambda 蚂蚁爬行速度,取值0~1之间,推荐取值0.1~0.5 % LB 决策变量的下界,M×1的向量 % UB 决策变量的上界,M×1的向量 %% 输出参数列表 % BESTX K×1细胞结构,每一个元素是M×1向量,记录每一代的最优蚂蚁 % BESTY K×1矩阵,记录每一代的最优蚂蚁的评价函数值 % ALLX K×1细胞结构,每一个元素是M×N矩阵,记录每一代蚂蚁的位置 % ALLY K×N矩阵,记录每一代蚂蚁的评价函数值 %% 测试函数设置 % 测试函数用单独的子函数编写好,在子函数FIT.m中修改要调用的测试函数名即可 % 注意:决策变量的下界LB和上界UB,要与测试函数保持一致 %% 参考设置 % [BESTX,BESTY,ALLX,ALLY]=ACOUCP(50,30,0.95,1,0.5,LB,UB) %% 第一步:初始化 M=length(LB);%决策变量的个数 %蚁群位置初始化 X=zeros(M,N); for i=1:M x=unifrnd(LB(i),UB(i),1,N); X(i,:)=x; end %输出变量初始化 ALLX=cell(K,1);%细胞结构,每一个元素是M×N矩阵,记录每一代的个体 ALLY=zeros(K,N);%K×N矩阵,记录每一代评价函数值

基本蚁群优化算法及其改进毕业设计

摘要 自意大利学者M. Dorigo于1991年提出蚁群算法后,该算法引起了学者们的极大关注,在短短十多年的时间里,已在组合优化、网络路由、函数优化、数据挖掘、机器人路径规划等领域获得了广泛应用,并取得了较好的效果。本文首先讨论了该算法的基本原理,接着介绍了旅行商问题,然后对蚁群算法及其二种改进算法进行了分析,并通过计算机仿真来说明蚁群算法基本原理,然后分析了聚类算法原理和蚁群聚类算法的数学模型,通过调整传统的蚁群算法构建了求解聚类问题的蚁群聚类算法。最后,本文还研究了一种依赖信息素解决聚类问题的蚁群聚类算法,并把此蚁群聚类算法应用到对人工数据进行分类,还利用该算法对2005年中国24所高校综合实力进行分类,得到的分类结果与实际情况相符,说明了蚁群算法在聚类分析中能够收到较为理想的结果。 【关键词】蚁群算法;计算机仿真;聚类;蚁群聚类

Study on Ant Colony Algorithm and its Application in Clustering Abstract: As the ant colony algorithm was proposed by M. Dorigo in 1991,it bringed a extremely large attention of scholars, in past short more than ten years, optimized, the network route, the function in the combination optimizes, domains and so on data mining, robot way plan has obtained the widespread application, and has obtained the good effect.This acticle discussed the basic principle of it at first, then introduced the TSP,this acticle also analysed the ant colony algorithm and its improved algorithm, and explanated it by the computer simulates, then it analysed the clustering algorithm and the ant clustering algorithm, builded the ant clustering algorith to solution the clustering by the traditioned ant algorithm. At last, this article also proposed the ant clustering algorith to soluted the clustering dependent on pheromon. Carry on the classification to the artificial data using this ant clustering algorithm; Use this algorithm to carry on the classification of the synthesize strength of the 2005 Chinese 24 universities; we can obtain the classified result which matches to the actual situation case. In the next work, we also should do the different cluster algorithm respective good and bad points as well as the classified performance aspect the comparison research; distinguish the different performance of different algorithm in the analysis when the dates are different. Key words: Ant colony algorithm; Computer simulation; clustering; Ant clustering 目录

城市均衡分配模型与算法

专适于城市道路网络的交通均衡分配模型 刘灿齐 同济大学道路与交通工程系,上海,200092 摘要:由于已有的均衡分配理论中的阻抗公式不包含车流在交叉口的延误,其研究成果并不真正适用于城市道路网络。本文提出了流向、流向阻抗、流向流量的概念,找到了包含交叉口分流向延误的阻抗公式、基于新阻抗公式的交通均衡分配模型。这个模型较真实地描述了城市道路网络上的交通分配情况。 关键词:城市道路网络,流向,延误,阻抗公式,均衡分配 Traffic Equilibrium Assignment Model Special for Urban Road Network LIU Canqi Road & Traffic Department, Tongji University, Shanghai 200092 Abstract: The cost formula in the existing equilibrium theory does not include the delay time at nodes. So, the researching results of the theory are unsuitable for urban road network. The conceptions of traffic direction, cost on traffic direction, and volume on traffic direction are given. The cost formula including the delay time at nodes is expressed. At last, a new equilibrium assignment model based on the cost formula is posed, which is suitable for urban road network. Key words: Urban road network, Flow-direction, delay, cost formula, equilibrium assignment 关于交通分配,1952年Wardrop 提出了道路网均衡分配的概念,其定义是: 在道路网的用户都知道网络的状态并试图选择最短路径时,网络会达到这样一种均衡状态,每对产生——吸引点(PA 点对)之间各条被利用的路径的走行时间都相等而且是最小的走行时间,而没有被利用的的路径的走行时间都大于或等于这个最小的走行时间。 这条定义通常称为“Wardrop 的第一原理”,又叫“用户均衡原理”。 1956年,Bechmann 等提出了描述这个均衡问题的一个数学规划模型,1975年LeBlanc 等学者设计出了求解Bechmann 模型的算法,从而形成了现在的实用解法。Wardrop 原理——Bechmann 模型——Leblanc 算法这三点突破是交通分配问题研究的三个里程碑,也是现在交通分配理论的基础[1]。 然而,这些均衡分配研究成果并不真正适合于城市道路网络。在交通均衡分配模型和算法中,路段阻抗函数是一个基本要素,LeBlanc 的算法中要求它单调递增。到目前为止,唯一公认的来自于实际观测的阻抗函数实例就是美国公路局(BPR )的走行时间公式 ()[] βαa a a a a e x t x t /1)0()(+= (1) 然而,这个公式是从市际公路观测得到的,对城市道路,只能描述车辆在路段部分的行驶时间。但城市道路网络上的车辆除了在路段部分要花费行驶时间外,在信号灯交叉口还往往要花时间

蚁群优化算法

蚁群优化算法
目录 [隐藏]
? ?
比较
1 2
蚁群算法的提出: 人工蚂蚁与真实蚂蚁的异同
o o ? ? ? ? ?
3 4 5 6 7
2.1 2.2
相同点比较 不同点比较
蚁群算法的流程图 基本蚁群算法的实现步骤 蚁群算法的 matlab 源程序 蚁群算法仿真结果 版权声明
[编辑]蚁群算法的提出:
人类认识事物的能力来源于与自然界的相互作用,自然界一直是人类创造力 的源泉。 自然界有许多自适应的优化现象不断地给人以启示,生物和自然中的生 态系 统可以利用自身的演化来让许多在人类看来高度复杂的优化问题得到几乎完美 的解决。近些年来,一些与经典的数学问题思想不同的,试图通过模拟自然生态 系统 来求解复杂优化问题的仿生学算法相继出现,如蚁群算法、遗传算法、粒子群算 法等。 这些算法大大丰富了现在优化技术,也为那些传统最优化技术难以处理的 组 合优化问题提供了切实可行的解决方案。 生物学家通过对蚂蚁的长期的观察发现,每只蚂蚁的智能并不高,看起来没 有集中的指挥,但它们却能协同工作,集中事物,建起坚固漂亮的蚁穴并抚养后 代, 依靠群体能力发挥出超出个体的智能。 蚁群算法是最新发展的一种模拟昆虫王国 中蚂蚁群体智能行为的仿生优化算法,它具有较强的鲁棒性、优良的分布式计算 机 制、易于与其他方法相结合等优点。尽管蚁群算法的严格理论基础尚未奠定,国 内外的相关研究还处于实验阶段, 但是目前人们对蚁群算法的研究已经由当初单 一 的旅行商问题(TSP)领域渗透到了多个应用领域,由解决一维静态优化问题发展 到解决多维动态组合优化问题, 由离散域范围内的研究逐渐扩展到了连续域范围 内的

蚁群优化算法

蚁群优化算法ACO 一、蚁群算法的背景信息 蚁群优化算法(ACO)是一种模拟蚂蚁觅食行为的模拟优化算法,它是由意大利学者Dorigo M等人于1991年首先提出,之后,又系统研究了蚁群算法的基本原理和数学模型,并结合TSP优化问题与遗传算法、禁忌搜索算法、模拟退火算法、爬山法等进行了仿真实验比较,为蚁群算法的发展奠定了基础,并引起了全世界学者的关注与研究 蚁群算法是一种基于种群的启发式仿生进化系统。蚁群算法最早成功应用于解决著名的旅行商问题(TSP),该算法采用了分布式正反馈并行计算机制,易于与其他方法结合,而且具有较强的鲁棒性。 二、蚁群算法的原理[1] 蚁群算法是对自然界蚂蚁的寻径方式进行模似而得出的一种仿生算法。蚂蚁在运动过程中,能够在它所经过的路径上留下一种称之为外激素(pheromone)的物质进行信息传递,而且蚂蚁在运动过程中能够感知这种物质,并以此指导自己的运动方向,因此由大量蚂蚁组成的蚁群集体行为便表现出一种信息正反馈现象:某一路径上走过的蚂蚁越多,则后来者选择该路径的概率就越大。 基本的ACO模型由下面三个公式描述: 式(2-1)、式(2-2)和式(2-3)中:m为蚂蚁个数;n为迭代次数;i为蚂蚁所在位置;j为蚂蚁可以到达的置;为蚂蚁可以到达位置的集合;为启发性信息

,这里为由i到j的路径的能见度,即;为目标函数,这里为两点间欧氏(Euclidean)距离;为由i到j的路径的信息素强度;为蚂蚁k由i到j的路径上留下的信息素数量;为路径权;为启发性信息的权;为路径上信息素数量的蒸发系数;Q为信息素质量系数;为蚂蚁k从位置i移动到位置j的转移概率。 三、改进的蚁群算法[3] 蚁群算法具有如下一些优点:①通用性较强,能够解决很多可以转换为连通图结构的路径优化问题;②同时具有正负反馈的特点,通过正反馈特点利用局部解构造全局解,通过负反馈特点也就是信息素的挥发来避免算法陷入局部最优; ③有间接通讯和自组织的特点,蚂蚁之间并没有直接联系,而是通过路径上的信息素来进行间接的信息传递,自组织性使得群体的力量能够解决问题。 但是,基本蚁群算法也存在一些缺点:①从蚁群算法的复杂度来看,该算法与其他算法相比,所需要的搜索时间较长;②该算法在搜索进行到一定程度以后,容易出现所有蚂蚁所发现的解完全一致这种“停滞现象”,使得搜索空间受到限制 3.1基于遗传学的改进蚁群算法研究 该文献[2]提出的算法弥补了基本蚁群算法中“容易陷入停滞状态”和“盲目随机搜索”的不足。文献中提出的解决办法是在每一次迭代搜索后,都把当前解和最优解进行交叉变异,这样既能搜索更大的解空间,又能使系统陷入局部最优后跳出停滞状态。 这种基于遗传学的蚁群算法(G-蚁群算法)的基本思想是在以蚁群算法为主体的基础上引入遗传算法的思想,目的是让蚁群算法经过迭代产生遗传算法所需的初始种群数据,提高种群数据的多样性。然后,遗传算法经过选择、交叉和变异操作,将处理后的数据交由蚁群算法模块进行判断处理,若满足结束条件则退出系统,否则重新进行迭代操作。 该文献中的交叉操作采用了Davis提出的OX交叉算子,即按照交叉概率Pc进行交叉操作,通过一个亲体中挑选出的子序列路径作为后代相对位置的子序列,变异操作以变异概率Pm执行变异操作,在子代序列路径中随机选择两点进行变异操作,在交叉变异操作结束后,判断当前解是否满足收敛条件,若满足收敛条件则更新当前最优解,返回蚁群算法程序,执行下一次的迭代操作。若不满足收敛条件则继续进行遗传算法的交叉变异操作。

相关文档