蚂蚁算法在工件排序问题上应用的研究.pdfVIP

  • 2
  • 0
  • 约2.22万字
  • 约 29页
  • 2017-09-03 发布于江苏
  • 举报

蚂蚁算法在工件排序问题上应用的研究.pdf

L2、蚂蚁算法的简单实例 这罩用一个形象的实例来说明蚂蚁算法的原理: 假设有两条道路可从蚂蚁的巢穴到达食物点,分别记为ABD和ACD 食物点 图一、蚂蚁寻食 其中AB和BD的路径长度为1,AC和CD的路径长度为2,从食物到D点距离 为l,从巢穴到A点距离为1。 在t=0时刻,假设有20只蚂蚁从巢穴出发到达A点,它们将以相同的概念 进行路径选择,因此会有10只蚂蚁选择ABD道路,有lO只蚂蚁选择ACD道 路。 在t=4时刻,第一组到达食物源的蚂蚁将折回。 在t=5时刻,两组蚂蚁将在D点相遇。此时BD上的信息素数量与CD上的相 同,因为各有10只蚂蚁选择了相应的道路。从而有5只返回的蚂蚁将选择BD 而另5只将选择CD。 在t=8时刻,前5个蚂蚁将返回巢穴,而AC、CD和BD上各有5个蚂蚁。 在t=9时刻,前5个蚂蚁又回到A并且再次面对往左还是往右的选择。这时, 2 AB上的轨迹数是20而AC上是15,因此将有较为多数的蚂蚁选择往左,从而 增强了该路线的信息素。 随着该过程的继续,两条道路上信息素数量的差距将越来越大,直至绝大多 数蚂蚁都选择了最短的路线。正是由于一条道路要比另一条道路短,因此,在相 同的时间区间内。短的路线会有更多的机会被选择。 I.3、蚂蚁算法的适用范围 从蚂蚁算法自身的特点来看,最早提出蚂蚁算法主要是用来解决著名的旅行 商问题(TSP)的,并以TSP问题为测试基准,与其它常用的一些启发式算法进行 比较,其结果比较好【3]。而自从蚂蚁算法在TSP上取得成效以来,已陆续渗透到 其它问题领域中,如:二次分配问题、工件排序问题、图着色问题、大规模集成 电路设计、通讯网络中的负载平衡问题、车辆调度问题等等,在许多方面表现出 相当好的性能[4】。由于蚂蚁算法对图的对称性和目标函数没有特殊的要求,因 此可以应用于各种非对称性问题和非线性问题。 由于蚂蚁算法特殊的生物性质,它不仅适用于目前的串行计算机,更易于未 来的并行计算,其运行效率就会大幅度提高。这一点从蚂蚁算法提出之初就以分 布式优化方法来命名即可看出。这也是蚂蚁算法相比较于其它算法的优势,也是 未来利用分布并行计算来解决大规模问题的一个很好的思路,将有很大的研究潜 力。 1.4、蚂蚁算法的一般过程 符号说明: na一蚂蚁个数; 巩——能见度(visibility); f。——轨迹上信息素的强度(intensity); Ar‘。——蚂蚁k留下的信息素数量,一般可以定义为 △r★。={Q7乙,若‘叠萎蔷最优路径上; P‘F——蚂蚁k的转移概率,与f“”+r/p。成正比j是尚未访问结点 轨迹强度的更新方程为勺=p+勺+∑Ar‘。; k 其中,各参数的含义为: 口——轨迹的相对重要性(口≥0); ∥——能见度的相对重要性(∥≥0) p——轨迹的持久性(O≤p1),1一p理解为迹衰减度(evaporation); Q——体现蚂蚁所留轨迹信息素数量的一个常数 一般步骤: 置于n个顶点上: Step2、将各蚂蚁的初始出发点置于当前解集中;对每个蚂蚁k(k=l,…,na)按概率 P+,移至下一顶点j;将顶点J置于当|i{『解集; Step3、计算各蚂蚁的目标函数值zk(bl,…,na);记录当前的最好解; Step4、按更新方程修改轨迹强度; Step5、对各边弧(i,j),置Ar。一O;m—Ilt+1; Step6、若nt预定的迭代次数,且无退化行为(即找到的都是相同解),则转step2; 1.5、蚂蚁算法在捧序问题上的进展 蚂蚁算法的研究至今仍处于萌芽时期,从目前的已有的文章来看,主要还是 集中在应用方面,尤其是在排序问题上的蚂蚁算法至今还没能看到什么理论上的 研究,表l给出的是蚂蚁算法与其它一些常见自然算法的研究进展情况: 表1、一些常见的自然算法的研究进展 ☆ 表示已有成熟结果 △ 表示已有相当一部分结果 一 ? 表示仅有少量结果

文档评论(0)

1亿VIP精品文档

相关文档