热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

《专家系统》实验(初稿)

今天硬是被赶鸭子上架了一把,MM非要我帮她写一份《专家系统》的实验报告册。这可真的是难为我了,花了几个小时拟了初稿出来。哎~“书到用是方恨少”这句是真理!不管写得有多烂,先发上来让各路GGJJ给咱提点
今天硬是被赶鸭子上架了一把,MM非要我帮她写一份《专家系统》的实验报告册。这可真的是难为我了,花了几个小时拟了初稿出来。哎~“书到用是方恨少”这句是真理!不管写得有多烂,先发上来让各路GGJJ给咱提点意见。我对专家系统的理解还很肤浅,这次拍脑袋,真是哦……大家多帮帮忙啦~~~

《专家系统》实验

专家系统是早期人工智能的一个重要分支,它可以看作是一类具有专门知识和经验的计算机智能程序系统,一般采用人工智能中的知识表示和知识推理技术来模拟通常由领域专家才能解决的复杂问题。

应用领域:
专家系统适合于完成那些没有公认的理论和方法、数据不精确或信息不完整、人类专家短缺或专门知识十分昂贵的诊断、解释、监控、预测、规划和设计等任务。

一般来说,专家系统=知识库+推理机,因此专家系统也被称为基于知识的系统。一个专家系统必须具备三要素:
1、领域专家级知识
2、模拟专家思维
3、达到专家级的水平

按照以上介绍,将《专家系统》实验分为三部分:
1、知识库的建立
2、数据库管理系统实现
3、简单推理机设计

实验一 知识库的建立

知识库中的知识源于领域专家,它是问题求解所需要的领域知识的集合,包括基本事实、规则和其它有关信息。

步骤:
1、知识的获取
专业领域所涉及到的知识内容。
2、知识的表达
由步骤1获取的知识集合中的内容,包括定性信息和定量信息,对于定性信息必须制定相应的规则来表达知识的含义,例如:“缺素”在表达时必须进行适当的转换,最终表达为“元素含量为多少时为缺素”;对于定量信息也需要制定相应的规则来表达知识的含义,例如:“pH6.9”那么我们就可以表达为“酸性”。并不是说所有的信息都要转换,这里只针对需要转换的信息而言。因此,该步骤也是知识库建立的重点。
3、建立知识库
在数据库管理系统中建立知识库。

实验二 数据库管理功能实现

数据库管理主要包括数据库常规操作(查询、添加、修改、删除)、数据库维护、数据库备份、灾难恢复等工作。这里主要以实现常规操作为实验内容。

步骤:
1、打开可视化编程环境,这里采用Visual FoxPro
2、实现“建立数据库连接”功能
3、实现“数据库查询”功能
包括:(1)单表查询;(2)多表查询
3、实现“数据库更新”功能
包括:(1)添加;(2)修改;(3)删除

实验三 简单推理机设计

推理机是实施问题求解的核心执行机构,它是对知识进行解释的程序,根据知识的语义,对按一定策略找到的知识进行解释执行,并把结果记录到动态库的适当空间中去。

推理策略包括:
1、正向(数据驱动)
2、反向(目标驱动)
3、双向
本实验用正向推理策略来完成,实现推理机的程序与知识库的具体内容无关,对知识库的修改不需要改动推理机。

步骤:
1、充分理解知识库现有知识,提出待解决问题
2、建立规则库
3、从规则库中获取可用规则集
4、确定搜索控制策略(例如:估价函数策略)
5、通过搜索控制策略,从规则集中选出最优规则
6、执行最优规则,更新知识库
7、反复多次以上步骤
8、获得解决方案或无解


推荐阅读
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 构建基于BERT的中文NL2SQL模型:一个简明的基准
    本文探讨了将自然语言转换为SQL语句(NL2SQL)的任务,这是人工智能领域中一项非常实用的研究方向。文章介绍了笔者在公司举办的首届中文NL2SQL挑战赛中的实践,该比赛提供了金融和通用领域的表格数据,并标注了对应的自然语言与SQL语句对,旨在训练准确的NL2SQL模型。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
  • 本文详细介绍了Akka中的BackoffSupervisor机制,探讨其在处理持久化失败和Actor重启时的应用。通过具体示例,展示了如何配置和使用BackoffSupervisor以实现更细粒度的异常处理。 ... [详细]
  • 深入了解 Windows 窗体中的 SplitContainer 控件
    SplitContainer 控件是 Windows 窗体中的一种复合控件,由两个可调整大小的面板和一个可移动的拆分条组成。本文将详细介绍其功能、属性以及如何通过编程方式创建复杂的用户界面。 ... [详细]
  • 本文详细介绍了Python编程语言的学习路径,涵盖基础语法、常用组件、开发工具、数据库管理、Web服务开发、大数据分析、人工智能、爬虫开发及办公自动化等多个方向。通过系统化的学习计划,帮助初学者快速掌握Python的核心技能。 ... [详细]
  • 本文介绍如何在Linux Mint系统上搭建Rust开发环境,包括安装IntelliJ IDEA、Rust工具链及必要的插件。通过详细步骤,帮助开发者快速上手。 ... [详细]
  • 本文详细介绍了 Visual FoxPro 中 GETCOLOR() 函数的功能及其使用方法,帮助开发者更好地理解和应用该函数。 ... [详细]
author-avatar
手机用户2702932521
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有