2008年度 林晋担当 ver2008/04/28

Download Report

Transcript 2008年度 林晋担当 ver2008/04/28

情報・史料学概説
情報技術発展史 I
2008年度
林晋担当
ver2008/04/28
2015/9/28
1
導入編:IT技術の歴史


主に「コンピューター200年史」 M. キャン
ベル-ケリー/W.アスプレイ、海文堂、に
従って解説。
デジタル・コンピュータが無かったころから、
現代までのIT発達史。
2015/9/28
2
コンピュータ前史
2015/9/28
3
コンピュータが人間だった頃 (1)



“Computer” は、50年ほど前までは、人間だっ
た。
今のようなコンピュータ出現以前から、大規模な
科学技術計算は必要だった。
たとえば、マンハッタン計画では、原爆製造のた
めに非常大規模な計算が必要だったが、計画
自体が国家機密だったので、ロス・アラモスに集
まっていた科学者や技術者の夫人が computer
として雇われた。
2015/9/28
4
実際の人間コンピュータ


1950年頃の米国の航空関係の会社
North American Aviation で働く、computer
たち。P. E.Ceruzzi, “A History of Modern
Computing”, p.2 より。
このような人間コンピュ‘ータによる計算は、
組織化されており、分業体制による計算
だった。
2015/9/28
5
チーム計算の起源 de Prony


フランス革命直後の 1790年、de Prony が
始めた。対数表作成のプロジェクト。
アンシャン・レジームの象徴だった貴族の
hairdressors たちが革命で失業。その失業
対策を兼ねて、compueters として雇用した。
2015/9/28
6
計算の分業体制



Hairdressor は掛算、割り算が正確にできないの
で、足し算、引き算に、すべての計算を分割・分
業化した。
チームは、理論家、それをもとに計算計画を立
てる人、そして、computers からできていた。
de Prony のアイデアの元: アダム・スミスの「国
富論」にある分業論だった。

2015/9/28
1776, Adam Smith, The Wealth of Nations, Book 1,
Chapter 1 of the Division of Labor.
7
参考: Pin-maker の分業論 (1)


… no only the whole work is a peculiar trade, but
it is divided into a number of branches, of which
the greater part are likewise peculiar trades.
One man draws out the wire, another straights it,
a third cuts it. a fourth points it, a fifth grinds it
at the top for receiving the head; to make the
head requires two or three distinct operations;
to put it on, a peculiar business, to whiten the pins
is another; it is even a trade by itself to put them
into the paper; and the important business of
making a pin is, in this manner, divided into about
eighteen distinct operations,…
2015/9/28
8
参考: Pin-maker の分業論 (2)

But if they had all wrought separately and
independently, and without any of them having
been educated to this peculiar business, they
certainly could not each of them have made
twenty perhaps not one pin in a day; that is,
certainly, not the two hundred and fortieth,
perhaps not the four thousand eight hundredth part
of what they are at present capable of performing,
in consequence....
2015/9/28
9
機械的コンピュータ
2015/9/28
10
de Prony に学んだ
コンピュータの祖?



Charles Babbage 1791-1871: コンピュータの歴
史やルーツ探しのストーリでは必ず登場する人
物。
実際にコンピュータを完成してはいないが、階差
機関(differential engine)、 解析機関(analytic
engine)という二つの計算機械を研究した。
設計だけに終わったものの解析機関は、計算ス
ピードを無視すれば、現代的コンピュータと同じ
能力を持っていたといわれる。そのために「祖」
とか「先駆者」とみなされている。
2015/9/28
11
Babbage と作表作業



de Prony のプロジェクトは、フランス革命期の度
量衡近代化の一環だった(メートル法) 。
プロジェクトは1790年から1801年まで続き数表
の手書き原稿は完成したが、財政難で印刷され
なかった。
1819年、英国の数学者 C. Babbage が、フランス
学士院を訪れた。そのとき、その手書き数表を
見たのではないかと Campbell-Kelly たちは書
いている。
2015/9/28
12
人間を機械で置き換える (I)




