Cyber Physical System(CPS)を低コストで制御するAIを開発
自動運転等における複雑なタスクをベクトルに変換しメモリ消費を低減
研究成果のポイント
- サイバーフィジカルシステム(CPS: Cyber Physical System)では、ロボット等の物理システムが複雑かつ高度なタスクを自律的に実行できる制御機能を構築することが不可欠
- これまでの制御機能を学習する人工知能(AI)技術は、特にタスクの数が膨大である場合、メモリ消費等のコストの観点から現実的ではないという課題が存在
- 本研究では、CPSで想定される複雑なタスク仕様を信号時相論理(STL:Signal Temporal Logic)で記述し、それらをベクトルに変換する機械学習技術(STL2vec)を新たに構築することで、多種多様なタスクの下での制御機能を統一的かつ省メモリで学習することが可能に
- 数値実験では自律型移動ロボットの制御問題を考え、約200種類のSTLタスクを一度に学習するシミュレーションを行い、従来法に比べメモリ消費量を1/24に削減することに成功自動運転を代表とするCPSにおける様々な応用分野への展開が期待
概要
大阪大学大学院工学研究科の大学院生の橋本航さん(博士後期課程)、橋本和宗助教、高井重昌教授らの研究グループは、ロボットやドローン、自動車等の様々な物理システムを計算機(情報システム)で管理し制御するサイバーフィジカルシステム(CPS: Cyber Physical System)において、多種多様かつ複雑なタスクを実行するための制御機能を低コストで学習する新たな人工知能(AI)技術を開発しました。
近年、自動運転に代表されるように、様々なタスク(前方の車に追従する、車線変更する等)を実行するための制御機能をAIにより行うための機械学習手法に関する研究が盛んに行われています。しかし、自動運転等で想定されるタスクの数は膨大であることから、それぞれのタスクに対し学習モデルを一つずつ用意し構築することは、メモリ消費等といったコストの観点から好ましくありません。そのため、これまで提案されてきた学習方法は、特にタスクの数が多い場合には現実的ではないといった課題がありました。
今回、橋本助教らの研究グループは、CPSにおいて想定される複雑なタスク仕様を信号時相論理(STL:Signal Temporal Logic)で記述し、それらをベクトルに変換する技術(STL2vec)を新たに構築することで、多種多様なタスクの下での制御機能を統一的かつ省メモリで学習することを可能としました。今回提案した技術により、CPSにおける幅広い分野に対し、従来法に比べより柔軟性の高い実用的な設計方法の確立への展開が期待されます。
本研究成果は、「IEEE Robotics and Automation Letters」に、3月8日(火)午前8時(日本時間)に公開されました。
研究の背景
情報、通信、AI技術等の発展に伴い、ロボットやドローン、自動車等、様々な物理システムを計算機(情報システム)で管理し制御するCPSが注目を集めています。 CPSでは、物理システムが複雑かつ高度なタスクを自律的に実行できるよう適切に制御しなければなりません。例えば自動運転では、車の進むべき方向や加速度等を、与えられたタスク(前方の車に追従する、車線変更する等)をもとにリアルタイムで更新しつづける制御機能(以降、コントローラと呼ぶ)を構築する必要があります。近年、物理システムに対し与えられたタスクを実行するコントローラを、AIで学習するための機械学習手法に関する研究が盛んに行われています。しかし、自動運転等で想定されるタスクの数は膨大であることから、一つ一つのタスクに対し学習モデルを構築することは、メモリ消費といったコストの観点から好ましくありません。そのため、これまで考えられてきた学習方法は、特にタスクの数が膨大である場合には現実的ではないといった課題がありました。
研究の内容
本研究グループでは、CPSで想定される多種多様なタスクを実行するコントローラを、統一的かつ省メモリで学習する新たなアプローチを提案しています。まず、提案アプローチでは複雑かつ高度なタスクを、信号時相論理(STL: Signal temporal logic)により記述しています。STLは様相論理:∧(かつ)∨(または)等に加え、時相論理: (いつか)、 (ずっと)等の論理演算子を用いた論理体系です。STLを用いることで、CPSにおける幅広いタスクを形式的に(計算機に読み取り可能な形で)記述することが可能となります(図1)。
特に本研究では、STLで記述される多様なタスクを実行できるコントローラを、ニューラルネットワークを用いて学習することを目指します。複数のSTLタスクに対応する場合、既存手法では図2(a) に示すように、タスクの数だけ学習モデル(ニューラルネットワーク)を用意し、リアルタイムで得られるセンサデータをもとに、一つずつ独立に学習する必要があります。しかしこの場合、特にタスク数が多いときは学習に必要な計算時間やメモリ量が膨大となる恐れがあり、好ましくありません。そこで提案手法では、図2(b) のように、STLタスクをベクトルに変換するニューラルネットワーク(以降、「STL2vec」 と呼ぶ)を構築し、そしてさらに変換されたベクトルをセンサ情報と共に入力として用いるニューラルネットワークを学習します。 これより、提案手法ではタスクの数に関わらず、STL2vecとコントローラ用の二つのニューラルネットワークのみ学習すればよいことになり、学習に必要なメモリ消費の削減が期待できます。また、STL2vec は自然言語処理の分野で開発されたword2vecに触発されており、STL2vecにより出力される制御仕様のベクトル表現はタスク同士の類似度を捉えるように学習されるため、単純に各タスクに任意の整数等を割り当ててコントローラへの入力として用いる場合と比べ学習効率を改善することが期待できます。
数値実験では、自律型移動ロボットの制御問題を考え、約200種類のSTLタスクを一度に学習するシミュレーションを行い、従来法に比べメモリ消費量を1/24に削減することに成功しました。これより、CPSで想定されるタスクをSTLで記述し、それらを実行するコントローラを二つのニューラルネットワークのみで統一的に学習させることで、複数タスクに対応可能なコントローラの学習が省メモリで実現可能であることを確認しました。
図1. STLによる制御仕様の例
図2. 提案手法と従来法の比較
本研究成果が社会に与える影響(本研究成果の意義)
提案アプローチの主要なポイントは、STLで記述されるタスクをベクトルに変換するニューラルネットワークを、タスク同士の類似度を定量的に評価することにより学習したことです。これより、従来法に比べ、多種多様かつ複雑なタスクに順応したより柔軟性の高いコントローラを、低コストで学習することが可能となります。提案手法はダイナミクスをもつどのような制御システムに対しても適用可能です。したがって、自動運転やロボットの制御、化学プラントや電力プラントといったプロセス系の制御等、CPSにおける様々な応用分野への展開が期待できます。 また、提案手法は理論計算機科学、制御工学、機械学習の三つの分野を融合した新たなアプローチであることから、学術的な側面からも新しい展開が期待できます。
特記事項
本研究成果は、2022年3月8日(火)午前8時(日本時間)に「IEEE Robotics and Automation Letters」(オンライン)に掲載されました。
タイトル:“STL2vec: Signal Temporal Logic Embeddings for Control Synthesis with Recurrent Neural Networks”
著者名: Wataru Hashimoto, Kazumune Hashimoto, and Shigemasa Takai
DOI:https://doi.org/10.1109/LRA.2022.3155197
なお、本研究は、科学技術振興機構(JST) 戦略的創造研究推進事業 CREST「数学・数理科学と情報科学の連携・融合による情報活用基盤の創出と社会課題解決に向けた展開」研究領域(研究総括:上田 修功)における研究課題「AI集約的サイバーフィジカルシステムの形式的解析設計手法」(JPMJCR2012, 研究代表者:末永幸平)、科研費(若手研究)「物理モデルとセンサデータに基づく省リソースな制御と通信方策の設計」(21K14184,研究代表者:橋本和宗)の助成を受けたものです。
参考URL
用語説明
- 信号時相論理
∧(かつ)∨(または)といった論理演算子に加え、 F(いつか)、G(ずっと)といった時相論理演算子を用いた論理体系。特に、時相論理演算子を用いることで、信号に関する様々な時間的性質を記述することが可能となった。
- ニューラルネットワーク
関数の表現方法の一つで、入力層、隠れ層、出力層で構成される。各層は線形な変換と非線形な変換の合成で表現されており、機械学習ではこれらの変換を指定するパラメータをデータから効率的に学習する手法が多く研究されている。
- word2vec
自然言語処理の分野で開発され、日本語や英語といった自然言語の各単語のベクトル表現をニューラルネットワークによって学習する手法。各単語間の関係を適切に反映した密なベクトルを生成することができ、機械翻訳等の様々な自然言語処理タスクの高度化を実現した。
- タスク同士の類似度
本研究では各タスクを実行するための状態軌道(車両の位置の軌道等)をそれぞれ生成し、それらの差異を評価することで、タスク同士の類似度(距離)を求めた。特に、STL2vec学習時には、「どの程度状態軌道がSTL仕様を満たすか」を表す量的な指標として知られるrobustnessを最大化する最適制御問題を各タスクに対して解き、得られた最適状態軌道に対する他のSTL仕様のrobustnessとの比較によって学習データを構成した。
- ダイナミクス
物理システムの状態(位置、速度等)の時間的な振る舞いの表現。通常は微分方程式や差分方程式で記述される。