当前位置:文档之家› 人工智能实验指导书

人工智能实验指导书

人工智能实验指导书
人工智能实验指导书

人工智能及应用

前言

《人工智能及应用》课程实验的目的是为了配合课堂教学,进一步强化对人工制能的不同实现途径的理解。实验的任务是要结合相关的人工智能语言平台(PROLOG语言),熟练掌握和深入理解课堂教学内容。帮助学生更好地学习本课程,理解和掌握人工智能算法设计与实现所需的技术,为整个专业学习打好基础,要求运用所学知识,上机解决一些典型问题,通过分析、设计等各环节的训练,使学生深刻理解、牢固掌握所用到的一些原理与技术。实验中的内容和教科书的内容是密切相关的,在反复实践的过程中才能掌握。使学生在掌握抽象人工智能理论的基础之上学到更多可操作性很强的智能算法技术及实践经验。

目录

实验一 Prolog语言及逻辑程序设计 (1)

实验二搜索策略实验 (3)

实验三专家系统实验 (6)

实验一 Prolog语言及逻辑程序设计

一、实验目的

加深学生对逻辑程序运行机理的理解,使学生掌握PROLOG语言的特点、熟悉其编程环境,同时为后面的人工智能程序设计做好准备。

1、熟悉PROLOG语言编程环境的使用;

2、了解PROLOG语言中常量、变量的表示方法;

3、了解利用PROLOG进行事实库、规则库的编写方法。

二、实验环境

计算机,Visual PROLOG教学软件。

三、预习要求

实验前应阅读实验指导书,了解实验目的、预习PROLOG语言的相关知识。

四、实验内容

1、学习使用Visual PROLOG,包括进入PROLOG主程序、编辑源程序、修改环境目录、退出等基本操作。

2、在Visual prolog集成环境下调试运行简单的Visual PROLOG程序。

3、编写一个描述亲属关系的PROLOG程序,然后再给出一些事实数据,建立一个小型演绎数据库。可以以父亲和母亲为基本关系(作为基本谓词),再由此来描述祖父、祖母、兄弟、姐妹以及其他亲属关系。

4、修改教材2.2节例2.9的程序,使其能输出图中所有路径(path)。

五、实验方法和步骤

1、启动Windows 操作环境。

2、打开文件目录,执行Visual Prolog应用程序,启动Visual prolog,进入集成开发环境。

3、选择Options项,打开下拉菜单,选择Project→Directories项,进行工作目录修改; 或选择Global→Environment项,进行其他环境参数设置,如字体的大小等。

4、选择File项,打开下拉菜单,选择New项,进入源程序输入和编辑,或选择Open项,选择要打开的示例程序,可以进行编辑源程序。

5、编辑之后,可以选择Project项,打开下拉菜单,先Test Goal项,执行程序,可以在Messages窗口查看程序错误信息,在执行结果窗口查看运行结果,或与程序交互信息。

6、仿前例,可以选择其他程序并运行,分析程序功能。

7、退出,选择File项,打开下拉菜单,选择Exit项,可以退出Visual Prolog程序,

返回到Windows环境。

六、示例程序

一个简单的学生成绩数据库查询程序。

predicates

student(integer,string,real)

grade

goal

grade.

clauses

student(1,"zhang",90.2).

student(2,"li",95.5).

student(3,"wang",96.4).

grade:-write("please input the name:"),

readln(Name),

student(_,Name,Score),

nl,write(Name," score is:",Score).

grade:-write("Sorry,can't find the student!").

注意:当执行程序时,如出现 Nondeterministic clause (不确定的规则)错误时,请在相应谓词前加关键词 Nondeterm ,即可运行.

七、实验报告要求

实验报告应简单明了,语言通顺,结果正确,程序规范。实验报告的重点是实验结果的正确性与分析。包括:实验题目、要求、实验环境、实验内容与实验结果(要求附上运行的源程序)、实验中出现的问题、对问题的解决方案、实验总结等。

实验二搜索策略

一、实验目的

加深学生对图搜索技术的理解,使学生掌握图搜索基本编程方法,并能利用图搜索技术解决一些应用问题。

1. 掌握Visual prolog软件编程方法;

2. 熟悉状态图和与或图搜索的基本算法;

3.掌握图搜索问题求解中的问题表示、节点表示、close表和open表的构造。

二、实验环境

计算机,Visual PROLOG教学软件

三、预习要求

1.预习教材中有关状态图和与或图问题求解的内容,熟悉状态图和与或图求解的过程和方法;

2.了解Visual PROLOG程序设计的基本知识。

四、实验内容

走迷宫是人们熟悉的一种游戏, 如图1就是一个迷宫。如果我们把该迷宫的每一个格子以及入口和出口都作为节点, 把通道作为边, 则该迷宫可以由一个有向图表示。那么, 走迷宫其实就是从该有向图的初始节点(入口)出发, 寻找目标节点(出口)的问题, 或者是寻找通向目标节点(出口)的路径的问题。

用状态图搜索或与或图搜索方法,求出迷宫图中路径。图中S0为入口,Sg为出口。

五、实验方法和步骤

1. 启动prolog编辑环境;

2. 用状态图搜索思想编辑迷宫问题求解的源程序;

3. 运行程序,分析结果;

4. 用与或图搜索思想编辑迷宫问题求解的源程序;

5.运行程序,分析结果。

六、示例程序

下面是一个通用的状态图搜索程序。对于求解的具体问题,只需将其状态图的程序表示并入该程序即可。

/*状态图搜索通用程序*/

DOMAINS

state=<领域说明> %例如:state=symbol

DATABASE-mydatabase

open(state,integer) %用动态数据库实现OPEN表

closed(integer,state,integer) %和CLOSED表

res(state)

open1(state,integer)

min(state,integer)

mark(state)

fail—

PREDICATES

solve

search(state,state)

result

searching

step4(integer,state)

step56(integer,state)

equal(state,state)

repeat

resulting(integer)

rule(state,state)

GOAL

solve.

CLAUSES

solve: -search(<初始状态>,<目标状态>),result.

/* 例如

solve: -

search(st(0,1,2,3,4,5,6,7,8),st(0,2,8,3,4,5,6,7,1)),result.

*/

search(Begin,End): - %

retractall(_,mydatabase),

assert(closed(0,Begin,0)),

assert(open(Begin,0)), %步1 将初始节点放入OPEN

assert(mark(End)),

repeat,

searching,!.

result: - %

not(fail_),

retract(closed(0,_,0)),

closed(M,_,_),

resulting(M),!.

