方法の方法

先日から、1億円あればおつりをもらうことなく日替わり定食とうどんを食べられる組み合わせの全てを算出する「学食大人買い計算器」を作るのに勤しんでいたわけだが、そのプログラミングを通して気づいた事がある。
このプログラムに限らず、 我々が日常的に直面する何ごとかについて「考え得る限り」とか「あらゆる可能性」てな事を考える場合、一般的には無限とは言わないまでも漠然と膨大な数を思い浮かべるものだが、実のところ「考え得る」や「あらゆる」は何らかの形で限定されているわけで、考える人や考え方によってその数は全く違ってくる。
考えても無駄な事を大量に可能性の範囲内として考慮に入れる人がいれば、最初から一切の無駄なケースを除外した上で考える人もいる。
結果として、同じ語で表される「考え得る」や「あらゆる」は人や考え方によって全く違うモノを指している事になる。その差は、「学食大人買い計算器」で言えば42分と63ミリ秒と言う事になるわけだ。
効率という面から言っても、労力という面から言ってもあまりにも開きがありすぎるのは明白であり、1000分の63秒など現実的に言えば限りなくゼロに近いし、ゼロとあらゆる正の数字の比は等しい。
手段や考え方一つで、生まれてくる結果に限りなくゼロと無限大に近い開きすら生まれ得るのだ。そしてそれは、当然ながら作り手、考え手に全てかかっている。


今まで何事につけ、そういう「考え方を決めてから物事にあたる」という姿勢を取った事などほとんど無かったし、殆どの事を出たとこ勝負で決め、そして処理してきたように思う。
そう考えると今更ながらに、たとえば今まで生きてきたあらゆる局面で自分が42分かかる方の考え方をしていたのではないかと激しく不安になる。考えても無駄な可能性を考慮に入れ、意味のない演算を繰り返していたのではないかと…
同じ労力を何かにつぎ込むにしても、やり方の違いで結果は全く異なってくるし、同じ事をしていても、自分が足踏みをしているようにしか感じられないのに引き替え、どんどん上へ上ってゆくように見えたりする人は、自分が持っていないアルゴリズムで物事を考えていたのかもしれない。
某天一の直営店に社長直筆の「正しい努力」という額が飾ってあるのを見た事がある。42分かかった方のアルゴリズムは確実に「間違った努力」と言う事になるだろう。
しかしながら、幸か不幸か人間の世界はコンピューターの世界とは違って、可能性の範囲内の判定も正誤の判断も激しく難しい。
言い換えれば悪いアルゴリズムは悪いと判りにくくなっているわけやけど、「木はその実により知られる」という言葉もあるわけで、結果が出るまで判らないと言う点ではコンピューターの世界も人間の世界も同じかもしれない。
それでも人間の世界は「あ〜これじゃぁダメやわ」と思った時点で、プログラムを書き直してもう一回コンパイルし直すことが不可能なのは言うまでもない。
それでもまぁ、「考え方の方法」にも気を使っていくしかないのやろうね。
願わくば、Segmentation faultでcore吐いて止まることなく、return 0; 出来ますように。ナムナム。

コメントする

メールアドレスが公開されることはありません。

PAGE TOP