【『アルゴリズム思考法』レビュー】日常生活における様々な問題は、アルゴリズムで解決できる!

論理的思考

ベンチャービジネス売却の最適なタイミングはいつか。

車をどの駐車スペースに停めるべきか。

何人目の交際相手で手を打って結婚すべきか。




これらは毛色が全く異なる問題のように見えますが、どれも解決できる最良の共通手順があります。


本書は、日常生活で直面する様々な問題を、アルゴリズムに当てはめて解決を試みるという内容です!

アルゴリズムとは

そもそもアルゴリズムとは、機械的に進めれば目的を達成できる一連の数学的な手続きのことをいいます。


たとえば、世界最古のアルゴリズムは「ユークリッドの互除法」といわれています。

高校で習った方もいるかもしれませんが、これは2つの自然数の最大公約数を求める手法のひとつです。
(1912と1195の最大公約数も、ユークリッドの互除法をつかうと簡単に求められます!)




また、コンピューターを例にすると、

負荷を最小限にして最短の時間でユーザーの要求すべてに応じるには、プロセッサーの「注意」をどう配分すべきか。異なるタスクの切り替えはどんなタイミングで行うべきで、そもそもタスクはいくつ実行すべきか。限られたメモリー資源を活用するには、どんな方法がベストか。データをさらに集めるべきか、それとも既存のデータだけを使って作業すべきか。

ブライアン・クリスチャン&トム・グリフィス『アルゴリズム思考法』


これらを瞬時に計算して最適な答えを出すことができるんですね。



なぜこのようなことができるかというと、ただただ闇雲に頑張っているからというわけではありません。笑

コンピューターはこのような問題に対処する際に一連の数学的な手続きに則って計算しているからなのです。


そして、この一連の手続きをアルゴリズムというわけですね。




もっと身近な例でいうと、本の整列があります。

たとえばバラバラに収納された漫画を巻数順に並べなおすとしましょう。(ある規則に基づいてデータを並べ替えることをソートといいます)



このとき、人によっては様々なやり方があるかもしれません。


・全体の中からまず1巻を見つけ出し、一番左に持ってくる。次に2巻を見つけ1巻の右隣に置く。次に3巻を……(このやり方を選択ソートといいます)


・左から1番目と2番目の巻数を比較し、昇順に並べる。次に3番目の巻を、1番目と2番目の巻数と比較し昇順になる位置に置く。次に4番目の巻を1~3番目の巻数と比較し……(このやり方を挿入ソートといいます)



他にも方法がありますが、とにかくただ適当に並べ替えるということはしないですよね。

なにかルールに基づいて整列させると思います。


このような選択ソートや挿入ソートもアルゴリズムの一つといえます。


アルゴリズムについてもっと知りたい方は、以下の本をおすすめします!

図が豊富で完全な初学者向きです。私もこの本でアルゴリズムの基礎的な知識をつけました(^^)

本書の内容

本書の目次を大見出しだけ紹介しておきます。

  1. 最適停止 「見る」のをやめるタイミング
  2. 探索と活用 最も新しいものと最もすばらしいもの
  3. ソート 秩序を生み出す
  4. キャッシュ さっさと忘れよう
  5. スケジューリング 最初のものを最初に
  6. ベイズの法則 未来を予想する
  7. オーバーフィッティング 過ぎたるは及ばざるがごとし
  8. 緩和法 大目に見よう
  9. ランダム性 偶然に任せるべきとき
  10. ネットワーキング どうつながるか
  11. ゲーム理論 他者の心




冒頭で紹介した問題、
ベンチャービジネス売却の最適なタイミングはいつか。

車をどの駐車スペースに停めるべきか。

何人目の交際相手で手を打って結婚すべきか。



これらに共通する問題は、どのタイミングで候補の見送りをやめて採用すべきかということですね。(1章の「最適停止」)



たとえば秘書の求人に応募してきた人たちを面接するという状況で、
面接官はできるだけ優秀な人を採用したいと考えています。

そして面接はランダムな順で一人ずつ行い、好きなタイミングで採用ができるが、一度不採用にした人はあとで採用にすることはできないという設定です。


ひとりひとりの面接をしている段階では、この人が「最も優秀な応募者」ということはわかりません。この後にさらに優秀な応募者があらわれる可能性があるからですね。


しかし、その可能性を期待して残りの応募者の面接を続けると、「結局あの人が一番よかったな…」ということもあり得ます。


したがって、面接官がすべきことは、「最も優秀な応募者である可能性が高い人」を採用するということになります。


では何を基準に採用の判断をすればいいのでしょうか。ここでアルゴリズムの登場となるわけです(^^)






本書は、アルゴリズムの知識がなくても理解できるよう詳細に説明しています。

文庫本の割に値段が高いですが、分厚くて内容も重厚なので値段以上の価値があります( `ー´)ノ


きっと物事に対する考え方や捉え方に新しい視点をもたらしてくれるでしょう!





コメント

コンタクトフォーム

    タイトルとURLをコピーしました