MiniMax ツリーとアルファ ベータ プルーニングの概念は理解していますが、アルファ ベータ プルーニングに関する多くのリソース (ウィキペディアなど) で α >= β のような条件が存在する理由がわかりません。具体的には、等号は紛らわしいです。私が理解しているように、アルファ ベータは minmax が返す動きを返しますが、ほとんどの場合は高速です。しかし、この例はそれと矛盾しています:
.
/ | \
1 3* 2
/ | / \ | \ \
1 1 5 3 4 3 2
上は元の最小最大ツリーです。ご覧のとおり、スコア 3 の 1 つの手が選択されます。では、アルファ ベータを実行してみましょう。
.
/ | \
1 3* 3*
/ | / \ | \
1 1 5 3 4 3
3 >= 3 であるため、最も右の手を切り捨てます。しかし、アルゴリズムは同じスコアを持つ 2 つの手のどちらかを選択できますが、min-max で見たように、正しい選択はわずかに悪いです。アルゴリズムが単純に α > β を指定した場合、これは発生しないため、2 も検索する必要があります。
それはウィキペディアの疑似コード (および他の多くのリソース) のタイプミスでしたか? または、ここで本当に大きなことを誤解していました。