人工智能小型专家系统的设计与实现解读
人工智能专家系统

人工智能专家系统人工智能(Artificial Intelligence,简称AI)专家系统是一种基于计算机技术和人类专家经验的智能化系统。
它能够模拟和实现人类专家在特定领域的问题解决能力,可以用于辅助决策、问题诊断和解决方案推荐等方面。
本文将从专家系统的定义、原理、组成和应用等四个方面进行论述。
一、专家系统的定义专家系统是一种基于知识工程的人工智能系统,它通过模拟和利用领域专家的经验和知识来解决特定领域的问题。
专家系统主要由知识库、推理机和用户界面三部分组成。
知识库存储了经验和知识,推理机则对知识进行推理和运算,用户界面则提供了用户与系统进行交互的接口。
二、专家系统的原理专家系统的原理可以概括为知识获取、知识表示、知识推理和知识应用四个步骤。
知识获取是指将专家的经验和知识进行提取和整理,并存储到系统的知识库中;知识表示是指将知识以适当的形式进行表达和组织,以便系统能够理解和推理;知识推理是指根据系统中的知识,通过推理机对问题进行分析和推理;知识应用是指将推理得到的结果转化为实际解决方案,供用户使用。
三、专家系统的组成专家系统主要由知识库、推理机和用户界面三部分组成。
知识库是专家系统存储知识和经验的地方,常见的形式包括规则库、案例库和模型库等。
推理机是专家系统进行推理和运算的核心组件,它能够根据知识库中的知识进行逻辑推理和问题求解。
用户界面则提供了用户与系统进行交互的接口,使用户能够方便地向系统提供问题并获取解决方案。
四、专家系统的应用专家系统在各个领域都有广泛的应用。
在医疗领域,专家系统可以用于辅助疾病诊断和治疗方案选择;在金融领域,专家系统可以用于风险评估和投资决策;在工业领域,专家系统可以用于故障诊断和维修指导。
此外,专家系统还可以应用于法律、教育、交通等领域,为人们提供更加智能化和便捷化的服务。
综上所述,人工智能专家系统是一种基于计算机技术和人类专家经验的智能化系统。
它能够模拟和实现人类专家在特定领域的问题解决能力,具有广泛的应用前景。
人工智能小型专家系统的设计与实现

人工智能技术基础实验报告指导老师:朱力任课教师:张勇实验三小型专家系统设计与实现一、实验目的(1)增加学生对人工智能课程的兴趣;(2)使学生进一步理解并掌握人工智能prolog语言;(3)使学生加强对专家系统课程内容的理解和掌握,并培养学生综合运用所学知识开发智能系统的初步能力。
二、实验要求(1)用产生式规则作为知识表示,用产生系统实现该专家系统。
(2)可使用本实验指导书中给出的示例程序,此时只需理解该程序,并增加自己感兴趣的修改即可;也可以参考该程序,然后用PROLOG语言或其他语言另行编写。
(3)程序运行时,应能在屏幕上显示程序运行结果。
三、实验环境在Turbo PROLOG或Visual Prolog集成环境下调试运行简单的PROLOG程序。
四、实验内容建造一个小型专家系统(如分类、诊断、预测等类型),具体应用领域由学生自选,具体系统名称由学生自定。
五、实验步骤1、专家系统:1.1建造一个完整的专家系统设计需完成的内容:1.用户界面:可采用菜单方式或问答方式。
2.知识库(规则库):存放产生式规则,库中的规则可以增删。
3.数据库:用来存放用户回答的问题、已知事实、推理得到的中间事实。
4.推理机:如何运用知识库中的规则进行问题的推理控制,建议用正向推理。
5.知识库中的规则可以随意增减。
1.2推理策略推理策略包括:正向(数据驱动),反向(目标驱动),双向2、动物分类实验规则集(1)若某动物有奶,则它是哺乳动物。
(2)若某动物有毛发,则它是哺乳动物。
(3)若某动物有羽毛,则它是鸟。
(4)若某动物会飞且生蛋,则它是鸟。
(5)若某动物是哺乳动物且有爪且有犬齿且目盯前方,则它是食肉动物。
(6)若某动物是哺乳动物且吃肉,则它是食肉动物。
(7)若某动物是哺乳动物且有蹄,则它是有蹄动物。
(8)若某动物是有蹄动物且反刍食物,则它是偶蹄动物。
(9)若某动物是食肉动物且黄褐色且有黑色条纹,则它是老虎。
(10)若某动物是食肉动物且黄褐色且有黑色斑点,则它是猎豹。
人工智能助手系统设计与实现

