机器人搬箱子和斑马问题

实验报告探讨了使用谓词逻辑、Prolog和Python解决机器人搬盒子问题及斑马问题。通过谓词公式、子句集和归结原理,实现了逻辑推理和问题求解。在ModelArts中,用Python进一步实现了斑马问题的逻辑。实验加强了对人工智能算法和搜索策略的理解。

理解谓词逻辑知识表示的方法,掌握一阶谓词逻辑知识表示的基本原理,能够利用归结原理求解简单问题。掌握Prolog编程环境,熟悉逻辑推理编写过程。

主要知识点:谓词、原子公式、谓词公式、子句、子句集、空子句、归结原理。

重点:谓词公式、子句集和归结原理的实现。

难点:归结原理的实现。

实验内容:

实验项目1

机器人搬盒子问题:设在一个房间里,有一个机器人ROBOT ,一个壁橱ALCOVE,一个积木块BOX,两个桌子AB。开始时,机器人ROBOT在壁橱ALCOVE旁边,且两手空空,桌子A放着积木块BOX,桌子B是空的。机器人可把积木块BOX从一种状态桌子A上变换成另一种状态桌子B上,然后回到壁橱。用归结原理方法求解该问题?

 

实验要求:

1.用谓词公式表示问题的初始状态、目标状态以及机器人操作;

2.将谓词公式转换为子句集;

3. 利用归结原理对子句集中的子句进行归结。

4. Prolog实现机器人搬盒子的谓词逻辑。

5. Python或其他编程语言实现该问题的求解。

 

实验项目2

       爱因斯坦逻辑难题(斑马问题):5个不同国家且工作各不相同的人分别住在一条街上的5所房子里,每所房子的颜色不同,每个人都有自己养的不同宠物,喜欢喝不同的饮料。根据以下信息,你能告诉我哪所房子里的人养斑马,哪所房子里的人喜欢喝矿泉水吗?

1.     英国人住在红色的房子里

2.     西班牙人养了一条狗

3.     日本人是一个油漆工

4.     意大利人喜欢喝茶

5.     挪威人住在左边的第一个房子里

6.     绿房子在白房子的右边

7.     摄影师养了一只蜗牛

8.     外交官住在黄房子里

9.                  

 

实验要求:

1. Prolog实现斑马问题的逻辑推理。

2. 在华为云的ModelArts中用Python实现该问题的求解。

 

思考题:

  1. 如何将谓词公式转换为子句集?

1)消去蕴含等价式
2)移动否定符号
3)变量标准化
4)消去存在量词
5)化为前束型
6)化为skolem标准型
7)略去全称量词
8)消去合取词,把母式用子句集表示
9)字句变量标准化

2. 谓词公式与子句集等值吗?

1)谓语公式与它的子句集不是总等价的。

2)在谓语公式不可满足的情况下是等价的。

实验步骤:

(一):项目一:

db1f8af96f4440baae13a4e382cc3c48.png

0d8b703310124fd0a13b3137310e87cd.png 

66adf0c03dc84ec099b68a3b1e849cbf.png 

 

4. 用Prolog实现机器人搬盒子的谓词逻辑。

  1. table(a).  
  2. table(b).  
  3. empty(robot).  
  4. at(robot,c).  
  5. on(box,a).  
  6. goto(robort,a):-at(robot,c).  
  7.   
  8. at(robot,a).  
  9. pick(a):-empty(robot),on(box,a),table(a).  
  10.   
  11. on(box,robot).  
  12. empty(a).  
  13. goto(robot,b):--at(robot,a).  
  14.   
  15. at(robot,b).  
  16. set_down(b):-at(robot,b),on(box,robot),table(b).  
  17.   
  18. empty(robot).  
  19. on(box,b).  
  20. at(robot,b).  
  21. goto(robot,c):-at(robot,b),on(box,b).  
  22.   
  23. at(robot,c).  <
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

恶心猫charming

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值