41

アルゴリズムについて調べた後、私を混乱させる2つの用語を見つけました。私は少なくとも20の論文を読みましたが、どちらについても明確な定義はありません。誰かがヒューリスティックアルゴリズムとメタヒューリスティックアルゴリズムの違いを教えてくれることを願っています。そして、可能であれば、そのソースを追加します。

ps:私はすでに単語の意味が何であるかを知っていますが、コンピュータサイエンスにおけるそれらの正確な違いが何であるかはわかりません。

前もって感謝します

4

3 に答える 3

67

問題の近似(近似ではない)ソリューションのようなヒューリスティックを考えることができます。近似と近似の違いは、最初は問題の解決策を適切に推測することですが、それがどれほど優れているかは実際にはわからないということです。2つ目は、最適なソリューションにどれだけ近いかを証明できるソリューションを取得することです。

したがって、ヒューリスティックは多くの場合問題に依存します。つまり、特定の問題に対してヒューリスティックを定義します。メタヒューリスティックは、問題に依存しない手法であり、幅広い問題に適用できます。ヒューリスティックとは、たとえば、クイックソートでピボットするためのランダムな要素を選択することです。メタヒューリスティックは、適用される問題について何も知りません。関数をブラックボックスとして扱うことができます。

ヒューリスティックは問題に依存する情報を利用して特定の問題に対する「十分な」解決策を見つけると言えますが、メタヒューリスティックはデザインパターンのように、幅広い問題に適用できる一般的なアルゴリズムのアイデアです。

于 2012-05-07T16:15:46.050 に答える
11

アレハンドロの答えに関連して、適切な引用をするために:

«メタヒューリスティックは、ヒューリスティック最適化アルゴリズムを開発するための一連のガイドラインまたは戦略を提供する、問題に依存しない高レベルのアルゴリズムフレームワークです[...]メタヒューリスティックフレームワークで表現されたガイドラインに従ったヒューリスティック最適化アルゴリズムの問​​題固有の実装メタヒューリスティックとも呼ばれます»(Sörensen、Glover on http://scholarpedia.org/article/Metaheuristics

完全に完了するため。正確なアルゴリズム、近似アルゴリズム、ヒューリスティックアルゴリズムを区別する必要があります。正確なアルゴリズムは正確な解決策を見つけます。近似アルゴリズムは、許容可能な時間内に近似解を見つけ、想定される最適解との不一致範囲を示す必要があります。ヒューリスティックは、許容可能な時間内に、十分な解決策を見つけるだけです。

ちなみに、Alejandroクイックソートの例は、2つまたは3つの異なる理由で完全には適切ではないようです。

  1. 実際、ヒューリスティックとメタヒューリスティックは最適化の分野の一部です。したがって、彼らが取り組もうとしている問題は、ソートではなく、最適なものを探すことです。
  2. ヒューリスティックは、一般的に、計算の意味で、取り組みたい問題が複雑すぎる場合に使用されます。これは、ソートの問題の場合ではありません。
  3. クイックソートの例で指摘されたのは、よく理解していれば、ランダム要素です。原則として、決定論的ヒューリスティックを持つことができます-私は決定論的メタヒューリスティックに遭遇したことはありませんが、おそらくそれをコーディングすることができます。少し「言葉で遊ぶ」かもしれませんが、ランダム要素は(メタ)ヒューリスティックよりも「確率的検索」をより適切に特徴付けます。
于 2015-01-20T21:58:12.140 に答える
2

詳細な説明については、以下を参照してください。

Sörensen、K。(2015)。メタヒューリスティック—公開されたメタファー。オペレーションズリサーチにおける国際取引、22(1)、3-18。

メタヒューリスティックは、ヒューリスティック最適化アルゴリズムを開発するための一連のガイドラインまたは戦略を提供する、問題に依存しない高レベルのアルゴリズムフレームワークです。この用語は、そのようなフレームワークで表現されたガイドラインに従ったヒューリスティック最適化アルゴリズムの問​​題固有の実装を指すためにも使用されます(Sörensen、2015年)。

ヒューリスティックはガイドラインであり、メタヒューリスティックはそれらを使用するフレームワークです。

于 2016-08-21T19:38:16.320 に答える