- 19
- 0
- 约5.17万字
- 约 25页
- 2021-11-26 发布于上海
- 举报
《人工智能》
实验大作业
实验题目: 归结原理
专业 信息与计算科学
年级 091001
姓名 马昊
学号 091001106
指导老师 时华
日期 2012-12-5
实验三归结原理
一、实验目的
在本实验中,主要熟悉和掌握归结原理的基本思想和基本方法,
通过实验培养了我们利用逻辑方法表示知识, 并掌握采用机器推理来
进行问题求解的基本方法。
二、实验要求
1.熟悉归结原理的基本思想和归结否证的步骤;
2.本实验 JAVA 语言编程实现实验内容;
3.利用所学的知识及实验结果,来完成实验报告的各项内容。
三、实验背景知识
归结原理是一种推理规则。 从谓词公式转化为子句集的过程中看
出,在子句集中子句之间是合取关系, 其中只要有一个子句不可满足,
则子句集就不可满足。 若一个子句集中包含空子句, 则这个子句集一
定是不可满足的。归结原理就是基于这一认识提出来的。
他的原理就是: P-Q,Q-R 则 P-R 由于 P-Q就是¬ P∨Q 而
Q-R就是¬ Q∨R所以,他相当于将 Q和¬ Q合并。也就是说, P
∨{ ∑1} 与~P∨{ ∑2} 可以归结为 { ∑1} ∨{ ∑2} 其中∑ 1, ∑2 是文字的
集合归结否证包含以下步骤:
(1)把前提或公理转换成子句形式;
(2 )把求证目标的否定的子句形式加到公理集合中;
(3 )对所有这些子句进行归结,产生它们的逻辑结果子句;
(4 )用产生空子句的方法来得出矛盾;
(5 )否定目标的否证在用于产生空子句的代换下为真。
如何把前提或公理化为子句形式是进行归结的前提, 其过程包含
如下步骤:
(1)消去蕴涵符号
用~ P∨Q替换 P→Q
(2)减少否定符号的辖域
每个否定符号~最多只作用在一个谓词符号上
(3)对变量标准化
每个变量仅受一个量词作用
(4 )消去存在量词
若存在量词前没有全称量词,则直接消去;否则,要 Skolem。化。
(5)化为前束范式
前束范式:一个公式,如果量词均非否定地出现在公式
最前面, 其辖域延伸到整个公式的末尾, 且在公式中仅含
有联结词~,∨,∧,则称此种形式为前束范式。
前束范式 = (前缀)(母式)
(6)化母式为合取范式
(7)消去全称量词
(8)消去连接词符号∧
用{A ,B}替代( A∧B)
(9)将分离的变元归一化
四、实验内容
1.问题描述: 四对夫妇中,王结婚时,周送了礼;周和钱是同一
排球队的队员;李的爱人是陈的爱人的表哥;陈夫妇与邻居吵架时,
徐、周、吴的爱人都去助战;李、徐、周结婚前住在同一宿舍,试用
归结原理求王、周、钱、陈、李、徐、吴、孙几人谁和谁是夫妇。
2. 实验源代码:
import java.lang.*;
publicclass GuessCouple2{
/** 数据类型 */
原创力文档

文档评论(0)