1 / 65

第十章 数据挖掘与 Agent 技术

第十章 数据挖掘与 Agent 技术. 第十章 数据挖掘与 Agent 技术. 10.1 数据挖掘及其应用 10.1.1 数据挖掘与知识发现 10.1.2 数据挖掘的概念与研究内容 10.1.3 数据挖掘的功能与作用 10.1.4 数据挖掘的模型与算法 10.1.5 数据挖掘的工具 10.1.6 数据挖掘技术的比较 10.1.7 数据挖掘的过程 10.1.8 数据挖掘的研究热点与发展趋势 10.2 Agent 技术及其应用 10.2.1 Agent 技术的形成与发展 10.2.2 Agent 的定义与体系结构

kaycee
Télécharger la présentation

第十章 数据挖掘与 Agent 技术

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第十章 数据挖掘与Agent技术

  2. 第十章 数据挖掘与Agent技术 • 10.1 数据挖掘及其应用 • 10.1.1 数据挖掘与知识发现 • 10.1.2 数据挖掘的概念与研究内容 • 10.1.3 数据挖掘的功能与作用 • 10.1.4 数据挖掘的模型与算法 • 10.1.5 数据挖掘的工具 • 10.1.6 数据挖掘技术的比较 • 10.1.7 数据挖掘的过程 • 10.1.8 数据挖掘的研究热点与发展趋势 • 10.2 Agent技术及其应用 • 10.2.1 Agent技术的形成与发展 • 10.2.2 Agent的定义与体系结构 • 10.2.3 多Agent系统

  3. 需要重点掌握的问题 • OLAP数据分析方法有何特点?它与数据挖掘的区别是什么? • 数据挖掘具有哪些功能和作用? • 数据挖掘目前面临的研究热点有哪些?谈谈你对数据挖掘研究未来的发展走势的看法? • 什么是智能主体?它应具有哪些基本特征? • 什么是主体的体系结构?单个主体通常有哪几种体系结构? • 多主体系统有何特点?何谓多主体协商与多主体规划? • 面向主体的软件开发(AOP)与面向对象的软件开发(OOP)技术有何不同?主体技术大规模应用所面临的机遇与挑战是什么?

  4. 第十章数据挖掘与Agent技术 当今时代,人们面临的两大问题: • “数据和信息过量,但知识贫乏”的问题。 • 数据挖掘和知识发现(DMKD)技术应运而生,并成为人工智能近年来研究的热点。 • 异构网络和异构硬软件环境下的程序跨平台互操作问题 • 智能Agent与多Agent系统正在崛起为人工智能领域研究分布式计算环境下软件智能化的重要技术。

  5. 10.1 数据挖掘及其应用

  6. 10.1.1 数据挖掘与知识发现 1. 网络信息时代的问题 • 信息过量,难以消化; • 真假信息难以辨识; • 信息安全难以保证; • 信息形式的不一致导致难以统一处理。 • 缺乏挖掘数据背后隐藏的知识的手段,导致了“数据爆炸但知识贫乏”的现象。 2. 解决的办法 • 数据库知识发现(KDD):1989年第11届国际联合人工智能学 术会议上提出。 • 用机器学习的方法分析数据库管理系统中存储的数据,发现数据中隐藏的规则与知识。

  7. 10.1.1 数据挖掘与知识发现 3. KDD的定义 Fayyad等为KDD下了这样的定义:KDD是从数据集中识别出有效的、新颖的、潜在有用的,以及最终可理解的模式的非平凡过程。 4. KDD过程与步骤: • 数据选择和预处理(称为数据准备) • 数据挖掘 • 发现知识 • 解释评价

  8. 10.1.2 数据挖掘的概念与研究内容 1.数据挖掘的定义 • 从技术的角度:数据挖掘(Data Mining)就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。 • 从商业的角度:数据挖掘是一种新的商业信息处理技术,其主要特点是对商业数据库中的大量业务数据进行抽取、转换、分析和其他模型化处理,从中提取辅助商业决策的关键性数据。 • 简而言之:数据挖掘其实是一类深层次的数据分析方法。

  9. 10.1.2 数据挖掘的概念与研究内容 2.数据挖掘与在线分析处理(OLAP) • 数据挖掘与传统的在线分析处理的本质区别:数据挖掘是在没有明确假设的前提下去挖掘信息、发现知识。 • 在线分析处理(OLAP):建立在一些假设之上的。用户首先建立一系列假设,然后用OLAP检索数据库来验证或推翻所提假设的正确性,最终得到自己的结论。OLAP分析过程在本质上是一个演绎推理的过程,但如果分析的变量达到几十或上百个时,再用OLAP手动分析验证这些假设将是一件非常困难和痛苦的事情。 • 数据挖掘:不是用于验证某个假设模型的正确性,而是在数据库中自己寻找模型。其本质是一个归纳的过程。数据挖掘所得到的信息应具有先前未知、有效和可实用三个特征。

  10. 10.1.2 数据挖掘的概念与研究内容 • 数据挖掘和OLAP的互补性:采用数据挖掘技术得出一些信息或知识后,当要把这些信息或知识应用于决策时,也许要验证一下应用这些信息或知识所制定的决策将会给企业带来什么影响,这时或许要用到OLAP工具。 3.数据挖掘的研究内容 • 研究内容包括基础理论、发现算法、数据仓库、可视化技术、定性定量互换模型、知识表示方法、发现知识的维护和再利用、半结构化和非结构化数据中的知识发现以及网上数据挖掘等

  11. 10.1.2 数据挖掘的概念与研究内容 4.数据挖掘的分类 • 根据挖掘任务分:分类或预测模型知识发现;数据总结、数据聚类、关联规则发现;序列模式发现;依赖关系或依赖模型发现;异常和趋势发现等等。 • 根据挖掘对象分:关系数据库;面向对象数据库;空间数据库;时态数据库;文本数据源;多媒体数据库;异质数据库;遗产(legacy)数据库;万维网(Web)。 • 根据挖掘方法分:可粗分为:统计方法、机器学习方法、神经网络方法和数据库方法。 • 根据系统应用分:根据其系统的应用领域分类。如金融、电信、商业预测等。不同的应用领域通常要将一些特别适合该领域的算法进行集成,那些普通的、全能的数据挖掘系统可能并不适合特定领域的挖掘任务。

  12. 10.1.3 数据挖掘的功能与作用 1.发现与预测 • 发现功能:数据挖掘就像在“数据山”上寻找挖掘“知识金块”,如果不采用强有力的工具,这些“金块”就很难找到,即使找到也会花费非常高的代价,就像大海捞针。 • 预测功能:用一个形象的比喻,我们使用数据挖掘,不仅可以在“数据山”中找到目前需要的“金矿”,还可以帮助我们预测新的金矿或银矿在山的什么走向上,以使我们尽快地找到新的金矿,这种能够预测未来走势信息的功能就称为预测。

  13. 10.1.3 数据挖掘的功能与作用 2.关联规则挖掘 • 若两个或多个变量的取值之间存在某种规律性,就称为关联。关联分析的目的就是找出数据库中隐藏的关联规则或关联网。关联规则可记为AB,A称为前提或左部(LHS),B称为后续或右部(RHS)。利用数据挖掘的关联分析功能所发现的规则性知识往往带有可信度。 • 关联规则可信度: • 数据关联支持度:该关联在数据库中出现的频率。 相关例子参见教材

  14. 10.1.3 数据挖掘的功能与作用 3.数据聚类 • 聚类也可以称为无监督分类(不需要训练集)。聚类是把一组个体按照相似性归成若干类别,即“物以类聚”。使得属于同一类别的个体之间的距离尽可能的小而不同类别上的个体间的距离尽可能的大。 • 与分类不同,在开始聚类之前你不知道要把数据分成几组,也不知道怎么分(依照哪几个变量)。

  15. 10.1.3 数据挖掘的功能与作用 4.概念/类描述 • 数据可以与类或概念相关联。概念/类描述就是对某类对象的内涵进行描述,并概括这类对象的有关特征。概念/类描述可分为特征性描述和区别性描述,前者描述某类对象的共同特征,后者描述不同类对象之间的区别。 • 特征性描述通过对数据的特征化来实现。数据特征化就是对目标类数据的一般特征或特性进行汇总。通常,用户通过数据库查询来收集类的某些指定特征。在对一个类进行特征化处理或在生成一个类的特征性描述时,一般只涉及该类对象中所有对象的共性。 • 区别性描述则是通过对数据的区分加以实现。数据区分是将目标类对象的一般特性与一个或多个对比类对象的一般特性进行比较。目标类和对比类由用户指定,而对应的数据通过数据库查询来检索。

  16. 10.1.3 数据挖掘的功能与作用 5.数据分类 • 数据分类是根据分类模型按照属性值对数据集合分类。是数据挖掘的一个重要的应用,其目标是挖掘分类规则。 分类属于有导师学习,一般需要有一个训练样本数据集作为输入。 • 主要的分类方法包括基于决策树的方法、统计方法、人工神经网络方法和粗糙集方法等。 6.偏差分析 • 数据库中的数据常有一些异常记录,从数据库中检测这些偏差很有意义。偏差包括很多潜在的知识,如分类中的反常实例、不满足规则的特例、观测结果与模型预测值的偏差、量值随时间的变化等。偏差分析的基本方法是,寻找观测结果与参照值之间有意义的差别。

  17. 10.1.3 数据挖掘的功能与作用 7.演变分析 • 数据演变分析描述行为随时间变化的对象的规律或趋势,并对其进行建模。演变分析也称时间序列分析,可以用变量过去的值来预测未来的值。 • 演变分析采用的方法一般是在连续的时间流中截取一个时间窗口(一个时间段),窗口内的数据作为一个数据单元,然后让这个时间窗口在时间流上滑动,以获得建立模型所需要的训练集。

  18. 10.1.4 数据挖掘的模型与算法 1.人工神经网络 • 人工神经网络是一种仿照生物神经网络结构而建立的非线形预测模型,是数据挖掘中比较常用的模型与算法。 • 使用人工神经网络时需要注意的几点事项: • 神经网络很难解释,目前还没有能对神经网络做出显而易见解释的方法学。 • 神经网络会学习过度,在训练神经网络时一定要恰当的使用一些能严格衡量神经网络的方法,如测试集方法和交叉验证法等。 • 除非问题非常简单,训练一个神经网络可能需要相当长的时间才能完成。 • 建立神经网络需要做的数据准备工作量很大。

  19. 10.1.4 数据挖掘的模型与算法 2.决策树 • 决策树是一种展示类似“在什么条件下会得到什么值”这类规则的方法。比如,在贷款申请中,要对申请的风险大小做出判断,下图(图10.1)是为了解决这个问题而建立的一棵决策树 。

  20. 10.1.4 数据挖掘的模型与算法 • 数据挖掘中决策树是一种经常要用到的技术,可以用于对数据进行分析,同样也可以用来对某些事情进行预测。 • 建立决策树的过程,即树的生长过程是不断的把数据进行分组的过程,每次分组对应一个问题,也对应着一个节点。每次分组都要求所分得的组之间的“差异”最大。各种决策树算法之间的主要区别就是对这个“差异”衡量方式的区别。 • 决策树的优点是需要的计算资源较少,而且可以很容易的处理包含很多预测变量的情况。决策树擅长处理非数值型数据。

  21. 10.1.4 数据挖掘的模型与算法 3. 回归分析 • 回归分析是通过具有已知值的变量来预测其他变量的值。最简单的情况是采用最小二乘法线性回归技术。但大多数现实世界中的问题是不能用简单的线性回归技术来预测的,如商品的销售量、股票价格、产品合格率等,很难找到简单有效的方法来预测,因为要描述这些事件的变化所需的变量往往以上百计,且这些变量本身又都是非线性的。为此人们又发明了许多新的手段来试图解决这个问题,如逻辑回归、多项数回归、对数回归、泊松回归等

  22. 10.1.4 数据挖掘的模型与算法 4. 遗传算法GA(Genetic Algorithm) • 本质上是一种不依赖具体问题的直接搜索方法。是一种基于进化理论,并采用自然选择、遗传交叉(或结合)及遗传变异等设计方法的优化技术。在执行遗传算法之前,给出一群“染色体”(以二进制编码串的形式表示),也即是假设解。然后,把这些假设解置于问题的“环境”中,并按适者生存的原则,从中选择出较适应环境的“染色体”进行复制,再通过交叉、变异过程产生更适应环境的新一代“染色体”群。这样,一代一代地进化,最后就会收敛到最适应环境的一个“染色体”上,它就是问题的最优解。

  23. 10.1.4 数据挖掘的模型与算法 • 遗传算法在模式识别、神经网络、图像处理、机器学习、工业优化控制、自适应控制、生物科学、社会科学等方面都得到应用。尽管如此,遗传算法还存在许多不足之处,还有大量的问题需要研究。 • 在变量多、取值范围大或无给定范围时,收敛速度下降 • 可找到最优解附近,但却无法精确确定最优解的位置 • 遗传算法的参数选择尚未有定量方法 • 对遗传算法,还需要进一步研究其数学基础理论;还需要在理论上证明它与其它优化技术的优劣及原因;还需研究硬件化的遗传算法;以及遗传算法的通用编程和形式等。

  24. 10.1.4 数据挖掘的模型与算法 5. 邻近算法 • 邻近算法是一种将数据集合中每一个记录进行分类的方法。这种分类方式是通过查询已知类似的例子的情况,来判断新例子与已知例子是否属于同一类。尽管邻近算法存在许多变种,但其一般思路是: • 首先存储全部(或选择部分)训练例子,再对测试例子,通过相似性函数计算它与所存储的训练例子的距离以决定类别的归属。 • KNN就是一种邻近学习算法,它通过选择与测试例子最近的K个训练例子来实现。其中测试例子的类别通常是这K个例子中出现最多的类别。 有关K-NN算法的决策规则请参见教材。在应用KNN算法时可能存在下面的一些限制: (1)应该存储多少训练例子。 (2)相似性度量问题。

  25. 10.1.4 数据挖掘的模型与算法 6.模糊逻辑 • 模糊逻辑使用0~1间的一个数值来表示某一数据在一定程度上属于某一类 。 • 一般情况下,在基于规则的系统中使用模糊逻辑时,要考虑以下问题: • 如何将连续的属性值转换成模糊值,也就是说,如何将连续的属性值映射到离散的分类上。 • 如果有多个模糊逻辑规则时,如何选择可启用的规则。 7.规则推理 • 规则推理是从统计意义上对数据中的“如果-那么”规则进行寻找和推导。它主要用于从数据库中挖掘所有的关联规则,是规则性知识发现的最有效方法。

  26. 10.1.5 数据挖掘的工具 1.基于神经网络的工具 • 由于对非线性数据的快速建模能力,基于神经网络的数据挖掘工具现在越来越流行。其开采过程基本上是将数据聚类,然后分类计算权值。 2.基于规则和决策树的工具 • 基于规则和决策树的工具通常是对数据库的数据进行挖掘,产生规则和决策树,然后对新数据进行分析和预测。 • 主要优点是,规则和决策树都是可读的。

  27. 10.1.5 数据挖掘的工具 3.基于模糊逻辑的工具 • 基于模糊逻辑的发现方法是应用模糊逻辑进行数据查询、排序等。该工具使用模糊概念和“最近”搜索技术的数据查询工具,它可以让用户指定目标,然后对数据库进行搜索,找出接近目标的所有记录,并对结果进行评估。 4.综合多方法工具 • 不少数据挖掘工具采用了多种挖掘方法,这类工具一般规模较大,适于大型数据库包括并行数据库等。

  28. 10.1.6 数据挖掘的常用技术比较 • 对数据挖掘技术进行比较,需要选择一种评价标准,而标准的选择也是比较困难的,一般应根据用户的实际来确定。对数据挖掘技术通常可从以下三个方面进行评价: • 商业评价 商业评价主要评价数据挖掘技术的商业价值。在评价过程中,考虑的不是学术中的速度或性能,而是商业团体所遇到的现实问题。 • 应用评价 应用评价主要侧重点是帮助一个特定应用选择数据挖掘算法。在特定应用中,数据挖掘算法的易用性是一重要的衡量指标。 • 算法评价 算法评价从算法本身来详细地说明算法的优缺点。

  29. 10.1.7 数据挖掘的过程 数据挖掘的基本过程如图:

  30. 10.1.7 数据挖掘的过程 数据挖掘的过程包括以下五步: 1.确定业务对象 清晰地定义出业务问题,认清数据挖掘的目的是数据挖掘的重要一步。 2.数据准备 (1) 数据选取。根据数据挖掘的目的和任务,确定操作对象,即目标数据,它是根据用户需要从原始数据库中抽取的一组相关数据。 (2) 数据预处理。数据预处理一般可能包括消除噪声或数据清洗、推导计算缺值数据、消除数据的不一致性、消除重复记录以及完成数据类型转换等。 (3) 数据变换。数据变换的主要目的是消减数据维数或降维,或要对数据作一些相应的变换。

  31. 10.1.7 数据挖掘的过程 3.数据挖掘 • 确定数据挖掘要完成的功能。 • 选择使用什么样的挖掘算法。选择实现算法有两个考虑因素: • 不同的数据有不同的特点,因此需要用与之相关的算法来挖掘。 • 用户或实际运行系统的要求。 • 算法确定之后,由挖掘系统对数据进行分析,实现自动挖掘。 4.结果的评价解释与可视化 对得到的结果进行解释,并以可视化的形式输出,以便人们能够理解 所获得知识。 5.知识同化 • 知识同化就是将前面数据挖掘所得到的知识集成到业务信息系统的组织结构中去,让其在信息系统中应用并得到检验。

  32. 10.1.8 数据挖掘的研究热点与发展趋势 1.研究热点 • 电子商务网站的数据挖掘 • 生物信息和DNA分析的数据挖掘 • 文本数据挖掘 • 面向金融数据分析的数据挖掘

  33. 10.1.8 数据挖掘的研究热点与发展趋势 2.发展趋势 • 数据挖掘语言的标准化 • 可视化数据挖掘 • 复杂数据类型挖掘的新方法 • Web挖掘 • 异构数据库环境 • 半结构化的数据结构 • 解决半结构化的数据源问题 • 可伸缩的数据挖掘方法 • 数据挖掘中的隐私保护与信息安全

  34. 10.2 Agent技术及其应用 • 智能Agent是一种具有行为自控和群组协作能力、具有社会和领域知识、能依据心理状态(信念、期望、意图)自主工作的软件实体。 • 对Agent技术的研究将包括智能Agent、多Agent系统以及面向Agent的软件技术三个相互关联的方面。 • 智能Agent、多Agent系统以及面向Agent的软件技术三者的关系: • 智能Agent是多Agent系统研究的基础,可以看成是多Agent系统研究中的微观层次,主要研究Agent的理论和体系结构。 • 有关Agent间关系的研究则构成了多Agent系统研究的宏观层次,主要研究Agent间的协调与规划。 • 面向Agent的编程(agent oriented programming,简称AOP)技术则为智能Agent和多Agent系统的成功应用提供了有效的手段。

  35. 10.2.1 Agent技术的形成与发展 • Agent理论与技术研究最早源于分布式人工智能(DAI, Distributed Artificial Intelligence),并可追溯到1977年Hewitt提出的并发Actor模型, Actor模型可能是最早出现的智能Agent。 • 20世纪90年代之前,有关分布式人工智能的研究热点主要集中在解决支持分布式协同工作的“宏”问题 。如智能Agent间的交互作用和通信、任务的分解和分配、协调和合作、协商解决冲突等,目的是探索由多个协作的智能Agent构建分布式问题求解系统的方法和技术。 • 进入20世纪90年代,人们对智能Agent的行为理论、体系结构和相互间通信语言进行深入研究,开展了一些旨在发挥个体能力的多类型智能Agent的工作。

  36. 10.2.1 Agent技术的形成与发展 • 近年来,许多知名大学和企业都开展了有关智能Agent技术方面的研究,各种基于智能Agent的多Agent系统如雨后春笋般地涌现出来。 • 尽管面向Agent技术作为一门设计和开发软件系统的新方法已得到了学术界和企业界的广泛关注,但尚处于研究和开发阶段,相信在不远的将来,智能Agent技术必能为软件开发技术带来革命性的突破。

  37. 10.2.2 Agent的定义与体系结构 1.Agent的定义与基本特性 • Agent的相关定义 • Agent是一类在特定环境下能感知环境,并能自治地运行以代表其设计者或使用者实现一系列目标的计算实体或程序。 • 多Agent系统是由多个Agent组成的系统,它在Agent理论的基础上重点研究Agent的互操作性以及Agent间的协商和协作等问题。 • 基于Agent的系统(Agent-Based system,简称ABS)是指使用了Agent思想或技术的系统。 • Agent的基本特性 • 从广义和狭义两个角度去理解Agent的特性,也就是所谓的有关Agent的“弱定义”和“强定义”。

  38. 10.2.2 Agent的定义与体系结构 • Agent的“弱定义”,从广义的角度对Agent定义: 一个Agent(不管它是软件或硬件系统)的最基本的特性应当包括:反应性、自治性、社交能力和自发行为。 • Agent的“强定义”, 从Agent的精神状态出发,Agent除具有“弱定义”的特性外, “强定义”另外要求Agent还应具有拟人的特性:移动性、长寿性、诚实性、善意性、合理性、推理能力、规划能力、学习和适应能力等。

  39. 10.2.2 Agent的定义与体系结构 2.Agent的体系结构 体系结构是构造Agent的方法论,其需要解决的问题是Agent由哪些模块构成,模块之间如何发生交互作用,Agent感知到的信息如何影响它的行为和内部状态,Agent又如何根据内部状态的变化去作用于环境,以及如何将这些模块用软件或硬件的方法组合起来形成一个有机的整体,真正实现智能Agent。 Agent可以定义为一个从感知序列到Agent所能发出的动作序列的映射。如果设S是Agent可注意到的感知集合,D是Agent在外部世界能完成的可能动作集合,则Agent f可表示为: F:S→D 人工智能的任务就是设计建造Agent程序,实现从感知到动作的映射。

  40. 10.2.2 Agent的定义与体系结构 下面从建造Agent的角度出发,对单个Agent的结构进行讨论,一般情况下,单个Agent的结构可分为思考型Agent、反应型Agent和混合型Agent: (1)思考型Agent (deliberative Agent) 思考型又称慎思型Agent或认知型Agent,是一个显式表示的关于世界的符号模型,包括环境和智能行为的逻辑推理能力。 选择什么样的意识态度来刻画Agent是建造思考型Agent所首先要考虑的问题。不同的意识态度模型就会导致不同的Agent模型,反过来,不同的Agent模型或系统又会对意识态度有不同的认识和分类观点。

  41. 10.2.2 Agent的定义与体系结构 BDI(belief-desire-intention:信念-期望-意图)模型是目前较具代表性的思考型Agent模型,它用信念、愿望和意图这三类意识态度来描述Agent的结构。基于BDI结构的Agent模型可通过以下要素来描述: ①一组关于世界的信念; ②Agent当前打算达到的一组目标; ③一个描述怎样达到目标和怎样改变信念的规划库; ④一个描述Agent当前怎样达到它的目标和改变信念的意图结构。 BDI模型的结构图如下页。

  42. BDI模型的结构图 愿望 规 划 库 目标 信念 知识 意图结构

  43. 10.2.2 Agent的定义与体系结构 在BDI模型基础上设计的典型Agent结构IRMA, 定义了四个关键的符号数据结构,分别为一个规划库和用符号表示的信念、愿望和意图。IRMA的行为规划由五个部件的联合运作来实现: • 推理机——用于对环境世界进行推理; • “手段-目的”分析机——决定选用哪个规划可以用来完成该Agent的意图; • 机遇分析机——监视环境的变化以提供决策机遇; • 过滤处理器——决定Agent将要进行的动作序列是否和该Agent当前的意图一致。 • 思考处理器——在有冲突的规划和可选择动作序列中做出必要的选择。

  44. 10.2.2 Agent的定义与体系结构 (2)反应型Agent 在思考型Agent中,反映了传统符号AI的特点和种种限制,它结构僵硬,对外界变化的反应速度慢。而反应型Agent则是依据行为主义的观点,按照“感知-动作”模型来建立智能体。这样建立的Agent可以像人类一样逐步进化,在与现实世界和周围环境的交互作用中逐步学习、逐步进化,表现出智能行为来 。 反应型Agent的最有力支持者是MIT的R.Brooks。他提出一种称之为包含体系结构(sub-sumption architecture)的思想来建造Agent的控制机制,并研制出能快速响应环境变化(如避开发现的障碍物)的机器人。这种结构虽然简单,但在实践中证明是非常高效的,它甚至解决了传统符号AI很难解决的问题。 教材上的图10.6给出了反应型Agent的结构。

  45. 10.2.2 Agent的定义与体系结构 (3)混合型Agent 为了综合思考型和反应型Agent的优点,提出了混合型Agent(hybrid Agent),试图使混合型Agent不但具有较高的智能,而且具有较强的灵活性和快速响应性。 混合结构的系统包括两部分(或多部分)的层次结构: • 高层是一个包含符号标号表示的世界模型的认知层,它是一个思考型子系统,用传统符号AI的方式处理规划和进行决策; • 低层是一个能不经复杂推理就能快速响应和处理环境中突发事件的反应层,它是一个反应型子系统,不使用任何符号表示和推理系统。 • 反应层通常被赋予更高的优先级,在对问题进行求解时,先由反应层进行处理,在必要时要与认知层进行交互,由认知层参与处理。

  46. 10.2.2 Agent的定义与体系结构 混合型Agent结构的一个典型实例是过程推理系统(procedural reasoning system,简称PRS),它是一个在动态环境中推理和执行任务的BDI系统。PRS也是一个“信念-愿望-意图”(BDI)结构,它有一个规划库,信念、愿望和意图则用符号表示。 • 信念就是一些外部世界和内部状态的事实,通常用一阶逻辑表示; • 愿望则通过“系统的行为”来表示,而不是利用静态的目标状态来表示; • 在规划库中包含一些部分完成的规划,叫做知识块,它类似于知识库中的规则,每个知识块都与一个激活条件联系在一起,它可以被目标驱动的或数据驱动的方式激活,系统中当前被激活的知识块就是它的意图。 • 这些数据结构由一个系统解释器操纵,系统解释器负责更新信念、激活知识块和执行动作。

  47. 10.2.2 Agent的定义与体系结构 过程推理系统PRS的结构请参见教材图10.7

  48. 10.2.2 Agent的定义与体系结构 3.Agent的行为理论 行为理论的研究旨在为设计智能Agent的行为制定形式理论,从逻辑、行为、心理、社会等角度对智能Agent的本质进行描述,为智能Agent系统的创建奠定基础。 一个完备的形式化系统通常包含相互独立的两个方面的属性:形式语言及其语义模型。 • 解决语法问题最常用的形式化工具是模态逻辑(包括各种时态逻辑)。 • 解决语义问题最常用的形式化工具则是可能世界语义(Possible World Semantics)。 在利用模态逻辑描述语法时,将意识态度看成是一种模态,通过在公式中引入一些非真值功能的模态算子,从而构成模态语言;在语义的描述方面,则用可能世界及其可达关系来解释信念、目标等意识概念的含义。

  49. 10.2.2 Agent的定义与体系结构 关于模态逻辑和可能世界语义的研究已形成一整套的相关理论,成为表示和推理智能Agent和多Agent系统的最有力的形式化工具。但目前尚不存在关于Agent行为的完善理论,这里所提到的各种形式化表示方法在具有各自优势的同时也存在着各种缺点。

  50. 10.2.3 多Agent系统 多Agent系统有如下特点: • 系统中的每个成员Agent仅拥有不完全的信息和问题求解能力。 • 不存在全局控制。 • 数据是分散或分布的。 • 计算过程是异步的、并发的或并行的。

More Related