Edsger Wybe Dijkstra ( / ˈ d aɪ k s t r ə / DYKE -strə ;オランダ語: [ ˈɛtsxər ˈʋibə ˈdɛikstraː ]ⓘ ; 1930年5月11日 - 2002年8月6日) は、オランダのコンピュータ科学者、プログラマー、数学者、科学エッセイスト。 [ 1 ] [ 2 ]
オランダのロッテルダムで生まれたダイクストラは、数学と物理学を学び、その後ライデン大学で理論物理学を専攻した。アドリアーン・ファン・ワインガルデンは、アムステルダムの数学センターでオランダ初のコンピュータプログラマーとして彼に仕事を提供し、ダイクストラは1952年から1962年までそこで働いた。彼は1956年に最短経路問題を定式化して解決し、1960年には同僚のヤープ・A・ゾンネフェルトと共同でプログラミング言語ALGOL 60の最初のコンパイラを開発した。1962年にアイントホーフェンに移り、その後ヌーネンに移り、アイントホーフェン工科大学の数学科の教授となった。1960年代後半には、ソフトウェアベースのページング仮想メモリの使用により、後続のシステムの設計に影響を与えたマルチプログラミングシステムTHEを構築した。ダイクストラは1973年8月、バロウズ・コーポレーションに唯一の研究員として入社した。バロウズ在籍中は、彼が研究論文を最も精力的に執筆した時期だった。彼は「EWD」シリーズで500近い文書を執筆したが、そのほとんどは技術報告書であり、限られたグループ内でのみ配布された。
ダイクストラは1984年にテキサス大学オースティン校のコンピュータサイエンス学科でシュルンベルジェ百年記念講座教授に就任し、 1999年11月に退職するまで米国オースティンで研究に従事した。彼と妻はオースティンから故郷のヌーネンに戻り、そこで2002年8月6日に癌との長い闘病の末に亡くなった。[ 3 ]
彼は、構造化プログラミング言語の開発への基礎的な貢献により、 1972年にACMチューリング賞を受賞した。死去直前には、プログラム計算の自己安定化に関する研究で、分散コンピューティング分野におけるACM PODC影響力論文賞を受賞した。この賞は、翌年、彼の功績を称え、ダイクストラ賞と改称された。
ダイクストラはロッテルダムで生まれた。彼の父、ドウエ・ワイベ・ダイクストラ[ 4 ](1898年-1970年)は化学者で、フランス・マウリッツ・イェーガーに師事し、オランダ王立化学会のロッテルダム支部であるロッテルダム化学会の会長を務めた。彼は中等学校で化学を教え、後に校長となった。彼の母、ブレヒトイェ・コルネリア・クルイバー(1900年-1994年)は数学者であったが、正式な職には就かなかった。[ 5 ] [ 6 ] [ 7 ]
ダイクストラは法律の道に進むことを考えており、国連でオランダ代表になることを望んでいた。しかし、1948年にエラスムス高校を卒業後、両親の勧めで数学と物理学を学び、その後ライデン大学で理論物理学を専攻した。[ 8 ]
1950年代初頭、電子計算機は目新しいものだった。ダイクストラは偶然にもこの道に進み、指導教官のヨハネス・ハーンチェス教授を通じて、アムステルダム数学センターの計算部門長であるアドリアーン・ファン・ワインガルデンと出会い、彼から仕事のオファーを受けた。こうしてダイクストラは1952年3月に正式にオランダ初の「プログラマー」となった。[ 8 ]
ダイクストラはしばらくの間物理学に専念し、毎週3日間ライデンで研究に取り組んでいた。しかし、コンピューターに触れる機会が増えるにつれて、彼の関心は変化し始めた。彼が回想したように: [ 9 ]
3年ほどプログラミングをしていた頃、当時アムステルダムの数学センターで私の上司だったA.ファン・ワインガルデンと話し合いをしました。この話し合いには、生涯感謝し続けるでしょう。要点は、ライデン大学で理論物理学を同時に学ぶ予定だったのですが、2つの活動を両立させるのがますます難しくなってきて、決断を迫られていたということです。プログラミングをやめて、真の尊敬される理論物理学者になるか、それとも物理学の勉強を形式的に、最小限の努力で終えて、……、そう、何になるか?プログラマー?しかし、それは尊敬される職業なのでしょうか?そもそも、プログラミングとは何なのでしょうか?知的に尊敬される学問分野としてそれを支える確固たる知識体系はどこにあるのでしょうか?ハードウェアの同僚たちが、自分の専門能力について尋ねられたときに、少なくとも真空管や増幅器などについてすべて知っていると指摘できたのに、自分はそんな質問をされたら何も答えられないだろうと感じていたことを、今でも鮮明に覚えています。不安を抱えながらヴァン・ワインガルデンのオフィスのドアをノックし、「少しお話させていただけませんか」と尋ねました。数時間後、彼のオフィスを出た時、私は別人のようになっていました。彼は私の悩みを辛抱強く聞いてくれた後、当時プログラミングという学問分野はほとんど存在していなかったことを認めつつも、自動コンピュータは今後も存在し続けるだろう、私たちはまだ始まったばかりだ、そして将来プログラミングを立派な学問分野にするために、私がその役割を担う一人になれないかと静かに説明してくれたのです。これは私の人生における転換点となり、私はできる限り早く物理学の正式な研究を修了しました。
—エドガー・ダイクストラ、『謙虚なプログラマー』(EWD340)、Communications of the ACM、
1957年にダイクストラがマリア・「リア」・C・デベッツと結婚した際、結婚の儀式の一環として職業を申告する必要があった。彼はプログラマーだと申告したが、当時のオランダにはそのような職業は存在しなかったため、当局には受け入れられなかった。[ 9 ] [ 10 ]
1959年、彼はアムステルダム大学から「自動コンピュータとの通信」というタイトルの論文で博士号を取得した[ 11 ]。この論文は、オランダで開発された最初の商用コンピュータであるElectrologica X1用に設計されたアセンブリ言語の説明に関するものであった。彼の論文指導教官はVan Wijngaardenであった[ 12 ]。
1952年から1962年まで、ダイクストラはアムステルダムの数学センターで働き[ 12 ] 、コンピュータの構築のために雇われたブラム・ヤン・ループストラとカレル・S・ショルテンと密接に協力した。彼らのやり取りの方法は規律的だった。まず、プログラミングマニュアルを書いてハードウェアとソフトウェアのインターフェースを決定した。次に、ハードウェア設計者は契約の自分の役割に忠実でなければならず、プログラマーであるダイクストラは存在しないマシン用のソフトウェアを書いた。この経験から彼が学んだ2つの教訓は、明確なドキュメントの重要性と、慎重な設計によってプログラムのデバッグを大幅に回避できることだった[ 8 ] 。ダイクストラは、1956年のARMACコンピュータの公式開所式でのデモンストレーションのために最短経路問題を 定式化して解決した。自動計算に特化したジャーナルがなかったため、彼は1959年までその結果を発表しなかった。
数学センターで、ダイクストラと彼の同僚ヤープ・ゾンネフェルトは、 1960年8月までにプログラミング言語ALGOL 60の最初のコンパイラを開発しました。これは、別のグループがコンパイラを作成する1年以上前のことです。[ 8 ] ALGOL 60は、構造化プログラミングの台頭における重要な進歩として知られています。