その時に、見たのかどうかは別として、いずれにせよ、
Babbage は、 de Prony が hairdressers に行わせた計算
を機械で置き換えようとした。
当時の数表、特に航海などでも重要な対数表には、多く
の誤りが含まれていることが知られていた。
Babbage や友人の天文学者 J.F.W. Herschel (天王星発
見者の息子)らは、数表の誤りが大きな事故に繋がると
警告した。
Babbage は、この問題を機械化で解決しようとした。

2015/9/28
が、実際に、そういう理由で事故が起きたという記録はないと
いう意見もある。「2000年問題」に類似した話か?
13
人間を機械で置き換える (Ⅱ)



Adam Smith の国富論の pin 工場の分業生産も、
やがて機械に置き換えられた。単純労働は skill
のない労働者で実行できる。単純労働は機械の
方が効率よく行えるし、また、適している。
数表計算という「知的作業」も、Adam Smith の
アイデアに従って分業化できた(de Prony)。
分割後の数表作成の labor は単純化され、結果
として機械で実行できるほどのものになっていた。
2015/9/28
14
人間を機械で置き換える (Ⅲ)



後に、Babbage の、この発想は計算の一般概念
に拡張され、最終的には、A.M. Turing により、
計算とは機械で行えるものという thesis が提示
される。
当時の数表には計算の誤りだけでなく、 印刷時
における誤りも多かった。
Babbage は、 A. Smith- de Prony の分業の原理
を使い、さらに計算から印刷まで一貫して機械
に行わせると誤りが減ると考えた。
2015/9/28
15
Economy of Machinery and
Manufacture


Babbage は、計算機以外にも、全国一律の郵便料金制
度の提唱や、暗号解読など、多くの分野で優れた仕事を
している万能学者。
その一つに “Economy of Machinery and Manufacture”,
1832, という生産の経済学の古典的書物がある。


一律郵便課金のアイデアもこの本にある。ただし、実際の制
度 Uniform Penny Post を作ったのは Rowland Hill 。提唱は
1837だが Babbage との関係には色々意見があるらしい。
この本の Chapter 19, 20 のタイトルが On the division of
labor であり、その中で、Adam Smith と de Prony を引用
し、さらに、数表計算の分業法(階差機関の原理)と、そ
の機械による実行について述べている。
2015/9/28
16
C. Babbage, J.S. Mill, F. Taylor,…




Babbage の本は John Stuart Mill (1806-1873)や Karl Marx (18181883) に大きな影響を与えたと言われている。
この本の議論を、最近重要性が増している「技術革新の影響を考
慮した経済学」のハシリと評価し、Babbage はコンピュータの先駆者
として再発見されたが、経済学の先駆者としても再発見されるべき
だという人もいる。
Babbage の「生産の経済」は現在のオペレーションズ・リサーチ
(OR)や、生産工学(Industrial Engineering IE)のハシリでもあり、化
学的生産法の先駆ともいえる。
その「科学的生産法の祖」として知られるのが Fredrick Winslow
Taylor (1856 -1915) は。労働者の体の動きを科学的に研究し、それ
により生産性をあげようとした。たとえば「蒸気機関に石炭を投入す
るには、大きなスコップが良いか、小さなスコップが良いか?」を研
究した。
2015/9/28
17
Babbage が A. Smith を21世紀のソフト
ウェア工学につなぐキー




その Taylor の思想 Taylorism は日本工業界が60-80年代にお家芸
としたQC (quality control)、特に、世界語にもなった KAIZEN 「改
善」の源流。日本の工場では、労働者が足を運ぶステップ数さえ改
善する。Babbage の著作は、この Taylor と、A. Smith を結んでいる。
Taylorsim と KAIZENは、1980年代からの日本に関係した情報史、
特に1980年代以後のソフトウェア工学の発展史と合理主義思想と
の関係を理解するときの重要なキー。これは1980年代から現代へ
の歴史のところで説明。
つまり、Babbage は、A. Smith を現代の情報技術、特に日本に関連
した情報技術に結びつける重要な糸。
Mill は明治の思想家西周を通して、この数年日本でとみに問題に
なっている「情報人材の問題」に結びつく。Babbage は、こちら経由
でも A. Smith からの流れを日本に結び付けるらしい。←研究中。
2015/9/28
18
その Babbage が考えた、人間
コンピュータを置き換える機械
コンピュータが
階差機関と解析機関
2015/9/28
19
階差機関:The differential Engine

