自動運転・ADASに必要なコト
どうも、おのまです。
ハイ、早速タイトルから最近流行りのコトバを入れてみました。
一応、製造系に関係した会社にいるので、たまにはそれっぽいことも記事にしてみようという魂胆です。
現在、本業は自動車の車体設計の最適化に関わる業務をしております。
それとはまた別に、最近ちょっとした野望のようなものができまして、それがADASです。
相変わらずクルマはド素人で免許を持っていない自分ですが、免許を持っていないのはちゃんとした理由があります。
まず、お金がないのが一つです。
さらに自分は性格上車の運転に向いていないというのがもう一つです。
飛行機の製造に関わっている人が全て飛行機の操縦をできるわけではないので、車も同じと考えればいいのかなとか思っております。
そんな私でも、もしかしたら車を持てる未来がやってくるかもしれません。
それが、今話題のADAS (Advanced Driver Assistance Systems) です。
日本語に訳すと、先進運転支援システムといいます。英語の訳そのままです。
ADASってなんですか?というと、カメラやセンサーを駆使して、人間が運転する車をより安全、より快適に自動制御してくれるというお助けシステムです。
例えば、「歩行者が飛びしてきたら、方向転換をしてブレーキをかける」とか、「ドライバーが眠ってしまったら、安全に道の端に止まる」といったことを自動的に行ってくれるような機能です。
すごいですね。
便利ですね。
これが更に進むと、「自動運転」という夢のような技術が実現することになります。
実際に完全自動運転をやろうとする動きは出てきていて、最近だとGoogleが話題になっていたのは記憶にも新しいところです。
自動運転の今までとこれから
実は、一口に自動運転と言っても、日本の政府やアメリカのNHTSAがレベル分けしており、その定義は以下のようになっています。
レベル0(自動化なし)-No-automation:
http://www.mlit.go.jp/road/ir/ir-council/autopilot/pdf/05/2.pdf
常時、ドライバーが、運転の制御(操舵、制動、加速)を行う。
レベル1(特定機能の自動化)-Function-specific Automation:
操舵、制動又は加速の支援を行うが操舵・制動・加速の全てを支援しない。
レベル2(複合機能の自動化)- Combined Function Automation:
ドライバーは安全運行の責任を持つが、操舵・制動・加速全ての運転支援を行う。
レベル3(半自動運転)- Limited Self-Driving Automation:
機能限界になった場合のみ、運転者が自ら運転操作を行う。
レベル4(完全自動運転)- Full Self-Driving Automation:
運転操作、周辺監視を全てシステムに委ねるシステム。
現状色々資料を突き合わせてみると、1.5くらいが現状で、3を見据えた上で完全に2にするために一生懸命頑張っているというのが現実的な認識かなと思います。(Googleは、なんと最初から4.0を狙っています。さすがはGoogle……)
そして、今まさに実現しようとしている、2~3のレベルのことを、ADASと呼びます。
では、このADASは今までの車と何が違っていて、何が新たに必要なのでしょうか。
必要なのは、「頭脳」と「仕組み」
個人的には、この2つがキーになってくるのかなと思います。
まず、このような高度な支援システムには人間の代わりに、車の動きや周囲の状況を感じ取って適切な判断をするという、かなり賢い頭脳が必要です。
そしてこのような高度なシステムを構築するためには、体系だったシステム構築の仕組みの元で設計をしないと、必ず破綻します。
よって、ADASを実現させるためには、このふたつが必要不可欠だと考えています。
今流行の人工知能を車にも
いわゆるアレです。ディープラーニングですね。
そう、みんな大好きディープラーニングです。
(いやほんと、今年になって一番見る単語です)
このディープラーニング、車の脳みそにも使いましょうという流れが来てます。
GPUで有名なNVIDIAも最近車載用のディープラーニング向けボードとその開発キットを発表しました。
これと各種カメラ、センサーを組み合わせることで高度な運転支援システムを構築していこうという目論見です。
今は画像認識で歩行者や交通標識を見分けて自動で判断するということが盛んに行われています。
これが発達していけば、今度は車全体の制御を人間の代わりに人工知能が行うという日も来るかもしれません。
高度なシステムを実現するための仕組みづくり
既存のメカニカル中心の車の構造とは桁違いに複雑で大規模なシステムになります。
メカニカル構造に加えて、電子制御、各種カメラ、センサー、それらを統合して判断する人工知能と、様々な分野のパーツが組み合わさって初めて一台の車として完成します。
そこで有効だと考えらているのが、MBSE(Model Based Systems Engineering)や、MBD(Model Based Development)といった開発手法です。
ここでいうモデルとは、システム(今なら一台の車)を個々のパーツに分解して、それぞれを抽象化したものを指します。
この手法の有効性は、以下のようにIPAの文書に記述されています。
- 複数の分野にまたがる関係者が互いに図を見ながらコミュニケーションをとることができる。
- 開発の初期の段階で要求の明確化を図的に行うことにより関係者間の理解が進み開発途中での意図しない手戻りの発生を抑えることができる。
- 要求のトレーサビリティが確保されるので、要求の変更へ適切な対応を行うことができる。
https://www.ipa.go.jp/files/000033609.pdf
- 図的に表現されたシステムモデルを再利用できることから、製品やサービスのシリーズ化、ファミリー化を容易にする。
何やら難しいことを言っていますが、モデルに分解して、それぞれのモデル同士の関係性を可視化して、整合性を取りながら複雑なシステムは開発していきましょう、ということです。(私の理解では)
今後、こういった「どうやって複雑なシステムを開発するか」といった話はますますホットになることでしょう。
ただ車の仕組みがどんどん複雑になると、今度は万が一故障した場合修理が大変になるんじゃないのかなーとか個人的には心配しています。
紛争地域では少し前の日本の車が未だに現役で使われているそうですが、だんだんそういうこともできなくなってきますね。
今でも、最新の車は町の修理屋さんだと手に負えないという話を先日聞いた覚えがあります。
結論として
高齢化社会において、昨今高齢者の事故が増えています。さらに、無理な労働時間などからバスの大きな事故もありました。
しかし、これらの車は生活上必要不可欠な乗り物として存在しています。
ADASや、その先にある自動運転といったものは、これらの問題を解決する一つの方法です。
法律上の問題、事故の責任の問題、自動運転への信頼の問題と、様々な懸念がありますが、車の運転に向いてない自分としては、早く実現して欲しいです。
(できれば、お仕事として関われたら面白いですね)