言語ゲーム

とあるエンジニアが嘘ばかり書く日記

Twitter: @propella

カラクリ計算器とは何か?

f:id:propella:20190715164716j:plain

ラクリ計算器 (Kinetic computers) とは、今まで私が作ってきた木製の計算器や論理機械の事です。以前 Maker Faire 京都に申し込む時にこの造語を付けました。格好つけてあえて定義すると、コンピュータの発明以後にわざわざ電気を使わないで作った計算機の事とします。

ラクリ人形というとお茶を運んだり弓を射ったり人間の動きを機械で再現して楽しむ物ですが、その例えを使うと、カラクリ計算器とは外から見える人間の動きではなく、人間の内にある知能の動きを機械で再現して楽しむカラクリといえます。

江戸時代に多く作られたカラクリの動いている所をご覧になった事はありますか?これが結構凝っていて、弓を射る時のちょっとした首の傾け方とか、筆を持った時の視線の流れとか、相当よく人間を観察して作った物だと関心します。実際の人の動きを見ていたとしても見逃してしまう何気ない仕草でも、カラクリで表現されると改めて新鮮に目に映ります。

同じように、カラクリ計算器の狙いも、人間の知性を再現し、改めて注目してみようという物です。と言ってしまうとぎょっとして、計算器を知性と呼べるのか?とか、カラクリなんかで知性を再現出来るのか?とか疑問が思い浮かぶかも知れません。機械で知性を作れるかという問いは興味深いですが、まさか私もカラクリで完全な知性の模倣が出来るとは思ってないのでそこは横に置いておきます。完全な知性の再現ではなく、知性の一部だけでもカラクリで作って楽しもうというのが主眼だからです。

どんなに複雑な機械も分解していくと単純な部品の組み合わせで出来ています。同じように複雑な知性も「論理」という最小単位まで分解出来るという考え方があります。この「論理」という部品レベルになるとようやくカラクリでも再現出来るようになります。カラクリ計算器で扱う論理は義務教育で習う程度の簡単な物ですが(多分ありますよね?)、実際に作ったり動かしてみると意外な発見があるものです。

何気ない人の仕草もカラクリ人形が真似をするのを見て新鮮に感じるように、わかったつもりでいる論理も実際にカラクリ計算器で動かして見ると案外思わぬ発見があります。

例えば、論理和などの非可逆演算ではある入力に対して必ず出力が一つに定まっていますが、カラクリ計算器では簡単に逆に出力側を動かしてみる事が出来ます。そうすると入力側は空回して位置が定まりません。一方で否定などの可逆演算では出力を動かすと空回りせず入力は決まった所を示します。理屈では当たり前の事ですが、カラクリ計算器では非可逆性が空回り性と対応している事がわかります。このように、逆演算を簡単に試してみたり、真偽値に対して、入力が真と偽の途中にある時にどうなっちゃうのか試せるのは、電子計算機に対するカラクリ計算器の強みです。


Wooden Half Adder 2016

コンピュータ時代に何故わざわざ電気を使わないで計算機を作るのでしょうか?その答えは、電気を使わない事でむしろ知性の原理に近づけると私が考えているからです。大げさなたとえを使うと、19 世紀の写真の発明が画家たちを写実から開放し絵画を一変させたように、20 世紀の電子コンピュータの発明によって大規模な論理回路の追求から開放された今こそ、むしろカラクリで作られた論理回路で知性の形を再現する事に意味が出てきたんじゃないか、カラクリこそがコンピュータ時代に最もふさわしい表現の形なのでは無いかと思っております。