階差機関の原理






Babbage の著書より。F(x)=x2
x
1 2 3 4 5 6... から
F(x) 1 4 9 16 25 36… を作る
階差 3 5 7 9 11….
階差 2 2 2 2….
これを下から、上に作れば、足し算だけで
F(x)=x2 が計算できる。
2015/9/28
20
階差計算の能力




数学の理論により、多くの関数は、多項式で近
似できることが知られている。
近似の誤差を処理すれば、ほとんどすべての関
数の計算、したがって、数表の計算が可能。
必要なのは、数列を記憶しておくこと。そして、こ
の項に対して足し算を行うこと。
Babbage は、これを機械にやらせようとした。

2015/9/28
注. 階差計算を機械に実行させるというアイデアは、
Babbage 以前にもあった。
21
解析機関: The Analytic Engine




宣伝がうまい Babbage は、英国政府から多大の研究費
を得て、階差機関を作ろうとしたが、当時の機械技術で
は、難しかった。そのため、ヨーロッパ各地の工場を使え
る技術を求めて視察し、その結果が、前述の経済学書と
なった。
しかし、Babbage の計画は、遅々として進まず、英国政
府の信用も落ち、お金も続かなくなる。
さらにまずいことに(?)Babbage は、階差機関を完成さ
せずに、解析機関という、さらに進んだ機械の設計に没
頭するようになる。
この機械は、一戸建ての家くらいの大きさで、6台の蒸
気機関で動かす設計になっていたらしい。
2015/9/28
22
解析機関の原理




階差計算の出力を、再び、階差計算の入力にできるよう
に、出力を入力に結びつけるというのが、そのアイデア。
現代的用語でいうと「ループ」とか、「繰り返し(iteration)」
と呼ばれるものになる。つまり、同じ計算を繰り返すこと。
足し算、数列の記録、ループ、後、これに「条件分岐」さ
えあれば、現代のコンピュータと、理屈上は同じ能力に
なる。
解析機関は、条件分岐も備えており、これらからなる計
算手従、つまり、「プログラム」を、ジャガード織機のため
に使われていたパンチカードで指定することができた。
2015/9/28
23
失敗した Babbage machines






それ故に、「祖」。
しかし、Babbage の階差機関、解析機関は失敗
に終わる。(19世紀半ばころまでの話)
実際に作られたのは、機関の一部分のみ。
Babbage の死後に、彼の息子や London の科学
博物館により、これらの機械が(完全ではない
が)作られている。
London の科学博物館にある。
そして、今年になって…
2015/9/28
24
2台目が作られた

California の億万長者の Nathan
Myhrvold (元マイクロソフト社)が、もう一
台を作らせ、極く最近、シリコンバレーのコ
ンピュータ博物館についた。5月10日から
数ヶ月公開され、その後、Myhrvold の邸
宅に置かれるらしい。

http://www.news.com/8301-13772_3-9915667-52.html
http://io9.com/381601/the-victorian+era-supercomputer-and-thegenius-who-created-it

2015/9/28
25
The Analog Animals
The title is borrowed from M.R. Willams “History of Computing Technology”




19世紀から20世紀初頭にかけては、Babbage 的なデジ
タル・アプローチでなくアナログ計算機が実用化された。
潮の干満を予測する: Tide Predictors 1876年に作られ、
1950年代ころまで、世界各地で使われた。
電力網をシミュレーションした: Vannevar Bush の
Differential analyzers, 1930年代に作られたが、1951年
のSF映画にも登場している: movie1 movie2
これらが、地球シミュレータのような、今日の大規模科
学計算の前身といえる。しかし、計算方法は、現在は、
デジタル。
2015/9/28
26
The Mechanical Monsters
The title is borrowed from M.R. Willams “History of Computing Technology”


