1.新・思考のための道具
「新・思考のための道具」は、1985年に出版された、「思考のための道具」(ハワード ラインゴールド 著 / 日暮 雅通翻訳)を2006年に加筆して新版(原著は2004年)された書籍である。それまで、点在的にしかまとめられていなかったコンピューターの歴史が、体系立てて包括的にまとめられており、かつコンピューター史において重要な役割を果たした人物ごとに紹介がなされており、現在のテクノロジーが、19世紀から続く人類の試行錯誤の連続の上に成り立っていることを知らされる。
本書は、当時(1985年前後)における「過去」「現在」「未来」について、人間とコンピューターを結びつけるテクノロジーを創り出すうえで重要な役割を果たした人物たちを「開祖たち(過去)」「パイオニアたち(現在)」「インフォノートたち(未来)」に分類し、各人物と彼らの功績を紹介している。
開祖たちは、主に広義でのコンピューターの誕生に大きな貢献を果たし、パイオニアたちは、パーソナル・コンピューターのテクノロジーを開発した。インフォノートたちは1985年時点での、これから訪れるであろう未来について言及している。(そしてそれは2018年現在からみても、見当違いの予想ではなかったことが証明されている)。
本書では開祖たちとして
●チャールズ・バベッジとラブレイス伯爵夫人エイダ
●ジョージ・ブール
●アラン・チューリング
●ジョン・フォン・ノイマン
●ノーバート・ウィーナー
●クロード・シャノン
パイオニアたちとして
●J・C・Rリックライダー
●ダグラス・エンゲルバート
●ロバート・テイラー
●アラン・ケイ
インフォノートとして
●エイヴロン・バー
●ブレンダ・ローレル
●テッド・ネルソン
の人物についてと、その功績について紹介している。
2.開祖たち
2.1 チャールズ・バベッジとラヴレイス伯爵夫人エイダ (解析機関)
イギリスの数学者であったバベッジ(イギリス:1791-1871)は、「機械で数表を計算できないかと考え」、歯車と滑車とシャフトからなる、世界で初めてのプログラムが可能な計算機「解析機関(アナリティカルエンジン)」を考案し、コンピューターの父と呼ばれている。
バベッジの考案した解析機関は「ミル」と呼ばれる計算機能を持った中心機構、「ストア」と呼ばれる記憶装置、フランス式の織機を応用したパンチカードによる入力装置、これらを制御し、動作の判断をする制御装置の4つの要素を持ち、これは現代のコンピュータとよく似た機能をすでに備えている。これにより、計算の順序を換えたり、繰り返し同じ計算をさせたりすることが可能になった。
また、「入力機構」は、プログラミングの歴史において重要な役割を担っており、ラヴレイス伯爵夫人のエイダ(イギリス:1815-1852)は、バベッジとの共同作業の中で、「サブルーチン(プログラムの中で,特定の機能を果たすためのまとまりのある部分)」「ループ(繰り返し)」「ジャンプ(飛ばし)」などの命令形式を発明し、世界初のプログラマーと呼ばれている。これにより、解析機関は、よく使われる計算をサブルーチンとして手順の「ライブラリ」に記憶させ、必要な時に自動的に呼び出す仕組みを可能とした。また、条件によるジャンプ、つまり、計算の途中で何か特定の条件が満たされたとき(IF)、別の処理を走らせるといったこともエイダによって発明された。これによって解析機関は自身で「決定」を下せる能力を得た。
2-2. ジョージ・ブール (ブール代数)
バベッジとエイダの生きた時代に、コンピューター設計にとって非常に重要な発見がもう一つなされた。それがジョージ・ブール(イギリス:1815-1864)による「記号論理学」である。ジョージ・ブールは、「人間の推論」を「代数の形」でとらえる方法を見出した。これにより、論理学と数学が結合され、アルゴリズム(「何を」「どのような順番で」「何に対して行うのか」)をコンピューターに命令(プログラミング)することが可能になった。
ブール代数:
ある命題A(正しいか誤りであるかがはっきりしている)に対して、正であれば1、誤であれば0とする。例えば10円玉を投げたとき(命題A)に、表が出れば1、裏が出れば0とした時、
「A=1」もしくは「A=0」が結果として得られる。また、100円玉を投げたとき(命題B)に同様に「B=1」、「B=2」とすると、「10円玉と100円玉を同時に投げたときに両方表が出る」
「10円玉と100円玉を同時に投げたときにどちらかが表であった」
などの論理的な内容を記号で表すことが出来る。このように、命題を論理的に加工することを論理演算という。
論理と計算という、それまで別の志向ツールとして考えられていたものを結合するために、ブールはたった二つの数量しかない数学的体系を基本概念に置いた。すなわち0と1である。
これにより、論理命題が方程式に置換可能となり、三段論法の結論は、一般的な代数の法則で算出できるようになった。
また、0と1の2値で表すブール値は、スイッチのオンオフといった電気工学とも相性が良かった。
そのため、たった二つの数値による簡単な体系により、いかに洗練された計算が出来るかということも、初のコンピュータを作ろうとする過程で明らかになるのであった。
バベッジ・エイダとブールは実際にお互いの業績を知ることはなかったが、バベッジの「煩雑な計算を機械に代わりにやってもらい、自分の時間を増やしたいというモチベーション」と、ブールの「より抽象的な数学的世界への探求心を持ち、人間の推論の本質を記号の形でとらえたいというモチベーション」は、現代においてもコンピューターの進歩を促進するための2種類のモチベーションとして特徴的である。
2-3.アラン・チューリング (チューリングマシン)
バベッジ・エイダとブールによる考えを実用に移すには、19世紀の技術は精密さ、速さ、動力の強度などの問題がありすぎた。現代のコンピュータの重要な構成要素を作るためには、基礎科学と産業技術の向上が求められていた。つまり、理論家よりも発明家が解決しなければならない問題の方が大きかった。
そのためコンピューターの歴史が大きく進歩するには、20世紀、第二次世界大戦の時代までかかった。
バベッジの時代から1世紀が過ぎ、コンピューターによる計算理論がついに発明される。アラン・チューリング(イギリス:1912-1954)は、「人間が計算を行うとき、どのようにして処理をしているのか」という発想から、世の中の現象を形式的体系を研究し、単純化された操作ルールを持つ自動的な形式体系がいかに大きな可能性を持つかを示し、チューリング・マシン(計算模型計算機を数学的に議論するための仮想機械)の概念を発表した。紙テープと書き込みヘッドからできている機械が、ヘッドを移動しながら紙テープに0や1を書き込んでいくとき、ヘッドの動く規則をあらかじめ決めておくことで、どのような計算をすることもできるという論理モデルであり、これは現代のコンピューターと極めてよく似た構造である。そのためアランチューリングは、コンピュータの原理を発明したとも言われている。また、第二次世界大戦時にはドイツ軍の暗号(エニグマ)の解読に尽力したが、自身がゲイであることの避難や政府からの手ひどい仕打ちなどで、最後は自殺した。
2-4.ジョン・フォン・ノイマン (プログラム内蔵型)
エイダとバベッジは、自分たちの考えた装置が作られる日を夢見ることしかできなかった。チューリングは、コンピュータの名にふさわしいものを手にする前に、政治の犠牲者として非業の死を遂げた。しかしジョン・フォン・ノイマン(アメリカ:1903-1957)は、実際にコンピュータを作り、動かし、初のソフトフェア原理を作った。また、ノイマンはゲーム理論の創始者でもあり、政治、社会にも大きな影響を与えた。ノイマンは、コンピュータが本当に実用的に使えるようにするために、プログラム内蔵方式の概念を打ち出したグループの中心的存在であり、「中央演算部」「制御部」「記憶機構」「入力部」「出力部」を持つノイマン式アーキテクチャは、現在でもほとんどすべてのコンピュータ設計に使われている。
ENIAC:
真空管技術、ブール代数、チューリングの計算理論、バベッジとエイダのプログラミング、フィードバック制御理論などが、戦争の計算能力を求めるアメリカ陸軍省の要望によって、一つにまとめられた結果誕生したコンピュータ。ENIACは当初、砲撃弾道の計算を目的として設計されたが、開発過程でノイマンがプロジェクトに参画した後、マンハッタン計画でも利用された。プログラム内蔵方式であったENIACは、ループ、分岐、サブルーチンが可能であったが、プログラミングは複雑な作業で、通常1週間ほどかかった。
EDVAC:
ENIACのチームが後継機として開発したコンピュータ。ENIACの開発工程で考案された論理上の改良を取り入れたものであった。二進数を使用し、加算、減算、乗算、プログラムによる除算などが可能であった。これらのコンピュータ・アーキテクチャをプロジェクトのコンサルタント的な立場であったノイマンが発表したため「ノイマン型」と呼ばれるが、開発には多くの優秀な研究者が携わっており、決してノイマンだけの功績ではない。また、チューリングも同時期にプログラム内蔵方式の概念を再考していた。
2-5.ノ―バート・ウィーナー (サイバネスティック)
ノーバート・ウィーナー(アメリカ:1894-1964)は、第一次世界大戦後、MITの数学講師となっていたが、同校の高射砲制御プロジェクトに参加するように命じられた。その中でウィーナーは「人間がいかにしてそこにある鉛筆に手を伸ばし、それを取ることが出来るのか?」といったことに目を付けた。つまり、機械も生き物もどちらのプロセスも「筋肉(機械においては自動制御装置)によって連続的で緻密な調整が繰り返され、誘導されながら制御されている。この予測と制御は神経系で行われる」ということに行き着いた。コンピューターと生物組織、物理的世界の基本法則との関係性を研究し、サイバネスティック(人工頭脳学)を確立した。
サイバネスティック:
生物と機械における通信、制御、情報処理の問題を統一的に扱う総合科学。この確立により、生命を数学化する試みが進み、ロボット工学、気象学、経済学など、あらゆる分野に影響を与えた。
2-6.クロード・シャノン
情報処理理論の数学的基礎を築いたクロードシャノン(アメリカ:1916-2001)は、スイッチのonとoff で論理演算が実行できることを示した。シャノンが情報を科学的に定義し、数式や方程式で扱えるようにしたことで、コンピュータは計算機から、情報処理マシンとなる。
また、シャノンは通信におけるさまざまな基本問題を取り扱うために「エントロピー」という概念を用いた。エントロピーとは、運動状態の混沌性・不確実性の程度を表す量のことであり、エントロピーが増大するということは、秩序がなくなることを意味する。また、情報量の単位としてビットを初めて使用した。シャノンは、「ビットこそが最も基本的な情報であり、あらゆる情報はビットの単位に分解できる」と指摘した。
ノイマン、ウィーナー、シャノン、の3人の科学者は同時期にコンピュータのおける重要な発表を行い、今日に至る情報科学の創設者として、その名があげられる。
デジタル・コンピュータの生みの親は、国税調査局でもなければ、事務処理機器の販売会社でもなく、軍部だった。ドイツ軍の暗号解読のために特殊なコンピュータ機器を開発したチューリングに始まり、原子爆弾製造に関わる膨大な数値計算に直面したノイマン、高射砲標準をより正確で速いものに開発したウィーナー、そして、陸軍団藤研究所でENIACのプロジェクトに携わった研究者たちなど、戦争がデジタル・コンピューターを劇的に進歩させたことは疑いの余地がない。
3.パイオニアたち
3-1. J・C・R・リックライダー
J・C・Rリックライダー(アメリカ:1915-1990)は、ARPA(アーパ)ネットのプロジェクトを創始した。ARPAネットはそれ以前に行われていた回線交換ではなく、世界で初めて運用されたパケット通信コンピュータネットワークであり、インターネットの起源と呼ばれている。また、多数のプログラマがコンピュータ上で同時に相互作用できる「タイムシェアリング」という概念を打ち出し、後述のロバート・テイラーによると、パーソナルコンピューティングの概念はここから直接的に派生してきたと言われている。
また、「人とコンピューターの共生」を執筆して情報化社会を予言し、コンピューター・ネットワークのコンセプトを作り上げた。対話型コンピュータの土台も作った。
対話型コンピュータ:
ディスプレイなどを通じてユーザーにデータの入力などを要求し、それに応じて処理を行っていくもので、コンピュータを身近なものにするのに大きな影響を与え、パーソナルコンピュータへの礎となった。
また、タイムシェアリングの発想も彼によってなされた。1台のCOMPをユーザ単位で共有し、複数での同時利用する方法で、現在のコンピュータのマルチタスクの発想に応用されている。
ARPAネットさらに、世界で初めて運用されたパケット通信コンピュータネットワーク(インターネットの起源)も彼による功績である。
また、リックライダーは、より性能の良いコンピューターを作るためのツールとして、コンピュータそのものを使えるのではないかと予見している。機械は最終的に、人類がより効率的なコミュニケーションを行えるような、そしてもっと深く知り合うことが出来るような力を与えるはずだと信じていた。
プロジェクトMAC:
1963年に開始されたMITの人工知能プロジェクト。人工知能だけでなく、オペレーティングシステム、計算理論など、先駆的研究成果が生み出された研究機関である。リックライダーによって立ち上げられたプロジェクトMACは、世間的にオタクと呼ばれる有能なプログラマーたちが自由に活動をしていた。このころになると、多くの「ハッカー」が現れた。ハッカーとはもとは「斧を作って家具を作る人」のことであり、ネットワークとプログラミングを駆使し、様々なコンピュータの可能性が示唆されるようになる。彼らの任務はコンピュータにやらせる新しい何かを考える事であった。
3-2. ダグラス・エンゲルバード
ダグラス・エンゲルバード(アメリカ:1925-2013)は、マウス(入力装置)を発明(1967)、ハイパーテキストやネットワークコンピュータ、グラフィカルユーザーインターフェイスの先駆けとなるものも開発した。また、思考増幅装置としてのコンピューターを作ることをビジョンとした。
ARPA(アメリカ国防高等研究局)の資金提供を受けARCを創立し、ビットマップ・スクリーン、マウス、ハイパーテキスト(複数の文書を関連付け、リンクさせる)、グループウェア、グラフィカルユーザインターフェースなどの、よりコンピューターを使いやすくするためのインターフェース要素の多くを開発した。これらは、現代のパーソナルコンピュータに直接的な影響を与えている。
エンゲルバードは早くから「人間の知性を増大させるために、コンピュータを人間と対話させたい」というアイデアを持っており、これらの実現のためマウスやグラフィカルインターフェイスが開発された。
エンゲルバードのビジョンの理解者であったリックライダーはARPAの資金によって大々的な援助を行った。エンゲルバードは、1960年時点で、人々がコンピュータに対し、あまりに近視眼的に下位レベルの自動化ばかりにとらわれていて、もっと上位のレベルにもたらすことが出来る大きな影響を無視していると述べており、コンピュータは人間の知性を増幅するためのツールとして使用されるべきだと主張している。1968年にサンフランシスコ近くで開催された秋季合同コンピュータ会議で、エンゲルバードはマウスを使ってディスプレイを操作したデモンストレーションは、数千人のハイレベルなハッカーや技術者たちを2時間近くにわたって引き付け、スタンディングオベーションで終わった。
また、エンゲルバードはコンピュータの応用方法の新しいカテゴリを提案するとき「オートメーション(自動操作)」という言葉ではなく「オーグメンテーション(増大)」という言葉を使った。これには、エンゲルバードのコンピューターへの考え方が表れている。
3-3. ロバート・テイラー
ARPA情報処理技術部の部長であるロバート・テイラー(アメリカ:1932-2017)は、タイムシェアリング、人工知能、プログラミング言語、グラフィック・ディスプレイ、オペレーティングシステム、その他コンピュータ科学の重要な分野にかかわっているプロジェクトを見つけ、助成金を与えた。その後、テイラーは、1970年にゼロックス社のパロアルト研究所(PARC)に転職し、史上初のパーソナル・コンピュータ「Alto」の設計と開発を監督した。
Alto:
1973年にゼロックスのパロアルト研究所 (PARC)内で開発されたマウスによるウインドウ操作 (グラフィカルユーザーインターフェイス) を導入した最初のコンピュータ。Ethernet接続ユニットを介し、Alto同士やプリンターなどとのLAN接続機能も有していた。
イーサネット:
Altoの開発段階において、それまでの1台のコンピュータに各々がアクセスする中央タイムシェアリングではなく、一人一人に一台ずつのコンピュータを与え、それぞれが孤立しないようにネットワークを作る必要があるという発想から、Altoの姉妹プロジェクトとしてLAN,イーサネットが開発された。これはシャノンが1948年に予言した「情報は0と1にコードされたパルスの連射」によって伝送されるという情報コーディングに他ならない。
リックライダーとともに1968年に「通信装置としてのコンピュータ」を執筆し、「インターネットはテクノロジーに関するものではなく、コミュニケーションに関するものである」と主張し、新しいコンピュータ・システムを構築することで「コミュニティ」を生み出そうという発想を提言した。ARPAネットが正式にオンラインになったのは1969年だが、1968年時点ではタイムシェアリングの開発グループはこれらの概要を世間に十分に知らしめることが出来る程度までネットワークを完成させていた。これらは現在のインターネットに直接的な影響を与えていると言える。
また、スティーブ・ジョブズは20代後半だった1979年にパロアルト研究所に訪問し、Altoのデモンストレーションを見せてもらっている。その後彼は、これらのプロジェクトの参加者を引き抜き、1983年にマウス、ビッドマップ・ディスプレイ・ウィンドウなどの有するLisaを発表。その後1984年にMacingoshを売り出し、これがパーソナルコンピュータ市場に一台革命を巻き起こした。
3-4.アラン・ケイ
アラン・ケイ(アメリカ:1940-)1970年にPARC(パルアルト研究所)の設立に参加。初のパーソナルコンピュータ開発「Alto計画」に参画し、ビットマップディスプレイ、マウスによるウィンドウ操作(GUI)を導入した最初のコンピュータ試作機を開発した。パーソナルコンピュータの父と呼ばれることもある。初のオブジェクト指向プログラミング言語「smaltalk」を設計。また、理想端末「ダイナブック」を提唱した。
また子供がコンピュータをプログラムしやすくするために作られた「LOGO」というコンピュータ言語を開発した。「コンピュータが子供をプログラミングするのではなく、子供がコンピュータをプログラミングできるようにする」という発想は、コンピュータをいかに利用し、人間の可能性を広げるかという、コンピュータと人間の関わり方の本質に触れるものである。「コンピュータ・リテラシ」という言葉も、アラン・ケイによるものである。
アラン・ケイは小型で安価(一般人に手が届く)で、直感的なユーザーインターフェースを持ち、文字のほか音声や映像も扱うことが出来る理想的な端末というダイナブックの構想を発表しているが、これはまさに現在われわれが使用しているタブレット端末に他ならない。当時は荒唐無稽であった発想が、彼が存命中に成し遂げられてしまう技術革新のスピードに驚かされる。
第二次世界大戦が終わり、1960年代に入るとコンピュータの進歩の速度は加速していく。各々が別々に開発に取り組んでいた初期に比べると、登場人物たちがそれぞれ関わり合っていることが分かる。これは新たにコンピュータに組み込まれたネットワークの概念と無関係ではないであろう。情報処理機器としてのコンピュータと、
4.まとめ
未来のコンピュータは、人間の能力を拡張する道具となるのだろうか、それとも、人間という生物の知性の限界をはるかに超越して動く新しい種類の知的種族になるのだろうか。P349に書かれているこの一文は、まさに我々が直面している「シンギュラリティ」に関する言及である。
計算機から情報処理機器となり、ネットワーキングによって各々がつながることで、コンピュータは人類の進歩に多大なる影響を直接的に与えた。現在は一人が一台パーソナルコンピュータを持ち、自身の考えを世の中に発信し、計算処理を代わりにやってもらい、世界中の人たちの考えを見聞きし、交流をすることが出来る。これらは過去の開発者たちが「思考のための道具」として求めたコンピュータの形である。
ならば私たちは、コンピュータをまさに「思考のための道具」として活用しなければならない、コンピュータやインターネットが「思考をストップさせる」ものであっては決していけない。それには、アラン・ケイが述べている「コンピュータ・リテラシ」を持ち、常にコンピュータを思考のアンプリファイアー(増幅装置)として活用する立場でなければならない。
「AIによって仕事がなくなる」という議論が続いているが、過去の歴史を振り返り、コンピュータの本質を考えると、AIに仕事が取られるのではなく、今まで我々が行ってきた作業をコンピュータが行えるようになり、そのぶん我々人類は新しい価値の創造に努める段階であるのだと気づかされる。
また、20世紀に入り、コンピュータの歴史を紐解いてみると、いかにアメリカの世紀であったかということがよくわかる。今回のシリコンバレーにおいても、コンピュータの歴史を感じながら、次の時代への思想を膨らませたいと思う。