1962年、ダイクストラはアイントホーフェンに移り、その後オランダ南部のヌーネンに移り、アイントホーフェン工科大学の数学科の教授となった。[ 12 ]大学には独立したコンピュータ科学科がなく、数学科の文化は彼にはあまり合わなかった。ダイクストラは、問題解決のために協力できるコンピュータ科学者のグループを作ろうとした。これは数学科にとって珍しい研究モデルだった。[ 8 ] 1960年代後半、彼はTHEオペレーティングシステム(当時アイントホーフェン工科大学として知られていた大学にちなんで名付けられた)を構築し、ソフトウェアベースのページング仮想メモリの使用により、その後のオペレーティングシステムの設計に影響を与えた。 [ 13 ]
ダイクストラは、当時革新的なハードウェアアーキテクチャに基づくコンピュータを製造することで知られていたバローズ社に、1973年8月に研究員として入社した。彼の職務は、年に数回同社の研究センターを訪問し、バローズ社で最も小さな研究施設、つまりヌーネンにある自宅の2階にある書斎で自身の研究を行うことだった。実際、ダイクストラはバローズ社で唯一の研究員であり、自宅で仕事をし、時折米国にある支社に出張していた。その結果、彼は大学での勤務を週1日に減らした。その日、火曜日はすぐに有名な「火曜午後クラブ」の日として知られるようになり、そこで彼は同僚と科学論文について、表記法、構成、表現、言語、内容などあらゆる側面から議論した。その後まもなく、1984年にテキサス大学オースティン校(米国)に移り、火曜午後クラブの新たな「支部」がテキサス州オースティンに誕生した。[ 12 ]
バロウズ時代は、彼が研究論文を最も精力的に執筆した時期だった。彼はEWDシリーズで500近い文書を執筆したが、そのほとんどは技術報告書で、選ばれたグループ内で非公開で配布された。[ 8 ]

