zoukankan      html  css  js  c++  java
  • 人工智能原理及其应用习题3.5

    3.5  有一农夫带一条狼,一只羊和一筐菜欲从河的左岸乘船到右岸,但受下列条件限制:(1)船太小,农夫每次只能带一样东西过河;(2)如果没有农夫看管,则狼要吃羊,羊要吃菜。请设计一个过河方案,是的农夫,狼,羊都能不受损失地过河,画出相应的状态空间图。

           提示: (1)用四元组(农夫,狼,羊,菜)表示状态,其中每个元素都为0或1,用0表示在左岸,用1表示在右岸。

                  (2)把每次过河的一种安排作为一种操作,每次过河都必须有农夫,因为只有他可以划船。

    解:四元组S=(S1,S2,S3,S4)=(农夫,狼,羊,菜)表示状态

          其中,S1表示:(1)当农夫的位置=0时农夫没过河;(2)当农夫的位置=1时农夫已过河。

                 S2表示:(1)当狼的位置=0时狼没过河;(2)当狼的位置=1时狼已过河。

                 S3表示:(1)当羊的位置=0时羊没过河;(2)当羊的位置=1时羊已过河。

                 S4表示:(1)当菜的位置=0时菜没过河;(2)当菜的位置=1时菜已过河。

          满足题意的过河方案为:

               方案一: (1)农夫和羊从左岸到右岸,留下羊,农夫单独返回左岸;

                            (2)农夫和菜从左岸到右岸,留下菜,农夫带上羊返回左岸;

                            (3)农夫和狼从左岸到右岸,留下狼,农夫单独返回左岸;

                            (4)农夫和羊从左岸到右岸。

               相应状态图:(0,0,0,0)->(1,0,1,0)->(0,0,1,0)->(1,0,1,1)->(0,0,0,1)->(1,1,0,0)->(0,1,0,1)->(1,1,1,1).

               方案二:(1)农夫和羊从左岸到右岸,留下羊,农夫单独返回左岸;

                           (2)农夫和狼从左岸到右岸,留下狼,农夫带上羊返回左岸;

                           (3)农夫和菜从左岸到右岸,留下菜,农夫单独返回左岸;

                           (4)农夫和羊从左岸到右岸。

               相应状态图:(0,0,0,0)->(1,0,1,0)->(0,0,1,0)->(1,1,1,0)->(0,1,0,0)->(1,0,0,1)->(0,1,0,1)->(1,1,1,1).

  • 相关阅读:
    todo: SDC
    2017-2018-2 实验四《Android程序设计》实验报告
    《Java程序设计》第十周课下作业
    2017-2018-2 实验三 《Java面向对象程序设计》实验报告
    《Java程序设计》第九周学习总结
    结对编程练习_四则运算(第二周)
    《Java程序设计》第八周学习总结
    2017-2018-2 实验二 《Java面向对象程序设计》实验报告
    结对编程练习_四则运算(第一周)
    《Java程序设计》第七周学习总结
  • 原文地址:https://www.cnblogs.com/group-tangling/p/4342149.html
Copyright © 2011-2022 走看看