基于离散数字编码的蚁群连续优化算法

合集下载

蚁群算法及案例分析精选全文

蚁群算法及案例分析精选全文
问过的节点;另外,人工蚁
群在选择下一条路径的时
候并不是完全盲目的,而是
按一定的算法规律有意识
地寻找最短路径
自然界蚁群不具有记忆的
能力,它们的选路凭借外
激素,或者道路的残留信
息来选择,更多地体现正
反馈的过程
人工蚁群和自然界蚁群的相似之处在于,两者优先选择的都
是含“外激素”浓度较大的路径; 两者的工作单元(蚂蚁)都
正反馈、较强的鲁棒性、全
局性、普遍性
局部搜索能力较弱,易出现
停滞和局部收敛、收敛速度
慢等问题
优良的分布式并行计算机制
长时间花费在解的构造上,
导致搜索时间过长
Hale Waihona Puke 易于与其他方法相结合算法最先基于离散问题,不
能直接解决连续优化问题
蚁群算法的
特点
蚁群算法的特点及应用领域
由于蚁群算法对图的对称性以
及目标函数无特殊要求,因此
L_ave=zeros(NC_max,1);
%各代路线的平均长度
while NC<=NC_max
%停止条件之一:达到最大迭代次数
% 第二步:将m只蚂蚁放到n个城市上
Randpos=[];
for i=1:(ceil(m/n))
Randpos=[Randpos,randperm(n)];
end
Tabu(:,1)=(Randpos(1,1:m))';
scatter(C(:,1),C(:,2));
L(i)=L(i)+D(R(1),R(n));
hold on
end
plot([C(R(1),1),C(R(N),1)],[C(R(1),2),C(R(N),2)])

蚁群优化算法

蚁群优化算法

2.3 蚂蚁系统理论
AS算法(蚂蚁圈版本)对TSP的求解流程主要有两大步骤:路径构建和信息素更新
1.路径构建
定义5.1 AS中的随机比例规则:对每只蚂蚁k,路径记忆向量R K 按照访问 顺序记录了所有k已经经过的城市序号。设蚂蚁k当前所在的城市为i,则其选择 城市j作为下一个访问对象的概率为:
(i, j) (i, j) , j Jk i Pijk (i, j) (i, u) (i, u) uJ k i 其他 0,
两种构建方式,对于蚂蚁系统来说是等价的,因为他们都 没有明显地改变算法的行为特征。对于其他ACO算法而言 这两种方法就不等价了,例如:ACS算法。
3.1 精华蚂蚁系统
提出背景:
当城市的规模较大时,问题的复杂度呈指数级增长,仅靠AS系统 中这样一个基础单一的信息素更新机制引导搜索偏向,搜索效率有瓶 颈。能否用一张“额外手段”强化某些最可能成为最有路径的边,让 蚂蚁搜索的范围更快、更正确地收敛呢?
2.3 蚂蚁系统理论
2.信息素更新
初始化时: =m / C
0 nn
i, j (1 ) i, j k i, j
k 1
1 C k i, j k 0
m
i , j R k
否则
m是蚂蚁的个数, C nn是由贪婪算法构造的路径的长度。 是信息素的蒸发率,规定 0 1 通常设置为 =0.5 i, j 是第k只蚂蚁在它经过的边上释放的信息素量; Ck 表示路径的长度,它是 R 中所有边的长度和。
Q / Lk,第k只蚂蚁从城市i访问城市j k ii 0, 其他
2.蚂蚁数量
Q / dij,第k只蚂蚁从城市i访问城市j 0, 其他 3.蚂蚁密度

蚁群算法及其连续优化算法初析

蚁群算法及其连续优化算法初析

蚁群算法及其连续优化算法初析蚁群算法是近二十年来提出的一种新的进化计算方法。

它来源于蚂蚁群体的自然行为,是基于分布式的智能体行为的模拟。