ダイクストラは1984年にテキサス大学オースティン校のコンピュータサイエンス学科でシュルンベルジェ百年記念講座教授職に就任した。[ 14 ]
ダイクストラは1999年11月に退職するまでオースティンで働いていた。この機会を記念し、コンピュータ科学への40年以上にわたる先駆的な貢献を祝うため、コンピュータ科学科は2000年5月の彼の70歳の誕生日にシンポジウムを開催した。[ 8 ]
ダイクストラと妻はオースティンからオランダのヌーネンにある彼の元の家に戻ったが、そこで彼は余命数ヶ月であることを知った。彼はテキサス州オースティンで引退したいが、オランダで死にたいと言った。ダイクストラは癌との長い闘病の末、2002年8月6日に亡くなった。[ 3 ] [ 15 ] [ 16 ] [ 17 ]彼と妻には、マーカス、フェムケ、そしてコンピュータ科学者のルトガー・M・ダイクストラという3人の子供が残された。[ 18 ]

オランダの小さな町に住む無名のコンピュータ科学者にMITが注目しなかったとしても、責めることはできないだろう。
—ダイクストラは1960年代半ばにヌーネンで自身についてこう語った。[ 20 ]
計算機科学の世界では、ダイクストラは「個性的な人物」としてよく知られています。著書『プログラミングの規律』(1976年)の序文で、彼は次のように述べています。「参考文献がないことについて、私は説明も弁解もいたしません。」実際、彼の論文や書籍のほとんどには参考文献が全くありません。[ 12 ]ダイクストラは、自立性を保つためにこのような作業方法を選んだのです。[ 21 ]
生涯の大半を大学教授として過ごしたダイクストラは、教育を単なる義務的な活動ではなく、真剣な研究活動と捉えていた。[ 8 ]彼の教育へのアプローチは型破りだった。[ 22 ]彼の講義スタイルは独特だと評されている。講義中、文と文の間の長い間は、英語がダイクストラの母語ではないことに起因するとされることが多い。しかし、この間は彼がその場で考えるための手段でもあり、講義中は素早く深く考える人として知られていた。オースティンの学生向けの彼のコースはコンピュータサイエンスとはほとんど関係がなく、数学的証明の提示を扱っていた。[ 12 ]各学期の初めに、彼は学生の名前を覚えるために、学生一人ひとりの写真を撮っていた。彼は教科書を使うことはなく、おそらく自分の教科書を準備している間だけは例外だった。講義中は、オーバーヘッドプロジェクターを使う代わりに、黒板にチョークで証明を書いていた。彼は学生たちにアイデアを提案するよう促し、それらのアイデアを探求したり、あるいは彼の信条に反するアイデアは探求することを拒否したりした。彼は難しい宿題を出し、学生たちの解答を徹底的に研究した。彼は最終試験を1週間かけて口頭で行った。各学生はダイクストラのオフィスまたは自宅で試験を受け、試験は数時間続いた。[ 8 ]
ダイクストラは、人々の仕事能力を評価する方法においても非常に独創的だった。 1990年にウラジミール・リフシッツが就職面接のためにオースティンに来たとき、ダイクストラは彼にパズルを与えた。リフシッツはそれを解き、それ以来オースティンで働いている。[ 12 ]
He avoided the use of computers in his own work for many decades. Even after he succumbed to his UT colleagues' encouragement and acquired a Macintosh computer, he used it only for e-mail and for browsing the World Wide Web.[8] Dijkstra never wrote his articles using a computer. He preferred to rely on his typewriter and later on his Montblanc pen.[12] Dijkstra's favorite writing instrument was the Montblanc Meisterstückfountain pen.
He had no use for word processors, believing that one should be able to write a letter or article without rough drafts, rewriting, or any significant editing. He would work it all out in his head before putting pen to paper, and once mentioned that when he was a physics student he would solve his homework problems in his head while walking the streets of Leiden.[8] Most of Dijkstra's publications were written by him alone. He never had a secretary and took care of all his correspondence alone.[12] When colleagues prepared a Festschrift for his sixtieth birthday, published by Springer-Verlag, he took the trouble to thank each of the 61 contributors separately, in a hand-written letter.[12]
In The Humble Programmer (1972), Dijkstra wrote: "We must not forget that it is not our [computing scientists'] business to make programs, it is our business to design classes of computations that will display a desired behaviour."
Dijkstra also opposed the inclusion of software engineering under the umbrella of academic computer science. He wrote that, "As economics is known as 'The Miserable Science', software engineering should be known as 'The Doomed Discipline', doomed because it cannot even approach its goal since its goal is self-contradictory," and "software engineering has accepted as its charter 'How to program if you cannot.'"[23]
ダイクストラは質素な生活を送っており、禁欲的と言っても過言ではないほどだった。[ 12 ]彼と妻がヌーネンに住んでいた家は、質素で小さく、目立たないものだった。彼はテレビもビデオプレーヤーも携帯電話も持っておらず、映画館にも行かなかった。[ 12 ]彼はピアノを弾き、オースティンにいた頃はコンサートに行くのが好きだった。クラシック音楽の熱心なリスナーだったダイクストラの好きな作曲家はモーツァルトだった。[ 8 ]
ダイクストラのキャリアを通して、彼の作品は優雅さと簡潔さを特徴としていた。[ 12 ]多作な作家(特にエッセイストとして)であったダイクストラは、1,300以上の論文を執筆し、その多くは彼独自の正確な筆跡で手書きされた。それらはエッセイや寓話、おとぎ話や警告、包括的な説明や教育的な口実であった。ほとんどは数学とコンピュータ科学に関するものであったが、その他は旅行記であり、訪れた人や場所よりも著者自身について多くを物語っていた。彼は各論文をコピーして少数の同僚に回覧し、その同僚がさらに別の限られた科学者グループにコピーして転送するという習慣があった。[ 2 ]
ダイクストラは万年筆で原稿を丁寧に書き上げる習慣でよく知られていた。これらの原稿は、ダイクストラが自身のイニシャルであるEWDを接頭辞として番号を付けていたことから、EWDと呼ばれている。ダイクストラ自身によると、EWDは彼がアムステルダムの数学センターからアイントホーフェン工科大学(当時はアイントホーフェン工科大学)に移ったときに始まったという。アイントホーフェンに移ってから、ダイクストラは1年以上スランプに陥った。彼は新しいEWDのコピーを同僚に配布した。受け取った多くの人がコピーして転送したため、EWDは国際的なコンピュータ科学コミュニティ全体に広まった。テーマはコンピュータ科学と数学で、旅行記、手紙、スピーチなどが含まれていた。これらの短い記事は40年間にわたって書かれた。1972年以降に発表されたEWDはほぼすべて手書きで、15ページを超えることはほとんどなく、連続番号が付けられている。最後のもの、No. 1318は2002年4月14日付けです。コンピュータサイエンスでは、これらはEWDレポート、または単にEWDとして知られています。1300以上のEWDがスキャンされ、検索を容易にするために転写されたものが増えており、テキサス大学のウェブサイトにあるダイクストラアーカイブでオンラインで入手できます。 [ 24 ]
ダイクストラは、コンピュータ科学と数学において、簡潔さと優雅さが重要だと考えていた。簡潔さへの彼の関心は幼い頃から母親の指導の下で芽生えた。彼はかつて、三角法は難しいトピックかどうかを母親に尋ねたことがあると語った。母親は、すべての公式を覚えなければならないこと、さらに、何かを証明するのに5行以上必要であれば、間違った方向に進んでいると答えた。[ 25 ]
彼は、大規模なプログラムでは、混乱が生じる可能性があるため、優雅さを追求することが不可欠だと考えていた。[ 26 ]意図的に誇張して、[ 27 ]彼は「コンピューティングの実践では、混乱させる余地が非常に大きいため、数学的な優雅さは 不要な贅沢ではなく、生死に関わる問題である」と書いた。[ 28 ]
ダイクストラは、同僚に対する機知、雄弁さ、無礼さ、ぶっきらぼうさ、そしてしばしば残酷さ、言葉の巧みさで有名だった。例えば、「機械が思考できるかどうかという問題は、潜水艦が泳げるかどうかという問題と同じくらい無意味だ」という発言がある。[ 29 ]研究テーマの選び方を尋ねた有望な研究者への彼の助言は、「自分にしかできないことだけをしなさい」という言葉だった。[ 8 ]ダイクストラはまた、同僚と交流する際の率直な批判と社交性の欠如でも知られていた。率直で批判的な先見の明のある人物として、彼はBASICの教育に強く反対した。[ 30 ]
ダイクストラは、機知に富んだエッセイの多くで、自身が会長を務める架空の会社について述べている。その会社は Mathematics, Inc. と呼ばれ、ソフトウェア会社がコンピュータ プログラムの生産を商業化したのと同じように、数学の定理の生産を商業化した会社だと彼は想像していた。彼は Mathematics Inc. のさまざまな活動や課題を考案し、EWD シリーズのいくつかの論文でそれらを記録した。この架空の会社はリーマン予想の証明を作成したが、リーマン予想を前提とした結果を証明した数学者から使用料を徴収するのに大変苦労した。証明自体は企業秘密だった。[ 31 ]同社の証明の多くは急いで世に出されたため、会社の労力の多くはメンテナンスに費やさなければならなかった。[ 32 ]より成功した取り組みは、100 を超える互換性のない既存の証明に取って代わったピタゴラスの定理の標準証明である。[ 33 ]ダイクストラは、Mathematics Inc. を「これまで考案された中で最も刺激的で、最も悲惨なビジネス」と評した。[ 31 ] EWD 443 (1974) では、彼の架空の会社が世界の市場シェアの 75% 以上を占めていると説明されている。[ 34 ] [ 35 ]
ダイクストラは、 goto文を使用してプログラム内の異なるセクションに非構造的にジャンプするのではなく、構造化された制御フローを使用するプログラミングパラダイムである構造化プログラミングを提唱したことで、 1972年にチューリング賞を受賞しました。1968年にCommunications of ACMの編集者に送った「 go to文は有害である」という手紙は、大きな議論を巻き起こしました。現代のプログラマーは一般的に構造化プログラミングのパラダイムに従っています。[ 14 ]
コンピュータ科学における彼の最も有名な貢献の一つは、ネットワーク内の最短経路を見つけるためのダイクストラ法であり、これは現代のコンピュータ科学の学部課程で広く教えられており、コンピュータネットワークルーティングプロトコルであるOSPFとIS-ISで使用されている。[ 36 ] [ 37 ]
その他の重要な業績としては、構文解析のためのシャンティングヤードアルゴリズム、オペレーティングシステムをレイヤーの集合として構造化する初期の例である「THE」オペレーティングシステム、リソース割り当てのためのバンカーアルゴリズム、および複数のプロセスを調整するためのセマフォ構造などが挙げられる。分散コンピューティングの分野でダイクストラが提唱したもう1つの概念は、耐障害性を確保する方法である自己安定化である。
ルカ・カルデッリは、1980年代にコンピュータ科学者の間で非常に有名になったダイクストラの筆記スタイルを模倣したダイクストラフォントをデザインした。[ 38 ]
ダイクストラの受賞歴と栄誉には以下が含まれる:[ 8 ]
1969年、英国コンピュータ協会(BCS)は、王室勅許状の第7条に基づき授与される賞およびフェローシップである英国コンピュータ協会特別フェロー(DFBCS)の承認を受けた。1971年に最初の選出が行われ、ダイクストラが選ばれた。[ 43 ]
1990年、ダイクストラの60歳の誕生日を記念して、テキサス大学オースティン校のコンピュータ科学科(UTCS)は、彼を称える2日間のセミナーを開催した。講演者は米国とヨーロッパ各地から集まり、コンピュータ科学者グループが研究論文を寄稿し、それらは編集されて書籍になった。[ 44 ]
2002年、日本のC&C財団は、ダイクストラ氏の「基礎ソフトウェア理論、アルゴリズム理論、構造化プログラミング、セマフォに関する独創的な研究を通じて、コンピュータソフトウェアの科学的基盤の確立に先駆的な貢献をした」功績を称え、同氏に賞を授与した。ダイクストラ氏は生前に受賞の通知を受け取ったが、死後に行われた授賞式では家族が代理で賞を受け取った。
2002年に亡くなる直前、ダイクストラはプログラム計算の自己安定化に関する研究で、分散コンピューティング分野におけるACM PODC影響力論文賞を受賞した。この賞は、翌年、彼の功績を称え、ダイクストラ賞(エドガー・W・ダイクストラ分散コンピューティング賞)と改称された。
コンピュータサイエンスにおける優れた学業成績を称えるダイクストラ賞(ロヨラ大学シカゴ校、コンピュータサイエンス学科)は、エドガー・W・ダイクストラにちなんで名付けられました。2005年から始まったこの賞は、コンピュータサイエンス専攻の卒業生の最高の学業成績を称えるものです。選考は、すべての主要科目のGPAと学科教員による投票に基づいて行われます。[ 45 ]
テキサス大学オースティン校コンピュータサイエンス学部(UTCS)は、2010年10月12日に第1回エドガー・W・ダイクストラ記念講演会を開催しました。講演者は、オックスフォード大学名誉教授であり、マイクロソフトリサーチの主席研究員であるトニー・ホア氏でした。この講演会シリーズは、ダイクストラ氏の功績を称えるため、シュルンベルジェ社からの寛大な助成金によって実現しました。
アラン M. チューリングは、機械が思考できるかどうかという問題を解決するための基準について考えましたが、今では、この問題は潜水艦が泳げるかどうかという問題と同じくらい無意味であることがわかっています。(転写)、1984年