シャノンの情報理論とエントロピー。コンピュータの歴史と重要人物

この記事は6分で読めます

自分用メモ

シャノンの情報理論から、エントロピー増大の法則へ

コンピュータにおける重要人物


コンピュータのルーツを辿る

ダフィット・ヒルベルト

(1862年1月23日 – 1943年2月14日)
数学を最高の学問として確立した「現代数学の父」
抽象代数学、積分方程式、幾何学基礎論、数学基礎論、一般相対性理論など

ジョン・フォン・ノイマン

(1903年12月28日 – 1957年2月8日)
ヒルベルトの後継者だが、ゲーデルの主張も受け入れた
ゲーム理論の成立やモンテカルロ法の考案、擬似乱数生成器の開発に貢献
物理では「量子力学の数学的基礎」で知られる
WW2の原爆開発や、その後の核政策への関与でも知られる

現代のコンピュータの基礎を築いた事でも有名。
コンピュータの基本的な構成である。プログラム内蔵方式や、
逐次制御方式を採用した「ノイマン型コンピュータ」に名前が残る

クルト・ゲーデル

(1906年4月28日 – 1978年1月14日)
「数学の最終目標が達成不可能」という事を証明した(不完全性定理)
あらゆる記号と指示が含まれた一連のアルゴリズムを考案し、
ニュートンの数学やヒルベルトの論理の背景にある決定論的哲学に異を唱え
新たな数学となる「情報数学」への道を拓いた
その結果、コンピュータやコミュニケーションの産業が誕生する事になった

アラン・チューリング

(1912年6月23日 – 1954年6月7日)
ゲーデルの証明に基づき、1936年にチューリングマシンを構想した
このマシンは、他の論理システムと同様、コンピュータプログラムが
不完全であるだけでなく、何かしらの結論に達するとは証明できない事を示した
(いかなるプログラムも永遠に稼働する可能性がある=停止性問題)
人工知能の概念を提起しており、「人工知能の父」とも呼ばれる
WW2時、ナチスドイツの暗号を解読した事でも有名

クロード・シャノン

(1916年4月30日 – 2001年2月24日)
アメリカの数学者。1948年に、情報通信を数学的に論じる
学問である情報理論の考案者として知られ、暗号やデータ圧縮、
符号化などの今日の情報社会で欠かせない概念を考案した。

デジタル計算の基本単位としてビットを使用。
「情報は、機械によってあらかじめ決められるビット数ではなく、
想定外のビット数になる」と定義した。

情報の「量」を、熱力学から輸入した概念である
「エントロピー」として定義した事で知られる。
シャノンは、情報の乱雑さがエントロピーだと定義した。

グレゴリー・チャイティン

(1947年〜)
ゲーデルやチューリングの研究をもとに、
アルゴリズム情報類論の概念を考案した。

※参考:デジタル用語の定義を簡単にまとめてみた
※参考:グーグルが消える日 Life after Googleの書評

エントロピーとは?


エントロピー:情報の少なさ

エントロピーに関して、ボルツマンは「熱力学的乱雑さ」
シャノンは「情報の乱雑さ」を定義だとした。

シャノンは「予想外なこと」をエントロピー指標として
情報量を測定し、任意のレベルまでエラーを減らせる
冗長性を測定する方法を示した。

シャノンが1948年に作り上げた情報理論によって
新たな科学が誕生し、新たな世界システムに基づく経済が生まれた。

そして、Googleがこの新システムを完成させた。

エントロピーを下げるために


「これからはエネルギー社会からエントロピー社会へ」
膨大な情報から、必要な部分を取り出して
他を捨てる(エントロピーを下げる)力が求められている。

エントロピー:分からない情報量の尺度

エントロピーが大きい部屋は、分からない情報が多い、
つまり汚かったり、散らかっていたり、統一感のない乱雑な状態。

エントロピーが小さな部屋は、分からない状態が少ない、
つまり整理整頓されていて、どこに何があるかすぐに分かる綺麗な状態。

自分のエネルギーを使ってエントロピーを下げていく事で、
場のエネルギーは上がっていく。

コンピュータの歴史


①コンピュータの歴史

●コンピュータの前身(1617〜1937)
・プログラム内蔵方式
・2進数
・チューリングマシン

●コンピュータの登場(1946〜1950)
・ENIAC(最初のコンピュータ)

●第一世代(1950〜1959)
・2進数で直接記述する機械語
・機械語を簡単な文字記号で記述するアセンブリ言語
・初のコンパイラ言語であるFORTRAN

●第二世代(1959〜1964)
・コンピュータの小型化
・事務処理向けプログラミング言語COBOLの開発

●第三世代(1964〜1970)
・汎用機IBM/360の登場
・CPUが1枚の基板に収まるミニコンピュータの登場
・オペレーティングシステム(OS)の登場
・初心者向け汎用言語BASICの登場
・ソフトウェアそのものが商品となる(ソフトウェア産業の勃興)

●第3.5世代(1970〜1980)
・ファイルを一括管理するデータベースが普及
・1つのチップに処理装置が収まるマイクロプロセッサの登場
・1つのハードウェア上で複数のOSが可動する仮想計算機の登場
・C言語が開発される

