JP5528214B2 - 学習制御システム及び学習制御方法 - Google Patents

学習制御システム及び学習制御方法 Download PDF

Info

Publication number
JP5528214B2
JP5528214B2 JP2010122796A JP2010122796A JP5528214B2 JP 5528214 B2 JP5528214 B2 JP 5528214B2 JP 2010122796 A JP2010122796 A JP 2010122796A JP 2010122796 A JP2010122796 A JP 2010122796A JP 5528214 B2 JP5528214 B2 JP 5528214B2
Authority
JP
Japan
Prior art keywords
action
state
reward
event list
value
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.)
Expired - Fee Related
Application number
JP2010122796A
Other languages
English (en)
Other versions
JP2011248728A (ja
Inventor
誉羽 竹内
広司 辻野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2010122796A priority Critical patent/JP5528214B2/ja
Publication of JP2011248728A publication Critical patent/JP2011248728A/ja
Application granted granted Critical
Publication of JP5528214B2 publication Critical patent/JP5528214B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、強化学習を利用した学習システム及び学習方法に関する。
ロボットなどの機械が学習によって自己の制御規則を改善する学習方法として強化学習が知られている(たとえば、非特許文献1)。一方、他からの明示的な教示によって学習する教師付き学習と呼ばれる方法がある。この両者を組み合わせることで、たとえば、ロボットが人から教示されたことを覚えて、教示されたことを試行錯誤しながら自分で状況に合わせて巧みに使用することができるようになることが期待できる。しかし、他からの教示を効率的に覚えることができ、かつ、教示された内容を試行錯誤に組み合わせながら学習を行なうことができる学習制御システム及び学習制御方法は開発されていない。
N.D. Daw & K. Doya, "The computational neurobiology of learning and reward", Current Opinion in Neurobiology, 2006, 16, pp199-204
したがって、他からの教示を効率的に覚えることができ、かつ、教示された内容を試行錯誤に組み合わせながら学習を行なうことができる学習制御システム及び学習制御方法は開発に対するニーズがある。
本発明の一つの態様による学習制御システムは、報酬を得た直前の状態・行動対及び報酬を得たときの状態に至る、一連の状態・行動対の集合をイベント・リストとして、複数のイベント・リストを保持するイベント・リスト・データベースと、状態・行動対を、前記複数のイベント・リストに分類して該イベント・リスト・データベースに記憶させるイベント・リスト管理部と、各イベント・リストの要素である状態・行動対の報酬期待値を更新するイベント・リスト学習制御部と、該イベント・リスト・データベースのイベント・リストを使用して第1の行動価値関数を求める行動計画部と、強化学習に基づいて第2の行動価値関数を求める強化学習部と、該行動計画部から受け取った第1の行動価値関数及び該強化学習部から受け取った第2の行動価値関数に基づいて行動を選択する行動選択部と、を備えている。
本態様による学習制御システムによれば、イベント・リスト学習制御部が、報酬を得た直前の状態・行動対及び報酬を得たときの状態によって分類されたイベント・リストごとに状態・行動対の報酬期待値を更新するので、他からの教示を効率的に覚えることができる。また、本態様による学習制御システムによれば、上記他からの教示に加えて、強化学習部が行う試行錯誤の学習の結果も、該イベント・リストに反映されるので、教示された内容を試行錯誤に組み合わせながら学習を行なうことができる。
本発明の一つの実施形態による学習制御システムにおいて、該行動計画部は、目標の状態が与えられた場合に、該イベント・リスト・データベースのイベント・リストを使用して、現在の状態から該目標の状態に至る経路を探索し、経路探索が成功した場合には、経路探索の結果に基づいて行動価値関数を求める。
本実施形態においては、該行動計画部は、目標の状態が与えられた場合に、該イベント・リスト・データベースのイベント・リストを使用して経路探索を行うので、より効率的に行動価値関数を求めることができる。したがって、教示された内容をより効率的に試行錯誤に組み合わせることができる。
本発明の一つの実施形態による学習制御システムにおいて、該イベント・リスト学習制御部が、各イベント・リストの要素である状態・行動対の報酬期待値を、報酬の値に対する期待値である部分報酬期待値と報酬を得る状態に至るまでの距離の期待値である部分距離期待値との積の和で表し、該部分報酬期待値及び該部分距離期待値を別個に更新するように構成されている。
本実施形態によれば、該部分報酬期待値及び該部分距離期待値を別個に更新するので、より効率的に学習を行うことができる。
本発明の一つの実施形態による学習制御システムにおいて、該部分報酬期待値を求めるための単純移動平均値及び該部分距離期待値を求めるための単純移動平均値をイベント・リスト・データベースに記憶するように構成されている。
本実施形態によれば、該部分報酬期待値及び該部分距離期待値を求めるために単純移動平均値を使用するので、低い計算コストで効率的に学習を行うことができる。
本発明の一つの態様による学習制御方法は、報酬を得た直前の状態・行動対及び報酬を得たときの状態に至る、一連の状態・行動対の集合をイベント・リストとして、複数のイベント・リストを保持するイベント・リスト・データベースと、イベント・リスト管理部と、イベント・リスト学習制御部と、行動計画部と、強化学習部と、を備えた学習制御システムによって、学習を行なって行動を選択する学習制御方法である。本方法は、該イベント・リスト管理部が、状態・行動対を、前記複数のイベント・リストに分類して該イベント・リスト・データベースに記憶させるステップと、該イベント・リスト学習制御部が、各イベント・リストの要素である状態・行動対の報酬期待値を更新するステップと、を含む。本方法は、該行動計画部が、該イベント・リスト・データベースのイベント・リストを使用して第1の行動価値関数を求めるステップと、該強化学習部が、強化学習に基づいて第2の行動価値関数を求めるステップと、該行動選択部が、該行動計画部から受け取った第1の行動価値関数及び該強化学習部から受け取った第2の行動価値関数に基づいて行動を選択するステップと、をさらに含む。
本態様による学習制御方法によれば、イベント・リスト学習制御部が、報酬を得た直前の状態・行動対及び報酬を得たときの状態によって分類されたイベント・リストごとに状態・行動対の報酬期待値を更新するので、他からの教示を効率的に覚えることができる。また、本態様による学習制御方法によれば、上記他からの教示に加えて、強化学習部が行う試行錯誤の学習の結果も、該イベント・リストに反映されるので、教示された内容を試行錯誤に組み合わせながら学習を行なうことができる。
本発明の一実施形態による学習制御システムを含む装置の構成を示す図である。 イベント・リスト・データベースのデータ構造を説明するための図である。 イベント・リスト管理部の動作を説明するための流れ図である。 イベント・リスト学習制御部の動作を説明するための流れ図である。 図4のステップS2030の詳細な動作を説明するための図である。 図4のステップS2035の詳細な動作を説明するための図である。 行動計画部の動作を説明するための流れ図である。 イベント・リスト・データベースの情報を使用して、初期状態から目標状態に至る経路を探索する方法を説明するための図である。 行動選択部の動作を説明するための流れ図である。 シミュレーション実験の手順を説明するための図である。 第1のシミュレーションの結果を示す図である。 第2のシミュレーションの結果を示す図である。 第3のシミュレーションの結果を示す図である。 第4のシミュレーションの結果を示す図である。 第5のシミュレーションの結果を示す図である。 第5のシミュレーション環境である高次マルコフ決定過程(HOMDP: High Order Markov Decision Process)を説明するための図である。
図1は、本発明の一実施形態による学習制御システム150を含む装置200の構成を示す図である。装置200は、たとえばロボットであってもよい。装置200は、情報取得部201、行動出力部203、目標取得部205、教示取得部207及び学習システム150を含む。
情報取得部201は、環境300から入力情報を取得し、また、装置200自身の状態情報を取得する。装置200がロボットである場合に、情報取得部201は、カメラを含み、該カメラによって撮影した環境300の画像によって、環境300の情報を取得してもよい。また、情報取得部201は、ロボットの位置及び向きを含む、装置200の状態情報を取得してもよい。情報取得部201は、取得したこれらの情報を学習制御システム150に送る。
行動出力部203は、学習制御システム150の選択した行動を出力する。行動の結果としての環境300の変化は、情報取得部201によって情報として取得される。
教示取得部205は、装置200のおかれた状態に対して、後で説明する報酬が最速で得られるような一連の行動の教示をユーザなどから取得し、その教示を学習制御システム150に送る。教示は、学習の初期の段階において学習システム150の学習を援助するのに使用される。
目標取得部207は、ユーザなどから装置200が達成すべき目標を受け取り、その目標を学習制御システム150に送る。
学習制御システム150は、取得情報処理部109、強化学習部111、行動選択部113及びイベント・リスト学習制御システム100を含む。
取得情報処理部109は、情報取得部201から受け取った情報を処理し、装置200の「状態」を定める。また、装置200の「行動」の結果の評価である「報酬」を定める。
イベント・リスト学習制御システム100及び強化学習部111は、一連の状態、行動及び報酬の情報に基づいて、行動の価値を評価する行動価値関数を定める。イベント・リスト学習制御システム100の詳細は後で説明する。強化学習部111は、従来の強化学習システムであり、たとえば、SARSA(State-Action-Reward-State-Action)アルゴリズムを使用したシステムであってもよい。SARSAアルゴリズムについては、たとえば、文献(R. S. Sutton, A. G. Barto, Reinforcement Learning: Introduction, MIT Press)に詳細に記載されている。
行動選択部113は、イベント・リスト学習制御システム100から受け取った第1の行動価値関数及び強化学習部111から受け取った第2の行動価値関数に基づいて装置の行動を選択する。また、行動選択部113は、教示取得部205から行動を教示された場合には、教示された行動を選択する。
ここで、イベント・リスト学習制御システム100の基本的な考え方について説明する。
最初に行動価値関数について説明する。観測される状態の空間(状態空間)をSとし行動の選択肢の空間(行動空間)をAとする。|S|を状態空間の要素数、|A|を行動空間の要素数とする。状態空間の要素をs, 行動空間の要素をaであらわす。このときstは時刻tにおいて観測された状態空間の要素であり、atも同様である。行動価値関数は、現在時刻tに状態stを観測し、行動atをとったときに時間的に現在tから将来渡って得られる報酬rの期待値であり、以下のようにあらわされる。
Figure 0005528214
ここで、γは割引率と呼ばれる定数であり、E[]は期待値を意味する。
式(1)は、以下のように展開することができる。
Figure 0005528214
ここで、
Figure 0005528214
を報酬期待値と呼称する。
式(3)は、マルコフ決定過程(Markov Decision Process)という一般的な仮定のもとで以下のように変形することができる。
Figure 0005528214
ここで、Pr(|)は、条件付確率を示す。Pr(k|)は、一連の状態が現在時刻からkステップ後に終端に達する確率である。ここで、「終端」とは、上記一連の状態の最後の状態(この場合は、報酬を得た状態)を指す。Pr(rt+k|)は、t+kで報酬rを得る確率である。
(S,A,S’)は(st+k-1,at+k-1,st+k)を表し、報酬rt+kを得る直前の状態・行動対(st+k-1,at+k-1)と報酬rt+kを得たときの状態st+kからなるデータの組である。ここで、状態・行動対とは、装置200が、ある状態において、ある行動を選択した場合に、その状態とその行動との対を指す。
定義から、以下の式が成立する。
Figure 0005528214
式(5)の左辺を部分距離期待値と呼称する。「部分」とは、(S,A,S’)の場合に限定された期待値であることを意味する。「距離」とは、現在の状態から報酬を得る状態までの距離の期待値であることを意味する。
また、定義から、以下の式が成立する。
Figure 0005528214
式(6)の左辺を部分報酬期待値と呼称する。「部分」とは、(S,A,S’)の場合に限定された期待値であることを意味する。「報酬」とは、報酬の値の期待値であることを意味する。
式(4)は、報酬期待値が、式(5)で表される部分距離期待値と式(6)で表される部分距離期待値との積の和で表せることを示す。また、報酬を得た状態を終端とする一連の状態行動対は、「部分」、すなわち、(S,A,S’)ごとのグループ(集合)に分類できることを示す。そこで、一連の状態・行動対を(S,A,S’)ごとの集合に分類し、該集合ごとに状態・行動対を記憶し、それぞれの状態・行動対の報酬期待値を各部分距離期待値ならびに各部分報酬期待値ごとに学習することができる。
式(5)で表される部分距離期待値と式(6)で表される部分距離期待値を計算するために、直近のm個のデータの平均である単純移動平均(Simple Moving Average)を使用してもよい。単純移動平均は、以下の式で表せる。
Figure 0005528214
ここで、mの値は、環境300の変化にすばやく追随するために、10などの比較的小さい値が望ましい。また初期状態でデータの個数がm以下の場合は通常の平均値を計算する。
式(5)で表される部分距離期待値に対して、
Figure 0005528214
の場合に、
Figure 0005528214
である。それ以外の場合には、
Figure 0005528214
である。
式(6)で表される部分報酬期待値に対して、
Figure 0005528214
の場合に、
Figure 0005528214
である。それ以外の場合には、
Figure 0005528214
である。
部分距離期待値に対する単純移動平均をmaSAS’[γ|s,a]と表し、部分報酬期待値に対する単純移動平均をma[r|SAS’]と表す。
つぎに、イベント・リスト学習制御システム100の構成について説明する。図1に示すように、イベント・リスト学習制御システム100は、イベント・リスト管理部101、一時的リスト記憶部103、イベント・リスト・データベース105、イベント・リスト学習制御部107及び行動計画部108を含む。
イベント・リスト管理部101は、一連の状態・行動対を一時的記憶部103に記憶させ、報酬を受け取った際に、該一連の状態・行動対を、(S,A,S’)ごとの集合に分類し、該集合ごとにイベント・リスト・データベース105に記憶させる。イベント・リスト・データベース105には、(S,A,S’)ごとの集合の、部分報酬期待値に対する単純移動平均ma[r|SAS’]及び部分距離期待値に対する単純移動平均maSAS’[γ|s,a]も記憶される。
イベント・リスト学習制御システム100は、新たな状態・行動対を受け取るごとに、(S,A,S’)ごとの集合の、分報酬期待値に対する単純移動平均をma[r|SAS’]及び部分距離期待値に対する単純移動平均を更新(学習)する。
行動計画部108は、目標取得部207から目標の状態が与えられた場合に、イベント・リスト・データベース105のデータを使用して、現在の状態から該目標の状態に至る経路を探索し、経路探索が成功した場合には、経路探索の結果に基づいて行動価値関数を求める。それ以外の場合には、イベント・リスト・データベース105のデータを使用して、行動価値関数を求める。
イベント・リスト学習制御システム100の各構成要素その詳細については以下に説明する。
図2はイベント・リスト・データベース105のデータ構造を説明するための図である。図2において、(S,A,S’)nは報酬を得る直前の状態・行動対ならびに報酬を得たときの状態を示す。(S,A,S’)nは(S,A,S’)nに至るまでの一連の状態・行動対とともに集合を形成する。この集合をイベント・リストと呼称する。(si,aj)はイベント・リストに含まれる状態・行動対を示す。なお(S,A)もこの集合に含まれる。(si,aj)に関連付けて、その部分距離期待値の単純移動平均maSAS’[γ|s,a]もイベント・リストに保持されている。さらに、この部分距離期待値の単純移動平均を更新するための補助変数e[si,aj]も保持されている。この補助変数については後に説明する。またそれぞれの(S,A,S’)nに関連付けて、対応する部分報酬期待値の単純移動平均ma[r|(S,A,S’)n]が保持されている。
このようにイベント・リスト・データベース105のデータは報酬を得る直前の状態・行動対ならびに報酬を得たときの状態(S,A,S’)ごとのデータ、すなわちイベント・リストに分類される。
図3は、イベント・リスト管理部101の動作を説明するための流れ図である。
図3のステップS1005において、イベント・リスト管理部101は、行動選択部113から状態・行動対(s,a)を受け取ったかどうか判断する。ここで、行動選択部113は、行動を選択するごとに状態・行動対(s,a)をイベント・リスト管理部101に送る。状態・行動対(s,a)を受け取っていればステップS1010に進む。状態・行動対(s,a)を受け取っていなければ、待機する。
図3のステップS1010において、イベント・リスト管理部101は、状態・行動対(s,a)を一時的リスト記憶部103に記憶させる。
図3のステップS1015において、イベント・リスト管理部101は、取得情報処理部109から報酬及び報酬を得たときの状態s’を受け取ったかどうか判断する。ここで、取得情報処理部109は、行動出力部207が行動を出力してから所定の時間経過後に情報取得部201が取得した情報に基づいて報酬を定め、イベント・リスト管理部101に送る。報酬を受け取っていればステップS1020に進む。報酬を受け取っていなければ、所定の時間経過後ステップS1005に戻る。
図3のステップS1020において、イベント・リスト管理部101は、一時的リスト記憶部103に最後に記憶された状態・行動対(s,a)を、報酬を得た直前の状態・行動対(S,A)とし、報酬を得たときの状態s’をS’として、報酬を得た直前の状態・行動対及び報酬を得たときの状態(S,A,S’)を生成する。
図3のステップS1025において、イベント・リスト管理部101は、イベント・リスト・データベース105に (S,A,S’)が存在するかどうか判断する。(S,A,S’)が存在すれば、ステップS1035に進む。(S,A,S’)が存在しなければ、ステップS1030に進む。
図3のステップS1030において、イベント・リスト管理部101は、(S,A,S’)をイベント・リスト・データベース105に記憶させる。
図3のステップS1035において、イベント・リスト管理部101は、一時的リスト記憶部103に記憶された状態・行動対(s,a)のそれぞれが、イベント・リスト・データベース105の(S,A,S’)のイベント・リストに含まれているかどうか判断する。(S,A,S’)のイベント・リストに含まれていれば、ステップS1045に進む。(S,A,S’)のイベント・リストに含まれていなければ、ステップS1040に進む。
図3のステップS1040において、イベント・リスト管理部101は、(S,A,S’)のイベント・リストに含まれていない状態・行動対(s,a)を(S,A,S’)のイベント・リストに追加する。このとき、追加される状態・行動対の数は、あらかじめ決められた数を上限とする。
図3のステップS1045において、イベント・リスト管理部101は、一時的リスト記憶部103に記憶された全ての状態・行動対(s,a)についてステップS1035の処理を行ったかどうか判断する。全ての状態・行動対(s,a)についてステップS1035の処理を行っていれば、ステップS1050に進む。全ての状態・行動対(s,a)についてステップS1035の処理を行っていなければ、ステップS1035に戻る。
図3のステップS1050において、イベント・リスト管理部101は、一時的リスト記憶部103に記憶された全ての状態・行動対(s,a)をクリア(消去)する。
図4は、イベント・リスト学習制御部107の動作を説明するための流れ図である。
図4のステップS2005において、イベント・リスト管理部101は、行動選択部113から状態・行動対(s,a)を受け取ったかどうか判断する。状態・行動対(s,a)を受け取っていればステップS2010に進む。状態・行動対(s,a)を受け取っていなければ、待機する。
図4のステップS2010において、イベント・リスト管理部101は、取得情報処理部109から次の状態s’を受け取ったかどうか判断する。次の状態s’を受け取っていれば、ステップS2015に進む。次の状態s’を受け取っていなければ待機する。
図4のステップS2015において、イベント・リスト管理部101は、そのときの報酬を受け取ったかどうか判断する。報酬を受け取っていれば、ステップS2020に進む。報酬を受け取っていなければ、ステップS2025に進む。
図4のステップS2020において、イベント・リスト管理部101は、報酬の値をrに代入する。
図4のステップS2025において、イベント・リスト管理部101は、ゼロをrに代入する。
図4のステップS2030において、イベント・リスト管理部101は、イベント・リスト・データベース105中の各イベント・リストの補助変数e[s,a]を更新する。
図4のステップS2035において、イベント・リスト管理部101は、イベント・リスト・データベース105中の各イベント・リストの単純移動平均の値を更新する。
図5は、図4のステップS2030の詳細な動作を説明するための図である。
図5のステップS3005において、イベント・リスト管理部101は、イベント・リスト・データベース105から一つのイベント・リスト(S,A,S’)nを取り出す。
図5のステップS3010において、イベント・リスト管理部101は、取り出したイベント・リスト(S,A,S’)nから一つの状態・行動対(s”,a”)を取り出す。
図5のステップS3015において、イベント・リスト管理部101は、取り出した状態・行動対(s”,a”)が、受け取った状態・行動対(s,a)と同じであるかどうか判断する。同じであれば、ステップS3020に進む。同じでなければ、ステップS3025に進む。
図5のステップS3020において、イベント・リスト管理部101は、状態・行動対(s”,a”)の補助変数e[s”,a”]を以下の式にしたがって更新する。ここで、補助変数の初期値は、すべてゼロである。
Figure 0005528214
図5のステップS3025において、イベント・リスト管理部101は、状態・行動対(s”,a”)の補助変数e[s”,a”]を以下の式にしたがって更新する。
Figure 0005528214
ここで、γは割引率と呼ばれる定数である。
図5のステップS3030において、イベント・リスト管理部101は、取り出したイベント・リスト(S,A,S’)nの全ての状態・行動対(s”,a”)をチェックしたかどうか判断する。全ての状態・行動対(s”,a”)をチェックしていれば、ステップS3035に進む。全ての状態・行動対(s”,a”)をチェックしていなければ、ステップS3010に戻る。
図5のステップS3035において、イベント・リスト管理部101は、イベント・リスト・データベース105の全てのイベント・リスト(S,A,S’)n をチェックしたかどうか判断する。全てのイベント・リスト(S,A,S’)n をチェックしていれば、処理を終了する。全てのイベント・リスト(S,A,S’)n をチェックしていなければ、ステップS3005に戻る。
図6は、図4のステップS2035の詳細な動作を説明するための図である。
図6のステップS4005において、イベント・リスト管理部101は、イベント・リスト・データベース105のイベント・リスト(S,A,S’)nのうちから、その状態・行動対にsを含むものだけを取り出す。
図6のステップS4010において、イベント・リスト管理部101は、取り出したイベント・リスト(S,A,S’)nの(S,A,S’)が、(s,a,s’)と同じであるかどうか判断する。同じであれば、ステップS4015に進む。同じでなければステップS4020に進む。
図6のステップS4015において、イベント・リスト管理部101は、取り出したイベント・リスト(S,A,S’)nの、部分報酬期待値に対する単純移動平均ma[r|SAS’]を以下の式にしたがって更新する。
Figure 0005528214
ただし、上述にように
Figure 0005528214
である。
図6のステップS4020において、イベント・リスト管理部101は、取り出したイベント・リスト(S,A,S’)nから一つの状態・行動対(s”,a”)を取り出す。
図6のステップS4025において、イベント・リスト管理部101は、状態・行動対(s”,a”)の補助変数e[s”,a”]が正であるかどうか判断する。補助変数e[s”,a”]が正であれば、ステップS4030に進む。補助変数e[s”,a”]が正でなければ、ステップS4050に進む。
図6のステップS4030において、イベント・リスト管理部101は、取り出したイベント・リスト(S,A,S’)nの(S,A,S’)が、(s,a,s’)と同じであるかどうか判断する。同じであれば、ステップS4035に進む。同じでなければステップS4040に進む。
図6のステップS4035において、イベント・リスト管理部101は、取り出したイベント・リスト(S,A,S’)nの要素の、部分距離期待値に対する単純移動平均maSAS’[γ|s,a]を以下の式にしたがって更新する。
Figure 0005528214
ただし、上述にように
Figure 0005528214
である。
図6のステップS4040において、イベント・リスト管理部101は、取り出したイベント・リスト(S,A,S’)nの要素の、部分距離期待値に対する単純移動平均maSAS’[γ|s,a]を以下の式にしたがって更新する。
Figure 0005528214
ただし、上述にように
Figure 0005528214
である。
図6のステップS4045において、イベント・リスト管理部101は、状態・行動対(s”,a”)の補助変数e[s”,a”]を以下の式にしたがって更新する。
Figure 0005528214
図6のステップS4050において、イベント・リスト管理部101は、取り出したイベント・リスト(S,A,S’)nの全ての状態・行動対(s”,a”)をチェックしたかどうか判断する。全ての状態・行動対(s”,a”)をチェックしていれば、ステップS4055に進む。全ての状態・行動対(s”,a”)をチェックしていなければ、ステップS4020に戻る。
図6のステップS4055において、イベント・リスト管理部101は、イベント・リスト・データベース105の全てのイベント・リスト(S,A,S’)n をチェックしたかどうか判断する。全てのイベント・リスト(S,A,S’)n をチェックしていれば、処理を終了する。全てのイベント・リスト(S,A,S’)n をチェックしていなければ、ステップS4005に戻る。
図7Aは、行動計画部108の動作を説明するための流れ図である。
図7AのステップS5005において、行動計画部108は、取得情報処理部109から状態s’を受け取ったかどうか判断する。状態s’を受け取っていれば、ステップS5010に進む。状態s’を受け取っていなければ待機する。
図7AのステップS5010において、行動計画部108は、目標取得部207から目標S’を受け取ったかどうか判断する。目標S’を受け取っていれば、ステップS5015に進む。目標S’を受け取っていなければ、ステップS5030に進む。
図7AのステップS5015において、行動計画部108は、行動計画部108は、イベント・リスト・データベース105の情報を使用して、初期状態s’から目標状態S’に至る経路を探索する。
図7Bは、イベント・リスト・データベース105の情報を使用して、初期状態から目標状態に至る経路を探索する方法を説明するための図である。図7B(a)は、S0からS3に至る状態遷移を示す図である。図7B(b)は、図7B(a)の状態遷移に対応するイベント・リストを示す図である。図7B(b)のイベント・リストにおいて、(S,A,S’)は、(S2,a3,S3)である。図7B(c)は、イベント・リストの組み合わせを示す図である。図7B(c)に示されるように、複数のイベント・リストを組み合わせて初期状態から目標状態に至る経路を探索する。経路探索の方法は、たとえば、最良優先探索法(たとえば、人工知能学会編、人工知能学辞典、2006年、共立出版)によってもよい。
図7AのステップS5020において、行動計画部108は、経路探索は成功したかどうか判断する。経路探索が成功していれば、ステップS5025に進む。経路探索が成功していなければ、ステップS5030に進む。
図7AのステップS5025において、行動計画部108は、経路探索の結果に基づいて、推奨される行動aに対応した行動価値関数をイベント・リスト・データベース105中の対応する単純移動平均の値を使って、以下の式にしたがって求め、出力する。
Figure 0005528214
式(8)は、図7B(c)のイベント・リストの組合せに対応し、初期状態は、sである。
図7AのステップS5030において、行動計画部108は、イベント・リスト・データベース105の情報を使用して、状態s’に対応する行動価値関数を求め、出力する。具体的に、行動計画部108は、イベント・リスト・データベース105に記憶されたイベント・リストの内、状態s’に対応する部分の部分報酬期待値および部分距離期待値から、以下の式にしたがって式(4)によって示される状態s’に対する報酬期待値を求める。
Figure 0005528214
図8は、行動選択部113の動作を説明するための流れ図である。
図8のステップS6005において、行動選択部113は、取得情報処理部109から状態s’を受け取ったかどうか判断する。状態s’を受け取っていれば、ステップS6010に進む。状態s’を受け取っていなければ待機する。
図8のステップS6010において、行動選択部113は、教示取得部205から教示を受け取ったかどうか判断する。教示を受け取っていれば、ステップS6015に進む。教示を受け取っていなければステップS6020に進む。
図8のステップS6015において、行動選択部113は、教示された行動aを選択して出力し、処理を終了する。
図8のステップS6020において、行動選択部113は、強化学習部111から行動価値関数Qを受け取ったかどうか判断する。行動価値関数Qを受け取っていれば、ステップS6025に進む。行動価値関数Qを受け取っていなければステップS6005に戻る。
図8のステップS6025において、行動選択部113は、行動計画部108から行動価値関数tQを受け取ったかどうか判断する。行動価値関数tQを受け取っていれば、ステップS6030に進む。行動価値関数tQを受け取っていなければステップS6035に進む。
図8のステップS6030において、行動選択部113は、tQとQとの和をtQとする。
図8のステップS6035において、行動選択部113は、QをtQとする。
図8のステップS6040において、行動選択部113は、tQに基づいて、確率的に行動aを選択し、出力する。
以下に、本実施形態による学習制御システム150のシミュレーション実験について説明する。
図9は、シミュレーション実験の手順を説明するための図である。s0からs7までの8個の観察される状態が存在する。また、a0からa7までの8個の行動が存在する。「教示されるエピソード」は、学習制御システム150を備えた装置200に、たとえば教示取得部205を介して教示されるエピソードを示す。ここで、エピソードとは、連続して生じる一連の状態及び行動を指す。以下において、装置200をエージェントと呼称する。
たとえば、エピソードAでは、最初に観測状態はs0が観測される。このとき行動a1をとるように教示される。そして行動a1をエージェントが選択すると、その結果観測状態がs1に代わる。以下同様にして観測状態s3までたどり着くと、正の報酬値がエージェントに与えられる。同様にしてエピソードB、エピソードC、エピソードDが各一回ずつ教示される。エピソードB及びエピソードCの終端においては正の報酬値が与えられる。しかし、エピソードDの終端においては負の報酬値が与えられ、エピソードDは望ましくないものとして教示される。
つぎに、エージェントに問題が与えられる。図9の問題1の場合に、エージェントは、観測状態s0におかれ、目標とする状態がs6であると提示される。エージェントは、状態s0から状態がs6まで、状態を最短のステップで遷移させることが要求される。ここで、ステップとは、状態に対してとられる行動の数である。図9の問題2の場合に、エージェントは、観測状態s0におかれ、目標とする状態がsであると提示される。エージェントは、状態s0から状態がsまで、状態を最短のステップで遷移させることが要求される。
実際のシミュレーションにおいては、20のトライアルからなるシミュレーションを行なった。ここで、トライアルとは、エージェントが、状態に応じて終端にいたるまで実施する一連の行動である。ただし、トライアルのステップ数は最大50とする。換言すれば、エージェントの行動が、50ステップを経てもなお終端に至らない場合には、トライアルを終了する。最初の4個のトライアル、すなわち、第1乃至第4のトライアルは、エピソード教示期間であり教示が与えられる。具体的に、第1乃至第4のトライアルにおいては、エピソードA乃至Dが上述のように教示される。第5乃至第20のトライアルは、問題対処期間である。問題対処期間には、エージェントに問題1及び問題2が交互に与えられる。具体的に第5のトライアルにおいては、問題1、第6のトライアルにおいては問題2、第7のトライアルにおいては問題1、第8のトライアルにおいては問題2がそれぞれ与えられる。このようにして、第20のトライアルに至るまで、問題1及び問題2が交互に与えられる。
図10は、第1のシミュレーションの結果を示す図である。ここで、図10乃至図13のグラフの横軸はトライアル数を示し、縦軸は各トライアルのステップ数を示す。各トライアルのステップ数は、1000回繰り返した結果の平均である。図10乃至図13には、本発明の本実施形態による学習制御システム150の他、SARSA(0.1)のアルゴリズム及びSARSA(0.5)のアルゴリズムによる結果を示した。0.1及び0.5は、λで表されるSARSAアルゴリズムのパラメータである(R. S. Sutton, A. G. Barto, Reinforcement Learning: Introduction, MIT Press)。なお、本実施形態による学習制御システム150の強化学習部111は、SARSA(0.5)のアルゴリズムを使用している。
図10において、SARSA(0.1)のアルゴリズムによる結果は、問題対処期間においてステップ数が減少しないので全く学習が行なわれていないことを示している。SARSA(0.5)のアルゴリズムによる結果は、問題1に対してのみステップ数が減少しているので、問題1に対してのみ学習が行なわれていることを示している。本実施形態による学習制御システム150による結果は、問題1及び2に対して正しく学習が行なわれていることを示している。
図11は、第2のシミュレーション結果を示す図である。本シミュレーションにおいて、問題対処期間には、第1のシミュレーションの場合と同様に、エージェントに問題1及び問題2が交互に与えられる。ただし、第2のシミュレーションにおいては、問題対処期間のトライアルが確率的である。具体的に、たとえ、エージェントの選んだ行動が正しくても確率0.8の割合でしか正しく次の状態に遷移しない。図11によれば、この場合でも、本実施形態による学習制御システム150は、正しく学習を行なう。
図12は、第3のシミュレーション結果を示す図である。本シミュレーションにおいて、問題対処期間の環境が、エピソード教示期間の環境と変わってしまっている。具体的に、エピソード教示期間の、問題1に対応するエピソードAでは、エージェントが行動a2を状態s1で選ぶと、状態s2になったが、問題1のトライアルではs7になってしまうようことが起きるとする。この時の遷移は確率的ではなく、「決定論的」である。図12において、「1’」は、問題1が変わってしまっていることを示す。問題2は、エピソード教示期間と同じである。図12によれば、この場合でも、本実施形態による学習制御システム150は、イベント・リスト学習制御システム100による学習を強化学習部111による学習と効果的に組み合わせることにより、教示されていない問題1’に対しても正しく学習を行なう。
図13は、第4のシミュレーション結果を示す図である。本シミュレーションにおいて、第2のシミュレーションと同様に、問題対処期間のトライアルが確率的であり、且つ、第3のシミュレーションと同様に、問題1が変わってしまっている。この場合でも、本実施形態による学習制御システム150は、イベント・リスト学習制御システム100による学習を強化学習部111による学習と効果的に組み合わせることにより、問題1’及び問題2に対して正しく学習を行なう。
図14は、第5のシミュレーション結果を示す図である。第5のシミュレーションにおいては、教示が一切なく目標も与えられない。
図15は、第5のシミュレーション環境である高次マルコフ決定過程(HOMDP: High Order Markov Decision Process)を説明するための図である。選択しうる行動は、a0,a1,…a9の10個であり、そのうち報酬に関係するのはa0,a1,…a5の6個である。本過程は、過程Aと過程Bとを含む。過程Aで報酬を得た場合につぎに報酬を得るためには過程Bを選択する必要があり、過程Bで報酬を得た場合につぎに報酬を得るためには過程Aを選択する必要がある。すなわち、同じ観測信号に対して、過程Aと過程Bで異なる行動を選択する必要がある。各遷移は確率的である。過程Aにおいて、s0からs2へは確率0.3で遷移する。その他の場合は、確率0.9で遷移する。過程Bにおいて、s1からs2へは確率0.3で遷移する。その他の場合は、確率0.9で遷移する。さらに、各状態に対して観測できる信号は2個存在する。たとえば、s0に対しては、O00とO01の信号が存在し、いずれかが確率0.5で観測される。
図14のグラフの横軸はトライアル数を示し、縦軸は各トライアルのステップ数を示す。各トライアルのステップ数は、1000回繰り返した結果の平均である。図14には、本発明の本実施形態による学習制御システム150の他、SARSA(0.5)のアルゴリズムによる結果を示した。図14において、実線は、学習制御システム150によるステップ数の平均値を示し、一点鎖線は、SARSA(0.5)のアルゴリズムによるステップ数の平均値を示す。また、点線は、学習制御システム150によるステップ数の標準偏差を示し、二点鎖線は、SARSA(0.5)のアルゴリズムによるステップ数の標準偏差を示す。図14によれば、本発明の本実施形態による学習制御システム150は、SARSA(0.5)のアルゴリズムより少ないステップ数で収束している。この結果、全く教示や目標の提示がない場合でも、イベント・リスト学習制御システム100は、強化学習部111の学習を助けていることがわかる。
100…イベント・リスト学習制御システム、101…イベント・リスト管理部、103…一時的リスト記憶、105…イベント・リスト・データベース、107…イベント・リスト学習制御部、108…行動計画部

Claims (2)

  1. 報酬を得た直前の状態・行動対及び報酬を得たときの状態に至る、一連の状態・行動対の集合をイベント・リストとして、複数のイベント・リストを保持するイベント・リスト・データベースと、
    状態・行動対を、前記複数のイベント・リストに分類して該イベント・リスト・データベースに記憶させるイベント・リスト管理部と、
    各イベント・リストの要素である状態・行動対の報酬期待値を更新するイベント・リスト学習制御部と、
    該イベント・リスト・データベースのイベント・リストを使用して第1の行動価値関数を求める行動計画部と、
    強化学習に基づいて第2の行動価値関数を求める強化学習部と、
    該行動計画部から受け取った第1の行動価値関数及び該強化学習部から受け取った第2の行動価値関数に基づいて行動を選択する行動選択部と、
    を備え、
    前記イベント・リスト管理部は、観測された状態、行動、及び報酬を、それぞれ、一の報酬を得た直前の時刻における状態と、当該状態に対してとった行動と、当該行動の結果生じた、当該報酬を得たときの状態と、で構成される集合で表された状態行動連鎖に、当該状態行動連鎖に至るまでの一連の状態・行動対の集合を対応付けて構成したリストを一のイベント・リストとして分類し、当該一のイベント・リストを前記一の報酬に対応付けて、前記イベント・リスト・データベースに記憶させ、
    前記第1及び第2の行動価値関数は、それぞれ、前記行動計画部及び前記強化学習部が決定した行動を実行したならば現在から将来にわたって得られるであろう報酬の期待値を表すものであ
    前記第1の行動価値関数は、一の時刻における状態に対し当該一の時刻においてとった行動に起因してその後の他の時刻において得られる報酬の期待値である報酬期待値を、複数の前記他の時刻にわたって重みづけ加算した値として定義され、
    前記報酬期待値は、前記一の時刻における状態に対し当該一の時刻においてとった行動に起因してその後の他の時刻において一の状態行動連鎖を経て報酬が得られる確率を、複数の前記他の時刻にわたって重みづけ加算した値である部分距離期待値と、前記一の時刻における状態に対し当該一の時刻においてとった行動に起因してその後の他の時刻において前記一の状態行動連鎖を経て一の報酬が得られる期待値を、当該一の状態行動連鎖を経て得られるすべての報酬について重みづけ加算した値である部分報酬期待値と、の積を、与えられた目標状態に至るまでの経路を構成する一の前記状態行動連鎖のセットについて加算した値として算出される、
    学習制御システム。
  2. 報酬を得た直前の状態・行動対及び報酬を得たときの状態に至る、一連の状態・行動対の集合をイベント・リストとして、複数のイベント・リストを保持するイベント・リスト・データベースと、イベント・リスト管理部と、イベント・リスト学習制御部と、行動計画部と、強化学習部と、行動選択部と、を備えた学習制御システムによって、学習を行なって行動を選択する学習制御方法であって、
    該イベント・リスト管理部が、状態・行動対を、前記複数のイベント・リストに分類して該イベント・リスト・データベースに記憶させるステップと、
    該イベント・リスト学習制御部が、各イベント・リストの要素である状態・行動対の報酬期待値を更新するステップと、
    該行動計画部が、該イベント・リスト・データベースのイベント・リストを使用して第1の行動価値関数を求めるステップと、
    該強化学習部が、強化学習に基づいて第2の行動価値関数を求めるステップと、
    該行動選択部が、該行動計画部から受け取った第1の行動価値関数及び該強化学習部から受け取った第2の行動価値関数に基づいて行動を選択するステップと、
    を含み、
    前記記憶させるステップでは、観測された状態、行動、及び報酬を、それぞれ、一の報酬を得た直前の時刻における状態と、当該状態に対してとった行動と、当該行動の結果生じた、当該報酬を得たときの状態と、で構成される集合で表された状態行動連鎖に、当該状態行動連鎖に至るまでの一連の状態・行動対の集合を対応付けて構成したリストを一のイベント・リストとして分類し、当該一のイベント・リストを前記一の報酬に対応付けて、前記イベント・リスト・データベースに記憶させ、
    前記第1及び第2の行動価値関数は、それぞれ、前記行動計画部及び前記強化学習部が決定した行動を実行したならば現在から将来にわたって得られるであろう報酬の期待値を表すものであ
    前記第1の行動価値関数は、一の時刻における状態に対し当該一の時刻においてとった行動に起因してその後の他の時刻において得られる報酬の期待値である報酬期待値を、複数の前記他の時刻にわたって重みづけ加算した値として定義され、
    前記報酬期待値は、前記一の時刻における状態に対し当該一の時刻においてとった行動に起因してその後の他の時刻において一の状態行動連鎖を経て報酬が得られる確率を、複数の前記他の時刻にわたって重みづけ加算した値である部分距離期待値と、前記一の時刻における状態に対し当該一の時刻においてとった行動に起因してその後の他の時刻において前記一の状態行動連鎖を経て一の報酬が得られる期待値を、当該一の状態行動連鎖を経て得られるすべての報酬について重みづけ加算した値である部分報酬期待値と、の積を、目標状態に至るまでの経路を構成する一の前記状態行動連鎖のセットについて加算した値として算出される、
    学習制御方法。
JP2010122796A 2010-05-28 2010-05-28 学習制御システム及び学習制御方法 Expired - Fee Related JP5528214B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010122796A JP5528214B2 (ja) 2010-05-28 2010-05-28 学習制御システム及び学習制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010122796A JP5528214B2 (ja) 2010-05-28 2010-05-28 学習制御システム及び学習制御方法

Publications (2)

Publication Number Publication Date
JP2011248728A JP2011248728A (ja) 2011-12-08
JP5528214B2 true JP5528214B2 (ja) 2014-06-25

Family

ID=45413888

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010122796A Expired - Fee Related JP5528214B2 (ja) 2010-05-28 2010-05-28 学習制御システム及び学習制御方法

Country Status (1)

Country Link
JP (1) JP5528214B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016009030B4 (de) 2015-07-31 2019-05-09 Fanuc Corporation Vorrichtung für maschinelles Lernen, Robotersystem und maschinelles Lernsystem zum Lernen eines Werkstückaufnahmevorgangs
JP6240689B2 (ja) * 2015-07-31 2017-11-29 ファナック株式会社 人の行動パターンを学習する機械学習装置、ロボット制御装置、ロボットシステム、および機械学習方法
CN109641354B (zh) * 2016-08-30 2022-08-05 本田技研工业株式会社 机器人的控制装置和机器人的控制方法
JP6691077B2 (ja) 2017-08-18 2020-04-28 ファナック株式会社 制御装置及び機械学習装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11231897A (ja) * 1998-02-12 1999-08-27 Hitachi Ltd 音声認識装置及び方法
JP2002133390A (ja) * 2000-10-18 2002-05-10 Matsushita Electric Ind Co Ltd 学習装置および記録媒体
JP4687732B2 (ja) * 2008-03-13 2011-05-25 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP5079602B2 (ja) * 2008-06-09 2012-11-21 日本電信電話株式会社 自律移動ロボットの動作計画装置、方法、プログラム及び記録媒体並びに自律移動ロボットの動作制御装置及び方法
JP5398414B2 (ja) * 2008-09-18 2014-01-29 本田技研工業株式会社 学習システム及び学習方法

Also Published As

Publication number Publication date
JP2011248728A (ja) 2011-12-08

Similar Documents

Publication Publication Date Title
Lee et al. Context-aware dynamics model for generalization in model-based reinforcement learning
US20220043972A1 (en) Answer generating device, answer learning device, answer generating method, and answer generating program
EP3711000B1 (en) Regularized neural network architecture search
US8290883B2 (en) Learning system and learning method comprising an event list database
JP7247878B2 (ja) 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム
Csordás et al. The neural data router: Adaptive control flow in transformers improves systematic generalization
JP5346701B2 (ja) 学習制御システム及び学習制御方法
WO2018125337A2 (en) Automated generation of workflows
CN114641779A (zh) 机器学习模型的对抗训练
JP5528214B2 (ja) 学習制御システム及び学習制御方法
KR102203252B1 (ko) 생성적 적대 신경망에 기반한 협업 필터링을 위한 방법 및 시스템
Fan et al. Interactive reinforcement learning for feature selection with decision tree in the loop
JP2017182320A (ja) 機械学習装置
CN112508177A (zh) 一种网络结构搜索方法、装置、电子设备及存储介质
Zhang et al. Deep incremental rnn for learning sequential data: A lyapunov stable dynamical system
Saini et al. Machine learning-based incremental learning in interactive domain modelling
Ada et al. Generalization in transfer learning
WO2020044414A1 (ja) 仮説推論装置、仮説推論方法、及びコンピュータ読み取り可能な記録媒体
JP5910957B2 (ja) 言語入力により自律的に知識体系を構築する人工知能装置
Xiao Using machine learning for exploratory data analysis and predictive models on large datasets
CN111783980B (zh) 基于双重协作生成式对抗网络的排序学习方法
JP6844565B2 (ja) ニューラルネットワーク装置及びプログラム
Pedersen et al. Minimal neural network models for permutation invariant agents
Panou et al. DeepFoldit--A Deep Reinforcement Learning Neural Network Folding Proteins
JP2022045731A (ja) 情報処理装置、情報処理システムおよび情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131022

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140219

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140408

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140415

R150 Certificate of patent or registration of utility model

Ref document number: 5528214

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees