人工知能 ミニマックス枝狩: オープンリストを表示する Lecture 7b アルファ・ベータ枝刈 1 2 先手が選択 始ノードSで先手は二つの枝のうちどちらかを選択する: 探索プログラムはまずSをopenListにいれ、解かどうか調べる Sは解ではないので、これをopenListから出して、子ノード 1と2をopenListに入れる アルファ・ベータ枝刈 1 2 相手が選択 アルファ・ベータ枝刈 Open List 更新された αβ(n) S 1,2 1 2 3,4,2 αβ(3)=(5,5) 7,8,9,4,2 αβ(3)=(3,∞) 7 8 9 3 5 4 8,9,4,2 αβ(3)=(5,∞) 9,4,2 αβ(3)=(5,5)、 αβ(1)=(-∞,5) アルファ・ベータ枝刈 Open List 更新された αβ(n) S αβ(1)=(-∞,5) 1 αβ(3)=(5,5) 2 1,2 3,4,2 7,8,9,4,2 αβ(3)=(3,∞) 7 8 9 3 5 4 8,9,4,2 αβ(3)=(5,∞) 9,4,2 αβ(3)=(5,5)、 αβ(1)=(-∞,5) アルファ・ベータ枝刈 αβ(1)=(-∞,5) αβ(4)=(4,∞) 7 8 9 3 5 4 更新された αβ(n) 10,11,12,2 αβ(4)=(4,∞) 11,12,2 αβ(4)=(5,∞) ここで親ノード1 の範囲が5以下 であることから 親ノード1は5に 確定し、ノード4 以下をαカット するため、ノー ド12は調べる 必要がない 2 1 αβ(3)=(5,5) Open List 4,2 10 11 12 4 5 7 アルファ・ベータ枝刈 (5,∞) (5,5) 2 1 X (5,5) (5,5) 7 8 9 3 5 4 10 11 12 4 5 7 枝狩り:βカットの場合 節1のβ以 上の範囲に (-∞,5) 1 αβ(4)=(-∞ ,5) 節4の範囲 が来ると X 12 その子節は もう調べる 必要なしと して カット 枝狩り:αカットの場合 節1のα以 下の範囲に (5, ∞) αβ(4)=(-∞ ,5) 2 X 節2の範囲 が来ると その子節は もう調べる 必要なしと して カット
© Copyright 2024 ExpyDoc