资源描述:
《人工智能实验指导》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、人工智能实验指导实验一传教士和野人渡河问题口的:利用己经学习的某种搜索算法,编写状态空间搜索程序内容:使用某个编程工具编写解决问题的程序耍求:程序必须把状态空间的搜索路径输出算法参考:1,OPEN:=(s),f(s):=g(s)+h(s);2,LOOP:IFOPEN=()THENEXIT(FAIL);3,n:=HRST(OPEN);4,IFGOAL(n)THENEXIT(SUCCESS);5,REMOVE(n,OPEN),ADD(n,CLOSED);6,EXPAND(n)计算f(n,mj):=g(n,mi)+h(mi);ADD(mj,OPEN
2、),标记1旳到n的指针;IFf(n,mk)3、(1)在P1E代码窗口输入以下事实和规则:not_(l,0).not_(0,l).and_(0,0,0).and_(0,1,0).and_(1,0,0).and_(l,l,l).or_(0,0,0).or_(0,l,l).or_(1,0,1).or_(l,l,l).xor(Input1,Inuput2,Output):-not_(Inputl,N1),not_(Input2,N2),and_(Input1,N2,N3),and_(lnput2,N1,N4),or_(N3,N4,Output).⑵在Dialog窗口中输入类似于”xor(l,0,
4、X)「这样的目标语句让PIE求解,观察求解的结果是否正确。实验三递归规则实现目的:利用Prolog实现简单路径判断。内容:判断给定图的任意结点间路径是否存在。耍求:使用递归方法定义路径。给定图:示例程序:road(a,b).road(a,c).road(b,d).road(c,d).road(d,e).road(b,e).path(X,Y):-road(X,Y).path(X,Y):-path(X,Z),path(Z,Y).实验四家庭关系模拟程序H的:加深学生对Prolog语言推理的理解。内容:编写,调试,运行一个简单逻辑关系推理程序。要求:
5、能够止确显示出家族中人员Z间的关系。理解逻辑程序的特点。示例程序:(1)在visualprolog中新建一个项目,这里名字以family1为例,注意U1Strategy选项中要选择Console项。(2)选择Build-Build命令,在项目窗口中找到main.pro文件,将其中代码改成:implementmainopencoreconstantsclassName=classVersion="SJustDate:2007-09-24$$Revision:1$".clausesclasslnfo(className,classVersion)
6、.domainsgender=female();male().classfacts-familyDBperson:(stringName,genderGender).parent:(stringPerson,stringParent).classpredicatesfather:(stringPerson,stringFather)nondetermanyflow.clausesfather(Person,Father)parent(Person,Father),person(Father,male())・classpredicatesgra
7、ndFather:(stringPerson,stringGrandFather)nondeterm(o,o)・clausesgrandFather(Person,GrandFather)parent(Person,Parent),father(Parent,GrandFather).classpredicatesancestor:(stringPerson,stringAncestor)nondeterm(i?o).clausesancestor(Person,Ancestor)parent(Person,Ancestor).ancesto
8、r(Person,Ancestor)parent(Person,Pl),ancestor(P1,Ancestor)・classpredicatesreconsult