蚁群算法是一种有效的优化算法,有较强的针对难度和复杂性相对较高的优化问题的能力。

它模拟了自然界的蚂蚁群体在通过一个自然环境的过程,探索不同的路径到达最终的目标,并在多次探索中改进最优路径。

本文旨在介绍蚁群算法及其连续优化算法,首先介绍蚁群算法的基本原理,其次介绍蚁群算法的典型应用,然后介绍蚁群算法的连续优化算法,最后对蚁群算法的连续优化算法进行分析和总结。

一、蚁群算法基本原理蚁群算法是一种基于自然行为的多智能体优化算法,它以蚂蚁群体在自然环境中迁徙的路径搜索行作为分布式解决方案优化问题的模型。

蚁群算法中,多只虚拟蚂蚁在函数空间中根据启发式搜索规则移动,并通过沿着有利于优化结果的路径累积经验值来搜索最优解。

当蚂蚁到达目标位置时,以其获得的经验值作为最终的结果来衡量其成功率,这个经验值反映了蚂蚁在搜索过程中的工作能力。

由于蚂蚁只能在实际的解决问题的过程中即时调整路径的方式,没有可以将问题的确定性解决方案视为一个整体,因此蚁群算法实现较强的问题适应力,尤其是在解决复杂性和难度较高的优化问题时,其有效性更为突出。

二、蚁群算法的典型应用蚁群算法通常被用于解决各类优化问题,例如旅行商问题(TSP)、最大团和克罗内克问题(KCLP)、粒子群算法(PSO)、元胞自动机(CA)、模拟退火(SA)、优化网络法(AN)和遗传算法(GA)等。

例如,解决TSP问题时,蚁群算法可以结合最近邻搜索和模拟退火算法,以及反向搜索等技术,对问题中计算最优路径产生良好的优化结果。

克罗内克问题(KCLP)是一类无约束优化问题,常用于企业中的机器定位、排序等任务的优化设计,其优化的重要性显而易见。

因此,蚁群算法也可用于解决KCLP问题,对复杂的KCLP问题产生有效的优化结果。

三、蚁群算法的连续优化算法蚁群算法的连续优化算法通常使用多智能体进化技术,将解决问题的启发式搜索转化为一种连续优化算法。

蚁群优化算法应用研究概述

蚁群优化算法应用研究概述

蚁群优化算法应用研究概述随着科学技术的飞速发展,蚁群优化算法已经成为一种非常流行的应用在多个领域的优化技术。

蚁群优化算法是一种基于自然蚁群行为规律的优化算法,它使用一群虚拟的蚂蚁,根据蚁群的潜伏规律,通过不断的学习来实现全局和局部最优解的搜索。

蚁群优化算法通过借鉴蚂蚁的社会群体搜索行为,进行计算机模拟的多目标优化问题,以求得可行的最优解。

它具有计算简单、收敛快等显著优点,已经被广泛应用于多个领域,如虚拟路网网络拓扑优化、避免碰撞飞行路径规划、卫星轨道规划、天线设计、电路布线优化、机器人移动路径优化等。

蚁群优化算法是一种基于模拟自然蚁群搜索行为的优化技术,它主要包括以下步骤:首先,在空间中放置一群虚拟的蚂蚁,每只蚂蚁都有自己的位置和方向;其次,设计信息素挥发率、路径启发因子和路径旅行因子等其他参数;第三,每只蚂蚁在改变自己的位置和方向时,根据环境信息参数激活蚂蚁的社会行为模型;最后,为了使得搜索准确无误,采用最优解的递减更新算法,调整蚁群的参数,以达到最优化的目的。

蚁群优化算法在科学研究中已经被广泛应用,它能高效地解决复杂的多目标优化问题,如受限的检验任务优化、飞行路径规划、电路布置、汇聚优化等等。

