IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ソニー株式会社の特許一覧 ▶ ソニー コーポレイション オブ アメリカの特許一覧

特表2023-539183実験室設定におけるアクター-クリティックアルゴリズムの訓練
<>
  • 特表-実験室設定におけるアクター-クリティックアルゴリズムの訓練 図1
  • 特表-実験室設定におけるアクター-クリティックアルゴリズムの訓練 図2
  • 特表-実験室設定におけるアクター-クリティックアルゴリズムの訓練 図3
  • 特表-実験室設定におけるアクター-クリティックアルゴリズムの訓練 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-09-13
(54)【発明の名称】実験室設定におけるアクター-クリティックアルゴリズムの訓練
(51)【国際特許分類】
   G06N 20/00 20190101AFI20230906BHJP
【FI】
G06N20/00
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023512448
(86)(22)【出願日】2021-05-05
(85)【翻訳文提出日】2023-02-20
(86)【国際出願番号】 US2021030912
(87)【国際公開番号】W WO2022046197
(87)【国際公開日】2022-03-03
(31)【優先権主張番号】17/003,673
(32)【優先日】2020-08-26
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
(71)【出願人】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(71)【出願人】
【識別番号】504257564
【氏名又は名称】ソニー コーポレイション オブ アメリカ
(74)【代理人】
【識別番号】100092093
【弁理士】
【氏名又は名称】辻居 幸一
(74)【代理人】
【識別番号】100109070
【弁理士】
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100067013
【弁理士】
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100109335
【弁理士】
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【弁理士】
【氏名又は名称】近藤 直樹
(72)【発明者】
【氏名】カンデルワル ピユーシュ
(72)【発明者】
【氏名】マクグラシャン ジェームズ
(72)【発明者】
【氏名】ワーマン ピーター
(57)【要約】
強化学習方法は、アクター-クリティックネットワークを使用することができる。このネットワークでは、(1)追加の実験室専用の状態情報を使用して、プロダクション設定においてこの追加の実験室専用の情報を用いずによく働く方策を訓練する。(2)複雑なリソースを要求する方策を、限られた計算リソースを用いてプロダクションにおいてより容易に実行することができる要求の少ない方策に蒸留する。大きいアクターネットワークを用いて以前に訓練された、大きいクリティックネットワークの凍結バージョンを使用して、プロダクションアクターネットワークを最適化することができる。これらの方法の態様は、アクター-クリティック方法を利用することができ、この方法では、クリティックネットワークは、状態価値関数とは対照的に行動価値関数をモデル化する。
【選択図】図1
【特許請求の範囲】
【請求項1】
エージェントを訓練する方法であって、
実験室設定及びプロダクション設定(production setting)の両方で利用可能な状態情報を使用して、アクターネットワーク及びクリティックネットワークを使用して、方策を訓練するステップであって、前記実験室設定で利用可能な前記状態情報は、前記プロダクション設定で利用可能な前記状態情報よりも大きい、ステップと、
アクターネットワークを用いて前記クリティックネットワークを最適化するステップと、
前記プロダクション設定における前記エージェントのためのプロダクションアクターネットワークを提供するステップと、
を含むことを特徴とする方法。
【請求項2】
前記プロダクションアクターネットワークは、前記アクターネットワークと同じであることを特徴とする、請求項1に記載の方法。
【請求項3】
前記実験室設定における前記状態情報は、前記プロダクション設定で利用できないセンサからの情報を含むことを特徴とする、請求項1に記載の方法。
【請求項4】
前記クリティックネットワークは、行動価値関数に基づいてモデル化されることを特徴とする、請求項1に記載の方法。
【請求項5】
前記訓練が完了した時に、前記クリティックネットワークを凍結クリティックネットワークに複製するステップを更に含むことを特徴とする、請求項1に記載の方法。
【請求項6】
前記凍結クリティックネットワークを使用して、前記プロダクションアクターネットワークを最適化するステップを更に含むことを特徴とする、請求項5に記載の方法。
【請求項7】
前記プロダクションアクターネットワークは、前記アクターネットワークよりも小さいことを特徴とする、請求項6に記載の方法。
【請求項8】
前記クリティックネットワークの前記訓練中に、第1のアクター-クリティックアルゴリズムを実行し、前記凍結クリティックネットワークを使用して前記プロダクションアクターネットワークを最適化する前記ステップ中に、第2のアクター-クリティックアルゴリズムを実行することを特徴とする、請求項6に記載の方法。
【請求項9】
前記第1のアクター-クリティックアルゴリズムは、前記第2のアクター-クリティックアルゴリズムと同じであることを特徴とする、請求項8に記載の方法。
【請求項10】
エージェントを訓練する方法であって、
アクターネットワーク及びクリティックネットワークを使用して、方策を訓練するステップと、
アクターネットワークを用いて前記クリティックネットワークを最適化するステップと、
プロダクション設定における前記エージェントのためのプロダクションアクターネットワークを提供するステップと、
前記訓練が完了した時に、前記クリティックネットワークを凍結クリティックネットワークに複製するステップと、
前記凍結クリティックネットワークを使用して、前記プロダクションアクターネットワークを最適化するステップであって、前記プロダクションアクターネットワークは、前記アクターネットワークよりも小さい、ステップと、
を含むことを特徴とする方法。
【請求項11】
前記クリティックネットワークの前記訓練中に、第1のアクター-クリティックアルゴリズムを実行し、前記凍結クリティックネットワークを使用して前記プロダクションアクターネットワークを最適化する前記ステップ中に、第2のアクター-クリティックアルゴリズムを実行することを特徴とする、請求項10に記載の方法。
【請求項12】
前記第1のアクター-クリティックアルゴリズムは、前記第2のアクター-クリティックアルゴリズムと同じであることを特徴とする、請求項11に記載の方法。
【請求項13】
前記方策の前記訓練は、実験室設定及び前記プロダクション設定の両方で利用可能な状態情報を使用し、前記実験室設定で利用可能な前記状態情報は、前記プロダクション設定で利用可能な前記状態情報よりも大きいことを特徴とする、請求項10に記載の方法。
【請求項14】
前記クリティックネットワークは、行動価値関数に基づいてモデル化されることを特徴とする、請求項10に記載の方法。
【請求項15】
実行可能プログラムを記憶した非一時的コンピュータ可読記憶媒体であって、前記プログラムは、
実験室設定及びプロダクション設定の両方で利用可能な状態情報を使用して、アクターネットワーク及びクリティックネットワークを使用して、方策を訓練するステップであって、前記実験室設定で利用可能な前記状態情報は、前記プロダクション設定で利用可能な前記状態情報よりも大きい、ステップと、
アクターネットワークを用いて前記クリティックネットワークを最適化するステップと、
前記プロダクション設定における前記エージェントのためのプロダクションアクターネットワークを提供するステップと、
を実行するように1又は2以上のプロセッサに命令する、
ことを特徴とする非一時的コンピュータ可読記憶媒体。
【請求項16】
前記クリティックネットワークは、行動価値関数に基づいてモデル化されることを特徴とする、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【請求項17】
前記プログラムは、
前記訓練が完了した時に、前記クリティックネットワークを凍結クリティックネットワークに複製するステップと、
前記凍結クリティックネットワークを使用して、前記プロダクションアクターネットワークを最適化するステップと、
を更に実行するように1又は2以上のプロセッサに命令する、
ことを特徴とする、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【請求項18】
前記プロダクションアクターネットワークは、前記アクターネットワークよりも小さいことを特徴とする、請求項17に記載の非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、一般に、強化学習方法に関する。具体的には、本発明は、アクター-クリティックモデルを訓練する時に、アクターネットワークの性能を向上させるためのシステム及び方法に関する。
【背景技術】
【0002】
以下の背景情報は、先行技術の特定の態様(例えば、限定ではなく、手法、事実又は通念)の例を提示することができ、これらの例は先行技術の更なる態様を読者に更に伝えるのに役立つと期待されるが、本発明又はそのいずれかの実施形態をこれらの中で言及又は暗示される、或いはそれについて推測されるいずれかの事項に限定するものとして解釈すべきではない。
【0003】
強化学習(RL)は、システムのダイナミクスが未知であり、対話及び観察を通じてエージェントによって学習されなければならない時に、人工エージェントがそのシステム(又は「環境」)の制御を最適化する問題(及び解決策)のクラスを示す。通常、RL問題及び解決策は、エージェントの単一の連続寿命内に実行すべき学習及び最適化を考慮する。しかしながら、学習エージェントの初期性能は、産業設定では悪く、多くの場合に安全でないので、RLの産業用途は、RLを2つのフェーズ、すなわち、(1)安全な実験室内で起こる学習フェーズ、及び(2)いかなる後続の学習もなく、実験室で学習されたコントローラ、又は「方策」が展開されるプロダクションフェーズに分離することから利益を得る。
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記に鑑みて、特に、限られた計算リソースを用いてエージェントにおいて、強化学習を改善するために、これらの2つのフェーズをより良く使用するシステム及び方法が必要とされている。
【課題を解決するための手段】
【0005】
本発明の実施形態は、エージェントを訓練する方法であって、実験室設定及びプロダクション設定の両方で利用可能な状態情報を使用して、アクターネットワーク及びクリティックネットワークを使用して、方策を訓練するステップであって、前記実験室設定で利用可能な前記状態情報は、前記プロダクション設定で利用可能な前記状態情報よりも大きい、ステップと、アクターネットワークを用いて前記クリティックネットワークを最適化するステップと、前記プロダクション設定における前記エージェントのためのプロダクションアクターネットワークを提供するステップと、を含む方法を提供する。
【0006】
いくつかの実施形態では、前記クリティックネットワークは、行動価値関数に基づいて訓練される。
【0007】
いくつかの実施形態では、前記方法は、前記訓練が完了した時に、前記クリティックネットワークを凍結クリティックネットワークに複製するステップと、前記凍結クリティックネットワークを使用して、前記プロダクションアクターネットワークを最適化するステップと、を更に含む。
【0008】
いくつかの実施形態では、前記クリティックネットワークの前記訓練中に、第1のアクター-クリティックアルゴリズムを実行し、前記凍結クリティックネットワークを使用して前記プロダクションアクターネットワークを最適化する前記ステップ中に、第2のアクター-クリティックアルゴリズムを実行する。いくつかの実施形態では、前記第1のアクター-クリティックアルゴリズムは、前記第2のアクター-クリティックアルゴリズムと同じである。
【0009】
本発明の実施形態は、エージェントを訓練する方法であって、アクターネットワーク及びクリティックネットワークを使用して、方策を訓練するステップと、アクターネットワークを用いて前記クリティックネットワークを最適化するステップと、プロダクション設定における前記エージェントのためのプロダクションアクターネットワークを提供するステップと、前記訓練が完了した時に、前記クリティックネットワークを凍結クリティックネットワークに複製するステップと、前記凍結クリティックネットワークを使用して、前記プロダクションアクターネットワークを最適化するステップであって、前記プロダクションアクターネットワークは、前記アクターネットワークよりも小さい、ステップと、を含む方法を更に提供する。
【0010】
本発明の実施形態は、また、実行可能プログラムを記憶した非一時的コンピュータ可読記憶媒体であって、前記プログラムは、実験室設定及びプロダクション設定の両方で利用可能な状態情報を使用して、アクターネットワーク及びクリティックネットワークを使用して、方策を訓練するステップであって、前記実験室設定で利用可能な前記状態情報は、前記プロダクション設定で利用可能な前記状態情報よりも大きい、ステップと、アクターネットワークを用いて前記クリティックネットワークを最適化するステップと、前記プロダクション設定における前記エージェントのためのプロダクションアクターネットワークを提供するステップと、を実行するように1又は2以上のプロセッサに命令する、非一時的コンピュータ可読記憶媒体を提供する。
【0011】
本発明のこれらの及びその他の特徴、態様及び利点は、以下の図面、説明及び特許請求の範囲を参照することでより良く理解されるであろう。
【0012】
同じ参照記号が同様の要素を示すことができる添付図面の図によって、本発明のいくつかの実施形態を限定ではなく一例として示す。
【図面の簡単な説明】
【0013】
図1】強化学習のアクター-クリティックモデルの概略図である。
図2】どのようにして、実験室設定及びプロダクション設定の両方で利用可能な状態情報を用いてクリティックネットワークを訓練し、一方で、プロダクション設定で利用可能な状態情報を用いてアクターネットワークを訓練するかについての概略図である。
図3】アクター-クリティック手法を使用して大きいアクターネットワークを最適化し、次に、大きいアクターネットワークから直接的に、プロダクション可能な(production-ready)アクターを蒸留する(distilling)従来のプロセスを示す図である。
図4】本発明の例示的な実施形態によるプロセスを示す図である。このプロセスでは、アクター-クリティックアルゴリズムを2回実行する。まず、大きいアクターネットワークを用いてクリティックネットワークを最適化するのを助け、次に、最適化されたクリティックネットワークの凍結コピーを再使用することによって、プロダクション可能なアクターネットワークを最適化する。
【発明を実施するための形態】
【0014】
別途指示していない限り、図のイラストは必ずしも縮尺通りではない。
【0015】
図示の実施形態について説明する以下の詳細な説明を参照することによって、本発明及びその様々な実施形態をより良く理解することができる。図示の実施形態は一例として示すものであり、最終的に特許請求の範囲に定める本発明を限定するものではないと明確に理解されたい。
【0016】
本明細書で使用する用語は、特定の実施形態を説明するためのものにすぎず、本発明を限定するように意図するものではない。本明細書で使用する「及び/又は」という用語は、関連する記載項目のうちの1つ又は2つ以上のありとあらゆる組み合わせを含む。本明細書で使用する単数形の「a、an(英文不定冠詞)」及び「the(英文定冠詞)」は、その文脈で別途明確に示していない限り、単数形に加えて複数形も含むように意図される。更に、「含む、備える(comprises及び/又はcomprising)」という用語は、本明細書で使用する場合、言及する特徴、ステップ、動作、要素及び/又はコンポーネントの存在を示すものであるが、1又は2以上の他の特徴、ステップ、動作、要素、コンポーネント、及び/又はこれらの群の存在又は追加を除外するものではないと理解されたい。
【0017】
特に定めがない限り、本明細書で使用する(技術用語及び科学用語を含む)全ての用語は、本発明が属する技術の当業者が一般に理解している意味と同じ意味を有する。更に、一般に使用される辞書に定義されているような用語については、関連技術及び本開示の文脈におけるこれらの意味に従う意味を有すると解釈すべきであり、本明細書で明確に定義していない限り、理想的な又は過度に形式的な意味で解釈されるものではないと理解されるであろう。
【0018】
本発明の説明では、複数の技術及びステップが開示されていると理解されるであろう。これらはそれぞれ個々の利益を有し、それぞれ開示する他の技術の1つ又は2つ以上、又は場合によっては全てと共に使用することもできる。したがって、明確にするために、本説明では個々のステップの全ての可能な組み合わせを不必要に繰り返さないようにする。しかしながら、本明細書及び特許請求の範囲については、このような組み合わせも本発明の範囲及び特許請求の範囲に完全に含まれるという理解の下で読むべきである。
【0019】
以下の説明では、説明の目的で、本発明の完全な理解をもたらすために数多くの具体的な詳細を示す。しかしながら、当業者には、これらの具体的な詳細を伴わずとも本発明を実施できることが明らかであろう。
【0020】
本開示は本発明の例示として見なすべきであり、以下の図又は説明によって示す具体的な実施形態に本発明を限定するように意図するものではない。
【0021】
少なくとも互いに一般通信を行う装置又はシステムモジュールは、別途明示していない限り、互いに連続的に通信する必要はない。また、少なくとも互いに一般通信を行う装置又はシステムモジュールは、直接的に、或いは1又は2以上の仲介装置を通じて間接的に通信することができる。
【0022】
互いに通信する複数のコンポーネントを含む実施形態の説明は、このようなコンポーネントが全て必要であることを意味するものではない。むしろ、本発明の幅広い可能な実施形態を示すために様々な任意のコンポーネントについて説明する。
【0023】
「コンピュータ」又は「コンピュータ装置」は、構造化された入力を受け入れ、構造化された入力を規定のルールに従って処理し、処理の結果を出力として生成することができる1又は2以上の装置及び/又は1又は2以上のシステムを意味することができる。コンピュータ又はコンピュータ装置の例としては、コンピュータ、固定及び/又はポータブルコンピュータ、単一のプロセッサ、複数のプロセッサ、又は並行して及び/又は並行しないで動作できるマルチコアプロセッサを有するコンピュータ、スーパーコンピュータ、メインフレーム、スーパーミニコンピュータ、ミニコンピュータ、ワークステーション、マイクロコンピュータ、サーバ、クライアント、双方向テレビ、ウェブアプライアンス、インターネットアクセスを有する通信装置、コンピュータと双方向テレビとのハイブリッド結合、ポータブルコンピュータ、タブレットパーソナルコンピュータ(PC)、携帯情報端末(PDA)、携帯電話機、例えばデジタルシグナルプロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け命令セットプロセッサ(ASIP)、チップ、複数のチップ、システムオンチップ又はチップセットなどの、コンピュータ及び/又はソフトウェアをエミュレートする特定用途向けハードウェア、データ収集装置、光コンピュータ、量子コンピュータ、バイオコンピュータ、及び一般にデータを受け入れ、1又は2以上の記憶されたソフトウェアプログラムに従ってデータを処理し、結果を生成し、典型的には入力装置、出力装置、記憶装置、算術演算装置、論理装置及び制御装置を含むことができる装置を挙げることができる。
【0024】
「ソフトウェア」又は「アプリケーション」は、コンピュータを動作させるための規定のルールを意味することができる。ソフトウェア又はアプリケーションの例としては、1又は2以上のコンピュータ可読言語でのコードセグメント、グラフィック及び/又はテキスト命令、アプレット、プリコンパイル済みコード、解釈済みコード、コンパイル済みコード及びコンピュータプログラムを挙げることができる。
【0025】
また、コンピュータ、他のプログラマブルデータ処理装置又はその他の装置に特定の形で機能するように指示することができるこれらのコンピュータプログラム命令をコンピュータ可読媒体に記憶することにより、コンピュータ可読媒体に記憶された命令が、フローチャート及び/又はブロック図の1又は複数のブロック内に指定される機能/動作を実行する命令を含む製造の物品を生み出すようにすることもできる。
【0026】
更に、プロセスステップ、方法ステップ又はアルゴリズムなどは一定の順序で説明することができるが、このようなプロセス、方法及びアルゴリズムは別の順序で機能するように構成することもできる。換言すれば、説明できるステップのいずれかの順番又は順序は、これらのステップを必ずしもこの順序で実行する必要があることを示すものではない。本明細書で説明するプロセスのステップは、いずれかの実用的な順序で実行することができる。更に、いくつかのステップを同時に実行することもできる。
【0027】
本明細書で説明する様々な方法及びアルゴリズムは、例えば適切にプログラムされた汎用コンピュータ及び計算装置によって実行できることが容易に明らかになるであろう。通常、プロセッサ(例えば、マイクロプロセッサ)は、メモリ又は同様の装置から命令を受け取ってこれらの命令を実行することにより、これらの命令によって定められたプロセスを実行する。更に、このような方法及びアルゴリズムを実行するプログラムは、様々な既知の媒体を用いて記憶して送信することができる。
【0028】
本明細書で使用する「コンピュータ可読媒体」という用語は、コンピュータ、プロセッサ又は同様の装置が読み取ることができるデータ(例えば、命令)を提供することに関与するいずれかの媒体を意味する。このような媒体は、以下に限定するわけではないが、不揮発性媒体、揮発性媒体及び送信媒体を含む多くの形態を取ることができる。不揮発性媒体は、例えば光又は磁気ディスク及びその他の永続的メモリを含む。揮発性媒体は、典型的にはメインメモリを構成するダイナミックランダムアクセスメモリ(DRAM)を含む。送信媒体は、プロセッサに結合されたシステムバスを含むワイヤを含む、同軸ケーブル、銅線及び光ファイバを含む。送信媒体は、無線周波数(RF)及び赤外線(IR)データ通信中に生成されるものなどの音波、光波及び電磁放射線を含み、又はこれらを伝えることができる。一般的な形態のコンピュータ可読媒体としては、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、他のいずれかの磁気媒体、CD-ROM、DVD、他のいずれかの光媒体、パンチカード、紙テープ、穴パターンを有する他のいずれかの物理的媒体、RAM、PROM、EPROM、FLASHEEPROM、他のいずれかのメモリーチップ又はカートリッジ、後述するような搬送波、又はコンピュータが読み取ることができる他のいずれかの媒体を挙げることができる。
【0029】
一連の命令をプロセッサに搬送することには、様々な形態のコンピュータ可読媒体が関与することができる。例えば、一連の命令は、(i)RAMからプロセッサに供給することができ、(ii)無線送信媒体を介して搬送することができ、及び/又は(iii)Bluetooth、TDMA、CDMA、3Gなどの数多くのフォーマット、標準又はプロトコルに従ってフォーマットすることができる。
【0030】
本発明の実施形態は、本明細書に開示する動作を実行する装置を含むことができる。装置は、所望の目的で特別に構成することも、又は内部に記憶されたプログラムによって選択的に作動又は再構成される汎用装置を含むこともできる。
【0031】
特に別途述べていない限り、また以下の説明及び特許請求の範囲から明らかになり得るように、本明細書全体を通じて、「処理する」、「計算する」、「算出する」又は「決定する」などの用語を利用した説明は、コンピュータシステムのレジスタ及び/又はメモリ内の電子量などの物理量として表されるデータを操作し、及び/又はコンピュータシステムのメモリ、レジスタ又は他のこのような情報記憶、送信又は表示装置内の物理量として同様に表される他のデータに変形させるコンピュータ、コンピュータシステム又は同様の電子計算装置の動作及び/又はプロセスを意味すると理解されたい。
【0032】
同様に、「プロセッサ」という用語は、レジスタ及び/又はメモリからの電子データを処理し、外部装置の物理的変化又は作動を引き起こすようにこの電子データをレジスタ及び/又はメモリへの記憶又は外部装置への伝達が可能な他の電子データに変換するいずれかの装置又は装置の一部を意味することができる。
【0033】
「エージェント」又は「知的エージェント」又は「人工エージェント」又は「人工知能エージェント」という用語は、観察に応答して行動を選択するいずれかの人為的エンティティを意味するように意図される。「エージェント」は、ロボット、模擬ロボット、ソフトウェアエージェント又は「ボット」、適応エージェント、インターネット又はウェブボットを制限なく意味することができる。
【0034】
「ロボット」という用語は、感知又は観察に応答して行動又はコマンドを発行するコンピュータ又はコンピュータシステムによって直接的又は間接的に制御されるいずれかのシステムを意味することができる。この用語は、カメラ、タッチセンサ及び距離センサなどの物理的センサを有する従来の物理的ロボット、又は仮想シミュレーション内に存在する模擬ロボット、或いはネットワーク内のソフトウェアとして存在するメールボット又はサーチボットなどの「ボット」を制限なく意味することができる。この用語は、いずれかの脚付きロボット(limbed robots)、歩行ロボット、(以下に限定するわけではないが、組み立て、塗装、修理、メンテナンスなどの自動化のために使用されるロボットを含む)産業ロボット、車輪付きロボット、掃除又は芝刈りロボット、パーソナルアシスタントロボット、サービスロボット、医用又は外科ロボット、飛行ロボット、運転ロボット、航空機又は宇宙船ロボット、或いは車両用又はそれ以外の、実際の又は模擬の、知的家庭用又は作業用機器などの静止ロボットも含む、実質的に自律制御下で動作する他のいずれかのロボットを制限なく意味することもできる。
【0035】
「観察」という用語は、エージェントがいずれかの手段によって受け取る、エージェントの環境又はエージェント自体に関するいずれかの情報を意味する。いくつかの実施形態では、この情報を、限定ではないが、カメラ、タッチセンサ、距離センサ、温度センサ、波長センサ、音響又は音声センサ、ポジションセンサ、圧力又は力センサ、速度又は加速度又はその他の動きセンサ、位置センサ(例えば、GPS)などの知覚装置を通じて受け取られる知覚情報又は信号とすることができる。他の実施形態では、この情報が、限定ではないが、一群の知覚装置と記憶された情報とを組み合わせたものから作成された、編集された、抽象的な又は状況的な情報を含むこともできる。非限定的な例では、エージェントが、エージェント自体又は他の物体の位置又は特性に関する抽象情報を観察として受け取ることができる。いくつかの実施形態では、この情報が、人々又は顧客、或いはその購買習慣、個人連絡先情報、個人的好みなどの特性を意味することができる。いくつかの実施形態では、観察を、限定ではないが、エージェントの現在又は過去の行動に関する固有感覚情報(proprioceptive information)又はその他の情報、エージェントの内部状態に関する情報、或いはエージェントによって既に計算又は処理された情報などの、エージェントの内部に関する情報とすることができる。
【0036】
「行動」という用語は、エージェントの環境、エージェントの物理的又は模擬的自己(physical or simulated self)、或いはエージェントの内部機能を制御し、これらに影響し、又はこれらを左右するための、最終的にはエージェントの将来の行動、行動選択、又は行動の好みを制御し、又はこれらに影響を与えることができるエージェントのいずれかの手段を意味する。多くの実施形態では、これらの行動が、物理的又は模擬サーボ又はアクチュエータを直接制御することができる。いくつかの実施形態では、これらの行動を、エージェントの選択に影響するように最終的に意図された好み又は一連の好みの表現とすることができる。いくつかの実施形態では、エージェントの(単複の)行動に関する情報が、限定ではないが、エージェントの(単複の)行動にわたる確率分布、及び/又はエージェントの最終的な行動選択に影響するように意図された発信情報(outgoing information)を含むことができる。
【0037】
「状態」又は「状態情報」という用語は、限定ではないが、エージェントの現在及び/又は過去の観察に関する情報を含むことができる、環境又はエージェントの状態に関するいずれかの一群の情報を意味する。
【0038】
「方策」という用語は、いずれかの完全な又は部分的な状態情報からいずれかの行動情報へのいずれかの関数又はマッピングを意味する。方策は、ハードコーディングすることも、或いは限定ではないが、いずれかの強化学習法又は制御最適化法を含むいずれかの適切な学習法又は教示法を使用して修正、適合又は訓練することもできる。方策は、限定ではないが、特定の尺度、値又は関数を最適化することによって生じ得るものなどの明示的マッピング又は非明示的マッピングとすることができる。方策は、限定ではないが、どのような条件下で方策が開始又は継続できるかを反映する開始条件(又は確率)、どのような条件下で方策が終了できるかを反映する終了条件(又は確率)などの関連するさらなる情報、特徴又は特性を含むことができる。
【0039】
概して、本発明の実施形態は、アクター-クリティックネットワークを使用する強化学習方法を提供する。このネットワークでは、(1)追加の実験室専用の状態情報を使用して、プロダクション設定においてこの追加の実験室専用の情報を用いずによく働く方策を訓練する。(2)複雑なリソースを要求する方策を、限られた計算リソースを用いてプロダクションにおいてより容易に実行することができる要求の少ない方策に蒸留する。これらの方法の態様は、アクター-クリティック方法を利用することができ、この方法では、クリティックネットワークは、状態価値関数とは対照的に行動価値関数をモデル化する。
【0040】
RL問題は、通常、マルコフ決定過程(MDP)としてフレーム化される。MDPは、M = <S, A, P, R>として表すことができる。ここで、
Sは、環境の状態空間を表す。所与の状態
は、時間tまでの環境内の状況を完全に示す。
Aは、システムが行うことができる行動のセットである。
Pは、所与の状態と行動のペア(state-action pair)から特定の次の状態に達する遷移確率を与える遷移関数である。
Rは、状態
から行動
が行われ、環境が状態sから新たな状態
に遷移した時に受け取られる報酬を定義する報酬関数R(st, at, st+1))である。
【0041】
RLアルゴリズムの目標は、エージェントが方策に従った時に、時間と共に累積報酬を最大化する、状態から行動へのマッピング、すなわち方策π(s)を見つけることである。実際には、エージェントは、現在のMDP状態を部分的に観察することしかできない場合がある。このような場合、エージェントは、累積報酬を最大化する観察から行動へのマッピングである方策π(o)を見つけなければならない。
【0042】
RL設定では、エージェントは、遷移関数への直接アクセスを有さない。代わりに、エージェントは、環境と対話(行動を選択)して、結果(状態及び報酬)を観察することができる。これらの観察から、エージェントは、データセットを記録し、このデータセットを使用して方策を学習することができる。
【0043】
RLアルゴリズムにおいて多くの場合に推定される2つの関数は、状態価値関数Vπ (s)及び行動価値関数Qπ (s, a)である。状態価値関数Vπ (s)は、状態sから方策πに従った時の予想される累積の将来の報酬である。行動価値関数Qπ (s; a)は、まず、状態sから行動aが実行され、次に、その後の結果としての状態から方策πに従った時の予想される累積の将来の報酬である。
【0044】
ディープ・アクター-クリティック・RLアルゴリズムは、方策を学習し、通常、以下の2つの異なるディープニューラルネットワークを利用するために使用することができるアルゴリズムのファミリーである。アクターネットワークは、MDP定義で記述される方策ネットワークπ(o)を表現し、制御行動の選択を担当する。訓練が完了すると、評価又はテスト中に行動を計算するために、このネットワークのみが必要である。クリティックネットワークは、アクターによって行われる行動に対する長期の報酬を予測する。アルゴリズムに応じて、クリティックネットワークは、アクターネットワークによって定義される方策のための状態価値関数又は行動価値関数のいずれかを直接推定する。このクリティックネットワークに対してアクターの行動の選択を最適化することによって、アクターを改善する。図1に、アクターネットワーク10とクリティックネットワーク12との間の例示的な対話の簡略化されたバージョンを示す。ここで、クリティックネットワーク12は、方策16のための価値関数14(例えば、行動価値関数)を生成する。この関数は、アクターネットワーク10及びクリティックネットワーク12を改善するために使用される時間差(TD)誤差などの誤差を発生させることができる。
【0045】
本発明の実施形態は、以下の制約(1)、(2)を満たす問題のクラスのためのアクターネットワークの性能を向上させるための方法を提供する。(1)より多くの状態情報及び計算リソースが利用可能である実験室設定において収集されるデータを介して、訓練を行うことができる。例えば、自動運転車は、プロダクションにおいて1回の実際の路上よりも実験室において追加の/改善されたセンサを有することができる。(2)実験室の現場及び実験室外での訓練は不要であり、実験室内で方策を訓練し、次に、プロダクションに展開することができるようにする。
【0046】
これらの2つの制約を満たす問題は、実験室RL問題として定義することができる。本明細書で説明するような本発明の例示的な方法は、実験室RL問題を考慮し、アクター-クリティック強化学習を使用する。特に、本発明の実施形態は、アクター-クリティック方法を利用することができ、この方法では、クリティックネットワークは、(状態価値関数とは対照的に)行動価値関数をモデル化する。
【0047】
アクターネットワークの効率的な最適化のために、クリティックネットワークは、行動価値関数を正確に推定すべきである。しかしながら、実験室訓練とプロダクション実行とを区別しない通常のRLシステムでは、プロダクションにおいて利用可能である観察のみを使用して、クリティックネットワークを訓練する。その結果として、クリティックは、行動価値関数のあまり正確でない推定を生成し、アクターのより悪い訓練を招く場合がある。
【0048】
図2を参照すると、プロダクションにおいて、クリティック20(クリティックネットワーク20とも呼ばれる)は必要とされないので、本発明の実施形態は、実験室(実験室状態情報24)及びプロダクション(プロダクション状態情報26)の両方で利用可能な全ての状態情報を使用して、クリティック20を訓練することができ、一方で、プロダクションにおいて利用可能な観察を提供するプロダクション状態情報26のみを使用して、アクター22を訓練する。各ネットワークに提供される情報のこの相違は、アクターネットワーク22が、最適化プロセスを限定することなく、プロダクション中に利用可能な情報を用いてできるだけうまく挙動することを確実にする。
【0049】
プロダクション設定において計算及びメモリ制約が与えられると、プロダクション装置上で特定のサイズのアクターネットワークを実行することしかできない場合がある。訓練中にクリティックネットワークのみが必要であるので、クリティックネットワークのサイズは、プロダクション制約に依存しない。同時に、最適化は、通常、最終方策を表現するために最終的に必要なものよりも大きいアクターネットワークを用いて、より良く作動する。
【0050】
本発明の実施形態によれば、効率的な最適化を可能にする大きいクリティックネットワーク及び大きいアクターネットワークの両方を用いて、エージェントの実験室訓練を実行することができる。次に、最終的な凍結クリティックネットワークから、蒸留の形態を使用して、後述するように、プロダクションの計算制限内で実行することができるアクターネットワークを作成することができる。
【0051】
図3に示すような通常の蒸留方法は、L2ロスノルムなどを使用して、小さい(プロダクション)アクターネットワーク30の出力が、大きいクリティックネットワーク34を使用して最初に訓練された大きいアクターネットワーク32の出力に近いことを目指す。
【0052】
本発明の態様では、図4に示すように、訓練段階1において、エージェントを訓練する際に、アクター-クリティックアルゴリズムを通じて、大きいクリティックネットワーク40及び大きいアクターネットワーク42を最適化することができる。次に、小さいアクターネットワーク44に、予め訓練されたクリティックネットワーク46の凍結バージョンを最適化させることによって、大きいアクターネットワーク42を、プロダクションにおいてアクターネットワークとして使用するのに適した小さいアクターネットワーク44に蒸留することができる。このプロセスは、実験室内の環境とのこれ以上の対話を必要としないので、迅速に実行することができる。
【0053】
当業者であれば、本発明の趣旨及び範囲から逸脱することなく多くの変更及び修正を行うことができる。したがって、図示の実施形態はほんの一例として示したものであり、以下の特許請求の範囲によって定められる本発明を限定するものとして解釈すべきではないと理解されたい。例えば、以下では請求項の要素を特定の組み合わせで示しているが、本発明は、開示する要素よりも少ない、多い、又はこれらと異なる要素の他の組み合わせを含むと明確に理解されたい。
【0054】
本明細書において本発明及びその様々な実施形態を説明するために使用される単語は、その一般に定義される意味合いだけでなく、本明細書における特別な定義によって、これらが単一種を表す包括的構造、材料又は行為も含むと理解されたい。
【0055】
したがって、本明細書では、以下の特許請求の範囲の単語又は要素の定義が、文言として明記された要素の組み合わせしか含まないわけではないように定められる。したがって、この意味では、以下の特許請求の範囲内の要素のうちのいずれか1つに代えて2又は3以上の要素の同等の代用物を使用し、或いは請求項の2又は3以上の要素に代えて単一の要素を使用することもできると考えられる。上記では、要素を特定の組み合わせで機能するように説明し、当初はこのように特許請求することもあるが、場合によっては、特許請求する組み合わせから生じる1又は2以上の要素をこれらの組み合わせから削除することもでき、特許請求する組み合わせを下位の組み合わせ又は下位の組み合わせの変形例に向けることもできると明確に理解されたい。
【0056】
したがって、特許請求の範囲は、上記で具体的に図示し説明したもの、概念的に同等のもの、明らかに代用できるもの、及び本発明の基本的発想を組み込んだものを含むと理解されたい。
【符号の説明】
【0057】
10 アクターネットワーク
12 クリティックネットワーク
14 価値関数
16 方策
20 クリティック/クリティックネットワーク
22 アクター/アクターネットワーク
24 実験室状態情報
26 プロダクション状態情報
30 プロダクションアクターネットワーク
32 大きいアクターネットワーク
34 大きいクリティックネットワーク
40 大きいクリティックネットワーク
42 大きいアクターネットワーク
44 プロダクションアクターネットワーク
46 凍結された大きいクリティックネットワーク
図1
図2
図3
図4
【国際調査報告】