3.5--农夫过河问题

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

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

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

解:

先规则如下 S(农夫,狼,羊,菜),0表示在左岸,1表示在右岸。所以初始状态可以表示为S0(0,0,0,0),目标状态为S1(1,1,1,1)。

     从S0到S1过程为:

方法一: S0(0,0,0,0)->(1,0,1,0)->(0,0,1,0)->(1,1,1,0)->(0,1,0,0)->(1,1,0,1)->(0,1,0,1)->S1(1,1,1,1)

方法二: S0(0,0,0,0)->(1,0,1,0)->(0,0,1,0)->(1,0,1,1)->(0,0,0,1)->(1,1,0,1)->(0,1,0,1)->S1(1,1,1,1)

 

posted @ 2015-03-23 16:33  吴云龙1991  阅读(741)  评论(0)    收藏  举报