result: - beep,write(″sorry don't find a road!″).

searching: -

open(State,Pointer), %步2 若OPEN表空, 则失败,

retract(open(State,Pointer)), %步3 取出OPEN表中第一个节点,

closed(No, _, _),No2=No+1, % 编号

asserta(closed(No2,State,Pointer)), %放入CLOSED表

!,step4(No2,State).

searching: -assert(fail_). %步4 若当前节点为目标节点, 则成功

step4(_,State): -mark(End),equal(State,End). %转步2

step4(No,State): -step56(No,State),!,fail.

step56(No,StateX): - %步5 若当前节点不可扩展, 转步2

rule(StateX,StateY), %步6 扩展当前节点X得Y

not(open(StateY,_)), %考察Y是否已在OPEN

not(closed(_,StateY,_)), %考察Y是否已在CLOSED

assertz(open(StateY,No)), %

fail.

step56(_,_): -!.

equal(X,X).

repeat.

repeat: -repeat.

resulting(N): -closed(N,X,M),asserta(res(X)),resulting(M).

resulting(_): -res(X),write(X),nl,fail.

resulting(_): -!.

rule(X,Y): -<问题中的状态转换规则>. % 例如: rule(X,Y): -road(X,Y).

七、实验报告要求

1. 实验报告应简单明了,语言通顺,结果正确,程序规范。实验报告的重点是实验结果的正确性与分析。包括:实验题目、要求、实验环境、实验内容与实验结果(要求附上运行的源程序)、实验中出现的问题、对问题的解决方案、实验总结等;

2. 迷宫问题求解的搜索结果及分析;

3.比较状态图搜索和与或图搜索的特点。

实验三专家系统

一、实验目的

加深学生对专家系统原理的理解,使学生初步掌握专家系统的设计和实现方法。

二、实验环境

计算机,Visual PROLOG教学软件或VC++等

三、预习要求

1.了解专家系统设计与实现的一般方法;

2.熟悉和掌握产生式系统的运行机制、产生式规则的程序语言实现。

四、实验原理

产生式系统用来描述若干个不同的以一个基本概念为基础的系统,这个基本概念就是产生式规则或产生式条件和操作对。在产生式系统中,论域的知识分为两部分:用事实表示静态知识;用产生式规则表示推理过程和行为。

五、实验内容

综合利用人工智能的产生式系统、图搜索算法以及专家系统的框架,建造一个小型的医疗诊断专家系统,要求系统具有知识库、推理机和动态数据库三部分。编程语言不限。

六、示例程序

下面给出一个示例程序,以供参考。

例:小型动物分类专家系统

/* An Animal Classifying Expert System */

database

xpositive(symbol,symbol)

xnegative(symbol,symbol)

predicates

run

animal_is(symbol)

it_is(symbol)

positive(symbol,symbol)

negative(symbol,symbol)

clear_facts

remember(symbol,symbol,symbol)

ask(symbol,symbol)

goal

run.

clauses

run:-

animal_is(X),!

write("\nYour animal may be a(n)",X),n1,n1,clear_facts.

run:-

write("\Unbale 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(xnegative(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 Exit"),readchar(_). animal_is(cheetah):-

it_is(mammal),

it_is(carnivore)),

positive(has,tawny_color),

positive(has,black_spots).

animal_is(tiger):-

it_is(mammal),

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),

negtive(does,fly),

positive(has,long_neck),

positive(has,long_legs),

positive(has,black_and_white_color).

animal_is(penguin):-

it_is(bird),

negtive(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):-

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).

七、实验报告要求

实验报告应简单明了,语言通顺,结果正确,程序规范。实验报告的重点是实验结果的正确性与分析。包括:实验题目、要求、实验环境、实验内容与实验结果(要求附上运行的源程序)、实验中出现的问题、对问题的解决方案、实验总结等。

小动物分类查询专家系统参考源代码:

database

xpositive(symbol,symbol)

xnegative(symbol,symbol)

predicates

Nondeterm run

Nondeterm animal_is(symbol)

Nondeterm it_is(symbol)

Nondeterm positive(symbol,symbol)

Nondeterm negative(symbol,symbol)

Nondeterm clear_facts

Nondeterm remember(symbol,symbol,symbol)

Nondeterm ask(symbol,symbol)

goal

run.

clauses

run:-

animal_is(X),!,

write("\nYour animal may be a(n)",X),nl,nl,clear_facts. run:-

write("\Unbale 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 enter to Exit"),readchar(_).

animal_is(cheetah):-

it_is(mammal),

it_is(carnivore),

positive(has,tawny_color),

positive(has,black_spots).

animal_is(tiger):-

it_is(mammal),

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).

animal_is(shark):-

it_is(mammal),

it_is(carnivore),

positive(has,teeth),

positive(has,sharp_teeth),

positive(can,swim),

positive(does,well_swim).

it_is(mammal):-

positive(has,hair).

it_is(mammal):-

positive(does,give_milk).

it_is(mammal):-

positive(has,teeth).

it_is(mammal):-

positive(can,swim).

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):-

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).

人工智能实验一指导

实验1: Prolog语言程序设计 人工智能(AI)语言是一类适应于人工智能和知识工程领域的、具有符号处理和逻辑推理能力的计算机程序设计语言。能够用它来编写求解非数值计算、知识处理、推理、规划、决策等具有智能的各种复杂问题。 Prolog是当代最有影响的人工智能语言之一,由于该语言很适合表达人的思维和推理规则,在自然语言理解、机器定理证明、专家系统等方面得到了广泛的应用,已经成为人工智能应用领域的强有力的开发语言。 尽管Prolog语言有许多版本,但它们的核心部分都是一样的。Prolog的基本语句仅有三种,即事实、规则和目标三种类型的语句,且都用谓词表示,因而程序逻辑性强,方法简捷,清晰易懂。另一方面,Prolog是陈述性语言,一旦给它提交必要的事实和规则之后,Prolog就使用内部的演绎推理机制自动求解程序给定的目标,而不需要在程序中列出详细的求解步骤。 一、实验目的 1、加深学生对逻辑程序运行机理的理解。 2、掌握Prolog语言的特点、熟悉其编程环境。 3、为今后人工智能程序设计做好准备。 二、实验内容 1、编写一个描述亲属关系的Prolog程序,然后再给予出一些事实数据,建立一个小型演绎数据库。 提示:可以以父亲和母亲为基本关系(作为基本谓词),再由此来描述祖父、祖母、兄弟、姐妹以及其他所属关系。 2、编写一个路径查询程序,使其能输出图中所有路径。 提示:程序中的事实描述了下面的有向图,规则是图中两节点间通路的定义。 e

