トヨタに思いを巡らして


トヨタのリコールが大きな問題となっています。ずいぶん前に車を手放してしまったからかもしれませんけれども、大変なことになったとはいえ、あまり自分にとって身近な問題と捉えていませんでした。

ただ、今日になって一昨日の新聞を読んで考え方が変わりました。これは計算機科学者が積極的に関与すべき問題だと。2/10(水)の毎日新聞朝刊にはリコールの手続きの方法が書かれています。販売店に持ち込んでABSの制御プログラムを更新するのに約40分かかるのだそうです。

今回のプリウスなどのABSについてのリコールは2/10の新聞記事によれば国内と北米を合わせて43万7千台だそうです。これらのソフトウェアの更新にどれだけの時間がかかるのかといえば、累計で(40 times 223,000 = 8,920,000)分、すなわち149,000時間となります。Yahoo! 知恵袋によれば、[[トヨタ系の販売店は全国に4,900店舗:http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1326610183%5D%5Dということですので、修理にかかる作業時間は店舗あたり30時間だそうです。う〜ん、こうするとリコールの車が常に行列していれば約一週間でリコールに対応できるかもしれませんけれども、そうそう都合のよいことにはならないでしょうね。

ところで、僕には想像もつかないのですが、Windows 7 のプログラムとプリウスの制御に使われているプログラムではどちらが多いのでしょう。二年前のAlan Kayの講演によればWindows XPとOfficeのプログラムを紙に印刷して積み上げるとエンパイアーステートビルの半分くらいの高さになるということでした。プリウスの制御ソフトウェアを積み上げるとどれだけの高さになるんでしょう?((でも、考えてみれば中国の小さな町工場で電気自動車を開発している様子を見ると大したことないのかな?そもそも、ああいう電気自動車に制御ソフトウェアはいらないのでしょうか?))それだけの分量のプログラムに誤りがないわけもなく、僕らは頻繁にオペレーティングシステムの修正プログラムをあてています。

むしろ驚くべきことは、同程度に複雑だと思われる車のソフトウェアについては販売時点のものがずっと使われ続けているということではないでしょうか。技術的にどのようにすればいいのかは想像がつきませんけれども、車のソフトウェアについても毎月のように修正パッチが配布されて全くおかしいことではないと思います。

Kindle の場合、無線を使って書籍の電子コンテンツが配信されますから、車についても同様のことはできるはずです。たぶん、そう遠くない将来、車のファームウェアは無線を介して配布され、自動的に更新することになると思います。車に限らず、身近にあるありとあらゆるITシステムがそのようになっていくことでしょう。

ぼくらが考えなくてはならないのは、停止することが許されないようなミッションクリティカルなシステムについて安全かつ迅速にファームウェアを更新する方法だと思います。しかも、バージョンが異なるサブモジュールが複雑に結合した巨大なシステムが全体として安定して稼動するための仕組みを考える必要があります。

同じく毎日新聞の別な記事(探したのですが、どこかに行ってしまいました)によれば、プリウスのブレーキの問題が通常よりも0.06秒遅れることが原因だそうです。いよいよオリンピックが開幕しますけれども、そこで争われるような僅かな時間感覚を一般人が持っているということに驚き、プログラムを書く立場に身を置くと事の重大性を感じずにはいられません。

詳しいことを知らないので、直接ブレーキのソフトウェアに関わることは書かないこととします。昔、たぶんテレビのインタビューでビル建設についての、日本人とドイツ人の考え方の違いというものが議論されていました。日本人の場合、精度というものをとことん求めていきます。大きなビルを建設する場合、階下での小さな精度の狂いが原因となって上の方で大きな狂いとして増幅されてしまうから、精度を求めることは重要で、その点について日本人は諸外国が真似のできない技術を持っているというのです。一方、ドイツ人の場合、精度の狂いが出てしまうことを前提として施工にあたるそうです。ビルを積み上げるにあたって、下の部分での精度の狂いを如何に吸収し、それを階上に増幅させないかという哲学になります。ドイツの建築はこの技術において当時は世界のトップを行っていたというのです。

すでに僕らは、プログラムからバグを取り除くことが不可能だということを知っています。ですので、バグがあることを前提にシステムを設計しなくてはなりません。ぼくらにできることは小さなバグを抱えたサブモジュールを組み合わせてできた、より大きなモジュールの総体としてのバグの影響が小さいままに保つ技術を構築することだと思います。

きっとそういう技術はすでにあるのでしょう。ぼくが単にそういう勉強をまったくしてこなかったということなのでしょう。ぼくが作るソフトウェアは小さなバグがあれば、それをシステムに組込めば被害が増幅するようなたちのものです。こういうことではいけません。ちゃんと勉強して、少なくとも最低ラインの性能だけは如何なる条件が与えられても保証できるような仕組みというものを若い人たちに伝えなくてはならないと強く思いました。

トヨタに思いを巡らして」への2件のフィードバック

  1. H2ロケットの失敗が続いていたときも似たような議論があったとおもいます。
    日本人は、まだ精神力を信じている感じがします。
    まだまだ合理的な考え方は苦手なのかもしれません。

    • おっしゃる通りですね。

      話は変わりますけれども、昨年、映画の剣岳を見て感動し、その足で文庫本を買って一気に読みました。映画にも出てくるのですが、修験道のお坊様はすごかったですね。あぁいう気迫をもった人が明治という時代にはまだ生きていたのですね。

コメントは受け付けていません。