パンチカードでプログラムを組み、蒸気機関によって歯車を回し、演算結果を印刷する世界初のコンピュータ・ディファレンス・エンジン。コンピュータの父バベッジと階差機関について。
階差機関ディファレンス・エンジン
スチームパンクにおける重要なキーワード・階差機関(ディファレンス・エンジン)。1991年に発表された『ディファレンス・エンジン(The Difference Engine)』(ウィリアム・ギブソンとブルース・スターリング)は、もし蒸気機関が科学の主流となっていたら──という歴史改変SF小説です。『ディファレンス・エンジン』はスチームパンクマニアのバイブルとなっています。
チャールズ・バベッジとは何者か
『ディファレンス・エンジン』に登場するチャールズ・バベッジ(1791〜1871)は19世紀英国の実在の人物で、世界で初めてプログラム可能な計算機を構想しました。「コンピュータの父」と呼ばれています。
バベッジの考案した計算機は、階差機関(difference engine)と解析機関(analytical engine)。小説タイトルのディファレンスエンジンとは、階差機関から名付けられているんですね。
マッドサイエンティストと言えば?
SFや科学史に詳しい方なら、マッドサイエンティストと言えばおそらくニコラ・テスラとチャールズ・バベッジの名前が上がるでしょう。高度な知識や技術を持ちながら、常人には理解できないような奇行で知られているからです。ニコラ・テスラの生涯については以下のコラムをご覧ください。
![](https://madamsteam.com/photo/2016-04-20-01-160x120.jpg)
オルガン芸人大嫌いなバベッジ
バベッジは路上で演奏する大道芸人を死ぬほど憎んでおり、特にオルガン弾きが現れると杖を振り回して追い払ったり、自宅前に彼らを追い払うための派出所まで作らせました。また路上で音を立てさせないために議会で騒音法を成立させることに執念を燃やし、当時の大道芸人の怒りを買いました。
バベッジが亡くなると大道芸人たちが葬式に大集合してオルガンをかき鳴らしたと言いますから、どれだけバベッジが彼らに恨まれていたかわかろうというもの。
ヴィクトリア朝の一流数学者・科学者
また人混みが大嫌いで『通りの迷惑の観察』という本まで出版したり、数に異常にこだわってあらゆるものの数を数えて統計をとったりしています。
わざわざフランスの探偵から変装術を習い、競馬の必勝法を研究し、暗号解読に夢中になるものの、すぐに飽きてほっぽり出したりするバベッジ。興味の幅が広く、熱しやすく冷めやすい性格で、その変人ぶりはマッドサイエンティストそのもの。
でも彼はケンブリッジ大学の重要な講座を任される、当代きっての数学者・科学者でした。天才というものは少々変わっていた方が魅力的かもしれません。
当時の計算方法は主に筆算
さてそんなバベッジは1820年のはじめに階差機関の制作にとりかかりました。当時計算の道具といえばネイピアの骨(ネイピア計算棒)やアバカスぐらいしかなく、計算は筆算で行っていました。しかし天文学の進歩や海運業の発展により複雑な計算の必要性が高まっていました。
計算間違いにより海難事故続出
ところが航海士が船を操るためにに使う数表は間違いが多く海難事故が続出。というのも当時は計算者が筆算で計算し、それを印刷工が手で活字を組んでいたので二重に間違いが起こりやすかったのです。
そこでバベッジは自動的に正確に計算し、さらに結果を印刷もできるという夢の機械を開発しようと思い立ちました。
階差とは何か? 基本的な考え方
階差機関を説明するにはまず「階差」について説明しなくてはなりません。端的に言えば階差というのは数列で隣り合う数字の項の差に注目する考えです。学生時代の数学を思い出してください。(数学が嫌いな人ごめん)
Xの二乗の数列は? 1×1=1、2×2=4、3×3=9……と続いていくので
1 4 9 16 25 36 49…
ですね。この時隣りどうしにある数字の差は
3 5 7 9 11…
となります。これが第一階差。そしてさらにこの数列の差を計算すると
2 2 2 2 2…
と全ての差が2となり一定になります。これが第二階差。この規則性を利用すれば三角関数や対数などの複雑な計算でも階差法で簡単に割り出すことができます。
【動画】蒸気と歯車を使った階差機関
バベッジの階差機関のメカニズムはこの階差法が元になっています。第一階差を計算する歯車列、第二階差を計算する歯車列、そして答えという3本の歯車列があり、クランクが回るとそれぞれの歯車列が連動して回転し各列の数字の活字がセットされます。そして次々と活字が自動的にセットされて数表ができあがるというわけ。
重さ13トン! 巨大すぎる階差機関
けれどもこの階差機関の一番の欠点は、やたら大きいということ。使う部品は2万5000パーツ以上、高さ2メートル、重量13トンという巨大なもの。一部屋がいっぱいになってしまうほどの大きさです。現代では指の先に乗るほど小さな電卓が100円ショップで買えるのだから、階差機関の巨大さには驚きますね。
階差機関プロジェクト失敗
このあまりの巨大さゆえに費用がかさんだことや、開発技術者との争いなど問題は山積みで、結局階差機関計画は頓挫してしまいます。階差機関の計算機模型は完成したのですが、その図面も模型も失われてしまいました。そしてバベッジの情熱も徐々に消えていってしまったのです。
天才少女・エイダ・ラブレスとの出会い
バベッジが再びやる気を取り戻したきっかけは、エイダ・ラブレスという少女との出会いでした。エイダはイギリスの有名な詩人・バイロンの娘で天才的な数学の才能の持ち主でした。バベッジ40歳。エイダ17歳の時でした。
バベッジと師弟関係を結ぶエイダ
パーティーで出会った二人はすぐにお互いの才能を認め合い師弟関係を結びます。エイダはバベッジの構想を理解していた唯一の協力者でした。バベッジは階差機関の欠点を補い、さらに進化させた解析機関の開発に着手します。
パンチカードはプログラムの元祖
解析機関の入力方法は演算を指示するカードと、数値を指定するカードの二種類からなるパンチカードです。このパンチカードのアイデアはエイダが紡績工場の織り機から得ました。
織り機は模様のパターンをパンチカードから読み取ってその通りに織り上げます。つまり外部から指示をして指示通り動作させるという、コンピュータのプログラム方式そのもののやり方なのです。
世界初のプログラマー・エイダ
この解析機関用のプログラムを書いたのもエイダです。そのため彼女は「世界初のプログラマー」と呼ばれます。それだけではありません。彼女は音楽を数値化すれば解析機関で作曲や演奏もできると主張していました。この先見の明には驚かされずにはいられません。
若くして亡くなったエイダ
しかしながら結局階差機関も解析機関も実現はしませんでした。莫大な費用を調達できなかったことや、バベッジ自身が老いてしまったこともありますが、エイダが若くしてで亡くなってしまったことが一番の理由でした。享年36歳、ガンでした。
フランケンシュタインの作者と親友
死ぬ間際のエイダはコカインや酒、ギャンブルに溺れ、また夫以外の男性と次々に関係を持ちました。天才的な才能を持ちながら当時の英国では女性として活躍する場がなかったストレスかもしれません。
エイダは『フランケンシュタイン』の作者・メアリー・シェリーと親友でした。彼女に同じレベルの才能を持つ友達がいたことだけが救いです。
チャールズ・バベッジの脳(ただし半分のみ)
バベッジは生涯に8人の子供を持ちましたが成人したのは4人のみ。妻も36歳の時に失います。エイダの死後バベッジは階差機関、解析機関に関する情熱を失い、人嫌いで偏屈な老人(オルガン弾きにブチ切れる変人)になりました。そして1871年に膀胱炎で亡くなりました。
バベッジの脳は解剖されイングランド王立外科病院ミュージアムに展示されています。ホルマリンの中で彼はいったい何を夢見ているのでしょうか。
1991年にバベッジの階差機関を再現
バベッジの夢見た完璧な階差機関は実現しませんでしたが、息子のヘンリーが残っていた部品を組み立てて、階差機関を制作しました。また1991年には31桁の計算ができるバベッジ式の第二階差機関が再現されました。これはロンドンのサイエンス・ミュージアムで見学することができます。
スチームパンクの父・チャールズ・バベッジ
実現しなかった未完の蒸気式コンピュータ。でも階差機関、解析機関がプログラムやプリンターなど現代のコンピュータの元となったことは確かです。そして彼がいなければ「スチームパンク」という概念そのものも存在しなかったでしょう。
チャールズ・バベッジはコンピュータの父であり、「スチームパンクの父」と呼びたい天才です。
私のスチームパンク工作
ちなみに私のスチームパンク工作、スチームパンクキーボード・階差(カイザー)、スチームパンク計算機・炎算Enzan、テンキーは言うまでもなくバベッジのディファレンス・エンジンに着想を得ています。くるくる回る歯車は大好きです。あなたもお好きでしょ?【蒸気夫人(マダムスチーム)】
![](https://madamsteam.com/photo/2016-07-06-01-160x120.jpg)
![](https://madamsteam.com/photo/2015-09-22-01-160x120.jpg)
![](https://madamsteam.com/photo/2016-06-23-01-160x120.jpg)
参考文献
- Charles Babbage – Wikipedia, the free encyclopedia
- Charles Babbage’s Difference Engine – Picture of Computer History Museum, Mountain View – TripAdvisor
- Why did Charles Babbage invent the computer? | Reference.com
- File:Ada Lovelace.jpg – Wikimedia Commons
- Human Resources in Great Britain in the Long Run, 1871-2011 | The NEP-HIS Blog
- Napier’s bones – Wikipedia, the free encyclopedia
- Difference engine – Wikipedia, the free encyclopedia