解析機関

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
バベッジ自身が組み立てた解析機関の一部の試作品[1]サイエンス・ミュージアム(ロンドン)

解析機関(かいせききかん、analytical engine)は、イギリス人数学者チャールズ・バベッジが設計した、蒸気機関で動くはずだった機械式汎用コンピュータであり、コンピュータの歴史上、重要なステップを刻んだ。

バベッジが解析機関についてはじめて記述したのは1837年であるが、1871年の死去直前まで設計を続けた。資金や政治、法律などの問題があり、この機械は実際には製作されなかった。論理的に解析機関に匹敵する機能を持つ汎用コンピュータは、1940年代にやっと現実のものとなったのである。

この機械はしばしば、当時の工作精度のため製作できなかった、とされる。これはバベッジが機関のための精度が足りないとしていたためもある。しかし、息子のヘンリー・バベッジや現代のサイエンス・ミュージアムによる部分的構築によって、必要なだけの工作精度はあったことが確認されている(特に、現代の再現では、当時の工作機械についての考証のうえで行われている)[2] 。そのため、資金と政府の支援があれば、工作機械の精度に関しては、当時でも製作できたのではないかとされる。ただし、必要な精度がどれだけであるか、といった工学的な考え方は当時まだ無かったことも考慮する必要がある。

歴史[編集]

発明[編集]

チャールズ・バベッジ

チャールズ・バベッジが最初に開発しようとした機械式計算機は階差機関Difference Engine)であったが、これは多項式による近似計算によって対数三角関数の数表を作ることに特化した計算機であった。このプロジェクトはバベッジの性格的な問題や政治的な理由で失敗したが、彼はさらに汎用性のある設計が可能であると思いついた。バベッジはそれを解析機関(Analytical Engine)と呼び、設計を開始した。

構成[編集]

解析機関は、制御情報にしたがってオルゴールのようにピンを配置してあって回転、停止、逆回転するドラム群が中心となっている。そして、多くの歯車や力の伝達機構、位置や回転角などで情報を記憶・表示する仕組みなどから構成される、複雜で大きな機械である。蒸気機関を動力として、完成すれば長さ30m、幅10mという、いまの電車5両分もの巨大さとなっていたはずである。いわば蒸気機関車(SL)ならぬ蒸気機関計算機である。

プログラムとデータの入力は、当時既にジャカード織機のような機械式織機で使われていたパンチカードで供給される予定だった。出力としては印刷原版作成機、曲線プロッターおよびベルを準備していた。演算方式は十進数の固定小数点演算である。

1,000個の50桁の数値を格納できる。演算装置(ミル、"mill")は四則演算が可能で、さらに比較と、オプションで平方根の演算が可能であった。当初、それは階差機関を円環状に配置したらどうなるかという考察から生まれ[3]、その一方に数値格納装置を配置するようになった(さらに後に格子状の配置となった)[4]。現代のコンピュータのCPUのように命令をもち、ミル内部の手続きはバレル("barrels")と呼ばれる回転するドラムにペグ(釘)を刺すことで格納され、それによって複雑な命令を実現している[5]。現代のコンピュータの同等の仕組みについてはマイクロプログラム方式を参照。

解析機関のプログラム用の2種類のパンチカード。手前:命令入力用の「演算カード」、奥:データ入力用の「可変カード」

プログラミングは機械語であるが、現在のアセンブリ言語の原型のような記述法が考案されている。繰り返しと条件分岐が可能であった。チューリング完全を達成していたのではないかと考える者もいる。パンチカードには演算用、定数用、ロード/ストア用の3種類がある。ロード/ストア用は演算装置と格納領域の間で数値のやりとりの指示をするパンチカードである。これら3種類のパンチカードについて、独立した3つの読取装置が対応している。

発表[編集]

エイダ・ラブレス

1842年、イタリア人数学者ルイジ・メナブレアはバベッジがイタリアを訪れた際にバベッジと会い、フランス語で解析機関に関する記録を残し出版した。1843年ラブレス伯爵夫人 エイダ・キングはこれを翻訳し、本文以上の訳注を記述している。彼女はその十年ほど前から解析機関に興味を持っていた。その訳注の解釈によっては、彼女を世界初のプログラマとする者もおり、ベルヌーイ数を計算する方法(プログラム)が示されているという。プログラミング言語Adaは彼女にちなんで名づけられている。

完全製作の挫折そして本人と息子による部分製作[編集]

バベッジは設計を改良し続け、完了させていなかったため、まずクラウドソーシングによってベースとなる設計を確定させるプロジェクトを開始した[6]。675バイト相当のメモリを持ち、7Hzのクロック周波数相当で動作する予定であった。