3、一个雇主在发出招聘广告之后,收到了大量的应聘申请。为了从中筛选出不量的候选人,该雇主采用下列判据:申请者必须会打字、开车,并且住在伦敦。 (a)用Prolog规则表述这个雇主的选择准则。 (b)用Prolog事实描述下列申请者的情况: 史密斯住在剑桥,会开车但不会打字。 布朗住在伦敦,会开车也会打字。 简住在格拉斯哥,不会开车但会打字。 埃文斯住在伦敦,会开车也会打字。 格林住在卢顿,会开车也会打字。 (c)要求Prolog提供一个候选人名单。 4、实现递归谓词remove(X,Y,Z),它用于从表Y中除去所有整型数X的倍数值后得到新表Z。例如,对于询问 remove(2,[3,4,5,6,7,8,9,10],Z). 的回答为: Z=[3,5,7,9] 三、实验建议 1、首先运行Prolog安装目录中PROGRAM目录下的示例程序,对Prolog功能有一个感性认识。 (1)HANOI.PRO 实现汉诺塔演示的程序。 程序运行界面如图所示。

人工智能实验4三-专家系统方案

《人工智能导论》实验报告

一、实验题目:识别型专家系统设计 ————识别动物专家系统 二、实验目的 1、掌握专家系统的基本构成 2、掌握用人工智能程序设计语言编制智能程序的方法 三、实验容 1、所选编程语言:C语言; 2.拟订的规则: (1)若某动物有奶,则它是哺乳动物。 (2)若某动物有毛发,则它是哺乳动物。 (3)若某动物有羽毛,则它是鸟。 (4)若某动物会飞且生蛋,则它是鸟。 (5)若某动物是哺乳动物且有爪且有犬齿且目盯前方,则它是食肉动物。 (6)若某动物是哺乳动物且吃肉,则它是食肉动物。 (7)若某动物是哺乳动物且有蹄,则它是有蹄动物。 (8)若某动物是哺乳动物且反刍食物,则它是有蹄动物。 (9)若某动物是食肉动物且黄褐色且有黑色条纹,则它是老虎。 (10)若某动物是食肉动物且黄褐色且有黑色斑点,则它是金钱豹。 (11)若某动物是有蹄动物且长腿且长脖子且黄褐色且有暗斑点,则它是长颈鹿。 (12)若某动物是有蹄动物且白色且有黑色条纹,则它是斑马。 (13)若某动物是鸟且不会飞且长腿且长脖子且黑白色,则它是驼鸟。(14)若某动物是鸟且不会飞且会游泳且黑白色,则它是企鹅。 (15)若某动物是鸟且善飞,则它是海燕。 2、设计思路: 用户界面:采用问答形式; 知识库(规则库):存放产生式规则,推理时用到的一般知识和领域知识,比如动物的特征,动物的分类标准,从哺乳动物、食肉动物来分,再具体地添加一些附加特征得到具体动物;建立知识库的同时也建立了事实库。事实库是一个动态链表,一个事实是链表的一个结点。知识库通过事实号与事实库发生联系。

数据库:用来存放用户回答的问题,存放初始状态,中间推理结果,最终结果; 推理机:采用正向推理,推理机是动物识别的逻辑控制器,它控制、协调系统的推理,并利用知识库中的规则对综合数据库中的数据进行逻辑操作。推理机担负两项基本任务:一是检查已有的事实和规则,并在可能的情况下增加新的事实;二是决定推理的方式和推理顺序。将推理机制同规则对象封装在一起,事实对象记录了当前的状态,规则对象首先拿出前提条件的断言(只有这些前提都有符合时才会做这条规则的结论),询问事实对象集,如事实对象集不知道,则询问用户,如所有前提条件都被证实为真则结论为真,否则系统不知道结论真假。 3、程序流程图: 程序运行如下: 以老虎,金钱豹,长颈鹿为例画出程序流程图如下:

人工智能实验报告_2

课程实验报告 学年学期2015—2016年第一学期课程名称人工智能原理与技术实验名称PROLOG语言编程练习实验室无 专业年级电气134 学生姓名赵倩 学生学号2013011989 提交时间2015.12.28 成绩 任课教师樊强 水利与建筑工程学院

第一章PROLOG语言编程练习 1.1实验目的 加深学生对逻辑程序运行机理的理解,使学生掌握PROLOG语言的特点、熟悉其编程环境,同时为后面的人工智能程序设计做好准备。 (1)熟悉PROLOG语言编程环境的使用; (2)了解PROLOG语言中常量、变量的表示方法; (3)了解利用PROLOG进行事实库、规则库的编写方法; 1.2实验环境 计算机,Turbo PROLOG教学软件。 1.3预习要求 实验前应阅读实验指导书,了解实验目的、预习PROLOG语言的相关知识。 1.4实验内容 (1)学习使用Turbo PROLOG,包括进入PROLOG主程序、编辑源程序、修改环境目录、退出等基本操作。(2)在Turbo prolog集成环境下调试运行简单的Turbo PROLOG程序,如描述亲属关系的PROLOG程序或其他小型演绎数据库程序等。 1.5实验方法和步骤 (1)启动Windows XP操作环境。 (2)打开文件目录,执行prolog应用程序,启动Turbo prolog,并按空格键(SPACE)进入集成开发环境。(3)选择Setup项,打开下拉菜单,选择Directories项,进行工作目录修改,按Esc键退出,选择Save Configuration项,保存修改。 (4)选择Files项,打开下拉菜单,选择New file项,进入源程序输入和编辑,或选择Load项,选择要打开的示例程序,再选择Edit项,可以进行编辑源程序。 (5)编辑之后,可以选择Run项,执行程序,可以在Dialog窗口进行询问,即外部目标的执行,查看程序运行结果,分析程序之功能。 (6)仿前例,可以选择其他程序并运行,分析程序功能。 (7)退出,选择Quit项,可以退出Turbo Prolog程序,返回到Windows XP环境。 1.6示例程序 逻辑电路模拟程序。该程序以逻辑运算“与”、“或”、“非”的定义为基本事实,然后在此基础上定义了“异或”运算。那么,利用这些运算就可以对“与”、“或”、“非”和“异或”等逻辑电路进行模拟。事实上,在此基础上也可以对其他任一逻辑门电路进行模拟。 domains d=integer predicates not_(d,d) and_(d,d,d) or_(d,d,d) xor_(d,d,d) clauses not_(1,0). not_(0,1). and_(0,0,0). and_(0,1,0). and_(1,0,0). and_(1,1,1).

人工智能实验报告大全

人工智能课内实验报告 (8次) 学院:自动化学院 班级:智能1501 姓名:刘少鹏(34) 学号: 06153034

目录 课内实验1:猴子摘香蕉问题的VC编程实现 (1) 课内实验2:编程实现简单动物识别系统的知识表示 (5) 课内实验3:盲目搜索求解8数码问题 (18) 课内实验4:回溯算法求解四皇后问题 (33) 课内实验5:编程实现一字棋游戏 (37) 课内实验6:字句集消解实验 (46) 课内实验7:简单动物识别系统的产生式推理 (66) 课内实验8:编程实现D-S证据推理算法 (78)