人工智能助手系统设计与实现人工智能(Artificial Intelligence,简称AI)作为当今科技领域的热点之一,正逐渐渗透到我们日常生活的方方面面。
人工智能助手系统是基于人工智能技术开发的一种具备智能对话、语音识别、图像识别等功能的虚拟助手。
本文将从系统需求分析、设计和实现三个方面,详细探讨人工智能助手系统的设计与实现。
一、系统需求分析人工智能助手系统的设计与实现前,首先需要进行系统需求分析。
针对不同应用场景,人工智能助手系统的需求会有所不同。
1. 智能对话能力:人工智能助手系统应具备智能对话能力,能够理解用户的自然语言输入,并作出准确的回复。
它需要借助自然语言处理(Natural Language Processing,简称NLP)技术,对用户输入的文本进行分析和理解,以便提供有用的反馈。
2. 语音识别与合成:人工智能助手系统应支持语音识别与合成功能,使用户能够通过语音与系统进行交互。
语音识别技术可以将用户的语音输入转化为文本,而语音合成技术则可以将系统的回复转化为语音输出,提供更加便捷的交互方式。
3. 图像识别与分析:人工智能助手系统还可以支持图像识别与分析功能,使用户能够通过拍摄照片或上传图片进行交互。
它需要借助计算机视觉技术,对图片中的对象进行识别和分析,并根据用户的需求提供相应的反馈。
二、系统设计在进行系统设计时,需要考虑系统的架构设计、核心功能模块设计以及用户界面设计。
1. 架构设计:人工智能助手系统的架构设计应采用分层结构,将不同的功能模块进行解耦,提高系统的可维护性和可扩展性。
常见的架构设计模式包括面向对象(Object-Oriented)和面向服务(Service-Oriented)等。
2. 核心功能模块设计:人工智能助手系统的核心功能模块包括智能对话模块、语音识别与合成模块以及图像识别与分析模块。
其中,智能对话模块可以使用自然语言处理技术实现,语音识别与合成模块可以使用语音识别和语音合成技术实现,图像识别与分析模块可以使用计算机视觉技术实现。
专家系统的基本原理和基于CLIPS的专家系统设计与实现

接口是自然语言, 已有人宣布自然语言是最终的 人机对话类型。尽管在自然语言接口的实现上还 有许多困难, 一些具有受限的自然语言接口的专 家系统已经出现。
2 CLIPS的基本组成和推理原理
CL IPS的核心由事实库 (工作存储器 ) 、规则 库、推理机三大部分组成, 采用产生式规则作为 基本的知识表示方式 [ 2] 。 2 1 CLIPS的数据类型
3 用 CLIPS编程实现基于规则的专家系统
CL IPS专家系统开发工具已经完整地实现了 专家系统所需要的开发环境和功能, 但是, 它的 界面是类似 DOS的操作界面, 因此, 开发专家系 统的常用方法是: 运用现在流行的可视化的应用 程序开发工具 来开 发专 家系统 的操 作界 面; 用 CL IPS专家系统开发工具来实现专家系统的内部 推理机制 [ 3] 。现以 V B+ CL IPSA ctiveX O CX 为例, 简要介绍一种基于规则的专家系统的设计开发方 法, 供读者参考。
K ey w ord s: expert systm; CL IPS; reasoning
人工智能作为一门正在发展的综合性边缘学 科, 50多年来, 理论研究和实际应用均得到迅速 的发展, 它所包括的研究领域有专家系统、模式 识别、自然语言理解、问题求解、机器人等。其 中, 专家系统是当前人工智能应用中最为成功的 一个领域。专家系统是一种大型复杂的智能计算 机程序, 被广泛 应用 于那 些非结 构化 问题 的求 解。它把专门领域中若干个人类专家的知识和思 考、解决问题的 方法 以适 当方式 储存 在计 算机 中, 使计算机能在推理机的控制下模仿人类专家 去解决问题, 在一定范围内取代专家或起专家助 手作用。
Abstract: T his paper Presents the basic concept and principle of expert system and CL IPS and discusses design and im plem entation o f an expert system using deve lopm ent too l CL IPS.
人工智能之专家系统