バベッジは晩年になって解析機関の単純化したバージョンの製作を思い立ち、1871年に亡くなる直前にその一部を組み立てた[5]。しかし、1878年、英国科学振興協会の委員会に、解析機関の開発は政府の財政を圧迫するという理由で製造しないことを進言されるという憂き目を見た。

解析機関の完全開発は、資金枯渇そして技師とのトラブルにより実現できなかったのである。しかしそれらの問題が無くても、階差機関についてと同様、後世に発達した、複雑な機械の製作を管理する工学的手法がまだ無かったことは見落とせない。

ヘンリー・バベッジの1910年製作の階差機関演算装置[7]。ロンドンのサイエンス・ミュージアムに展示されている。

1910年、バベッジの末の息子ヘンリー・バベッジはmill(演算装置)の一部とプリンター一式を製作した[8]。そして、これを使って円周率の倍数の計算を行った(ただし、結果は間違っていた)。これは父親の発明した解析機関のごく一部を使ったもので、プログラマブルでなく、記憶領域もなかった。

ヘンリー・バベッジは、小規模な記憶装置を備えた完全な解析機関の製作も考えていた[9]。25桁の数値を20個操作できるものを想定しており、完成すればそれでも十分印象的なものとなっただろう。1888年、ヘンリー・バベッジは「カード(プログラム)枚数と時間の問題にすぎない。数学者が解析機関で目的を果たすために枚数が要るなら使えばよいだけだ」と書いている[9](62.)。

後年の階差機関完成[編集]

ヘンリー・バベッジの1910年製作の階差機関第2号の演算装置が、設計後153年の時を経て2002年に完成された。ロンドンのサイエンス・ミュージアムに展示されている[7]

もうひとつ2008年3月に、大富豪の資金で階差機関第2号と同一のものが完全に製作された。 米国のコンピュータ歴史博物館で展示されている。 その(さすがに蒸気機関ではないが)動く様子が同館サイトで見られる。

解析機関完成へ向かって[編集]

2010年10月、イギリスのプログラマージョン・グラハム=カミングが、完全な解析機関を製作するために寄付を募るキャンペーンを開始した[10]。そして2011年、グラハム=カミングらは解析機関を製作するプロジェクト "Plan 28" を立ち上げた。グラハム=カミングは、バベッジの没後150周年の2021年までに完成させることを目標とした[11]2013年の時点では、解析機関製作プロジェクトは進行途中の状態であり、完成してはいない[12]

解析機関は世界初のコンピュータか?[編集]

設計だけであったとしても、解析機関がコンピュータと呼べるかどうかは興味深い。階差機関の段階では命令がない専用演算装置であった(かつての一部のアナログコンピュータには似ているかもしれない)。解析機関になってはじめてプログラマブルになったので、原始的なコンピュータといえる。しかし、解析機関はいくつかの点で現在のコンピュータの要件を欠いている。

大きく異なるのはメモリにアドレスがないことである。解析機関の記憶領域はいわばレジスタであり、レジスタを個別に指定できても連続アドレスで指定できるメモリという概念がなかった。

そのため、宿命的にプログラム内蔵(ストアドプログラム)の概念が無い。また、プログラムをデータとして扱って書き換えることができる(プログラム可変)という概念も(基本的には)存在しない。

ただ、上記プログラム可変の能力に関しては、バベッジの残している記述をもとに備わっていたとする解釈もある。たとえばダグラス・ホフスタッターは(『ゲーデル、エッシャー、バッハ』p. 42)解析機関についてバベッジとラブレスが、自分自身のプログラムを書き換えることが可能であると考えていたとみている。また、数を計算する計算機としての機能だけでなく、数以外の対象も扱う情報処理機械であると認識していたと書いている。

性能[編集]

上記のように解析機関は、デジタル方式でプログラム可能でチューリング完全であるが、もちろん今の感覚からすれば非常に低速であった。エイダ・ラブレスは「バベッジ氏は彼の機関を使えば、20桁の数同士の乗算を3分以内に計算できると信じている」と記している。同じ計算を Harvard Mark I なら6秒でできる。現代のPCなら187ナノ秒でできる(Intel Core 2 Duo T7800 2.6 GHz, Java言語 任意精度BigDecimal型による9×(10の19乗)に同じものを乗算)。

とはいえ、ムーアの法則に従って成長しているコンピュータの性能の曲線を過去に向かって延ばしてみると、バベッジの解析機関はその曲線で示されるよりずっと高性能だったことに驚く[要出典]

影響[編集]

情報工学[編集]

