人工智能基础07--自动规划系统.pptx
目录o第一章第一章绪论o第二章第二章知知识表示表示 o第三章搜索技第三章搜索技术o第四章推理技第四章推理技术o第五章机器学第五章机器学习 o第六章第六章专家系家系统o第七章自第七章自动规划系划系统o第八章第八章自然自然语言理解言理解o第九章第九章智能控制智能控制o第十章第十章人工智能程序人工智能程序设计培训专用o自自动规划概述划概述o基于基于谓词逻辑的的规划划oSTRIPS规划系划系统o分分层规划划o基于基于专家系家系统的机器人的机器人规划划o轨迹迹规划划简介介培训专用7.1 自动规划概述7.1.1规划的概念及作用划的概念及作用1.规划的概念划的概念定定义7.1从某个特定的从某个特定的问题状状态出出发,寻求一系列行求一系列行为动作,作,并建立一个操作序列,直到求得目并建立一个操作序列,直到求得目标状状态为止。止。这个求解个求解过程就程就称称为规划划。定定义7.2规划是划是对某个待求解某个待求解问题给出求解出求解过程的步程的步骤。规划涉及如何将划涉及如何将问题分解分解为若干相若干相应的子的子问题,以及如何,以及如何记录和和处理理问题求解求解过程中程中发现的各子的各子问题间的关系。的关系。定定义7.3规划系划系统是一个涉及有关是一个涉及有关问题求解求解过程步程步骤的系的系统。如如计算机或算机或飞机机设计、火、火车或汽或汽车运运输路径、路径、财政和政和军事事规划等划等问题。培训专用7.1 自动规划概述7.1.1规划的概念及作用划的概念及作用例:例:救援仿真机器人系救援仿真机器人系统(RoboCupRescueSimulationSystem,RCRSS)消防智能体消防智能体医医疗智能体智能体警察智能体警察智能体普通市民普通市民中心智能体中心智能体路障路障避避难所所着火建筑物着火建筑物普通建筑物)普通建筑物)培训专用7.1 自动规划概述7.1.1规划的概念及作用划的概念及作用2.规划的作用划的作用规划可用来划可用来监控控问题求解求解过程,并能程,并能够在造成在造成较大的危害之前大的危害之前发现差差错。规划的好划的好处可可归纳为简化搜索、解决目化搜索、解决目标矛盾以及矛盾以及为差差错补偿提供基提供基础。“十二五十二五”规划、城市划、城市规划、企划、企业发展展规划划培训专用7.1 自动规划概述7.1.2规划的分划的分类和和问题分解途径分解途径1.规划的分划的分类(1)按)按规划内容分划内容分国家、地方、重大国家、地方、重大项目、企目、企业、交通、城市、交通、城市、环境境(2)按)按规划方法分划方法分非非递阶(非分(非分层)规划与划与递阶(分(分层)规划;划;线性性规划与非划与非线性性规划;划;同步同步规划与异步划与异步规划;基于脚本、框架和本体的划;基于脚本、框架和本体的规划;基于划;基于专家系家系统的的规划;基于划;基于竞争机制的争机制的规划;划;(3)按)按规划划实质分分任任务规划、路径划、路径规划、划、轨迹迹规划划培训专用7.1 自动规划概述7.1.2规划的分划的分类和和问题分解途径分解途径2.问题分解途径分解途径把某些把某些较复复杂的的问题分解分解为一些一些较小的子小的子问题。有两条。有两条实现这种分解的重要途径。种分解的重要途径。第一条重要途径是当从一个第一条重要途径是当从一个问题状状态移移动到下一个状到下一个状态时,无需无需计算整个新的状算整个新的状态,而只要考,而只要考虑状状态中可能中可能变化了的那些部化了的那些部分。分。第二条重要途径是把第二条重要途径是把单一的困一的困难问题分割分割为几个有希望的几个有希望的较为容易解决的子容易解决的子问题。培训专用7.1 自动规划概述7.1.2规划的分划的分类和和问题分解途径分解途径3.域的域的预测和和规划的修正划的修正(1)域的)域的预测问题论域的域的预测。对于不可于不可预测的的论域,考域,考虑可能的可能的结果集果集合,按照它合,按照它们出出现的可能性以某个次序排列。然后,的可能性以某个次序排列。然后,产生一个生一个规划、并划、并试图去去执行行这个个规划。划。(2)规划的修正划的修正规划划执行失行失败导致致对规划的修正。划的修正。在在规划划过程中不程中不仅要要记录规划的划的执行步行步骤,而且要,而且要记录每一步每一步必必须要要执行的理由。行的理由。培训专用7.2 基于谓词逻辑的规划用用谓词逻辑来描述世界模型及来描述世界模型及规划划过程。程。o世界模型的世界模型的谓词逻辑表示表示n定定义谓词n确定确定问题初始状初始状态n确定确定问题目目标状状态n确定基本操作确定基本操作o基于基于谓词逻辑规划的基本划的基本过程程n问题分解分解n子子问题规划划n得到操作序列得到操作序列培训专用7.3 STRIPS规划系统7.3.1积木世界的机器人木世界的机器人规划划求解机器人完成求解机器人完成规定工作的定工作的动作序列作序列BACCBA机械手机械手机械手机械手(a)(b)培训专用7.3 STRIPS规划系统7.3.1积木世界的机器人木世界的机器人规划划1.积木世界的机器人木世界的机器人问题机器人能机器人能够执行的行的动作作举例如下:例如下:unstack(a,b):把堆放在:把堆放在积木木b上的上的积木木a拾起。在拾起。在进行行这个个动作之前,作之前,要求机器人的手要求机器人的手为空手,且空手,且积木木a的的顶上是空的。上是空的。stack(a,b):把把积木木a堆放在堆放在积木木b上。上。动作之前要求机械手必作之前要求机械手必须已抓住已抓住积木木a,而且,而且积木木b顶上必上必须是空的。是空的。pickup(a):从桌面上拾起从桌面上拾起积木木a,并抓住它不放。在,并抓住它不放。在动作之前要求作之前要求机械手机械手为空手,而且空手,而且积木木a顶上没有任何上没有任何东西。西。putdown(a):把把积木木a放置到桌面上。要求放置到桌面上。要求动作之前机械手已作之前机械手已抓住抓住积木木a。培训专用7.3 STRIPS规划系统7.3.1积木世界的机器人木世界的机器人规划划1.积木世界的机器人木世界的机器人问题状状态描述描述谓词:ON(a,b):积木木a在在积木木b之上。之上。ONTABLE(a):积木木a在桌面上。在桌面上。CLEAR(a):积木木a顶上没有任何上没有任何东西。西。HOLDING(a):机械手正抓住机械手正抓住积木木a。HANDEMPTY:机械手机械手为空手。空手。培训专用7.3 STRIPS规划系统7.3.1积木世界的机器人木世界的机器人规划划2.用用F规则求解求解规划序列划序列采用采用F规则表示机器人的表示机器人的动作,作,这是一个叫做是一个叫做STRIPS规划系划系统的的规则,它由,它由3部分部分组成:成:第一部分是先决条件。第一部分是先决条件。为了使了使F规则能能够应用到状用到状态描述中去。描述中去。第二部分是一个叫做第二部分是一个叫做删除表的除表的谓词。当一条。当一条规则被被应用于某个状用于某个状态描述或数据描述或数据库时,就从,就从该数据数据库删去去删除表的内容。除表的内容。第三部分叫做添加表。当把某条第三部分叫做添加表。当把某条规则应用于某数据用于某数据库时,就把,就把该添添加表的内容添加表的内容添进该数据数据库。培训专用7.3 STRIPS规划系统7.3.1积木世界的机器人木世界的机器人规划划2.用用F规则求解求解规划序列划序列例:例:move(x,y,z):把物体把物体x从物体从物体y上面移到物体上面移到物体z上面。上面。先决条件:先决条件:CLEAR(x),CLEAR(z),ON(x,y)删除表:除表:ON(x,y),CLEAR(z)添加表:添加表:ON(x,z),CLEAR(y)培训专用7.3 STRIPS规划系统7.3.2STRIPS规划系划系统斯坦福大学人工智能研究所于斯坦福大学人工智能研究所于1966-72年研制的年研制的Shakey机器人是第一机器人是第一台能台能够进行行行行动推理的多用移推理的多用移动机器人,机器人,该项目融合了机器人目融合了机器人视觉、机器人学和自、机器人学和自动推理研究成果。机器人的任推理研究成果。机器人的任务是在一些相是在一些相连的房的房间里,将用里,将用户指定的箱子推到指定的位置。指定的箱子推到指定的位置。对于用于用户输入的入的每一个任每一个任务,Shakey自主地自主地规划完成划完成该任任务的行的行动并依次并依次执行。行。Shakey项目技目技术:规划划语言言STRIPS(STanfordResearchInstituteProblemSolverSTRIPS)和)和A*算法等。算法等。STRIPS语言用来描述外部世界模型并支持任言用来描述外部世界模型并支持任务规划,它提供了框划,它提供了框架架问题的一种的一种简洁、高效的解法,但理、高效的解法,但理论上并不完上并不完备。培训专用7.3 STRIPS规划系统7.3.2STRIPS规划系划系统STRIPS系系统的的组成如下:成如下:(1)世界模型。世界模型。为一一阶谓词演算公式。演算公式。(2)操作符操作符(F规则)。包括先决条件、。包括先决条件、删除表和添加表。除表和添加表。(3)操作方法。操作方法。应用状用状态空空间表示和中表示和中间-结局分析。局分析。规划划过程程每个每个STRIPS问题的解答的解答为某个某个实现目目标的操作符序列,即达到的操作符序列,即达到目目标的的规划。划。A Service Robot Copes with Changes Understanding,Learning,Planning,and Acting培训专用7.4 分层规划探索探索规划划时首先只考首先只考虑一一层的的细节,然后再注意,然后再注意规划中比划中比这一一层低低一一层的的细节,所以把它叫做,所以把它叫做长度度优先搜索。先搜索。NOAH规划系划系统1.应用最小用最小约束策略束策略一个一个寻找非找非线性性规划而不必考划而不必考虑操作符序列的所有排列的方法是把最操作符序列的所有排列的方法是把最少少约束策略束策略应用来用来选择操作符操作符执行次序的行次序的问题。问题求解系求解系统NOAH采用一种网采用一种网络结构来构来记录它所它所选取的操作符取的操作符之之间所需要的排序。它也分所需要的排序。它也分层进行操作运算,即首先建立起行操作运算,即首先建立起规划的抽象划的抽象轮廓,然后在后廓,然后在后续的各步中,填入越来越多的的各步中,填入越来越多的细节。培训专用7.4 分层规划2.检验准准则准准则法已被法已被应用于各种用于各种规划生成系划生成系统。对于早期的系于早期的系统,如,如HACKER系系统,准,准则只用于舍弃不只用于舍弃不满足的足的规划。在划。在NOAH系系统中,准中,准则被用来提出推定的方法以便修正所被用来提出推定的方法以便修正所产生的生的规划。划。第一个涉及的准第一个涉及的准则是是归结矛盾准矛盾准则。第二个准第二个准则叫做消除多余先决条件准叫做消除多余先决条件准则,包括除去,包括除去对子目子目标的的多余多余说明。明。可以把分可以把分层规划和最少划和最少约束策略十分直接地束策略十分直接地结合起来,以求得非合起来,以求得非线性性规划而不划而不产生一个生一个庞大的搜索大的搜索树。培训专用7.5 基于专家系统的机器人规划1.系系统结构及构及规划机理划机理(1)知)知识库:用于存:用于存储某些特定某些特定领域的域的专家知家知识和和经验,包括机,包括机器人工作器人工作环境的世界模型、状境的世界模型、状态、物体描述等事、物体描述等事实和可行操作或和可行操作或规则等。等。(2)控制策略:包含控制策略:包含综合机理,确定系合机理,确定系统应当当应用什么用什么规则以及采取什么方式去以及采取什么方式去寻找找该规则。(3)推理机:用于推理机:用于记忆所采用的所采用的规则和控制策略及推理策略。和控制策略及推理策略。(4)知)知识获取:首先取:首先获取某特定域的取某特定域的专家知家知识。然后用程序。然后用程序设计语言把言把这些知些知识变换为计算机程序。最后把它算机程序。最后把它们存入知存入知识库待用。待用。培训专用7.5 基于专家系统的机器人规划(5)解解释与与说明:通明:通过用用户接口,在接口,在专家系家系统与用与用户之之间进行行对话,从而使用,从而使用户能能够输入数据、提出入数据、提出问题、知道推理、知道推理结果以及了解果以及了解推理推理过程等。程等。2.任任务级机器人机器人规划三要素划三要素(1)建立模型:世界模型。)建立模型:世界模型。(2)任)任务说明:定明:定义状状态及状及状态变换次序。次序。(3)程序)程序综合。合。3.ROPES机器人机器人规划系划系统培训专用7.6 轨迹规划简介 轨迹:机械手在运迹:机械手在运动过程中的位移、速度和加速度。程中的位移、速度和加速度。轨迹迹规划:根据任划:根据任务的要求,的要求,计算出算出预期的期的轨迹。迹。在机械手运在机械手运动学和学和动力学基力学基础上,上,讨论在关在关节空空间和笛卡和笛卡尔空空间中机器人运中机器人运动的的轨迹迹规划和划和轨迹生成方法迹生成方法培训专用7.6 轨迹规划简介 例:例:NAO机器人机器人检球球动作。作。培训专用地球上的生物物种在漫长的过程中形成了丰富的行为特性,并地球上的生物物种在漫长的过程中形成了丰富的行为特性,并地球上的生物物种在漫长的过程中形成了丰富的行为特性,并地球上的生物物种在漫长的过程中形成了丰富的行为特性,并且一直不断地完善和发展,以更好地适应其所生存的环境。生物群且一直不断地完善和发展,以更好地适应其所生存的环境。生物群且一直不断地完善和发展,以更好地适应其所生存的环境。生物群且一直不断地完善和发展,以更好地适应其所生存的环境。生物群体和自然生态系统可以通过自身的演化就能使许多在人类看起来高体和自然生态系统可以通过自身的演化就能使许多在人类看起来高体和自然生态系统可以通过自身的演化就能使许多在人类看起来高体和自然生态系统可以通过自身的演化就能使许多在人类看起来高度复杂的优化问题得到完美解决。因此,各种模仿生物群体的智能度复杂的优化问题得到完美解决。因此,各种模仿生物群体的智能度复杂的优化问题得到完美解决。因此,各种模仿生物群体的智能度复杂的优化问题得到完美解决。因此,各种模仿生物群体的智能仿生算法被相继提出,得到了深入研究和应用实践。仿生算法被相继提出,得到了深入研究和应用实践。仿生算法被相继提出,得到了深入研究和应用实践。仿生算法被相继提出,得到了深入研究和应用实践。群智能思想的产生主要源于复杂适应系统理论以及人工生命的群智能思想的产生主要源于复杂适应系统理论以及人工生命的群智能思想的产生主要源于复杂适应系统理论以及人工生命的群智能思想的产生主要源于复杂适应系统理论以及人工生命的研究。研究。研究。研究。群智能算法群智能算法群智能思想起源群智能思想起源培训专用群智能算法群智能算法群智能思想起源群智能思想起源复杂适应系统复杂适应系统(ComplexAdaptiveSystem,CAS)理论理论:1994年由年由Holland教授正教授正式提出。式提出。CAS中成员称为具有适应性的主体中成员称为具有适应性的主体,简称主体。简称主体。主体的适应性主体的适应性,是指它能够与环境以及其它主体进行交流,在交流的过程中是指它能够与环境以及其它主体进行交流,在交流的过程中“学习学习”或或“积累经验积累经验”,并且根据学到的经验改变自身的结构和行为方式。,并且根据学到的经验改变自身的结构和行为方式。CAS具有四个基本特点具有四个基本特点:(1)首先)首先,主体是主动的、活的实体。具有适应性的主体的概念把个体主动性提高主体是主动的、活的实体。具有适应性的主体的概念把个体主动性提高到了系统进化基本动因的位置到了系统进化基本动因的位置,从而成为研究与考察宏观行为的出发点。从而成为研究与考察宏观行为的出发点。(2)其次)其次,个体与环境个体与环境(包括个体之间包括个体之间)之间的相互影响、相互作用是系统演变和之间的相互影响、相互作用是系统演变和进化的主要动力。相互作用是进化的主要动力。相互作用是“可记忆可记忆”的的,它表现为进化过程中每个个体的结它表现为进化过程中每个个体的结构和行为方式的变化,以不同的方式构和行为方式的变化,以不同的方式“存储存储”在个体内部。在个体内部。培训专用群智能算法群智能算法群智能思想起源群智能思想起源(3)再次)再次,这种方法不像许多其他的方法那样这种方法不像许多其他的方法那样,把宏观和微观截然分开把宏观和微观截然分开,而是把它们有机地联系起来。而是把它们有机地联系起来。(4)最后)最后,这种建模方法还引进了随机因素的作用这种建模方法还引进了随机因素的作用,使它具有更强使它具有更强的描述和表达能力。随机因素的影响不仅影响状态的描述和表达能力。随机因素的影响不仅影响状态,而且影响组织结而且影响组织结构和行为方式。具有主动性的个体会接受教训构和行为方式。具有主动性的个体会接受教训,总结经验总结经验,并且以某种方式并且以某种方式把把“经历经历”记住记住,使之使之“固化固化”在自己以后的行为方式中。在自己以后的行为方式中。CAS理论提供了模拟生物、理论提供了模拟生物、生态、生态、经济、经济、社会等复杂系统的巨大社会等复杂系统的巨大潜力。潜力。培训专用群智能算法群智能算法群智能思想起源群智能思想起源人工生命人工生命(ArtificialLife,AL)是用来研究具有某些生命基本特征的人工系统。是用来研究具有某些生命基本特征的人工系统。近年来近年来,人工生命的研究发展非常快人工生命的研究发展非常快,在某些方面的研究已与传统的生物科学形成了在某些方面的研究已与传统的生物科学形成了互补。人工生命包括两方面的内容互补。人工生命包括两方面的内容:如何利用计算技术研究生物现象如何利用计算技术研究生物现象;如何利用生物技术研究计算问题。如何利用生物技术研究计算问题。第二部分的内容的研究中,现已经有了很多源于生物现象的计算技巧,例如,第二部分的内容的研究中,现已经有了很多源于生物现象的计算技巧,例如,人工神经网络是简化的大脑模型,遗传算法是模拟基因进化的过程,目前这一类人工神经网络是简化的大脑模型,遗传算法是模拟基因进化的过程,目前这一类计算技术被统称为自然计算。群智能属于自然计算中的一类,它模拟另一种生物计算技术被统称为自然计算。群智能属于自然计算中的一类,它模拟另一种生物系统:社会系统,更确切地说,是模拟由简单个体组成的群落与环境以及个体之系统:社会系统,更确切地说,是模拟由简单个体组成的群落与环境以及个体之间的互动行为,这些模拟系统利用局部信息从而可能产生不可预测的群体行为。间的互动行为,这些模拟系统利用局部信息从而可能产生不可预测的群体行为。培训专用群智能算法群智能算法群智能思想起源群智能思想起源群智能群智能(SwarmIntelligence,SI):1992年由年由Beni,Hack-wood和和Wang在分子自动机系统中提出。在分子自动机系统中提出。1999年年,Bonabeau,Dorigo和和Theraulaz在在SwarmIntel-ligence:FromNaturaltoArtificialSystems中对群智能进行了详细的论述和分析。中对群智能进行了详细的论述和分析。2003年年IEEE第一届国际群智能研讨会在美国印第安纳州首府召开。第一届国际群智能研讨会在美国印第安纳州首府召开。群智能定义:任何一种由昆虫群体或其它动物社会行为机制而激发设计出的群智能定义:任何一种由昆虫群体或其它动物社会行为机制而激发设计出的算法或分布式解决问题的策略均属于群智能。算法或分布式解决问题的策略均属于群智能。培训专用群智能算法群智能算法群智能思想起源群智能思想起源Swarm可被描述为一些相互作用相邻个体的集合体可被描述为一些相互作用相邻个体的集合体,蜂群、蚁群、蜂群、蚁群、鸟群、鱼群都是鸟群、鱼群都是Swarm的典型例子。社会性动物群体所拥有的这种特性的典型例子。社会性动物群体所拥有的这种特性能帮助个体很好地适应环境,个体所能获得的信息远比它通过自身感觉能帮助个体很好地适应环境,个体所能获得的信息远比它通过自身感觉器官所取得的多,其根本原因在于个体之间存在着信息交互能力。信息器官所取得的多,其根本原因在于个体之间存在着信息交互能力。信息的交互过程不仅仅在群体内传播了信息,而且群内个体还能处理信息,的交互过程不仅仅在群体内传播了信息,而且群内个体还能处理信息,并根据所获得的信息并根据所获得的信息(包括环境信息和附近其它个体的信息包括环境信息和附近其它个体的信息)改变自身的一改变自身的一些行为模式和规范些行为模式和规范,这样就使得群体涌现出一些单个个体所不具备的能这样就使得群体涌现出一些单个个体所不具备的能力和特性力和特性,尤其是对环境的适应能力。这种对环境变化所具有的适应能力可以尤其是对环境的适应能力。这种对环境变化所具有的适应能力可以被认为是一种智能被认为是一种智能,也就是说动物个体通过聚集成群而涌现出了智能。也就是说动物个体通过聚集成群而涌现出了智能。培训专用群智能算法群智能算法群智能思想起源群智能思想起源SI的定义进一步推广的定义进一步推广(Bonabeau):无智能或简单智能无智能或简单智能的主体通过任何形式的聚集协同而表现出智能行为的特性。的主体通过任何形式的聚集协同而表现出智能行为的特性。群智能理论还非常不成熟群智能理论还非常不成熟,但已成为有别于传统人工智能中但已成为有别于传统人工智能中连接主义、连接主义、行为主义和符号主义的一种新的关于智能的描述方行为主义和符号主义的一种新的关于智能的描述方法法,并成为人工智能领域的新研究热点。并成为人工智能领域的新研究热点。培训专用群智能算法群智能算法群智能理论群智能理论JamesKennedy和和RussellC.Eberhart在在2001年出版的年出版的SwarmIntelligence是群智能发展的一个重要历程碑。他们是群智能发展的一个重要历程碑。他们不反对不反对Bonabeau关于关于SI的定义,赞同其定义的基本精神,但反对的定义,赞同其定义的基本精神,但反对定义中使用定义中使用“主体主体”一词。一词。其理由是其理由是“主体主体”所带有的自治性和所带有的自治性和特殊性是许多特殊性是许多Swarm的个体所不具备和拥有的,这将大大限制的个体所不具备和拥有的,这将大大限制Swarm的定义范围。的定义范围。MarkMillonas(1994)构建一个构建一个SI系统所应满足的五条基本原系统所应满足的五条基本原则则:ProximityPrinciple:群内个体具有能执行简单的时间或空间上群内个体具有能执行简单的时间或空间上的评估和计算的能力。的评估和计算的能力。培训专用群智能算法群智能算法群智能理论群智能理论QualityPrinciple:群内个体能对环境群内个体能对环境(包括群内其它个体包括群内其它个体)的关键性因的关键性因素的变化做出响应。素的变化做出响应。PrincipleofDiverseResponse:群内不同个体对环境中的某一变化所群内不同个体对环境中的某一变化所表现出的响应行为具有多样性。表现出的响应行为具有多样性。StabilityPrinciple:不是每次环境的变化都会导致整个群体的行为模不是每次环境的变化都会导致整个群体的行为模式的改变。式的改变。AdaptabilityPrinciple:环境所发生的变化中环境所发生的变化中,若出现群体值得若出现群体值得付出代价的改变机遇付出代价的改变机遇,群体必须能够改变其行为模式。群体必须能够改变其行为模式。培训专用群智能算法群智能算法群智能理论群智能理论以上五条原则现在成为了群智能的最基本理论,现有的群智能方法和策略以上五条原则现在成为了群智能的最基本理论,现有的群智能方法和策略都符合这些原则。都符合这些原则。SwarmIntelligence最重要的观点是:最重要的观点是:Mindissocial,也就是认为人也就是认为人的智能是源于社会性的相互作用,文化和认知是人类社会性不可分割的重的智能是源于社会性的相互作用,文化和认知是人类社会性不可分割的重要部分,这一观点成为了群智能发展的基石。要部分,这一观点成为了群智能发展的基石。群智能模拟的是社会系统的变化,其最基本单位是群智能模拟的是社会系统的变化,其最基本单位是“敏因敏因”(Meme),这,这一词由一词由Dawkin在在TheSelfishGene中提出,它是指思想文化传播中的中提出,它是指思想文化传播中的基本单位,个体在社会中会根据环境来改变自身的思想,敏因的传播途径基本单位,个体在社会中会根据环境来改变自身的思想,敏因的传播途径是在个体与个体之间,在人类社会中它还可以在人脑与书本之间、是在个体与个体之间,在人类社会中它还可以在人脑与书本之间、人脑与人脑与计算机、计算机、计算机与计算机之间传播。当然,计算机与计算机之间传播。当然,“敏因敏因”应该如何严格描述和应该如何严格描述和定义还没有定论。定义还没有定论。培训专用群智能算法群智能算法群智能理论群智能理论群智能研究的更进一步目标是对人类思想变化的社会行为的模拟。人类心理中存在着群智能研究的更进一步目标是对人类思想变化的社会行为的模拟。人类心理中存在着群体性、习惯性、一致性群体性、习惯性、一致性,常常是习惯性地遵循一些习俗和规则。无论什么时候常常是习惯性地遵循一些习俗和规则。无论什么时候,人们思人们思想和行为总是因相互影响而变得非常近似想和行为总是因相互影响而变得非常近似,道德规范以及文化的形成就是这种通过相道德规范以及文化的形成就是这种通过相互间影响而导致近似的结果。互间影响而导致近似的结果。人类的社会思想行为并不简单类似鸟群或鱼群的行为人类的社会思想行为并不简单类似鸟群或鱼群的行为,人类思想的形成过程是一人类思想的形成过程是一种在高维认知空间的探索历程。种在高维认知空间的探索历程。两种思想意见在认知空间上聚集到一点上两种思想意见在认知空间上聚集到一点上,被称被称为为“一致一致”或或“认同认同”,而不是鸟群或鱼群系统中的而不是鸟群或鱼群系统中的“碰撞碰撞”。如果某人认同。如果某人认同认知空间某个点认知空间某个点,那么就努力靠近它那么就努力靠近它,反之则尽量远离它反之则尽量远离它,这里认知空间中的某个点这里认知空间中的某个点就是某个人的思想。人类通过这种社会行为达成社会的共识就是某个人的思想。人类通过这种社会行为达成社会的共识:习俗、道德规范等。习俗、道德规范等。目前目前,群智能理论研究处于基本思想描述阶段群智能理论研究处于基本思想描述阶段,还未能提出一些较为明确的概念和还未能提出一些较为明确的概念和定义定义,尽管已经有人提出广义群智能的模型。尽管已经有人提出广义群智能的模型。培训专用蚁群算法蚁群算法(AntColonyOptimizationACO)由由Colorni,Dorigo和和Maniezzo于于1991年提出年提出,它是通过模拟自然界蚂蚁社会的寻找食物的方式而得出的它是通过模拟自然界蚂蚁社会的寻找食物的方式而得出的一种仿生优化算法。一种仿生优化算法。自然界种蚁群寻找食物时会派出一些蚂蚁分头在自然界种蚁群寻找食物时会派出一些蚂蚁分头在四周游荡四周游荡,如果一只蚂蚁找到食物如果一只蚂蚁找到食物,它就返回巢中通知同伴并沿途留下它就返回巢中通知同伴并沿途留下“信息素信息素”(pheromone)作为蚁群前往食物所在地的标记。作为蚁群前往食物所在地的标记。信息素会逐渐挥发信息素会逐渐挥发,如果两如果两只蚂蚁同时找到同一食物只蚂蚁同时找到同一食物,又采取不同路线回到巢中又采取不同路线回到巢中,那么比较绕弯的一条路上那么比较绕弯的一条路上信息素的气味会比较淡信息素的气味会比较淡,蚁群将倾向于沿另一条更近的路线前往食物所在蚁群将倾向于沿另一条更近的路线前往食物所在地。地。ACO算法设计虚拟的算法设计虚拟的“蚂蚁蚂蚁”,让它们摸索不同路线让它们摸索不同路线,并留下会随时并留下会随时间逐渐消失的虚拟间逐渐消失的虚拟“信息素信息素”。根据。根据“信息素较浓的路线更近信息素较浓的路线更近”的原则的原则,即可选即可选择出最佳路线。择出最佳路线。群智能算法群智能算法蚁群算法蚁群算法培训专用ACOACO算法首先应用于算法首先应用于算法首先应用于算法首先应用于 TSPTSP问题中问题中问题中问题中,这里以这里以这里以这里以 TSPTSP问题为例对算法问题为例对算法问题为例对算法问题为例对算法作简单介绍。当某一个蚂蚁走到一个城市作简单介绍。当某一个蚂蚁走到一个城市作简单介绍。当某一个蚂蚁走到一个城市作简单介绍。当某一个蚂蚁走到一个城市,下一步可选的路径集合为下一步可选的路径集合为下一步可选的路径集合为下一步可选的路径集合为 E,E,集合中任一条路径集合中任一条路径集合中任一条路径集合中任一条路径 e eEE上的信息素浓度为上的信息素浓度为上的信息素浓度为上的信息素浓度为 e e,走这条路的代价为走这条路的代价为走这条路的代价为走这条路的代价为 e e,那么选择某一条路径那么选择某一条路径那么选择某一条路径那么选择某一条路径 v vEE的几率为:的几率为:的几率为:的几率为:群智能算法群智能算法蚁群算法蚁群算法培训专用其中其中,和和两个参数分别用来控制信息素和路径长度的相对重要程度。两个参数分别用来控制信息素和路径长度的相对重要程度。当蚂蚁在所有城市走过一遍之后,路径上的信息素浓度将变为当蚂蚁在所有城市走过一遍之后,路径上的信息素浓度将变为:e(t+1)=(1-)e(t)+e其中,其中,01用于控制信息素随时间挥发的速度,用于控制信息素随时间挥发的速度,e是上次蚂蚁经过此路是上次蚂蚁经过此路段所留下的信息素,未经过则为段所留下的信息素,未经过则为0。上式以及。上式以及e可以根据问题进行设计。可以根据问题进行设计。目前,目前,ACO算法已被广泛应用于组合优化问题中,在车辆调度问题、算法已被广泛应用于组合优化问题中,在车辆调度问题、机机器人路径规划问题、器人路径规划问题、路由算法设计等领域均取得了良好的效果。路由算法设计等领域均取得了良好的效果。由于由于ACO算算法具有广泛实用价值,成为了群智能领域第一个取得成功的实例,曾一度成为法具有广泛实用价值,成为了群智能领域第一个取得成功的实例,曾一度成为群智能的代名词,相应理论研究及改进算法近年来不断取得新的成果。群智能的代名词,相应理论研究及改进算法近年来不断取得新的成果。群智能算法群智能算法蚁群算法蚁群算法培训专用粒子群优化算法(粒子群优化算法(ParticleSwarmOptimizationPSO)源于源于1987年年Reynolds对鸟群社会系统对鸟群社会系统boids的仿真研究,的仿真研究,boids也是一个也是一个CAS。在在boids中中,一群鸟在空中飞行一群鸟在空中飞行,每个鸟遵守以下三条规则每个鸟遵守以下三条规则:(1)避免与相邻的鸟发生碰撞冲突)避免与相邻的鸟发生碰撞冲突;(2)尽量与自己周围的鸟在速度上保持协调和一致)尽量与自己周围的鸟在速度上保持协调和一致;(3)尽量试图向自己所认为的群体中心靠近。)尽量试图向自己所认为的群体中心靠近。仅仅通过使用这三条规则仅仅通过使用这三条规则,boids系统就出现非常逼真的群体聚集行为系统就出现非常逼真的群体聚集行为,鸟成群鸟成群地在空中飞行地在空中飞行,当遇到障碍时它们会分开绕行而过当遇到障碍时它们会分开绕行而过,随后又会重新形成群体。随后又会重新形成群体。不过不过Reynolds仅仅将其作为仅仅将其作为CAS的一个实例作仿真研究的一个实例作仿真研究,而并未将它用于而并未将它用于优化计算中优化计算中,也无任何实用价值。也无任何实用价值。群智能算法群智能算法粒子群优化算法粒子群优化算法培训专用 Kennedy Kennedy Kennedy Kennedy和和和和 Eberhart Eberhart Eberhart Eberhart(1995199519951995年)在年)在年)在年)在 boids boids boids boids 中加入了一个特定中加入了一个特定中加入了一个特定中加入了一个特定点点点点,定义为食物定义为食物定义为食物定义为食物,鸟根据周围鸟的觅食行为来寻找食物。他们的初衷是鸟根据周围鸟的觅食行为来寻找食物。他们的初衷是鸟根据周围鸟的觅食行为来寻找食物。他们的初衷是鸟根据周围鸟的觅食行为来寻找食物。他们的初衷是希望通过这种模型来模拟鸟群寻找食源的现象希望通过这种模型来模拟鸟群寻找食源的现象希望通过这种模型来模拟鸟群寻找食源的现象希望通过这种模型来模拟鸟群寻找食源的现象,然而实验结果却揭示然而实验结果却揭示然而实验结果却揭示然而实验结果却揭示这个仿真模型中蕴涵着很强的优化能力这个仿真模型中蕴涵着很强的优化能力这个仿真模型中蕴涵着很强的优化能力这个仿真模型中蕴涵着很强的优化能力,尤其是在多维空间寻优中。尤其是在多维空间寻优中。尤其是在多维空间寻优中。尤其是在多维空间寻优中。由于最初的仿真系统中每个鸟在计算机屏幕上表示为一个点由于最初的仿真系统中每个鸟在计算机屏幕上表示为一个点由于最初的仿真系统中每个鸟在计算机屏幕上表示为一个点由于最初的仿真系统中每个鸟在计算机屏幕上表示为一个点,而而而而“点点点点(Points)”Points)”Points)”Points)”这个词在数学领域具有非常多的意义这个词在数学领域具有非常多的意义这个词在数学领域具有非常多的意义这个词在数学领域具有非常多的意义,因此作者用了因此作者用了因此作者用了因此作者用了“粒粒粒粒子子子子(Particle)”(Particle)”(Particle)”(Particle)”来表示每一个个体。于是也就得到了基本来表示每一个个体。于是也就得到了基本来表示每一个个体。于是也就得到了基本来表示每一个个体。于是也就得到了基本 PSOPSOPSOPSO算法。算法。算法。算法。群智能算法群智能算法粒子群优化算法粒子群优化算法培训专用群智能算法群智能算法粒子群优化算法粒子群优化算法培训专用粒子群特性粒子群特性粒子群特性粒子群特性群智能算法群智能算法粒子群优化算法粒子群优化算法培训专用 在在在在PSOPSOPSOPSO系统初始化为一群随机粒子系统初始化为一群随机粒子系统初始化为一群随机粒子系统初始化为一群随机粒子(随机解随机解随机解随机解),然后通过迭代找然后通过迭代找然后通过迭代找然后通过迭代找到最优解。在每一次迭代中到最优解。在每一次迭代中到最优解。在每一次迭代中到最优解。在每一次迭代中,粒子通过跟踪两个粒子通过跟踪两个粒子通过跟踪两个粒子通过跟踪两个“极值极值极值极值”来更来更来更来更新自己新自己新自己新自己,同时也通过跟踪它们实现粒子间的信息交换。第一个就同时也通过跟踪它们实现粒子间的信息交换。第一个就同时也通过跟踪它们实现粒子间的信息交换。第一个就同时也通过跟踪它们实现粒子间的信息交换。第一个就是粒子本身所找到的最优解是粒子本身所找到的最优解是粒子本身所找到的最优解是粒子本身所找到的最优解,这个解叫作个体极值这个解叫作个体极值这个解叫作个体极值这个解叫作个体极值pBest(“pBest(“pBest(“pBest(“自自自自身经验身经验身经验身经验”)”)”)”)。另一个极值是整个群体目前找到的最优解。另一个极值是整个群体目前找到的最优解。另一个极值是整个群体目前找到的最优解。另一个极值是整个群体目前找到的最优解,这个极这个极这个极这个极值是群体极值值是群体极值值是群体极值值是群体极值 gBest(gBest(gBest(gBest(群体的群体的群体的群体的“社会经验社会经验社会经验社会经验”)”)”)”)。群智能算法群智能算法粒子群优化算法粒子群优化算法培训专用19981998年年年年,Shi,Shi和和和和EberhartEberhart正式给出标准正式给出标准正式给出标准正式给出标准PSOPSO算法的数学描述如下算法的数学描述如下算法的数学描述如下算法的数学描述如下:设搜索空间为设搜索空间为设搜索空间为设搜索空间为MM维维维维,粒子数为粒子数为粒子数为