さらに1940年台になるとデジタル・アプローチが
再登場する。
リレーのような電気機械式メカニズムを使い、現
代のコンピュータに近い計算機が多く作られ始
める。代表的なもの:


2015/9/28
The Zuse Machines
The Harvard Mark I (IBM 製)
27
電子計算機としてのコンピュータ
2015/9/28
28
そして、electronic computers
電子計算機 へ




コンピュータの古い名前:電子頭脳、電子計算機。
アナログ計算機、電気機械式計算機では、テープやリ
レーなどの「物」が動作することにより計算が行われる
ので、その動作スピードには限界がある。あまり速いと
ギアが壊れる。カードが破れる。しかし、electronics を使
えば、電子のスピードは光の速さと同じ。
19世紀の技術は力学的機械中心。それはアナログ・コ
ンピュータに適していた。やがて電子技術が発達し計算
機に応用できるまでになる。そして、同時に、それだけの
高速性と精度を必要とするだけのニーズが数多く生ま
れる。
新技術発生の条件: ニーズとそれを実現する方法
2015/9/28
29
現代的コンピュータの発明



1940年代、University of Pennsylvania, 工学部の
Moore school で ENIACとEDVAC という2台の
計算機が開発された。これが現代的コンピュー
タの原型とされている。
これらに先行した研究、また、後発だが、4先に
完成した機械もあるが、これらこそが、現代のコ
ンピュータの源流というのにふさわしい。理由は
後で説明。
この二つは第2次世界大戦下における軍事研
究、弾道計算と原子爆弾が motivation となって
いる。資金は、主に軍からでている。
2015/9/28
30
ENIAC





Electronic Numerical Integrator and Computer
数値計算用の汎用コンピュータ。
その構成は、ほぼ、現代のコンピュータに近い。
ただし、プログラムがメモリに入っておらず、ケー
ブルの配線でプログラミングをしていた。
これがENIAC が真の現代的コンピュータと言え
ない理由で、EDVAC で、その問題が解決され
ることとなる。
2015/9/28
31
ENIACの背景:弾道計算と射撃表


火砲の弾道を予測するには、弾丸の形、風、仰
角、方位角、距離、気温、重力などを考慮した
「微分方程式」というものを解く必要がある。これ
は differential analyzer などが得意とする計算
だった。
1930-40年代には、マニュアル、あるいは、機械
的に射撃表(firing table)が使われていた。米陸
軍の場合、一つの表は、約3000の弾道を含んで
おり、パラメータを決めて、表を引くと火砲の正し
い setting を見つけることができるようになってい
た。
2015/9/28
32
弾道計算の手間

第2次世界大戦の戦時下では、新しい火
砲が次々に開発され、膨大な計算が必要
となった。一つの弾道を計算するのに、
differential analyzer で10から20分、人間
なら1, 2日かかった。一つの firing table 作
成には、100名のチームで、約1ヶ月か
かったという。
2015/9/28
33
John Mauchly (I)



Differential Analyzer を所有していたペンシルバ
ニア大 Moore school は、第2次世界大戦が始
まるころから、この弾道計算を米陸軍の BRL
(Ballistic Research Lab.) に協力して行っていた。
計算は、differential analyzer などの機械や,
100-200名程度の女性のチームで行われ、この
人間コンピュータの教育を、Moore school の J.
Mauchly の婦人だった。
この時代、de Prony のころとは異なり、人間コン
ピュータは、手動計算機を操作していた(手動計
算機の例: 日本のタイガー計算機)。
2015/9/28
34
John Mauchly (II)


