宇宙工場サブファイロット 06章 コモンプログラム4
食事の時間になったので、三人は展望ルームへ戻った。スペアはまだ、来ていないようだった。彼らはそのまま副会議室におもむき、ドアに手をかざしたが開かない。取っ手を引っぱってがたがた開けようとしていると、中から声がした。
「悪い、ロボットが入って来られないように、ロックしてバリケードも作ってたんだ。今どける。」
スペアはドアの前に積んだ椅子やテーブルをどかし、ロックを外すと、三人を招き入れた。
「すごい重装備だね」
ナットが楽しそうに辺りを見回す。しかし、スペアは真面目な顔で、
「ちょうどよかった。これを見てくれないか。」
と、部屋の中央にある三台の中型パネルデスクの中の、一台を指し示した。
「いま、E5の思考回路を分析させていたんだけど、ちょっとおかしな個所を見つけたんだよ。」
「おかしな個所?」
スペアは椅子に腰掛け、細く長い指をキーボードの上に踊らせた。後ろから、三人がデスクを覗き込む。そこには細かい水色の文字がぎっしりと流れていて、思わず彼らは顔を見合わせたが、スペアはそれには気づかず、何でもない事のように話した。
「ここなんだけど。これは、ナットを追いかけ始めた時のE5の思考履歴データなんだ。」
「思考履歴データって?」
困ったようなナットの声に、スペアは椅子を回して説明した。
サブファイロットの戦闘ロボットには、ロボットがセンサーから受けた情報をどう分析し、判断し、行動を決定したかの記録がある程度残るようになっている。半日分から三日分ほどまでと機体によって差はあるが、その通常見られないデータを変換して表示したのがこれなのだと、彼は説明した。
「で、問題はここなんだ。時間はちょうど、ナットが発着場で曳航船を修理していて、データチップを見つけた頃。この部分が時刻。どうだナット、このくらいの時間だったんじゃないか?」
ナットは、細かい文字に目を近づけて、
「うん、時計を見た訳じゃないから分からないけど、だいたいこのくらいだったと思うよ。」
スペアはうなずくと、パネルの文字列を指し示しながら、
「で、これがE5の思考の経緯なんだ。ここで、ほら。曳航船の損傷個所に異物を見つけている。発見物の形をスキャニング、データ照合。照合データなし。デブリとして処分もしくは保管または修理の判断の必要あり。発見物の強度の確認の必要あり。現作業の責任者ナットに会話を開始。・・・ここまではいいか?」
三人はぽかんとした顔で、スペアを見つめて立っている。やっと、ボルトがぼそっとつぶやいた。
「難しいな。その一行にそんな事が書いてあるのか? 分からないよ。」
「分からなくてもいいんだ。ロボットがそう考えた、ってだけの話で。じゃ、もう少しかいつまんで説明するよ。つまり、E5は何だか分からないごみを見つけた。ナットにそれを報告し、ナットはごみを取り除き始める。そして、ナットがごみの間からデータチップを見つけ、『データチップだ』と言った音声を解析して、相手が手にしている部品が、データチップかどうかをスキャンする。で、確かにデータチップだと判断した。問題はその後なんだ。」
スペアはキーを叩き、文字の一部を拡大した。後ろの三人を振り向いて画面を示し、
「ここ。ここでE5は、コモンプログラムの一部を動かしている。ええと、おっさん、コモンプログラムっていうのは、全ロボットに共通の基本プログラムのことなんだ。サブファイロットのどのロボットにもそのプログラムが入っている。――ついでに、その中にバグがあった訳なんだけど。ともかく、E5はなぜかそれを突然動かした。しかも、それがまさにバグのあった場所だったんだ。」
じっと説明を聞いていたナットが、慎重に尋ねる。
「つまり、バグのあるプログラムをE5が動かしちゃったから、誤作動がまた起きて、僕を追いかけてデータチップを破壊しようとしたんだね?」
「うん。その通りだ。そうなんだけど、」
スペアは顔をしかめ、椅子を回転させてみんなの方に向き直った。
「そこが不可解なんだよ。あの時――、ロボットが一斉に誤作動を起こして、俺たちの仲間を宇宙に放り出した時、俺はロボット内部からコモンプログラムを解析して、原因らしい場所、・・・バグがあるらしい場所のプログラムを動かないようロックした。だから、ロボットは暴れるのをやめて止まったんだ。」
三人は黙ってスペアの顔を見つめた。彼は、小さくうなずいて、
「そう。その後もずっと、そのプログラムはロックされているから動かない。E5が動かそうとしても動かせないはずだ。でも、プログラムは動いている。おかしいと思って調べたら、ロックが解除されていたんだ。」
ボルトが大きく息を吐いた。ナットが不思議そうに尋ねる。
「スペアがロックした回路を、E5が勝手に解除したってこと?」
「E5が解除できるはずはないし、その形跡もない。でも、現実にプログラムは解除されてる。解除プログラムが始めからどこかにあったとしか考えようがないんだ。よっぽど性悪というか、おかしな形でプログラムに間違い・・・、バグが入っていたんだろうって思うけど。」
スペアは別のキーを叩き始めた。すると画面が切り替わり、また細かい緑色の文字が画面を埋め始める。
「こっちがその問題のプログラム部分だ。コモンプログラムはとても複雑で、俺にもその内容はよく分からない。設計室の誰も触れなかったぐらいだからな。何しろ、これはレジェンドさんの仕事だから。でも、問題の場所はともかくここだ。」
文字列の中のひとつを指でつつき、読み上げた。
「『プログラム名:stage-2 状態:ロック ロック実行者:531178912 設計室 スペア 例外措置:ロック一時解除。例外措置:再ロック。』――な? ロックが解除されている。そして、この中にバグがあったから、また誤作動が起こった。」
「うーん。」
髪をかき上げて、ボルトが低くうなった。
「つまり、お前が不可解だって言うのは、お前がロックしたはずのプログラムが、勝手にまたロック解除になったっていう事か?」
「うん。それにE5がナットのデータチップを見た時、どうしてそのプログラムを動かそうとしたかも謎だ。このステージ2っていうプログラムがどういう内容なのか、どうしても表示できないし。結局、お前が偽のデータチップを渡して、それをE5が壊したと思われる時間に、またこのプログラムは再ロックになって、動かせない形に戻っている。納得できない。どう考えてもおかしいんだ。」
スペアは低くつぶやき、ボルトは横目でじっと壁を睨み、ナットは小首を傾げて「ほんと、変だね。」とつぶやいた。
「だいたい、誰がそんな解除の命令を出したんだろう?」
「誰でもないんだ。外部からの操作は記録されてない。」
「――ステージ2っていうからには、ステージ1もあるんだろう。そっちは調べてみたのか?」
それまで黙っていたパドが、スペアを見下ろして尋ねた。
「うん。でも、そっちはますます訳が分からなかったんだ。」
次回更新は8/7 12:00の予定です。