在虚拟路网网络拓扑优化中,蚁群优化算法能有效解决网络节点数量和最短路径距离优化问题,有效抑制网络拓扑中回路及环路产生;在天线设计中,蚁群可以用来优化天线参数,如形状、尺寸及极化方向,以优化天线的发射和接收性能;在机器人移动路径优化中,蚂蚁群可以用来模拟机器人移动的路径,从而实现机器人移动路径的优化。

此外,蚁群优化算法还有很多其他的应用领域,它能帮助人们快速而有效地解决复杂的优化问题,在工业认证、人工智能、机器视觉、搜索引擎、智能控制、模式识别、生物信息处理、多媒体信息处理等领域有着广泛的应用。

研究者们也在不断改进蚁群优化算法,以更好的利用蚁群智能,解决复杂的优化问题。

总之,蚁群优化算法是一种广泛应用的多目标优化技术。

昆虫群体行为学中的蚁群算法

昆虫群体行为学中的蚁群算法

昆虫群体行为学中的蚁群算法随着社会的发展和科技的不断进步,人们日常的各种活动都离不开计算机和信息技术的支持,人工智能、机器学习已经成为重要的研究领域。

而昆虫群体行为学中的蚁群算法也成为了这个领域中的热门算法之一。

本文将结合案例深入剖析蚁群算法的工作原理及其应用。

一、蚁群算法概述蚁群算法,又称蚁群优化算法,是一种基于群体智能的优化算法,源于自然界中蚂蚁生活方式的模拟。

自然界中蚂蚁以信息的方式寻找到食物和家,形成了一套完整的优化流程。

在这个过程中,蚂蚁会不断地散发信息素,当有蚂蚁发现了食物或者家后,会回到巢穴,散发出一种信息素,可以引起其他蚂蚁的注意。

一段时间过后,信息素会消失,这样就可以避免信息过时。

蚂蚁就利用这样的方式,在一片茫茫草地中快速找到食物和家。

而蚁群算法就是对这种生物的生命周期进行了模拟。

蚁群算法主要基于以下两大原理:正反馈和负反馈。

正反馈指的是蚂蚁在寻找食物和家的过程中,距离食物和家越近,越有可能被其他蚂蚁选择。

因此,经过一段时间的搜寻,食物或家附近的信息素浓度就会越来越高,吸引越来越多的蚂蚁。

负反馈指的是信息素的挥发时间有限,如果蚂蚁在搜寻过程中进入了死路,无法找到食物或家,很快就会失去它们的踪迹,寻找其它的目标。

二、蚁群算法的原理蚁群算法是一种基于贪心策略和启发式搜索的算法。

贪心策略是指在局部最优解的情况下选择全局最优解。

而启发式搜索则是通过评估函数进行深度优先或广度优先的搜索。

蚁群算法将这两种方法相结合,将其运用到求解优化问题的任务中。

在蚁群算法中,人们把寻优问题抽象成一个图论问题,称之为图。

设有m个蚂蚁在图中寻找最短路径,并假设每个蚂蚁可以移动的来源于强化自身链接的信息素来对图进行搜索,并通过蚁群算法来不断优化搜索的结果。

蚁群算法的核心在于挥发函数(Evaporation Rate)和信息素覆盖(Pheromone Coverage),通过这两个函数控制信息素在搜索过程中的流动和新建,在搜索过程中提高发现最优解的概率。

基于信息素的蚁群算法优化及其应用研究

基于信息素的蚁群算法优化及其应用研究

基于信息素的蚁群算法优化及其应用研究随着计算机和通信技术的发展,越来越多的优化问题需要解决,而这些问题可以从生物学的角度来考虑,使用信息素作为优化的依据。

其中,蚁群算法是一种比较流行的优化算法之一。

蚁群算法模拟了蚂蚁的觅食行为,将蚂蚁的移动和信息素的沉淀结合在一起,从而达到优化的目的。

一、蚁群算法的基本原理蚁群算法的基本原理是基于蚂蚁寻找食物的行为,这种行为可以描述为“正反馈”的过程。