●第四世代(1980〜現代)
・超大型の高速コンピュータ「スーパーコンピュータ」の開発
・オフィスコンピュータやパーソナルコンピュータの登場
・コンピュータ同士が通信を行うコンピュータネットワーク技術が発展
→WANやLANの構築

②マイクロプロセッサの歴史

●マイクロプロセッサの出現
・1971年、インテルが電卓用に4ビットマイクロプロセッサi4004を開発

●8ビットコンピュータの時代
・1974年、インテルがi8080を開発

●16ビットコンピュータの時代
・より多くの主記憶(メモリ)を管理する能力や処理速度を得るため。
・マルチユーザーやマルチタスクといった機能を安全に実現するために
 OSをサポートするためのメモリ保護機能などが組み込まれていく

●32ビットコンピュータの時代
・1982年頃から、メモリが不足した時にハードディスクに
 データを退避する機構である仮想記憶がプロセッサに組み込まれていった。

●64ビットコンピュータの出現
・大規模アプリケーションに対応するため、64ビットプロセッサが求められている。

③OSの歴史

●汎用機からミニコンピュータへ
・1964年のIBM/360からOSが重視され始める
・1973年からUNIXが実用化。特徴は以下の通り
→複数のユーザーによる複数の処理(マルチタスク)を簡単な操作で行える
→コンピュータの中のファイルを、ディレクトリにより木構造状のファイル構造として扱える

●パソコン用のOS
・8ビットPCでは、当初OSという概念はなかった

●マイクロソフト社の出現
・1981年、IBMがIBM5150 Personal Computerを発表
・マイクロソフトがIBMから依頼を受け、MS-DOS1.0を発表
→MS-DOS 3.1に改良され、16ビットコンピュータの標準的なOSとして普及が進む
・1981年、AppleがMacintoshを発表。LISAのGUIの操作性に影響を受けている。
・1985年、マイクロソフトがWindowsの開発を進める→90年にはWindows3.0が登場
・1992年、Windows3.1が登場。広く普及するように。

●オープンソースソフトウェアからのOS
・UNIXはBSD系とSystem V系に分かれ発展を続ける。前者は大学の研究者の間で普及した。
・1990年頃、Linuxが登場。世界中のハッカーにより改良が続けられている。

●組込み用制御OS
・坂村健のTRONが代表例

④プログラム言語の歴史

●初期のプログラム言語
●改良発展を遂げるプログラム言語
●オブジェクト指向プログラミング言語
・手続き指向プログラミング:FORTRAN、COBOL
・オブジェクト指向プログラミング:C++、Java


⑤ここ最近の歴史

1975:ビル・ゲイツがマイクロソフト社を設立
1977:アップルコンピュータがApple Ⅱを発売
1984:アップルコンピュータがMacintoshを発売
1986;SQLの最初の規約が批准される
1991:ティム・バーナーズ=リーがWorld Wide Webプロジェクトを発表
同年:Linuxの初リリース
1993:欧州原子核研究機構がWorld Wide Webを公開。普及が始まる
1994:ティム・バーナーズ=リーがW3Cを設立
1995:Windows95の発売
1996:Javaが公式リリース。JavaScriptが標準化
2001:iPodの登場、ネットバブルが崩壊
2003:中国でネット検閲システム・グレートファイアウォールが稼働
2007:AppleがiPhoneを発売。スマホの普及が進む
2008:GoogleがモバイルOSであwるAndroidをリリース
2009:IBMがワトソンを公開
2010:IPv4アドレスの枯渇
2012:Googleブレインの構築。ディープラーニングの有用性が認められる
2014:スマートスピーカーの登場
2016:アルファ碁が世界最強の棋士に勝利


⑥プログラミング言語の歴史

1957:IBMのジョン・バッカスがFORTRANを開発する
1960:COBOLが発表される。アメリカ国防総省主導で開発された
1964:BASICが開発される
1972:C言語が開発される
1970年代前半:ゼロックスが、オブジェクト指向言語に影響を与えたSmalltalkを開発
1983:C++が命名される
1983:Objective-Cが開発される
1987:ラリー・ウォールによってPerlが開発される
1990:グイド・ヴァンロッサムによってPythonが開発される
1991:マイクロソフト社がVisual Basicを発表。80年代までのBASICとは異なるもの
1993:まつもとゆきひろがRubyを開発
1995:サン・マイクロシステムズがJavaを発表
1995:PHPの元となるPHP/FIが開発される
1997:JavaScriptの標準仕様としてECMAScriptが標準化される
2002:マイクロソフト社がC#を発表。C++とJavaの中間的な特徴を持つ
2003:マーティンオーダスキーがScalaを開発。
2009:GoogleがGoを発表
2010:MozillaがRustを発表。大規模サーバにおけるシステム構築が得意
2014:AppleがSwiftを発表。
2014:FacebookがHackを発表。PHPをベースにしてる





  • このエントリーをはてなブックマークに追加
  • LINEで送る

関連記事

  1. 2019 06.08

    令和と歴史

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。