知识分类,专家系统又可分为精确推理型和不精确推理
型(如,模糊专家系统)。 5.按技术分类 按采用的技术分类,专家系统可分为符号推理专家 系统和神经网络专家系统。
6.按规模分类
按规模分类,可分为大型协同式专家系统和微专 家系统。 7.按结构分类 按结构分类可分为集中式和分布式,单机型和网
络型(即网上专家系统)。
神经网络ES 自动获取模块输入、组织并存储专家提供的学习实例 、选定神经网络的结构、调用神经网络的学习算法,为知 识库实现知识获取。当新的学习实例输入后,知识获取模 块通过对新实例的学习,自动获得新的网络权值分布,从 而更新了知识库。如图所示。
专家 神经网络 用户
学习示例
网络结构 知识获取
知识库
学习算法
方法就是利用屏幕窗口,通过人机对话方式实现知识 的增、删、改、 查等;另一种方法就是用全屏幕编辑 方式,让用户直接用键盘按知识描述语言的语法格式 编辑知识。
动态数据库也称全局数据库、综合数据库、工作 存储器、黑板等,它是存放初始证据事实、推理结果 和控制信息的场所,或者说它是上述各种数据构成的 集合。 4.人机界面 这里的人机界面指的是最终用户与专家系统的交 互界面。
5.解释模块
解释程序模块专门负责向用户解释专家系统的行 为和结果。
6.知识库管理系统
专家系统原理与设计
专家系统原理与设计
1.专家系统的概念
2.专家系统的结构
3.专家系统设计与实现
4.专家系统开发工具与环境
1、 专家系统的概念
1 .1什么是专家系统 亦称专家咨询系统,它是一种具有大量专门知识 与经验的智能计算机系统,通常,主要指软件系统。 它把专门领域中人类专家的知识和思考解决问题的方 法、经验和诀窍组织整理且存储在计算机中,不但能 模拟领域专家的思维过程,而且能让计算机宛如人类 专家那样智能地解决实际问题。 狭义地讲,专家系统就是人类专家智慧的拷贝,是人类 专家的某种化身。 广义地讲,专家系统也泛指那些具有“专家级”水平的 知识系统,从总体上达到专家级水平。
人工智能与专家系统实训课程学习总结基于CLIPS的专家系统设计与实现报告

人工智能与专家系统实训课程学习总结基于CLIPS的专家系统设计与实现报告人工智能与专家系统实训课程是我在大学期间参与的一门课程,通过这门课程,我深入了解了人工智能和专家系统的基本概念和原理,并利用CLIPS软件进行专家系统的设计与实现。
本报告将总结我在学习过程中的心得体会,以及基于CLIPS的专家系统设计与实现的经验和方法。
一、人工智能与专家系统实训课程学习心得体会在学习人工智能与专家系统实训课程的过程中,我意识到人工智能的重要性和广泛应用的前景。
人工智能技术已经逐渐渗透到各个领域,包括医疗、金融、交通等,为各行各业带来了巨大的变革。
专家系统作为人工智能的一种典型应用,能够模拟人类专家的知识和推理过程,为决策提供指导和支持。
在课程学习过程中,我首先了解了专家系统的基本原理和分类。
专家系统是基于专家知识和推理模型构建的系统,主要包括知识表示、推理机制和用户界面等组成部分。
了解这些基本概念和原理对于后续的专家系统设计和实现非常重要。
其次,我学习了专家系统开发工具CLIPS的使用方法。
CLIPS是一个基于规则的专家系统开发工具,它使用尺度匹配和前向链接等技术实现了专家知识的表示和推理过程。
通过学习CLIPS的使用,我能够熟练地进行专家系统的设计和实现。
最后,我参与了一个基于CLIPS的专家系统设计与实现项目。
在这个项目中,我团队根据实际需求,利用CLIPS实现了一个咨询服务的专家系统。
该系统能够根据用户的问题和条件,提供相应的咨询建议。
通过这个项目,我深入理解了专家系统的开发流程和技术要点,同时也锻炼了团队合作和沟通能力。
二、基于CLIPS的专家系统设计与实现经验和方法在基于CLIPS的专家系统设计与实现过程中,我总结了一些经验和方法,供今后的工作和学习中参考。
首先,合理分析和组织专家知识是专家系统设计的关键。
专家系统的性能和准确性很大程度上取决于所蕴含的专家知识。
在设计过程中,我们需要深入了解专业领域的知识,并根据实际场景进行分析和组织,以便在CLIPS中进行有效的表示和推理。
专家系统的意义及实现方法

