胡崔亮——人工智能实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

人工智能课程报告

——安徽农业大学经济技术学院专业:计算机科学与技术

年级:08级

姓名:胡崔亮

学号:08538034

成绩:

2011-11-05

实验名称:人工智能程序设计

——少量动物识别专家系统

本程序用于识别豹子、老虎、鸟、长颈鹿、斑马等七种动物的一个实验专家系统。通过本程序的编制理解PROLOG的运行机制及推理规则,同时对专家系统有初步的了解。源程序代码如下: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)

clauses

run:-animal_is(X),!,write("\nyour animal may be a(n)",X),

nl,nl,clear_facts.

run:-write("\n unable to determine what"),

write("\n 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,"is",Y,"\n"),readln(Reply),

remember(X,Y,Reply).

remember(X,Y,yes):-assertz(xpositive(X,Y)).

remember(X,Y,no):-assertz(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,tawn y_color),positive(has,black_spots).

animal_is(tiger):-it_is(mammal),it_is(carnivore),positive(has,tawny_c olor),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,feather).

it_is(bird):-positive(does,fly),positive(does,lay_eggs).

it_is(carnivore):-positive(does,eat_eat).

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(has,chew_cud).

谓词解释:

Xpositive肯定数据库——记录yes选项的谓词,xnegative否定数据库——记录no选项的谓词。Cheetah:豹子mammal:哺乳动物carnivore:食肉动物tawny_color:黄褐色black_spots:黑斑点black_stripes:斑纹giraffe:长颈鹿ungulate:有蹄的zebra:斑马ostrich:驼鸟penguin:企鹅give_milk:哺乳feather:羽毛

lay_eggs:下蛋eat_eat:食肉pointed_teeth:犬齿claws:爪子hooves:蹄chew_cud:咀嚼

运行结果:在交互窗口下输入RUN,根据你要识别的动物特征选择yes或no。

假定要识别的动物是长颈鹿,运行结果如下:

相关文档
最新文档