资源描述:
《matlab蚁群算法精讲及仿真图》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、蚁群算法matlab精讲及仿真4.1基本蚁群算法4.1.1基本蚁群算法的原理蚁群算法是上世纪90年代意大利学者M.Dorigo,v.Maneizz。等人提出来的,在越来越多的领域里得到广泛应用。蚁群算法,是一种模拟生物活动的智能算法,蚁群算法的运作机理来源于现实世界中蚂蚁的真实行为,该算法是由MarcoDorigo首先提出并进行相关研究的,蚂蚁这种小生物,个体能力非常有限,但实际的活动中却可以搬动自己大几十倍的物体,其有序的合作能力可以与人类的集体完成浩大的工程非常相似,它们之前可以进行信息的交流,各自负责自己的任务,整个运作过程统一有序,在一只蚂蚁找食物的过程中,在自己走过的
2、足迹上洒下某种物质,以传达信息给伙伴,吸引同伴向自己走过的路径上靠拢,当有一只蚂蚁找到食物后,它还可以沿着自己走过的路径返回,这样一来找到食物的蚂蚁走过的路径上信息传递物质的量就比较大,更多的蚂蚁就可能以更大的机率来选择这条路径,越来越多的蚂蚁都集中在这条路径上,蚂蚁就会成群结队在蚁窝与食物间的路径上工作。当然,信息传递物质会随着时间的推移而消失掉一部分,留下一部分,其含量是处于动态变化之中,起初,在没有蚂蚁找到食物的时候,其实所有从蚁窝出发的蚂蚁是保持一种随机的运动状态而进行食物搜索的,因此,这时,各蚂蚁间信息传递物质的参考其实是没有价值的,当有一只蚂蚁找到食物后,该蚂蚁一般
3、就会向着出发地返回,这样,该蚂蚁来回一趟在自己的路径上留下的信息传递物质就相对较多,蚂蚁向着信息传递物质比较高的路径上运动,更多的蚂蚁就会选择找到食物的路径,而蚂蚁有时不一定向着信息传递物质量高的路径走,可能搜索其它的路径。这样如果搜索到更短的路径后,蚂蚁又会往更短的路径上靠拢,最终多数蚂蚁在最短路径上工作。【基于蚁群算法和遗传算法的机器人路径规划研究】该算法的特点:(1)自我组织能力,蚂蚁不需要知道整体环境信息,只需要得到自己周围的信息,并且通过信息传递物质来作用于周围的环境,根据其他蚂蚁的信息素来判断自己的路径。(1)正反馈机制,蚂蚁在运动的过程中,收到其他蚂蚁的信息素影响
4、,对于某路径上信息素越强的路径,其转向该路径的概率就越大,从而更容易使得蚁群寻找到最短的避障路径。(2)易于与其他算法结合,现实中蚂蚁的工作过程简单,单位蚂蚁的任务也比较单一,因而蚁群算法的规则也比较简单,稳定性好,易于和其他算法结合使得避障路径规划效果更好。(3)具有并行搜索能力探索过程彼此独立又相互影响,具备并行搜索能力,这样既可以保持解的多样性,又能够加速最优解的发现。4.1.2基本蚁群算法的生物仿真模型a为蚂蚁所在洞穴,food为食物所在区,假设abde为一条路径,eadf为另外一条路径,蚂蚁走过后会留下信息素,5分钟后蚂蚁在两条路径上留下的信息素的量都为3,概率可以认
5、为相同,而30分钟后baed路径上的信息素的量为60,明显大于eadf路径上的信息素的量。最终蚂蚁会完全选择abed这条最短路径,由此可见,蚂蚁之间的信息交换是一个正反馈过程,蚂蚁的觅食过程就是一个寻优路径过程。蚂蚁没有视觉,只能靠在行走过的路径上释放出的信息素来寻找路径,因此,蚂蚁走的路径越长,则释放的信息量越小。当后来的蚂蚁再次碰到这条路径时,选择信息量较大路径的概率相对较大,此时形成了一个正反馈机制。最短路径上的信息素t越来越大,而其他路径上的信息素t就会随着时间的流逝越来越少直至消失,最终蚂蚁群会找出最短的一条路径。当在路径上出现障碍物时,蚂蚁能够很快适应环境重新找到最
6、优路径。蚁群算法就是根据蚂蚁这一智能群体的自组织觅食行为寻找出一种新的智能计算模式。4.2蚁群算法的数学模型4.2.2基本蚁群算法的实现首先引入如下记号:为蚁群中蚂蚁的数量;为城市和城市之间的距离;为t时刻路径上的信息素数量;为城市的数量。初始时刻,每条路径上的信息素相等,设(A为常数),蚂蚁在移动中根据路径上信息素的多少来决定下一次前进的方向。基本蚁群算法一般采取随机比例规则,其表示在当前城市的蚂蚁k转移到下一个城市j的概率。为t时刻蚂蚁k由城市转移到城市j的状态转移概率如式4.1所示:(4.1)其中,表示蚂蚁k当前选择的城市集合;为禁忌表,它记录了蚂蚁k走过的城市;为信息启
7、发因子;为t时刻城市的能见度;为期望启发因子,表示能见度的重要性。为避免信息素残留过多而影响后面蚂蚁对启发信息的识别,每只蚂蚁移动一次或者周游所有的城市以后,必须要更新路径上留下的信息素。经过n个时刻,所有蚂蚁完成一次循环。各路径上的信息素按式(4.2)和(4.3)更新:(4.2)(4.3)其中,表示信息素挥发系数,为信息残留因子,通常;表示本次循环中路径上的信息素增量;表示蚂蚁k留在路径的信息素。由于信息素的更新方式繁多,M.Dorigo提出了三种不同的基本蚁群算法模型,分为Ant-Cyc