私は最近 A* アルゴリズムを学習しています。潜在的なパスを見つけるときにヒューリスティックな値が必要であることを知っています。また、ヒューリスティックの一貫性と許容性についても理解しています。しかし、どのようなヒューリスティックが良いのか、なぜそれが良いのか混乱しています。
ところで、ヒューリスティックはどのように機能しますか?
私は最近 A* アルゴリズムを学習しています。潜在的なパスを見つけるときにヒューリスティックな値が必要であることを知っています。また、ヒューリスティックの一貫性と許容性についても理解しています。しかし、どのようなヒューリスティックが良いのか、なぜそれが良いのか混乱しています。
ところで、ヒューリスティックはどのように機能しますか?
私の意見では、ヒューリスティックの選択は、ほとんど問題に依存しています。しかし、問題が目的指向の方法で理解されていれば、ヒューリスティックの選択が容易になります。少なくとも私はそうしています。私が従う考えはこれです:
ヒューリスティックは、目標状態でゼロに評価されます。
それでは、すべてのシナリオは何ですか? ゴールでゼロを生成するすべての関数は何ですか?
可能なヒューリスティック
- 残っている食品パレットの数は?
- 現在のパレットから次の未踏のパレットまでの距離は?
- フードパレットなどがあるグリッド内の秘境
3つすべてが最終的に解決策につながりますが、より信頼性が高いように見えるため、最後のオプションを使用します.
ですから、目標の状態に身を置いてヒューリスティックを選択し、振り返って途中で何を達成したかを確認すると思います。したがって、ある意味では、ヒューリスティックは、達成する必要があることの近似値に他なりません (ゴールで 0 に評価されます)。