【寄稿】Canonical社、ロボットシステムの構築における9つの重要な技術的検討ポイント

2019年8月21日

【寄稿】Canonical社 リージョナルセールスマネージャー 柴田 憲吾

 

ロボット市場は2021年までに2307億ドルへ

今年に入り英国議会では、ヒト型ロボット「ペッパー」が証人として登場し、証言しました。東京の「変なホテル」では多言語ロボットを導入し、宿泊客のチェックインで活躍しています。三菱地所は、都心のビルでロボットを警備や清掃に用いる実証実験を進めています。また、オリィ研究所は、障碍者が遠隔でロボットを操作して接客するカフェをオープンしました。

これらの事例は、ロボット技術が人工知能や機械学習と融合することで実現することができる、インターネットに接続されたスマートデバイスのネットワークにおける取り組みのほんの一部です。IDCの予想によると、ロボット関連のハードウエア、ソフトウエア、サービスに対する支出は、2021年までに世界で2,307億ドルに達するとしています。ロボットは、あらゆる業界においてその重要性を増しています。

 

セキュアなロボット構築計画とOS選定

しかし、幅広いIoT業界のさまざま取り組みと同様に、開発段階からの綿密な技術計画なしに、高い生産性と持続可能性を持ち、将来が保証され、なおかつセキュアなロボットを構築することは不可能です。

適切な長期計画は、適切なオペレーティングシステム(OS)の選定から始まります。残念なことに、すでに多額の資金を投資してしまい、OSを変更することで大幅な遅れや問題につながる事態に陥ってからOSの重要性に気づく企業も多くあります。

OSの中には、共同作業には最適でもロボットが本稼働段階になると保守が不可能なものもあります。同様に、独自のOSを使っている場合は、ロボットの寿命が終わるまでOS「全体」を保守しなければなりません(例えば、アップストリームで実行されたセキュリティ更新のバックポートなど)。また、OSの選択は、収益の確保、サポートサービス、セキュリティ戦略にも影響を及ぼします。

ロボット革命に加わる企業は、開発から本稼働、保守にわたり、ロボットの開発を促進または阻害する重要なOSの関連要素を数多く検討する必要があります。ここでは、そのうち9つをご紹介します。

 

ロボット開発を促進阻害する9つのOS関連要素

1.OSの一貫性

開発中のロボットに使用するOSは、本稼働段階で使用するものと同じ(または、少なくとも親和性の高いOS)である必要があります。ここで必要になるのは絶妙なバランスです。例えば、エンジニアリングチームが求めるのは、彼らが行っている開発を最適にサポートするOSですが、開発にばかり目が行ってしまうと他の要素を忘れてしまいがちです。

 

2.ソフトウエアスタックの互換性

どんな理由でOSを決定するにしろ、必要な技術(ライブラリ、フレームワークなど)と互換性のないOSの選択は災難を招きます。エンジニアリングチームが無駄な時間を費やしているうちに、競合他社は先に製品を市場に出してしまうかもしれません。エンジニアリングチームが特定のLinuxディストリビューション向けに必要なライブラリを作成している、あるいは開発のスピードを上げるためにミドルウエアを使用している場合も考えられます。こうしたニーズを考慮して候補となるOSを評価すれば、開発プロセスが効率化されます。

 

3.ハードウエアの互換性

ハードウエアとの互換性もソフトウエアと同じ理由で重要です。互換性がなければ実際のロボット開発が始まる以前に、各コンポーネントを協調させるための莫大な時間がかかりかねません。例えば、特定のLinuxディストリビューション専用のドライバを必要とするハードウエアや、Linuxの扱いに慣れていないベンダーと協業することも珍しくありません。

 

4.開発チームとの親和性

製品開発にはスピードが重要です。新規プロジェクトのプログラミング言語を選ぶ際は、開発チームがその言語にどれだけ精通しているかが大きく影響します。これは単に、チームが言語を変えるのを嫌うという問題ではなく、使い慣れた言語を使うことで質の高い作業を短時間で行うことが可能になるからなのです。同じことがロボットのOSについても言えます。エンジニアリングチームにとって不慣れなOSを選んでしまうと、扱いに慣れるまでの時間が製品の市場化の遅れとなって現れます。

 

5.システム統合の容易さ

