智能信息处理 资料说明
智能信息处理
——自选课程资料及其说明
一、课程设立的必要性
人工智能的概念在1956 年Dartmouth会议上被提出后得到了极大的丰富和发展,其中,控制、金融、管理及生物医学等领域中因复杂和不确定信息处理需要而促成了一大批具有智能的信息管理方法及相关工具,并逐渐形成了智能信息处理这一分支。 智能信息处理的方法不仅已经成功应用于解决控制、金融、管理及生物医学等领域的实际问题,而且其理论探索极富挑战性,横跨众多领域,除了计算机科学以外, 还涉及信息论、控制论、自动化、仿生学、生物学、心理学、数理逻辑、语言学、医学和哲学等多门学科,其发展联动效益显著。鉴于此,国内外众多著名高校和研究所,如哈佛大学、麻省理工学院、中科院等,均设立了人工智能或智能信息处理的研究方向,并开设相关的基础理论和专业课程。目前,智能信息处理或同类课程已经成为我国各高校信息学科(包括控制科学与工程学科)的重要课程之一。
二、资料自选的原因
尽管人工智能自提出已半个多世纪,但鉴于其固有的复杂性,该学科远未成熟,未形成完备的理论框架和理论基础,亦未形成公认的统一授课模式和授课内容。各高校和研究院所同类课程往往结合自身研究方向和研究需要决定授课内容和讲授方式,不同学校之间的教学方法和授课内容往往难以直接借用。此外,该学科自身发展历史等原因也决定了目前很多高校和研究院所的智能信息处理课程内容集中于知识表示、自动推理和搜索方法、知识处理系统、自然语言理解、自动程序设计、数据挖掘等方面,而对与控制科学与工程学科结合更为密切的建模和控制等问题的讨论则相对较少。
另一方面,市面上与智能信息处理或人工智能相关的书往往难以直接作为控制科学与工程学科该方向课程的教材:1)有的偏重于方法的罗列,全方位介绍遗传算法、神经网络等多种方法,但受篇幅限制而无法展开介绍各方法的内在特点以及方法之间的联系;2)另一些虽能具体深入介绍算法的内涵及其应用细节,但内容过于集中、单一,例如介绍神经网络的书;3)部分教材,尤其是经典的人工智能教材,深入浅出而系统性较强,但内容庞杂,且偏重介绍知识表示、自动推理和搜索方法、自然语言理解等方面的理论和方法,与自动化学科结合不够紧密。
针对上述问题,本课程将结合本学科研究生学位培养的要求和智能信息处理学科的具体特点,以“刚性的程序如何解决控制和建模过程中的柔性问题”为中心进行选材,阐述智能信息处理方法在建模与控制中的目标与意义,介绍智能信息处理的部分相关术语、基础知识、通用框架及常用方法,通过实例说明如何有机结合智能信息处理方法与传统信息处理方法以解决建模和控制等领域中的不确定和动态变化问题。建议读者在学习过程中考虑以下问题:
1)在控制系统的设计和应用过程中有哪些常见的不确定因素?这些因素对建模、控制系统设计以及控制效果存在哪些影响?
2)控制和建模过程的智能化为什么可以克服这些不确定性因素的影响?
3)可以采用什么样的通用方法和通用系统结构实现智能?
4)智能信息处理如何与传统的信息处理方法有机结合?人作为使用和设计者应在其中发挥何种作用?
三、所选资料的说明
第一部分简单介绍线性、动态、反馈等基本概念。
为本科阶段非自动控制及相关专业的读者介绍与本课程内容有关的简要基础知识(节选自网上电子资料:罗抟翼等, 控制工程及信号处理基础, 机械工业出版社, 2008 和 罗键, 系统灵敏度理论导论, 西北工业大学出版社, 1990)。
第二部分简单介绍多种不确定因素来源及其对系统性能的影响。
通过强非线性执行器(如强非线性阀门等)、参数大范围时变的对象或生产过程(如工业机器人、浓度控制的化工过程等)等实际例子,简单介绍了不确定性因素的来源及其对于系统性能的影响(节选自K. J. Astrom, 李清泉译, 自适应控制, 科学出版社, 1992)。
这些不确定因素对控制提出了很高的要求。当被控对象具有强非线性特性时(例如,pH控制、强非线性阀过程的控制),对象在不同工作点的增益往往差别很大,甚至可达上万倍。如P45图2.2所示,若按固定控制增益的方式进行控制,则在对象增益较小的工作点附近,系统响应缓慢;而在对象增益较大的工作点附近,系统响应又会出现振荡。
高性能机器人往往重量很轻,因而对于姿态和负载的变化非常敏感。例如,如P47图2.7所示,机械臂由直立位置到伸张位置,惯性矩的变化可达1:50。而如P49图
2.9所示,若采用固定参数的常规PID控制,当惯性矩变化范围超过1:4时,在小惯性矩时系统响应可能过于缓慢,而惯性矩过大时响应却可能过于激烈而振荡,表明固定参数的PID控制方法已不适宜。
抑制这些不确定因素的影响要求控制方法能根据实际情况自动调整控制参数,甚至改变控制器的结构(例如改PID控制为其他控制算法)。然而,要达到这一目的,控制算法必须解决两方面的问题:
1)自动识别“实际情况”发生了什么变化。
2)针对这些变化作出恰当的调整。
如果控制器具有这两方面的能力,我们有理由相信其具备相当程度的智能。本资料的第三部分就介绍了一个这样的例子。
第三部分简单介绍自适应控制及其相关方法。
以供热通风与空气调节(HVAC)系统为实例(John E. Seem. A New Pattern Recognition Adaptive Controller with Application to HVAC Systems, Automatica, 1998, 34(8): 969-982),介绍如何将模式识别的方法与传统滤波、PI控制等方法有机结合,以克服不确定性因素的影响。
通用的HVAC系统可能应用于各种类型的建筑物。考虑到不同建筑物类型和格局的差异、建筑布局随时间的变化、执行器件的选型差别和更换、环境温度的变化、负载的不断变化等等诸多不确定因素,一个实用的HVAC控制器应满足如下要求(P69右下角):具备极强的鲁棒性,可克服系统非线性和无法测量的扰动变化的影响,对测量噪声不敏感,无需先验知识,无人监控等等。
受运行和维护成本限制,控制器参数往往由供货方工程师在安装时设定好,或甚至直接按出厂值设定;在运行过程中一般不会(实际也难以做到)再邀请专家进行调整。因此,设计能自动识别控制效果并自行调整控制参数的控制算法是解决该问题的一种有效方案。
供热通风与空气调节(HVAC)系统通常以舒适和节能为主要目标,因而要求尽可能减小温度曲线波动幅度。如何识别波动剧烈程度的变化并作出恰当的参数调整,是该类型系统必须解决的关键问题。学习该论文不妨重点留意其如何解决以下两方面主要问题:
1)它是如何识别“实际情况”的变化,即如何判断当前系统参数配置已非最佳节能参数?
2)为什么它对于PI
HVAC自适应控制系统面对的似乎是一个异常复杂多变的环境,实际上,单就响应曲线形状而言就存在无限种可能。该论文的方法仅仅采用振荡率、闭环响应时间即实现了对不同类型曲线的区分。此外,仅仅调整比例系数和积分时间常数两个参数即可使得系统运行重回较理想的状态。若从控制器与环境互动的角度出发分析系统的运行过程,可以发现,控制器与环境两者之间通讯的信息量被压缩得如此之小,令人赞叹。这对于减少传感器和执行器、减小控制算法运算量,进而降低系统成本无疑是非常有利的。而这也促使我们思考:从控制的角度出发,如何理解“信息”这一概念的本质?借助集合论和可计算性的理论和方法(本资料的第四部分),我们可以比仅仅通过控制实例更深入地了解这个问题。
第四部分简单介绍可计算性。
借助可计算性和集合论的理论和观点分析“程序”的刚性,并介绍形式语言的特点和局限性(节选自Martin Davis etal. Computability, Complexity, and Languages, Second Edition, Morgan Kaufmann, 1994)。
香农和维纳分别将信息定义为:“不确定性的消除量”,“我们在适应外部世界和控制外部世界中,同外部世界进行交换内容的名称”。奥本海模则认为“信息蕴涵于信号的变化之中”。“集合间的一一对应法则”是隐含在这些表面各异的观点中的共同之处。结合HVAC自适应控制系统的例子,为尽可能减轻控制器与环境之间的通讯压力,两者之间必须在某种“先验地约定的” 集合上达成一致,如此,则可将通讯的内容由“元素的内容”(如果确实能描述清楚这样一种“内容”的话)本身改为其在集合中的编号。学校学籍管理就是一个典型的例子,每名学生被分配一个学号,则无需详细描述一学生的高矮胖瘦而直接对其学号进行处理。另一个熟知的例子是曲线的参数化,通过约定直角坐标系,集合{不同的直线}可与一实数对集合{(k, b)},其中k和b分别为直线的斜率和纵轴截矩,建立一一对应关系。
数字计算机作为通讯的一方要求能以整数对“先验”约定的集合中的元素进行编号。由于实数集合等大量集合的势大于整数集合的势,因而无法在这些集合与整数集合之间建立一一对应关系。这也意味着数字计算机无法一一区分这些集合中的不同元素,必然存在不同元素共用同一个“编号”的情况。若通讯双方均为采用自然语言通讯的人,分辨元素的能力会大大提高,但即便如此,依然存在大量集合,其元素无法用自然语言一一区分。感兴趣的读者可以进一步参考论文:Martin A. Nowak, Natalia L. Komarova & Partha Niyogi. Computational and evolutionary aspects of language, Nature, 2002, 417(6): 611-617)。“通讯”语言的这种缺陷也许是医学经验、艺术技巧等难以言传后人的本质原因之一。
这种缺陷也决定了,在绝大多数的场合,使用数字计算机进行信息处理不得不牺牲一些精度,即允许“重名”的现象发生;进而也必然要求所关心的输入输出关系(一一对应规则)是连续的,即输入的微小变化不会引起输出的显著变化,如此,低精度的输入描述一般不会引起大问题。正因为人的皮肤无法感知微小的温度差别,采用字长有限的数字控制器也能取得令人满意的温度控制效果。但对其他一些应用,确
定合适的连续映射需要丰富的领域知识和经验。以动态系统的闭环控制为例,为了简化分析和设计,对象中的小惯性环节往往会被忽略,这种近似对开环响应影响不大,但对闭环响应却可能引起巨大的差别。因此,对闭环控制系统,往往倾向于采用开环相位裕度和截止频率为对象集合“起名字”。
事实上,“通讯”语言的表现能力仅仅是问题的一方面。应注意到,上述“通讯量”的压缩是建立在“通讯”双方就所关心的集合达成“共识”的基础上的,它要求某种先验的知识,即在建立通讯之前能先验地约定一一对应规则。这种约定也不可避免地带来控制器的刚性,在严格意义上,即程序的刚性。当环境的不确定程度增加,集合内容范围扩大,原先约定的一一对应规则已无法精细区分集合中的不同元素,将导致控制器产生错误的判断,作出错误的响应。
环境的柔性和不确定性要求克服程序的这种刚性缺点,以提高程序的通用性。这意味着程序编制过程中应尽可能降低对于先验知识的要求,或者说对于领域知识的要求。亦即,控制器与环境之间应建立一种弹性的一一对应规则,而这种规则可以根据实际运行效果自动进行调整。也可以说,在控制器设计中引入更强的智能的元素。 问题在于,是否存在一种简单的“编程”机制,可达到该目的。事实上,繁殖、进化、反馈等多种机制均可资借鉴,它们均可在复杂多变的环境中以“惊人的毅力”“坚持某种预定的目标”。受编者能力和资料篇幅限制,本课程资料的主干部分仅围绕反馈机制展开,以节选教材章节和刊物论文为素材,借助控制和建模实例,逐步揭示如何在传统的控制系统框架上附加智能元素。
与参数固定的PI控制相比较,HVAC自适应控制对环境的变化具有更高的灵活性,表现为其能够根据振荡率和闭环响应时间判断控制效果,从而确定偏差与控制量之间的一一对应规则(即PI算法)是否应该修改,以及如何修改。
出于简化问题的习惯,人们通常按分层的方式来分析和设计这样的系统,即在底层PI控制回路的上面另外建立一套一一对应规则,来修改底层的一一对应规则(PI算法)。既然是一一对应规则,必然需要有输入和输出。对于HVAC自适应控制,其输出自然是新的PI参数。但受成本限制,一般不应增加额外的传感器。HVAC自适应控制从已有的温度测量值中获取新的信息,作为高层对应规则的输入。事实上,这也符合人们对于PID控制的一般经验。下面的PID参数调整口诀表明,被控量的变化趋势本身蕴涵了调整控制参数所需的信息。
参数整定找最佳,从小到大顺序查;先是比例后积分,最后再把微分加。 曲线振荡很频繁,比例度盘要放大;曲线漂浮绕大湾,比例度盘往小扳。 曲线偏离回复慢,积分时间往下降;曲线波动周期长,积分时间再加长。 曲线振荡频率快,先把微分降下来;动差大来波动慢。微分时间应加长。 理想曲线两个波,前高后低 4 比 1 ;一看二调多分析,调节质量不会低。 HVAC自适应控制的成功之处在于通过大量仿真和实验确立了上述经验口诀的量化公式,从而方便计算机实现。
然而进一步分析可以发现,其上层规则的建立依赖于丰富的领域知识。不管是上述PID参数调整口诀,还是HVAC
{被控对象}的不确定程度增大。如{(K, T, τ)}已不再能精确地区分被控对象并为
第五部分简单介绍模型不确定对象的控制。
对于无法预先获得足够领域知识和经验的问题,我们不妨将要求降低为寻找一种柔性的编程机制,使其可方便地通过观察到的现象和数据不断积累领域知识。基于搜索引擎的专家系统(将于第7.1部分介绍)和具有学习能力的神经网络(或模糊系统等)是实现这种机制的两种典型方法。当然,除此之外,还存在大量其他方法。
受课时限制,资料的第五部分仅简单介绍在对象模型不确定的情况下,如何引入反馈机制编写柔性程度更高的程序。为实现柔性程度更高的规则建立机制,需要解决两方面问题:
1)将程序自我调整的目标转化为偏差。一般而言,应找到经验数据中隐含的某种函数相关关系,并将该关系与程序输入输出关系相比较形成量化的偏差。
2)程序调整方式:如何根据偏差恰当地调整程序。
作为例子,课程将基于论文(K. K. Tann, S. N. Huang and T. H. Lee. Adaptive backstepping control for a class of nonlinear systems using neural network approximations, Int. J. Robust Nonlinear Control 2004; 14: 643–664)介绍在被控对象模型未知的情况下,如何采用神经网络实现误差有界的控制。如果对象的非线性动态特性已知并满足一定条件,则采用反馈线性化可以实现渐近稳定控制。但在缺乏领域知识或者环境等因素变化的情况下,对象的动态特性往往难以预知。此时,可以基于已有的、对对象不完整的认识编写一个不完善的控制程序,在控制的过程中不断加深对对象的认识,同时也不断完善控制算法。按这种思路,可编写控制算法和用于近似对象动态特性的神经网络模型等两部分程序,同时允许程序根据控制效果(偏差)不断调整控制算法和神经网络的权值。
如何设定程序自我调整目标是该问题的难点之一。如果对象特性非常清楚,则可以建立精确的模型(程序),从而得到理想的控制律。但是论文中对象模型未知,因而“理想模型”和“理想控制算法”均无法得知,自然无法计算当前模型和控制算法与其之间的偏差。该论文采用了控制领域中一种典型的处理方法,以跟踪偏差为指标,不仅评价控制效果,同时还间接评价神经网络模型的拟合性能,作为反馈调整程序的依据。
此外,针对上述两方面问题,读者还可以留意到:
1)神经网络等模型将需要编程实现的输入输出关系展开为“基本指令”的线性组合,则编程本身可转化为权值的计算。在线性组合条件下,权值的变化对总体功能的影响易于量化评价,非常便于修改。我们熟悉的泰勒级数展开和傅立叶级数展开均可用于具体实现这种柔性编程机制。Cover定理指出非线性分类问题映射到高维空间将比投射到低维空间更可能是线性可分的;通用函数逼近定理表明,任何一个在实轴闭区间上的连续函数都可以表示成该区间上绝对一致收敛的多项式级数的极限。这些定理表明,即使仅用通用“基本指令”的线性组合,也具有几乎万能的表现能力,为实现这类柔性编程机制提供了理论依据。
2)除偏差的建立和模型的表示外,编写这种程序的另一难点在于,如何根据性能评价结果调整程序。该调整过程的启发式特点意味着搜索过程可能偏离正确方向,甚至发散。该论文采用的又一典型方法为:利用李亚普诺夫方法“编写”控制器程序,可保证在满足某些前提假设的条件下,“程序”执行结果不致于过大偏离理想状态。该论文的方法对于学习极大似然法等其他“编程”方法也有很大帮助。
图1简单描述了第一至第五部分内容的大致构成。贯穿其中的一条重要线索是如何采用反馈的机制,在刚性的程序上添加柔性的元素。所选的各例子从控制参数固定
的传统PID控制到参数可变的自适应控制,最后到模型不确定的对象建模(请参考第六部分论文)和控制,其柔性程度不断提高,方便读者对各方法进行比较。
反馈的机制贯穿
其
中
图1 贯穿所选材料的主线——通过反馈实现具有柔性功能的刚性程序
反
馈
机
制
的
实
现 图2 贯穿所选材料的辅线——实现反馈机制的三个主要方面
通过进一步分析各材料所用方法,细心的读者将可能发现其中的另外一条线索,即实现反馈机制通常所涉及的,图2所示的三方面重要内容:问题的表示(representation)、启发式策略的构建(heuristic strategy)和过程的收敛性。柔性意味着可以根据环境的需求作出改变,合适的问题表示(数据结构)为这种变化提供了基础,而高效的启发式策略则指导着这种变化朝着期望的方向发展,而不是作低效率的盲目调整。问题表示和启发式搜索策略是设计智能系统的关键。然而,再好的启发式策略也不一定能保证搜索总能保持正确的方向,收敛性和稳定性一直以来都是反馈系统的核心问题。读者可以从这三方面比较自适应控制和神经网络控制的两篇文章,体会作者在实现反馈机制中所采用的技巧。也可以进一步从这三方面学习和使用更多具有学习能力的方法,如径向基神经网络、BP神经网络和模糊系统等,甚至设计新的学习算法。许多学习算法均建立在反馈机制的基础上,以减小偏差为目的调整程序自身。读者可选择其中的一些方法分析其问题表示和启发式搜索的具体形式,即其数据结构如何使得一一对应规则的调整成为可能,而启发式搜索如何避免盲目搜索,加快
调整过程。受课时限制,我们将不详细介绍这些方法。建议读者能在课前和课后自行阅读该方面的课外资料。这方面的参考书非常多,如(Simon Haykin著,叶世伟,史忠植 译. 神经网络原理,机械工业出版社,2004),读者可以根据自己的需要和习惯进行选择。读者也可以运行下述参考书中的程序,熟悉其中的算法(闻新等. Matlab神经网络仿真与应用,科学出版社,2003,P265)。
第六部分简单介绍人在使用反馈机制实现智能控制系统中的作用。
反馈系统的性能对于反馈通道和偏差计算环节的变化非常敏感(请参考P30~P42对灵敏度的介绍);为获得良好的控制性能,偏差的计算必须准确反映系统响应偏离期望状态的情况。第五部分神经网络控制的论文中,因“理想”对象模型和“理想”控制律未知,而只能通过跟踪误差间接量化模型和控制律偏差,并按偏差调整模型和控制律。其前提是这种间接的指标的确能反映实际模型和“理想”模型的偏差。鉴于该 “能观测性”判断问题的复杂性,在实际应用中可暂时抛开理论分析而具体地描述为:所积累的经验数据是否能表现出一定的模式,足以使得相应的变量之间构成函数关系。以图3为例,相对于图3(b)而言,图3(a)的实验数据分布表现出更为特定的模式,从而使得数据拟合程序的自我调整具有相对明确的目标。在此基础上,以拟合的偏差为性能指标,可量化表示程序输入输出关系与该目标函数(数据分布所隐含的相关关系)之间的偏差。从这个角度看,为图3(a)的结果建立模型远较为图3(b)建模方便。
(a)
图3 实验数据分布(试留意其纵横坐标变量是否表现出特定的相关关系模式)
但现实中,对于绝大多数实验而言,得到类似前者分布的可能性远远小于后者。其原因是多方面的,常见的因素包括:非线性动态特性、噪声、未知输入等等。如何克服这些因素的影响顺利建立模型已非单纯的智能方法应用问题,它需要设计者充分发挥主观能动性,最大程度地降低建模过程中诸如此类的不确定因素的影响。第三部分的供热通风与空气调节(HVAC)系统已充分地说明了人在自适应控制系统设计中的重要作用。第六部分将结合论文(S.M. Savaresi etal. Identification of semi-physical and black-box non-linear models: the case of MR-dampers for vehicles control, Automatica, 2005, 41(1): 113-127)进一步阐述人在不确定非线性动态对象的建模过程中所起的作用及所需承担的工作。该部分所提供的论文以磁变流阻尼器这种典型的非线性动态对象为例,介绍了如何通过合理设计实验,包括:明确实验范围、选择强度适当的持续激励、滤波处理输出信号、引入历史项作模型额外输入等措施,尽可能促使变量之间相关关系模式的出现,将原类似图3(b)“随机分布”的不良结果改为类似图3(a)的分布结果。
从第三和第六两部分的论文中,读者也许可以发现,高超的技巧往往源于作者对于对象和领域知识的熟悉;熟能生巧,真正熟悉对象后,也许用很简单的方法就可以
解决问题。再强大的智能方法所能解决的不确定问题也是有限的,使用者应到第一线扎实工作,获取经验和领域知识,尽最大努力降低问题的不确定程度。
第七部分为课后阅读材料,主要涉及与智能有关的一些方法论问题。
7.1)搜索引擎(search engine):问题表示和搜索方式的进一步讨论。Using rules to code the heart and soul of VB applications, Issue of VB Tech Journal, 1995。
以电话计费系统为例,计费系统需根据不同时段、不同通话地点、不同用户特点设定费率,且费率还需随市场变化经常调整。计费规则间相互关联,但又不存在固定的连接模式。若用过程式的语言实现这种规则,需要使用大量的标记(flags)和if-then语句,程序混乱;且由于规则会经常变化,维护也存在极大困难。与电话计费系统相似,大量的专家系统存在一个共同特点,即需求和环境的变化使得系统的核心功能具有很强的不确定性。7.1部分的论文介绍了一种灵活的编程模式——搜索——以解决该问题。
7.2)智能的特点和判断标准,以及智能方法的局限性等。
A.M. Turing. Computing machinery and intelligence. Mind, 1950, 59:433-460。
期末考试以所发资料为主要内容。更多资料可与本人联系:莫鸿强,。