つまり、こういった幅広い機会のなかで、現時点ではより技術に力点が置かれることになるでしょう。私はロボティクスの新興企業がより多くのソフトウェアエンジニアを雇用すると予想しています。現在、私の下で研究している学生たちは「Robotic Operating System」(ROS)を標準として使用しており、これは多くの企業でも利用されています。ソフトウェアエンジニアがROSのパッケージ版をより短期間で、例えば1カ月以内で習得できると考えてみてください。これで彼らはロボットをプログラムする方法を学べるようになるわけです。これは大きな機会と言えるでしょう。
最終的に、私はロボットのデプロイメント段階についても予想しています。最少限度の訓練を受けるだけで、倉庫や自宅といった場所でロボットを活用できるようになるのです。
——そのような簡素化されたAPIによって新たな役割が生み出され、新たな方法でロボットを利用できるようになるという例を教えてもらえるでしょうか?
はい。私はSaviokeの人たちとの共同作業を実施した経験があります。Saviokeは、ホテルにおけるルームサービスの一環としてのものの配達を行う自走式ロボットを製造している企業です。
私の下で研究している学生の1人は、エンドユーザーのところにものを送り届けるためのツールを構築しました。Saviokeは、それを使ってフロントデスクからホテルの客室に向けてものを送り届けるロボットが使用する良く考え抜かれたアプリケーションを作り出しました。彼らはこういったツールを用いてプログラムし、ロボティクスチームの力を得てデプロイにこぎ着けました。このようにして洗練されたプログラミングが実現されたのです。
ほどなくしてホテルは新たな機能を要求するようになってきました。例えば、ロボットにハッピーバースデーを歌わせたいというものです。また、スタッフからゲストにものを送り届けるだけではなく、スタッフからスタッフへの配送も可能なのではないかという照会もあります。
このような要求から、ロボットの再パッケージ化および再プログラミングに向けた容易な手段を生み出すという考えに至りました。誰かが新しいAPIを開発しなければならなかったのです。それはブロックのような分かりやすいものを使い、ループを追加していけるといったものです。実際のところ、これがブロックをベースにしたプログラミングという発想の元となりました。ホテル向けの、ブロックをベースにしたビジュアルプログラミングです。現在、同社は社内でチームを編成し、使用しているところです。これによって開発がずっと容易になるのです。
また彼らは、ホテルに出向いて問題点を議論し、考えられる機能についてやり取りするための顧客担当者を雇用しました。こういった担当者はプログラマーではありませんが、その場でロボットを実際にプログラムしてみせることができます。これで、技術的な側面とより初歩的な側面の双方における機会を分かっていただけたと思います。
——PbDはロボティクスの繁栄にとって、最終的にどういった役割を担うのでしょうか?
これは本当に重要な点です。PbDによってエンジニアが考えつきもしなかったユースケースが実現できるようになります。課題を抱えている人々は、その課題を解決するためにロボットをどのように使えばよいかが分かるようになるのです。つまりPbDは、こうした人々が自らのためにロボットをプログラムできるようにするものなのです。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。