3.2 最適探索(アルゴリズム)

Download Report

Transcript 3.2 最適探索(アルゴリズム)

Information
 このスライドは「イラ
ストで学ぶ人工知能概
論」を講義で活用した
り,勉強会で利用した
りするために提供され
ているスライドです
STORY 探索(2)
 ホイールダック2号は気づいた.深さ優先探索や幅優先
探索ではゴールを見つけるまでに無駄に長い距離を移動
しなければならないことに.ゴールがどこにあるのかわ
からないときは仕方ないが,ゴールの位置がわかってい
るときもある.わかっていない場合にしても,できるだ
け短い距離を移動してゴールに到達したい.しらみつぶ
しで探索するのではなく,効率的にゴールに向かってみ
ようと,ホイールダック2号は思った.
 できるだけ短い時間,もしくは,短い距離でゴールに
たどり着く経路を見つけたい.どうやってそのような経
路を見つけることができるのだろうか.
仮定 探索(2)
 ホイールダック2号は迷路の完全な地図を持っているも
のとする.
 ホイールダック2号は迷路の中で自分がどこにいるか認
識できるものとする.
 ホイールダック2号は連続的な迷路の空間から適切な離
散状態空間を構成できるものとする.
 ホイールダック2号は各状態間の移動にかかるコストと
状態の評価推定値の両方もしくはどちらかを知っている
ものとする.
 ホイールダック2号は物理的につながっている場所・状
態には意図すれば確定的に移動することができるものと
する.
Contents
 3.1 最適経路の探索とヒューリスティックな知識
 3.2 最適探索
 3.3 最良優先探索
 3.4 A*アルゴリズム
 3.5 迷路を最適経路で抜けるホイールダック2号
引用元: https://www.jrodekake.net/eki/pdf/ubn.pdf
経路探索問題
関空に行こう!
関空へ!!
ヤッター!
三重経由で!
これでいいのか?
スタートからゴールまでのコストが
最小になるように,最適な経路を探
3.1.1 経路のコスト
コストの和を
最小化
3.1.2 ヒューリスティックな知識とし
ての予測評価値
f^(s)
g^(s)
c
c
h^(s)
Contents
 3.1 最適経路の探索とヒューリスティックな知識
 3.2 最適探索
 3.3 最良優先探索
 3.4 A*アルゴリズム
 3.5 迷路を最適経路で抜けるホイールダック2号
3.2 最適探索
 ヒューリスティックな知識(予測評価値)を用いず,
コストの和を最小にする最適経路を確実に発見する
ための手法.
g^(s)
c
c
ここをモニタリングする!
3.2 最適探索(アルゴリズム)
3.2.2 最適探索の実行例
実行してみましょ
う!
演習3-1 最適探索
 下のグラフにおいてSからスタートして最適探索で探
索せよ.探索中の様子をオープオンリストで示し,
最終的に得られる経路を示せ.
(3)
1
A
(1)
3
B
S
(1)
5
C
(4)
(3)
1
D
2
1 (0) 5
G
5
Contents
 3.1 最適経路の探索とヒューリスティックな知識
 3.2 最適探索
 3.3 最良優先探索
 3.4 A*アルゴリズム
 3.5 迷路を最適経路で抜けるホイールダック2号
3.3.1 最良優先探索のアルゴリズム
 くヒューリスティックな知識としての予測評価値を
頼りに探索を進めるのが最良優先探索(best-first
search) である.
h^(s)
ここをモニタリングする!
3.3.1 最良優先探索のアルゴリズム
3.3.2 最良優先探索の実行例
実行してみましょ
う!
演習3-2 最良優先探索
 下のグラフにおいてSからスタートして最良優先探索
で探索せよ.探索中の様子をオープオンリストで示
し,最終的に得られる経路を示せ.
(3)
1
A
(1)
3
B
S
(1)
5
C
(4)
(3)
1
D
2
1 (0) 5
G
5
Contents
 3.1 最適経路の探索とヒューリスティックな知識
 3.2 最適探索
 3.3 最良優先探索
 3.4 A*アルゴリズム
 3.5 迷路を最適経路で抜けるホイールダック2号
3.4.1 A*アルゴリズム
 現在の状態までにかかったコストg^(s) と,ゴールま
でに将来かかるであろう予測評価値h^(s) の二つをバ
ランスよく用いて,探索を効率化する手法
ここをモニタリングする!
f^(s)
g^(s)
c
c
h^(s)
3.4.1 A*アルゴリズム
3.4.2 A*アルゴリズムの実行例
実行してみましょ
う!
3.4.3 A*アルゴリズムにおける
最適解の保証
 A*アルゴリズムではh^(s) ≤ h(s) の関係が成り立つと
きには,最適解が必ず得られることが保証されてい
る.
 逆にh^(s) > h(s) の場合は最適解が得られることが保
証されない.
 ゆえに,適切な予測評価値がわからない場合につい
ては,推定値は小さめに設定する方がよいと考えら
れる.
安心!!!!
演習3-3 A*アルゴリズム
 下のグラフにおいてSからスタートしてA*アルゴリズ
ムで探索せよ.探索中の様子をオープオンリストで
示し,最終的に得られる経路を示せ.
(3)
1
A
(1)
3
B
S
(1)
5
C
(4)
(3)
1
D
2
1 (0) 5
G
5
Contents
 3.1 最適経路の探索とヒューリスティックな知識
 3.2 最適探索
 3.3 最良優先探索
 3.4 A*アルゴリズム
 3.5 迷路を最適経路で抜けるホイールダック2号
3.5 迷路を最適経路で抜ける
ホイールダック2 号
 辺にコストc(a)を置
く
 予測評価値h^(s)は
ゴールまでの壁を
無視した最短距離
 A*アルゴリズムが
最適解を出す条件
を満たす.
解いてみよう
最適探索と最良探索,A*
 最適探索
 経路のコストは明確にわかってい
る.
 ノードの推定コストはわからない.
 最適な経路が必ず求められる.
 最良優先探索
最適
 経路のコストがわからない(事後
探索
的にしかわからない).
 ノードの推定コストがわかる.
最良
優先
 最適な経路が求められる保証はな
い.
探索
 A*探索
A*探索
 経路のコストがわかっている.
 ノードの推定コストはわかってい
る.
 最適な経路は一定の条件の下で保
証される.
経路
コスト
情報
ノード
推定
コスト
最適性
の保証
○
×
○
×
○
×
○
○
△
演習3-4
 深さ優先探索,幅優先探索,最適探索,最良優先探
索,A*アルゴリズムはオープンリストにおける状態
の管理手法の違いによって特徴付けられる.これら
のオープンリストにおける状態の管理手法の違いを
説明せよ.
第3章のまとめ
 グラフに経路のコストを付与し最適経路探索問題の
基礎について学んだ.
 最適探索のアルゴリズムについて学んだ.
 最良優先探索のアルゴリズムについて学んだ.
 A*アルゴリズムについて学び,アルゴリズムを実行
した.