オブジェクトとイメージングデータベース

小学校の時、理科の時間に川の侵食実験をやった。
傾斜をつけた砂箱に水を流すと、水はさまざまに流を変え、変化しつづける。
やがて、一定の蛇行を生み出し、さらにまた変化する。
水の流が十分穏やかであれば、必ずある一定のところで変化は止まる。


われわれは日々こういう現象を目にしていて、その性質を探ろうと努力している。


コンピューターシミュレーションで砂箱の実験を正確に再現することも可能になった。
コンピューターシミュレーションは非線形問題という高度な数学的テクニックで、砂箱の姿をシミュレートする。


しかし、逆に考えれば、たかが砂箱に流した水が、スーパーコンピュータで計算しなければならないほどの複雑な非線形問題の計算をして、安定した状態、つまり、解(のひとつ)を見つけることができるのだ。
現象からみれば、この世のほとんどの現象は、高度な数学的解を求める運動であるといっていい。


もはやわれわれは、コンピューターが複雑な計算の結果、砂箱の実験のシミュレーションをしてみせることをなんら不思議とは思わない。
逆に、たかが砂箱が、コンピューターと同等の高等数学の解を持つことに深い感銘を受ける。


もともと数学も物理の法則も、自然界の現象を記述するために生まれたのだ。


ということを、再認識するのである。


最近主流のコンピュータプログラミングのスタイルはオブジェクト指向という。


これは、基本的で普遍的な「定義」を派生させることでプログラミング構造を構築するテクニックである。


例えば、昔のプログラミングでは住所録と顧客台帳は非常に似たものであるにも関わらずわずかな利用方法の違いのために、まったく別々にプログラミングしなければならなかった。現在では個人情報という基本的な定義部分のプログラミングを先に完成させ、さらに「年賀状を送る」とか、「お歳暮を贈る」という属性を加えて住所録としたり、「購買履歴」とか、「支払い方法」という属性を加えて顧客台帳にしたりすることができる。
こうして、共通の「定義(オブジェクト)」を再利用(派生クラスを生成する)して、特殊な属性部分だけをプログラミングすることでさまざまなアプリケーションを効率よく作り出す。


ウィンドウズなどはまさにオブジェクトの固まり、といっていい。
だからどのアプリケーションもウィンドウの外側やメニュー項目は似通っているのだ。プリンタやモニタの制御もすべてオブジェクト定義を介して行われるのでアプリケーションはそれぞれ、どのプリンタがつながっているか、どんなモニタで表示されているかを無視できるところは無視してよいのだ。


さて、しかし、オブジェクト指向にもやはり限界がある。
例えば、多くの場合、「基本定義」がはっきりしないことがあるのだ。
オブジェクト指向は基本定義をはっきりさせることからスタートするので、これはまったくお手上げである。


これはデータベースの世界では頻発する。


例えば、商品データベースから自分に合ったデジカメを探したいとする。
われわれが知りたいのは、正確な画像解像度や重さやメモリ容量ではない。
こんな使い方に最も適したカメラはどれか、というような探し方がもっとも近い。
遠足や運動会の記録用なら軽量でメモリが多い方がいい。
電子製版に使うものなら高解像度でレンズが優れていることが重要だ。
しかし、ほとんどのデータベースはマシンのスペックを横並びで並べているだけで、検索する側が用途を注意深く考察し複雑な手順で検索しないと正しい答は出てこない。
要求が複雑になれば、世界一のデータ量を誇るgoogleでさえ、ろくな検索結果を出してこないのは周知の事実である。


データは確かにどこかにあるはずなのに、そこに手が届かなくなっている。


これは、データベースがどのように検索されるのか、設計段階で定義不能だからおこるのだ。


今までの「定義型」プログラミングの限界である。


そこで、これからはイメージマイニング型のデータベースが進化をはじめるだろう。
もっとも、現在ではふさわしい言葉さえ見つからないので「イメージマイニング」というが、要するにどんな形ででも後から概念(イメージ)的に抽出(マイニング)できるデータの扱い方である。


わたしの会社は実はどこにでもある、ふつうの事業所である。
プログラミングは必要だからやっているだけである。
現在わたしの会社で動いているデータベースはがちがちの定義型である。
定義型では、すでに同じ業界では類のないほどに進化している。
アプリケーションとしては90%完成して4年の実用実験を終え、もうすぐ世間に広まりはじめるはずである。社内で実用化したものを商品化することができるというのは、昔で言えばトヨタが車を作りながらライン製造工場を完成し、それを売ることに等しい。しかし、物品を扱わないデータの世界では、いくらコピーを販売しても事業に差し障りは出てこない。


そして、来年からはあいまいなデータをあいまいなままあつかい、タームにあわせて徐々に具体的にしていく、という世界で初のデータが進化するデータベースを設計することになりそうである。
すでに構想としてはかなり具体的にできているが、実際のところ、検索にかかるスピードや処理系の技術など、つねに技術が構想に追いついてくるのを待ちながらの開発になっていくだろう。もっとも、構想の段階ですでに需要(というか受注)が発生しているので、必ずや実現して幾ばくかの利益を生み出すことになるだろう。


ここ数日の間に、この構想が資本を集めはじめているので、やがて新会社を設立することになると思う。