中华人民共和国国家标准计算机软件编制规范【】

上传人:e****s 文档编号:243074379 上传时间:2024-09-15 格式:PPT 页数:60 大小:190.50KB
返回 下载 相关 举报
中华人民共和国国家标准计算机软件编制规范【】_第1页
第1页 / 共60页
中华人民共和国国家标准计算机软件编制规范【】_第2页
第2页 / 共60页
中华人民共和国国家标准计算机软件编制规范【】_第3页
第3页 / 共60页
点击查看更多>>
资源描述
,第十章 数据挖掘与Agent技术,人 工 智 能 原 理 与 应 用,欢迎使用本课件,教材简介:,名 称:人工智能原理与应用,作 者:张仰森,出版社:高等教育出版社,章 节:共十章,主讲教师: 宗春梅,当今时代,人们面临的两大问题:,“数据和信息过量,但知识贫乏的问题。,数据挖掘和知识发现DMKD技术应运而生,并成为人工智能近年来研究的热点。,异构网络和异构硬软件环境下的程序跨平台互操作问题,智能Agent与多Agent系统正在崛起为人工智能领域研究分布式计算环境下软件智能化的重要技术。,1. 网络信息时代的问题,信息过量,难以消化;,真假信息难以辨识;,信息平安难以保证;,信息形式的不一致导致难以统一处理。,缺乏挖掘数据背后隐藏的知识的手段,导致了“数据爆炸但知识贫乏的现象。,2. 解决的方法,数据库知识发现KDD:1989年第11届国际联合人工智能学 术会议上提出。,用机器学习的方法分析数据库管理系统中存储的数据,发现数据中隐藏的规那么与知识。,10.1 数据挖掘及其应用,10.1.1 数据挖掘与知识发现,3. KDD的定义,Fayyad等为KDD下了这样的定义:KDD是从数据集中识别出有效的、新颖的、潜在有用的,以及最终可理解的模式的非平凡过程。,4. KDD过程与步骤:,数据选择和预处理称为数据准备,数据挖掘,发现知识,解释评价,10.1 数据挖掘及其应用,10.1.1 数据挖掘与知识发现,1.数据挖掘的定义,从技术的角度:数据挖掘Data Mining就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。,从商业的角度:数据挖掘是一种新的商业信息处理技术,其主要特点是对商业数据库中的大量业务数据进行抽取、转换、分析和其他模型化处理,从中提取辅助商业决策的关键性数据。,简而言之:数据挖掘其实是一类深层次的数据分析方法。,10.1 数据挖掘及其应用,10.1.2 数据挖掘的概念与研究内容,2.数据挖掘与在线分析处理OLAP,数据挖掘与传统的在线分析处理的本质区别:数据挖掘是在没有明确假设的前提下去挖掘信息、发现知识。,在线分析处理OLAP:建立在一些假设之上的。用户首先建立一系列假设,然后用OLAP检索数据库来验证或推翻所提假设的正确性,最终得到自己的结论。OLAP分析过程在本质上是一个演绎推理的过程,但如果分析的变量到达几十或上百个时,再用OLAP手动分析验证这些假设将是一件非常困难和痛苦的事情。,数据挖掘:不是用于验证某个假设模型的正确性,而是在数据库中自己寻找模型。其本质是一个归纳的过程。数据挖掘所得到的信息应具有先前未知、有效和可实用三个特征。,10.1 数据挖掘及其应用,10.1.2 数据挖掘的概念与研究内容,数据挖掘和OLAP的互补性:采用数据挖掘技术得出一些信息或知识后,当要把这些信息或知识应用于决策时,也许要验证一下应用这些信息或知识所制定的决策将会给企业带来什么影响,这时或许要用到OLAP工具。,3.数据挖掘的研究内容,研究内容包括根底理论、发现算法、数据仓库、可视化技术、定性定量互换模型、知识表示方法、发现知识的维护和再利用、半结构化和非结构化数据中的知识发现以及网上数据挖掘等,10.1 数据挖掘及其应用,10.1.2 数据挖掘的概念与研究内容,4.数据挖掘的分类,根据挖掘任务分:分类或预测模型知识发现;数据总结、数据聚类、关联规那么发现;序列模式发现;依赖关系或依赖模型发现;异常和趋势发现等等。,根据挖掘对象分:关系数据库;面向对象数据库;空间数据库;时态数据库;文本数据源;多媒体数据库;异质数据库;遗产legacy数据库;万维网Web。,根据挖掘方法分:可粗分为:统计方法、机器学习方法、神经网络方法和数据库方法。,根据系统应用分:根据其系统的应用领域分类。如金融、电信、商业预测等。不同的应用领域通常要将一些特别适合该领域的算法进行集成,那些普通的、全能的数据挖掘系统可能并不适合特定领域的挖掘任务。,10.1 数据挖掘及其应用,10.1.2 数据挖掘的概念与研究内容,1.发现与预测,发现功能:数据挖掘就像在“数据山上寻找挖掘“知识金块,如果不采用强有力的工具,这些“金块就很难找到,即使找到也会花费非常高的代价,就像大海捞针。,预测功能:用一个形象的比喻,我们使用数据挖掘,不仅可以在“数据山中找到目前需要的“金矿,还可以帮助我们预测新的金矿或银矿在山的什么走向上,以使我们尽快地找到新的金矿,这种能够预测未来走势信息的功能就称为预测。,10.1 数据挖掘及其应用,10.1.3 数据挖掘的功能与作用,2.关联规那么挖掘,假设两个或多个变量的取值之间存在某种规律性,就称为关联。关联分析的目的就是找出数据库中隐藏的关联规那么或关联网。关联规那么可记为AB,A称为前提或左部LHS,B称为后续或右部RHS。利用数据挖掘的关联分析功能所发现的规那么性知识往往带有可信度。,关联规那么可信度:,数据关联支持度:该关联在数据库中出现的频率。,相关例子参见教材,10.1 数据挖掘及其应用,10.1.3 数据挖掘的功能与作用,3.数据聚类,聚类也可以称为无监督分类不需要训练集。聚类是把一组个体按照相似性归成假设干类别,即“物以类聚。使得属于同一类别的个体之间的距离尽可能的小而不同类别上的个体间的距离尽可能的大。,与分类不同,在开始聚类之前你不知道要把数据分成几组,也不知道怎么分依照哪几个变量。,10.1 数据挖掘及其应用,10.1.3 数据挖掘的功能与作用,4.概念类描述,数据可以与类或概念相关联。概念类描述就是对某类对象的内涵进行描述,并概括这类对象的有关特征。概念类描述可分为特征性描述和区别性描述,前者描述某类对象的共同特征,后者描述不同类对象之间的区别。,特征性描述通过对数据的特征化来实现。数据特征化就是对目标类数据的一般特征或特性进行汇总。通常,用户通过数据库查询来收集类的某些指定特征。在对一个类进行特征化处理或在生成一个类的特征性描述时,一般只涉及该类对象中所有对象的共性。,区别性描述那么是通过对数据的区分加以实现。数据区分是将目标类对象的一般特性与一个或多个比照类对象的一般特性进行比较。目标类和比照类由用户指定,而对应的数据通过数据库查询来检索。,10.1 数据挖掘及其应用,10.1.3 数据挖掘的功能与作用,5.数据分类,数据分类是根据分类模型按照属性值对数据集合分类。是数据挖掘的一个重要的应用,其目标是挖掘分类规那么。 分类属于有导师学习,一般需要有一个训练样本数据集作为输入。,主要的分类方法包括基于决策树的方法、统计方法、人工神经网络方法和粗糙集方法等。,6.偏差分析,数据库中的数据常有一些异常记录,从数据库中检测这些偏差很有意义。偏差包括很多潜在的知识,如分类中的反常实例、不满足规那么的特例、观测结果与模型预测值的偏差、量值随时间的变化等。偏差分析的根本方法是,寻找观测结果与参照值之间有意义的差异。,10.1 数据挖掘及其应用,10.1.3 数据挖掘的功能与作用,7.演变分析,数据演变分析描述行为随时间变化的对象的规律或趋势,并对其进行建模。演变分析也称时间序列分析,可以用变量过去的值来预测未来的值。,演变分析采用的方法一般是在连续的时间流中截取一个时间窗口一个时间段,窗口内的数据作为一个数据单元,然后让这个时间窗口在时间流上滑动,以获得建立模型所需要的训练集。,10.1 数据挖掘及其应用,10.1.3 数据挖掘的功能与作用,1.人工神经网络,人工神经网络是一种仿照生物神经网络结构而建立的非线形预测模型,是数据挖掘中比较常用的模型与算法。,使用人工神经网络时需要注意的几点事项:,神经网络很难解释,目前还没有能对神经网络做出显而易见解释的方法学。,神经网络会学习过度,在训练神经网络时一定要恰当的使用一些能严格衡量神经网络的方法,如测试集方法和交叉验证法等。,除非问题非常简单,训练一个神经网络可能需要相当长的时间才能完成。,建立神经网络需要做的数据准备工作量很大。,10.1 数据挖掘及其应用,10.1.4 数据挖掘的模型与算法,2.决策树,决策树是一种展示类似“在什么条件下会得到什么值这类规那么的方法。比方,在贷款申请中,要对申请的风险大小做出判断,以下图图10.1是为了解决这个问题而建立的一棵决策树 。,10.1 数据挖掘及其应用,10.1.4 数据挖掘的模型与算法,数据挖掘中决策树是一种经常要用到的技术,可以用于对数据进行分析,同样也可以用来对某些事情进行预测。,建立决策树的过程,即树的生长过程是不断的把数据进行分组的过程,每次分组对应一个问题,也对应着一个节点。每次分组都要求所分得的组之间的“差异最大。各种决策树算法之间的主要区别就是对这个“差异衡量方式的区别。,决策树的优点是需要的计算资源较少,而且可以很容易的处理包含很多预测变量的情况。决策树擅长处理非数值型数据。,10.1 数据挖掘及其应用,10.1.4 数据挖掘的模型与算法,3. 回归分析,回归分析是通过具有值的变量来预测其他变量的值。最简单的情况是采用最小二乘法线性回归技术。但大多数现实世界中的问题是不能用简单的线性回归技术来预测的,如商品的销售量、股票价格、产品合格率等,很难找到简单有效的方法来预测,因为要描述这些事件的变化所需的变量往往以上百计,且这些变量本身又都是非线性的。为此人们又创造了许多新的手段来试图解决这个问题,如逻辑回归、多项数回归、对数回归、泊松回归等,10.1 数据挖掘及其应用,10.1.4 数据挖掘的模型与算法,4. 遗传算法GA(Genetic Algorithm),本质上是一种不依赖具体问题的直接搜索方法。是一种基于进化理论,并采用自然选择、遗传交叉或结合及遗传变异等设计方法的优化技术。 在执行遗传算法之前,给出一群“染色体(以二进制编码串的形式表示),也即是假设解。然后,把这些假设解置于问题的“环境中,并按适者生存的原那么,从中选择出较适应环境的“染色体进行复制,再通过交叉、变异过程产生更适应环境的新一代“染色体群。这样,一代一代地进化,最后就会收敛到最适应环境的一个“染色体上,它就是问题的最优解。,10.1 数据挖掘及其应用,10.1.4 数据挖掘的模型与算法,遗传算法在模式识别、神经网络、图像处理、机器学习、工业优化控制、自适应控制、生物科学、社会科学等方面都得到应用。尽管如此,遗传算法还存在许多缺乏之处,还有大量的问题需要研究。,在变量多、取值范围大或无给定范围时,收敛速度下降,可找到最优解附近,但却无法精确确定最优解的位置,遗传算法的参数选择尚未有定量方法,对遗传算法,还需要进一步研究其数学根底理论;还需要在理论上证明它与其它优化技术的优劣及原因;还需研究硬件化的遗传算法;以及遗传算法的通用编程和形式等。,10.1 数据挖掘及其应用,10.1.4 数据挖掘的模型与算法,5. 邻近算法,邻近算法是一种将数据集合中每一个记录进行分类的方法。这种分类方式是通过查询类似的例子的情况,来判断新例子与例子是否属于同一类。尽管邻近算法存在许多变种,但其一般思路是:,首先存储全部或选择局部训练例子,再对测试例子,通过相似性函数计算它与所存储的训练例子的距离以决定类别的归属。,KNN就是一种邻近学习算法,它通过选择与测试例子最近的K个训练例子来实现。其中测试例子的类别通常是这K个例子中出现最多的类别。,有关K-NN算法的决策规那么请参见教材。在应用KNN算法时可能存在下面的一些限制:,1应该存储多少训练例子。,2相似性度量问题。,10.1 数据挖掘及其应用,10.1.4 数据挖掘的模型与算法,6.模糊逻辑,模糊逻辑使用0.00.1间的一个数值来表示某一数据在一定程度上属于某一类 。,一般情况下,在基于规那么的系统中使用模糊逻辑时,要考虑以下问题:,如何将连续的属性值转换成模糊值,也就是说,如何将连续的属性值映射到离散的分类上。,如果有多个模糊逻辑规那么时,如何选择可启用的规那么。,7.规那么推理,规那么推理是从统计意义上对数据中的“如果-那么规那么进行寻找和推导。它主要用于从数据库中挖掘所有的关联规那么,是规那么性知识发现的最有效方法。,10.1 数据挖掘及其应用,10.1.4 数据挖掘的模型与算法,1.基于神经网络的工具,由于对非线性数据的快速建模能力,基于神经网络的数据挖掘工具现在越来越流行。其开采过程根本上是将数据聚类,然后分类计算权值。,2.基于规那么和决策树的工具,基于规那么和决策树的工具通常是对数据库的数据进行挖掘,产生规那么和决策树,然后对新数据进行分析和预测。,主要优点是,规那么和决策树都是可读的。,10.1 数据挖掘及其应用,10.1.5 数据挖掘的工具,3.基于模糊逻辑的工具,基于模糊逻辑的发现方法是应用模糊逻辑进行数据查询、排序等。该工具使用模糊概念和“最近搜索技术的数据查询工具,它可以让用户指定目标,然后对数据库进行搜索,找出接近目标的所有记录,并对结果进行评估。,4.综合多方法工具,不少数据挖掘工具采用了多种挖掘方法,这类工具一般规模较大,适于大型数据库包括并行数据库等。,10.1 数据挖掘及其应用,10.1.5 数据挖掘的工具,对数据挖掘技术进行比较,需要选择一种评价标准,而标准的选择也是比较困难的,一般应根据用户的实际来确定。对数据挖掘技术通常可从以下三个方面进行评价:,商业评价,商业评价主要评价数据挖掘技术的商业价值。在评价过程中,考虑的不是学术中的速度或性能,而是商业团体所遇到的现实问题。,应用评价,应用评价主要侧重点是帮助一个特定应用选择数据挖掘算法。在特定应用中,数据挖掘算法的易用性是一重要的衡量指标。,算法评价,算法评价从算法本身来详细地说明算法的优缺点。,10.1 数据挖掘及其应用,10.1.6 数据挖掘的常用技术比较,数据挖掘的根本过程如图:,10.1 数据挖掘及其应用,10.1.7 数据挖掘的过程,数据挖掘的过程包括以下五步:,1,.,确定业务对象,清晰地定义出业务问题,认清数据挖掘的目的是数据挖掘的重要一步。,2.数据准备,(1),数据选取。根据数据挖掘的目的和任务,确定操作对象,即目标数据,它是根据用户需要从原始数据库中抽取的一组相关数据。,(2),数据预处理。数据预处理一般可能包括消除噪声或数据清洗、推导计算缺值数据、消除数据的不一致性、消除重复记录以及完成数据类型转换等。,(3) 数据变换。数据变换的主要目的是消减数据维数或降维,或要对数据作一些相应的变换。,10.1 数据挖掘及其应用,10.1.7 数据挖掘的过程,3.数据挖掘,确定数据挖掘要完成的功能。,选择使用什么样的挖掘算法。选择实现算法有两个考虑因素:,不同的数据有不同的特点,因此需要用与之相关的算法来挖掘。,用户或实际运行系统的要求。,算法确定之后,由挖掘系统对数据进行分析,实现自动挖掘。,4,.,结果的评价解释与可视化,对得到的结果进行解释,并以可视化的形式输出,以便人们能够理解 所获得知识。,5.,知识同化,知识同化就是将前面数据挖掘所得到的知识集成到业务信息系统的组织结构中去,让其在信息系统中应用并得到检验。,10.1 数据挖掘及其应用,10.1.7 数据挖掘的过程,1.研究热点,电子商务网站的数据挖掘,生物信息和,DNA,分析的数据挖掘,文本数据挖掘,面向金融数据分析的数据挖掘,10.1 数据挖掘及其应用,10.1.8 数据挖掘的研究热点与开展趋势,2.开展趋势,数据挖掘语言的标准化,可视化数据挖掘,复杂数据类型挖掘的新方法,Web挖掘,异构数据库环境,半结构化的数据结构,解决半结构化的数据源问题,可伸缩的数据挖掘方法,数据挖掘中的隐私保护与信息平安,10.1 数据挖掘及其应用,10.1.8 数据挖掘的研究热点与开展趋势,智能Agent是一种具有行为自控和群组协作能力、具有社会和领域知识、能依据心理状态信念、期望、意图自主工作的软件实体。,对Agent技术的研究将包括智能Agent、多Agent系统以及面向Agent的软件技术三个相互关联的方面。,智能Agent、多Agent系统以及面向Agent的软件技术三者的关系:,智能Agent是多Agent系统研究的根底,可以看成是多Agent系统研究中的微观层次,主要研究Agent的理论和体系结构。,有关Agent间关系的研究那么构成了多Agent系统研究的宏观层次,主要研究Agent间的协调与规划。,面向Agent的编程agent oriented programming,简称AOP技术那么为智能Agent和多Agent系统的成功应用提供了有效的手段。,10.2 Agent技术及其应用,Agent理论与技术研究最早源于分布式人工智能(DAI, Distributed Artificial Intelligence),并可追溯到1977年Hewitt提出的并发Actor模型, Actor模型可能是最早出现的智能Agent。,20世纪90年代之前,有关分布式人工智能的研究热点主要集中在解决支持分布式协同工作的“宏问题 。如智能Agent间的交互作用和通信、任务的分解和分配、协调和合作、协商解决冲突等,目的是探索由多个协作的智能Agent构建分布式问题求解系统的方法和技术。,进入20世纪90年代,人们对智能Agent的行为理论、体系结构和相互间通信语言进行深入研究,开展了一些旨在发挥个体能力的多类型智能Agent的工作。,10.2 Agent技术及其应用,10.2.1 Agent技术的形成与开展,近年来,许多知名大学和企业都开展了有关智能,Agent,技术方面的研究,各种基于智能,Agent,的多,Agent,系统如雨后春笋般地涌现出来。,尽管面向,Agent,技术作为一门设计和开发软件系统的新方法已得到了学术界和企业界的广泛关注,但尚处于研究和开发阶段,相信在不远的将来,智能,Agent,技术必能为软件开发技术带来革命性的突破。,10.2 Agent技术及其应用,10.2.1 Agent技术的形成与开展,1.Agent的定义与根本特性,Agent的相关定义,Agent是一类在特定环境下能感知环境,并能自治地运行以代表其设计者或使用者实现一系列目标的计算实体或程序。,多Agent系统是由多个Agent组成的系统,它在Agent理论的根底上重点研究Agent的互操作性以及Agent间的协商和协作等问题。,基于Agent的系统(Agent-Based system,简称ABS)是指使用了Agent思想或技术的系统。,Agent的根本特性,从广义和狭义两个角度去理解Agent的特性,也就是所谓的有关Agent的“弱定义和“强定义。,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,Agent的“弱定义,从广义的角度对Agent定义: 一个Agent不管它是软件或硬件系统的最根本的特性应当包括:反响性、自治性、社交能力和自发行为。,Agent的“强定义, 从Agent的精神状态出发,Agent除具有“弱定义的特性外, “强定义另外要求Agent还应具有拟人的特性:移动性、长寿性、老实性、善意性、合理性、推理能力、规划能力、学习和适应能力等。,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,2.Agent的体系结构,体系结构是构造Agent的方法论,其需要解决的问题是Agent由哪些模块构成,模块之间如何发生交互作用,Agent感知到的信息如何影响它的行为和内部状态,Agent又如何根据内部状态的变化去作用于环境,以及如何将这些模块用软件或硬件的方法组合起来形成一个有机的整体,真正实现智能Agent。,Agent可以定义为一个从感知序列到Agent所能发出的动作序列的映射。如果设S是Agent可注意到的感知集合,D是Agent在外部世界能完成的可能动作集合,那么Agent f可表示为:,F:SD,人工智能的任务就是设计建造Agent程序,实现从感知到动作的映射。,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,下面从建造Agent的角度出发,对单个Agent的结构进行讨论,一般情况下,单个Agent的结构可分为思考型Agent、反响型Agent和混合型Agent:,1思考型Agent (deliberative Agent),思考型又称慎思型Agent或认知型Agent,是一个显式表示的关于世界的符号模型,包括环境和智能行为的逻辑推理能力。,选择什么样的意识态度来刻画Agent是建造思考型Agent所首先要考虑的问题。不同的意识态度模型就会导致不同的Agent模型,反过来,不同的Agent模型或系统又会对意识态度有不同的认识和分类观点。,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,BDI(belief-desire-intention:信念-期望-意图)模型是目前较具代表性的思考型Agent模型,它用信念、愿望和意图这三类意识态度来描述Agent的结构。基于BDI结构的Agent模型可通过以下要素来描述:,一组关于世界的信念;,Agent当前打算到达的一组目标;,一个描述怎样到达目标和怎样改变信念的规划库;,一个描述Agent当前怎样到达它的目标和改变信念的意图结构。,BDI模型的结构图参考教材P365的图10.4。,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,在BDI模型根底上设计的典型Agent结构IRMA, 定义了四个关键的符号数据结构,分别为一个规划库和用符号表示的信念、愿望和意图。IRMA的行为规划由五个部件的联合运作来实现:,推理机用于对环境世界进行推理;,“手段目的分析机决定选用哪个规划可以用来完成该Agent的意图;,机遇分析机监视环境的变化以提供决策机遇;,过滤处理器决定Agent将要进行的动作序列是否和该Agent当前的意图一致。,思考处理器在有冲突的规划和可选择动作序列中做出必要的选择。,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,2反响型Agent,在思考型Agent中,反映了传统符号AI的特点和种种限制,它结构僵硬,对外界变化的反响速度慢。而反响型Agent那么是依据行为主义的观点,按照“感知-动作模型来建立智能体。这样建立的Agent可以像人类一样逐步进化,在与现实世界和周围环境的交互作用中逐步学习、逐步进化,表现出智能行为来 。,反响型Agent的最有力支持者是MIT的R.Brooks。他提出一种称之为包含体系结构 (sub-sumption architecture)的思想来建造Agent的控制机制,并研制出能快速响应环境变化如避开发现的障碍物的机器人。这种结构虽然简单,但在实践中证明是非常高效的,它甚至解决了传统符号AI很难解决的问题。,教材上的图10.6给出了反响型Agent的结构。,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,3混合型Agent,为了综合思考型和反响型Agent的优点,提出了混合型Agent(hybrid Agent),试图使混合型Agent不但具有较高的智能,而且具有较强的灵活性和快速响应性。,混合结构的系统包括两局部或多局部的层次结构:,高层是一个包含符号标号表示的世界模型的认知层,它是一个思考型子系统,用传统符号AI的方式处理规划和进行决策;,低层是一个能不经复杂推理就能快速响应和处理环境中突发事件的反响层,它是一个反响型子系统,不使用任何符号表示和推理系统。,反响层通常被赋予更高的优先级,在对问题进行求解时,先由反响层进行处理,在必要时要与认知层进行交互,由认知层参与处理。,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,混合型Agent结构的一个典型实例是过程推理系统(procedural reasoning system,简称PRS),它是一个在动态环境中推理和执行任务的BDI系统。PRS也是一个“信念愿望意图BDI结构,它有一个规划库,信念、愿望和意图那么用符号表示。,信念就是一些外部世界和内部状态的事实,通常用一阶逻辑表示;,愿望那么通过“系统的行为来表示,而不是利用静态的目标状态来表示;,在规划库中包含一些局部完成的规划,叫做知识块,它类似于知识库中的规那么,每个知识块都与一个激活条件联系在一起,它可以被目标驱动的或数据驱动的方式激活,系统中当前被激活的知识块就是它的意图。,这些数据结构由一个系统解释器操纵,系统解释器负责更新信念、激活知识块和执行动作。,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,过程推理系统,PRS的结构请参见教材图10.7,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,3.Agent的行为理论,行为理论的研究旨在为设计智能Agent的行为制定形式理论,从逻辑、行为、心理、社会等角度对智能Agent的本质进行描述,为智能Agent系统的创立奠定根底。,一个完备的形式化系统通常包含相互独立的两个方面的属性:形式语言及其语义模型。,解决语法问题最常用的形式化工具是模态逻辑(包括各种时态逻辑)。,解决语义问题最常用的形式化工具那么是可能世界语义Possible World Semantics。,在利用模态逻辑描述语法时,将意识态度看成是一种模态,通过在公式中引入一些非真值功能的模态算子,从而构成模态语言;在语义的描述方面,那么用可能世界及其可达关系来解释信念、目标等意识概念的含义。,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,关于模态逻辑和可能世界语义的研究已形成一整套的相关理论,成为表示和推理智能,Agent,和多,Agent,系统的最有力的形式化工具。但目前尚不存在关于,Agent,行为的完善理论,这里所提到的各种形式化表示方法在具有各自优势的同时也存在着各种缺点。,10.2 Agent技术及其应用,10.2.2 Agent的定义与体系结构,多Agent系统有如下特点:,系统中的每个成员,Agent,仅拥有不完全的信息和问题求解能力。,不存在全局控制。,数据是分散或分布的。,计算过程是异步的、并发的或并行的。,10.2 Agent技术及其应用,10.2.3 多Agent系统,1.多Agent系统与联合负责模型,联合负责模型,旨在制定实现多Agent协调合作的要求和准那么,并给出应用该模型开发实用系统的途径。联合负责模型的建立涉及到相互信念、联合目标和联合意图等概念。,相互信念就是在多Agent环境下的公共处方,它与多Agent通信密切相关。,联合目标就是实现合作的Agent群组期望到达的公共目标,并且群组中的所有Agent均赞同以合作的方式到达该目标。,联合意图那么是在一定的共享心理状态下对于执行某个动作集的联合承诺,或者说是对联合目标的联合承诺。,10.2 Agent技术及其应用,10.2.3 多Agent系统,在联合负责模型中,联合意图定义了各个Agent合作行为的要点:各个Agent要有联合目标;必须赞同通过合作来到达联合目标;必须赞同为到达联合目标而制定的公共处方;在执行公共处方的行动过程中,不同Agent执行的动作是相互依赖的。而公共处方那么是对实现联合目标的一种保证,这就如同一个国家的政府和独立于政府的国家银行都将降低通货膨胀作为共同目标,并愿意合作到达此目标。然而除非双方协商制定达此目标的一个公共处方,否那么不可能存在有效的合作行动。公共处方是对通过联合行动到达共同目标的一个规划,它为各个Agent在联合行动中的具体活动提供指导。,10.2 Agent技术及其应用,10.2.3 多Agent系统,2.多Agent协商,多Agent协商(negotiation)是指系统中各个Agent间实现协同、协作以及实现冲突消解的一种策略。其研究通常包括三个方面的内容:协商协议、协商策略和协商处理。,协商协议的主要研究内容包括Agent通信语言(ACL)的定义、表示、处理和语义解释。,协商策略是Agent对协商协议和通信消息进行选择或决策的方法。协商策略包括一组元协商策略以及对这些元协商策略进行选择的机制或函数两局部内容,每个元协商策略都对应着一种协商协议。,协商策略根本上可以分为五类:单方让步策略、竞争型策略、协作型策略、破坏协商和拖延协商。,10.2 Agent技术及其应用,10.2.3 多Agent系统,协商处理由协商算法和系统分析两局部组成。,协商算法主要用来描述Agent在协商过程中的行为,包括通信、决策、规划和知识库操作等。,系统分析那么是用来对Agent协商的行为和性能进行分析和评价,对协商过程中的问题求解质量、算法效率以及系统的公平性和死锁等问题做出答复和响应。,综上所述,协商协议主要处理协商过程中Agent间的交互,协商策略主要涉及Agent内的决策和控制过程,而协商处理那么侧重于对单个Agent和多Agent协商社会的整体协商行为的描述和分析。,10.2 Agent技术及其应用,10.2.3 多Agent系统,3.多Agent规划,规划是连接精神状态与动作执行之间的桥梁。,有关多Agent系统中规划,目前主要从两个不同的角度进行研究:,(1)将规划看作是一种可以在世界状态间转换的抽象结构,比方,与或图就是这样一种抽象结构;,(2)将规划看作是一类复杂的Agent精神状态。,这两种方法在一定程度上都降低了经典规划中问题求解空间搜索的代价,能更有效地指导资源受限Agent的决策过程,其中第一种方法的应用更广。,10.2 Agent技术及其应用,10.2.3 多Agent系统,在应用第一种方法制定多Agent规划时,一般是将Agent的规划库定义为一个与或图结构,且每一条规划由以下四个局部构成:,(1) 规划目标。这是启动规划的条件,表该条规划要到达的目标;,(2) 规划前提。表示该规划被执行前必须满足的环境或状态条件;,(3) 规划体。这是执行规划时的程序局部,由规划序列和规划子目标组成;,(4) 规划结果。表示执行规划后对环境或状态的更新结果。,10.2 Agent技术及其应用,10.2.3 多Agent系统,1.软件开发方法,与面向对象的软件开发方法相比,面向Agent技术中的Agent是一个比对象粒度更大、智能性更高、且具有一定自主性的实体,它在很多方面与对象相似,例如封装性、继承性和多态性。因此,有人认为Agent可以被看作是一种特殊的对象,面向Agent编程AOP是面向对象编程OOP方法的一种特例, OOP的对象的内部状态被AOP规定为心智状态,例如知识、信念、能力、承诺、目标等,每一种心智状态都有其一定的含义。对象之间的消息传递被基于言语动作的通信原语所取代,例如通知、请求、承诺、拒绝等。,10.2 Agent技术及其应用,10.2.4 面向Agent的软件技术,面向Agent和面向对象程序设计的区别:在面向对象程序设计中,信息的意义根据对象的不同有所不同,而在基于Agent的程序设计中,Agent使用一种通用的语言与其它的Agent进行通信,这种语言具有与Agent无关的语义。因此,面向Agent的软件开发方法必须解决如下的一些问题:,a) 什么是适宜的Agent通信语义?,b) 如何用该语言建立Agent之间的通信?,c) 什么样的通信结构有助于Agent间的合作?,进行面向Agent的软件开发方法和开发环境、面向Agent的程序设计方法、Agent的定义或描述语言的研究与设计,是多Agent系统理论与技术成功应用的关键,也是多Agent理论研究成果的直接表达。,10.2 Agent技术及其应用,10.2.4 面向Agent的软件技术,2.面向Agent的程序设计,1993年,美国Stanford大学的Shoham教授提出了面向Agent的程序设计AOP的概念。,主要思想是利用Agent理论,对能表示Agent性质的意识态度进行研究,以便直接设计Agent和对Agent进行编程。,AOP是一种基于分布式计算的新兴程序设计风格和计算框架,具有便于描述、能嵌套表示以及超陈述性编程等优点。,研究AOP的目的就是为了在实践中更好地应用Agent技术。可以把AOP看作是OOP的一种特例。,10.2 Agent技术及其应用,10.2.4 面向Agent的软件技术,当利用AOP技术开发多Agent系统时,要考虑这样一些问题:,Agent系统的标准、Agent系统的实现以及对它的验证。,Agent系统的标准是指Agent的表示,包括Agent所应包括的意识态度、所采用的结构、Agent动作的描述、Agent从信念到动作的转化方法(如采用规划)等。一般采用带量词的多模态逻辑来实现Agent系统标准的描述,Agent系统的实现是指如何按照Agent系统标准的要求来构建Agent系统的方式或方法,一般有两种方式:,一种是直接执行逻辑语言,如Concurrent MetateM中所采用的方法;,另一种是通过编译手段将逻辑语言转化为可执行的形式,如情景自动机(situated automata)的方法。,Agent系统的验证是指验证所实现的系统是否满足标准要求,主要途径有两种:语义方法验证(模型验证);公理化方法验证(定理证明),10.2 Agent技术及其应用,10.2.4 面向Agent的软件技术,目前比较成功的AOP语言有Agent Speak(L)和April。,Agent Speak(L)是一个基于BDI逻辑的受限一阶Agent标准描述语言,它允许设计者用该语言直接描述Agent的行为(如信念、期望和意图等)和相互作用;,April是一个基于对象的并发语言,支持Agent间通信、模式匹配和符号处理等能力,适合于建造DAI和多Agent系统的应用平台。,另外一类有代表性的AOP语言是将OOP技术与AOP思想相结合而构造的混合型Agent开发语言,如DAISY,LALO(AGENT-0+KQML+C+)等。,10.2 Agent技术及其应用,10.2.4 面向Agent的软件技术,3. 基于Agent的分布计算模型,分布式对象计算的核心是要解决对象跨平台的连接和交互的问题,OMG公司的CORBA与Microsoft公司的DCOM是目前解决跨平台连接与交互的两大主流技术标准。,CORBA为分布式异构环境下各类应用系统的集成提供了良好的可供遵循的标准和技术指标,解决了跨操作系统平台、跨编程语言和网络协议的互操作性,它可以看作是软件构件间进行通信的“软总线,为客户提供对象请求代理(Object Request Broker,ORB)效劳。ORB是一种中间件,负责在对象之间建立起客户机/效劳器的关系,10.2 Agent技术及其应用,10.2.4 面向Agent的软件技术,DCOM是Microsoft将COMComponent Object Model的本地功能进行了扩展,以支持不同计算机上的对象之间可以跨网络通信。COM是OLEObject Linking and Embedding和ActiveX技术的底层根底,它定义了构件Component和客户程序之间的交互,客户程序可以直接调用构件的方法。,图10.8给出了基于Agent的分布计算模型,请参阅教材。,10.2 Agent技术及其应用,10.2.4 面向Agent的软件技术,在应用面向Agent技术进行应用系统的设计中,所面临的最主要的问题有如下几个:,缺乏良好的用户使用界面;,缺乏明确的面向Agent的应用系统设计标准和方法论。许多现有的一些Agent应用系统,都是设计者将其主观经验结合传统的面向对象程序设计技术而设计实现的,但Agent技术要想成功地走向商业化,必须具备一套完整的结构化方法;,缺乏强有力的Agent互操作和多Agent系统的开发工具,特别是在软件的可重用性方面,还有待进一步的研究。,10.2 Agent技术及其应用,10.2.5 Agent技术所面临的挑战,返回目录,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!