当一只蚂蚁发现了一些食物后,它会沿着一条路径返回蚁巢,同时释放出信息素,这个信息素会吸引其它蚂蚁。

当这些蚂蚁沿着这条路径前行的时候,它们也会释放信息素,从而增加这条路径上信息素的浓度,吸引更多蚂蚁前来。

这样的过程会不断重复,当一条路径上的信息素浓度超过一定的阈值时,这条路径就会成为一个“正选”路径,更多的蚂蚁将会选择这条路径。

但是,由于信息素会随着时间的推移而挥发,这条路径的信息素浓度也会逐渐减少。

当信息素浓度低于一定的阈值时,这条路径就会转化为“反选”路径,蚂蚁就不会再选择这条路径。

二、蚁群算法的优化过程蚁群算法的优化过程可以分为三个主要的步骤:初始化、信息素更新和路径选择。

(1)初始化在初始化阶段,需要设置蚁群的参数,包括蚂蚁数量、信息素浓度、启发因子等。

同时,需要生成一个初始的解的集合,称之为“蚁巢”。

(2)信息素更新在信息素更新阶段,需要根据前一阶段的蚂蚁行为更新信息素的浓度。

具体来说,每只蚂蚁都会根据某种启发式规则来选择移动的方向,然后更新信息素浓度。

对于一条路径上信息素的增加或减少程度,可以根据公式进行计算。

(3)路径选择在路径选择阶段,每只蚂蚁都会根据现有的信息素浓度和启发因子选择移动的方向。

具体来说,每只蚂蚁会根据以下公式选择路径:$$P_{i,j}=\frac{[\tau_{i,j}^\alpha\times\eta_{i,j}^\beta]}{\sum_{k\inV_i}[\tau_{i,k}^\alpha\times\eta_{i,k}^\beta]}$$其中,$P_{i,j}$表示从节点$i$到节点$j$的转移概率,$\tau_{i,j}$表示节点$i$到节点$j$的信息素浓度,$\eta_{i,j}$表示节点$i$到节点$j$的启发式因子,$\alpha$和$\beta$表示信息素浓度和启发式因子的相对重要程度,$V_i$表示节点$i$的可达节点集合。

蚁群优化算法及其应用研究

蚁群优化算法及其应用研究随着计算机技术的不断发展,各种优化算法层出不穷,其中蚁群优化算法作为一种新兴的智能优化算法,已经引起了广泛的关注和研究。

本文主要介绍蚁群优化算法的基本原理、算法流程及其在实际问题中的应用。

一、蚁群优化算法的基本原理蚁群优化算法是一种仿生智能算法,其基本原理是模拟蚂蚁在寻找食物时的行为。

在蚂蚁寻找食物的过程中,蚂蚁会释放一种叫做信息素的物质,用来标记通路的好坏程度。

其他蚂蚁在寻找食物时,会根据信息素的浓度选择走过的路径,从而最终找到食物。

蚁群优化算法的基本思想就是将蚂蚁寻找食物的行为应用到优化问题中。

在算法中,每个解就相当于蚂蚁寻找食物的路径,信息素就相当于解的质量。

当蚂蚁在搜索过程中找到更好的解时,就会释放更多的信息素,从而吸引其他蚂蚁继续探索这个解。

通过不断地迭代,最终找到全局最优解。

二、蚁群优化算法的算法流程蚁群优化算法的算法流程主要包括以下几个步骤:1.初始化信息素和解的质量在算法开始之前,需要对信息素和解的质量进行初始化。

一般情况下,信息素的初始值为一个比较小的正数,解的质量可以通过一个评价函数进行计算。

2.蚂蚁的移动在每一轮迭代中,每个蚂蚁会根据当前信息素的分布和启发式函数选择下一步要走的方向。

启发式函数一般是根据当前解的质量和距离计算的。

3.信息素的更新当每个蚂蚁完成一次搜索后,需要更新信息素的浓度。

