- 1、本文档共55页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
群集能算法
7.2.2 flock算法 Flock算法是由Craig Reynolds于1987年在一篇为SIGGRAPH所写的论文“Flocks, Herds, and Schools: A Distributed Behavioral Model”中首次提出的一种集智技术。这种技术有3个简单的规则,当它们组合在一起时,为自治主体(boid)群给出了一个类似于鸟群、鱼群或蜂群的群体行为的逼真表现形式。这些被Reynolds称之为定向行为(Steering Behaviors)。 7.2.2 flock算法 定向行为的规则: 分离:定向时要避免与本地flock同伴拥挤 列队:驶向本地flock同伴的平均航向 聚合:定向时朝着本地flock同伴的平均位置移动 分离 列队 聚合 分离规则给了一个主体试图与其它邻近的主体保持一定的距离的能力。确保主体之间以一个“看似自然”的接近度,模拟真实世界中的群体,以避免主体拥挤在一起。 队列规则为一个主体提供了与其他邻近主体列队的能力(即与其他邻近主体航向或速度相同)。与分离类似,本文将队列说明为:通过每一个flock成员观察邻近同伴,然后调整它的航向和速度以与其邻近同伴的平均航向和速度相匹配。 聚合规则给了一个主体与其他邻近主体“聚合(group)”的能力,从而模拟自然界的类似行为。 Reynolds在稍后的实现和论文中又增加了有时被称作flocking“第四规则”的规则。 躲避:使避免撞上局部区域的障碍和敌人 躲避规则的作用是为主体提供了使它绕过障碍和避免碰撞的能力。这种控制行为是这样完成的:通过赋予每个主体“向前看”一段距离的能力,决定与一些对象的碰撞是否可能,然后调整航向以避免碰撞。 Flock技术通过这四个简单的规则最终模拟出逼真的群体行为,更有意思的是这种移动算法本身是无状态的:在移动更新中,不记录任何信息。 在每次更新循环中,每只boid都将重新评估其环境。这样不但降低了内存需求,同时让物群能够对不断变化的环境状况做出实时的反应。因此,物群将具备突发行为的(Emergent Behavior)特性,即物群中的所有成员都对要前往何方一无所知,但作为一个整体行动,避开障碍物和天敌,并保持若即若离。 7.3 集智系统介绍 7.3.1 人工鱼 7.3.2 Terrarium世界 7.3.1 人工鱼 人工鱼群体是一种典型的多智能主体(Multiple Intelligent Agent)的分布式人工智能系统(distributive artificial intelligent system)。 中国青年学者涂晓媛研究开发的新一代计算机动画“人工鱼”被学术界称之为“晓媛鱼”(Xiaoyuans fish),她发表的论文“人工动物的计算机动画”(artificial animals for computer animation: biomechanics , locomotion, perception and behavior),在1996年获国际计算学会ACM最佳博士论文奖。 涂晓媛研究开发的“人工鱼”构成了栖息在虚拟海底世界中人工鱼群的社会,其中,每条“人工鱼”都是一个自主的智能体(autonomous intelligent agent),都可以独立地活动,也可以相互交往。每条鱼都表现出某些人工智能,如:自激发(self-animating)、自学习(self-learning)、自适应(self-adapting)等智能特性. 会产生相应的智能行为,如:因饥饿而激发寻食、进食行为;有性欲而激发求爱行为;能吸取其他鱼被鱼钩钓住的教训,而不去吞食有钩的鱼饵;能适应有鲨鱼的社会环境,逃避被捕食的危险等。人工鱼群的社会具有某些自组织(self-organizing)能力和智能集群行为,如:人工鱼群体在漫游中遇到障碍物等,会识别障碍改变队形,绕过障碍后,又重组队列,继续前进。 7.3.1 人工鱼 1. 人工鱼与动画鱼 区别: “人工鱼”具有“人工生命”和自然鱼的某些生命特征。 在一般的计算机动画中,创作者需要在动画设计和程序编制中确定动画鱼的所有动作的细节,预先知道动画鱼的全部动作过程。然而,人工鱼的创作者并不去设计和规定每条鱼的动作和行为的细节,也不能预知人工鱼群中可能发生的各种具体动作和实际行为。 7.3.1 人工鱼 2.“人工鱼”与“人工生命” 涂晓媛所说的“人工生命”(artificial life)是指具有“自然生命”特性和功能的人造系统,或者说是“人造活体”。 人工生命的研究方法和技术途径,可以分: 生命科学途径 工程技术途径 7.3.1 人工鱼 3. “人工鱼”的创作 “人工鱼”的动画创作方法和技术,已经突破了传统的计算机动画的框架。
文档评论(0)