人はなんだか最初の思いつきにこだわる癖がある。
最初の閃き、最初のプロット、
初期設定。
最初に思いついた、この窮地を脱出する方法。
ほんとうにそれがプランAだろうか?
もっと練ったものや、
まったく別のものが、最高でない保証はあるか?
数学では、
「これが最適であり、
これ以上の最適がない証明」をすることがある。
ゆえに最大である、
と数学的に証明してしまうわけだ。
だがそれは数学的に整理された空間でしか通用しない。
現実的な工学では、
最大解と、最適解を区別する。
理論上の最大解は保証がないが、
今与えられた条件下ではこれが最大である、
という条件付き最大解のことを、最適解とよぶ。
最適解という言葉はよく見えるが、
最大解が100万なのに、
最適解は1万しか得られないことだってある。
最適はもっとも適した、ではなく、
その条件下での最大の意味だ。
このように、
最大解よりずいぶん下なのに、
最適解で止まっているものを、
「局所最適解」という。
局所最適解は、
条件を変えればまた別の局所最適解に収束することがあり、
別のその解は、1万にくらべて50万かもしれない。
(100かも、99万かもしれない)
工学の世界では山登りにたとえられる。
最大解は頂上だけど、
最適解は、それぞれの峰であると。
その峰での頂上はそれ以上ない高さであるが、
最高峰ではない。
最高峰にたどり着くためには、
そこから一旦降りて、別のルートを辿らなくてはならない。
つまり、局所最適解は、
「ここまでやったんだから最高だろ」
という自己満足を生み、
条件を変えるために、
一旦悪化することをおそれる心理を生みやすい。
局所最適を避けるには、
峰の付近だけ見てないで、
もっと広い視野を持つことだ。
最大解を自動的に探すGAというアルゴリズムでは、
ある局所最適解が見つかったら、
全く別のところと混ぜて、
いわば探索場所をワープさせることがある。
これを、ある村で遺伝子が固定してしまうから、
旅人の遺伝子を村に入れることにたとえる。
たとえば北東の峰で自己満足していたはずなのに、
南西の場所でまた調べ直さないといけなくするわけだ。
こうして、全部を探検したわけではないが、
おおむね調べたぞ、
という風になるようなアルゴリズムが、
いくつか工学の世界では提案されている。
(全探索するには難しいほど計算量が膨大な問題では、
こうしたアルゴリズムを使う)
話が長くなったが、
最初のアイデアが、
最大解である保証はない。
また、練りに練りまくったアイデアが、
局所最適解である可能性がある。
プランAは、最高最大の良解である必要があるが、
それは今出ているものより良いかも知れない。
あるかどうかは分からないが、
工学的な経験則からいうと、
「全く別のものに条件を変える」
ことで、見つかる可能性がある。
最初のアイデアに固執することは、
探索場所を限定することに等しい。
色々考えることはとくに大事だが、
その「色々」がとても狭い範囲である可能性を考えよ。
まったく別次元から考えた時に、
これまで考えていなかった領域に、
プランAが見つかることがある。
それをやるには、
最初のアイデアに固執している脳を、
ほぐさないと出来ない。
まず寝ろ。そしたらある程度ほぐれる。
そして全く別のことをしろ。
そしたら全く別のことに脳が切り替わり、
寝たことと同様の効果がある。
そして全く違う文脈から、アイデアを眺め直した時、
全く違うアイデアが出ることがある。
もちろん、それが元のアイデアより劣る場合もある。
しかし、局所最適解以外の場所からのアイデアは、
元のアイデアを客観視させる。
ということは、こっち方面に何かないか、
あるいは、
この条件を外して考えられないか、
この条件は外すが、この条件を加えると?
などのように、
付与条件を変更するアイデアが生まれることもある。
プランAは、そうしてたどり着く。
2021年11月15日
この記事へのコメント
コメントを書く