1942年夏、Mauchly は、この膨大な計算
のための電子式計算機の開発を提案した。
戦時体制が始まるまで、小さな教養大学
の物理学教師だった Mauchly は、大学の
戦時協力プログラムの中で頭角を現し、
1942年9月よりMoore school の教員になっ
た(Univ. of Penn. はアイビーリーグ校の
ひとつ)。
2015/9/28
35
J. P. Eckert


Mauchly は技術的素養がなかったので、Moore school
の若い技術者 Eckert に話を持ちかけた。
Eckert は、たまたま、レーダーのために遅延線メモリ
delay-line memory という「情報をユックリ伝えることによ
り記録する装置」を研究していた。



移動する物体の位置がユックリ消えれば、その物体の「動線」
が見えることなり、動きが認識しやすくなる。
これが後にコンピュータのメモリとなる。(1000分の1秒ほ
ど遅らせた。)
彼らは、共同して、differential analyzer が15-30分かかる
計算を、100秒で実行できるという機械を提案したが、
Moore school と陸軍に無視される。
2015/9/28
36
H.Goldstine


しかし、BRL の女性コンピュータ担当の将校
だった、数学者 H. Goldstine は、その提案の重
要性に気づき、この計画を強く指示し、Goldstine
の後押しにより、1943年春、再度の提案により
ENIAC の project が発足する。
Goldstine は、当時の計算の困難さを、次のよう
に上申した:
 176名のコンピュータと、11台の differential
analyzer と数多くの IBM マシンを使っても、
一つの表を作成するのに2交代制で3ヶ月
かかる。
2015/9/28
37
John von Neumann (I)




ENIAC の開発開始から1年半が過ぎた 1944年夏、
Goldstine は数学者 von Neumann に合う。
Hungary 有数の銀行家の息子 von Neumann は、神童
が、そのまま大科学者になった人で、当時から超有名。
元々、銀行家や軍人を尊敬していた(そうなりたかった)
彼は、政府機関の顧問を沢山つとめていた。
その一つがBRLで、定期訪問に訪れたとき、たままた、
相手をしたのが、Goldstine だった。Goldstine のENIAC
の話を聞いた途端、von Neumann の人当たりの良い態
度が一変したと Goldstine は書いている。
2015/9/28
38
John von Neumann (II)


ユダヤ系の Neumann の家は、Hungary では貴族の称
号ももっていた。John は、ナチスの弾圧を逃れて米国に
亡命した。その幼少時や若いときの経験から、全体主義、
共産主義に、強い嫌悪感を持っていたらしい。冷戦の中
心的頭脳、ネオコンの源流とみなせる人物。
Von Neumann は、原爆製造のマンハッタン計画にかか
わり、implosion という原爆発火の仕組みのために「非
線形計算」という複雑な計算にかかわっていた。そのた
め、高速な計算機の必要性を感じていた。このためも
あって、Goldstine の話に強い興味を持ったらしい。
2015/9/28
39
John von Neumann (III)


しかし、von Neumann の計算のためには、
ENIAC は問題が多すぎた。
Von Neumann は以後は、自身がENIAC
チームに深く係わり、いわゆる「ノイマン型
コンピュータ」の誕生を促すこととなる。
2015/9/28
40
EDVAC

1.
2.
3.

ENIAC には3つの問題があった。
プログラムをケーブルの差し替えでやっていたので、大
変、面倒だった。
小さいメモリしか持たず、たとえば、implosion の計算に
は使えなかった。
メモリが真空管でできており、それがメモリの小ささと、
信頼性に影響を与えていた。
これらを解決する後継機 EDVAC (Electronic Discrete
Variable Automatics Computer)が計画される。Von
Neumann が、お金をつける委員会のメンバーだった!
2015/9/28
41
三つの問題の解決




これらの問題を解決したのが、
問題1 については、プログラム内蔵方式という、概念的
アイデアで解決。今の言葉で言えば、architecture (当
時は、logical design と言った)上のアイデア。
問題2,3は、Eckert の水銀遅延線メモリーで解決され
た。
問題1の解決は、貴重なメモリが安価になることにより、
それまでは計算機の「外」にあったプログラム(カード、
テープ、ケーブル)を、計算機のメモリ内部に取り込め
るようになったことの影響が大きい。
2015/9/28
42
アーキテクチャが固まってくる…




