問題解決の手法「アルゴリズム」と「ヒューリスティック」
「アルゴリズム」と「ヒューリスティック」。
どちらも問題解決に関係する重要な言葉です。心理学に触れた人なら聞いたことはあるでしょう。
しかし、この2つの違い、正確に説明できますか?
意外と難しいかもしれません。
これら2つを正しく区別しておくことで、自分が今、どっちを使っているのか・どっちの方が適切なのか、がわかるようになります。
ではアルゴリズムとヒューリスティックの違い、それぞれの活躍場面を見ていきましょう。
アルゴリズムの意味と具体例
アルゴリズムとは、定式化された手順で答えを出す問題解決手法のことです。
情報系でよく使われる言葉ですが、心理学でも使われています。
アルゴリズムのイメージは、プログラム(定式化された手順)に従って動くコンピュータです。
例えば数学では、「二次方程式の解の公式」はアルゴリズムにあたります。
決まった処理を実行し、確実に解を出すことができるのが、アルゴリズムの特徴です。
ヒューリスティックの意味と具体例
ヒューリスティックとは、経験則や勘に基づいて答えを導き出す発見的問題解決手法のことです。
誤った答えを出すこともあるため、「代表制ヒューリスティック」などバイアスと関わる心理学用語として使われることもあります。
ヒューリスティックのイメージは、言語化できないような経験によって判断する達人です。
例えば数学では、「微積の問題ではまずグラフを書いてみる」などがヒューリスティックにあたります。直接的に解を導くことはできませんが、解法を発見していくことができます。
将棋の例も挙げてみましょう。
プロの棋士は、難しい局面でもある程度とるべき手を絞って考えています。この時、網羅的に手を考えることもできるはずです。しかしそれでは膨大な時間がかかっていまうでしょう。
棋士はヒューリスティックによって、とるべきでないと直感した手を排除して思考しているのです。
このようにヒューリスティックは、迅速に、粗めの解答を出すことが得意です。
アルゴリズムとヒューリスティックの違い
アルゴリズムとヒューリスティックの違いを以下の表に簡単に示しました。
基本的にはこんな感じです。
アルゴリズムは、確実に答えを導き出すことができますが、時間がかかったり、違う分野では使えなかったりします。
対してヒューリスティックは、経験則によってコストを抑え、広い範囲で応用することもできますが、見当はずれの答えを導いてしまうこともあります。
また、未知の問題への対応は、ヒューリスティックの方が得意です。
逆に既知の条件が整った環境であればアルゴリズムが有利です。
例を挙げるとすれば、「新製品開発の現場ではヒューリスティック、工場ではアルゴリズム」といった感じです。
とはいえ、問題解決を行う場合、アルゴリズムもヒューリスティックも両方用います。
ここからは問題解決におけるそれぞれの役割を見ていきましょう。
アルゴリズムの役割「サポーター」
アルゴリズムはヒューリスティックのサポーターとしての役割を担えるといいと思います。
イメージとしては、まさに「AIと人間」です。
完全に定式化できた作業はAIに任せて人間は創造的なプロセスに認知資源を使えるのが理想だと思います。
問題解決の場合も同じです。
「二次方程式の解の公式」で求められることはそれで求めてしまえばいいのです。
また、アルゴリズムはヒューリスティックの展開に必要な情報を求めたり、ヒューリスティックが何となく求めた解の範囲で精度を上げたり、といった役割もこなせます。
ヒューリスティックの役割「メインプレイヤー」
ヒューリスティックは問題解決のメインプレイヤーです。
それはなぜか。主な理由は3つになります。
① 広範囲の問題に対応できる
② 未知の問題に対応できる
③ 意識してヒューリスティックを磨くことで、問題解決力が向上する
ヒューリスティックは発見的な手法なので、いろいろな範囲や出会ったことのない問題にも対応可能です。
さらに、多様なヒューリスティックを持ち、それらを磨き体系化しておくことで、高い問題解決力に繋がります。
アルゴリズムとヒューリスティックを使い分ける
アルゴリズムとヒューリスティック。
性格の違う2つの問題解決手法でした。
問題解決時に意識的に使い分けられるようになれば、自身の問題解決力をより構造的に分析することができます。
特にメインプレイヤーであるヒューリスティックを意識して鍛えていけば、高い成長が望めることでしょう。
あなたが仕事(問題)に取り組むときに使っているアルゴリズムとヒューリスティックを3つずつ挙げてみよう