课程名称:人工智能概论 实验名称:使用正向推理进行动物分类 实验.doc
上传人:sy****28 上传时间:2024-09-12 格式:DOC 页数:2 大小:41KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

课程名称:人工智能概论 实验名称:使用正向推理进行动物分类 实验.doc

课程名称:人工智能概论实验名称:使用正向推理进行动物分类实验.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

江南大学信息工程学院实验报告课程名称:人工智能概论实验名称:使用正向推理进行动物分类实验日期:07.04.19班级:计科0402姓名:梅蓉蓉学号:02.实验报告要求:1。实验目的2。实验要求3。实验步骤4。程序清单5。运行情况6。实验体会1。实验目的通过实验掌握正向推理的方法,同时掌握PROLOG语言的基本语法。2。实验要求写出程序并进行调试,运行出正确的结果。3。实验步骤①写出源②对源程序进行调试并修改错误③运行程序得出正确结果4。程序清单domainss=symbolyn=yes;nodatabasexpositive(s,s)xnegative(s,s)predicatesanimal_is(s)is_is(s)positive(s,s)negative(s,s)ask(s,s,yn)remember(s,s,yn)clear_facts.clausesanimal_is(cheetah):-it_is(mammal),it_is(carnivore),positive(has,tawny_color),positive(has,dark_spots).animal_is(tiger):-it_is(ungulate),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(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):-positive(has,pointed_teeth),positive(has,claws),positive(has,foorward_eyes).it_is(ungulate):-it_is(mammal),positive(has,hooves).it_is(ungulate):-it_is(mammal),positive(does,chew_cud).positive(X,Y):-xpositive(X,Y),!.positive(X,Y):-not(xnegative(X,Y)),!,ask(X,Y,yes).negative(X,Y):-xnegative(X,Y),!.negative(X,Y):-not(xpositive(X,Y)),!,ask(X,Y,no).ask(X,Y,yes):-!,write(X,”it“,Y,”?”),readln(Reply),frontchar(Reply,’y’,_),remember(X,Y,yes).ask(X,Y,no):-!,write(X,”it“,Y,”?”),readln(Reply),frontchar(Reply,’n’,_),remember(X,Y,no).remember(X,Y,yes):-assertz(xpositive(X,Y)).remember(X,Y,no):-assertz(xnegative(X,Y)).clear_facts:-retract(xpositive(X,Y)),fail.clear_facts:-retract(xnegative(X,Y)),fail.clear_facts:-write(“Allfa