一般情况下,信息素的更新公式为:τi,j = (1-ρ)τi,j + Δτi,j其中τi,j表示从城市i到城市j的信息素浓度,ρ表示信息素的挥发因子,Δτi,j表示当前蚂蚁留下的信息素。

4.全局信息素的更新在每一轮迭代中,需要对全局信息素进行更新。

一般情况下,全局信息素的更新公式为:τi,j = (1-α)τi,j + αΔτi,j其中α表示全局信息素的影响因子,Δτi,j表示当前蚂蚁留下的信息素。

5.终止条件的判断当达到预设的迭代次数或者满足一定的停止条件时,算法停止。

基于连续空间优化问题的蚁群算法及其应用研究的开题报告

基于连续空间优化问题的蚁群算法及其应用研究的开题报告1. 研究背景与意义蚁群算法是近年来发展成熟的一种启发式优化算法,其智能化搜索过程受到仿生学蚂蚁群集行为规律的启发,已经成功应用于许多优化问题的求解中,并取得了良好的效果。

在连续空间优化问题中,蚁群算法可以通过维护一个多元优化函数的蚁群种群,实现对连续解域的智能搜索和优化。

因此,研究基于连续空间优化问题的蚁群算法及其应用具有重要的理论和应用价值。

2. 研究内容本论文拟研究基于连续空间优化问题的蚁群算法,包括算法模型、搜索策略及其在连续空间优化问题中的应用。

具体研究内容包括以下几个方面:(1)基于蚁群算法的连续空间优化问题模型设计。

(2)基于多元函数优化的蚁群算法搜索策略设计。

(3)基于不同优化目标的连续空间优化问题应用案例分析。

(4)蚁群算法与其他优化算法的比较研究。

3. 研究方法本论文主要采用文献研究和实验分析相结合的方法。

文献研究主要是对蚁群算法在连续空间优化问题领域的相关理论和应用研究进行综述和分析,建议引用十年以上的国内外学术期刊及文献。

实验分析主要是通过对多元函数优化问题的实验验证,探索蚁群算法在不同优化目标下的优化效果和局限性。

具体实验内容包括算法参数的敏感性分析、算法收敛性与鲁棒性评估、算法与其他优化算法性能比较等。

4. 研究进度计划本论文拟于2022年2月至2022年10月之间完成,具体进度安排如下:(1)2022年2月至2022年4月:蚁群算法理论和应用文献阅读和整理。

(2)2022年5月至2022年7月:基于多元函数优化的蚁群算法模型设计和实验方案制定。

(3)2022年8月至2022年10月:实验数据分析及论文撰写。

5. 预期成果本论文研究基于连续空间优化问题的蚁群算法及其应用,预期取得以下成果:(1)设计了基于多元函数优化的蚁群算法模型,在连续空间优化问题中实现智能化搜索和优化。

(2)实验分析了蚁群算法在不同优化目标下的优化效果和局限性。

一种求解连续空间约束优化问题的蚁群算法

一种求解连续空间约束优化问题的蚁群算法蚁群算法是一种用于求解连续空间约束优化问题的智能算法,它可以在搜索过程中考虑对连续空间中的约束。

它以蚂蚁的协作行为为模型,通过交互式迭代学习的方法来搜索优化的最优点。

蚁群算法首先将被优化的多变量函数想象为一个虚拟蚁群运行的空间,然后引入一种启发式规则来促进蚁群在这个空间里收敛。

这样,每只蚂蚁会在该空间中寻找最优点。

1、关于蚁群算法(1)概念:蚁群算法是一种以蚂蚁群集体智能行为为基础,用于求解连续空间约束优化问题的计算方法,它采取交互式迭代学习的方法,通过不断迭代的过程来获取局部最优解的全局最优解。

(2)运行机制:蚁群算法通过不断派生更新后的解来寻找全局最优解,它以有限集合中的粒子为搜索基础,通过分布式迭代迭代式搜索获取高效可用的解决方案。