人工智能课内实验报告实验1:猴子摘香蕉问题的VC编程实现 学院:自动化学院 班级:智能1501 姓名:刘少鹏(33) 学号: 06153034 日期: 2017-3-8 10:15-12:00

实验1:猴子摘香蕉问题的VC编程实现 一、实验目的 (1)熟悉谓词逻辑表示法; (2)掌握人工智能谓词逻辑中的经典例子——猴子摘香蕉问题的编程实现。 二、编程环境 VC语言 三、问题描述 房子里有一只猴子(即机器人),位于a处。在c处上方的天花板上有一串香蕉,猴子想吃,但摘不到。房间的b处还有一个箱子,如果猴子站到箱子上,就可以摸着天花板。如图1所示,对于上述问题,可以通过谓词逻辑表示法来描述知识。要求通过VC语言编程实现猴子摘香蕉问题的求解过程。 图1 猴子摘香蕉问题 四、源代码 #include unsigned int i; void Monkey_Go_Box(unsigned char x, unsigned char y) {

《人工智能及其应用》实验指导书Word版

《人工智能及其应用》 实验指导书 浙江工业大学计算机科学与技术学院—人工智能课程组 2011年9月

前言 本实验是为了配合《人工智能及其应用》课程的理论学习而专门设置的。本实验的目的是巩固和加强人工智能的基本原理和方法,并为今后进一步学习更高级课程和信息智能化技术的研究与系统开发奠定良好的基础。 全书共分为八个实验:1.产生式系统实验;2.模糊推理系统实验;3.A*算法求解8数码问题实验;4.A*算法求解迷宫问题实验;5.遗传算法求解函数最值问题实验;6.遗传算法求解TSP问题实验;7.基于神经网络的模式识别实验;8.基于神经网络的优化计算实验。每个实验包括有:实验目的、实验内容、实验条件、实验要求、实验步骤和实验报告等六个项目。 本实验指导书包括两个部分。第一个部分是介绍实验的教学大纲;第二部分是介绍八个实验的内容。 由于编者水平有限,本实验指导书的错误和不足在所难免,欢迎批评指正。 人工智能课程组 2011年9月

目录 实验教学大纲 (1) 实验一产生式系统实验 (3) 实验二模糊推理系统实验 (5) 实验三A*算法实验I (9) 实验四A*算法实验II (12) 实验五遗传算法实验I (14) 实验六遗传算法实验II (18) 实验七基于神经网络的模式识别实验 (20) 实验八基于神经网络的优化计算实验 (24)

实验教学大纲 一、学时:16学时,一般安排在第9周至第16周。 二、主要仪器设备及运行环境:PC机、Visual C++ 6.0、Matlab 7.0。 三、实验项目及教学安排 序号实验名称实验 平台实验内容学 时 类型教学 要求 1产生式系统应用VC++设计知识库,实现系统识别或 分类等。 2设计课内 2模糊推理系统应用Matlab1)设计洗衣机的模糊控制器; 2)设计两车追赶的模糊控制 器。 2验证课内 3A*算法应用I VC++设计与实现求解N数码问题的 A*算法。 2综合课内4A*算法应用II VC++设计与实现求解迷宫问题的A* 算法。 2综合课内5遗传算法应用I Matlab1)求某一函数的最小值; 2)求某一函数的最大值。 2验证课内6遗传算法应用II VC++设计与实现求解不同城市规模 的TSP问题的遗传算法。 2综合课内 7基于神经网络的模式识别Matlab1)基于BP神经网络的数字识 别设计; 2)基于离散Hopfiel神经网络 的联想记忆设计。 2验证课内 8基于神经网络的 优化计算 VC++设计与实现求解TSP问题的连2综合课内 四、实验成绩评定 实验课成绩单独按五分制评定。凡实验成绩不及格者,该门课程就不及格。学生的实验成绩应以平时考查为主,一般应占课程总成绩的50%,其平时成绩又要以实验实际操作的优劣作为主要考核依据。对于实验课成绩,无论采取何种方式进行考核,都必须按实验课的目的要求,以实际实验工作能力的强弱作为评定成绩的主要依据。

《人工智能》课程教学大纲

人工智能》课程教学大纲 、课程基本信息 二、课程教学目标 《人工智能》是计算机科学与技术专业的一门专业拓展课,通过本课程的学习使本科生对人工智能的基本内容、基本原理和基本方法有一个比较初步的认识,掌握人工智能的基本概念、基本原理、知识的表示、推理机制和智能问题求解技术。启发学生开发软件的思路,培养学生对相关的智能问题的分析能力,提高学生开发应用软件的能力和水平。 三、教学学时分配

四、教学内容和教学要求 第一章人工智能概述(3 学时) (一)教学要求 1.掌握人工智能的基本概念; 2.理解人工智能的发展状况。 3.理解人工智能的基本技术; 4.了解人工智能的研究途径与方法; 5.了解人工智能的分支领域; (二)教学重点与难点教学重点:人工智能的基本技术。教学难点:三大学派的研究途径与方法。 (三)教学内容 第一节人工智能的基本概念 1.什么是人工智能 2.强人工智能与弱人工智能 3.脑智能和群智能 4.符号智能和计算智能 第二节人工智能发展概况 1.人工智能学科的产生

2.人工智能学科的发展 3.人工智能三大学派 第三节人工智能研究途径与方法 1.人工智能的研究目标 2.人工智能的研究方法 3.人工智能的研究内容 第四节人工智能基本技术 1.推理技术 2.搜索技术 3.知识库技术 4.归纳技术 5.联想技术第五节人工智能的应用 1.难题求解 2.机器定理证明 3.自动程序设计 4.模式识别 5.机器翻译 6.智能管控 7.智能决策 8.智能人机接口 第六节人工智能的影响 1.人工智能对人类的影响 2.人工智能对社会的影响 本章习题要点:对基本概念、技术、方法的理解。 第二章智能程序设计语言(5 学时)(一)教学要求 1.了解常见的几种人工智能程序设计语言;

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

人工智能技术基础实验报告 指导老师:朱力 任课教师:张勇

实验三小型专家系统设计与实现 一、实验目的 (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)若某动物是鸟且不会飞且长腿且长脖子且黑白色,则它是驼鸟。

人工智能及其应用总结

