月亮走吧 关注:27贴子:683
  • 1回复贴,共1

生物学启迪 群体智能+蚁群算法(ant colony optimization.ACO)

取消只看楼主收藏回复

很多人都认为,如果上帝是一个程序员,那么他的工作量将大的惊人。
单一一个细胞的运行结构,编程工作量就可能超过天文数字的概念,其中光一个脱氧脱糖核酸的组合,就够微软的技术组干一百多年。
然而,事实上,现在越来越多的科学家和程序员发现,也许我们的世界,并没有建立在如此复杂的理论基础上,而是基于一些十分简单的规则。
这里有一个典型的例子,就是蚁群算法。

名词解释:
蚁群算法(ant colony optimization, ACO),又称蚂蚁算法,是一种用来在图中寻找优化路径的机率型技术。它由Marco Dorigo于1992年在他的博士论文中引入,其灵感来源于蚂蚁在寻找食物过程中发现路径的行为。蚁群算法是一种模拟进化算法,初步的研究表明该算法具有许多优良的性质.针对PID控制器参数优化设计问题,将蚁群算法设计的结果与遗传算法设计的结果进行了比较,数值仿真结果表明,蚁群算法具有一种新的模拟进化优化方法的有效性和应用价值。

具体的实现过程不累述,只提一点,就是整个蚁群算法只有100多行代码,但是它完美的再现了蚂蚁寻找食物的运行方式,包括寻找最短路径,避免走回头路以及如何最大范围内的扩大搜索面。

在观看这段代码的时候,很多方面,能发现上帝当时在编程的思维痕迹,比如说信息素变量运用(《蚂蚁革命》中被称为费尔蒙的东西),蚁群算法算是一种对世界的反编译,复杂无比的蚁群搜索系统,被简单的解析成原始的小块。

这个程序现在被广泛用于电力系统,火车系统,路由系统以及搜索引擎的抓取程序。

由此,我们可以引申的思考一些问题,比如说世界的复杂本源背后的运行规律,是否和蚂蚁算法一样简单?

很多专家提出的“小世界”概念中就可以发现了端倪,原来我们所在的整个生物系统,其实是类似于蚁群算法这种简单程序叠加而产生的。

也就是说,复杂的行为,不是本质,而是现象,简单程序控制下的个体的简单行为,互相影响,从而演化成非常复杂的行为,甚至构成极端复杂的社会体系,甚至是思维。

我相信这就是爱迪生研究思维之后,所得出的结论的真相:我们的思维产生,是因为“无数小人在我们头脑里活动。”

这里引进另一个概念,叫做群体思维来阐述这个问题。这也是研究蚂蚁,蜜蜂等社会昆虫得出的经典结论之一。

概念的核心是:单一的蚂蚁,是不具有思维性的,它只对环境产生反应,而发生一些行为,单一的蚂蚁的生存能力非常弱小,然而,100万只蚂蚁互相作用形成的行为,就变得非常复杂,蚂蚁的繁殖,食物的搜集,它们甚至能通过细菌的发酵,控制窝里的温度,在泥土中修建复杂无比,极端准确的通道,控制整个蚁巢的建筑结构,不会因为巢穴的扩大而崩塌。

这些行为体现的智力,是大型哺乳动物无法达到的,就算是黑猩猩,你也无法教会他通过细菌发酵去调节泥土的温度,单一一只蚂蚁,同样也无法做到这一点,但是一窝蚂蚁,却完成的近乎完美。

这种单一个体智力底下,但是群体拥有极高智力的现象,被称呼为群体智能。同样的东西,包括蜜蜂,真菌复合体,白蚁等等。

群体智能是一个很多人不敢触及的话题,因为它可以非常容易的复制到很多学科中去。比如说我举一个最简单的例子。

人的脑细胞,单个脑细胞不具有任何的智力,他只运行一些接受神经电流然后转发的人物,但是120亿个人的脑细胞,互相运作,可以产生这个世界上最伟大的东西——“思维”。

也许有人认为这比蚂蚁要复杂多了,其实,你可以发现如果一窝蚂蚁有100万只,则一只蚂蚁必须和另外99万只蚂蚁建立链接,而人的脑细胞现在所开发的10%活跃细胞中,每个细胞也只有2万条对外的神经联系,就是说,从运行效率来说,蚂蚁远远高于人脑。

那你也许要问,如果是这样的话,为什么蚂蚁窝的群体智力低于人的智力呢?

群体智慧理论里,最大的争议就是这一点,大部分人认为,群体的数量,和信息的传播速度,决定着群体的智慧程度。



IP属地:北京1楼2008-09-15 23:04回复
    是南派三叔写得。地球就是一个大


    IP属地:北京3楼2008-09-15 23:22
    回复