专家系统的意义及实现方法一、专家系统的发展及其意义智能工程是一门关于知识的自动化处理相应用技术的计算机应用学科。
知识是指全面知识,既包含理论知识相经验知识,又包括数值模型及符号模型描述的知识。
“知识的自动化处理和应用”是指用计算机对知识进行获取、表达、集成、管理、协调及使用等。
该定义表达了智能工程的目的、内容和工作对象。
其目的是利用具有智能的计算机去解决实际问题。
专家系统是智能工程的基础,目的性偏重于应用。
专家系统(ES)是一种大型复杂的智能计算机软件,是人工智能开始走向实用化的标志和里程碑,是人工智能从一般思维规律探索定向专门知识利用的突破口.它把专门领域中若干个人类专家的知识和思考、解决问题的方法以适当方式存储在计算机中,使计算机能在推理机的控制下模仿人类专家去解决问题,在一定范围内取代专家或起专家助手作用。
自从20世纪60年代中期在美国斯坦福大学和麻省理工学院问世以来,专家系统技术迅猛发展,尤其是70年代中期以来.各种实用专家系统不断涌现,广泛应用于科学技术、工业、农业、军事、医疗、教育等众多领域,并产生了巨大的社会效益和经济效益。
1995年我国制定的九五计算机技术科技攻关规划建议把人工智能技术作为四个重点发展的关键技术之一,鼓励继续开发各种实用专家系统及其开发上具。
二、专家系统的结构专家系统的结构,是指专家系统各组成部分的构造和组织形式。
不同应用领域和不同类型的专家系统,其具体结构和功能也不尽相同。
通常一个最基本的专家系统由6个部分所组成。
(1)知识库知识库是专家系统的知识存储器,用来存放求解问题的领域知识。
通常,知识库中的知识分为两大类型:一类是领域中的事实,也即写在书本上的知识及常识;另一类是启发性知识,它是领域专家在长期工作实践中积累起来的经验总结。
(2)数据库数据库也称为全局数据库或综合数据库.用来存储有关领域问题的事实、数据、初始状态(证据)和推理过程中得到的各种中间状态及目标等。
人工智能助手的设计与实现