ロボットがスタンドアロンデバイスであることはまれであり、通常は他のデバイスとシームレスに機能することが必要です。クラウドロボティクス、音声処理、機械学習など多くの用途では、リソースの限られたロボット上ではなくサーバファームで情報処理を行うことでメリットを得られますが、この場合、可能であればロボットでもクラウドでも同じOSを用いるほうが合理的です。これにより、ドメイン知識の相違を防ぎ、同じプロセスを用いることによって、クライアントとサーバーの両方のコンポーネントの開発時間を短縮することが可能となります。

 

6.サポートの有無

どんなエンジニアでも、サポートが必要な場合があります。そのようなとき、OSの問題ならばそのディストリビューションに関するコミュニティがよく利用されます。なぜなら、他の人も同じ問題を経験している可能性が高いからです。コミュニティサポートはLinuxが持つ長所のひとつですが、誰も返事をしない、誰も知らない、今すぐ時間のある人がいない、ということも起こるため、商用開発において頼ることはお勧めしません。ロボット開発者は、確実にアドバイスを得て速やかに問題解決ができるよう、商用サポートのあるOSを選択すべきです。

 

7.ソフトウエアの更新プロセス

ロボットが開発段階から本稼働および保守段階に移行すると、新しい要素が生じます。その主なものがソフトウエアの更新プロセスです。残念なことに、更新の必要性を考慮せずにデバイスを出荷してしまう企業は少なくありません。市場投入を急ぐあまり、認証情報、開発キー、各種のセキュリティ脆弱性をハードコーディングしてしまい、更新できないデバイスも珍しくありません。ロボットの開発においては、更新機能を組み込んだOSを選ぶべきです。

 

8.長期間のサポート

OS更新の配布方法に加え、それらの更新が配布される期間についても検討が必要です。OSの特定のバージョンへのサポートは、通常は期間が決まっているため、OSのサポート期間がロボットの予想寿命より短い場合は、いずれ更新がなくなってしまいます。

 

9.収益性の高いロボットの寿命の確保

ロボットの出荷と保守で仕事が終わる人もいるかもしれませんが、顧客を維持し、ロボットの寿命を延ばすための戦略としては十分ではありません。競合他社が新製品を発売しても対抗するには、どうしたらよいでしょうか?ひとつの方法は、アプリストアのサポートです。

これはすべてのロボットプラットフォームに該当するわけではありませんが、検討には値します。ロボットの目的によっては、完全なオープンソースにし、APIを通じた制御機能やセンサーの使用を許可した上で、何らかの第三者のアプリストアをサポートしても良いでしょう。実質的に第三者に別のビジョンを持たせることで、汎用性の高いロボットに限りますが、ロボットの寿命が伸びることになります。

汎用的なロボットでなくても、アプリストアで有料またはサブスクリプション方式を用いることによって新しい機能を提供すれば、収入源を増やすことができます。

上記の9つの要素を念頭に置けば、企業はロボットのもたらす多大なチャンスを生かすことができます。需要と市場の潜在性はあります。あとは、それに対する備えがあるかどうかです。

 

◆柴田 憲吾(しばた・けんご)
Canonical(カノニカル)Japan株式会社 リージョナルセールスマネージャー

【概略】2016年にCanonical(Ubuntuの開発を支援している会社)に入社しリージョナルセールスマネージャーを務める。データセンターおよびIoTデバイスへのUbuntu採用を拡大し日本市場での売り上げ拡大を牽引。

【経歴】Canonical入社前はPhilips、WindRiver、Nvidiaにて国内のITおよびメディカル市場の営業職を20年間経験。主要顧客を大手電気メーカー(富士通、Canon、東芝、リコー等)とし、16年間はOSの販売乗務を主軸に置く。大阪電気通信大学衛星通信工学科卒。

 

◆Canonicalについて
Canonicalは、クラウド運用の分野をリードするOSである「Ubuntu」を提供する企業。Ubuntuは、ほとんどのパブリッククラウドのワークロード、新しいスマートゲートウェイ、スイッチ、自動運転車、最先端ロボットで使用されている。Canonicalは、Ubuntuの商用ユーザ向けにエンタープライズサポートとサービスを提供している。Canonicalは2004年に設立された非公開企業。