- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《人工智能》实验指导与报告书
常熟理工学院
《人工智能》实验指导与报告书
2016 — 2017 学年 第 1 学期
专 业 计算机科学与技术
班 级 计科142
学 号
姓 名 张磊
实验地点 N6-110
指导教师 汤力
计算机科学与工程学院
实验目录
实验1 产生式系统 2
实验2 图像分割算法 4
实验1
实验目的
1. 理解产生式系统的结构原理与实际应用。
2. 掌握产生式规则表示及规则库组建的实现方法。
3. 理解推理机的算法原理并掌握其编程实现方法。
预习内容
产生式系统 实验内容
运用所学知识,设计并编程实现一个系统
知识库与控制系统相互独立,系统完成后除了能识别已有的7种动物外,按产生式知识表示方法向知识库中添加、修改新的知识后,系统能在不修改控制系统程序的情况下仍然能正确识别。
2. 简单产生式系统的总体设计(系统组成模块及功能说明,包括人机交互模块、规则库存储及管理模块、综合数据库管理模块以及推理机制模块等)。
答:产生式系统由三部分组成,即总数据库、产生式规则和控制策略。总数据库用于存放求解过程中各种当前信息的数据结构。产生式规则中某条规则的前提与总数据库中的某些事实相匹配时,该规则就被激活,并把其结论作为新的事实存入总数据库。产生式规则是一个规则库,在本系统中为Rule.txt文本文件,用于存放于求解问题有关的某个领域知识的规则集合及其交换规则。控制策略为一个推理机构,由一组程序组成,用来控制产生式系统的运行,决定问题求解过程的推理路线,实现对问题的求解。
3. 简单产生式系统的详细设计
答:根据产生式系统的原理,该系统一般由规则库、综合数据库、控制系统三部分构成。先定义规则库结构体,里面包括Condition[6][20],result[20]和规则数Cnum,再定义综合数据库即事实库,里面包括item[20][20],和事实数Fnum,主要用到的参数就是这些。然后初始化规则库和综合数据库,编辑规则库。之后就是主程序,也就是推理机的作用:先让用户输入事实,然后与规则库中的知识从第一条开始逐条匹配,当匹配成功时,将结论插入事实库并更新事实库,再逐条匹配,依次循环..最终如果能匹配成功就显示‘该动物是..’,否则显示‘无法识别该动物’,程序结束。
4. 系统流程
5. 系统运行演示过程
实验结果(可续页)
#include stdafx.h
#includestdio.h
#includestdlib.h
#includeiostream
using namespace std;
int _tmain()
{
int rule[40];
int data[100]={17,21,22,13,3};
int n=5;
int i;
for( i=1;i32;i++)
{
rule[i]=i;
}
for(i=0;in;i++)
{
if(rule[1]==data[i])
{
data[n]=rule[2];
n++;
coutcheck1;
}
else if(rule[3]==data[i])
{
data[n]=rule[2];
n++;
coutcheck3endl;
}
else if(rule[4]==data[i])
{
data[n]=rule[5];
n++;
coutcheck4;
}
else if(rule[6]==data[i])
{
for(i=0;in;i++)
if(rule[7]==data[i])
{
data[n]=rule[5];
n++;
coutcheck6;
}
}
else if(rule[2]==data[i])
{
for(i=0;in;i++)
if(rule[8]==data[i])
{
data[n]=rule[9];
n++;
coutcheck2;
}
else if(rule[13]==da
文档评论(0)