比较专家系统、模糊方法、遗传算法、神经网络、蚁群算法的特点及其适合解决的实际问题一、专家系统(Expert System)1,什么是专家系统?在日常生活中大家所认知的“专家”一般都拥有某一特定领域的大量专业知识,以及丰富的实际经验。
在解决问题时,专家们通常拥有一套独特的思维方式,能较圆满地解决一类困难问题,或向用户提出一些建设性的建议等。
专家系统一般定义为一个具有智能特点的计算机程序。
它的智能化主要表现为能够在特定的领域内模仿人类专家思维来求解复杂问题。
因此,专家系统必须包含领域专家的大量知识,拥有类似人类专家思维的推理能力,并能用这些知识来解决实际问题。
专家系统的基本结构如图1所示,其中箭头方向为数据流动的方向。
图1 专家系统的基本组成专家系统通常由知识库和推理机两个主要组成要素。
知识库存放着作为专家经验的判断性知识,例如表达建议、 推断、 命令、 策略的产生式规则等, 用于某种结论的推理、 问题的求解,以及对于推理、 求解知识的各种控制知识。
知识库中还包括另一类叙述性知识, 也称作数据,用于说明问题的状态,有关的事实和概念,当前的条件以及常识等。
专家系统的问题求解过程是通过知识库中的知识来模拟专家的思维方式的,因此,知识库是专家系统质量是否优越的关键所在,即知识库中知识的质量和数量决定着专家系统的质量水平。
一般来说,专家系统中的知识库与专家系统程序是相互独立的,用户可以通过改变、完善知识库中的知识内容来提高专家系统的性能。
推理机实际上是一个运用知识库中提供的两类知识,基于木某种通用的问题求解模型,进行自动推理、 求解问题的计算机软件系统。
它包括一个解释程序, 用于决定如何使用判断性知识推导新的知识, 还包括一个调度程序, 用于决定判断性知识的使用次序。
推理机的具体构造取决于问题领域的特点,及专家系统中知识表示和组织的方法。
推理机针对当前问题的条件或已知信息,反复匹配知识库中的规则,获得新的结论,以得到问题求解结果。
在这里,推理方式可以有正向和反向推理两种。
正向推理是从前件匹配到结论,反向推理则先假设一个结论成立,看它的条件有没有得到满足。
由此可见,推理机就如同专家解决问题的思维方式,知识库就是通过推理机来实现其价值的。
人机界面是系统与用户进行交流时的界面。
通过该界面,用户输入基本信息、回答系统提出的相关问题,并输出推理结果及相关的解释等。
综合数据库专门用于存储推理过程中所需的原始数据、中间结果和最终结论,往往是作为暂时的存储区。
解释器能够根据用户的提问,对结论、求解过程做出说明,因而使专家系统更具有人情味。
知识获取是专家系统知识库是否优越的关键,也是专家系统设计的“瓶颈”问题,通过知识获取,可以扩充和修改知识库中的内容,也可以实现自动学习功能。
2,专家系统的特点在功能上, 专家系统是一种知识信息处理系统, 而不是数值信息计算系统。
在结构上, 专家系统的两个主要组成部分 – 知识库和推理机是独立构造、分离组织, 但又相互作用的。
在性能上, 专家系统具有启发性, 它能够运用专家的经验知识对不确定的或不精确的问题进行启发式推理, 运用排除多余步骤或减少不必要计算的思维捷径和策略;专家系统具有透明性, 它能够向用户显示为得出某一结论而形成的推理链, 运用有关推理的知识(元知识)检查导出结论的精度、一致性和合理性, 甚至提出一些证据来解释或证明它的推理;专家系统具有灵活性, 它能够通过知识库的扩充和更新提高求解专门问题的水平或适应环境对象的某些变化,通过与系统用户的交互使自身的性能得到评价和监护。
3,专家系统适合解决的实际问题专家系统是人工智能的一个应用,但由于其重要性及相关应用系统之迅速发展,它已是信息系统的一种特定类型。
专家系统一词系由以知识为基础的专家系统(knowledge-based expert system)而来,此种系统应用计算机中储存的人类知识,解决一般需要用到专家才能处理的问题,它能模仿人类专家解决特定问题时的推理过程,因而可供非专家们用来增进问题解决的能力,同时专家们也可把它视为具备专业知识的助理。
由于在人类社会中,专家资源确实相当稀少,有了专家系统,则可使此珍贵的专家知识获得普遍的应用。
专家系统技术广泛应用在工程、科学、医药、军事、商业等方面,而且成果相当丰硕,甚至在某些应用领域,还超过人类专家的智能与判断。
其功能应用领域概括有:解释(Interpretation)-如测试肺部测试(如PUFF)、预测(Prediction)-如预测可能由黑蛾所造成的玉米损失(如PLAN)、 诊断(Diagnosis)-如诊断血液中细菌的感染(MYCIN)。
又如诊断汽车柴油引擎故障原因之CATS系统、故障排除(Fault Isolation)-如电话故障排除系统ACE、设计(Design)-如专门设计小型马达弹簧与碳刷之专家系统MOTOR BRUSH DESIGNER、规划(Planning)-就出名的有辅助规划IBM计算机主架构之布置,重安装与重安排之专家系统CSS,以及辅助财物管理之Plan Power专家系统、 监督(Monitoring)-如监督IBM MVS操作系统之YES/MVS、除错(Debugging)-如侦查学生减法算术错误原因之BUGGY、修理(Repair)-如修理原油储油槽之专家系统SECOFOR、行程安排(Scheduling)-如制造与运输行称安排之专家系统ISA。
又如,工作站(work shop)制造步骤安排系统、教学(Instruction)-如教导使用者学习操作系统之TVC专家系统、控制(Control)帮助Digital Corporation计算机制造及分配之控制系统PTRANS、分析(Analysis)-如分析油井储存量之专家系统DIPMETER及分析有机分子可能结构之DENDRAL系统。
它是最早的专家系统,也是最成功者之一、维护(Maintenance)如分析电话交换机故障原因之后,能建议人类该如何维修之专家系统COMPASS、架构设计(Configuration)如设计VAX计算机架构之专家系统XCON以及设计新电梯架构之专家系统VT等、校准(Targeting)-例如校准武器准心之专家系统BATTLE。
二、模糊方法(Fuzzy Method)模糊方法是一种基于模糊数学理论的新型控制方法。
模糊控制中的模糊量描述是以模糊集合为基础的,模糊控制的核心在于模糊控制器。
模糊控制器在模糊控制中起十分关键的作用。
实施模糊控制要经过3 个过程,即:将输入的机器、精确量经输入隶属函数映射成模糊输入变量(模糊化) ;用模糊规则对模糊输入变量推理,并得到模糊控制变量(模糊推理) ;用输入隶属函数将模糊控制变量转换成能进行实际控制的精确控制量。
与一般数字逻辑的“0”和“1”不同!模糊逻辑并不是非零即一,它表示了程度的概念。
比如说一个人是否秃顶,用数字的概念就需要一个确定的数字,如5万根头发以上不是秃顶,少于5万根就是秃顶。
这样的逻辑在现实生活中是明显不合理的,多一根或少一根的误差太大,而模糊逻辑就可以更准确的表达出秃顶的程度,它可以从零到1按接近程度连续变化,比如有4万根头发,我们可以说是80%(或0.8)的秃顶。
如此也可以准确表示人体发烧的程度,38度属于高烧的程度为0.7等等,自己确定模糊集的范围。
模糊控制的输出量是唯一的,也就是说它给执行机构是一个确定的信号。
在模糊控制器的设计过程中,一般是先将一个精确的输入量模糊化。
使每一个输入量都对于一个模糊集合。
然后又专家经验制订模糊控制规则,并进行模糊推理。
控制规则使模糊控制器的核心所在。
最后,要将模糊控制的输出进行清晰化处理,使输出量唯一。
这是因为输入量开始时对应了一个模糊集合。
经过模糊推理,必然得到一个模糊的输出量集合。
但是一个执行机构的控制是唯一的,不能模棱两可。
所以,要根据一定的计算方法得出一个唯一的输出量,传递给执行机构。
进行各项调节。
运用模糊逻辑可以简便的输入几个参数,用模糊逻辑设计一个表格查出合理的输出值,比数字式PID或者建立数学模型要简单有效的多,但是缺点是输出值是否正确不能事先验证。
该控制器的设计是基于模糊控制理论。
传统的控制理论需要建立反应相关对象实质的数学模型,但是在很多工程中(如人工智能,生物学等)要进行精确的数学建模是很困难的。
所以在实际控制过程中,通常采取模糊技术。
模糊数学由美国控制论专家L.A.扎德(L.A.Zadeh,1921--)教授所创立。
他于1965年发表了题为《模糊集合论》(《Fuzzy Sets》)的论文,从而宣告模糊数学的诞生。
L.A.扎德教授多年来致力于“计算机”与“大系统”的矛盾研究,集中思考了计算机为什么不能象人脑那样进行灵活的思维与判断问题。
尽管计算机记忆超人,计算神速,然而当其面对外延不分明的模糊状态时,却“一筹莫展”。
可是,人脑的思维,在其感知、辨识、推理、决策以及抽象的过程中,对于接受、贮存、处理模糊信息却完全可能。
计算机为什么不能象人脑思维那样处理模糊信息呢?其原因在于传统的数学,例如康托尔集合论(Cantor′s Set),不能描述“亦此亦彼”现象。
集合是描述人脑思维对整体性客观事物的识别和分类的数学方法。
康托尔集合论要求其分类必须遵从形式逻辑的排中律,论域(即所考虑的对象的全体)中的任一元素要么属于集合A,要么不属于集合A,两者必居其一,且仅居其一。
这样,康托尔集合就只能描述外延分明的“分明概念”,只能表现“非此即彼”,而对于外延不分明的“模糊概念”则不能反映。
这就是目前计算机不能象人脑思维那样灵活、敏捷地处理模糊信息的重要原因。
为克服这一障碍,L.A.扎德教授提出了“模糊集合论”。
在此基础上,现在已形成一个模糊数学体系。
言下之意,模糊数学控制模块要比单片机好。
模糊方法已初步应用于模糊控制、模糊识别、模糊聚类分析、模糊决策、模糊评判、系统理论、信息检索、医学、生物学等各个方面。
在气象、结构力学、控制、心理学等方面已有具体的研究成果。
它的应用还包括: 开关感应电动机模糊滑动模位置控制,导弹末端制导的模糊逻辑PID控制器等。
三、遗传算法(Genetic Algorithm)1, 遗传算法定义遗传算法(Genetic Algorithm)是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法,它是有美国Michigan大学J.Holland教授于1975年首先提出来的,并出版了颇有影响的专著《Adaptation in Natural and Artificial Systems》,GA这个名称才逐渐为人所知,J.Hilland教授所提出的GA通常为简单遗传算法(SGA)。