人工智能及其应用总结 1、感知能力、 2、记忆与思维能、 3、学习能力、 4、行为能力(表达能力)人工智能的研究内容:知识表示、机器感知、机器思维、机器学习、机器行为人工智能的研究目标:近期目标:使现有的电子数字计算机更聪明、更有用,使它不仅能做一般的数值计算及非数值信息的数据处理,而且能运用知识处理问题,能模拟人类的部分智能行为。建造智能机器人代替人类的部分智力劳动。远期目标:用自动机模仿人类的思维过程和智能行为。最终目标:机器智能实现生物智能的各项功能。智能行为:感知、推理、学习、通信和复杂环境下的动作行为知识发现的处理过程:数据挖掘、数据选择、知识评价人工智能的主要学派:符号主义、连接主义和行为主义人工智能的研究途径:心理模拟、生理模拟和行为模拟人工智能的应用领域:智能控制、智能管理、智能决策、智能仿真。人工智能的基本技术:表示、运算、搜索归纳技术、联想技术人工智能(机器智能)、学科和能力:(书)所谓人工智能就是用人工的方法在机器(计算机)上实现的智能,或者说是人们使机器具有类似于人的智能。从学科角度来看:人工智能是计算机科学中涉及研究、设计和应用智能机器的一个分支。它的近期主要目标在于研究用机器来模仿和执行人脑的某些智能功能,并开发相关理论和技术。从能力角度来看:人工智能是智能机器所执行的通常与人类智能有关的功能。对认知

行为进行研究:心理活动的最高层级是思维策略,中间一层是初级信息处理,最低层级是生理过程,与此相应的是计算机程序、语言和硬件。研究认知过程的主要任务是探求高层次思维决策与初级信息处理的关系,并用计算机程序来模拟人的思维策略水平,而用计算机语言模拟人的初级信息处理过程。人工智能新的研究热点:新的研究热点:分布式人工智能与Agent,计算智能与进化计算,数据挖掘与知识发现 (超市市场商品数据分析),人工生命第二章:知识表示方法知识的一般概念:知识是人们在改造客观世界的实践中积累起来的认识和经验知识表示:是研究用机器表示知识的可行性、有效性的一般方法,是一种数据结构与控制结构的统一体,既考虑知识的存储又考虑知识的使用。知识表示的要求:表示能力、可利用性、可实现性、可组织性、可维护性、自然性、可理解性状态空间法的三要素:状态、算符、状态空间方法问题求解技术:问题的表示和求解的方法二种不确定性:关于证据的不确定性和关于结论的不确定性原子公式:由若干谓词符号和项组成问题的状态空间包含三种说明的集合:初始状态集合S、操作符集合以及目标状态集合“我听音乐或者绘画”的谓词表示的析取式LISTEN(I,MUSIC)VDRAW(I,PAINTING)句子变换成子句形式:(x){P(x)→P(x)} (ANY x) { P(x)P(x) } (ANY x) {~P(x)

《人工智能及其应用》实验指导书上课讲义

《人工智能及其应用》实验指导书

《人工智能及其应用》 实验指导书 浙江工业大学计算机科学与技术学院—人工智能课程组 2011年9月

前言 本实验是为了配合《人工智能及其应用》课程的理论学习而专门设置的。本实验的目的是巩固和加强人工智能的基本原理和方法,并为今后进一步学习更高级课程和信息智能化技术的研究与系统开发奠定良好的基础。 全书共分为八个实验:1.产生式系统实验;2.模糊推理系统实验;3.A*算法求解8数码问题实验;4.A*算法求解迷宫问题实验;5.遗传算法求解函数最值问题实验;6.遗传算法求解TSP问题实验;7.基于神经网络的模式识别实验;8.基于神经网络的优化计算实验。每个实验包括有:实验目的、实验内容、实验条件、实验要求、实验步骤和实验报告等六个项目。 本实验指导书包括两个部分。第一个部分是介绍实验的教学大纲;第二部分是介绍八个实验的内容。 由于编者水平有限,本实验指导书的错误和不足在所难免,欢迎批评指正。 人工智能课程组 2011年9月

目录 实验教学大纲 (1) 实验一产生式系统实验 (4) 实验二模糊推理系统实验 (6) 实验三 A*算法实验I (11) 实验四 A*算法实验II (14) 实验五遗传算法实验I (16) 实验六遗传算法实验II (21) 实验七基于神经网络的模式识别实验 (24) 实验八基于神经网络的优化计算实验 (28)

实验教学大纲 一、学时:16学时,一般安排在第9周至第16周。 二、主要仪器设备及运行环境:PC机、Visual C++ 6.0、Matlab 7.0。 三、实验项目及教学安排 序号实验名称实验 平台 实验内容学 时 类型教学 要求 1 产生式系统应 用VC++ 设计知识库,实现系统识 别或分类等。 2 设计课内 2 模糊推理系统 应用Matlab 1)设计洗衣机的模糊控制 器; 2)设计两车追赶的模糊控 制器。 2 验证课内 3 A*算法应用I VC++ 设计与实现求解N数码问 题的A*算法。 2 综合课内4 A*算法应用II VC++ 设计与实现求解迷宫问题 的A*算法。 2 综合课内 5 遗传算法应用 I Matlab 1)求某一函数的最小值; 2)求某一函数的最大值。 2 验证课内 6 遗传算法应用 II VC++ 设计与实现求解不同城市 规模的TSP问题的遗传算 法。 2 综合课内 7 基于神经网络 的模式识别Matlab 1)基于BP神经网络的数 字识别设计; 2)基于离散Hopfiel神经 网络的联想记忆设计。 2 验证课内 8 基于神经网络 的优化计算VC++ 设计与实现求解TSP问题 的连续Hopfield神经网 络。 2 综合课内 四、实验成绩评定

人工智能实训室建设方案

人工智能实验室 2021年1月 武汉唯众智创科技有限公司

人工智能实验室建设方案 一、专业背景 人工智能(Artificial Intelligence),它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。 人工智能的实际应用有:机器视觉,指纹识别,人脸识别,视网膜识别,虹膜识别,掌纹识别,专家系统,自动规划,智能搜索,定理证明,博弈,自动程序设计,智能控制,机器人学,语言和图像理解,遗传编程等。 如今处于风口上的人工智能产业界,受到了众多企业的追捧。截至2019年6月,中国人工智能企业超过1200家,位居全球第二。但我国人工智能行业并未摆脱人才稀缺的发展短板,专业人才稀缺严重。根据猎聘发布的《猎聘2019年中国AI&大数据人才就业趋势报告》,中国人工智能人才缺口超过500万。为了满足人工智能产业界对人才的迫切需求,国家相继出台了多项政策方针,引导高校尽快设置人工智能相关专业,加大人工智能人才培养力度。2019年3月,35所高校获批建设人工智能本科专业。2019年10月18日在教育部发布的《普通高等学校高等职业教育(专科)专业目录》2019年增补专业中,增补了人工智能技术服务专科专业。 根据教育部《普通高等学校高等职业教育(专科)专业设置管理办法》,在相关学校和行业提交增补专业建议的基础上,教育部组织研究确定了2019年度增补专业共9个,自2020年起执行。在高等职业教育行业目录中,正式宣布人工智能技术服务专业诞生,专业代码610217。 该专业建设以人工智能技术与应用素质培养为基础,以人工智能技术与应用能力为培养主线,将人工智能技术服务专业技能知识和职业资格认证相结合,构建专业的理论教学体系和实践能力培养体系。采取多种形式,通过实施“双证书”和“多证书”制,培养社会所需的实用型人才。2018年4月2日,教育部印发了《高等学校人工智能创新行动计划》,行动计划中要求各大高校加快人工智能科技创新基地。因此,在高职院校设立人工智能专业迫在眉睫。