(3)优点:蚁群算法搜索过程中可以很好地考虑约束,计算复杂度较低,可以很好地并行计算,具有自适应性,可以抗局部局势影响,对解的准确度更高,计算效率高2、蚁群算法的应用(1)服务排队:蚁群算法可用于排队管理,求解系统的服务时间最优策略。

(2)复杂工程设计:可以用于建筑、机械等复杂工程设计优化,通过模拟蚁群大量行为来搜寻对目标值的最佳取值,以此计算出最佳设计方案。

(3)优化投资组合:可以应用于投资组合优化,通过蚁群智能技术,找出投资组合可以得到更优的风险收益指标。

(4)飞行路径规划:蚁群算法可用于航空航迹规划,通过迭代寻优,解决航班活动的最优路径问题。

3、蚁群算法的缺陷(1)结果可能不稳定:蚁群算法运行的结果可能不稳定,算法的收敛性、局部搜索特性决定算法的收敛性,如果初始参数不合理,可能导致收敛至错误的最优值。

(2)调整参数对结果影响大:参与蚁群算法运行的参数会对算法运行结果造成极大的影响,需要谨慎审查才能得到可靠的结果。

(3)计算复杂度高:蚁群算法需要大量的计算,耗时可能较长,因此针对特定临界问题,其计算度可能较大。

(4)算法初值依赖性强:蚁群算法对初值依赖性很强,如果初值设置不当,结果有可能会出错,而且需要大量试验才能获得正确的结论。

蚁群优化算法及其应用研究

蚁群优化算法及其应用研究
蚁群优化算法(Ant Colony Optimization,简称ACO)是一种新兴的基于密度信息的群智能优化技术,是一种由多只蚂蚁理性行为协同搜索最优解的复杂优化算法。

该算法在处理多种组合优化问题时具有不错的实用价值,例如旅行商问题、仓库搬运问题、背包问题以及路径覆盖问题等。

蚁群优化算法的原理是根据蚂蚁以递增的概率在各解的集合中搜索,并把解的可能性尽可能地重新分布在蚂蚁搜索的道路中,借以达到找出最优解的效果。

这种重新分布的过程是依据蚂蚁之间的认知,逐渐地形成一个信息流,来用来帮助每只蚂蚁按照可行的最优路径继续搜索;当蚁群迭代到收敛时,系统便放出少量蚂蚁,用以把形成的信息流引导到最佳的全局极值。

ACO是一种强大的机器学习技术,并在广泛的工程领域有过良好的实现,包括:计算机视觉、机器人规划、认知计算、网络优化、交通模拟、复杂生态系统模拟、计算机辅助设计、工作流程优化、数据挖掘和机器人轨迹规划等。

在这些方面,ACO算法应用范围十分广泛,其优势体现在算法复杂度低;有效控制最优解搜索的扩散和收敛;足够的并发执行性能,以及支持任意异构的设备系统;以及更高的稳定性和可靠性,提高了解决复杂问题的能力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

*)国家自然科学基金项目(10471045)、广东省自然科学基金(04020079)、华南理工大学自然科学基金(B13-E5050190)。

吴广潮 讲师,博士研究生,研究领域为算法设计与分析,数据库与信息处理;黄 翰 博士研究生,研究领域为进化计算方法的理论基础,进化计算方法的优化设计及其应用。

计算机科学2008V ol .35№.3 基于离散数字编码的蚁群连续优化算法*)吴广潮1,2 黄 翰2(华南理工大学数学科学学院 广州510640)1 (华南理工大学计算机科学与工程学院 广州510640)2摘 要 本文提出了一种基于离散编码的蚁群连续优化算法(CA CO -D E ),用于求解连续优化问题。

以往蚁群算法(A CO )的研究,以求解离散优化问题为主,较少涉及连续优化问题。