解析機関はいくつかの例外的試みを除いては忘れられていた。パーシ・ルードゲイトは1915年に解析機関について記述しており、独自の解析機関も詳細に設計している(ただし、製作はしなかった)。ルードゲイトの機関はバベッジのものよりも小さく(約230リットルの容積)、20桁の数値の乗算を6秒でできると予測された。レオナルド・トーレス・ケベードヴァネヴァー・ブッシュも同様にバベッジの解析機関を知っていたが、彼ら3人の発明家は互いを知らなかった。

バベッジの解析機関と密接に関連する業績としては、ニューヨークベル研究所ジョージ・スティビッツ第二次世界大戦中に行った研究開発と、第二次世界大戦中にハワード・エイケンハーバード大学で行った研究開発がある。彼らは電気機械式(リレー式)コンピュータを開発しており、解析機関と似ている部分があった。エイケンのマシンはIBMの援助によって開発されたものでHarvard Mark Iと呼ばれている。

ハワード・エイケンはチャールズ・バベッジを心の師と仰いでいた[13]。エイケンは1886年にヘンリー・バベッジが製作した解析機関の一部を大学で1930年代に発見し、そこから着想を得たという[14]。彼は後にバベッジの著作を手にする機会を得ており、それについて次のように述べている。

そこに計算機について学ぶべきことがあった。それは全てであり、私はその本から全てを学んだ。

分子ナノテクノロジーでは、超小型の高性能コンピュータの構築手法として、解析機関のような機構による論理回路が提案されている[15][5]

解析機関が現実となれば、科学の未来を導くのに必須の道具となるだろう。

チャールズ・バベッジ, Passages from the Life of a Philosopher

小説[編集]

サイバーパンクの教祖と煽動者」ウィリアム・ギブスンブルース・スターリングは、(サイバーパンクから派生した)スチームパンクをうけて「彼らのスチームパンク」として歴史改変小説『ディファレンス・エンジン』を共同執筆した。この小説では、ビクトリア朝時代の社会でバベッジの(階差機関と)解析機関が実現し、さらにその技術が高度に発展した世界を描いている(内容は「階差機関」におさまるものでないが、改変された歴史の差、というイメージのため、そちらをタイトルに採っている)。この小説は、コンピューターの発達が史実よりも早かった世界で、歴史がいかに史実と違う方向に変化するかを描いた小説である。

イギリスの作家チャイナ・ミエヴィルの『ペルディード・ストリート・ステーション』にもバベッジの解析機関に似た装置が登場する。S・M・スターリングThe Peshawar Lancers にも巨大な蒸気駆動の解析機関が登場する。ニール・スティーヴンスンの『ダイヤモンド・エイジ』では、分子ナノテクノロジーが遍在する世界を描いており、バベッジの解析機関に似た設計の分子サイズの機械が描かれている。他にも、チャールズ・シェフィールドの『わが心のジョージア』がある。

脚注・出典[編集]

  1. ^ Babbage's Analytical Engine, 1834-1871. (Trial model) -Science Museum, London
  2. ^ Disagreeable Babbage "Difference Engine No. 2 was the first full sized Babbage calculating engine to be completed. It was made as a research machine for display at the 1991 exhibition..."
  3. ^ Babbage’s Analytical Engine: The First True Digital Computer
  4. ^ Calculating Engines - The Babbage Pages
  5. ^ a b c Difference Engines - Tim Robinson's Meccano Computing Machinery web site
  6. ^ “It Started Digital Wheels Turning”. New York Times. http://www.nytimes.com/2011/11/08/science/computer-experts-building-1830s-babbage-analytical-engine.html?_r=1/ 2011年11月10日閲覧。 
  7. ^ a b Henry Babbage's Analytical Engine Mill, 1910 Science Museum, London
  8. ^ Henry Prevost Babbage
  9. ^ a b The Analytical engine By Major-General H. P. Babbage - From the Proceedings of the British Association, 1888; Paper read at Bath, September 12, 1888
  10. ^ Campaign builds to construct Babbage Analytical EngineBBC2010年10月14日
  11. ^ “Babbage Analytical Engine designs to be digitised”. BBC News. (2011年9月21日). http://www.bbc.co.uk/news/technology-15001514 2012年3月19日閲覧。 
  12. ^ 解析機関製作プロジェクト「Plan 28」
  13. ^ book Howard Aiken: Portrait of a Computer Pioneer by Bernard Cohen, Chapter 8 Aiken's Background in Computing and Knowledge of Babbage's Machines. pp61-71
  14. ^ Babbage and Aiken - IEEE Annals of the History of Computing, Volume 10 , Issue 3 (July 1988)
  15. ^ Report on Nanocon 1 by John G. Gramer

参考文献[編集]

外部リンク[編集]

すべて英文。