《人工智能及其应用》实验指导书

《人工智能及其应用》 实验指导书

浙江工业大学计算机科学与技术学院—人工智能课程组 2011年9月

前言 本实验是为了配合《人工智能及其应用》课程的理论学习而专门设置的。本实验的目的是巩固和加强人工智能的基本原理和方法,并为今后进一步学习更高级课程和信息智能化技术的研究与系统开发奠定良好的基础。 全书共分为八个实验:1.产生式系统实验;2.模糊推理系统实验;3.A*算法求解8数码问题实验;4.A*算法求解迷宫问题实验;5.遗传算法求解函数最值问题实验;6.遗传算法求解TSP问题实验;7.基于神经网络的模式识别实验;8.基于神经网络的优化计算实验。每个实验包括有:实验目的、实验内容、实验条件、实验要求、实验步骤和实验报告等六个项目。 本实验指导书包括两个部分。第一个部分是介绍实验的教学大纲;第二部分是介绍八个实验的内容。 由于编者水平有限,本实验指导书的错误和不足在所难免,欢迎批评指正。 人工智能课程组 2011年9月

目录 实验教学大纲 (1) 实验一产生式系统实验 (4) 实验二模糊推理系统实验 (7)

实验三A*算法实验I (13) 实验四A*算法实验II (17) 实验五遗传算法实验I (19) 实验六遗传算法实验II (26) 实验七基于神经网络的模式识别实验 (29) 实验八基于神经网络的优化计算实验 (35)

实验教学大纲 一、学时:16学时,一般安排在第9周至第16周。 二、主要仪器设备及运行环境:PC机、Visual C++ 6.0、Matlab 7.0。 三、实验项目及教学安排 序号实验名称实验 平台实验内容学 时 类型教学 要求 1 产生式系统应用VC++ 设计知识库,实现系统识别或 分类等。 2 设计课内 2 模糊推理系统应 用Matla b 1)设计洗衣机的模糊控制器; 2)设计两车追赶的模糊控制 器。 2 验证课内 3 A*算法应用I VC++ 设计与实现求解N数码问题的 A*算法。 2 综合课内 4 A*算法应用II VC++ 设计与实现求解迷宫问题的A* 算法。 2 综合课内 5 遗传算法应用I Matla b 1)求某一函数的最小值; 2)求某一函数的最大值。 2 验证课内 6 遗传算法应用II VC++ 设计与实现求解不同城市规模 的TSP问题的遗传算法。 2 综合课内7 基于神经网络的Matla1)基于BP神经网络的数字识 2 验证课内

人工智能试验 结课报告

人工智能结课报告 学号:姓名: 一、课题:机器视觉及机器视觉系统的运用 二、摘要:科技在不停的发展,很多智能的东西在我们生活中随处可见,随着人工智能的不断发展,我们可以制造出真正的智能机器,而且这个领域也将成为下一个技术革命。机器视觉就是用机器代替人眼来做测量和判断。机器视觉系统是指通过机器视觉产品(即图像摄取装置,分 CMOS 和CCD 两种)将被摄取目标转换成图像信号,传送给专用的图像处理系统,根据像素分布和亮度、颜色等信息,转变成数字化信号;图像系统对这些信号进行各种运算来抽取目标的特征,进而根据判别的结果来控制现场的设备动作。 机器视觉系统适合于人工作业的危险工作环境或人工视觉难以满足要求的场合,常用机器视觉来替代人工视觉;同时在大批量工业生产过程中,用人工视觉检查产品质量效率低且精度不高,用机器视觉检测方法可以大大提高生产效率和生产的自动化程度。而且机器视觉易于实现信息集成,是实现计算机集成制造的基础技术。 机器视觉不会有人眼的疲劳,有着比人眼更高的精度和速度,借助红外线、紫外线、X 射线、超声波等高新探测技术,机器视觉在探测不可视物体和高危险场景时,更具有其突出的优点。机器视觉技术现已得到广泛的应用。 机器视觉技术的诞生和应用,极大地解放了人类劳动力,提高了生产自动化水平,改善了人类生活现状,其应用前景极为广阔。目前在国外,机器视觉技术已广泛应用于生产、生活中,而我国正处于起步阶段,急需广大科技工作者的共同努力,来迅速提高我国机器视觉技术的发展水平,为我国的现代化建设做出自己的贡献。 三、三个问题回答 (1)应用价值(10分):为什么跟踪这个人、项目、技术或者算法? 答:在学习人工智能时,从老师的课堂扩充中,我了解到了“机器视觉”这个词,所以我就对这项技术产生了兴趣,也对此进行了跟踪。 在国外,机器视觉的应用普及主要体现在半导体及电子行业。机器视觉系统还在质量检测的各个方面已经得到了广泛的应用,并且其产品在应用中占据着举足轻重的地位。 目前国内随着经济水平的提高,3D机器视觉也开始进入人们的视野。目前3D机器视觉大多用于水果和蔬菜、木材、化妆品、烘焙食品、电子组件和医药产品的评级。它可以提高合格产品的生产能力,在生产过程的早期就报废劣质产品,从而减少了浪费节约成本。这种功能非常适合用于高度、形状、数量甚至色彩等产品属性的成像。

人工智能 课程实验 专家系统 程序源代码

游戏人物识别专家系统 ——邢洪伟一试验题目 游戏人物识别专家系统 二、试验内容 游戏人物识别专家系统是流行的专家系统实验模型,主要基于暴风公司出品的经典角色类游戏《暗黑破坏神2》。它用产生式规则来表示知识,共15条规则、可以识别八种游戏人物,这些规则既少又简单,可以改造他们,也可以加进新的规则,还可以用来识别其他东西的新规则来取代这些规则。游戏人物识别15条规则的中文表示是: 规则1: 如果:暴风公司出品的单机角色类游戏 则:该游戏是暗黑破坏神 规则2: 如果:暴风公司出品的单机对抗类游戏 则:该游戏是魔兽争霸 规则3: 如果:暴风公司出品的网络游戏 则:该游戏是魔兽世界 规则4: 如果:网易游戏出品的网络游戏 则:该游戏是梦幻西游 规则5: 如果:暗黑破坏神版本1 则:该游戏是暗黑破坏神1 规则6: 如果:是暗黑破坏神2 则:该游戏是暗黑破坏神2 规则7: 如果:是暗黑破坏神3 则:该游戏是暗黑破坏神3 规则8: 如果:暗黑破坏神版本2单手武器使用木棒的男性人物 则:该人物是德鲁伊 规则9: 如果:暗黑破坏神2单手武器使用手杖的男性人物 则:该人物是亡灵法师 规则10:

