0

さまざまな一般的な検索アルゴリズムが互いにどのように関連しているかをよりよく理解したいと思います。階層図や簡潔なテキストによる説明など、リソースを知っている人はいますか?

私が意味することの小さな例は次のとおりです。

A* Search
  -> Uniform-cost is a variant of A* where the heuristic is a constant function
        -> Dijkstra's is a variant of uniform-cost search with no goal
  -> Breadth-first search is a variant of A* where all step costs are +ve and identical

ありがとう!

4

2 に答える 2

1

そのような階層はなく、さまざまな特性を持つさまざまなアルゴリズムの束だけです。

例えば。A *は、ヒューリスティックが追加されたダイクストラに基づいていると見なすことができます。または、これまでのパスコストの追加要素を使用して、ヒューリスティックベースの最良優先探索に基づいていると見なすことができます。

同様に、A *は、一般的な幅優先探索とほぼ同じ方法で実装されます(つまり、ノードのキューを使用)。反復深さA*(IDA *)は、同じコストとヒューリスティック測定を使用するという点でA *に基づいていますが、実際には深さ優先探索法として実装されています。

ここには、最適化アルゴリズムとの大きなクロスオーバーもあります。遺伝的アルゴリズムを複雑な山登り法の試みの集まりと考える人もいますが、ビームサーチの一形態と考える人もいます。

検索および最適化アルゴリズムでは、複数のソースからプロパティを取得し、アプローチを組み合わせて検索ドメインまたはコンピューティング要件のいずれかに関連性を高めるのが一般的です。そのため、メソッドの階層ではなく、さまざまなアプローチで発生するテーマ。

于 2010-11-03T11:38:33.257 に答える
1

これを試してくださいhttp://en.wikipedia.org/wiki/Search_algorithm#Classes_of_search_algorithms

于 2010-11-03T11:17:35.707 に答える