現代のコンピュータは、2進法で動くことは有名
だが、ENIAC は10進法だった!
これを2進法に改めた。これにより必要となる回
路を遥かに単純化することができた。
メモリの改善、プログラムの内蔵、2進法への移
行により、EDVAC の構想は、急速に固まった。
それをまとめてレポートにしたのが、von
Neumann。
2015/9/28
43
von Neumann Architecture

Von Neumann は: “A First Draft of a Report on
the EDVAC”を1945年6月30日にまとめる。



PDF 化したもの:
http://www.virtualtravelog.net/entries/2003-08TheFirstDraft.pdf
当初、グループ内だけの文書にするつもりで、
自分の名前だけ書いていたが、これが一挙に世
界中に広まり、計算機開発の手本となった。
このレポートの故に、プログラム内臓式の現代
的コンピュータのアーキテクチャに von
Neumann の名前がついた。
2015/9/28
44
Von Neumann レポートの問題点



A First Draft of a Report on the EDVAC には、
著者としてVon Neumann の名前しかなかった。
本人はチームの仕事だと認識していたが、成り
行き上、彼だけの名前をつけたレポートが独り
歩きをした。
電子工学的問題、つまり、Mauchly, Eckert が一
番苦労した問題を、全部、すっ飛ばし、装置の
論理的構成しか書かなかった。
これに、Mauchly たちは怒った。
2015/9/28
45
The Engineers versus the Logicians


2015/9/28
Project は、論理的仕組みを重視する「論理学
者たち」 von Neumann, Goldstine (数学者),
Burkes (哲学者)と、電子工学的仕組みを重
視する「技術者たち」 Eckert, Mauchly に2分
され対立するようになる。
また、アカデミズム重視の前者と、商業化を考
えた後者の対立となり、大学の方針も絡んで、
後にプロジェクトは分裂することになる。
46
The Moore school lectures



しかし、分裂しかけでも、ENIAC チームの研究
は世界から高く評価され、また、戦争が終わった
ことで、技術の公開の圧力が増した。
1946年2月16日 ENIAC はENIACは落成し、メ
ディアにも公開される。
そして、 8 July 1946 - 31 August 1946に、英国な
どから科学者を集めて、プログラム内臓式の原
理まで含めて、Moore school での連続講義で技
術が公開されることとなった。
2015/9/28
47
世界最初の現代的コンピュータは?

この講義から刺激を受けた人たちが、計
算機開発プロジェクトを立ち上げ、
EDVAC 完成以前に、現代的コンピュータ
を作った。だから、EDVAC は、世界最初
の現代的コンピュータではなかった…
2015/9/28
48
最初のコンピュータ達


ENIAC:1943年開発開始-1945年秋完成
EDVAC:1945年開発開始-完成は1952年!(Eckert,
Mauchly は1946年に大学を去る)





プログラム内蔵方式、いわゆるノイマン・アーキテクチャの発
明
von Neumann レポート: “A First Draft of a Report on the
EDVAC”、 1945年6月30日
The Moore School Lectures 8 July 1946 - 31 August 1946
1948完成 Manchester Univ., Baby Machine, T. Kilburn、
F.C. Williams
1949完成 EDSAC Cambridge Univ., M. Wilkes
2015/9/28
49
コンピュータの発明者は誰か?




コンピュータの発明者を、Eckert たちではなく、
Atanasoff-Berry, Zuse とする意見もある。
発明物語は、大衆受けするために単純化されている。
多くの場合は、同じような研究プロジェクトが同時進行し
ており、互いに影響を与えていることが多い。コンピュー
タの場合もそうである。
特に時代が新しくなるほど、その傾向が強い。



技術者・科学者の数の増大
プロジェクトの巨大化
Globalization


2015/9/28
情報伝達の迅速化
科学・技術の標準化
50