如果:暗黑破坏神版本2单手武器使用法杖的女性人物 则:该人物是巫师 规则11: 如果:暗黑破坏神版本2双手武器使用长剑和盾牌的男性人物 则:该人物是圣骑士 规则12: 如果:暗黑破坏神版本2单手武器使用斧头的男性人物 则:该人物是野蛮人 规则13: 如果:暗黑破坏神版本2单手武器使用爪子的男性人物 则:该人物是刺客 规则14: 如果:暗黑破坏神2单手武器使用长剑的女性人物 则:该人物是亚马逊 规则15: 如果:梦幻西游单手使用鞭子的女性人物 则:该人物是飞燕女 游戏人物识别专家系统由15条规则组成,可以识别八种动物,在15条规则中,共出现 37个概念(也称作事实),共37个事实,每个事实给一个编号,从编号从1到37,在规则对象中我们不存储事实概念,只有该事实的编号,同样规则的结论也是事实概念的编号,事实与规则的数据以常量表示,其结构如下:Char *str{}={"暴风公司出品 ","网易游戏出品","单机游戏","网络游戏", "角色类游戏","对抗类游戏","版本1","版本2","版本3","男性","女性", "暗黑破坏神","梦幻西游","暗黑破坏神1","暗黑破坏神2","暗黑破坏神3","单身武器","双手武器","使用木棒","是用手杖","使用法杖","使用长剑","使用盾牌","使用斧头","使用爪子","使用鞭子","巫师","德鲁伊","亡灵法师","法师","圣骑士","野蛮人","刺客","亚马逊","飞燕女","魔兽争霸","魔兽世界","\ 0"} 程序用编号序列的方式表达了产生式规则,如资料中规则15,如果动物是鸟,且善飞,则该动物是信天翁。相应的规则数组第八条是{26,17,13,11,0,0},第26个是“使用鞭子”,如果事实成立,询问使用者下一个事实,第17 个“单手武器”,如果也成立,询问使用者下一个事实,第13个是“梦幻西游”则,如果事实成立,询问使用者下一个事实,第11个是“女性”,如果事实成立,查找结论断言编号数组{28,29,30,31,32,33,34,35,14,15,16,1 3,12,36,37}中第八个“35”,这里35对应事实数组中的“飞燕女”。 上述就是程序的推理过程,也是程序中的重点,该部分是由规则类(类rul e)中的Query方法实现。 三、流程图及分析 主程序的流程主要是:1、实例化各个类 2、初始化事实集 3、初始化规则集

来自MIT人工智能实验室

8447 麻省理工学院 人工智能实验室 AI Working Paper 316 1988年10月来自MIT人工智能实验室:如何做研究? 作者:人工智能实验室全体研究生 编辑:David Chapman 版本:1.3 时间:1988年9月 译者:柳泉波北京师范大学信息学院2000级博士生 摘要本文的主旨是解释如何做研究。我们提供的这些建议,对做研究本身(阅读、写作和程序设计),理解研究过程以及开始热爱研究(方法论、选题、选导师和情感因素),都是极具价值的。 备注:人工智能实验室的Working Papers用于内部交流,包含的信息由于过于初步或者过于详细而无法发表。不像正式论文那样,会列出所有的参考文献。 1. 简介 这是什么? 并没有什么神丹妙药可以保证在研究中取得成功,本文只是列举了一些可能会有所帮助的非正式意见。 目标读者是谁? 本文档主要是为MIT人工智能实验室新入学的研究生而写,但对于其他机构的人工智能研究者也很有价值。即使不是人工智能领域的研究者,也可以从中发现对自己有价值的部分。 如何使用? 要精读完本文,太长了一些,最好是采用浏览的方式。很多人觉得下面的方法很有效:先快速通读一遍,然后选取其中与自己当前研究项目有关的部分仔细研究。 本文档被粗略地分为两部分。第一部分涉及研究者所需具备的各种技能:阅读,写作和程序设计,等等。第二部分讨论研究过程本身:研究究竟是怎么回事,

如何做研究,如何选题和选导师,如何考虑研究中的情感因素。很多读者反映,从长远看,第二部分比第一部分更有价值,也更让人感兴趣。 .. 小节2 如何通过阅读打好AI研究的基础。列举了重要的AI期刊,并给出了一些阅读的诀窍。 .. 小节3 如何成为AI研究领域的一员:与相关人员保持联系,他们可以使你保持对研究前沿的跟踪,知道应该读什么材料。 .. 小节4 学习AI相关领域的知识。对几个领域都有基本的理解,对于一个或者两个领域要精通。 .. 小节5 如何做研究笔记。 .. 小节6 如何写期刊论文和毕业论文。如何为草稿写评审意见,如何利用别人的评审意见。如何发表论文。 .. 小节7 如何做研究报告。 .. 小节8 是有关程序设计的。AI程序设计与平常大家习惯的程序设计有所不同。 .. 小节9 有关研究生涯最重要的问题,如何选导师。不同的导师具有不同的风格,本节的意见有助于你找到合适的导师。导师是你必须了解如何利用的资源。 .. 小节10 关于毕业论文。毕业论文将占据研究生生涯的大部分时间,本部分涉及如何选题,以及如何避免浪费时间。 .. 小节11 有关研究方法论,尚未完成。 .. 小节12 或许是最重要的一节:涉及研究过程中的情感因素,包括如何面对失败,如何设定目标,如何避免不安全感,保持自信,享受快乐。 2. 阅读 很多研究人员花一半的时间阅读文献。从别人的工作中可以很快地学到很多东西。本节讨论的是AI中的阅读,在第四小节将论述其他主题相关的阅读。 阅读文献,始于今日。一旦你开始写作论文,就没有多少时间了,那时的阅读主要集中于论文主题相关的文献。在研究生的头两年,大部分的时间要用于做课程作业和打基础。此时,阅读课本和出版的期刊文章就可以了。(以后,你将主要阅读文章的草稿,参看小节三)。 在本领域打下坚实的基础所需要的阅读量,是令人望而却步的。但既然AI只是一个很小的研究领域,因此你仍然可以花几年的时间阅读本领域已出版的数量众多论文中最本质的那部分。一个有用的小技巧是首先找出那些最本质的论文。此时可以参考一些有用的书目:例如研究生课程表,其他学校(主要是斯坦福大学)研究生录取程序的建议阅读列表,这些可以让你有一些初步的印象。如果你对AI的某个子领域感兴趣,向该领域的高年级研究生请教本领域最重要的十篇论文是什么,如果可以,借过来复印。最近,出现了很多精心编辑的有关某个子领域的论文集,尤其是Morgan-Kauffman出版的。 AI实验室有三种内部出版物系列:Working Papers,Memos和Technical Reports,正式的程度依次增加,在八层的架子上可以找到。回顾最近几年的出版物,将那些非常感兴趣的复制下来。这不仅是由于其中很多都是意义重大的论文,对于了解实验室成员的工作进展也是很重要的。

