WEBVTT 00:00:06.761 --> 00:00:11.290 1969年7月20日午後4時頃 00:00:11.290 --> 00:00:16.054 人類が月の表面に 着陸する数分前のことです 00:00:16.054 --> 00:00:18.734 宇宙飛行士が最終降下を しようとしたとき 00:00:18.734 --> 00:00:20.714 緊急アラームが点灯しました 00:00:20.714 --> 00:00:22.929 何かがコンピューターの 過負荷を引き起こし 00:00:22.929 --> 00:00:25.504 宇宙船は 着陸の断念を 迫られたのです NOTE Paragraph 00:00:25.504 --> 00:00:28.594 地球では マーガレット・ハミルトンが 息を呑んで見守っていました 00:00:28.594 --> 00:00:32.277 チームを率いて 宇宙船に搭載された 先駆的なソフトウェアを開発した彼女は 00:00:32.277 --> 00:00:35.164 この任務に 少しのミスも許されないことを 分かっていました 00:00:35.164 --> 00:00:37.614 しかし 土壇場になって起こった この緊急事態は 00:00:37.614 --> 00:00:42.523 ソフトウェアが意図した通りに機能していたことを 証明することとなったのです NOTE Paragraph 00:00:42.523 --> 00:00:48.438 遡ること33年前 インディアナ州のパオリに 生まれたハミルトンは 常に好奇心旺盛でした 00:00:48.438 --> 00:00:51.268 大学では数学と哲学を専攻し 00:00:51.268 --> 00:00:55.598 大学院の学費を稼ぐために マサチューセッツ工科大学で 00:00:55.598 --> 00:00:57.304 研究職に就きました 00:00:57.304 --> 00:01:00.126 そこで 初めてコンピューターに触れ 00:01:00.126 --> 00:01:04.744 「カオス論理」という新しい分野の研究を 支援するソフトウェアを開発しました NOTE Paragraph 00:01:04.744 --> 00:01:07.514 次いでMITのリンカーン研究所で ハミルトンは 00:01:07.514 --> 00:01:09.784 敵機を検知するための 00:01:09.784 --> 00:01:13.189 アメリカ初の防空システム用の ソフトウェアを開発しました 00:01:13.189 --> 00:01:16.541 その後 著名な技術者の チャールズ・ドレイパーが 00:01:16.541 --> 00:01:19.587 人類を月に送るために働く人材を 求めていると聞き 00:01:19.587 --> 00:01:22.152 すぐに彼のチームに参加しました NOTE Paragraph 00:01:22.152 --> 00:01:25.506 NASAは400人以上の技術者からなる ドレイパーのグループに 00:01:25.506 --> 00:01:28.847 初の小型デジタル・フライトコンピューターの 開発を求めました 00:01:28.847 --> 00:01:31.128 アポロ誘導コンピューター(AGC)です 00:01:31.128 --> 00:01:33.805 この装置は 宇宙飛行士からの 入力に従い 00:01:33.805 --> 00:01:38.280 宇宙船の誘導 操縦 制御を 行うものです 00:01:38.280 --> 00:01:41.890 コンピューターが信頼性に欠け 部屋ほどの大きさがあった時代に 00:01:41.890 --> 00:01:45.214 AGCは誤りなく作動し 00:01:45.214 --> 00:01:48.982 1立方フィートのサイズに 収まる必要がありました NOTE Paragraph 00:01:48.982 --> 00:01:51.703 ドレイパーは研究所を 2つのチームに分けました 00:01:51.703 --> 00:01:55.405 1つはハードウェア設計で もう1つはソフトウェア開発です 00:01:55.405 --> 00:01:59.425 ハミルトンは 司令船と月着陸船の それぞれに搭載されるソフトウェアの 00:01:59.425 --> 00:02:01.047 開発チームを率いました 00:02:01.047 --> 00:02:03.359 「ソフトウェア・エンジニアリング」 という言葉は 00:02:03.359 --> 00:02:07.205 この極めて重大な課題のために 彼女が作ったものでした 00:02:07.205 --> 00:02:12.165 人の命がかかっていたので どのプログラムも 完璧でなければいけませんでした 00:02:12.165 --> 00:02:15.795 マーガレットのソフトウェアは 予期せぬエラーをいち早く検出し 00:02:15.795 --> 00:02:18.395 リアルタイムで 回復する必要があったのです NOTE Paragraph 00:02:18.395 --> 00:02:22.695 しかし 初期のソフトウェアは あらかじめ 決めた順序でしか処理できなかったので 00:02:22.695 --> 00:02:25.943 そのような順応性の高いプログラムを 作るのは困難でした 00:02:25.943 --> 00:02:27.456 この問題を解決するために 00:02:27.456 --> 00:02:30.470 マーガレットは非同期的 プログラムを設計しました 00:02:30.470 --> 00:02:35.662 優先度の高い作業が 優先度の低い作業に 割り込んで実行されるということです 00:02:35.662 --> 00:02:38.088 彼女のチームは 何が起きようとも 00:02:38.088 --> 00:02:42.132 個々のタスクが正しい順に 正しいタイミングで実行されるよう 00:02:42.132 --> 00:02:45.884 すべてのタスクに 固有の優先度を割り当てました NOTE Paragraph 00:02:45.884 --> 00:02:47.461 この打開策を見出した後 00:02:47.461 --> 00:02:50.207 マーガレットは そのソフトウェアが 非同期的な環境でも 00:02:50.207 --> 00:02:52.725 宇宙飛行士の作業を 手助けできることに気付き 00:02:52.725 --> 00:02:55.786 宇宙飛行士の通常の スケジュールされた作業の実行中でも 00:02:55.786 --> 00:02:57.947 非常事態を知らせるために 割り込みを行う 00:02:57.947 --> 00:02:59.723 「優先表示」処理を 設計しました 00:02:59.723 --> 00:03:02.264 これにより 宇宙飛行士は 管制室と通信しながら 00:03:02.264 --> 00:03:04.875 最善策を決定することが 出来るようになったのです 00:03:04.875 --> 00:03:07.278 これは フライトソフトウェアが 初めて 00:03:07.278 --> 00:03:11.548 パイロットと直接 非同期的に 対話したときでした NOTE Paragraph 00:03:11.548 --> 00:03:16.474 月面着陸の直前に警報が出たのは この安全機構のおかげだったのです 00:03:16.474 --> 00:03:19.260 バズ・オルドリンはすぐに自身の間違いに 気が付きました 00:03:19.260 --> 00:03:22.864 彼は うっかり ランデブーレーダーの スイッチを入れてしまったのです 00:03:22.864 --> 00:03:25.363 このレーダーは 地球に帰還するのに 不可欠でしたが 00:03:25.363 --> 00:03:29.351 貴重なコンピューター資源を 使い切っていたのです 00:03:29.351 --> 00:03:34.108 幸い アポロ誘導コンピューターは こうした事態にも対応でき 00:03:34.108 --> 00:03:37.788 過負荷状態になったとき ソフトウェアはプログラムを再起動して 00:03:37.788 --> 00:03:40.498 最優先の処理だけが 行われるようにし 00:03:40.498 --> 00:03:43.180 それには着陸のためのプログラムも 含まれていました 00:03:43.180 --> 00:03:46.431 そして 優先表示画面は 宇宙飛行士に選択肢を与えていました 00:03:46.431 --> 00:03:48.942 着陸するか 断念するか 00:03:48.942 --> 00:03:53.172 一刻の猶予も許されない状況の中 管制室は決断を下しました NOTE Paragraph 00:03:53.172 --> 00:03:58.697 アポロ11号の着陸の成功は 宇宙飛行士 管制室 ソフトウェア ハードウェアの 00:03:58.697 --> 00:04:02.352 全てが統合された1つのシステムとして 機能したことの結果でした 00:04:02.352 --> 00:04:05.762 「人類を月に送る」という ケネディー大統領の目標に感銘を受けた 00:04:05.762 --> 00:04:11.014 技術者や科学者たちの この偉業において ハミルトンの貢献は不可欠なものでした 00:04:11.014 --> 00:04:14.366 そして 命を救った彼女の仕事は アポロ11号だけにとどまらず 00:04:14.366 --> 00:04:20.258 アポロ有人宇宙船に搭載されたソフトウェアで バグは1つとして出なかったのです NOTE Paragraph 00:04:20.258 --> 00:04:22.271 アポロの仕事の後 ハミルトンは 00:04:22.271 --> 00:04:25.159 システムやソフトウェアにおいて 新展開をもたらすため 00:04:25.159 --> 00:04:29.393 独特なユニバーサルシステム言語を使う 会社を設立しました 00:04:29.393 --> 00:04:32.705 2003年にNASAは 彼女の業績を称え 00:04:32.705 --> 00:04:36.979 NASAが個人に贈ったものとして 史上最高額となる賞金を授与しました 00:04:36.979 --> 00:04:41.836 そして ハミルトンのソフトウェアが 初めて宇宙飛行士を月に送ってから47年後 00:04:41.836 --> 00:04:45.259 テクノロジーに対する考え方を 変えた功績により 00:04:45.259 --> 00:04:48.576 彼女は大統領自由勲章を 授与されたのです