作者:鲍捷
摘要:本文总结了智能计算各领域发展的概况,提出智能计算(包括神经网络、进化、遗传、免疫、生态、人工生命、主体理论等)作为第二代人工智能方法,是连接主义、分布式人工智能和自组织系统理论等共同发展的结果,其各领域间有着内在的、本质的联系,认为智能计算系统存在一般的数学基础,并存在一般模型,即广义生态学。最后,提出了智能计算理论和应用发展的若干展望。
关键字:智能计算 神经网络 进化 遗传算法 免疫 生态 人工生命 主体理论
1. 从符号主义到连接主义
智能是个体有目的的行为、合理的思维,以及有效的适应环境的综合性能力。人工智能是相对于人的自然智能而言,用人工方法和技术,模仿、延伸和扩展人的智能[1] 。长期以来,人们从人脑思维的不同层次出发,对人工智能进行研究,形成符号主义、连接主义和行为主义。
传统的人工智能是符号主义,它以Newell和Simon提出的物理符号系统假设为基础。物理符号系统假设认为物理符号系统是智能行为充分和必要的条件。物理符号系统由一组符号实体组成,它们都是物理模式,可在符号结构的实体中作为组分出现。该系统可以进行建立、修改、复制、删除等操作,以生成其他符号结构。
连接主义研究非程序的、适应性的信息处理的本质和能力,其初始代表为神经网络。神经网络的一些特点在连接主义计算后来的发展中也得到了体现,如:
1、 以分布式方式存储信息
2、 以并行方式处理信息
3、 具有自组织、自学习能力
连接主义与行为主义间的差距相对较小,因此可将人工智能分为两大类,即符号智能和计算智能 (或智能计算)。符号智能是以知识为基础,通过推理进行问题求解,也即传统的人工智能。计算智能是以数据为基础,通过训练建立联系,进行问题求解。计算智能以连接主义的思想为主,并与模糊数学和叠代函数系统等数学方法相交叉,形成了众多的发展方向。人工神经网络(ANN)、遗传算法、演化计算、人工生命、生态计算、免疫信息处理、多主体系统等都可以包括在计算智能中。
连接主义,或计算智能与分布式人工智能(Distributed Artificial Intelligence, DAI)是密不可分的。人们在研究人类智能行为中发现,大部分人类活动都涉及多个人构成的社会团体,大型复杂问题的求解需要多个专业人员或组织协作完成[1] 。“协作”是人类智能行为的主要表现形式之一,分布式人工智能正是为适应这种需要而兴起的。尤其是随着计算机网络、计算机通信和并发程序设计的发展,分布式人工智能逐渐成为人工智能领域的一个新的研究热点,作为人工智能的一个分支,DAI主要研究在逻辑上或物理上分散的智能动作者如何协调其行为,即协调协调它们的知识、技能和规划,求解单目标或多目标问题,为设计和建立大型复杂的智能系统或计算机支持协同工作提供有效途径。分布式系统的本质决定了它是复杂的、非线性的、通过各子系统间的协同达到更高有序态的系统,因此分布式人工智能的主要研究方法是连接主义的而不是符号主义的。
20世纪50年代以后一段时间,符号智能体系取得了巨大的成功,但80年代中期以来,这种经典人工智能的发展由辉煌转入相对停滞[15] , 而计算智能在神经网络的带动下异军突起。与生命科学、系统科学密切联系是计算智能的突出特点,正是由于这个特点,不仅计算机科学家,而且众多其他学科的学者也加入到计算智能的研究中来,极大促进了它的发展。
2. 智能计算的各分支
计算智能是由若干相对独立的子领域发展综合而来的,主要有:
2.1 神经网络
神经网络是连接主义的经典代表。
神经网络是由大量神经元广泛互连而成的复杂网络系统 [5],诞生于1943年。单一神经元可以有许多输入、输出。神经元之间的相互作用通过连接的权值体现。神经元输出是其输入的函数。常用的函数类型有:线性函数,S型函数和阈值型函数。虽然单个神经元的结构和功能极其简单和有限,但大量神经元构成的网络系统的行为是极其丰富的。单个神经元、Hopfield 网络模型和前向神经网络的结构如图所示。
神经网络的基本特点是:
- 大规模并行处理:神经网络能同时处理与决策有关的信宿,如虽然单个神经元的动作速度不快,但网络的总体处理速度极快。
- 容错性:由于神经网络包含的信息是分布存储的,即使网络某些单元和连接有缺陷,它仍然可以通过联想得到全部或大部分信息。
- 自适应和自组织性:神经网络系统可以通过学习不断适应环境,增加知识的容量。
2.2 遗传算法 [5]
遗传算法(Genetic Algorithm)是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型,它是由Holland于1975 年首先提出的。其主要特点是群体搜索策略和群体之间的信息交换。与解析法、穷举法、随机法等传统搜索方法相比,遗传算法具有不需搜索空间的知识、并行爬峰、编码方法适应性广等特点。遗传算法是所谓“演化计算”的一种。
遗传算法的基本流程和要素如图2所示:
根据模式定理(Schemata theorem ),遗传算法中串的运算实际上是模式的运算,遗传的进化实际上是模式的进化。低阶、短定义距及平均适应度高于群体适应度的模式(积木块)在子代中将得以指数级增长,积木块在遗传算子作用下,相互结合,能生成高阶、长距、高平均适应度的模式,可最终生成全局最优解。
遗传算法具有隐并行性,在对n个串个体进行运算时隐含处理了O(n 3)个模式。实际上,在自然进化过程的任何时刻,总是同时有大量的物种在彼此独立地向前进化。在同一物种内部,也是同时存在着大量的个体在通过自然选择、交配和基因突变而进化。显然,自然界的进化过程本身就是一个并行过程。遗传算法源于自然进化,自然也就继承了自然进化过程所固有的并行性。
标准遗传算法是生物遗传过程的一个非常简化的模拟。事实上,由于遗传,以及更广泛的进化,与生态的关系是密不可分的,在遗传算法中引入生态因素是值得努力的。这方面经典的如小生境(niche) 技术 [5][8] 。
2.3 演化计算
演化计算(Evolutionary Computation) ,或称进化计算,是遗传算法的超集,其特点是群体搜索策略和群体中个体之间的信息交换。目前研究的进化算法主要有遗传算法、进化规划(EP, Evolutionary Programming )和进化策略(ES, Evolutionary Strategies) [5]。尽管它们之间很相似,但历史上这三种算法是彼此独立发展起来的。
遗传算法是由美国J.Holland创建,后由K.DeJong,J.Grefenstette, D.Goldberg和L. Davis等人进行了改进; 进化规划最早由美国的L.J.Gfogel, A.J.Owens 和M.J.Walsh提出; 进化策略是由德国的I.Rechenberg和H.P.Schwefel建立的。三种算法既有许多相似之处,同时也有很大的不同 [5]。①进化规划和进化策略都把 变异作为主要的搜索算子,而在标准遗传算法中,变异只处于次要地位;② 交叉在标准遗传算法中起着重要作用,而在进化规划中被完全省去,在进化策略中与自适应结合在一起使用非常重要;③标准遗传算法和进化规划都强调 随机选择机制的重要性,而从进化策略的角度看,选择是完全确定的,没有合理的根据表明随机选择原则的重要性;④进化规划和进化策略确定地把某些个体排除在被选择复制之外,而标准遗传算法一般对每个个体都指定一个非零选择概率。
另外,在所谓的“智能进化”中,除了考虑遗传因素,还考虑到学习,这就是进化的 强化学习 (ERL) [5]。在ERL 中, 评价网络 的结构和结合强度均由遗传决定,而 行动网络 的结合强度则有可能通过学习决定。而且这种学习信号的源泉,也仅限于评价网络的报酬信号。这是通过遗传决定的评价网络的报酬信号对行动网络结合强度实行最优化的一种强化学习方法。
2.4 免疫信息处理
人体免疫系统是一个高度进化、复杂的生理机制,免疫系统通过高度复杂的网络结构来识别和排除抗原性异物,维护体内环境的稳定。免疫过程中所具有的识别能力、学习和免疫记忆功能,以及自适应调节机制等特性具有重要的工程应用价值。1994年以来,免疫信息处理成为国际上新的研究热点 [11][12] 。目前这一领域还处于起步阶段。
从工程应用的角度,可抽取出免疫反应的概念化模型为:
图中免疫识别能够识别自我(Self)和非我(Non-self),对模式识别和计算机病毒防治等都具有重要的的意义。
在免疫调节中,一个比较成功的学说是 Jerne 网络模型(N.K.Jerne,1974)。这种高度联结的网络具有非线性动力系统所具有的稳定平衡点(该点对应于免疫记忆),当抗原侵入时,扰动网络的平衡,通过内部节点间的作用关系而形成新的平衡点。该网络学说能较好地解释免疫记忆,免疫学习及免疫耐受等重要特点。基于该网络学说的思想和模型已在组合优化问题、自适应控制等方面取得了较好的效果。
免疫系统与脑神经系统在系统行为上具有很多相似,如识别、学习和记忆性能等,但是它们却有着不同的信息处理机制。免疫细胞间呈现着一种相互刺激和抑制的对称的作用关系,这不同与脑时间元之间的作用关系。免疫系统广泛分布于全身,它们通过在时间和空间上 分布式的网络结构来实现各种免疫功能,并且这种网络结构和作用关系是在随着环境的不同而不断变化的。而经典人工神经网络是一种固定连接的网络模型。
免疫与遗传系统之间也是相互区别和联系的,由于抗原、抗体的特性是通过基因编码体现的,体内多样性抗体的产生也是基于免疫细胞分裂时进行的基因交叉和变异而实现的,这种基于遗传交叉的多样性操作,以及基于变异和选择等自适应群体层次的操作,对构成免疫识别和记忆具有重要的作用。但免疫系统与遗传系统有着本质的区别:遗传算法是一种单一功能个体的进化,对每个个体而言,只能适应某个问题或环境,一旦环境变化,进化将前功尽弃。而免疫系统是将环境(非己)和自己相互作用直接考虑的。和GA相比,免疫系统还有如下特征:
l 不是独立地对每个个体进行评价和选择,而是以共同作用为前提,考虑共生关系与系统化。
l 自我与非我的识别是一种特殊的模式识别,因此有特殊的多样性和选择操作。
l 自适应性体现在包括结构层次在内的各种层次中。
l 更能在线适应变动的环境。
免疫与生态系统具有某些联系。在博弈生态系统中,在博弈中可产生抗体 [5]。
2.5 主体理论
主体,即 Agent ,是一个实体,它通过感知器感知环境,通过效应器作用于环境。主体是智能计算的单元中最复杂的一种;也正是由于这种复杂性,它的行为方式更加多样,为研究遗传、免疫、生态等提供了良好的应用平台和观察背景。
多主体理论( MAS )是分布式人工智能( DAI )研究的一个分支。在多主体理论中,主体是一个自主的实体,它不断地与环境发生交互作用。同时在该环境中还有其他的进程发生,也存在其他的主体。或者说,主体是一个其状态由心智部件,如信念、能力、选择、意图等组成的实体。在一个系统中,主体可以是同构的,也可以是异构的。多主体的研究涉及到在一组自主的智能主体之间协调其智能行为,协调它们的知识、目标、意图及规划以联合起来采取行动或求解问题。主体之间可能是协作关系,也可能存在着竞争。分布式人工智能和 MAS 是一个共同特点就是分布式的实体行为。 MAS 可看作是采用由底向上的设计方法设计的系统。因为在原理上,分散自主的主体首先被定义,然后研究怎样完成个人或几个实体的任务求解。 MAS 不仅可以处理单一目标,也可以处理不同的多个目标。多主体系统主要研究在逻辑上或物理上分离的多个主体如何能并发计算、相互协作地实现问题求解。
目前, MAS 系统的研究非常活跃。 MAS 试图用主体来模拟人的理性行为,主要应用在对现实世界和社会的模拟、机器人和智能机械等领域。主体本身需要具有自治性、对环境的交互性、协作性、可通讯性,以及长寿性、自适应性、实时性等特性。而在现实世界中生存、工作的主体,要面对的是一个不断变化的环境。在这样的环境中,主体不仅要保持对紧急情况的及时反映,还要使用一定的策略对中短期的行为做出规划,进而通过对世界和其它主体的建模分析来预测未来的状态,以及通过通讯语言实现和其他主体的协作或协商。主体本身的构造具有极大的灵活性,既可以采用符号主义的方法(如面向推理的符号自动机),也可以采用连接主义的方法(如神经网络)。
2.6 人工生命
人工生命由美国圣塔菲研究所(SFI)的兰顿(Langton)提出,并于1987-1996年召开了五届国际人工生命会议。人工生命,是用计算机、精密机械等人工媒体所构造出的能生成自然生物系统特有行为的模拟系统 [5] 。这里,“特有行为”主要是指
(1)自组织行为,即不是通过全局的整体控制,而是通过大量的非生命分子(也就是行为的各个构成部分)的相互作用而形成的某中有序的行为。
(2)学习行为,即从生物进化过程的自适应现象中所发现的自学系及其传播行为。
这两个特有行为又可以概括为“自律生成行为”。所谓自律(autonomy ),含有“自治”、“自我约束”之意,自律系统能够在复杂的外部环境中,自动地调整系统行为,甚至改变系统的结构。在“调整”和“改变”过程中,学习到新的“知识”,使系统本身得到优化。如果是人工生命系统,则意味着系统得到进化。
人工生命的本质就是在人工系统上实现与生命一样的行为。这里的“系统”,由来自自律的个体集团构成,而个体之间的局部相互作用由简单规则的集合来控制。在这样的系统中,不存在全局范围的集团行为规则。人们观察到的复杂的高维动力学现象及其结构,具有突现(emergent )性质,也就是系统不能产生预先设定性质。因为系统设计者虽然可以设定各个个体行为的“局部规则”,但不能预先设定个体集团全体行为的“全面行为规则”。这种“突现” 性质是由于低维的个体之间局部地相互作用,随着时间的发展而表现出来的。这种性质的产生过程表明,高维结构的“局部层次”,通过要求低维个体的支撑而相互竞争、发展起来。这其中的突现结构,即所谓低维个体行为的组织化完成了极重要的任务,这种任务的通过不断地进化是通过不断地设定唤起低维个体局部规则而完成的,因此突现结构随时间而进化。
通过上述讨论,我们不难看到人工生命的一些明显特征:
1、人工生命是由单个个体的集团构成,集团中每个个体都具有简单过程行为。
2、人工生命系统既不存在全局控制过程,也不存在决定整体行为的规则。
3、个体的每个过程都包含与其它个体的交叉,反映了它对局部状态的影响。
4、系统能超越各过程范围产生比较高级的行为,并且有“突现”结构与性质。
2.7 生态计算
生态计算或计算生态学(The Ecology Computation) ,是神经网络、遗传算法、演化计算、免疫信息处理等在更高层次的概括——尽管其发展与上述各分支是相互独立的。
从历史的角度,生态计算具有几个相对独立的来源。而这些相对独立的来源却得到了类似的结论,这无疑从一个侧面反映了生态计算作为计算智能的集大成者,其产生在是智能计算发展到一定阶段后必然。
- 开放信息系统→计算生态学
- 博弈论→博弈生态系统→生态动力学 [5]
- 反馈与控制理论→生态学模型
- 非平衡态统计物理学→非平衡相变→反应扩散方程和序参量方程→进化方程
生态系统中的自组织可从几个方面考察。从博弈论的角度考察,生态系统中的各种策略(如K策略、R策略),根据其适应度,或淘汰,或变异等,缓慢地进化。那些能够适应环境的策略类型或者相互依存的策略集团自发地形成具有新的秩序的组织(几个经典的例子参[16])。从协同的角度,计算的过程可以看成是一种相变,是系统处在一种非线性结构下产生新的更有序的空间结构和时间结构的过程。
生态计算的关键不是设计一种新的方法直接解决实际问题,它更多是面向智能计算的一般原理,说明智能计算中的某些基本原则的。在这个意义上,也可以把它称为“广义生态学”。下面我们还要详细地讨论这个问题。
3. 各领域的内在联系
智能计算的各领域之间不是相互独立的,而是有着深刻的内在联系
3.1 连接主义的思维方式,与传统的符号主义不同,智能计算的各领域用不同方式实现了连接主义的计算,即:研究简单个体如何在简单交互规则指导下,构成具有复杂智能行为的高层系统。由此带来各种算法的统一特点,如社会性、并行性、单元的智能性、开放性等。
3.2 各领域服从统一的模型,即“开放式计算系统”模型。智能计算是多个简单个体通过生态行为,或者说是社会行为,自组织的形成智能的过程。系统是由异构的、分布的、动态的、大规模的、自主的成分构成的计算系统,一个复杂的计算任务由大量的计算单元非同时的计算行为完成;执行这些任务的单元的全部特性对其他单元甚至系统本身也是未知的;大量的单元的行为决定是基于它们对系统的不完全知识和延迟的甚至是矛盾的信息作出的。
3.3 遗传算法是进化计算的特例,而进化实际上是一种特殊的生态行为。进化包含遗传的因素,但进化不能只从遗传的角度出发来考察问题,同样演化计算也不能仅以遗传变异机制为限(如经典演化计算所做的)。进化是非生物环境和生态系统共同作用的结果,而且环境通常是通过生态系统对物种的进化起作用;物种在进化中相互作用,形成所谓的“协同进化”( coevolution )。因此,如果把以遗传算法为代表的演化计算作为“微观演化”或“基因进化计算”,那么演化计算的进一步研究将导致“生态进化计算”的产生。
另一点值得注意的事实是进化与非平衡态统计物理学的关系。在耗散结构论和协同学中,利用反应扩散方程和随机微分方程从另一个角度讨论了进化的问题。实际上上述方程在生态学中应用十分普遍(下文还要讨论到),作为生态计算的特例,进化计算中运用这些数学工具是很自然的。
3.4 生态模型具有共性。对生态的理解不能停留在自然生态系统的层次上,在智能计算中,“生态”是描述计算系统中各主体间相互关系的概念,广义上,神经网络、进化系统、多主体系统、免疫系统等都是生态系统。由于系统的层次化,生态关系也有不同的层次,如人作为细胞的生态系统,而本身又是社会经济“生态系统”的一个“细胞”。一个统一的生态理论将能解释这不同应用领域、不同层次的系统的共性问题,并对智能计算的终极目标——人工生命理论产生直接的积极影响。在这个意义上,不能不说生态的研究在智能计算中是处于一个承上启下的地位的。
3.5 人工生命在智能计算诸领域中处于核心地位,它是生态计算(包括进化和遗传)、神经网络、免疫计算和主体理论等各理论的综合,又为各理论提供了认识论和方法论的指导。与生态计算相比,它与开放式计算系统关系更加密切,或者说在概念上更加吻合。人工生命的研究原则,往往就是整个计算智能的研究原则。
综上所述,智能计算作为一个整体,具有明确的研究思路、理论背景、数学手段和应用前景,其各领域和智能计算一般理论均具有极大的理论意义和应用能力。
4. 理论逻辑框架
基于以上的讨论,我们可以看到,智能计算系统与所谓“ 开放式计算系统”实际上是一致的。开放式计算系统是指由异构的、分布的、动态的、大规模的、自主的成分(Agent,可以理解为智能计算单元,如神经元、遗传个体、抗原、抗体)构成的计算系统,一个复杂的计算任务由大量的计算单元非同时的计算行为完成;执行这些任务的单元的全部特性对其他单元甚至系统本身也是未知的;大量的单元的行为决定是基于它们对系统的不完全知识和延迟的甚至是矛盾的信息做出的。这一概念是由Hewitt于1991年提出的,这种分布式计算系统的主要特征是:
(1) 并发性:在开放系统中,大量的部件同时处理从不同的外部源头来的各种信息。
(2) 非同时性:一、环境不由系统决定,信息随时进入,这要求随时处理;二、系统处理组件物理上的分散性决定了由时钟协调成为不可能。
(3) 分散控制:对于一个开放系统,一个独裁中央决策中心将成为严重的瓶颈,因为:一、通信的异步性和不可靠性;二、中心控制的Agent不可能得到完整的当前的系统状态,这样局部的决定可能更符合它们的需要。
(4) 矛盾的信息:从外部和系统不同部分来的信息结果可能是相互矛盾的,因此决定必须由开放系统的组件根据可得到的最新的证据作出。
(5) 松散的关系:一个Agent内部操作、组织结构、状态对另一个Agent可能是不可能得到的;每个组件可以保持简单,因为它只要保持自己的状态和对其他Agent的接口即可。
(6) 操作的连续性:开放系统必需是可靠的,部分组件的损坏和修理不会影响系统的操作。
在这种智能计算的一般模型中(图4),关键问题是研究简单个体如何在简单交互规则指导下,构成具有复杂智能行为的高层系统,所谓的“广义生态学”就是研究该问题的。它指出,智能计算系统共同遵循某些规律如有序、生长、繁殖、加速、交互、层次化、渐进机构化、渐进中心化。智能计算过程中的自组织的一般过程如图5所示。这些一般规律在智能计算的各领域均得到了体现,限于篇幅这里不再赘述。
参考文献
[1] 史忠植.高级人工智能.科学出版社,1998
[2] 石纯一等.人工智能原理.清华大学出版社,1993
[3] 蔡自兴,徐光祐.人工智能及其应用. 清华大学出版社,1996
[4] 董军,潘云鹤.移动Agent系统的智能与行为.计算机科学1999,26(8):53-57
[5] 陈国良,王煦法等.遗传算法及其应用.人民邮电出版社,1996
[6] 曹先彬,高隽,王煦法.基于生态竞争模型的遗传强化学习 .软件学报 1999,10(6):658-662
[7] Futuyma. Evolutionary Biology. Sinauer Associates, Inc. 1986
[8] 徐金梧,刘纪文.基于小生境技术的遗传算法.模式识别与人工智能1999,12(1):104-107
[9] Bart Kosko, Fuzzy Engineering. Prentice Hall, 1997
[10] 张显俊.免疫遗传算法及应用.中国科学技术大学硕士论文
[11] S.Forest et al. Self-nonself Discrimination in a Computer. Proceedings of the 1996 IEEE Symp.
On Comp. Security and Privacy,PP202-212,16-18 May 1994
[12] *W.C. Arnold ,D.M. Chess, et al. Automatic Immune system for Computers and Computer Networks
.US Patent 5,440,723,August 1995.
[13] 刘克胜.计算机免疫系统的研究. (中国科学技术大学内部讨论稿) 1999
[14] 潘正君,康立山,陈毓屏. 演化计算. 清华大学出版社&广西科学技术出版社,1998.
[15] 董聪,郭晓华. 智能计算中的热点问题. 计算机科学,1999,26(4):5-9
[16] Robert Axelrod. The Evolution Cooperation. Arts & Licensing International, Inc. 1984