书签 分享 收藏 举报 版权申诉 / 53
上传文档赚钱

类型人工智能及其应用chapter4-071103课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3511691
  • 上传时间:2022-09-09
  • 格式:PPT
  • 页数:53
  • 大小:317.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《人工智能及其应用chapter4-071103课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    人工智能 及其 应用 chapter4_071103 课件
    资源描述:

    1、4.1专家系统的基本概念及其特点n 定义:定义:专家系统专家系统(Expert System)是一种智能计算机是一种智能计算机(软件软件)系统,它的智能化表现在能够模仿人类专家的思维来系统,它的智能化表现在能够模仿人类专家的思维来求解特定领域中的复杂问题。求解特定领域中的复杂问题。人工智能及其应用1专家系统的基本概念及其特点n专家系统的特点:专家系统的特点:v效率高,不受环境影响效率高,不受环境影响v可解释推理过程可解释推理过程v有自学习能力有自学习能力v擅长于解决不确定性问题擅长于解决不确定性问题 人工智能及其应用24.2 专家系统的结构基本结构流行结构理想结构人工智能及其应用3n专家系统基

    2、本结构专家系统基本结构(如下图)(如下图)知识库中存放系统求解问题所需要的知识知识库中存放系统求解问题所需要的知识;推理机负责使用知识库中的知识去解决实际问题。推理机负责使用知识库中的知识去解决实际问题。推推理理机机知知识识库库知知识识工工程程师师知知识识领领域域专专家家结结果果用用户户数数据据专家系统的基本结构人工智能及其应用4专家系统的流行结构n专家系统的流行结构:专家系统的流行结构:如下页图所示。如下页图所示。(1)知识库知识库-以某种表示形式存储在计算机内知识的集合以某种表示形式存储在计算机内知识的集合(2)推理机推理机-用于记忆所采用规则和控制策略的程序用于记忆所采用规则和控制策略的

    3、程序(3)综合数据库综合数据库-用于存放系统运行时所需要和新产生的用于存放系统运行时所需要和新产生的 所有信息所有信息(4)解释程序解释程序-回答用户提出的各种问题,并能跟踪和记回答用户提出的各种问题,并能跟踪和记录推理过程录推理过程(5)知识获取程序知识获取程序-负责管理知识库的知识负责管理知识库的知识(6)人机接口人机接口-是专家系统与专家、知识工程师、用户间是专家系统与专家、知识工程师、用户间进行交互的界面进行交互的界面人工智能及其应用5专家系统的流行结构推推理理机机知知识识获获取取程程序序解解 释释程程 序序用用户户专专家家 人人机机接接口口知知识识库库综综合合数数据据库库人工智能及其

    4、应用6专家系统的理想结构专家系统的理想专家系统的理想结构结构(1)黑板:是一个分黑板:是一个分层的全局工作区,层的全局工作区,用来存储原始数用来存储原始数据、中间结果和据、中间结果和最终结果。包括最终结果。包括计划、议程和中计划、议程和中间解三部分。间解三部分。(2)推理机:包括调推理机:包括调度器、执行器和度器、执行器和协调器三个部分协调器三个部分接接 口口事事 实实规规 则则协协调调器器调调度度器器执执行行器器中中间间解解计计划划解解释释器器用用户户 知知识识库库议议程程人工智能及其应用74.3 专家系统的设计方法适用领域开发步骤设计原则人工智能及其应用8适用领域n几乎是人类活动的所有领域

    5、,工业几乎是人类活动的所有领域,工业、农业农业、商业、商业、交通、教学等。原则上讲,凡是存在或需要专家的交通、教学等。原则上讲,凡是存在或需要专家的地方都可以建立和使用专家系统。地方都可以建立和使用专家系统。人工智能及其应用9 开发步骤初始知识库的设计包括以下初始知识库的设计包括以下5 5大步:大步:(1)问题知识化问题知识化(2)知识概念化知识概念化(3)概念形式化概念形式化(4)形式规则化形式规则化(5)规则合法化规则合法化问问题题概概念念化化结结构构化化知知识识化化形形式式化化规规则则化化重重新新阐阐述述再再设设计计改改进进人工智能及其应用10设计原则(1)首先研究一小部分假设,使用一部

    6、分结论,只取那些首先研究一小部分假设,使用一部分结论,只取那些确定可信的观察和肯定的规则。确定可信的观察和肯定的规则。(2)挑选那些最有利于区别各个假设的观测。挑选那些最有利于区别各个假设的观测。(3)在许多情况下,可以有许多方式来组合观测。在许多情况下,可以有许多方式来组合观测。(4)把并不具有很强的预测或区别能力的观测组合起来,把并不具有很强的预测或区别能力的观测组合起来,以便改善这些观测的区别能力。以便改善这些观测的区别能力。(5)建立中间假设。建立中间假设。(6)以各种事例来试验所设计的系统。以各种事例来试验所设计的系统。人工智能及其应用114.4 专家系统的评价为什么要评价专家系统

    7、评价方法 专家系统的评价内容 人工智能及其应用12为什么要评价专家系统一个专家系统在建立之后,必须经过相当长时间的运行一个专家系统在建立之后,必须经过相当长时间的运行检验,不断对知识库等部件进行改进,使系统日臻完善。检验,不断对知识库等部件进行改进,使系统日臻完善。通通过考虑下述问题,对系统不断进行评价:过考虑下述问题,对系统不断进行评价:(1)知识表达方法是否合适,或它是否需要扩展或修改。知识表达方法是否合适,或它是否需要扩展或修改。(2)系统能否进行正确的推理并提供正确的答案。系统能否进行正确的推理并提供正确的答案。(3)存入系统的知识是否与专家的知识一致。存入系统的知识是否与专家的知识一

    8、致。(4)用户和系统的相互交流是否方便。用户和系统的相互交流是否方便。(5)用户需要系统提供什么方便以及要求系统具有何种能力。用户需要系统提供什么方便以及要求系统具有何种能力。人工智能及其应用13评价方法n秩事法:秩事法:启发式地利用一组例子说明系统性能,并描述系统启发式地利用一组例子说明系统性能,并描述系统在哪些情况下工作良好。在哪些情况下工作良好。n实验法:实验法:强调用实验来评价系统处理储存在数据库中问题事强调用实验来评价系统处理储存在数据库中问题事例时的性能。例时的性能。人工智能及其应用14评价专家系统的内容v系统决定和建议的质量系统决定和建议的质量v所用推理方法的正确性所用推理方法的

    9、正确性v人机之间的对话质量人机之间的对话质量 v系统的效率系统的效率v成本效果成本效果人工智能及其应用154.5 专家系统的开发工具 程序设计语言 骨架型系统 通用型系统 支撑环境人工智能及其应用16程序设计语言nProlog语言是人工智能与专家系统领域最著名的逻辑语言是人工智能与专家系统领域最著名的逻辑程序设计语言。程序设计语言。nLISP即即List Processor,是链表处理器。,是链表处理器。人工智能及其应用17骨架型系统n骨架型系统是在一些获得成功应用的专家系统的基骨架型系统是在一些获得成功应用的专家系统的基础上,抽去具体的知识内容,保留知识表达的外壳础上,抽去具体的知识内容,保

    10、留知识表达的外壳和推理机构,增强知识获取子系统的功能而形成的和推理机构,增强知识获取子系统的功能而形成的一种专用工具。一种专用工具。n如如EMYCIN、KAS以及以及EXPERT等。等。人工智能及其应用18骨架型系统n例:例:在在EMYCIN骨架工具中,采用了逆向链深度优先骨架工具中,采用了逆向链深度优先的控制策略,提供了专门的规则语言来表示领域知识,的控制策略,提供了专门的规则语言来表示领域知识,其规则的基本形式为:其规则的基本形式为:(IF前提前提THEN行为行为ELSE行为行为)当前提为真时,该规则将前提与一个行为结合起来,当前提为真时,该规则将前提与一个行为结合起来,否则与另一个行为结

    11、合起来,并且可以用否则与另一个行为结合起来,并且可以用-1-1,1 1之之间的数字表示在该前提下行为的信度。间的数字表示在该前提下行为的信度。人工智能及其应用19 骨架型系统如一条判断细菌类别的规则被表示为:如一条判断细菌类别的规则被表示为:PREMISE:AND(SAME CNTXT SITE BLOOD)(NOTDEFINITE CNTXT IDENT)(SAME CNTXT STAIN GRAMNEG)(SAME CNTXT MORPH ROD)(SAME CNTXT BURNT)ACTION:(CONCLUDE CNTXT IDENT PSEUDOMONAS TALLY 0.4)人工智

    12、能及其应用20通用型系统v提供一种较为通用的知识表达语言。提供一种较为通用的知识表达语言。v通用专家系统开发工具通用专家系统开发工具EST的核心是专家系统设的核心是专家系统设计语言计语言ESL。vESL集过程性和描述性于一体的模块化程序设计集过程性和描述性于一体的模块化程序设计语言。语言。人工智能及其应用21支撑环境v调试辅助工具调试辅助工具 v输入输出设施输入输出设施 v解释设施解释设施 v知识库编辑器知识库编辑器 人工智能及其应用224.6 Visual Prolog4.6 Visual Prolog语言语言nVisual Prolog是是Prolog开发中心推出的基于开发中心推出的基于W

    13、indows环境环境的智能化、可视化集成开发环境;的智能化、可视化集成开发环境;n具有模式匹配、递归、回溯、对象机制、事实数据库和具有模式匹配、递归、回溯、对象机制、事实数据库和谓词库等强大功能谓词库等强大功能。人工智能及其应用23 Visual PrologVisual Prolog语言语言 基本语法规则 程序结构 搜索控制机制 数据结构 人工智能及其应用24基本语法规则vVisual Prolog是基于是基于Horn子句的谓词逻辑系统子集,子句的谓词逻辑系统子集,其程序只描述所解问题中的对象,以及对象间的某些其程序只描述所解问题中的对象,以及对象间的某些已知事实、推理规则,已知事实、推理规

    14、则,v事实事实-陈述了自然语言中对象间的已知关系,其一般陈述了自然语言中对象间的已知关系,其一般描述形式为:描述形式为:关系(变元关系(变元1 1,变元,变元2 2,变元,变元n n)。)。人工智能及其应用25基本语法规则n例:例:下表下表4-14-1给出了几个自然语言语句及其给出了几个自然语言语句及其Visual Prolog表达。表达。自然语言陈述的事实自然语言陈述的事实Visual Prolog表达的事实表达的事实比尔喜欢狗。比尔喜欢狗。likes(bill,dog).玛丽喜欢蓝色衬衫。玛丽喜欢蓝色衬衫。likes(mary,blueshirt).汤姆喜欢自行车。汤姆喜欢自行车。like

    15、s(tom,bike).人工智能及其应用26基本语法规则n关系名(又称谓词)通常用小写字符串表示。关系名(又称谓词)通常用小写字符串表示。n变元可以表现为:常量(数字、小写字符串、引号括变元可以表现为:常量(数字、小写字符串、引号括起来的字符串)、变量(以大写字母开始的字符串)。起来的字符串)、变量(以大写字母开始的字符串)。n子句以子句以“.”.”结束。结束。n变元顺序大多数情况下是无序的,但在特定应用环境变元顺序大多数情况下是无序的,但在特定应用环境中若有次序约定,则应注意保持一致中若有次序约定,则应注意保持一致。例如:bites(dog,man)./*狗咬人狗咬人*/bites(man,

    16、dog)(不合理)(不合理)人工智能及其应用27基本语法规则nVisual Prolog描述从其他信息推断新信息的语法是规则。描述从其他信息推断新信息的语法是规则。其一般描述形式为:其一般描述形式为:规则头规则头 :-:-规则体规则体.或或 关系关系(变元变元1 1,变元,变元2 2,变元,变元n)n):-:-关系关系(变元变元1 1,变元,变元p),关系关系(变元变元1 1,变元,变元q).).n例:例:“约翰喜欢汽车,如果该汽车十分有趣约翰喜欢汽车,如果该汽车十分有趣”,用,用Visual Prolog规则表示为:规则表示为:likes(john,Car):-fun(Car).人工智能及其

    17、应用28程序结构v论域段论域段(DOMAINS):):用来指定程序中谓词参数的论域,用来指定程序中谓词参数的论域,这些论域可以是事先定义的标准内部论域,也可以是自这些论域可以是事先定义的标准内部论域,也可以是自定义的特殊论域。定义的特殊论域。v谓词段谓词段(PREDICATES):):用户声明自定义谓词的部分,用户声明自定义谓词的部分,指定谓词的名称、参数以及参数的论域指定谓词的名称、参数以及参数的论域。v子句段子句段(CLAUSES):):其中放置组成程序的所有事实和其中放置组成程序的所有事实和规则,构成了规则,构成了Visual Prolog程序的知识库。程序的知识库。v目标段目标段(GO

    18、AL):):用来指定程序执行时要求解的问题。用来指定程序执行时要求解的问题。人工智能及其应用29n例:例:下面给出描述有关人员及其所使用交通工具信息下面给出描述有关人员及其所使用交通工具信息的的完整完整Visual Prolog程序程序ch4ex02.pro。/*Program ch4ex02.pro*/DOMAINSperson,object=symbolPREDICATESnondeterm drives(person,object)driver(person)sailor(person)pedestrian(person)nondeterm own(person,object)car(o

    19、bject)bicycle(object)boat(object)人工智能及其应用30CLAUSESdrives(Person,Object):-driver(Person),owns(Person,Object),car(Object)./*如果某人是司机,且该人拥有如果某人是司机,且该人拥有一件物品,该物品是汽车,则此人驾驶该物品一件物品,该物品是汽车,则此人驾驶该物品*/driver(john).driver(sarah).driver(tony).sailor(fred).pedestrian(malcolm).owns(fred,yacht).owns(john,bmw).owns(

    20、tony,raleigh).owns(sarah,raleigh).owns(tony,ford).car(bmw).car(ford).bicycle(raleigh).boat(yacht).GOALdriver(tony).执行此程序,结果为:执行此程序,结果为:YesYes人工智能及其应用31搜索控制机制vVisual Prolog Visual Prolog 目标:目标:可分为两种不同类型可分为两种不同类型验证性目标:程序执行结束时,应给出肯定回答验证性目标:程序执行结束时,应给出肯定回答“yes”或否定回答或否定回答“no”的目标;的目标;求解性目标:程序执行成功时给出变量值的目标

    21、。求解性目标:程序执行成功时给出变量值的目标。v合一:合一:与事实或规则匹配,与事实或规则匹配,下图为下图为Visual Prolog的的搜索匹配过程搜索匹配过程。进入知识库Prolog从上到下,从左到右搜索,直到完成匹配,或搜索完整个知识库人工智能及其应用32搜索控制机制n例例:(1)(1)对对ch4ex02.pro程序提出目标程序提出目标:GOAL drives(john,ford).F目标目标 drives(john,ford).与规则头与规则头drives(Person,Object)匹配,变匹配,变量量Person和和Object分别被绑定为分别被绑定为john和和ford。F这一匹

    22、配导致规则这一匹配导致规则drives右侧(即规则体)三个子目标的合取替右侧(即规则体)三个子目标的合取替换了对原始问题的求解,即问题演变成求证下述子目标的合取:换了对原始问题的求解,即问题演变成求证下述子目标的合取:driver(john),owns(john,ford),car(ford).F系统重新进入知识库顶部,从上到下、从左到右地搜索,试图匹系统重新进入知识库顶部,从上到下、从左到右地搜索,试图匹配第一个子目标,若匹配成功,配第一个子目标,若匹配成功,Visual Prolog接着对后续子目标接着对后续子目标进行匹配;进行匹配;人工智能及其应用33搜索控制机制F当所有子目标均匹配成功

    23、时(相当于原始目标成功),系统当所有子目标均匹配成功时(相当于原始目标成功),系统才会给出肯定的回答才会给出肯定的回答“yes”。若前面的某个子目标得不到满足,。若前面的某个子目标得不到满足,则不再考虑其后的子目标,系统回答则不再考虑其后的子目标,系统回答“no”。(2)对对 ch4ex02.pro程序提出目标:程序提出目标:GOAL drives(john,Car).FVisual Prolog在知识库中找到如下规则进行匹配:在知识库中找到如下规则进行匹配:drives(Person,Object):-driver(Person),owns(Person,Object),car(Object

    24、).F由于由于Person、Object、Car均是自由变量,能与其它任何参数均是自由变量,能与其它任何参数(数值或自由变量)合一,所以在目标与规则头的匹配过程(数值或自由变量)合一,所以在目标与规则头的匹配过程中,变量中,变量Person被绑定为被绑定为john,两个未绑定的变量,两个未绑定的变量Object与与Car互相匹配(亦即值共享)。互相匹配(亦即值共享)。人工智能及其应用34搜索控制机制 这样,初始目标将转变成满足下列子目标的合取:这样,初始目标将转变成满足下列子目标的合取:driver(john),owns(john,Object),car(Object).F为此,系统重新进入知

    25、识库,搜索与第一个子目标相匹配的事为此,系统重新进入知识库,搜索与第一个子目标相匹配的事实或规则,因库中存在事实实或规则,因库中存在事实driver(john).则该子目标为真;则该子目标为真;F接着系统试图满足第二个子目标:接着系统试图满足第二个子目标:owns(john,Object),同理,同理,库中存在事实库中存在事实owns(john,bmw).第二子目标得以匹配,所以子第二子目标得以匹配,所以子目标合取中所有的目标合取中所有的Object变量都将共享值变量都将共享值bmw;F系统再次进入知识库试图满足合取中的最后那个子目标:系统再次进入知识库试图满足合取中的最后那个子目标:car(

    26、Object),即,即car(bmw),只有当这个子目标满足后,),只有当这个子目标满足后,Visual Prolog才给出一个求解结果:才给出一个求解结果:Car=bmwF此后系统继续搜索,查看此后系统继续搜索,查看john是否还可能驾驶其它的车辆。是否还可能驾驶其它的车辆。人工智能及其应用35搜索控制机制v回溯:回溯:使使Visual Prolog的推理进程的推理进程回退,可以对变量值回退,可以对变量值进行其它选择,然后试图重新满足其后的目标。它遵循进行其它选择,然后试图重新满足其后的目标。它遵循以下几个基本原则:以下几个基本原则:(1)(1)目标必须按从左到右的顺序依次满足。目标必须按从

    27、左到右的顺序依次满足。(2)(2)谓词子句依据它们在程序中出现的顺序,自顶向下进行测试。谓词子句依据它们在程序中出现的顺序,自顶向下进行测试。(3)(3)当目标(或子目标)匹配规则头时,规则体就是接下来要被满当目标(或子目标)匹配规则头时,规则体就是接下来要被满足的,然后规则体将构建一系列新的将要被满足的子目标。足的,然后规则体将构建一系列新的将要被满足的子目标。(4)(4)根据上述原则可得到描述原始问题的目标树,若在目标树的每根据上述原则可得到描述原始问题的目标树,若在目标树的每一个叶结点处能找到一个匹配的事实时,原始问题就得到了解,一个叶结点处能找到一个匹配的事实时,原始问题就得到了解,即

    28、初始目标得到满足。即初始目标得到满足。人工智能及其应用36搜索控制机制例:例:运行程序运行程序ch4ex03.pro,看系统如何为目标搜索所有,看系统如何为目标搜索所有的可能解。的可能解。/Program ch4ex03.pro/DOMAINStitle,author=symbolpages=unsignedPREDICATESbook(title,pages)nondeterm written_by(author,title)long_novel(title)人工智能及其应用37搜索控制机制CLAUSESwritten_by(fleming,“DR NO”).written_by(melvi

    29、lle,“MOBY DICK”).book(“MOBY DICK”,250).book(“DR NO”,310).long_novel(Title):-written_by(_,Title),book(Title,Length),Length300.GOAL written_by(X,Y).因目标中的因目标中的X和和Y是自由变量,能与其它任何参数匹配,故目是自由变量,能与其它任何参数匹配,故目标与第一个标与第一个 written_by 子句合一,因此,子句合一,因此,X 绑定为绑定为fleming,Y绑绑定为定为“DR NO”。即:。即:X=fleming,Y=DR NO人工智能及其应用38搜

    30、索控制机制v强迫回溯:强迫回溯:标准谓词标准谓词fail可以实现强制失败,从而引起回可以实现强制失败,从而引起回溯溯。v截断:截断:Visual Prolog含有一个阻断回溯的机制,称为截断,含有一个阻断回溯的机制,称为截断,记为感叹号记为感叹号“!”,主要有两种用途。,主要有两种用途。预先知道可能永远不能给出有意义的解时,查找备选的解既浪费预先知道可能永远不能给出有意义的解时,查找备选的解既浪费时间又浪费空间。在这样的情况下使用截断,程序将占用较少内时间又浪费空间。在这样的情况下使用截断,程序将占用较少内存并且运行得更快,这种截断称为绿色截断(存并且运行得更快,这种截断称为绿色截断(gree

    31、n cutgreen cut)。)。程序逻辑需要截断来防止考虑备选子目标时,这种截断称为红色程序逻辑需要截断来防止考虑备选子目标时,这种截断称为红色截断(截断(red cutred cut)。)。人工智能及其应用39搜索控制机制v截断用法:截断用法:(1)(1)防止回溯到规则中前面几个子目标。防止回溯到规则中前面几个子目标。r1:-a,b,!,c.(2)(2)防止回溯到下一个子句。防止回溯到下一个子句。r(1):-!,a,b,c.r(2):-!,d.r(3):-!,c.r(_):-write(“This is a catch all clause.”).人工智能及其应用40搜索控制机制v实现重

    32、复过程实现重复过程:Visual Prolog中没有中没有FOR、WHILE或或REPEAT语句,到可以运用回语句,到可以运用回溯实现一种特殊的尾部递归,它将在机器语言中被编译成反复循环。溯实现一种特殊的尾部递归,它将在机器语言中被编译成反复循环。v例(例(方法一:利用谓词方法一:利用谓词“fail”fail”引起回溯,实现重复引起回溯,实现重复)下页中第一个下页中第一个print_countries子句中的子句中的fail保证在执行本子句之后,保证在执行本子句之后,系统回退并尝试第二个系统回退并尝试第二个print_countries子句。子句。而第二个而第二个print_countries

    33、子句在失败前会尝试完所有可能的子句在失败前会尝试完所有可能的X可绑可绑定值。定值。第三个第三个print_countries子句则可以保证程序正常结束。子句则可以保证程序正常结束。人工智能及其应用41/*Program ch4ex05.pro*/PREDICATESnondeterm country(symbol)print_countriesCLAUSEScountry(“England”).country(“France”).country(“Germany”).country(“Denmark”).print_countries:-write(“Some delightful place

    34、s to live are”),nl,fail.print_countries:-country(X),write(X),nl,fail.print_countries:-write(“And may be others.”),nl.人工智能及其应用42搜索控制机制v例(例(方法二:在规则体中使用方法二:在规则体中使用“递归递归”,即自己调用自,即自己调用自己,实现重复己,实现重复)求解数字求解数字N的阶乘可表述成:如果的阶乘可表述成:如果N是是1,则阶乘为,则阶乘为1;否则,求;否则,求N-1的阶乘,然后将它乘以的阶乘,然后将它乘以N。/*Program ch4ex06.pro*/PREDI

    35、CATES factorial(unsigned,real)CLAUSES factorial(1,1):-!.factorial(X,FactX):-Y=X-1,factorial(Y,FactY),FactX=X*FactY.GOAL X=3,factorial(X,FactX).人工智能及其应用43Visual Prolog 数据结构v“结构结构”数据对象数据对象v“表表”数据对象数据对象v内部事实数据库内部事实数据库 人工智能及其应用44“结构”数据结构v“结构结构”数据对象数据对象 Visual Prolog允许谓词的参数还具有参数,从而达允许谓词的参数还具有参数,从而达到把若干项信

    36、息作为一个整体进行处理的目的,用这到把若干项信息作为一个整体进行处理的目的,用这种方法构成的谓词称为种方法构成的谓词称为“结构结构”,能更贴切地反映现,能更贴切地反映现实世界中数据的关系。实世界中数据的关系。v例:例:描述某人及其胡子、眼睛颜色等特征属性的事实。描述某人及其胡子、眼睛颜色等特征属性的事实。has(name,attributes)attributes=hair(color);eyes(color);beard(color)name,color=symbol人工智能及其应用45DOMAINSattributes=hair(color);eyes(color);beard(color

    37、)name,color=symbolhas(name,attributes)PREDICATEhas(jean,hair(red).has(mary,hair(brown).has(tony,eyes(blue).has(peter,beard(black).has(tom,hair(black).has(peter,eyes(brown).GOALhas(X,Y).执行结果会是:执行结果会是:X=jean,Y=red_hair X=mary,Y=brown_hair X=tony,Y=blue_eyes 人工智能及其应用46“表”数据结构v“表表”数据对象数据对象 Visual Prolog

    38、允许允许把任意多的对象汇集在一把任意多的对象汇集在一起构成所谓的表,它和其他语言中的数组类似,但起构成所谓的表,它和其他语言中的数组类似,但在使用之前不必声明其大小。在使用之前不必声明其大小。v例:例:字符串表、数字表、空表。字符串表、数字表、空表。dog,cat,canary 1,2,7 人工智能及其应用47“表”数据结构v表的递归定义:表的递归定义:由两个部分组成:表头和表尾;表头指表中的第一个由两个部分组成:表头和表尾;表头指表中的第一个元素,表尾指包含后面所有元素的一个表。记为:元素,表尾指包含后面所有元素的一个表。记为:H|T v例:例:字符串表、数字表、空表。字符串表、数字表、空表

    39、。dog|cat,canary 1|2,7 因此有:因此有:(1 1)从表尾取第一个元素足够多次,最终将得到空表)从表尾取第一个元素足够多次,最终将得到空表 。(2 2)空表不能再分解为表头和表尾,即空表可视为递归的)空表不能再分解为表头和表尾,即空表可视为递归的终止条件。终止条件。人工智能及其应用48“表”数据对象及其应用v表的树形结构:表的树形结构:对表对表a,b,ca,b,c 和和 d d 的树形结构分解如下的树形结构分解如下acbListList ListdList(a)(b)人工智能及其应用49“表”数据对象及其应用例:表的输出例:表的输出write_ a_list():-!.wri

    40、te_a_list(H|T):-write(H),nl,write_a_list(T).例:表元素计数例:表元素计数length_of(,0):-!.length_of(_|T,L):-length_of(T,TailLength),L=TailLength+1.例:表成员判断例:表成员判断member(Name,Name|_):-!.member(Name,_|Tail):-member(Name,Tail).人工智能及其应用50“表”数据对象及其应用表的追加:表的追加:append(,L,L):-!.append(H|T,M,H|T1):-append(T,M,T1).人工智能及其应用51

    41、内部事实数据库及其应用v内部事实数据库内部事实数据库 (1)(1)内部事实数据库由若干事实组成,这些事实在运行内部事实数据库由若干事实组成,这些事实在运行期间可以由期间可以由Visual PrologVisual Prolog程序直接加入或删除。程序直接加入或删除。(2)(2)关键字关键字FACTSFACTS标志事实数据库段声明的开始,该事标志事实数据库段声明的开始,该事实段由一连串描述内部数据库的谓词声明组成。可以声实段由一连串描述内部数据库的谓词声明组成。可以声明多个内部事实数据库段。明多个内部事实数据库段。(3)(3)标准谓词标准谓词assertaasserta和和assertzasse

    42、rtz支持向事实数据库中加支持向事实数据库中加入新的事实,而入新的事实,而retractretract和和retractallretractall则支持删除已经则支持删除已经存在库中的事实。存在库中的事实。(4)(4)只能把事实(而不是规则)添加到事实数据库,且只能把事实(而不是规则)添加到事实数据库,且其中的事实不包含自由变量。其中的事实不包含自由变量。人工智能及其应用52/*Program ch4ex11.pro*/DOMAINS name,response=symbolgender=symbolFACTS user(name)male(name)female(name)PREDICATESinitializeadd_gender_fact(gender,name)find_gender(response,gender)人工智能及其应用53

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:人工智能及其应用chapter4-071103课件.ppt
    链接地址:https://www.163wenku.com/p-3511691.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库