人工智能助手的设计与实现随着科技的飞速发展,人工智能在日常生活中的应用越来越广泛,其中最为常见的就是人工智能助手。
人工智能助手作为一种智能软件,可以与人类用户进行智能对话,提供实时帮助和服务,受到了越来越多人的青睐。
本文将结合相关技术和应用案例,探讨人工智能助手的设计与实现。
一、人工智能助手的设计思路人工智能助手的设计需要首先考虑用户的需求和使用场景,具体表现在以下三个方面:1. 针对用户的个性化需求,人工智能助手需要具备多领域的知识和技能,能够快速回答用户的问题,帮助用户完成不同的任务。
2. 针对不同的使用场景,人工智能助手需要具备智能感知和智能交互的能力,与用户进行自然语言交互,能够自动识别语音、文字等不同形式的输入,提供合适的反馈和服务。
3. 针对用户的心理需求,人工智能助手需要具备情感智能的能力,能够理解和回应用户的情绪和表达,建立与用户的情感连接,增强用户的使用体验和满意度。
基于这些设计思路,人工智能助手可以采用不同的技术实现和算法优化,提高自身的智能水平和效率。
二、人工智能助手的应用案例人工智能助手在现实生活中的应用场景非常广泛,下面列举几个常见的应用案例:1. 聊天机器人类:通过对话实现知识问答、天气信息、交通出行、饮食娱乐等不同种类的服务,如小冰、小度等。
2. 语音助手类:通过语音控制实现设备控制、信息查询等功能,如Siri、Google Now等。
3. 服务机器人类:通过自动导航、语音提示、图像识别等实现机器人服务,如机场导航机器人、酒店客服机器人等。
4. 智能家居类:通过智能家居控制中心、智能传感器等实现智能家居应用,如小米智能家居、天猫精灵等。
这些应用案例表明,人工智能助手不仅带来了便利和效率,还推动了产业的发展和创新。
三、人工智能助手的实现技术人工智能助手的实现技术包括语义分析、自然语言处理、机器学习等,下面分别介绍:1. 语义分析:语义分析是指对人类语言的意义和语境进行分析,使机器具备理解和应用人类语言的能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
人工智能技术基础实验报告指导老师:朱力任课教师:张勇实验三小型专家系统设计与实现一、实验目的(1)增加学生对人工智能课程的兴趣;(2)使学生进一步理解并掌握人工智能prolog语言;(3)使学生加强对专家系统课程内容的理解和掌握,并培养学生综合运用所学知识开发智能系统的初步能力。
二、实验要求(1)用产生式规则作为知识表示,用产生系统实现该专家系统。
(2)可使用本实验指导书中给出的示例程序,此时只需理解该程序,并增加自己感兴趣的修改即可;也可以参考该程序,然后用PROLOG语言或其他语言另行编写。
(3)程序运行时,应能在屏幕上显示程序运行结果。
三、实验环境在Turbo PROLOG或Visual Prolog集成环境下调试运行简单的PROLOG程序。
四、实验内容建造一个小型专家系统(如分类、诊断、预测等类型),具体应用领域由学生自选,具体系统名称由学生自定。
五、实验步骤1、专家系统:1.1建造一个完整的专家系统设计需完成的内容:1.用户界面:可采用菜单方式或问答方式。
2.知识库(规则库):存放产生式规则,库中的规则可以增删。
3.数据库:用来存放用户回答的问题、已知事实、推理得到的中间事实。
4.推理机:如何运用知识库中的规则进行问题的推理控制,建议用正向推理。
5.知识库中的规则可以随意增减。
1.2推理策略推理策略包括:正向(数据驱动),反向(目标驱动),双向2、动物分类实验规则集(1)若某动物有奶,则它是哺乳动物。
(2)若某动物有毛发,则它是哺乳动物。
(3)若某动物有羽毛,则它是鸟。
(4)若某动物会飞且生蛋,则它是鸟。
(5)若某动物是哺乳动物且有爪且有犬齿且目盯前方,则它是食肉动物。
(6)若某动物是哺乳动物且吃肉,则它是食肉动物。
(7)若某动物是哺乳动物且有蹄,则它是有蹄动物。
(8)若某动物是有蹄动物且反刍食物,则它是偶蹄动物。
(9)若某动物是食肉动物且黄褐色且有黑色条纹,则它是老虎。
(10)若某动物是食肉动物且黄褐色且有黑色斑点,则它是猎豹。
(11)若某动物是有蹄动物且长腿且长脖子且黄褐色且有暗斑点,则它是长颈鹿。
(12)若某动物是有蹄动物且白色且有黑色条纹,则它是斑马。
(13)若某动物是鸟且不会飞且长腿且长脖子且黑白色,则它是驼鸟。
(14)若某动物是鸟且不会飞且会游泳且黑白色,则它是企鹅。
(15)若某动物是鸟且善飞且不怕风浪,则它是海燕。
3、实验具体步骤本实验用正向推理策略来完成,实现推理机的程序与知识库的具体内容无关,对知识库的修改不需要改动推理机。
1、充分理解知识库现有知识,提出待解决问题2、建立规则库3、从规则库中获取可用规则集4、确定搜索控制策略(例如:估价函数策略)5、通过搜索控制策略,从规则集中选出最优规则6、执行最优规则,更新知识库7、反复多次以上步骤8、获得解决方案或无解4、编写程序及调试运行步骤4.1程序代码“小型动物分类专家系统”/*An Animal Classifying Expert System*/databasexpositive(symbol,symbol)xnegative(symbol,symbol)predicatesrunanimal_is(symbol)it_is(symbol)positive(symbol,symbol)negative(symbol,symbol)clear_factsremember(symbol,symbol,symbol)ask(symbol,symbol)goalrun.clausesrun:-animal_is(X), !,write("\nYour animal may be a(n) ", X),nl, nl, clear_facts.run:-write("\nUnable to determine what"),write("your animal is.\n\n"), clear_facts. positive(X,Y):-xpositive(X, Y),!.positive(X,Y):-not(xnegative(X,Y)), ask(X,Y). negative(X,Y):-xnegative(X,Y), !.negative(X,Y):-not(xpositive(X,Y)), ask(X,Y). ask(X,Y):-write(X, " it ", Y, "?\n"),readln(Reply),remember(X, Y, Reply).remember(X, Y, y):-asserta(xpositive(X, Y)).remember(X, Y, n):-asserta(xnegative(X, Y)),fail.clear_facts:-retract(xpositive(_, _)),fail.clear_facts:-retract(xnegative(_, _)),fail.clear_facts:-write("\n\nPlease press the space bar to Exist"), readchar(_)./* Knowledge Base*/animal_is(cheetah):- %猎豹it_is(carnivore),positive(has,tawny_color),positive(has,black_spots).animal_is(tiger):- %老虎it_is(carnivore),positive(has, tawny_color),positive(has, black_stripes).animal_is(giraffe):- %长颈鹿it_is(ungulate),positive(has, long_neck),positive(has, long_legs),positive(has, dark_spots).animal_is(zebra):- %斑马it_is(ungulate),positive(has,black_stripes).animal_is(ostrich):- %鸵鸟it_is(bird),negative(does, fly),positive(has, long_neck),positive(has, long_legs),positive(has, black_and_white_color). animal_is(penguin):- %企鹅it_is(bird),negative(does, fly),positive(does, swim),positive(has, black_and_white_color). animal_is(albatross):- %信天翁it_is(bird),positive(does,fly_well).it_is(mammal):- %哺乳动物positive(has,hair).it_is(mammal):-positive(does,give_milk).it_is(bird):- %鸟类positive(has,feathers).it_is(bird):-positive(does,fly),positive(does,lay_eggs).it_is(carnivore):- %肉食动物positive(does,eat_meat).it_is(carnivore):-it_is(mammal),positive(has,pointed_teeth),positive(has,claws),positive(has,forward_eyes).it_is(ungulate):- %有蹄类动物it_is(mammal),positive(has,hooves).it_is(ungulate):-it_is(mammal),positive(does,chew_cud).4.2调试步骤1.在TXT文本中编写规则代码,添加到状态图通用搜索程序中,修改程序。
2.打开Turbo prolog2.0文件,启动prolog.exe应用程序,并按空格键(SPACE)进入集成开发环境。
3.选择Setup项,打开下拉菜单,选择Directories项,进行工作目录修改,按Esc键退出,选择Save Configuration项,保存修改。
4.在相应的路径所在文件件夹中会生成work.Pro文件将其用文本打开,将要运行的程序写入,保存。
5.选择Files项,选择Load项,选择要打开的示例程序6.编辑之后,可以选择Run项,执行程序,可以在Dialog窗口进行询问,并回答y/n,依次回答问题,即可找到解7.退出,选择Quit项,可以退出Turbo Prolog程序。
4.3书籍识别系统根据所给示例程序,我修改出一个简单的书籍识别系统4.3.1系统简介这是一个简单的书籍识别系统,有:唐诗三百首、鲁迅散文集、红楼梦、泰戈尔诗词、呼啸山庄。
使用我们这个系统,只需根据窗口提供的内容回答y/n,系统将会帮你选择你可能中意的书籍。
该专家系统设计书籍的特性是:中文,英文,诗集,散文,小说各种书籍特性如下:4.3.2系统程序databasexpositive(symbol,symbol)xnegative(symbol,symbol)predicatesrunbook_is(symbol)positive(symbol,symbol)negative(symbol,symbol)clear_factsremember(symbol,symbol,symbol)ask(symbol,symbol)goalrun.clausesrun:-book_is(X), !,write("\nYour favorite book may be ", X),nl, nl, clear_facts.run:-write("\nUnable to determine what"),write("your book is.\n\n"), clear_facts.positive(X,Y):-xpositive(X,Y),!.positive(X,Y):-not(xnegative(X,Y)), ask(X,Y).negative(X,Y):-xnegative(X,Y), !.negative(X,Y):-not(xpositive(X,Y)), ask(X,Y).ask(X,Y):-write("Question:- ",X, " it ", Y, "?\n"),readln(Reply),remember(X,Y, Reply).remember(X,Y, y):-asserta(xpositive(Y)).remember(X,Y, n):-asserta(xnegative(Y)),fail.clear_facts:-retract(xpositive(_, _)),fail.clear_facts:-retract(xnegative(_, _)),fail.clear_facts:-write("\n\nPlease press the space bar to Exist"), readchar(_)./* Knowledge Base*/book_is(tangShiSaibaishou):- %唐诗三百首positive(is,chinese),positive(is,poem).book_is(luxunwenji):- %鲁迅文集positive(is,chinese),positive(is, prose).book_is(hongloumeng):- %红楼梦positive(is, chinese),positive(is, novel).book_is(taigerwenji):- %泰戈尔文集positive(is, english),positive(is, poem).book_is(huxiaoshanzhaung):- %呼啸山庄positive(is, english),positive(is, novel).五、实验结果5.1动物分类实验结果图1图2图3 5.2书籍识别实验结果图4图5图6六、问题思考思考:你所实现的基于产生式的专家系统所采用的推理算法是正向推理还是反向推理?采用prolog语言编写专家系统有何优点与不足?解:(1)正向推理(2)严格来讲,该专家系统程序中并无显式的推理机,而是利用了PROLOG语言本身的推理机制实现推理的。