- 1、本文档共56页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]第四部分 用群集智能求解问题
第四部分 用群集智能求解问题 4.1群集智能算法的研究背景 4.2群集智能的基本算法介绍 4.3 集智系统介绍 4.4 群集智能的优缺点 4.1群集智能算法的研究背景 起源于对人工生命的研究。 “人工生命”是用来研究具有某些生命基本特征的人工系统。包括两方面的内容: 1. 研究如何利用计算技术研究生物现象 2. 研究如何利用生物技术研究计算问题 在由简单个体组成的群落与环境以及个体之间的互动行为,也可称作“群集智能” 4.1群集智能算法的研究背景 对群集智能的研究是受社会性昆虫行为的启发,从事计算研究的学者通过对社会性昆虫的模拟产生了一系列对于传统问题的新的解决方法,这些研究就是群集智能的研究。群集智能 (Swarm Intelligence)中的群体(Swarm)指的是“一组相互之间可以进行直接通信或者间接通信(通过改变局部环境)的主体,这组主体能够合作进行分布问题求解”;而所谓群集智能指的是“无智能的主体通过合作表现出智能行为的特性”。 4.2群集智能的基本算法介绍 4.2.1 蚁群算法 4.2.2 flock算法 蚁群算法是对蚂蚁群落食物采集过程的模拟,已经成功运用在很多离散优化问题上; flock算法后者也是起源对简单社会系统的模拟,最初设想是模拟鸟群觅食的过程。 蚁群算法是受到上世纪五十年代仿生学的启发,由意大利学者M.Dorigo等人首先提出的一种新型的模拟进化算法,该算法在求解组合优化问题中体现出优良的特性。作为一种基于种群的启发式搜索算法,它能很好的利用蚁群的集体寻优特征来寻找蚁穴和食物之间的路径。因此,被广泛应用于旅行商问题(TSP)、Job-shop调度问题、指派问题以及数据的特征聚类等等,都取得了良好的仿真试验结果。 研究表明,蚂蚁在行进途中会留下一种信息素,而且单个蚂蚁都倾向于爬到信息素浓度最大的地方,虽然蚂蚁个体之间不发生联系,但是它們通过信息素影响环境,同时也受到环境中的信息素的影响。这样,一旦其中一只蚂蚁发现食物,通过信息素会引来更多的蚂蚁,进而更多的蚂蚁也将留下更多的信息素,这就形成了信息的正反馈,最终所有的蚂蚁都能成功找到食物。 4.2.1蚁群算法 1. 蚁群算法的模拟试验 试验简介 该试验在各个蚂蚁在没有事先告诉它們食物在什么地方的前提下开始寻找食物。当一只找到食物以后,它会向环境释放一种信息素,吸引其他的蚂蚁过来,这样越来越多的蚂蚁会找到食物!有些蚂蚁并没有像其它蚂蚁一样总重复同样的路,它們会另辟蹊径,如果令开辟的道路比原来的其他道路更短,那么,渐渐,更多的蚂蚁被吸引到这条较短的路上来。最后,经过一段时间运行,可能会出现一条最短的路径被大多数蚂蚁重复着。 4.2.1蚁群算法 为什么小小的蚂蚁能够找到食物,它們具有智能么?要为蚂蚁设计这样的一个智能程序,需要设置那些功能呢? 首先,我们要让蚂蚁能够避开障碍物,就必须根据适当的地形给它编进指令让它們能够巧妙的避开障碍物; 其次,要让蚂蚁找到食物,就需要让它們遍历空间上的所有点; 再次,如果要让蚂蚁找到最短的路径,那么需要计算所有可能的路径并且比较它们的大小。 4.2.1蚁群算法 这个试验程序的每个蚂蚁的核心程序编码不过100多行。为什么这么简单的程序会让蚂蚁干这样复杂的事情? 答案是:巧妙地利用简单规则来实现集体智慧。每只蚂蚁并不是像我们想象的需要知道整个世界的信息,它們其实只关心很小范围内的眼前信息,而且根据这些局部信息利用几条简单的规则进行决策,这样,在蚁群这个集体里,复杂性的行为就会凸现出来。这就是人工生命、集智算法的复杂性科学的体现!这些规则就是下面所述的简单的6条规则。 4.2.1蚁群算法 范围: 蚂蚁观察到的范围是一个方格世界,蚂蚁有一个参数为速度半径VR(一般是3),那么它能观察到的范围就是VR*VR个方格世界,并且当前能够移动的距离也在这个范围之内。 4.2.1蚁群算法 环境: 蚂蚁所在的环境是一个虚拟的世界,其中有障碍物,有别的蚂蚁,还有信息素。信息素有两种:一种是找到食物的蚂蚁洒下的食物信息素;一种是找到窝的蚂蚁洒下的窝的信息素。每个蚂蚁都仅仅能感知它范围内的环境信息。环境又以一定的速率让信息素消失。 4.2.1蚁群算法 觅食规则: 在每只蚂蚁能感知的范围内寻找是否有食物,如果有就直接过去;否则看是否有信息素,并且比较在能感知的范围内哪一点的信息素最多,这样,它就朝信息素多的地方走,并且每只蚂蚁多会以小概率犯错误,从而并不总是往信息素最多的点移动。蚂蚁找窝的规则和上面一样,只不过它对窝的信息素做出反应,而对食物信息素没有反应。 4.2.1蚁群算法 移动规则: 每只蚂蚁都朝向信息素最多的方向移动。当周围没有信息素指引的时候,蚂蚁会按照自己原来运动的方向惯
文档评论(0)