与经典的A CO 算法不同,CACO -DE 将有限精度的实数转化为一个数字串,数字串的每位取0到9之间的数字,从而实现了用离散编码描述实数的效果。

CA CO -DE 延用了经典A CO 算法的框架,并加入了特殊的选择机制、信息素更新方式和局部搜索策略。

测试实验结果表明:CA -CO -DE 比以往同类算法求解速度更快且精度更高。

关键词 蚁群算法,连续优化,离散数字编码 Ant Colony Continuous Optimization Based on Discrete Numerical EncodingW U G uang -Chao 1,2 H U AN G Han 2(School of M athematical S cien ces ,S ou th China University of Tech nology ,Guangzhou 510640)1(S chool of Computer S cien ce and En gineering ,S outh China Univers ity of Technology ,Gu angz hou 510640)2 A bstract T he pr esented paper pro po ses an ant colony algo rithm fo r continuo us o ptimization (CA CO -DE ).A CO alg o -rithms are alway s used fo r discr ete o ptimizatio n problem s ,but rar ely fo r continuous o ptimiza tion .CA CO -DE is de -sig ned based o n the numerical encoding in which each real numbe r is chang ed into a string made up of character s {0,…,9}.T he leng th o f enco ding depends on the accuracy and dimension of the so lutio n .A r tificial ants construct so lutio ns being guided by a hig h dimensio n phero mone v ector .T he f ramewo rk of the proposed algo rithm is similar to the cla ssi -cal ACO except for the upda ting rule a nd local sear ch stra teg y .So me pr elimina ry re sults o btained o n benchmar k pro b -lems sho w that the new method can so lv e co ntinuous o ptimizatio n problem s faster than o the r a nt and no n -a nt methods .Keywords A nt co lo ny alg o rithm ,Co ntinuous optimizatio n ,Discre te numerical encoding 1 引言蚁群算法(ACO )[1]是由M .Do rig o 及其同伴在上世纪90年代提出的一种仿生算法,用于求解如旅行商问题[2]之类的组合优化问题。

目前,A CO 算法的应用已经扩展到解决多种优化问题,如:V ehicle Ro uting [3]、Q uadra tic assig nment [3]、Qo S [4]、Job sho p [5]等,但这些问题几乎都是离散优化问题。

与遗传算法、粒子群算法和进化规划算法不同,ACO 算法求解连续优化问题的设计研究较少。

第一种求解连续函数优化问题的蚁群算法为Co ntinuous A CO (CA CO )算法[6],其主要思想是将连续区间分段,离散化后区间段视为T SP 问题中的城市。

CA CO 算法虽然实现了A CO 算法求解连续优化问题0的突破,但是求解效果并不理想。

后期又对CACO 算法作了些改进[7,8],提高了求解的精度,但是改进的程度有限。

后来相应又有A PI [9]和CIAC [10]。

另外两种算法出现,取得了一定的改进效果,但这些算法加入了遗传算法等其他计算工具的策略,只是用了A CO 算法的框架而已。

最新的算法还有基于正态分布的ACO 算法[11],然而这种算法也需要将区间分段离散化,从而会出现两个缺点:1.算法求解精度有限;2.算法求解的计算复杂度较高,需要花费较多的函数评估次数。

作为改进,本文在文[12]基础上提出了一种新型的求解连续优化问题的A CO 算法:基于离散编码的蚁群算法(CA -CO -DE )。

实验结果表明:CACO -D E 比以往其他ACO 算法求解的效果更好,而且速度更快。

2 AC O 算法基本思想介绍自然界蚂蚁在其经过的路径上会留下某种生物信息物质(信息素),该物质会吸引蚁群中的其它成员再次选择该段路径。

食物与巢穴之前较短的路径容易积累较多的信息素,因而使得更多的蚂蚁选择走该段路径,最终几乎所有的蚂蚁都集中在最短路径上完成食物的搬运。

