「最新イージス艦が航行不能」事件 原因はテロか?スパイか?…「小学生でもわかるミス」だった!?

イージスシステムを積んだ最初期の軍艦である「ヨークタウン」が、海上で突然航行不能になりました。原因を追究してみると、その理由は単純ではありますが、多くの人には予想外でした。
1997年9月12日、アメリカ海軍で最初に本格的なイージス防衛システムを積んだ、タイコンデロガ級ミサイル巡洋艦の2番艦である「ヨークタウン」が、任務遂行中に、バージニア州ケープ・チャールズ沿岸で突然、航行不能に陥りました。なぜこのような大きなトラブルが起きてしまったのか。その理由はハイテク艦ゆえの事情でした。
「最新イージス艦が航行不能」事件 原因はテロか?スパイか?……の画像はこちら >> タイコンデロガ級ミサイル巡洋艦の2番艦「ヨークタウン」(画像:アメリカ海軍)。
事故が起きた当初、乗員たちは慌てて、さまざまなトラブル対応を試みますが、エンジンは停止したまま。結局、同艦は2時間半余り、海上を漂う「ただの箱」状態となってしまったのです。これにより任務が遂行できなくなった「ヨークタウン」は、他の船に曳航され帰港するという異常事態となりました。
事故の第一報の後、「スパイがプログラムをいじった?」「ネットワークを使ったテロ?」などの憶測が飛び交いました。しかし、アメリカ海軍が調査を開始すると、意外なことが判明します。なんと「簡単な割り算の失敗」が原因だとわかったのです。最新鋭の技術を盛り込んだ軍艦が、たかが割り算を失敗した結果、航行不能になってしまったのです。
なぜ割り算のミスで航行停止という事態が起きたのか。これは、アメリカ海軍主導で行われた「スマートシッププログラム」に端を発します。
1990年代といえば、家庭用パーソナルコンピューター、いわゆるパソコンが開発され、一家に一台の割合で普及し始めた時期です。
大型のコンピューターシステムが必要なくなり使いやすくなったパソコンは瞬く間に広まりました。アメリカ海軍がこの家庭用パソコンに目をつけ、スマートシッププログラムという名で艦艇への導入を開始したのです。
もともとアメリカ海軍にもコンピューターがなかったわけではありません。しかし大型で場所をとる業務用のコンピューターは、特別な訓練を受けたオペレーターしか扱えず、また艦艇への搭載には適していませんでした。
そこで、家庭用パソコンを導入し、「臨戦態勢時のさまざまな計算」「乗務員の作業負荷軽減」「オペレーションコストの削減」などを図ることになりました。OSに選ばれたのは、マイクロソフト社の「Windows NT」です。同OSはWindowsの業務用OSとしてこの頃には既に一般企業にも広く普及しており、信頼性は抜群でした。「ヨークタウン」にも同OSがインストールされた16台のコンピューターが運び込まれました。そして運用が開始され約1年経ったころに事件は起きたのです。
小学校の算数で習う計算方法といえば「足し算」「引き算」「掛け算」「割り算」ですが、このうち割り算にだけ禁則事項があることをご存じでしょうか。それは「ゼロで割ること(÷0)」です。
現代の電卓で、÷0と入力すると「error」や「ゼロでは除算できません」といった文言が表示されます。人間でも、小学校を卒業している人ならば0では割れないことは知っています。
Large 241114 zero 02
タイコンデロガ級ミサイル巡洋艦の艦橋部分とレーダーのアップ(画像:アメリカ海軍)。
しかし、「ヨークタウン」に納入されたパソコンは「ゼロでは除算できない」というルールが予め書き込まれていなかったのです。この仕様こそが、「ヨークタウン」を2時間半も海に漂わせる原因でした。
乗組員のひとりが、燃料バルブのトラブルシューティングを実行中のアプリケーションに誤って空欄を入力してしまいました。これを0(ゼロ)と判断した1台のコンピューターは「それは除算できない」という判断を下せず、答えの出ない計算を延々と続けてしまいます。
そして、ネットワークでつながったほかのコンピューターにも影響を与えはじめ、不毛な計算を続けていくうちにメモリーも大量消費。やがてエラーと報告され続けたオペレーティングシステムは全てをダウンさせてしまった、これが真相です。もちろん全ての機能をダウンさせたことで、艦の航行システムが制御不能になってしまいました。
このトラブルについて、一部の関係者から「原因はアメリカ海軍がパソコンの導入を急ぎ過ぎたからだ」「導入時の契約の際に政治的な配慮があった」「エンジニアの意見は取り入れられなかった」などといった不満が噴出しました。アメリカ海軍は、その後「Windows NT」を導入した経緯を説明したうえで、今後は別のOSの導入も検討すると発表しています。
ただ、この事故を受けて若干の修正と改善をコンピューターシステムに加えると、それ以降は目立ったトラブルもなく、2004年に「ヨークタウン」は退役しています。事故当初は「軍艦でWindows NTを使用するなど、運を天に任せると同じ」と、事故を起こしたのは不安定なOSそのものであるという批判もあったみたいですが、時が経つにつれ、そういった声は収まるようになった模様です。
Large 241114 zero 03
タイコンデロガ級ミサイル巡洋艦の垂直発射システムのセル(画像:アメリカ海軍)。
とはいえ、この事件は、決して他人事とは言えないでしょう。日本の自衛隊でも最新技術を入れた際のトラブルや、単純なヒューマンエラーを発端に大きな事故の原因になるケースはありえるからです。