メタヒューリスティック
ヒューリスティックとは、問題を解決したり、意思決定を行ったりするための一連のルールです。コンピューターサイエンスでは、ヒューリスティックはアルゴリズムの基盤となります。メタヒューリスティックは、アルゴリズムの作成に使用するヒューリスティックを定める、より大きな原則や指針です。
ヒューリスティックとメタヒューリスティックは、どちらもコンピュータープログラミングに適用されます。ヒューリスティックは特定の問題に適用されるのに対し、メタヒューリスティックは問題に依存しない一般的な指針です。開発者は、一貫したプログラミング手法を作り出すためにメタヒューリスティックを使用し、特定の解決策を作るためにヒューリスティックを開発します。
たとえば、ソフトウェア開発チームは、メタヒューリスティックとヒューリスティックの両方を使用して検索エンジンを構築することがあります。それぞれの例を以下に示します。
検索のメタヒューリスティック
次のメタヒューリスティックは、すべての検索エンジンに適用されます。
- 検索効率を高めるため、検索可能なデータのインデックスを作成する
- 完全一致だけでなく、ユーザーが入力したキーワードに類似した語句を検索するために「あいまい検索」を使用する
- 関連性の高い順に検索結果を並べる
検索のヒューリスティック
次のヒューリスティックは、特定の種類の検索エンジンに適用されることがあります。
- ユーザーの所在地に最も関連性の高い検索結果を表示する
- ユーザーのアカウントに保存されている情報に基づいて検索結果をカスタマイズする
- 検索履歴を使用して、検索語句の自動補完候補の一覧を表示する
上の最初の一覧は、効果的な検索エンジンのための一般的な指針を示しています。2番目の一覧は、検索エンジンに必要な具体的な機能を示しています。場合によっては、ヒューリスティックとメタヒューリスティックの適用範囲が重なることがあります。2つを区別する最もよい方法は、それが一般的なルール(メタヒューリスティック)なのか、それとも特定の問題や解決策に適用されるもの(ヒューリスティック)なのかを判断することです。
知識をテストする