読者です 読者をやめる 読者になる 読者になる

へっぽこびんぼう野郎のnewbie日記

けろけーろ(´・ω・`)!

アルゴリズムとは何か

数学 雑記

先日、ITと何ら関連のない人たちの前で
アルゴリズムって何か説明して。

英語で。

という無茶ぶりをされた。

英語で答える前にまず日本語で説明の文章を考えようとしたけれど、
思っていたよりすぐに浮かばず、like mathematicsとか言っておいたけどいまいち自分でも納得できなかった。

そこで今日いろいろ考えていたのだけど、
アルゴリズムっていうのは、様々な事柄の解法なんだと思う。

例えば、
いちたすいちはに
っていう足し算はいちたすいちのアルゴリズムの一つだし、

1つのりんごと、1つのりんごは、合わせて2つだ、というのも1つのアルゴリズムだ。
前者よりも抽象度は落ちるけれど。

また、後者は前者を、実装したと言える。

これらのアルゴリズムがさらに抽象化されて、加法というアルゴリズムとなる。

アルゴリズムは何も数学の事柄だけではなくて、
例えば「女を落とすテクニック」というのも、アルゴリズムの一種だ。

実装するとするならば

for type in woman.getType():
   if type == Woman.Idiot:
   ...

のようになるのだろうか。

おれは、人間のことをそういった様々なアルゴリズムを実装した有機的な計算機だと心の底から思っているから、
コンピュータと人間の違いはないと思っている。
根本的な部分は同じだ。

よく「人間には感情があるよ!」なんてのも聞くけれど、
結局それも電気信号の連なりに過ぎなかったりする。
電気信号の連なりだから、どうでもいいというわけではなくて、
電気信号の連なりで感情が作り出せるというのはおもしろいことだ。

コンピュータに反逆される!!という心配もあるようだけど
そんなことよりも、
コンピュータと融合して、人類が進化するという手があるし、
そもそもコンピュータが人類を根絶させたとしても、人類の根源的な遺伝子は、
「人類がコンピュータを生んだ」という意味で、コンピュータに受け継がれる。

なので、おれはそういうことは全く心配していない。

話を戻してみる。
アルゴリズムを取得するということは、
生きるために食事を摂ることに似ている。

まぁ似ているとか言ったら、たいていの物は似てるし、こじつければなんでもいけるけど、
物事は、大体取得すると、自分の能力を増やす。
実際のところがどうかは知らないけど、エネルギーが減って、脳細胞が増えたりして、知識として脳のメモリに書き込まれるのだろう。
この脳のポインタは、複雑に入り組んでいて、何がどうなっているのか全くわからない。

長くなってしまってよくわからなくなったけど
アルゴリズム
要は解法で、
人生というのは突き詰めれば意味のない計算をしているだけなのだなぁと思ってまじどーん。

意外と宇宙はすごく頭のいい生命体が開発したスーパーコンピュータ的な何かなのかもしれん。
ひょっとしたら高校の授業でシミュレーションとして使われてるノリかもしれない。

とりあえず脳内再構築したいです。