产生式系统--人工智能实验指导书

《人工智能》实验指导书(2010年版) 供2011级计算机科学与技术专业使用 1.实验目的 培养学生利用人工智能技术解决简单实际问题的能力。 2. 实验设备或环境 硬件设备:微机。 软件环境:操作系统Windows XP,开发工具Microsoft Visual C++ 6.0、Visual Prolog5.2、Matlab6.5。 3. 实验内容 (1).在Visual C++环境下,利用状态空间法解决产生式系统问题。 4.实验步骤 (1).编写、调试程序。 (2).运行若干个实例。 (3).编写实验报告。 5. 考核要求或实验报告要求 每位学生独立完成编程与实验报告,在机房抽查同学的程序。少量同学需要做口头报告与演示程序。实验报告的格式见附件。 附件:《人工智能》课程实验报告模板 说明: 1、模板的斜体文字是编写提纲,正式报告中不用保留。 2、必须在理解教材和上课内容的基础上,自己独立完成本报告。不要拷贝教材中的文字与流程图。 3、提交的实验报告包括本报告与程序源代码,每位同学以自己的学号名字为文件名,压缩后提交。例如,06080700张三.zip/rar。 4、在机房抽查同学的程序。在课堂上,要求部分同学口头讲解报告和演示程序。以下是报告的模板正文

利用正向推理方法解决产生式系统问题 学号E201102053 姓名姚为民完成时间2011年10月1.产生式系统问题简介 产生式系统用来描述若干个不同的以一个基本概念为基础的系统。这个基本概念就是产生式规则或产生式条件和操作的概念。在产生式系统中,论域的知识分为两个部分:用事实表示静态知识,用产生式规则表示推理过程和行为。 产生式系统由三部分组成,即总数据库、产生式规则和控制策略。总数据库用于存放求解过程中各种当前信息的数据结构。产生式规则中某条规则的前提与总数据库中的某些事实相匹配时,该规则就被激活,并把其结论作为新的事实存入总数据库。产生式规则是一个规则库,用于存放于求解问题有关的某个领域知识的规则集合及其交换规则。控制策略为一个推理机构,由一组程序组成,用来控制产生式系统的运行,决定问题求解过程的推理路线,实现对问题的求解。 2.产生式系统的正向推理 产生式系统的问题求解过程即为对解空间的搜素过程,也就是推理过程。正向推理从一组表示事实的谓词逻辑或命题出发,使用一组产生式规则,用以证明该谓词逻辑公式或命题是否成立。 正系推理的一般策略是:先提供一批事实到总数据库中,系统利用这些事实与规则的前提相匹配,出发匹配成功的规则,把其结论作为新的事实添加到总数据库中,继续上述过程,直到没有可匹配的新规则,不再用新的事实添加到总数据库中为止。 3.体会与致谢 此次试验报告让我真正感受到将人工智能知识用于解决实际推理问题,体会到了真正的快乐,原来编码是可以改变我们的生活,我们的世界 4.实验程序简单说明 #include #include #include using namespace std; int flag[23]={0}; char *condition[]={"01有毛","02产奶","03有羽毛","04会飞","05会下蛋","06吃肉","07有犬齿","08有爪","09眼睛前视","10有蹄","11反刍","12黄褐色","13有斑点", "14有黑色条纹","15长脖","16长腿","17不会飞","18会游泳","19黑白两色","20善飞","21哺乳类","22鸟类","23肉食类","24蹄类",

人工智能实验报告7

《人工智能》课外实践报告 项目名称:剪枝法五子棋 所在班级: 2013级软件工程一班 小组成员:李晓宁、白明辉、刘小晶、袁成飞、程小兰、李喜林 指导教师:薛笑荣 起止时间: 2016-5-10——2016-6-18

项目基本信息 一、系统分析 1.1背景

1.1.1 设计背景 智力小游戏作为人们日常休闲娱乐的工具已经深入人们的生活,五子棋更成为了智力游戏的经典,它是基于AI的αβ剪枝法和极小极大值算法实现的人工智能游戏,让人们能和计算机进行对弈。能使人们在与电脑进行对弈的过程中学习五子棋,陶冶情操。并且推进人们对AI的关注和兴趣。 1.1.2可行性分析 通过研究,本游戏的可行性有以下三方面作保障 (1)技术可行性 本游戏采用Windows xp等等系统作为操作平台,使用人工智能进行算法设计,利用剪枝法进行编写,大大减少了内存容量,而且不用使用数据库,便可操作,方便可行,因此在技术上是可行的。 (2)经济可行性 开发软件:SublimText (3)操作可行性 该游戏运行所需配置低、用户操作界面友好,具有较强的操作可行性。 1.2数据需求 五子棋需要设计如下的数据字段和数据表: 1.2.1 估值函数:

估值函数通常是为了评价棋型的状态,根据实现定义的一个棋局估值表,对双方的棋局形态进行计算,根据得到的估值来判断应该采用的走法。棋局估值表是根据当前的棋局形势,定义一个分值来反映其优势程度,来对整个棋局形势进行评价。本程序采用的估值如下: 状态眠二假活三眠三活二冲四假活三活三活四连五 分值 2 4 5 8 12 15 40 90 200 一般来说,我们采用的是15×15的棋盘,棋盘的每一条线称为一路,包括行、列和斜线,4个方向,其中行列有30路,两条对角线共有58路,整个棋盘的路数为88路。考虑到五子棋必须要五子相连才可以获胜,这样对于斜线,可以减少8路,即有效的棋盘路数为72路。对于每一路来说,第i路的估分为E(i)=Ec(i)-Ep(i),其中Ec(i)为计算机的i路估分,Ep(i)为玩家的i路估分。棋局整个形势的估值情况通过对各路估分的累加进行判断,即估值函数: 72 F(n)= Σ E(i) i=1 1.2.2 极小极大值算法: 极大极小搜索算法就是在博弈树在寻找最优解的一个过程,这主要是一个对各个子结点进行比较取舍的过程,定义一个估值函数F(n)来分别计算各个终结点的分值,通过双方的分值来对棋局形势进行分析判断。以甲乙两人下棋为例,甲为max,乙为min。当甲走棋时,自然在博弈树中寻找最大点的走法,轮到乙时,则寻找最小点的走法,如此反复,这就是一个极大极小搜索过程,以此来寻找对机器的最佳走法。

相关主题
文本预览
相关文档 最新文档