prolog实验报告
更新时间:2024-05-09 12:26:01 阅读量: 综合文库 文档下载
华北电力大学
实 验 报 告
| |
实验名称 PROLOG语言练习与编程上机实验 课程名称 人工智能及应用
| |
专业班级: 软件0802 学生姓名:龚泽滢
学 号: 200809020205 成 绩:
指导教师:朱永利 实验日期: 11.03
(实验报告如打印,纸张用A4,左装订;页边距:上下2.5cm,左2.9cm, 右2.1cm;字体:宋体小四号,1.25倍行距。) 验证性、综合性实验报告应含的主要内容:
一、实验目的及要求 二、所用仪器、设备 三、实验原理 四、实验方法与步骤 五、实验结果与数据处理
六、讨论与结论(对实验现象、实验故障及处理方法、实验中存在的问题等进行分析和讨论,对实验的进一步想法或改进意见)
七、所附实验输出的结果或数据
设计性实验报告应含的主要内容:
一、设计要求 二、选择的方案 三、所用仪器、设备 四、实验方法与步骤 五、实验结果与数据处理 六、结论(依据“设计要求”) 七、所附实验输出的结果或数据
* 封面左侧印痕处装订
华 北 电 力 大 学 实 验 报 告
一、实验目的及要求 1、 熟悉并掌握trinic prolog的编程环境、prolog语言的回溯、递归技术和表处理技术; 2、 具体输入课堂上讲过的member(X,List)、append(L1,L2,L)和 findpairs等prolog程序 3、 运用prolog及其相关技术,编写并调试求解探宝、摆渡和梵塔问题的程序(三选二,摆渡问题必做)。要求实验报告中包括:程序及其注释和说明、console表单中的程序运行结果。 二、所用仪器、设备 PC台式机和trnic prolog编译软件 三、实验原理 1、 prolog本身自带推理机,其回溯、递归技术和表处理技术可简化复杂问题求解。 2、 trinic prolog的跟踪、设断点对于调试程序是非常有用的。 四、实验方法与步骤 1、 说明用实例如何观察并理解回溯机制 2、 如何用断点、跟踪以及显示调试prolog程序 五、求解的问题与程序 汉诺塔问题: /*程序的入口 N代表几个盘子*/ hanoi(N):-move(N,left,middle,right),nl,nl. /*递归出口,当盘子只有一个时从A杆移动到C杆,调用cut停止回溯*/ move(1,A,_,C):- inform(1,A,C),!. move(N,A,B,C):- N1 is N-1, move(N1,A,C,B), /*通过递归调用n-1个盘子重A杆通过C杆移动到B杆第 页 共 页
华 北 电 力 大 学 实 验 报 告
*/ inform(N,A,C), /*将将A杆的最后一个盘子移动到C杆上*/ move(N1,B,A,C). /*将B杆上的N-1个盘子,通过A杆移动到C杆上*/ inform(N,Loc1,Loc2):- writelist(['Move disk', N, 'from', Loc1, 'to', Loc2]), nl. writelist([]). writelist([H|T]):- write(H), write(' '), writelist(T). 农夫过河问题 opposite(s,n). opposite(n,s). safe_goat(X,_,X,_). safe_cabbage(X,_,_,X). safe_goat(F,X,Y,_):-opposite(X,Y). safe_cabbage(F,_,X,Y):-opposite(X,Y). is_peaceful(F,W,G,C):-safe_goat(F,W,G,C),safe_cabbage(F,W,G,C). transform(location(X,W,G,C),location(Y,W,G,C)):-opposite(X,Y). transform(location(X,X,G,C),location(Y,Y,G,C)):-opposite(X,Y). transform(location(X,W,X,C),location(Y,W,Y,C)):-opposite(X,Y). transform(location(X,W,G,X),location(Y,W,G,Y)):-opposite(X,Y). member(X,[X|_]). member(X,[_|T]):-member(X,T). legal_states(location(F0,W0,G0,C0),location(F,W,G,C),States,X):- transform(location(F0,W0,G0,C0),location(F1,W1,G1,C1)), is_peaceful(F1,W1,G1,C1), not(member(location(F1,W1,G1,C1),States)),!, legal_states(location(F1,W1,G1,C1),location(F,W,G,C),[location(F1,W1,G1, legal_states(location(F,W,G,C),location(F,W,G,C),L,L). 第 页 共 页
C1)|States],X). 华 北 电 力 大 学 实 验 报 告
write_state(location(X,W,G,C),location(Y,W,G,C)):-!,write(\farmer crosses the river himself\ write_state(location(X,X,G,C),location(Y,Y,G,C)):-!,write(\farmer crosses the river with the wolf\ write_state(location(X,W,X,C),location(Y,W,Y,C)):-!,write(\farmer crosses the river with the goat\ write_state(location(X,W,G,X),location(Y,W,G,Y)):-!,write(\farmer crosses the river with the cabbage\ write_actions([]). write_actions([H1,H2|T]):-write_state(H1,H2),write_actions([H2|T]). boat(location(F0,W0,G0,C0),location(F,W,G,C)):- legal_states(location(F0,W0,G0,C0),location(F,W,G,C),[location(F0,W0,G0,C0)],X),write_actions(X). 六、讨论与结论(对prolog的求解过程、实验验证情况、实验中出现的问题和程序调试与运行情况等进行分析和讨论,提出对实验的进一步想法或改进意见) Prolog语言虽然已经不是第一次接触,但以前仅仅停留在能够看懂程序的地步。在做实验时,我切切实实的感受到了自己的严重不足。虽然能够看懂程序,但要自己动手写时一点思路都没有,不知从何处下手。 按着以前的学习的内容,本着把事实说清楚的思路,我写了一个农夫过河的问题。在写的过程中才发现其中的困难之处——逻辑性。 虽然把一些事实陈述清楚了,但仍然难以克服其中内在的逻辑关系,以至于在调试过程中出现了无限死循环这样的错误。 在最后调试农夫过河问题时,仍存在一些错误:只输出了一个结果,而且这个结果也并不是完全正确。也许是接触prolog时间太短,还不能完全的掌握prolog语言的调试方法。因此我还需要好好的学习prolog语言。 对于prolog语言的回溯机制,虽然有了一定的理解,但还是远远的不够。面对一些简单的问题,还能理解其中的含义,但是对于复杂的问题,我依然感到束手无策。所以我还需要加强对prolog语言机制的理解。 七、所附实验输出的结果或数据 运行结果 第 页 共 页
正在阅读:
prolog实验报告05-09
姜大明同志讲话05-20
输液小学优秀作文06-15
五年级下册语文乐园11-26
阿尔及利亚2022年财政法案04-11
八年级物理导学案--平面镜成像11-30
用于银行贷款2013年经济运行分析系统与监测预警系统项目可行性研05-08
医疗机构申请校验延续须知08-24
高考作文指导:六招令你的文章文采飞扬09-03
《国际货运代理与报关实务》实训指导书10-10
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 实验
- 报告
- prolog
- 大学生寝室人际关系调查问卷
- 浙江万里学院文件 - 21754
- EQ关于杜绝销售人员私自代收货款现象的通知
- 推荐下载:增资扩股协议
- 蛋白质化学
- 【新版】人教版物理九年级15.5串、并联电路中电流的规律导学案
- 2012年小学语文毕业模拟试卷(三)
- 山东省市政园林安全B证试题(一)
- 公司未来3年产品规划和运营方案781121915
- 服装行业企业企业市场竞争策略分析
- 搬运机械手的设计
- 小学三年级音乐下册第1课 春天的歌
- 学院入党积极分子培训班工作总结(多篇范文)
- 泰勒公式在若干数学分支中的应用
- 日处理20万吨城镇污水处理厂设计
- 推荐下载 乡镇全套在党委换届工作动员会议上的讲话-最新(3)
- 古人有云:“积善三年,知之者少,为恶一日,闻于
- 哪位大神有甘肃省10000名下基层考试真题啊?给小弟发一份呗
- 海底捞 案例分析 人力资源管理
- 中国新闻出版行业年度授信政策指引行业研究报告20112012年