荒屋真二著 「人工知能概論 (第2版)」 共立出版 2004.10.1
<Topページ> <荒屋研究室へ>
演習問題の解答例(第1〜5章) 最終更新:2004.10.1
第1章
演習問題なし
第2章
2.1 水差し問題の状態空間は図2.3 の有向グラフで表すことができた.この図からすべての解を求めよ.| (0,0) (4,0) (1,3) (4,3) (0,3) (3,0) (3,3) (4,2) (0,2) (2,0) (0,0) (4,0) (4,3) (0,3) (3,0) (3,3) (4,2) (0,2) (2,0) (0,0) (4,0) (1,3) (1,0) (0,1) (4,1) (2,3) (2,0) 以下省略 |
| (0,0) (0,3) (3,0) (3,3) (4,2) (0,2) (2,0) |
例えば,次のような迷路問題を考えてみよ。横型探索では最適経路が得られるが,縦型探索では得られない。![]() <縦型探索> ![]() <横型探索> ![]() |
| n = 1, 2, 3, ・・・ として,深さ n までの縦型探索をゴールが見つかるまで繰り返し実行する方法である。深さ最小の解を少ないメモリ消費で見つけることができる。 |
![]() |
<最良優先探索法> <山登り法>![]() |
| ビーム探索法とは,A*アルゴリズムにおいて,展開されていない節点を全て保存するのではなく,一定数(ビーム幅)の最良節点のみを保存する方法である。使用メモリの増大を防げるが最適解は保証されなくなる。ビーム幅を1とすると山登り法と同じなる。 反復深化A*アルゴリズムとは,A*アルゴリズムにおいて,発見的関数の値がある閾値(しきい値)以上になった節点の先の探索を中止するようにし,ゴールが見つかるまで閾値を徐々に大きくしていく方法である。 |
![]() |
| h(p) = 0+2+0+1+1+0+0+1 = 5 f(p) = g(p)+h(p) = 3+5 = 8 |
![]() |
![]() |
第3章
3.1 図3.4のボール渡しプログラムにおいて,同図(b) の初期状態を次のように変えて実行した場合の推論過程を図3.5にならって書け.
1: (person ^name shiro ^has nil)
2: (person ^name saburo ^has ball)
3: (person ^name jiro ^has nil)
4: (person ^name ichiro ^has ball)
| ルールは,r1, r3, r2 の順に発火する。競合集合は,{ (r1,4,3), (r3,2,1) }, { (r3,2,1) }, { (r2,6,7) }, { } と変化する。WM の変化は省略する。 |
3.2 図3.6ではルールr2とr3を省略しているが,それらのルールを実際に書け.
| (p r2 (person ^name jiro ^has {<x> <> nil } ) (person ^name saburo ^has nil) --> (modify 1 ^has nil) (modify 2 ^has <x>)) (p r3 (person ^name saburo ^has {<x> <> nil } ) (person ^name shiro ^has nil) --> (modify 1 ^has nil) (modify 2 ^has <x>)) |
3.3 競合集合CSが次のような場合,OPS5のLEX戦略ではどのインスタンシエーションが選択されるか.ただし,ルールはra, rb, rcの順に書かれており,それらの条件のきつさはすべて同じであるものとする.
(a) CS ={(ra 2 3), (rb 4 3), (rc 2 4)}
(b) CS ={(ra 2 4),(rb 4 1), (rc 2 4)}
| (a) (rb 4 3) (b) (ra 2 4) |
第4章
4.1 次のような知識を意味ネットワークおよびフレームを用いて表現せよ.
@ ピーコはカナリヤである.
A カナリヤは鳥である.
B 鳥には翼がある.
C カナリヤの色は黄色である.
D ピーコは1歳である.
![]() |
4.2 図4.1の意味ネットワークに対して,次のような質問を表す質問ネットワークを作り,部分照合法を適用せよ.
@ チワワの人気は何位ですか.
A チワワの性格は人なつこいですか.
![]() |
4.3 講義室C32やC33はC棟にあり,C棟やD棟は大学敷地にあることを,フレームを用いて表現せよ.
![]() |
第5章
5.1 英文"The apple is red."を,命題論理および述語論理で記述せよ.
| 命題論理: p 述語論理:∀x [ apple(x) → red(x) ] |
5.2 次のペアは単一化可能か.可能ならばそのときの変数代入を求めよ.
ただし,x, y, z は変数とする.
@ p(x, orange) p(apple, y)
A p(x, y) q(z)
B p(x, y) p(q(z), r(y))
| @ x = apple, y = orange A単一化不可能 (述語が異なるため)) B単一化不可能 (y = r(y) = r(r(y)) = r(r(r(y))) = ・・・ となるため) |
5.3 次の論理式を節形式に変換せよ.ただし,x, y, z は変数とする.
@ ∀x∀y∀z [(p(x, y) ∧ q(y, z)) → r(x, z)]
A 〜∃x getup(Taro, x)
B ∀x [(p(x) ∧ q(x)) → (r(x) ∨ (∃y∀z (s(y, z) → t(x, y) ∨ u(z))))]
| @ 〜p(x, y)∨〜q(y, z)∨r(x, z) A 〜getup(Taro, x) B 〜p(x)∨〜q(x)∨r(x)∨〜s(S1, z)∨t(x, S1)∨u(z) ただし,S1はスコーレム定数 |
5.4 次の問題をホーン節で記述し,SNLによる導出により解け.
「動物を治療できるのは獣医である.獣医になるにはその資格が必要である.花子は獣医の資格をもっている.タマは猫であり,猫は動物である.さて,花子はタマを治療できるだろうか.」
| @ 〜veterinarian(x1)∨〜animal(x2)∨can-cure(x1, x2) A 〜has-qualification-of-vet(x3)∨veterinarian(x3) B has-qualification-of-vet(Hanako) C cat(Tama) D 〜cat(x4)∨animal(x4) E can-cure(Hanako, Tama) ・・・・・ 証明したい命題 ![]() |
5.5 図5.5 のプログラムにおいて図5.7 の質問に対する答えはどうなるか.
| @ yes A X = kazuko; X = masakazu B X = masakazu C X = kazuko, Y = ichiro; X = masakazu, Y = ichiro; ・・・以下省略 D X = jiro; X = masakazu E X = jiro |
5.6 「叔父」および「叔母」の定義をPrologで書け.
| uncle(X, Y):-brother(X, Z), parent(Z, Y). aunt(X, Y):-sister(X, Z), parent(Z, Y). |