M .Do rigo 等从此现象中抽象出路径选择和信息素积累的数学模型,作为蚁群算法的核心;并通过对蚂蚁寻找最短路径的计算机模拟,实现了对TS P 问题的求解[2]。

按M .Do rigo 的设计[3],蚁群算法的基本框架如图1所示。

图1 蚁群算法(A CO )的基本框架一般情况下,A CO 算法可以分为三个部分:生成解(Co n -structA ntsSo lutio ns ),更新信息素(U pdatePhero mone s )和附加策略(DaemonA ctions )。

·146·3 实数的离散编码表示在CACO -DE 算法提出之前,需要给出用离散数字编码表示实数的方法。

首先,给出M .Dorig o 对实数连续优化问题的定义[13]。

定义1 定义P =(S ,C ,f )为连续优化问题,其中S 为有限实数集搜索空间,C 是约束集合,f ∶S ※R +为最大或者最小目标函数,R +为正实数集。

下面给出一个定义,实现将有限长度实数转化为离散编码。

定义2 定义f 1∶R m ※D 为将有限长度实数转化为离散编码,其中 x ∈R m 是一个精度为10-m 的实数,且D ={d d =(d 0,d 1,…,d L ),d i ∈{0,1,…,9},i =1,…,L ;d 0∈{0,1}},d i =( x -∑i -1j =1d j ×10L -m -j )/10L -m -i 和d 0=0(x ≥0)或d 0=1(x <0)。

同理,可以给出定义2的逆映射。

定义3 定义f -11∶D ※R m 将离散编码转化为有限长度实数,其中D ={d d =(d 0,d 1,…,d L ),d i ∈{0,1,…,9},i =1,…,L ;d 0∈{0,1}}, x ∈R m 是一个精度为10-m 的实数,x=∑Li =1d i ×10-(i -L +m )(d 0=0)或x =(-1)×∑Li =1d i ×10-(i -L +m )(d 0=1)。

例如,假设d =(1,1,6,8,3,3,6)和m =2,f -11(d )=x =-1683.36,L =6。

因此,一个连续优化问题的解可以编码为一个数字串,即实现了编码的离散化。

这样就可以用A CO 算法的选择机制等算法策略。

CA CO -D E 就是用定义2进行编码,而用定义3进行解码。

4 CAC O -DE 算法的设计CA CO -D E 的流程满足A CO 算法的基本框架(图1),如图2所示。

图2 CACO -DE 算法的流程4.1 生成解的选择机制ACO 算法的核心部分是基于信息素的选择机制[1],CA -CO -DE 算法的信息素设计取决于问题变量的数量和精度。

CA CO -D E 是用一个高维向量τ刻画信息素的,其中:τ(i ,j )是10×10的实数矩阵,i =1,…,n 和j =2,…,L (L >m );τ(i ,1)是一个2×10的实数矩阵,τ(i ,0)=(τ(i ,0,0),τ(i ,0,1))是一个2维向量。

给定一个连续最优化问题P =(S ,C ,f ), s ∈S 是一个向量s =(x (1),…,x (i ),…,x (n )),其中x (i )∈R 是精度为10-m (i )的第i 个变量。

根据定义2,s 可以编码为d =(d (1),…,d (i ),…,d (n ))=(d 1,…,d p ,…,d (L +1×n ))。

CA CO -DE 第p 个位置的选择机制根据p 值(p =1,…,(L +1)×n ),分三种情况:当(p -1)mod (L +1)=0时,τ(i ,0,0)选择“0”作为解组成部分d (i )0的信息素,即x (i )≥0。

同理,τ(i ,0,1)是选择“1”的信息素,即x (i )<0。

此时,选择概率为:P {d p =e }=τ(i ,0,e )τ(i ,0,0)+τ(i ,0,1)(1)其中,i =1,…,n 和e ∈{0,1}。

当(p -1)mod (L +1)=1时,τ(i ,1,0,a )选择“a ”作为解组成部分d (i )1的信息素(x (i )≥0)。

相关文档
最新文档