人工生命ArtificialLife人工生命(ArtificialLife)•具有“自然生命”特性和功能的人造系统•生命科学途径:通过生物实验方式,在试管中通过生物化学或遗传工程的方法合成或生成人工的生命。•工程技术途径:通过计算机屏幕以三维动画、虚拟现实的软件方法或采用“光、机、电”一体化的硬件装置来演示和体现人工生命。生命的本质特征•普遍认可的生命的几大本质特征:–自我繁殖的能力–与环境相互作用的能力–与其他有机体以特定的方式相互作用和相互交流的能力早期的研究•冯·诺依曼——“自繁殖系统”•约翰·康韦——元胞自动机•克莱格·雷诺尔德——“Boids”自繁殖系统•40年代末,冯·诺依曼提出“自繁殖系统”–生命的的本质特征:”繁衍“–二维方形网格。每个元胞有29种可能状态•任何具有自繁殖的系统,都必须具有两个不同的基本功能:–该系统必须起到计算机程序的作用,即一种在繁衍下一代的过程中能够运行的“算法”–还必须具有能够复制和传递给下一代的描述,类似于计算机的“数据”。•五年之后,两位青年科学家沃森和克里克揭示了自然生命DNA分子结构,该重大发现验证了冯·诺依曼的上述预言。元胞自动机(1)•1970年10月,约翰·康韦(John·Conway)在《科学美国人》上发表了他设计的“生命游戏”。开创了个新的研究领域——元胞自动机•结构:–二维方形网格–每个格子是一个元胞,具有生、死两种状态•两条规则:–3个活元胞包围的死元胞复活–2个以下或3个以上的活元胞包围的活元胞死亡演示元胞自动机(2)•动力学行为–平稳型:元胞空间趋于一种空间平稳构形,不再随时间变化–周期型:元胞空间趋于一系列简单的稳定结构或周期结构。–混沌型:元胞自动机表现出混沌的非周期行为,生成结构的统计特征不再变化,通常表现为分形分维特征。–复杂型:行为没有明显的周期性,但出现复杂的局部结构,即局部的混沌,其中有些具有传播能力。•应用–图像处理–模拟物理系统:生成雪花、结晶过程、交通流、沙漏…演示Boids(1)•克莱格·雷诺尔德(CraigReynolds)于1987年编制了一个具有生命行为特征的人工生命群体程序“Boids”•仅有三条规则:–鸟与鸟之间不能距离太近–以大致相同的速度飞行–向本地群聚伙伴组的中心移动演示1演示2伪代码Boids(2)•这种人工鸟群的飞行方式展示了自然界中群居飞行动物的普遍飞行行为,领飞者以固定的时间进行交换,并且像真实的鸟群一样绕过障碍物飞行•应用到影视动画、图形学、生态学、科学仿真等多个学科和研究领域当中。•狮子王、魔戒“人工生命”正式创立•1987年在美国桑塔费研究所(SantaFeInstitute)举行的首次国际人工生命大会•综合系统科学方法,人工生命系统的模型,如数字社会、数字生态系统,也被用于研究复杂的社会经济系统和生态环境系统。Tierra(1)•1991年,汤姆斯·雷(ThomasS.Ray)–研究热带雨林的进化和生态问题的生物学家–开发了一个叫Tierra(西班牙语,意为地球)的计算机模拟程序。•虚拟生物世界–计算机的中央处理器和内存组成的物理环境–中央处理器的时间代表能量,内存空间代表资源–具有自复制能力的数字生物,能够不断地改变自身•这些数字生物在Tierra世界中为生存展开竞争。那些能够获得更多时间和内存空间的程序可以在下一代中留下更多的拷贝,反之则会被淘汰。Tierra(2)•该系统的运行展现了很多进化和变异特征,以及与地球生命相近的种种行为。–起初,只有一个简单的祖先“生物”–526万条指令后,Tierra模型中出现了366种大小不同的数字生物–25.6亿条指令后,演化出了1180种不同的数字生物,其中有些寄生在别的数字生物体内,有些对寄生生物具有免疫能力。–Tierra还演化出了间断平衡现象,甚至还出现了社会组织。–总之,几乎自然演化过程中的所有特征,以及与地球生命相近的各类功能行为组织,都出现在Tierra当中人工鱼(1)•涂晓媛,多伦多大学,博士学位论文•该论文1996年获得了美国计算学会ACM最佳博士论文奖。•具有“人工生命”的特征,例如,意图、习性、感知、动作、行为等。人工鱼(2)•栖息在虚拟海底世界中人工鱼群的社会•每条“人工鱼”都是一个自主的智能体–鱼脑——“意图发生器”,–鱼眼——基于计算机视觉的虚拟感受器官,可以识别和感知其他人工鱼以及周围的虚拟海洋环境。–每条鱼都以“感知-动作”模式生存•表现出智能行为–因饥饿而激发寻食、进食行为;–学习其他鱼的惨痛教训,不去吞食有钩的鱼饵;–适应有鲨鱼的社会环境,逃避被扑食的危险等等。人工鱼(3)•人工鱼群体–一种典型的多智能主体的分布式人工智能系统–鱼群的社会表现出某些自组织能力和智能集群行为。例如,人工鱼群体在漫游中遇到障碍物时,能够识别障碍改变队形,绕过障碍后又重组队列继续前进。Terrarium生态系统(1)•Terrarium:生态系统示例程序–微软公司为了展示了.NET框架中的一些重要特性和激发编程人员的学习兴趣–向软件开发人员全面展示.NET框架应用开发技术的教学游戏–一个学习进化生物学和人工智能的强大建模工具Terrarium生态系统(2)•测试开发人员的软件开发与策略设计水平•提供了一个近乎真实的进化生物学和人工智能模型,用以检验具有不同行为和属性的生物在生存斗争中的适应能力•微软的服务器负责运行整个生态圈•在客户端有一个“种子”程序,它是包含着底层规则的代码集,具备在“环境程序”中发育成一个完整“数字生物”的“DNA代码”Terrarium生态系统(3)•“种子程序”分为植物、动物、微生物三类,分别可以通过发育成三类不同的“数字生物”。–“数字生物”组成食物链,展开生存竞争。–“数字生物”之间可以联合,表现为共生、寄生等现象,各类生物的种群规模最后达到一种相对平衡的状态。–新的“物种”加入进来,则可能打破平衡,进而展开新一轮的竞争。Terrarium生态系统(4)•环境灾难:引入陨石、洪水、干旱等灾难来对各个物种的生存能力进行破坏性实验。•环境变化:例如,在环境中加入了对水的定义,种子则必须相应地把水作为生存要素之一。•每年一次的灾难日。Terrarium生态系统(4)•在美国,每周进行一次评比,评比谁开发的生物能够生存下来,并给予当周获奖者一定奖励–颁发一套正版的VisualStudio,•其它相关领域•蚁群算法•人工化学•粒子群優化•SwarmIntelligence•多Agent系统•经济学、社会学–研究像经济、社会这样的人工系统的演化与运动趋势目前的研究焦点•人工生命采用的是自底向上的途径,关注的是局部而非整体的控制,简单而非复杂的规则,随机而非程序化的行为,可以考察整个生物体或大量个体所组成的群体行为。•焦点:–Swarm–自组织(self-organization)–涌现(emergence)AL的开放性问题(1)•生命是什么?•什么条件下,我们可以说一个系统,活着的?•什么是最小的、可以认为是活着的系统?•为什么自然可以进化出Open-ended的系统,而我们的模型却不可以?AL的开放性问题(2)•AL有怎样的合法权利?•模拟是否可以使AL具有意识,意愿,灵魂?如果有,人是否可以将它关掉或甚至干扰?•我们是否只是在模拟的宇宙中的AL?•