人工智能第2章基于图的知识表示与图搜索技术(课后部分习题答案)
解:用四元组(f,w,s,g)表示状态,其中f表示猎人,w表示狼,s表示羊,g表示草,其中每个元素都可以为0或1,表示在左案,1表示在右岸。四元组可表示的状态共有16种,其中合法状态为10种:(0,0,0,0)(0,0,0,1)(0,0,1,0)(0,1,0,0)(0,1,0,1)(1,0,1,0)(1,0,1,1)(1,1,0,1)(1,1,1,0)(1,1,1,1)初始状态为(0,0,0,0)目标状态为(1,1,1,1)共有其中操作:从左岸到右岸三种,从右岸到左岸四种方案有两种:p2→q0→p3→q2→p2→q0→p2p2→q0→p1→q2→p3→q0→p2解:用(a,b,c)来表示火柴的状态,用0表示火柴朝下,1表示朝上,三根火柴共有八种状态(0,0,0)(0,0,1)(0,1,0)(0,1,1)(1,0,0)(1,0,1)(1,1,0)(1,1,1)操作有两个:fab:将火柴a和b倒置fbc:将火柴b和c倒置初始状态:(1,1,1)目标状态:(0,0,0)状态图如下所示:从图上看,没有从初始状态到目标状态的联通路径,所以此问题没有解。解:引入一个三元组(q0,q1,q2)来描述总状态,开状态为0,关状态为1,全部可能的状态为:Q0=(0,0,0);Q1=(0,0,1);Q2=(0,1,0)Q3=(0,1,1);Q4=(1,0,0);Q5=(1,0,1)Q6=(1,1,0);Q7=(1,1,1)。翻动琴键的操作抽象为改变上述状态的算子,即F={a,b,c}a:把第一个琴键q0翻转一次b:把第二个琴键q1翻转一次c:把第三个琴键q2翻转一次问题的状态空间为问题的状态空间图如下页所示:从状态空间图,我们可以找到Q5到Q7为3的两条路径,而找不到Q5到Q0为3的路径,因此,初始状态“关、开、关”连按三次琴键后只会出现“关、关、关”的状态。不考虑代价,广度优先搜索过程:A-﹥B-﹥C-﹥D-﹥E-﹥F,解为:A-﹥C-﹥F深度优先搜索过程为:A-﹥C-﹥G-﹥M-﹥P-﹥O-﹥L解为:A-﹥C-﹥G-﹥L分支界限法搜索过程:A-﹥B-﹥C-﹥G-﹥E-﹥L解为:A-﹥C-﹥G-﹥L瞎子爬山法搜索过程:A-﹥B-﹥E-﹥J解为:A-﹥B-﹥E-﹥J解树有3个:ABDI,7;ABEJK,7;ACF5(最优解)解: