私はErtelによる人工知能入門を読んでいます。
この行は私を教科書(102ページ)から困惑させました:
8パズルなどの決定可能な問題の場合、これは、ヒューリスティックが使用されているかどうかに関係なく、検索ツリー全体を最大の深さまでトラバースする必要があることを意味します。
そして、決定可能性は次のように定義できます。
(無限にループするのではなく)ブール値のtrueまたはfalse値を返すことができる、または返すアルゴリズム
プログラムがツリー全体をトラバースする前に目標状態に遭遇すると、プログラムはなぜ戻りませんか?何が欠けていますか?
文脈が重要な場合、これは前の文です:
最後に、問題の解決不可能性はツリー全体が検索された場合にのみ確立できるため、ヒューリスティックは解決できない問題に対してパフォーマンス上の利点がないことに注意してください。
102ページ を参照してください。
本の他の場所では、ヒューリスティックは「解決可能な問題」の計算を劇的に減らすことが多いと述べています。ここで関連する「決定可能な」問題と「解決可能な」問題の間に違いはありますか?ヒューリスティックが「解決可能な」問題に適している理由と「決定可能な」問題に悪い理由は説明されていません。
問題は、ソリューションが存在する場合に解決可能です。
問題が解決可能かどうか、つまり解決策が存在するかどうかがわかれば、問題は決定可能です。
8パズルは常に解決できるとは限りませんが、解決策が存在する場合、最大31回のシングルタイル移動が必要であることがわかっているため、決定可能です。したがって、特定の8パズルが解決可能かどうかを判断するには、解決策を見つける必要があります。最大長31の一連の移動で問題が解決しない場合、このパズルは解決できないことがわかります。
これで、問題が解決可能かどうかという観点からこれを言い換えることができます。
解決可能な問題の場合、解決可能であることを証明するために1つの解決策を見つけるだけで済みます。ここでは、ヒューリスティックスがソリューションの検索を高速化できます。
解決できない問題については、単一の解決策が存在しないことを証明する必要があります。ヒューリスティックは解決できない問題の解決策にはならないため、ゲームツリー全体を調査して、解決策が含まれていないことを確認する必要があります。可能なすべてのゲーム状態を調査する必要があるため、ヒューリスティックは問題になりません(ヒューリスティックはすべて、有望な動きを優先します)。ヒューリスティックは計算コストを追加するため、ヒューリスティックを使用すると、解決できない問題の純損失になります。
面白いことに、与えられた問題が解決可能かどうかは、一般的に先験的にはわかりません。
編集:別のユーザー(@esoteric)からのこのコメントは、いくつかの追加の明確さを追加します:
特に初期のポジションの半分が解決できないことを考えると、最悪の場合に何が起こるかについてのステートメントとしてそれを考えてみてください。そして、早期解雇の機会を幸せな事故と見なしてください。また、トラバーサルが不運な場合は、インスタンスが解決可能であっても、解決策を見つける前にツリー全体を歩く必要がある場合があることも考慮してください。したがって、すべてのインスタンスの50%を超える場合は、完全なトラバーサルが必要です。それを考えると、アルゴリズムがツリー全体をトラバースする必要があると予想するのは合理的です。