JP2007018490A - 行動制御装置および行動制御方法、並びに、プログラム - Google Patents
行動制御装置および行動制御方法、並びに、プログラム Download PDFInfo
- Publication number
- JP2007018490A JP2007018490A JP2005345847A JP2005345847A JP2007018490A JP 2007018490 A JP2007018490 A JP 2007018490A JP 2005345847 A JP2005345847 A JP 2005345847A JP 2005345847 A JP2005345847 A JP 2005345847A JP 2007018490 A JP2007018490 A JP 2007018490A
- Authority
- JP
- Japan
- Prior art keywords
- action
- state
- behavior
- learning
- planning
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0205—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
- G05B13/021—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system in which a variable is automatically adjusted to optimise the performance
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0205—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
- G05B13/026—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system using a predictor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
- G05B13/027—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Feedback Control In General (AREA)
Abstract
【課題】次元に呪われることなく、予測学習を行う。
【解決手段】予測部131は、自律エージェントが、時刻tに取ったアクションAtとセンサ入力Stから、時刻t+1のセンサ入力が取る値を常に予測学習し、学習に、統計学習による関数近似器を使う。ゴール生成部132は、予め設計されてタスクに応じた目標状態を計画部133に与える。計画部133は、現在の状態から目標状態に達するまでの行動シーケンスをプランする。目標までのプランが生成できた場合、そのシーケンスが順に実行され、プランが成功した場合、目標状態を固定入力として、観測した状態と選択したアクションの関係が学習される。制御部134は、計画部133による計画と環境とを教師とした学習を実行し、自律エージェントのアクションを制御し、アクションが成功した場合、その入出力関係を学習する。本発明は、自律エージェントの自律行動制御モデルに適用できる。
【選択図】図6
【解決手段】予測部131は、自律エージェントが、時刻tに取ったアクションAtとセンサ入力Stから、時刻t+1のセンサ入力が取る値を常に予測学習し、学習に、統計学習による関数近似器を使う。ゴール生成部132は、予め設計されてタスクに応じた目標状態を計画部133に与える。計画部133は、現在の状態から目標状態に達するまでの行動シーケンスをプランする。目標までのプランが生成できた場合、そのシーケンスが順に実行され、プランが成功した場合、目標状態を固定入力として、観測した状態と選択したアクションの関係が学習される。制御部134は、計画部133による計画と環境とを教師とした学習を実行し、自律エージェントのアクションを制御し、アクションが成功した場合、その入出力関係を学習する。本発明は、自律エージェントの自律行動制御モデルに適用できる。
【選択図】図6
Description
本発明は、行動制御装置および行動制御方法、並びに、プログラムに関し、特に、自律行動を制御する場合に用いて好適な、行動制御装置および行動制御方法、並びに、プログラムに関する。
環境からの報酬だけを頼りに、それを達成するための制御方法を試行錯誤しながら学習していくような機械学習は、広い意味で、強化学習と称されている(例えば、非特許文献1)。
「強化学習」Richard S.Sutton, Andrew G. Barto. 三上貞芳 皆川雅章訳 2000.12.20 第1版 森北出版(株)
強化学習の問題定義では、環境を観測するセンサの観測結果から作られる状態空間において、式(1)で示されるマルコフ過程(現在の状態が一つ前の状態だけに依存する)が成り立っているときに、未来の報酬の期待値を示す状態価値を、式(2)で示されるBellman(ベルマン)の最適方程式から導出することができる。この価値が最も高くなる行動を選択することが、最適行動になる。
行動に対する状態の変化が既知であれば(換言すれば、行動に対する状態の変化のモデルがあれば)、動的計画法などにより状態空間を繰り返しスイープすることで、解を導出することができる。しかしながら、モデルが無かったり、モデルが不正確である場合には、解を求めることはできない。また状態空間の次元数が増えると、スイープするべき状態数が指数的に増加し(いわゆる、次元の呪い)、演算に必要となるメモリの容量や、演算にかかる時間が、現実的な範囲ではなくなる。
そのため、実際に行動を取りながら、各状態で取った行動に割引き報酬を与えることで、各状態での行動価値を定義し、その状態での最大の価値を与える行動を選択することで、最適な行動を行うQ学習などが提案されている。
次の式(3)に、Q学習の学習則を、式(4)に、行動選択則を示す。
Q学習では、予めモデルを定義することなく、実際の環境を教師として学習できるため、様々なタスクに応用されている。しかしながら、Q学習は、解を導出するまでに多くの報酬と試行を要してしまう。また、予測モデルと行動制御が分離されていないために、同じエージェントであっても、既に学習したタスクとは異なるタスクを解くためには、また一から学習しなおす必要がある。また、Q学習は、状態空間が大きい場合には、実エージェントでは十分な試行回数が得られないという、DP法と同様の問題を孕んでいる。
これに対して、アクター・クリティック学習では、期待報酬を学習するクリティックと期待報酬の誤差(TD誤差)に基づいて行動を改善させていくアクターを学習させる。これらの学習にはニューラルネットワークなどの教師有り学習方法が使われるため、状態数が大きくても対応することが可能であるが、局所解にはまったり、収束が遅いことが問題となる。
また、人間が普段知的活動を行う際の思考形態を振り返ってみると、人間がある目標を達成しようとしたときには、既存の知識やスキル(予測モデル)をどのように組み合わせて順番に実行するかを頭の中で計画し(すなわち、予測モデルを使ったリハースを行い)、その計画に基づいて、実際に行動を行う。そして、人間の行動においては、計画を実行してもうまくいかなかった場合(ある目標が達成できなかった場合)には、何度も同じようなシーケンスを反復することでスキルを向上させていくといった行動パターンが随所に見られる。
こうした行動のパターンの発現は、強化学習で漸近的に全ての状態空間が次第に解に近づいていった場合の行動パターンとはまったく違うものであると思われる。人間と接する知的エージェントの行動を設計する際には、いかに人間らしく問題解決を行うかというのも一つの重要なファクターである。
本発明はこのような状況に鑑みてなされたものであり、広大な状態空間を効率的に探索することで、目標を達成することができる行動シーケンスを生成することができるようにするものである。
本発明の一側面の行動制御装置は、行動と環境の状態の変化を学習し、これを基に、所定の行動に対する環境の状態の変化を予測する予測手段と、予測手段による予測に基づいて、現在の状態から目標状態に達するまでの行動シーケンスを計画する計画手段と、計画手段により計画された行動シーケンスに対して、行動を制御するとともに、行動により目標状態に達成した場合、その入出力関係を学習する制御手段とを備える。
計画手段にタスクに応じた目標状態を与える目標状態付与手段を更に備えさせるようにすることができる。
予測手段には、計画手段により計画された行動シーケンスに従って制御手段により制御される行動により目標状態に到達した場合と目標状態に到達しない場合のいずれにおいても、行動と環境の状態の変化を学習させるようにすることができる。
予測手段には、学習に、関数近似を用いらせるようにすることができる。
制御手段には、入出力関係の学習に、関数近似を用いらせるようにすることができる。
また、これらの関数近似は、Support Vector Regressionであるものとすることができる。
計画手段には、ヒューリスティクス探索の手法を用いて、行動シーケンスを計画させるようにすることができる。
このヒューリスティクス探索の手法は、A*サーチであるものとすることができる。
制御手段には、現在の環境と、目標状態の入力を受け、行動を出力させるようにすることができ、計画手段には、制御手段により出力された行動を基に、行動シーケンスを計画させるようにすることができる。
計画手段には、制御手段により出力された行動に対して、1以上の所定数の摂動を加えたものをサンプルさせ、探索のための行動選択肢に用いらせるようにすることができる。
計画手段には、0をピークとする確率分布に基づいた摂動を用いらせるようにすることができる。
計画手段には、確率分布の分散値を制御手段の学習の進捗に応じて設定させるようにすることができる。
計画手段には、前回計画された行動シーケンスのそれぞれの行動によって得られると予測される第1の環境と、制御手段が環境と目標状態の入力を受けて出力する行動によって得られると予測される第2の環境とを比較させ、第1の環境と第2の環境との誤差の分散を求めさせ、誤差の分散が所定の閾値よりも小さい場合、確率分布の分散値を減少させ、誤差の分散が所定の閾値よりも大きい場合、確率分布の分散値を増加させるようにすることができる。
計画手段には、前回計画された行動シーケンスのそれぞれの行動によって得られると予測される第1の環境と、制御手段が環境と目標状態の入力を受けて出力する行動によって得られると予測される第2の環境とを比較させ、第1の環境と第2の環境との誤差の積算値を求めさせ、確率分布の分散値を、誤差の積算値に比例する値とさせるようにすることができる。
計画手段には、前回計画された行動シーケンスを実行した結果得られると予測される第1の環境と、制御手段により出力される行動に対して予測手段により予測される環境の変化の結果到達すると予測される第2の環境との誤差を求めさせ、誤差が所定の閾値よりも小さい場合、確率分布の分散値を減少させ、誤差が所定の閾値よりも大きい場合、確率分布の分散値を増加させるようにすることができる。
計画手段には、前回計画された行動シーケンスを実行した結果得られると予測される第1の環境と、制御手段により出力される行動に対して予測手段により予測される環境の変化の結果到達すると予測される第2の環境との誤差を求めさせ、確率分布の分散値を、誤差に比例する値とさせるようにすることができる。
本発明の一側面の行動制御方法は、環境の状態を知覚し、その知覚した内容に基づいて、行動を選択することができる機器の行動を制御する行動制御装置の行動制御方法であって、行動と環境の状態の変化を学習する予測学習ステップと、予測学習ステップの処理による学習に基づいた予測を利用して、現在の状態から目標状態に達するまでの行動シーケンスを計画する計画ステップと、計画ステップの処理により計画された行動シーケンスに対して、行動を制御する行動制御ステップと、行動制御ステップの処理により制御された行動により目標状態に到達した場合、その入出力関係を学習する制御学習ステップとを含む。
本発明の一側面のプログラムは、環境の状態を知覚し、その知覚した内容に基づいて、行動を選択することができる機器の行動を制御する処理をコンピュータに実行させるプログラムであって、行動と環境の状態の変化を学習する予測学習ステップと、予測学習ステップの処理による学習に基づいた予測を利用して、現在の状態から目標状態に達するまでの行動シーケンスを計画する計画ステップと、計画ステップの処理により計画された行動シーケンスに対して、行動を制御する行動制御ステップと、行動制御ステップの処理により制御された行動により目標状態に到達した場合、その入出力関係を学習する制御学習ステップとを含む処理をコンピュータに実行させる。
本発明の一側面においては、行動と環境とが取得され、それらの状態の変化が学習されて、学習を基に、所定の行動に対する環境の状態の変化が予測され、その予測に基づいて、現在の状態から目標状態に達するまでの行動シーケンスが計画され、計画された行動シーケンスを基に、行動が制御される。そして、行動により目標状態に達成した場合、その入出力関係が学習される。
本発明の一側面によれば、行動を制御することができ、特に、次元に呪われることなく予測学習を行い、自律行動を制御し、自律行動が成功した場合は、成功時の入出力を更に学習することができる。
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書または図面に記載されていることを確認するためのものである。従って、明細書または図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
更に、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
本発明の一側面の行動制御装置は、行動と環境の状態の変化を学習し、これを基に、所定の行動に対する環境の状態の変化を予測する予測手段(例えば、図6の予測部131)と、予測手段による予測に基づいて、現在の状態から目標状態に達するまでの行動シーケンスを計画する計画手段(例えば、図6の計画部133)と、計画手段により計画された行動シーケンスに対して、行動を制御するとともに、行動により目標状態に到達した場合、その入出力関係を学習する制御手段(例えば、図6の制御部134)とを備える。
計画手段に、タスクに応じた目標状態を与える目標状態付与手段(例えば、図6のゴール生成部132)を更に備えるようにすることができる。
制御手段(例えば、図14の制御部202)は、現在の環境と、目標状態の入力を受け、行動(例えば、行動出力値at)を出力することができ、計画手段(例えば、図14の計画部201)は、制御手段により出力された行動を基に、行動シーケンスを計画することができる。
計画手段は、制御手段により出力された行動に対して、1以上の所定数の摂動を加えたものをサンプルし、探索のための行動選択肢(例えば、式(14)に示される行動出力値at´)に用いることができる。
計画手段は、0をピークとする確率分布(例えば、式(13)、図15を用いて説明した正規分布)に基づいた摂動を用いることができる。
計画手段は、前回計画された行動シーケンスのそれぞれの行動(例えば、図16の行動シーケンスap)によって得られると予測される第1の環境と、制御手段が環境と目標状態の入力を受けて出力する行動(例えば、図16の行動ac)によって得られると予測される第2の環境とを比較し、第1の環境と第2の環境との誤差(例えば、図16のα1乃至αn)の分散を求め、誤差の分散が所定の閾値よりも小さい場合、確率分布の分散値を減少させることができ、誤差の分散が所定の閾値よりも大きい場合、確率分布の分散値を増加させることができる。
計画手段は、前回計画された行動シーケンスのそれぞれの行動(例えば、図16の行動シーケンスap)によって得られると予測される第1の環境と、制御手段が環境と目標状態の入力を受けて出力する行動(例えば、図16の行動ac)によって得られると予測される第2の環境とを比較し、第1の環境と第2の環境との誤差(例えば、図16のα1乃至αn)の積算値を求め、確率分布の分散値を、誤差の積算値に比例する値とすることができる。
計画手段は、前回計画された行動シーケンスを実行した結果得られると予測される第1の環境(例えば、図17の状態Sn)と、制御手段により出力される行動に対して予測手段により予測される環境の変化の結果到達すると予測される第2の環境(例えば、図17の状態SCn)との誤差(例えば、図17の値β)を求め、誤差が所定の閾値よりも小さい場合、確率分布の分散値を減少させることができ、誤差が所定の閾値よりも大きい場合、確率分布の分散値を増加させることができる。
計画手段は、前回計画された行動シーケンスを実行した結果得られると予測される第1の環境(例えば、図17の状態Sn)と、制御手段により出力される行動に対して予測手段により予測される環境の変化の結果到達すると予測される第2の環境(例えば、図17の状態SCn)との誤差(例えば、図17の値β)を求め、確率分布の分散値を、誤差に比例する値とすることができる。
本発明の一側面の行動制御方法またはプログラムは、行動と環境の状態の変化を学習する予測学習ステップ(例えば、図6の予測部131が実行する図13のステップS5の処理)と、予測学習ステップの処理による学習に基づいた予測を利用して、現在の状態から目標状態に達するまでの行動シーケンスを計画する計画ステップ(例えば、図6の計画部133が実行する図13のステップS2の処理)と、計画ステップの処理により計画された行動シーケンスに対して、行動を制御する行動制御ステップ(例えば、図6の制御部134が実行する図13のステップS3の処理)と、行動制御ステップの処理により制御された行動により目標状態に到達した場合、その入出力関係を学習する制御学習ステップと(例えば、図6の制御部134が実行する図13のステップS8の処理)とを含む。
以下、図を参照して、本発明の実施の形態について説明する。
古典的なロボティクスや人工知能の分野では、移動ロボットや関節型ロボットの、全体または一部の移動、動作などにおける経路や軌道生成などにヒューリスティクス探索を用いて、現状態から目標状態まで行動の選択肢を考慮しながら探索することで解を得る方法が成功を収めている。この分野では、ロボットの移動モデルや関節の運動学、動力学を事前に正確に知ることができているという有利な点があるが、ロボットの姿勢などを考慮した非常に大きな状態空間(=作業空間)の中でも効率的に解を求めることができる計算手法が発達している。
また、近年、パターン認識の分野では、サポートベクタマシン(SVM)やAdaBoostといった高い汎化能力を持った学習機械のアルゴリズムが多く提案されている。これらの学習機械は、例えば、画像や音声といった大きな次元の入力を扱うことに長けており、ニューラルネットワークなどを使った既存のパターン学習の応用として置き換えられて用いられている。
本発明においては、次元の呪いから開放されるために、SVM(Support Vector Machine)などのパターン学習器を予測や制御の学習に用いて、ヒューリスティクス探索を使って広大な状態空間を効率的に探索することにより、目標とする行動シーケンスを生成することとを目指している。また、こうした一連の流れは、上述した人間の思考形態を参考にしているために、外から人間が見てもその行動を理解しやすく、現実的な時間で解に到達できるものとなる。
一般的に、「エージェント」とは、環境の状態を知覚(例えば、センシング)し、その知覚した内容に基づいて、行動を選択することができる自律的主体のことである。
自律エージェントとして、一つの関節を持ち、そこにトルクを掛けることで回転するリンクを有する、単純なロボットを考える。図1に自律エージェントの構成例を示す。
この自律エージェント1の出力は、関節に与えるトルク(τ)である。また、この自律エージェント1への入力として、現在の角度(θ)および角速度(ω)を観測することができる。また、この環境には重力(θ=0°となる方向)も存在し、トルクは重力に比して弱いために、一定方向に最大トルクを与えても、自律エージェント1は、自身を真上(θ=π(180°))に持ち上げることはできない。
また、図1に示される自律エージェント1を拡張して、内部状態を有するようにすることができる。例えば、自律エージェント1の内部状態として、エネルギーと乳酸の2つのパラメータを与えることができる。エネルギーは、与えたトルク量に比例して減少していく。自律エージェント1がある位置(θE)に行くと、エネルギーは補充されて増加される。乳酸は、消費したエネルギーに比例して増大し、定常的に僅かずつ分解されて減少していく。エネルギーが無くなるか、または、乳酸が最大になると、自律エージェント1はトルクを出すことができなくなる。
内部状態を持つ自律エージェント1と、エネルギーの補給地(エサ)を表したのが図2である。図2においては、自律エージェント1の内部状態として、エネルギー(E)12と乳酸量(L)13が与えられ、餌11は、ある位置(θE)に設けられているものとする。
本発明では、このような仮想的な単純化されたエージェントについて実施例を述べるが、外界に対してアクションし、外界をセンシングできるようなエージェントであれば、本発明は、どのようなものに対しても、適応可能な手法である。
図2を用いて説明した自律エージェント1において、計画に基づいてトルクを与えられて行動するとともに、環境を取得するための具体的な構成例を図3に示す。
自律エージェント1は、所定の長さのアーム31を有し、アーム31は、DCモータ32により回転駆動される。すなわち、上述したトルクは、DCモータ32の回転トルクに対応する。アーム31の回転角は、ポテンションメータ33により測定される。また、アーム31には、例えば、その先端部分に、所定の重さの錘が備え付けられるようにしても良い
アーム31は、上述したように、DCモータ32により発生される1方向の最大トルクだけでは、真上(θ=180°)に持ち上げられることはない。すなわち、アーム31は、所定の角度にあるアーム31に重力によって与えられる加速度と、DCモータ32によりアーム31に与えられるトルクとが所定の条件を満たした場合に、真上に持ち上げられる。
ポテンションメータ33は、例えば、可変抵抗によって構成されており、アーム31の角度により、その抵抗値が変わるため、アーム31の角度を検出することができる。
また、アーム31の先端部には、遮光部34が設けられ、餌11に対応する位置に設けられているフォトセンサ35の位置に遮光部34が到達して速度0となった場合(すなわち、θ=π,ω=0)、フォトセンサ35には外部からの光が照射されない。すなわち、フォトセンサ35が外部からの光を検知しない場合は、自律エージェント1が餌11に到達した場合に対応する。
図4は、図3を用いて説明したアーム31を有する自律エージェント1を制御するコントロールユニット41−1の構成例を示すブロック図である。
コントローラ51は、モータドライバ52を制御し、DCモータ32を駆動させることにより、アーム31を動作させる。そして、コントローラ51は、ポテンションメータ33からの入力により、アーム31の現在の角度(θ)を観測し、これから角速度(ω)を検出するとともに、フォトセンサ35からの入力を基に、自律エージェント1がある位置(θE)に存在する餌11を取得したか否かを検出することができる。コントローラ51は、行動、すなわち、アーム31の動作と周囲の環境とを学習するとともに、これらを基に、行動を計画する。行動の計画の詳細については後述する。そして、コントローラ51は、計画された行動に基づいてモータドライバ52を制御し、DCモータ32を駆動させることにより、アーム31に計画された行動を実行させる。
DCモータ32の駆動により電源42から供給されて消費される電力量は、電力計53により計測され、コントローラ51に計測結果が供給される。コントローラ51は、与えたトルク量に比例して減少していくエネルギー、および、消費したエネルギーに比例して増大するとともに、定常的に僅かずつ分解されて減少していく乳酸を、電力計53から供給される消費電力量の計測値を基に算出することができる。
すなわち、図2のエネルギーおよび乳酸量は、電力計53から供給される消費電力と、フォトセンサ35から得られるセンサ入力を基に、コントローラ51によって計算される。
また、コントローラ51には、必要に応じて、ドライブ54も接続されており、ドライブ54には、例えば、磁気ディスク、光ディスク、光磁気ディスク、または、半導体メモリなどのリムーバブルメディア43が装着され、コントローラ51と情報を授受できるようになされている。
また、自律エージェント1が餌11を取得したか否かの検出には、フォトセンサ35を用いる以外の方法を用いるようにしてもよい。フォトセンサ35を用いる以外の例について、図5を用いて説明する。
例えば、図5に示されるように、自律エージェント1のアーム31の先端に、導電部61を備え、導電部61を電線62により接地させる。そして、餌11の位置に対応する位置に設置されている導電端子63に、アーム31の電導部61が接した場合、コントロールユニット41−2に設けられているスイッチング素子71が通電される。スイッチング素子71は、コントローラ51と接続されており、コントローラ51は、スイッチング素子71のスイッチング、すなわち、アーム31が餌11に到達したことを検出することができる。
図4または図5のコントローラ51が有する機能を示す機能構成、すなわち、自律エージェント1の自律行動制御モデルの基本構成例を図6に示す。自律行動制御モデルは、大きく分けて、予測部(Fwd Model)131、ゴール生成部(Goal Generator)132、計画部(Planner)133、制御部(controller)134の、4つのモジュールから構成されている。また、図中の(Env.)は、環境(Environment)を示す。
予測部131は、自律エージェント1が、時刻tに取ったアクションatと時刻tのセンサ入力St(自律エージェント1のおかれている環境)から、時刻t+1のセンサ入力が取る値を常に予測学習している。換言すれば、予測部131は、環境を教師とした予測学習を行っている。予測部131は、学習に、統計学習による関数近似器を使う。
ゴール生成部132は、予め設計されたタスク(任務、仕事)に応じた目標状態(例えば、餌11の位置にアーム31を到達させること)を、計画部133に与えるものである。
計画部133は、現在の状態から目標状態に達するまでの行動シーケンスをプラン(計画)する。このプランには、予測部131を使って、選択したアクションを行った場合の状態の遷移を予測し、その先でまたアクション選択を行う探索方法を取る。目標までのプランが生成できた場合には、その行動シーケンス、すなわち、1つまたは複数のアクションが順に実行される。
制御部134は、計画部133による計画と環境とを教師とした学習を実行し、自律エージェント1のアクションを制御する。自律エージェント1のアクションが成功した場合、制御部134は、その入出力関係、すなわち、与えられた目標に対して実行された成功シーケンスにおける自律エージェント1の環境を示すセンサ入力と、それに対して実行されたアクションを学習する。
すなわち、実行されたプランが成功した場合には、制御部134により、目標状態を固定入力として、観測した状態と選択したアクションの入出力関係が学習される。これにより、制御部134は、計画部133が時間を掛けて生成したプランをパターンとして覚えることができ、学習を積み重ねることにより、目標を与えられることで自動的にアクションを生成することができる機能を有するようになる。
また、制御部134は、同様の学習を、目標状態をパラメータとして行うことができる。すなわち、この場合には、ゴール生成部132が生成する目標状態を次々と変えて、それに向かってプランの作成および作成されたプランの実行が繰り返して行われることにより、制御部134は、様々な成功シーケンスの体験を得ることができる。このとき、制御部134は、目標状態および環境を入力とし、アクションを出力とした入出力関係を学習する。
また、制御部134は、これらの学習に、統計学習による関数近似器を使う。
次に、予測部131の学習について説明する。
予測部131の学習には、統計学習による関数近似器が用いられ、関数近似器として、例えば、”「Support Vector Machine(SVM)」”Advances in Kernel Methods Support Vector Learning”, The MIT Press, 1997.”に記載されている、SVR(Support Vector Regression)が用いられる。
SVMの一つのクラスとして回帰推定を行うSVRがある。SVMは、分類問題を解く学習アルゴリズムとして提案された機械学習である。分類問題を解く際、SVMは学習データから分類にとって重要となるデータ(サポートベクターと称される)を抽出し、これに基づき判別面を構成する。この特性を回帰問題にも適用したのがSVRである。
図2を用いて説明した自律エージェント1では、観測される状態変数はS=(θ,ω,E,L)で示され、自身の取れるアクションは、A=(τ)で示される。したがって、予測部131の予測学習では、時刻tのこれらの変数から、時刻t+1のそれぞれの変数を予測する、以下の式(5)乃至式(8)で示される差分方程式の関数を推定する。すなわち、予測部131による予測は、時刻t+1のそれぞれの変数を直接予測するのではなく、これらの変数の変化値(Δθ,Δω,ΔE,ΔL)を予測するものである。
実際には、予測部131は、各時刻tにおいて、現在の変数を教師信号として、一つ前の時刻t−1に観測および実行された変数を入力とした関数学習を行う。このように、予測部131は、各時刻において学習サンプルを与えられて学習を続ける。したがって、予測部131の予測は、始めのうちにエラーが大きくても、長い時間を経て複数の経験を得ることで、関数近似の精度を向上させることができ、予測のエラーを減少することができる。
また、ニューラルネットワーク等では、同様にして逐次サンプルを与えることによって漸近的に推定を行うことができるが、ここでは、汎化能力が高く、収束時間も短いSVRを用いるものとする。SVRは通常バッチ型の学習機械であるが、その逐次学習のアルゴリズムとして、例えば、”Junshui Ma and James Theiler and Simon Perkins, ”Accurate on-line support vector regression”, Neural Computation, vol.15,11, pp2683-2703, 2003, MIT Press.”に記載されている、AOSVR(Accurate Online Support Vector Regression)が提案されており、予測部131においては、これが利用されるものとすることができる。また、SVRのカーネルとしてはガウスカーネルを用いるようにすることができる。
次に、計画部133によるプランニングについて説明する。
計画部133によるプランニングに必要な目標状態は、ゴール生成部132によって与えられる。例えば、ここでは、θd=π(すなわち、最も上に振りあがった状態であるθ=180°)が目標状態として与えられるものとする。計画部133は、現在の状態S0から目標状態に達するまでにアクションとして与えられるトルクシーケンスを探索によって生成する。
計画部133が実行する探索においては、ヒューリスティクス探索の手法が用いられ、例えば、”J.Pearl, ”Heuristics: Intelligent Search Sttategies for Computer Problem Solving”, Addison-Wesley, 1985.”に記載されている、A*サーチ(A*探索)のアルゴリズムを使って、自律エージェント1のアクションが求められるものとする。
以下にA*サーチのアルゴリズムについて、簡単に説明する。
(a)まず、現在の状態から取り得る全てのアクションを取った場合の次状態を求め、その状態を新たなノードとして現ノードからリンクを張る(ここでは、次の状態を求めるために予測部131を使う)。
(b)次の状態、すなわち、(a)においてリンクを張った先が、既に到達した他の状態と等しければ(もしくは近ければ)、そのノードまでの到達コスト(ここでは、例えば、到達にかかる時間ステップ)を比較する。
(c)比較した結果、コストの低い方を残し、高い方を棄てる。
(d)次の状態において、新しくノードが生成された場合、すなわち、(a)においてリンクを張った先が既に到達した他の状態と異なっていたり、(c)において、(a)でリンクを張った先がコストの低いほうとして残された場合は、それぞれの新しいノードにおいて、次の式(9)の評価関数を計算し、候補ノードに加える。
式(9)において、g(n)は、スタートノードから現在のノードまでの経路コストを示し、h(n)は、現在のノードからゴールノードまでの経路の見積りコスト(ここでは状態空間での目標までの距離を用いる)を示し、αは、重み係数(上記2つのコストの配分)を示している。
(e)全ての候補ノードの中から評価関数の最も低いものを選んで現ノードとする。
(f)(e)において現ノードとして選択されたノードは候補ノードからはずす。
(g)ゴール状態に等しく(もしくは十分近く)なるまで、上述した(a)乃至(f)の操作を繰り返す。
計画部133によるプランニングを基に、制御部134は、行動、すなわち、行動シーケンスに基づいたアクションの実行を制御する。計画部133によるプランニングと制御部134による計画の実行(行動)の反復によって、自律エージェント1は、目標状態にたどり着くことができる。計画部133によるプランニングと計画部133による実行の反復について、図7乃至図9を用いて説明する。
図7および図8においては、状態空間141において、縦軸を速度ω、横軸を位置θとし、スタート位置151を、実空間においてアーム31の向きが真下(θ=0(0°))で速度0の位置(縦軸、横軸ともに0となる位置)としている。また、ゴール位置152は、実空間においてアーム31の向きが真上(θ=π(180°))で速度0の位置であり、図中黒丸印で示されている。なお、状態空間141において、π=−πであることは言うまでもなく、図中の黒丸印は、状態空間141の右側のみに示されているが、θ=−π,ω=0もゴール位置152に等しい。
更に、図7および図8においては、演算済みのノードが白丸(○)印で、候補経路が実線で、候補のノード、すなわち、経路の先端がバツ(×)印で示されている。
初期状態S0として、下に静止している状態(θ=0,ω=0)が与えられた場合、正確な(充分に学習された)予測部131を用いて探索を実行すると、図7に示されるように、スタート位置151からゴール位置152に向かって経路が探索され、図8のように(θ,ω)空間で、ノードが広がっていき、十分に時間を掛けて探索すると、図8Eに示されるように、目標状態にたどり着くことができる。
図7に示されるように、まず、スタート位置151から探索が始まり、演算済みノードを基に、候補経路が算出され、それぞれの経路の先端が候補のノードとなり、候補のノードのうち、評価関数の最も低いものが現ノードとされる。
すなわち、計画部133は、上述したA*サーチのアルゴリズムに基づいて、現在の状態(現ノード)から取り得る全てのアクションを取った場合の次状態を求め、その状態を新たなノードとして現ノードからリンクを張り、リンク先が既に到達した他の状態と等しい、または、近ければ、そのノードまでの到達コストを比較して、コストの低い方を残し、高い方を棄てる。このようにして、新しくノードが生成された場合、計画部133は、新しいノードについて、上述した式(9)の評価関数を計算し、候補ノードに加える(前の候補ノードは残る)。そして、計画部133は、全ての候補ノードの中から評価関数の最も低いもの、すなわち、一番確からしい経路を選んで次の現ノードとし、現ノードとして選択されたノードは候補ノードから外し、更に、新たな現ノードにおいて取り得る全てのアクションをとった場合の次状態を求める。
そして、このようにして探索を繰り返すことにより、候補ノードのうちのいずれかが、ゴール状態に等しく、または、十分近くなったら、A*サーチのアルゴリズムに基づいた探索が終了され、計画が決まる。
図8A乃至図8Eは、計画を決めるまでの探索処理におけるノードの広がりと時間との関係を示す図である。図8Aは、試行が開始されてから十分な時間がたっていない状態であり、図8B,図8C,図8Dと、時間の経過にしたがって、(θ,ω)空間で、ノードが広がっていき、探索に十分な時間を掛けることにより、図8Eに示されるように、目標状態であるゴール位置152にたどり着く行動シーケンスを求めることができる。
図8に示されるようなプランは、状態遷移のモデルが正確な場合には問題がなく正解シーケンスを得ることができるが、まだ状態遷移の正確なモデルが得られておらず、状態の遷移が予測部131によって学習されている状態である(予測部131の学習が不十分である)場合、計画部133は、予測部131による誤った予測によって、誤ったシーケンスを生成してしまう。
この自律エージェント1では、誤った予測によって作成されたプランをとりあえず実行する。この結果、自律エージェント1は、予測しなかったような状態へ遷移してしまうかもしれないが、予測部131は、この実行結果も学習する。すなわち、予測部131により、今まで経験していなかった入出力関係(現在の環境とアクションに対する次の時刻の環境の予測)が学習されるので、学習が進むにつれ、予測の誤りが修正される。これにより、計画部133において自律エージェント1の行動が再度プランニングされた場合、以前の誤った予測によって作成されたプランとは異なるプランの生成結果を得ることができる。
また、予測部131においては、統計学習による関数近似器が用いられているので、学習が進むことにより、学習された入力に対する出力の予測のみならず、学習された入力の近傍の入力に対する出力の予測も改善される。
また、プランを実行しても目標状態に達成しなかった場合、自律エージェント1自身の現状態は、初期状態から変化してしまうので、その状態から目標状態に向けて、学習が進んだ予測部131の予測を基に次の行動シーケンスが計画され、計画された行動シーケンスが実行される。このようにして、プランと実行が繰り返されていくうちに、次第に予測部131による予測が正確になるので、計画部133において、目標状態にたどり着くような行動シーケンスを得ることができるようになる。
図9に、(θ,ω)空間で、プランを実行する度に、プランと実行結果の誤差が減少してゆき、最終的(図9においては5回目)には目標到達シーケンスを実行することができる例を示す。
図9においては、図7および図8と同様に、縦軸を速度ω、横軸を位置θとして、計画された行動シーケンスと実際の行動(実行)がプロットされている。計画された行動シーケンスが点線で示される軌跡で、実行が実線で示される軌跡で、それぞれ示されているとともに、計画を示す点線の先端部分(図中、「::」が示されている位置)が目標位置(Goal)となる。
図9Aに示される試行1回目(Trial1)においては、計画と実行にずれが生じている。
計画を実行して、成功しない、すなわち、目標位置に到達しなかった場合、試行1回目の終了状態から、再度目標に向かって計画が定められ、2回目の試行が実行される。
図9Bに示される試行2回目(Trial2)、図9Cに示される試行3回目(Trial3)、および、図9Dに示される試行4回目(Trial4)においても、計画と実行にはずれが生じている。しかしながら、これらの実行のたび、その結果を学習した予測部131による予測精度が向上するため、計画と実行の差が減少していく。このようにして、各試行の終了状態から、再度目標に向かって計画が繰り返される。
そして、図9Eに示される試行5回目(Trial5)において、ほぼエラーがなくなり、成功シーケンスを得ることができている。
このようにして、計画と実行が繰り返されることにより、予測部131の学習が進んで、予測精度が向上する。これにより、計画部133は、目標状態に到達することができる行動シーケンスを計画することができる。
次に、制御部134の学習について説明する。
制御部134の学習には、統計学習による関数近似器が用いられ、関数近似器として、例えば、上述したSVRが用いられる。制御部134は、成功のシーケンスが実行された場合、初期状態から目標状態に至るまでの各状態とその状態で実行したアクションの関係を、次の式(10)に示される関数として学習する。
図10に、状態0から状態nにおいて、式(10)において実際に用いるデータの関係を表す。
制御部134は、図10においてそれぞれ四角で囲まれた対(目標状態を固定入力とした入出力)を学習することにより、時刻tに観測した状態から次の時刻t+1に実行するべきアクションat+1を決定することができるようになる。
制御部134の学習には、統計学習による関数近似器が用いられているので、成功シーケンスを学習することにより、それ以降の行動の制御において、学習された経路の近傍の行動も改善することができる。
すなわち、自律エージェント1は、制御部134に複数の成功シーケンス(成功体験)を繰り返し学習させることによって、次第にどの状態からでも目標状態へ向かうことのできるような制御器(制御部134が実行するべき制御)を獲得することができる。
例えば、具体的には、目標状態としてアーム31が振り上がった状態(θ=π(180°),ω=0)が与えられた場合、図11に示されるように、複数の状態から目標状態までの成功シーケンスが学習サンプルとして次々と与えられていくと、制御部134において、次第に、図12の相図のような任意の状態から目標状態へ向かう構造、すなわち、いずれの位置からでも目標状態に到達することが可能な成功シーケンスの集合が学習される。
なお、図11および図12においても、状態空間において、π=−πであることは言うまでもない。
この自律エージェント1の場合、この関数は具体的には次の式(11)に示されるような関数となっており、時刻tに観測された(θ,ω)を使って、次時刻t+1のトルク出力を求めることにより、振り上がりシーケンスを生成することができるようになされている。
また、制御部134が、上述した場合と同様の学習を、目標状態をパラメータとした次の式(12)に示される関数として学習した場合(目標状態と環境を入力とし、アクションを出力とした入出力を学習した場合)には、任意の状態から任意の目標状態に制御することができる制御gを獲得することができる。この場合には、ゴール生成部132が生成する目標状態を次々と変更して、それに向かってプランの作成および作成されたプランの実行が繰り返して行われることにより、様々な目標状態に対する成功シーケンスが体験される。これにより、任意の状態から任意の目標状態に到達するための行動を制御することができる制御器(制御部134が実行するべき制御)が獲得される。
次に、図13のフローチャートを参照して、本発明を適用した自律エージェント1が実行する処理1について説明する。
ステップS1において、ゴール生成部132は、目標を設定し、計画部133に目標状態を指示する。
ステップS2において、計画部133は、予測部131により予測される、上述した式(5)乃至式(8)における時刻tの変数から、時刻t+1のそれぞれの変数を予測する差分方程式の関数を基に、ゴール生成部132に指示された目標に到達するための行動シーケンスを計画し、行動シーケンスを制御部134に供給する。
具体的には、計画部133は、図7および図8を用いて説明した様にして、上述したA*サーチのアルゴリズムに基づいて、現在の状態から取り得る全てのアクションを取った場合の次状態を求め、その状態を新たなノードとして現ノードからリンクを張り、リンク先が既に到達した他の状態と等しい、または、近ければ、そのノードまでの到達コストを比較して、コストの低い方を残し、高い方を棄てる。このようにして、新しくノードが生成された場合、上述した式(9)の評価関数を計算し、候補ノードに加える(前の候補ノードは残る)。そして、全ての候補ノードの中から評価関数の最も低いもの、すなわち、一番確からしい経路を選んで現ノードとし、選択されたノードは候補ノードからはずす。
そして、このようにして探索を繰り返すことにより、候補ノードのうちのいずれかが、ゴール状態に等しく、または、十分近くなった場合、A*サーチのアルゴリズムに基づいた探索が終了され、計画が決まる。
ステップS3において、制御部134は、計画部133により計画された行動シーケンスの実行を開始する。具体的には、制御部134は、自律エージェント1が、図3を用いて説明した様なアーム31を有していた場合、計画部133により計画された行動シーケンスに基づいて、アーム31に所望の方向にトルクをかけて回転駆動させるDCモータ32を駆動させるためにモータドライバ52を制御する。行動シーケンスは、1つまたは複数のアクションにより構成される。
ステップS4において、予測部131は、ステップS3において計画が実行されることにより変化した環境を示す情報(実行されたアクションatに対して変化した環境st)を取得して記録する。具体的には、例えば、自律エージェント1が、図3を用いて説明した様なアーム31を有していた場合、予測部131は、ポテンションメータ33からの信号により、アーム31の角度(θ)を観測し、これから角速度(ω)を検出し、これらの値を記録するとともに、電力計53から供給される消費電力値を基に、図2を用いて説明したエネルギーEおよび乳酸量Lの変化量を算出して記録する。また、計画部133は、フォトセンサ35からの入力により、ある位置(θE)に存在する餌11を取得したか否かを検出することができる。
ステップS5において、予測部131は、行動と環境の状態の変化を学習する。具体的には、予測部131は、制御部134の制御により実行されるアクションに対応して、環境の状態の変化、すなわち、式(5)乃至式(8)を用いて説明した差分方程式に示される、入力に対する出力を学習する。
ステップS6において、制御部134は、計画部133により計画された行動シーケンスの実行が終了したか、すなわち、1つの行動シーケンスに含まれる全てのアクションが実行されたか否かを判断する。ステップS6において、行動シーケンスの実行が終了していないと判断された場合、処理は、ステップS4に戻り、それ以降の処理が繰り返される。
ステップS6において、行動シーケンスの実行が終了したと判断された場合、ステップS7において、制御部134は、目標は達成されたか否かを判断する。具体的には、例えば、自律エージェント1が、図3を用いて説明した様なアーム31を有していた場合、制御部134は、アーム31が餌11に対応する位置で静止したか(アーム31の先端が図3のフォトセンサ35または図5の導電端子63の位置に到達して静止したか)否かを判断する。
ステップS7において、目標は達成されていないと判断された場合、処理は、ステップS2に戻り、それ以降の処理が繰り返される。すなわち、目標が達成されなかった場合、計画部133は、予測部131の予測に基づいて再度行動シーケンスを計画する。予測部131は、失敗した計画を実行した場合の入出力を学習しているので、計画部133において予測部131の予測を基に次に生成される計画は、同一の目標に対する計画であっても、以前の計画とは異なるものとなり、成功により近い計画が生成される。したがって、目標が達成されるまで、ステップS2乃至ステップS6の処理が繰り返されることにより、予測部131の学習が進み、図9を用いて説明した様にして、成功シーケンスを得ることが可能となる。
ステップS7において、目標は達成された、すなわち、計画が成功したと判断された場合、ステップS8において、制御部134は、成功シーケンスを学習し、処理は、ステップS1に戻り、それ以降の処理が繰り返される。
すなわち、処理はステップS1に戻り、異なる初期状態から同一の目標を達成するための行動シーケンスが計画され、目標状態に到達するまで、プランと実行が繰り返された場合、任意の状態から所定の目標状態に到達するための行動を制御することができる制御器(制御部134が実行するべき制御)を獲得することができる。また、異なる複数の目標が設定され、その目標が達成されるまで、プランと実行が繰り返された場合、任意の状態から任意の目標状態に到達するための行動を制御することができる制御器(制御部134が実行するべき制御)を獲得することができる。
このような処理により、予測部131および制御部134の学習が進み、最終的には、任意の状態から所定の目標に到達するためのアクションを自動的に生成したり、目標を与えられることで、初期状態から目標に到達するためのアクションを自動的に生成することができる機能を有する制御器(制御部134が実行するべき制御)を獲得することができる。
以上、説明した様に、本発明が適用された場合、ゴール生成部132が目標となる状態を与えることで、予測部131がエージェントの入出力関係を逐次学習し、計画部133が予測部131の予測を利用して、目標状態までの特定経路を探索して行動シーケンスを計画し、制御部134の制御により、計画が実行される。そして、計画が成功して、目標状態に到達した場合、制御部134がその経路パターン(成功シーケンス)を学習するようになされている。そして、このような学習が繰り返されることにより、自律エージェント1は、任意の状態から自動的に目標に到達できるような制御部134を獲得することができるようになされている。
換言すれば、予測部131は、自分自身の取ったアクションと環境の変化(センサ入力の変化)の関係を常に学習しており、誤った計画でも実行されることによって予測部131の予測精度が改善されていく。計画部133は、現在の自分の状態から目標状態までを予測部131の予測をリハースすることにより計画をたてる。そして、制御部134は、計画された行動シーケンスを構成するアクションの実行を制御するとともに、実際に計画した行動シーケンスが成功した場合、その入出力関係を学習する。また、予測部131の予測学習と制御部134の制御学習には、統計学習による関数近似器(例えば、Support Vector Regression)が用いられる。また、計画部133においては、ヒューリスティクス探索の手法(例えばA*サーチ)が用いられて、行動シーケンスが生成される。
すなわち、予測部131は、大規模サンプルや、大次元入力の学習に耐える関数近似器の能力を利用することにより、次元に呪われることなく、予測学習を行うことができる。また、未熟な予測部131で生成したプランにより、誤ったプランが実行されることでも、予測部131は不得手な状態空間を経験し、予測性能を向上させることができる。
また、計画部133がヒューリスティクス探索の手法を用いることにより、入力の次元が増えて状態空間が大きくなっても、Q学習や動的計画法を用いた場合と比較して、探索の組み合わせが爆発してしまうことを抑制することができる。
また、成功シーケンスの学習が繰り返されることにより、制御部134を汎化することが可能である。
更に、本発明が適用された場合、目標状態を連続量のパラメータとした制御の学習を行うことが可能である。これにより、任意の状態から任意の目標状態に到達するための行動を制御することができる制御器(制御部134が実行するべき制御)を獲得することができる。更に、本発明においては、人間の思考形態にあった学習を行うことができ、その結果、人間に理解しやすい行動パターンを生成することができる。
このようにして、本発明においては、次元の呪いから開放されるために、SVMなどのパターン学習器を予測部131や制御部134の学習に用いて、ヒューリスティクス探索を使って広大な状態空間を効率的に探索することにより、目標とする行動シーケンスを自律的に生成することができる。また、こうした一連の流れは、上述した人間の思考形態を参考にしているために、外から人間が見てもその行動を理解しやすく、現実的な時間で解に到達できるものとなる。
ところで、上述したように有効なヒューリスティクス探索においても、探索方法として、グラフ探索を用いているために、行動を有限個の離散的な選択肢に分ける必要がある。上述した例においては、行動として、トルク出力を離散値にして探索を行った。確かに、出力を離散化することにより、出力の分解能が荒くなってしまうが、出力の次元が増えしまう(出力空間が広大である場合)と、各次元を離散化してもその組み合わせが爆発してしまい、探索がままならなくなってしまう。これにより、上述したヒューリスティクス探索においては、出力の選択肢が少ないようなアプリケーションにしかアルゴリズムが適用できなくなっている。
このように、ヒューリスティクス探索においては、行動の離散化が問題となる。また、強化学習においては、学習の結果得られた知識をどのようにすれば有効に利用することができるかが、大きな課題である。
そこで、学習をおこなった制御部により自動生成される出力、すなわち、知識を利用し、その出力に確率的な摂動(探査)を加えたものを有限個サンプル(行動の離散化)したものをグラフ探索に用いるようになされている自律行動制御モデルについて、以下に説明する。
この自律学習制御モデルにおいては、学習をおこなった制御部により自動生成される出力に連続的な摂動を加えることにより、出力を、離散値ではなく連続値として学習することができる。さらに、出力空間が広大な場合においても、知識に基づいた出力の近傍だけを選択肢とすることで、性能を落とすことなく、探索を十分可能なレベルまで押さえることができる。
図14に、学習をおこなった制御部により自動生成される出力をグラフ探索に用いるようになされている場合の、図4または図5のコントローラ51が有する機能を示す機能構成図を示す。すなわち、図14は、自律エージェント1の自律行動制御モデルの基本構成の図6とは異なる一例である。なお、図6を用いて説明した場合と対応する部分には、同一の符号を付してあり、その説明は適宜省略する。
すなわち、学習をおこなった制御部により自動生成される出力をグラフ探索に用いるようになされている場合の自律行動制御モデルの基本構成は、計画部133に代わって計画部201が設けられ、制御部134に代わって制御部202が設けられている以外は、基本的に、図6を用いて説明した場合と同様である。
自律行動制御モデルは、大きく分けて、予測部(Fwd Model)131、ゴール生成部(Goal Generator)132、計画部(Planner)201、制御部(controller)202の、4つのモジュールから構成されている。また、図中の(Env.)は、環境(Environment)を示す。
計画部201は、現在の状態から目標状態に達するまでの行動シーケンスをプラン(計画)する。上述した計画部133は、A*サーチのアルゴリズムを使って行動シーケンスを計画したが、計画部201は、学習途上の制御部202により得られる行動出力atをプランニングの選択肢に用いることにより、それまでに学習した知見をプランニングに利用するものである。
計画部201によるプランニングに必要な目標状態は、ゴール生成部132によって与えられる。例えば、ここでも、上述した場合と同様にして、θd=π(すなわち、最も上に振りあがった状態であるθ=180°)が目標状態として与えられるものとする。計画部201は、現在の状態S0から目標状態に達するまでにアクションとして与えられるトルクシーケンスを、制御部202により求められる行動出力値を基にして、探索によって生成する。
具体的には、計画部201は、現在の状態Stと目標Sdを制御部202に供給し、制御部202が過去の学習に基づいて求めた行動出力atの供給を受ける。そして、計画部201は、次の式(13)の確率分布に従って、行動出力値atに加える摂動をサンプルする。
ここで、摂動とは、一般的に、与えられた解の各変数の値をそれぞれ独立に一定の確率で変化させて新しい解を生成するという手法である。すなわち、ここでは、制御部202が過去の学習に基づいて求めた行動出力atを、式(13)の確率分布(正規分布)に従って変化させることにより、新しい解、すなわち、複数の行動のサンプルを生成する。
なお、加えられる摂動は、例えば、0をピークとする確率分布からサンプルされるものであれば、式(13)の確率分布以外であってもよい。
すなわち、計画部201は、次の式(14)に基づいて、摂動をN個サンプルして、新たにN個の行動出力値at´(行動選択肢)を定める。
なお、N個の摂動には、式(14)において、at´=at+0である場合、すなわち、行動出力値atも含まれる。
計画部201は、予測部131を利用して、N個の行動を取った場合の次状態を求め、その状態を新たなノードとして現ノードからリンクを張る。
以下は、A*サーチのアルゴリズムを使って行動シーケンスを計画した場合と同様にして、次の状態が既にすでに到達した他の状態と等しい、または、状態間の距離が閾値以下であれば、そのノードまでの到達コスト(ここでは到達にかかる時間ステップ)を比較し、比較した結果、コストの低い方を残し、高い方を棄てる。そして、次状態において新しくノードが生成された場合、上述した式(9)に示される評価関数を計算し、候補ノードに加える。
そして、計画部201は、全ての候補ノードの中から評価関数の最も低いものを選んで現ノードとし、現ノードとして選択されたノードは候補ノードからはずす。
計画部201は、ゴール状態に等しく(もしくは十分近く)なるまで、上述した操作を繰り返す。
このようにして、初期状態S0として、下に静止している状態(θ=0, ω=0)を与え、正確な予測部131を用いて探索を実行すると、図7および図8を用いて説明した場合と同様に、(θ,ω)空間でノードが広がり、十分に時間が経過すると、目標状態にたどり着くことが可能となる。
すなわち、上述した計画部133によるA*サーチを用いたプランニングにおいては、まず、現在の状態から取り得る全てのアクションを取った場合の次状態が求められ、その状態を新たなノードとして現ノードからリンクを張るようになされていた。これに対して、計画部201によるプランニングにおいては、現在の状態Stと目標Sdに対して制御部202が過去の学習に基づいて求めた行動出力atの供給を受け、確率分布に従って、行動出力値atに加える摂動がN個サンプルされ、新たにN個の行動出力値at´が定められて、N個の行動を取った場合の次状態を新たなノードとして、現ノードからリンクを張るようになされている。
すなわち、初期状態S0として、下に静止している状態(θ=0,ω=0)が与えられた場合、まず、図7に示されるように、スタート位置151から探索が始まり、制御部202が過去の学習に基づいて求めた行動出力atが得られ、確率分布に従って、行動出力値atに加える摂動がN個サンプルされ、新たにN個の行動出力値at´が定められ、次状態が定められる。そして、スタート位置151からゴール位置152に向かって経路が探索され、図8を用いて説明した場合と同様に(θ,ω)空間で、ノードが広がっていき、十分に時間を掛けて探索すると、図8Eに示されるように、目標状態にたどり着くことができる。
制御部202は、上述したように、計画部201から、現在の状態Stと目標Sdの供給を受け、過去の学習に基づいて行動出力atを求め、計画部201に供給する。
また、制御部202は、制御部134と同様にして、計画部133による計画と環境とを教師とした学習を実行し、自律エージェント1のアクションを制御する。自律エージェント1のアクションが成功した場合、制御部202は、その入出力関係、すなわち、与えられた目標に対して実行された成功シーケンスにおける自律エージェント1の環境を示すセンサ入力と、それに対して実行されたアクションを学習する。
すなわち、制御部202は、計画部201によるプランニングを基に、行動、すなわち、行動シーケンスに基づいたアクションの実行を制御する。すなわち、自律エージェント1は、図9を用いて説明した場合と同様にして、計画部201によるプランニングと制御部202による計画の実行(行動)の反復によって、目標状態にたどり着くことができる。そして、実行されたプランが成功した場合には、制御部202により、目標状態を固定入力として、観測した状態と選択したアクションの入出力関係が学習される。
また、制御部202の学習には、制御部134と同様に、統計学習による関数近似器が用いられ、関数近似器として、例えば、上述したSVRが用いられる。制御部202は、成功のシーケンスが実行された場合、初期状態から目標状態に至るまでの各状態とその状態で実行したアクションの関係を、上述した式(10)に示される関数として学習する。
すなわち、自律エージェント1は、制御部202に、図11を用いて説明したような複数の成功シーケンス(成功体験)を繰り返し学習させることによって、図12を用いて説明したようにして、次第にどの状態からでも目標状態へ向かうことのできるような制御器(制御部202が実行するべき制御)を獲得することができる。
また、制御部202も、上述した場合と同様の学習を、目標状態をパラメータとした式(12)(上述)に示される関数として学習した場合(目標状態と環境を入力とし、アクションを出力とした入出力を学習した場合)には、任意の状態から任意の目標状態に制御することができる制御gを獲得することができる。すなわち、この場合には、ゴール生成部132が生成する目標状態を次々と変えて、それに向かってプランの作成および作成されたプランの実行が繰り返して行われることにより、制御部202は、様々な成功シーケンスの体験を得ることができる。このとき、制御部202は、目標状態および環境を入力とし、アクションを出力とした入出力関係を学習する。
なお、この例において、行動出力の次元は、トルク出力のみの一次元となっているが、行動、および、行動に加える摂動がN次元のケースにおいても、次元毎に処理を行うことで同様に扱うことが可能であることはいうまでもない。
特に、行動出力が高次元である場合、制御部202の行動出力を利用して、行動に摂動を加えることによりグラフ探索を行うようにすると、組み合わせが爆発することなく、出力の分解能を荒くすることなく探索を行うことができるので、好適である。
また、図15に示されるように、摂動Nの確率分布の分散値σを小さく取ると摂動は狭い範囲に収まり、制御部202の出力を重視するようになる。一方、分散値σを大きく取ると、行動空間から一様に行動aをサンプルすることが可能となる。分散値σを大きく取った場合においても、aはランダムにサンプルされるために、予め離散化された有限個の行動を選択肢とするよりも、繰り返し行う事で連続的な値の行動を学習することができる。
すなわち、計画部201は、摂動の分散を変えることで、制御部202が蓄積している知識利用と、探索とのバランスを制御することができる。換言すれば、計画部201は、ほどほどの分散とそれに見合ったサンプル数を設定すれば、制御部202の出力と探索的な行動との両方をプランニングに利用することができる。
例えば、計画部201は、制御部202の学習の初期では探索的な行動を増やし(分散値σを大きく取り)、学習が収束する(学習が進んで知識が増える)につれて、制御部202の出力をより重視する(分散値σを小さく取る)ようにすると好適である。
計画部201がプランニングを行うことにより、最も良い一連の行動シーケンスと状態の遷移が一つ生成される。この状態の遷移に対して、制御部202が自動生成した行動と計画部201のプランニングとの差が小さい場合、制御部202の学習は進んでいると考えられるので、分散値σをより小さくする設定すると好適であるし、制御部202が自動生成した行動と計画部201のプランニングとの差が大きい場合、制御部202の学習はあまり進んでいないと考えられるので、分散値σは大きな値とし、探索的な行動を増やすものとすると好適である。
摂動の分散を変更する方法の具体例を2つしめす。
まず、1つ目の方法について、図16を用いて説明する。
計画部201がプランニングを行うことにより得られた状態シーケンスS1乃至Snのそれぞれに対して、制御部202は、上述した式(10)、式(12)を用いて、行動acを生成する。計画部201は、制御部202が生成した行動acによって得られると予測される環境と、自分自身がプランニングした行動シーケンスapによって得られると予測される環境とをそれぞれ比較し、それらの誤差α1乃至αnを求める。そして、計画部201は、誤差α1乃至αnを基に、摂動の分散を決定する。
計画部201は、例えば、この誤差αの分散が所定の閾値より小さければ、制御部202の出力が信頼に足るものとして、摂動の分散をΔσだけ減少させ、逆に誤差αの分散が大きければ、制御部202の出力の信頼がないので摂動の分散をΔσだけ増加させるようにしてもよいし、摂動の分散σを、誤差αの積算値に対して所定の係数で比例する値として設定するようにしてもよい。
次に、2つ目の方法について、図17を用いて説明する。
制御部202は、上述した式(10)、式(12)を用いて、初期状態S0から、行動ac1を生成する。計画部201は、行動ac1を予測部131に供給することにより、次状態SC1を得ることができるので、さらに、状態SC1を基に、制御部202に行動ac2を生成させ、予測部131に供給することにより、次状態SC2を得、これをn回繰り返すことにより、目標状態にできるだけ近づくような状態SCnを得る。計画部201は、制御部202のみの能力により到達した状態SCnと、自分自身がプランニングした行動シーケンスにより到達する状態Snとを比較して、これを基に、摂動の分散を決定する。
例えば、計画部201は、状態SCnと状態Snとの距離βと所定の閾値とを比較して、βの値が閾値より小さければ、制御部202の出力が信頼に足るものとして、摂動の分散をΔσだけ減少させ、逆にβの値が閾値より大きければ摂動の分散をΔσだけ増加させるようにしてもよいし、摂動の分散σを、βに対して所定の係数で比例する値として設定するようにしてもよい。
このようにすることにより、制御部202の学習の程度に応じて、学習結果を利用することができる。
換言すれば、摂動の分散が最大の場合、A*サーチとほぼ同様の探索処理が実行され、摂動の分散が0に近い値である場合、制御部202により得られる行動出力値atの近傍の範囲で探索処理が実行される。
以上においては、制御部202の学習により得られた知識、すなわち、現在の状態Stと目標Sdに対する行動出力値atを利用するものとして説明したが、この手法を、制御部202がまったく学習を行っていない状態に適用しても、充分な時間をかけて探索を行うことにより、目標状態までの行動シーケンスを得ることができる。
すなわち、まったく学習を行っていない状態の制御部202に現在の状態Stと目標Sdを与えることによって得られる行動出力値atは、目標状態に対して正しい方向に向いているとは限らないが、摂動の分散σを大きな値とすることにより、探索の範囲が広がるため、充分な時間をかけて探索を行うことにより、目標状態までの行動シーケンスを得ることができる。
次に、図18のフローチャートを参照して、制御部202の学習により得られた知識、すなわち、現在の状態Stと目標Sdに対する行動出力値atを利用して探索を行う自律エージェント1が実行する処理2について説明する。
ステップS21において、ゴール生成部132は、目標を設定し、計画部201に目標状態を指示する。
ステップS22において、図19を用いて後述する行動シーケンス計画処理が実行される。
そして、ステップS23乃至ステップS28において、図13のステップS3乃至ステップS8と基本的に同様の処理が実行される(計画部133に代わって計画部201が、制御部134に代わって制御部202が基本的に同様の処理を実行する)。
すなわち、制御部202の学習により得られた知識、すなわち、現在の状態Stと目標Sdに対する行動出力値atを利用して探索を行う自律エージェント1が実行する処理は、行動シーケンスの計画手法がA*サーチとは異なる方法であるが、計画された行動シーケンスの実行、行動の実行に伴って変化する環境の取得および記録、行動と環境の状態の変化の学習、目標が達成したか否かの判断、および、成功シーケンスの学習については、図13を用いて説明した場合と同様であり、同様の作用効果を奏するものである。
次に、図19のフローチャートを参照して、図18のステップS22において実行される行動シーケンス計画処理について説明する。
ステップS41において、計画部201は、制御部202から得られる行動出力atに対して加えられる摂動の分散値σを決定する。具体的には、計画部201は、1回目の施行においては、分散値σが大きな値となるように設定し、2回目以降の施行においては、図16または図17を用いて説明したようにして、前回の施行において計画部201によりプランニングされた行動シーケンスと、制御部202が自動生成した行動とを比較し、これらの差が小さい場合、制御部202の学習は進んでいると考えられるので、分散値σをより小さく設定し、差が大きい場合、制御部202の学習はあまり進んでいないと考えられるので、分散値σは大きな値として探索的な行動を増やすものとする。
ステップS42において、計画部201は、現在の状態Stと目標Sdを制御部202に供給する。
ステップS43において、制御部202は、ステップS42において計画部201から供給された現在の状態Stと目標Sdに基づいて、行動出力atを求め、計画部201に供給する。計画部201は、制御部202により求められた行動出力atを取得する。
ステップS44において、計画部201は、上述した式(13)を用いて、ステップS41によって得られた確率分布に従って、ステップS43において取得した行動出力値atに加える摂動をN個サンプルする。
ステップS45において、計画部201は、ステップS44においてサンプルされたN個の摂動を用いて、上述した式(14)に示されるようにして、新たに行動出力値をN個(式(14)において、at´=at+0である場合、すなわち、行動出力値atも含む)求める。
ステップS46において、計画部201は、予測部131を用いてN個の行動を取った場合の次状態を求め、その状態を新たなノードとして現ノードからリンクを張る。
ステップS47において、計画部201は、ステップS46において求められた次状態が既にすでに到達した他の状態と等しいか、または、状態間の距離が閾値以下であれば、それらのノードまでの到達コストを比較する。
ステップS48において、計画部201は、ステップS47の処理により到達コストを比較した結果、コストの低い方を残し、高い方を棄てる。
ステップS49において、計画部201は、次状態として新しくノードが生成された場合、新しく生成されたノードのそれぞれに対して、式(9)を用いて説明した評価関数を計算し、候補ノードに加える。
ステップS50において、計画部201は、すべての候補ノードの中から評価関数の最も低いものを選んで現ノードとする。
ステップS51において、計画部201は、ステップS50において現ノードに選択されたノードを候補ノードからはずす。
ステップS52において、計画部201は、現ノードが、ゴール状態に到達、または、近づいたか否かを判断する。ステップS52において、ゴール状態に到達、または、近づいていないと判断された場合、処理は、ステップS42に戻り、それ以降の処理が繰り返される。ステップS52において、ゴール状態に到達、または、近づいたと判断された場合、行動シーケンスの計画が終了されたので、処理は、図18のステップS22に戻り、ステップS23に進む。
このような処理により、学習した制御器(ここでは、制御部202)を、プランニングに利用することができる。
また、同時に、行動選択肢が増えすぎて探索の組み合わせが爆発してしまう問題に対して、確率的サンプリングを実行する(分散値σに基づいて得られるN個の摂動を用いる)ことで、探索可能な数の選択肢を抽出して、探索を行うことが可能となる。
このように、本発明を適用した自律エージェントにおいては、学習した知識をプランニングに利用する(制御部202が生成する行動を、計画部201におけるヒューリスティクス探索の行動選択肢として利用する)ことにより、探索の効率を大幅に向上させることが可能である。
また、状態空間(行動値空間)を均等に離散化した場合に行動出力の次元が増えると、離散化された行動の数(行動の選択肢)が増えすぎてしまい、探索ができなくなってしまうが、制御器が生成する行動に対して確率的なサンプリングをおこなうことにより、選択肢の数を、行動空間の広さと関係なくコントロールすることができる。
すなわち、制御器が生成する行動に対して摂動を加えることにより、探索が行われ、加えられる摂動を、0をピークとする確率分布(例えば正規分布)からサンプルし、探索のための有限個の行動選択肢として利用することにより、制御器の知識を利用することができる。
さらに、行動の選択肢が連続空間からサンプルされるために、固定値で離散化された行動ではなく、連続値出力の制御器を学習することができるので、学習が進んだ制御器は、離散値出力を学習した制御器と比較して、きめ細かい制御が可能になる。
さらに、本発明を適用することにより、知識の利用と探索とのバランスを、加える摂動の確率分布のパラメータ(ここでは、分散値σ)によってコントロールすることができる。そして、確率分布のパラメータは、制御器の学習の進捗によって設定することができる。制御器の学習の進捗は、計画器によるプランニングと、制御器が自動生成した行動との誤差により推定することが可能である。
上述した一連の処理は、ソフトウェアにより実行することができ、また、同様の機能を有するハードウェアにより実現することも可能である。そのソフトウェアは、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
この記録媒体は、図4に示すように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク(MD(Mini-Disk)(商標)を含む)、もしくは半導体メモリなどよりなるリムーバブルメディア43などにより構成される。
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
1 自律エージェント, 11 餌, 12 エネルギー, 13 乳酸量, 131 予測部, 132 ゴール生成部, 133 計画部, 134 制御部, 141 状態空間, 151 スタート位置, 152 ゴール位置, 201 計画部, 202 制御部
Claims (19)
- 環境の状態を知覚し、その知覚した内容に基づいて、行動を選択することができる機器の行動を制御する行動制御装置において、
前記行動と前記環境の状態の変化を学習し、これを基に、所定の行動に対する前記環境の状態の変化を予測する予測手段と、
前記予測手段による予測に基づいて、現在の状態から目標状態に達するまでの行動シーケンスを計画する計画手段と、
前記計画手段により計画された前記行動シーケンスに対して、前記行動を制御するとともに、前記行動により前記目標状態に到達した場合、その入出力関係を学習する制御手段と
を備える行動制御装置。 - 前記計画手段に、タスクに応じた目標状態を与える目標状態付与手段
を更に備える請求項1に記載の行動制御装置。 - 前記予測手段は、前記計画手段により計画された前記行動シーケンスに従って前記制御手段により制御される前記行動により前記目標状態に到達した場合と前記目標状態に到達しない場合のいずれにおいても、前記行動と環境の状態の変化を学習する
請求項1に記載の行動制御装置。 - 前記予測手段は、前記学習に、関数近似を用いる
請求項1に記載の行動制御装置。 - 前記関数近似は、Support Vector Regressionである
請求項4に記載の行動制御装置。 - 前記制御手段は、前記入出力関係の学習に、関数近似を用いる
請求項1に記載の行動制御装置。 - 前記関数近似は、Support Vector Regressionである
請求項6に記載の行動制御装置。 - 前記計画手段は、ヒューリスティクス探索の手法を用いて、前記行動シーケンスを計画する
請求項1に記載の行動制御装置。 - 前記ヒューリスティクス探索の手法は、A*サーチである
請求項8に記載の行動制御装置。 - 前記制御手段は、現在の前記環境と、前記目標状態の入力を受け、前記行動を出力し、
前記計画手段は、前記制御手段により出力された前記行動を基に、前記行動シーケンスを計画する
請求項8に記載の行動制御装置。 - 前記計画手段は、前記制御手段により出力された前記行動に対して、1以上の所定数の摂動を加えたものをサンプルし、探索のための行動選択肢に用いる
請求項10に記載の行動制御装置。 - 前記計画手段は、0をピークとする確率分布に基づいた前記摂動を用いる
請求項11に記載の行動制御装置。 - 前記計画手段は、前記確率分布の分散値を前記制御手段の学習の進捗に応じて設定する
請求項12に記載の行動制御装置。 - 前記計画手段は、前回計画された前記行動シーケンスのそれぞれの行動によって得られると予測される第1の環境と、前記制御手段が前記環境と前記目標状態の入力を受けて出力する前記行動によって得られると予測される第2の環境とを比較し、前記第1の環境と前記第2の環境との誤差の分散を求め、前記誤差の分散が所定の閾値よりも小さい場合、前記確率分布の分散値を減少させ、前記誤差の分散が所定の閾値よりも大きい場合、前記確率分布の分散値を増加させる
請求項12に記載の行動制御装置。 - 前記計画手段は、前回計画された前記行動シーケンスのそれぞれの行動によって得られると予測される第1の環境と、前記制御手段が前記環境と前記目標状態の入力を受けて出力する前記行動によって得られると予測される第2の環境とを比較し、前記第1の環境と前記第2の環境との誤差の積算値を求め、前記確率分布の分散値を、前記誤差の積算値に比例する値とする
請求項12に記載の行動制御装置。 - 前記計画手段は、前回計画された前記行動シーケンスを実行した結果得られると予測される第1の環境と、前記制御手段により出力される前記行動に対して前記予測手段により予測される前記環境の変化の結果到達すると予測される第2の環境との誤差を求め、前記誤差が所定の閾値よりも小さい場合、前記確率分布の分散値を減少させ、前記誤差が所定の閾値よりも大きい場合、前記確率分布の分散値を増加させる
請求項12に記載の行動制御装置。 - 前記計画手段は、前回計画された前記行動シーケンスを実行した結果得られると予測される第1の環境と、前記制御手段により出力される前記行動に対して前記予測手段により予測される前記環境の変化の結果到達すると予測される第2の環境との誤差を求め、前記確率分布の分散値を、前記誤差に比例する値とする
請求項12に記載の行動制御装置。 - 環境の状態を知覚し、その知覚した内容に基づいて、行動を選択することができる機器の行動を制御する行動制御装置の行動制御方法において、
前記行動と前記環境の状態の変化を学習する予測学習ステップと、
前記予測学習ステップの処理による学習に基づいた予測を利用して、現在の状態から目標状態に達するまでの行動シーケンスを計画する計画ステップと、
前記計画ステップの処理により計画された前記行動シーケンスに対して、前記行動を制御する行動制御ステップと、
前記行動制御ステップの処理により制御された前記行動により前記目標状態に到達した場合、その入出力関係を学習する制御学習ステップと
を含む行動制御方法。 - 環境の状態を知覚し、その知覚した内容に基づいて、行動を選択することができる機器の行動を制御する処理をコンピュータに実行させるためのプログラムにおいて、
前記行動と前記環境の状態の変化を学習する予測学習ステップと、
前記予測学習ステップの処理による学習に基づいた予測を利用して、現在の状態から目標状態に達するまでの行動シーケンスを計画する計画ステップと、
前記計画ステップの処理により計画された前記行動シーケンスに対して、前記行動を制御する行動制御ステップと、
前記行動制御ステップの処理により制御された前記行動により前記目標状態に到達した場合、その入出力関係を学習する制御学習ステップと
を含む処理をコンピュータに実行させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005345847A JP2007018490A (ja) | 2005-02-23 | 2005-11-30 | 行動制御装置および行動制御方法、並びに、プログラム |
US11/350,825 US7751937B2 (en) | 2005-02-23 | 2006-02-10 | Behavior control apparatus, behavior control method, and program |
EP06003075A EP1696371A1 (en) | 2005-02-23 | 2006-02-15 | Behavior control apparatus, behaviour control method, and program |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005047490 | 2005-02-23 | ||
JP2005169457 | 2005-06-09 | ||
JP2005345847A JP2007018490A (ja) | 2005-02-23 | 2005-11-30 | 行動制御装置および行動制御方法、並びに、プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007018490A true JP2007018490A (ja) | 2007-01-25 |
Family
ID=36577415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005345847A Pending JP2007018490A (ja) | 2005-02-23 | 2005-11-30 | 行動制御装置および行動制御方法、並びに、プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US7751937B2 (ja) |
EP (1) | EP1696371A1 (ja) |
JP (1) | JP2007018490A (ja) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011517806A (ja) * | 2008-03-08 | 2011-06-16 | 東京エレクトロン株式会社 | 自律的に適応する半導体製造 |
JP2011159282A (ja) * | 2009-12-30 | 2011-08-18 | Mitsubishi Electric Research Laboratories Inc | 非線形的な季節的時系列を予測するための方法 |
US8725667B2 (en) | 2008-03-08 | 2014-05-13 | Tokyo Electron Limited | Method and system for detection of tool performance degradation and mismatch |
US8744607B2 (en) | 2008-03-08 | 2014-06-03 | Tokyo Electron Limited | Method and apparatus for self-learning and self-improving a semiconductor manufacturing tool |
US9275335B2 (en) | 2008-03-08 | 2016-03-01 | Tokyo Electron Limited | Autonomous biologically based learning tool |
JP2016051400A (ja) * | 2014-09-01 | 2016-04-11 | 日本電信電話株式会社 | 行動制御装置、方法及びプログラム |
WO2019176477A1 (ja) | 2018-03-14 | 2019-09-19 | オムロン株式会社 | ロボットの制御装置 |
JPWO2018131311A1 (ja) * | 2017-01-10 | 2019-11-07 | 日本電気株式会社 | センシングシステム、センサノード装置、センサ測定値処理方法及びプログラム |
WO2020090826A1 (ja) * | 2018-10-30 | 2020-05-07 | 日本電気株式会社 | 解析装置、機械学習装置、解析システム、解析方法および記録媒体 |
WO2020090821A1 (ja) * | 2018-10-30 | 2020-05-07 | 日本電気株式会社 | 解析装置、機械学習装置、解析システム、解析方法および記録媒体 |
JP7373941B2 (ja) | 2018-08-21 | 2023-11-06 | タタ コンサルタンシー サービシズ リミテッド | 自律学習エージェントの経路学習における予測誤差をモデル化する方法およびシステム |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1470456B1 (en) | 2002-01-28 | 2009-12-30 | Siemens Building Technologies, Inc. | Building control system and fume hood system for use therein having reduced wiring requirements |
US7664573B2 (en) | 2003-09-26 | 2010-02-16 | Siemens Industry, Inc. | Integrated building environment data system |
US7610910B2 (en) | 2004-03-25 | 2009-11-03 | Siemens Building Technologies, Inc. | Method and apparatus for controlling building component characteristics |
US7665670B2 (en) | 2004-03-25 | 2010-02-23 | Siemens Industry, Inc. | Method and apparatus for an integrated distributed MEMS based control system |
US7667588B2 (en) | 2004-09-27 | 2010-02-23 | Siemens Industry, Inc. | Cage telemetry module and system |
WO2007027632A2 (en) | 2005-08-30 | 2007-03-08 | Siemens Building Technologies, Inc. | Application of microsystems for comfort control |
ATE517375T1 (de) | 2005-08-30 | 2011-08-15 | Siemens Industry Inc | Anwendung von mikrosystmen für echtzeit-ieq- steuerung |
WO2007030520A2 (en) * | 2005-09-06 | 2007-03-15 | Siemens Building Technologies, Inc. | Application of microsystems for a building system employing a system knowledge base |
WO2010080722A2 (en) * | 2009-01-07 | 2010-07-15 | 3M Innovative Properties Company | System and method for concurrently conducting cause-and-effect experiments on content effectiveness and adjusting content distribution to optimize business objectives |
JP5500844B2 (ja) * | 2009-03-18 | 2014-05-21 | 富士フイルム株式会社 | 内視鏡 |
CN102163047B (zh) * | 2010-02-19 | 2014-02-12 | 发那科株式会社 | 学习控制机器人 |
US8447419B1 (en) | 2012-05-02 | 2013-05-21 | Ether Dynamics Corporation | Pseudo-genetic meta-knowledge artificial intelligence systems and methods |
US10027689B1 (en) * | 2014-09-29 | 2018-07-17 | Fireeye, Inc. | Interactive infection visualization for improved exploit detection and signature generation for malware and malware families |
US9914218B2 (en) | 2015-01-30 | 2018-03-13 | Toyota Motor Engineering & Manufacturing North America, Inc. | Methods and apparatuses for responding to a detected event by a robot |
US10037712B2 (en) | 2015-01-30 | 2018-07-31 | Toyota Motor Engineering & Manufacturing North America, Inc. | Vision-assist devices and methods of detecting a classification of an object |
US10217379B2 (en) | 2015-01-30 | 2019-02-26 | Toyota Motor Engineering & Manufacturing North America, Inc. | Modifying vision-assist device parameters based on an environment classification |
JP6203808B2 (ja) * | 2015-11-27 | 2017-09-27 | ファナック株式会社 | ファンモータの清掃間隔を学習する機械学習器、モータ制御システムおよび機械学習方法 |
JP6970949B2 (ja) * | 2018-06-11 | 2021-11-24 | Necソリューションイノベータ株式会社 | 行動学習装置 |
US11720792B2 (en) * | 2019-07-31 | 2023-08-08 | Royal Bank Of Canada | Devices and methods for reinforcement learning visualization using immersive environments |
US11571809B1 (en) * | 2019-09-15 | 2023-02-07 | X Development Llc | Robotic control using value distributions |
CN114598667A (zh) * | 2022-03-04 | 2022-06-07 | 重庆邮电大学 | 一种基于联邦学习的高效设备选择与资源分配方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1165639A (ja) * | 1997-08-12 | 1999-03-09 | Fujitsu Ltd | 問題解決装置及び方法並びにプログラム記憶媒体 |
JPH11102295A (ja) * | 1997-09-26 | 1999-04-13 | Nippon Telegr & Teleph Corp <Ntt> | 全探索法併用実時間探索法 |
JP2002157571A (ja) * | 2000-11-20 | 2002-05-31 | Fujitsu Ltd | 問題解決器、及び記憶媒体 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4525477B2 (ja) * | 2005-02-23 | 2010-08-18 | ソニー株式会社 | 学習制御装置および学習制御方法、並びに、プログラム |
-
2005
- 2005-11-30 JP JP2005345847A patent/JP2007018490A/ja active Pending
-
2006
- 2006-02-10 US US11/350,825 patent/US7751937B2/en not_active Expired - Fee Related
- 2006-02-15 EP EP06003075A patent/EP1696371A1/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1165639A (ja) * | 1997-08-12 | 1999-03-09 | Fujitsu Ltd | 問題解決装置及び方法並びにプログラム記憶媒体 |
JPH11102295A (ja) * | 1997-09-26 | 1999-04-13 | Nippon Telegr & Teleph Corp <Ntt> | 全探索法併用実時間探索法 |
JP2002157571A (ja) * | 2000-11-20 | 2002-05-31 | Fujitsu Ltd | 問題解決器、及び記憶媒体 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8725667B2 (en) | 2008-03-08 | 2014-05-13 | Tokyo Electron Limited | Method and system for detection of tool performance degradation and mismatch |
US8744607B2 (en) | 2008-03-08 | 2014-06-03 | Tokyo Electron Limited | Method and apparatus for self-learning and self-improving a semiconductor manufacturing tool |
US9275335B2 (en) | 2008-03-08 | 2016-03-01 | Tokyo Electron Limited | Autonomous biologically based learning tool |
US9424528B2 (en) | 2008-03-08 | 2016-08-23 | Tokyo Electron Limited | Method and apparatus for self-learning and self-improving a semiconductor manufacturing tool |
JP2011517806A (ja) * | 2008-03-08 | 2011-06-16 | 東京エレクトロン株式会社 | 自律的に適応する半導体製造 |
JP2011159282A (ja) * | 2009-12-30 | 2011-08-18 | Mitsubishi Electric Research Laboratories Inc | 非線形的な季節的時系列を予測するための方法 |
JP2016051400A (ja) * | 2014-09-01 | 2016-04-11 | 日本電信電話株式会社 | 行動制御装置、方法及びプログラム |
JPWO2018131311A1 (ja) * | 2017-01-10 | 2019-11-07 | 日本電気株式会社 | センシングシステム、センサノード装置、センサ測定値処理方法及びプログラム |
US11514277B2 (en) | 2017-01-10 | 2022-11-29 | Nec Corporation | Sensing system, sensor node device, sensor measurement value processing method, and program |
JP2019155554A (ja) * | 2018-03-14 | 2019-09-19 | オムロン株式会社 | ロボットの制御装置 |
WO2019176477A1 (ja) | 2018-03-14 | 2019-09-19 | オムロン株式会社 | ロボットの制御装置 |
US11673266B2 (en) | 2018-03-14 | 2023-06-13 | Omron Corporation | Robot control device for issuing motion command to robot on the basis of motion sequence of basic motions |
JP7373941B2 (ja) | 2018-08-21 | 2023-11-06 | タタ コンサルタンシー サービシズ リミテッド | 自律学習エージェントの経路学習における予測誤差をモデル化する方法およびシステム |
WO2020090826A1 (ja) * | 2018-10-30 | 2020-05-07 | 日本電気株式会社 | 解析装置、機械学習装置、解析システム、解析方法および記録媒体 |
WO2020090821A1 (ja) * | 2018-10-30 | 2020-05-07 | 日本電気株式会社 | 解析装置、機械学習装置、解析システム、解析方法および記録媒体 |
JPWO2020090826A1 (ja) * | 2018-10-30 | 2021-09-16 | 日本電気株式会社 | 解析装置、機械学習装置、解析システム、解析方法およびプログラム |
JPWO2020090821A1 (ja) * | 2018-10-30 | 2021-09-16 | 日本電気株式会社 | 解析装置、機械学習装置、解析システム、解析方法およびプログラム |
JP7117686B2 (ja) | 2018-10-30 | 2022-08-15 | 日本電気株式会社 | 解析装置、解析システム、解析方法およびプログラム |
JP7117687B2 (ja) | 2018-10-30 | 2022-08-15 | 日本電気株式会社 | 解析装置、解析システム、解析方法およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
US20060195227A1 (en) | 2006-08-31 |
EP1696371A1 (en) | 2006-08-30 |
US7751937B2 (en) | 2010-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007018490A (ja) | 行動制御装置および行動制御方法、並びに、プログラム | |
EP1717649B1 (en) | Learning control apparatus, learning control method, and computer program | |
Cully et al. | Behavioral repertoire learning in robotics | |
Chen et al. | Learning to plan in high dimensions via neural exploration-exploitation trees | |
US20220171907A1 (en) | Creation of digital twin of the interaction among parts of the physical system | |
WO2021033486A1 (ja) | モデル生成装置、モデル生成方法、制御装置及び制御方法 | |
CN110716574B (zh) | 一种基于深度q网络的uuv实时避碰规划方法 | |
CN115917564A (zh) | 用于学习可重用选项以在任务之间传递知识的系统和方法 | |
JP2021060988A (ja) | 準ニュートン信頼領域法を用いたポリシー最適化のためのシステムおよび方法 | |
Paul et al. | Alternating optimisation and quadrature for robust control | |
Wang et al. | Focused model-learning and planning for non-Gaussian continuous state-action systems | |
Bakker | Reinforcement learning by backpropagation through an LSTM model/critic | |
Poudel et al. | Learning to control dc motor for micromobility in real time with reinforcement learning | |
Surovik et al. | Learning an expert skill-space for replanning dynamic quadruped locomotion over obstacles | |
CN116601647A (zh) | 演化模仿学习 | |
Langsfeld | Learning task models for robotic manipulation of nonrigid objects | |
WO2021033471A1 (ja) | 制御装置、制御方法、及び制御プログラム | |
Caporali et al. | Deformable Linear Objects Manipulation with Online Model Parameters Estimation | |
Rottmann et al. | Adaptive autonomous control using online value iteration with gaussian processes | |
Sintov et al. | Motion planning with competency-aware transition models for underactuated adaptive hands | |
JP2021035714A (ja) | 制御装置、制御方法、及び制御プログラム | |
JP2006313512A (ja) | 学習制御装置、学習制御方法、およびプログラム | |
WO2021033472A1 (ja) | 制御装置、制御方法、及び制御プログラム | |
Shaker et al. | Vision-based reinforcement learning using approximate policy iteration | |
Huang et al. | Conformal Policy Learning for Sensorimotor Control Under Distribution Shifts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081002 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111220 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120412 |