ロボットに生成AIを適用すると何ができるのか、課題は何なのか生成AIで変わるロボット制御(前編)(2/3 ページ)

» 2025年02月27日 07時30分 公開
[富士ソフトMONOist]

3.生成AIによるロボット制御の具体例

3.1 ロボット制御での具体的アプローチ

 現在、ロボット制御ではどのように生成AIが活用されているだろうか。ロボット制御における活用方法としては、ソースコードを生成するタイプとファインチューニングを行うタイプに分けられると考える。

 ソースコードを生成するタイプは、ロボットの制御APIなどの情報を生成AIに与え、そこからロボットを制御するコードを生成する。ChatGPTがリリースされたころ、Microsoftは「PromptCraft-Robotics」という研究でChatGPTにAPIを与えて動作するコードを作成していた。ブロックの位置やロボットを制御するAPIを文章として与え、「ブロックをこの位置に置いて」と指示をすると、それを制御するためのコードを生成し、実行するというものだ。また、NVIDIAの「Eureka」というモデルでは、生成AIが強化学習の報酬プログラムを作成しており、80%以上のタスクにおいて人間の専門家が書いた報酬プログラムよりも優れていて、それぞれの強化学習のアルゴリズムを適用したロボットの平均的なパフォーマンスは、人間の専門家と比べてEurekaが50%以上高い性能を発揮したという研究結果が発表されている。

 ファインチューニングを行うタイプは、生成AIそのものをロボット制御用に調整し、入力に対してロボットの動きを生成する方法だ。Google DeepMindの初期の「Robotic Transformer 2(RT-2)」では、LLMを活用して未知の物体の認識を向上させることに成功している。最近、注目されているモデルとして「Open-VLA(Open-Source Vision-Language-Action Model)」がある。VLAというテキスト命令と画像データから次に動くロボットの座標値を出力するモデルで、スタンフォード大学やGoogle、トヨタ自動車などが共同研究している。大企業が公開したオープンソースモデルというだけでなく、VLAの普及のために学習方法まで細かく記載されているためか、GitHubにおける利用度の高さの指標になっているStarの数も多く、議論も活発になっている。

 これ以外の方法として、近年では生成AIを利用したAIエージェントという形式での利用も注目されている。AIエージェントとは、LLMを活用し、タスクを理解して適切なツールを選定し、それを実行するシステムのことだ。生成AIがコンテンツを生成するのではなく、その自然言語処理能力を使用する形だ。例えば、物体認識機能とロボットを制御する機能を登録させたAIエージェントに物体の把持を命令すると、LLMが物体認識とロボット制御を動的に実行し、物体把持のタスクを実行する。

AIエージェントによるロボット制御の例 AIエージェントによるロボット制御の例[クリックで拡大]

 デンソーの「Generative-AI-Robot」という研究では、動作を行うタスクをあらかじめ登録しておき、それを生成AIが自動的に選択して動かしている。人間の指示でロボットが自律的に最適な行動を判断して実行できるため、ロボット制御における生成AIの使い方としては、今後はこの形式が主流になっていくだろう。

3.2 ROSでの生成AI

 このようにロボット制御において生成AIが普及していく中で、ロボット制御OSであるROSにおいてもその流れが見られる。ROSはオープンソースライブラリであるため、最新技術との組み合わせが多くのユーザーに利用され、研究もさらに進展していくだろう。

 ChatGPTが登場した当初は、「llama_ros」の初期バージョンや「chatgpt_ros」などのROSのインタフェースからLLMを利用するようなライブラリ、「ROScribe」などのLLMにROSパッケージを作成させるようなものが見られ、「ROS-LLM」といったAIエージェントのように活用する研究も散見された。

 最近では、AIエージェントとしてROSを制御する研究やライブラリの数が増えている。NVIDIAの「ReMEmbR」という研究では生成AIを活用し、「Isaac ROS」を活用した自律移動ロボットがカメラで周辺環境を理解し、ユーザーからの道案内のタスクを実行している。ここで使われたソースコードやフレームワークは組み込みAIボードである「Jetson Orinシリーズ」で使用できるライブラリとして公開されているため、NVIDIAの生成AI推進がうかがえる。

 また、2024年に開催されたROSの大規模な技術発表会の「ROSCon 2024」でもAIエージェントライブラリが発表された。それらのライブラリを幾つか紹介しよう。

 まず、Robotec.aiが発表した「RAI」というライブラリは、ROS2を基盤としたAIエージェントフレームワークだ。RAIを通じてトピックやサービスを送信するといったROS2の基本的な機能やNavigation2への指示を送る命令とVLM(Visual Language Model)による物体認識といった機能も備わっている。デモとしてシミュレーション上での自律移動ロボットやアームロボットを制御するサンプルも用意されており、ROSConでの発表でもこのデモが使われていた。富士ソフトでもこのライブラリを用いて検証を行い、実機での物体把持を確認している。

富士ソフトでの「RAI」を用いたロボット制御検証 富士ソフトでの「RAI」を用いたロボット制御検証[クリックで拡大]

 「ros2ai」はコマンドラインで「ros2 ai○○を教えて」のように自然言語で問い合わせると、LLM経由でROS2のトピックのリストやパラメーターなどを確認できる。これ以外にもNASA Jet Propulsion Laboratoryによる「rosa」というライブラリも存在している。こちらもRAI同様、ROS通信が可能なAIエージェントフレームワークでROS1にも対応している。GitHubに公開されているコードでは基本的な部分の実装となっているが、rosaを通じて実機の4足ロボットIsaac Sim上で自律移動ロボットを制御するデモを公開している。

 こういったライブラリの開発者は「ROS Embodied AI Community Group」というコミュニティーを作成し、定期的に定例会議を行っているようだ。ROSにおける生成AIでのロボット制御はリリースされたばかりで、研究段階にとどまっており実用にまでは至っていないが、今後の発展が見込めそうだ。

Copyright © ITmedia, Inc. All Rights Reserved.