基于遗传算法的人工生命演示系统的研究与实现

来源:南粤论文中心 作者:周剑利。马壮,陈贵清 发表于:2010-04-13 09:21  点击:
【关健词】人工生命;遗传算法;进化计算;仿真
摘要:本文讨论了人工生命仿真模型的建立方法,给出了一个基于遗传算法的人工生命模型及其演 示系统的实现。计算和考察了虚拟环境中生物在进化过程中的演变规律和涌现特征,模拟和解 释了一些生态行为和进化规律,如竞争、协作进化、群居、物种灭绝等现象。这种通过进化的 方法进行系统复杂性模拟的思想,对于研究认知进{匕和群体智能具有一定的参照意义。

引言
人工生命是一种利用进化计算模型,通过计算 机仿真,以化学或其他非生物为基体来描述生命的 模型。人工生命仿真仅对低级实体的行为进行编辑, 并且把全局模式作为低级实体间相互作用的结果表 现出来。人工生命则是进化计算在计算机仿真学上 的全新应用,它是利用进化论的原理,在计算机中 创建类似生命的实体。目前的人工生命系统有新生 件、软件和硬件三类。其中新生件采用人工制造或 控制组织分子产生的人工系统。软件则依靠计算机 模拟生物系统,以及模拟生物形态变化过程的工具。 硬件多见于人工整体控制的机器人。构造人工生命 的方法通常分为弱方法和强方法。前者通过模拟已 知的生命现象或生物组织功能建立人工生命模型, 以加深理解实际的生命现象所蕴涵的复杂行为理 论;后者试图制造人工生命,并探索生命的本质,它 不局限于计算机程序,可以是任意的生命形式。本 文仅讨论一种基于遗传算法的人工生命模型,用以 模拟和解释一些简单的生态行为和进化规律(如竞 争、协作进化、群居、物种灭绝等现象,属于弱方 法)。
1遗传算法简介

遗传算法是模拟达尔文的遗传选择和自然淘汰 的生物进化过程的计算模型。它的思想源于生物遗 传学和适者生存的自然规律,是具有“生存+检测” 的迭代过程的搜索算法。遗传算法以一种群体中的 所有个体为对象,并利用随机化技术指导对一个被 编码的参数空间进行高效搜索。其中,选择、交叉 和变异构成了遗传算法的遗传操作;参数编码、初 始群体的设定、适应度函数的设计、遗传操作设计、 控制参数设定五个要素组成了遗传算法的核心内容。 作为一种新的全局优化搜索算法,遗传算法以其简 单通用、鲁棒性强、适于并行处理以及高效、实用 等显著特点,在各个领域得到了广泛应用,取得了 良好效果,并逐渐成为重要的智能算法之一。
遗传算法的工作过程如下: 步骤1编码:将问题解的表示变换成遗传空
间解的表示,即用二进制编码构造染色体。 步骤2产生群体:随机产生n个个体组成一个
群体,该群体代表优化问题的一些可能解的集合。 步骤3评价:计算每个个体的适应度值(fimcss
function),适应度为群体进化时的选择提供依据。
 
步骤4选择:按一定概率从群体P(t)中选取
M对个体,作为双亲用于繁殖后代,产生新的个体 加入下一代群体P(t+1)中。一般P(i)与f(i) 成正比,就是说,适合于环境的优良个体将有更多 的繁殖后代的机会,从而使优点得以遗传。选择是 遗传算法的关键,它体现了自然界中“适者生存”的 思想。
步骤5交叉:对于选中的用于繁殖的每一对个 体,先根据位串长度随机产生一个交叉位置,即[1, L—l】上的一个整数,然后进行交叉。
步骤6变异:变异就是以很小的概率进行基因 变异。若发现最优解或者到达迭代次数,则算法停 止。否则,转步骤2。
遗传算法的搜索能力主要是由选择和交叉赋予 的,变异算子则保证了算法能搜索到问题解空间的 每一点,从而使算法具有全局优化能力,增强了遗 传算法找到接近最优解的能力。变异本身是一种随 机搜索,然而与复制、交叉算子结合在一起,就可 避免由于复制与交叉算子而引起的某些信息的永久 性丢失,保证了遗传算法的有效性。
2人工鱼的认知模型

人工鱼的认知模型有其独特性。首先,环境中 的每一个角色都是自组织的。其次,为实现知识获 取,需引入机器学习,使计算机动画的角色通过学 习来自己获取知识。动画角色不仅要设法学习他自 己在虚拟环境中的行为,还要学习其它角色在环境 中的行为,甚至尝试某些自我改进。同时,动画角
色与其所在的虚拟世界是一个复杂的统一体。其中
进化系统如图1所示。

人 工 鱼 进
化          U直接进化L—F
图1人工鱼的进化系统

2-1利用遗传算法实现人工鱼的自进化 建立人工鱼的适应度函数主要是为了实现人工
鱼自繁衍的自主动画。人工鱼的适应度和鱼种、年
龄、营养状态、生殖率及生存环境等诸多因素相关, 这些因素既是相互独立的,又是可以互相叠加的。 要精细地刻画每一条人工鱼的适应度,会使函数很 复杂。我们忽略一些因素的影响,不考虑环境因素 的影响,假定虚拟环境是不发生变化的。
人工鱼的适应度函数和鱼种相关。在同一环境 下,不同的鱼种的适应度肯定是不相同的。同时,为 了表现人工鱼自学习对进化的影响,有了学习能力 的同种鱼适应度应取值能增大。其次,人工鱼的适 应度还和年龄有关。适应度取值在其一生中不是一 成不变的。随着人工鱼的逐渐生长、发育成熟,它 逐渐强壮起来,生活力逐渐增强,具有了生殖能力, 此时它的适应度取值也应逐渐变大。随着人工鱼鱼 龄的继续增加,人工鱼慢慢进入衰老期,各种机能 逐渐减退,人工鱼的生活力和生殖力逐渐下降,人 工鱼的适应度取值也应逐渐下降。
在环境不发生变化时,人工鱼的适应度函数F(t) 可由下式给出:
 
包括角色与环境的关系,角色与其它角色的关系等。 人工生命进化模型需要解决的关键问题是学习 与进化的关系。学习和进化是两种不同的自适应过 程:一个发生在生命体的生存期内,另一个包含了 生命进化的整个历史。我们在“人工鱼”已有成果
 
的基础上,研究“自进化”特性。研究分两步来实 现,首先,建立认知模型,增加基于“动物逻辑”的、 具有认知能力的高级行为规划功能,进一步提高其 自主性和智能水平,其次,建立学习模型,结合人 工鱼的认知模型,改进人工鱼的自进化能力。生物 进化有两种途径,一种是由于基因突变,产生变异 后的遗传;另一种是生物在环境中获取信息,取出 需要的部分,根据某种标准进行最优化学习,使自 身更适应外界环境变化,从而影响进化。人工鱼的
其中:参数a表示人工鱼的寿命。参数k表示人
工鱼的鱼种,不同的鱼种对同一环境的适应性是不 一样的,当k取不同的值时,会得到适应度不同的 各种人工鱼。参数k和适应度是成正比的,当某种 人工鱼的适应度比较大时,则参数k取值相对较大, 反之,只需给参数k取个较小的值,就会得到适应 度较小的鱼种。为适应度的权值,没有学习功能的 人工鱼权值为1,有自学习功能的人工鱼权值增加, 从而增大适应度的值。(责任编辑:南粤论文中心)转贴于南粤论文中心: http://www.nylw.net(南粤论文中心__代写代发论文_毕业论文带写_广州职称论文代发_广州论文网)

顶一下
(0)
0%
踩一下
(0)
0%


版权声明:因本文均来自于网络,如果有版权方面侵犯,请及时联系本站删除.