
アナロジーな世界
現実世界で解きたい問題が難しい場合、多くの人はそれを直接解く施策を探すでしょう。ところが、そういうアプローチをすると多くの場合は成功しません。その理由はシーズ発想だからです。
3Mの大ヒット作品、PostItの例を見ましょう。あれは、「すぐ剥がれてしまう接着剤」という失敗作から生まれました。しかも、その失敗作を何とかして売り物にしようとしたけれど全く見つからなかったのです。数年経って、関係者の一人が教会で賛美歌を歌う際に、栞が落ちて閃いたそうです。ニーズ発想ですね。では最初からニーズ発想で考えればいいのか?というとそうでもなく、難しいんですね。
元に戻って、現実世界の課題の相談を受けた時、私はまず抽象化して考えていきます。私はグラフ化します。

丸は、人だったり仕事だったり機械だったり車だったり場所だったり時間だったり… 何でもいい訳です。ここまでくると次は数学の定理を探します。例えば、⑥から①までのクリティカルパスはどの経路?これはグラフ理論で既にアルゴリズムがあるのでそれを使えば良いですし、Pythonではパッケージが用意されていて1行で計算できます。物流の問題はグラフ構造に置き換えられれば解けたも同然で、連続値ならばシンプレックス法を適用できるし、整数値の離散値ならばラグランジュ緩和して列生成法を使うか、トロピカル化すればいい。慣れてくると何を適用すれば、何が解けるのかな?という事が薄ぼんやりと視えてきます。
こういう訓練を続けると、市販のアプリを探すのがバカバカしくなってきます。Pythonと生成AIがあれば0円で作れてしまうんですね。それもバカみたいな速さで。
この透き通った世界に皆を呼びたいもの、皆さん数学に興味が無いし。困ったもんだな…
もっとも、私も最初の頃はこんな本を読んで頑張ってみても何も得られず…試行錯誤したものです。(面白いんですけどね)