1701011564
我和数学有约:趣味数学及算法解析 10.5 不可思议的生物智能应用
1701011565
1701011566
在前面,我也提到过用遗传算法解决旅行商问题,问题求解速度较快,且求解结果是正确合理的。那么生物智能算法究竟是如何工作的呢?
1701011567
1701011568
在工程实践中,经常会接触到一些比较“新颖”的算法或理论,比如模拟退火、遗传算法、禁忌搜索和神经网络等。这些算法或理论都有一些共同的特性(比如模拟自然过程),通称为“智能算法”。它们在解决一些复杂的工程问题时大有用武之地。
1701011569
1701011570
生物智能优化算法要解决的一般是最优化问题。最优化问题可以分为:
1701011571
1701011572
(1)求解一个函数中,使得函数值最小的自变量取值的函数优化问题;
1701011573
1701011574
(2)在一个解空间里面,寻找最优解,使目标函数值最小的组合优化问题。
1701011575
1701011576
典型的组合优化问题有:旅行商问题(Traveling Salesman Problem,TSP)、加工调度问题(Scheduling Problem)、0-1背包问题(Knapsack Problem)及装箱问题(Bin Packing Problem)等。
1701011577
1701011578
【问题】生物智能方法有哪些?
1701011579
1701011580
【分析】
1701011581
1701011582
(1)遗传算法
1701011583
1701011584
遗传算法(Genetic Algorithm)是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机优化搜索方法。它是由美国的J.Holland教授在1975年首先提出,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则。遗传算法的这些性质,已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域。它是现代有关智能计算中的关键技术。
1701011585
1701011586
(2)模拟退火算法
1701011587
1701011588
模拟退火算法的依据是固体物质退火过程和组合优化问题之间的相似性。物质在加热的时候,粒子间的布朗运动增强,到达一定强度后,固体物质转化为液态,这个时候再进行退火,粒子热运动减弱,并逐渐趋于有序,最后达到稳定。
1701011589
1701011590
(3)粒子群算法
1701011591
1701011592
粒子群算法(PSO)是一种基于群体的随机优化技术。粒子群算法最早是在1995年由美国社会心理学家James Kennedy和电气工程师Russell Eberhart共同提出,其基本思想是受他们早期对许多鸟类的群体行为进行建模与仿真研究结果的启发。而他们的建模与仿真算法主要利用了生物学家Frank Heppner的模型。粒子群算法(PSO)与其他基于群体的进化算法相比,它们均初始化为一组随机解,通过迭代搜寻最优解。不同的是:进化计算遵循适者生存原则,而PSO模拟社会。将每个可能产生的解表述为群中的一个微粒,每个微粒都具有自己的位置向量和速度向量,以及一个由目标函数决定的适应度。所有微粒在搜索空间中以一定速度飞行,通过追随当前搜索到的最优值来寻找全局最优值。
1701011593
1701011594
(4)蚁群算法
1701011595
1701011596
蚁群算法是由意大利学者M.Dorigo等人于20世纪90年代初期通过观察自然界中蚂蚁的觅食行为而提出的一种群体智能优化算法。蚂蚁在运动的路线上能留下信息素,在信息素浓度高的地方蚂蚁会更多,相等时间内较短路径里信息素浓度较高,因此选择较短路径的蚂蚁也随之增加,如果某条路径上走过的蚂蚁越多,后面的蚂蚁选择这条路径的概率就更大,从而导致选择短路径的蚂蚁越来越多而选择其他路径(较长路径)的蚂蚁慢慢消失,蚁群中个体之间就是通过这种信息素的交流并最终选择最优路径来搜索食物的,这就是蚁群算法的生物学背景和基本原理。
1701011597
1701011598
蚁群算法目前已成功应用到了许多优化问题上,如二次分配、大规模集成电路设计、网络QoS路由及车辆调度问题等。但蚁群算法也同样存在一些缺陷,比如由于蚁群算法中个体运动随机,面对复杂优化问题时需要很长的搜索时间,同时还容易陷入局部最优中,这些问题还有待进一步深入研究并得到相应改进以使得该算法更加完美。
1701011599
1701011600
(5)人群搜索算法
1701011601
1701011602
人群搜索算法(SOA)是对人的随机搜索行为进行分析,借助脑科学、认知科学、心理学、人工智能、多Agents系统和群体智能等的研究成果,分析研究人作为高级Agent的利己行为、利他行为、自组织聚集行为、预动行为和不确定性推理行为,并对其建模用于计算搜索方向和步长。由于SOA直接模拟人的智能搜索行为,立足传统的直接搜索算法,概念明确、清晰、易于理解,是进化算法研究领域的一种新型群体智能算法。
1701011603
1701011604
在优化计算中,人的随机搜索行为可理解为:在连续空间的搜索过程中,较优解的周围可能存在更优的解,最优解可能存在于较优解的邻域内。因此,当搜寻者所处位置较优时,应该在较小领域内搜索;当搜寻者所处位置较差时,应该在较大领域内搜索。为此,SOA利用能有效描述自然语言和不确定性推理的模糊逻辑来对上述搜索规则进行建模,并确定搜索步长。
1701011605
1701011606
(6)鱼群算法
1701011607
1701011608
在一片水域中,鱼往往能自行或尾随其他鱼找到营养物质多的地方,因而鱼生存数目最多的地方一般就是本水域中营养物质最多的地方,人工鱼群算法就是根据这一特点,通过构造人工鱼来模仿鱼群的觅食。聚群及追尾行为,从而实现寻优,以下是鱼的几种典型行为。
1701011609
1701011610
(1)觅食行为:一般情况下鱼在水中随机地自由游动,当发现食物时,则会向食物逐渐增多的方向快速游去。
1701011611
1701011612
(2)聚群行为:鱼在游动过程中为了保证自身的生存和躲避危害会自然地聚集成群,鱼聚群时所遵守的规则有以下三条。
[
上一页 ]
[ :1.701011563e+09 ]
[
下一页 ]