(57)【特許請求の範囲】
【請求項１】
装置の状態を複数の状態のいずれかに分類し、状態ごとに求めた行動価値に基づいて行動を選択し実行する装置において、行動価値を更新する学習制御システムであって、
前記装置が置かれた環境のパラメータ及び前記行動に基づいて定められる入力空間である状態Ｓｉに対応する行動価値Ｏｉの更新量を求める第１の学習器と、
前記パラメータと前記パラメータの予測値との差分と、前記パラメータ及び前記行動に基づいて定められる入力空間であり、前記状態Ｓｉをさらに分割した状態である、状態Ｓｉ，ｊに対応する行動価値Ｏｉ，ｊの更新量を求める第２の学習器と、
第１及び第２の学習器による行動価値の更新量の、行動価値の空間（Ｏｉ，Ｏｉ，ｊ）における勾配を自然勾配法の勾配へ変換し、更新前の行動価値に加算することによって行動価値を更新する行動価値決定器と、を備え、
ｉは１からＮまでの整数であるとして、前記行動価値決定器は、所定のｉに属する状態Ｓｉ，ｊ及び行動に対応して更新されるＮ個のフィッシャーの逆行列の内、更新される行動価値の更新量に対応するフィッシャーの逆行列を使用して勾配を変換する学習制御システム。
【請求項２】
前記勾配の変換は、単位行列を初期状態として更新され、
フィッシャーの逆行列の発散防止処理が行われる、
請求項１に記載の学習制御システム。
【請求項３】
前記逆行列の第１行第１列の要素で前記逆行列の全要素を割り、さらに更新比率を調整することにより、一定の更新量となるように更新の調整が行われる請求項２に記載の学習制御システム。
【請求項４】
装置の状態を複数の状態のいずれかに分類し、状態ごとに求めた行動価値に基づいて行動を選択し実行する装置において、行動価値を学習する学習制御システムであって、
複数の階層的な状態分類に対応する複数の行動価値の更新量をそれぞれ求める複数の学習器であり、前記装置が置かれた環境のパラメータ及び前記行動に基づいて定められる状態を入力空間とする学習器と、前記パラメータと前記パラメータの予測値との差分と、前記パラメータ及び前記行動とに基づいて定められる状態を入力空間とする学習器とで構成される、複数の学習器と、
前記複数の学習器による前記複数の行動価値の更新量の、行動価値の空間における勾配を自然勾配法の勾配へ変換し、更新前の行動価値に加算することによって行動価値を更新する行動価値決定器と、を備え、
前記行動価値決定器は、所定の個数に分類された状態及び行動に対応して更新される、前記所定の個数のフィッシャーの逆行列の内、更新される行動価値の更新量に対応するフィッシャーの逆行列を使用して勾配を変換する学習制御システム。
【請求項５】
装置の状態を複数の状態のいずれかに分類し、状態ごとに求めた行動価値に基づいて行動を選択し実行する装置において、行動価値を学習する学習制御方法であって、
前記装置が置かれた環境のパラメータ及び前記行動に基づいて定められる入力空間である状態Ｓｉに対応する行動価値Ｏｉの更新量を求めるステップと、
前記パラメータと前記パラメータの予測値との差分と、前記パラメータ及び前記行動とに基づいて定められる入力空間であり、前記状態Ｓｉをさらに分割した状態である、状態Ｓｉ，ｊに対応する行動価値Ｏｉ，ｊの更新量を求めるステップと、
行動価値Ｏｉの更新量及び行動価値Ｏｉ，ｊの更新量の、行動価値の空間（Ｏｉ，Ｏｉ，ｊ）における勾配を自然勾配法の勾配へ変換し、更新前の行動価値に加算することによって行動価値を更新するステップと、含み、
前記行動価値を更新するステップにおいて、ｉは１からＮまでの整数であるとして、所定のｉに属する状態Ｓｉ，ｊ及び行動に対応して更新されるＮ個のフィッシャーの逆行列の内、更新される行動価値の更新量に対応するフィッシャーの逆行列を使用して勾配を変換する学習制御方法。
【請求項６】
前記勾配の変換は、単位行列を初期状態として更新され、
フィッシャーの逆行列の発散防止処理が行われる請求項５に記載の学習制御方法。
【請求項７】
前記逆行列の第１行第１列の要素で前記逆行列の全要素を割り、さらに更新比率を調整することにより一定の更新量となるように更新量の調整が行われる請求項６に記載の学習制御方法。
【請求項８】
装置の状態を複数の状態のいずれかに分類し、状態ごとに求めた行動価値に基づいて行動を選択し実行する装置において、行動価値を学習する学習制御方法であって、
前記装置が置かれた環境のパラメータ及び前記行動に基づいて定められる状態と、前記パラメータと前記パラメータの予測値との差分と、前記パラメータ及び前記行動とに基づいて定められる状態とを有する、複数の階層的な状態分類に対応して複数の行動価値の更新量を求めるステップと、
前記複数の行動価値の更新量の、行動価値の空間における勾配を自然勾配法の勾配へ変換し、更新前の行動価値に加算することによって行動価値を更新するステップと、を含み、
前記行動価値を更新するステップにおいて、所定の個数に分類された状態及び行動に対応して更新される、前記所定の個数のフィッシャーの逆行列の内、更新される行動価値の更新量に対応するフィッシャーの逆行列を使用して勾配を変換する学習制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、強化学習を使用した学習制御システム及び学習制御方法に関する。
【背景技術】
【０００２】
強化学習は、たとえば、未知の環境下でのロボットの行動獲得などに使用されている。しかし、強化学習は学習効率が低く、学習に時間がかかるという問題を有する。
【０００３】
強化学習による学習を高速化する手法として、強化学習による学習に自然勾配法を適用することが提案されている（たとえば、特許文献１）。しかし、自然勾配法を、強化学習を使用した学習制御システムに適用する場合に、計算の負荷が大きく計算時間が長くなるという問題がある。
【０００４】
他方、本出願の出願時点で未公開の、本出願と同一出願人による、特願２００９−１４１６８０は、階層型強化学習システムを記載している。このような階層型強化学習についても、さらに学習時間を短くすることが望まれる。
【０００５】
このように、自然勾配法を適用した、計算時間の短い強化学習システム及び強化学習方法は開発されていない。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−６５９２９
【発明の概要】
【発明が解決しようとする課題】
【０００７】
したがって、自然勾配法を適用した、計算時間の短い強化学習システム及び強化学習方法に対するニーズがある。
【課題を解決するための手段】
【０００８】
本発明による学習制御システムは、装置の状態を複数の状態のいずれかに分類し、状態ごとに求めた行動価値に基づいて行動を選択し実行する装置において、行動価値を更新する。本発明による学習制御システムは、状態Ｓｉに対応する行動価値Ｏｉの更新量を求める第１の学習器と、状態Ｓｉをさらに分割した状態Ｓｉ，ｊに対応する行動価値Ｏｉ，ｊの更新量を求める第２の学習器と、第１及び第２の学習器による行動価値の更新量の、行動価値の空間（Ｏｉ，Ｏｉ，ｊ）における勾配を自然勾配法の勾配へ変換し、更新前の行動価値に加算することによって行動価値を更新する行動価値決定器と、を備える。ｉは１からＮまでの整数であるとして、前記行動価値決定器は、所定のｉに属する状態Ｓｉ，ｊ及び行動に対応して更新されるＮ個のフィッシャーの逆行列の内、更新される行動価値の更新量に対応するフィッシャーの逆行列を使用して勾配を変換する。
【０００９】
本発明による学習制御方法は、装置の状態を複数の状態のいずれかに分類し、状態ごとに求めた行動価値に基づいて行動を選択し実行する装置において、行動価値を学習する。本発明による学習制御方法は、状態Ｓｉに対応する行動価値Ｏｉの更新量を求めるステップと、状態Ｓｉをさらに分割した状態Ｓｉ，ｊに対応する行動価値Ｏｉ，ｊの更新量を求めるステップと、行動価値Ｏｉの更新量及び行動価値Ｏｉ，ｊの更新量の、行動価値の空間（Ｏｉ，Ｏｉ，ｊ）における勾配を自然勾配法の勾配へ変換し、更新前の行動価値に加算することによって行動価値を更新するステップと、含む。前記行動価値を更新するステップにおいて、ｉは１からＮまでの整数であるとして、所定のｉに属する状態Ｓｉ，ｊ及び行動に対応して更新されるＮ個のフィッシャーの逆行列の内、更新される行動価値の更新量に対応するフィッシャーの逆行列を使用して勾配を変換する。
【００１０】
本発明によれば、自然勾配法を使用するので行動価値の学習速度が速くなる。またＮ個のフィッシャーの逆行列の内、更新される行動価値の更新量に対応するフィッシャーの逆行列を使用して勾配を変換するので計算時間を短くすることができる。
【００１１】
本発明の実施形態において、フィッシャーの逆行列の発散防止処理が行われる。
【００１２】
本実施形態によれば、フィッシャーの逆行列の計算中の発散が防止される。
【００１３】
本発明の実施形態において、更新ごとの更新量の大きさが大きく変化しないように更新量の調整が行われる。
【００１４】
本実施形態によれば、フィッシャーの逆行列の発散防止処理をおこなっても、更新ごとの更新量の大きさが大きく変化しない。
【００１５】
本発明による学習制御システムは、装置の状態を複数の状態のいずれかに分類し、状態ごとに求めた行動価値に基づいて行動を選択し実行する装置において、行動価値を学習する。本発明による学習制御システムは、複数の階層的な状態分類に対応する複数の行動価値の更新量をそれぞれ求める複数の学習器と、前記複数の学習器による前記複数の行動価値の更新量の、行動価値の空間における勾配を自然勾配法の勾配へ変換し、更新前の行動価値に加算することによって行動価値を更新する行動価値決定器と、を備える。前記行動価値決定器は、所定の個数に分類された状態及び行動に対応して更新される、前記所定の個数のフィッシャーの逆行列の内、更新される行動価値の更新量に対応するフィッシャーの逆行列を使用して勾配を変換する。
【００１６】
本発明による学習制御方法は、装置の状態を複数の状態のいずれかに分類し、状態ごとに求めた行動価値に基づいて行動を選択し実行する装置において、行動価値を学習する学習制御方法である。本発明による学習制御方法は、複数の階層的な状態分類に対応して複数の行動価値の更新量を求めるステップと、前記複数の行動価値の更新量の、行動価値の空間における勾配を自然勾配法の勾配へ変換し、更新前の行動価値に加算することによって行動価値を更新するステップと、を含む。前記行動価値を更新するステップにおいて、所定の個数に分類された状態及び行動に対応して更新される、前記所定の個数のフィッシャーの逆行列の内、更新される行動価値の更新量に対応するフィッシャーの逆行列を使用して勾配を変換する。
【００１７】
本発明によれば、自然勾配法を使用するので行動価値の学習速度が速くなる。また前記所定の個数のフィッシャーの逆行列の内、更新される行動価値の更新量に対応するフィッシャーの逆行列を使用して勾配を変換するので計算時間を短くすることができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態による学習制御システムを含む装置の構成を示す図である。
【図２】装置の置かれる環境の一例の状態遷移図である。
【図３】行動選択部の行動選択方法を示す流れ図である。
【図４】学習制御システムの構成を示す図である。
【図５】状態予測器の構成の一例を示す図である。
【図６】Ｑ１学習器の入力空間及びＱ２学習器の入力空間を示す図である。
【図７】状態と行動価値との関係を示す図である。
【図８】学習制御システムの学習方法を示す流れ図である。
【図９】Ｑ１学習器及びＱ２学習器のパラメータＯｉ及びＯｉｊを軸とする超空間を示す図である。
【図１０】状態と行動とＦ逆行列との関係を示す図である。
【図１１】図２に示した環境において、自然勾配法及び勾配法を使用して行動価値Ｑを求めた結果を示す図である。
【発明を実施するための形態】
【００１９】
図１は、本発明の一実施形態による学習制御システム１００を含む装置２００の構成を示す図である。装置２００は、たとえばロボットであってもよい。装置２００は、入力情報取得部２０１、入力情報処理部２０３、行動選択部２０５、行動出力部２０７、記憶部２０９及び学習制御システム１００を含む。
【００２０】
図２は、装置１００の置かれる環境の一例の状態遷移図である。装置１００は、エージェントとも呼称する。環境の入力は、エージェントの行動である。エージェントの行動をａ１及びａ２で示す。環境の出力は、エージェントの状態である。エージェントの状態をＳ１、Ｓ２、Ｇ１及びＧ２で示す。
【００２１】
環境の動作を以下に説明する。前回のエージェントの状態がＳ０（初期値）である場合、環境は、行動ａ１、ａ２によらず１／２の確率で状態Ｓ１、Ｓ２を出力する。前回のエージェントの状態がＳ１またはＳ２であり、行動ａ１が入力された場合、環境は、状態Ｓ１、Ｓ２の各場合に対し、それぞれ状態Ｇ１、Ｇ２を出力する。前回のエージェントの状態がＳ１またはＳ２であり、行動ａ２が入力された場合、環境は、状態Ｓ１、Ｓ２の各場合に対し、それぞれ状態Ｓ２、Ｓ１を出力する。  
【００２２】
入力情報取得部２０１は、環境３００からエージェントの状態Ｓ１、Ｓ２、Ｇ１またはＧ２を取得する。
【００２３】
入力情報処理部２０３は、エージェントの状態がＳ１またはＳ２である場合には、報酬値ｒ=０を計算し、状態と報酬値とを学習制御システム１００へ伝送する。入力情報処理部２０３は、エージェントの状態がＧ１である場合には、報酬値ｒ=ｒ１を計算し、状態と報酬値とを学習制御システム１００へ伝送する。入力情報処理部２０３は、エージェントの状態がＧ２である場合には、報酬値ｒ=ｒ２を計算し、状態と報酬値とを学習制御システム１００へ伝送する。ここで、報酬値は、エージェントの目的を達成することを尺度とした評価である。
【００２４】
学習制御システム１００は、状態ごとに行動価値を学習する。行動価値の学習には、報酬値が使用される。行動価値とは、ある状態である行動をとった場合の報酬値の時間重み付き期待値である。学習制御システム１００の動作については、後で詳細に説明する。
【００２５】
記憶部２０９は、入力情報処理部２０３、行動選択部２０５及び学習制御システム１００で使用する情報を記憶する。
【００２６】
行動選択部２０５は、以下に説明する方法によってエージェントの行動ａ１またはａ２を選択する。
【００２７】
図３は、行動選択部２０５の行動選択方法を示す流れ図である。なお、後で説明するように、以下のステップＳ１１０乃至ステップＳ１６０は、学習制御システム１００で実行してもよい。
【００２８】
図３のステップＳ１１０において、行動選択部２０５は、入力情報処理部２０３から状態情報を取得する。
【００２９】
図３のステップＳ１２０において、行動選択部２０５は、予定行動ａ１またはａ２を生成する。
【００３０】
図３のステップＳ１３０において、行動選択部２０５は、記憶部２０９から現在の状態における予定行動の行動価値Ｏｉ及びＯｉ，ｊを求める。行動価値Ｏｉ及びＯｉ，ｊについては後で説明する。
【００３１】
図３のステップＳ１４０において、行動選択部２０５は、行動価値Ｏｉ及びＯｉ，ｊから、現在の状態における予定行動の行動価値Ｏｉ＋Ｏｉ，ｊを算出する。行動価値Ｏｉ＋Ｏｉ，ｊについては後で説明する。
【００３２】
図３のステップＳ１５０において、行動選択部２０５は、全ての行動（ａ１及びａ２）について処理を行ったかどうか判断する。全ての行動について処理を行っていなければ、ステップＳ１２０に進む。全ての行動について処理を行っていれば、ステップＳ１６０に進む。
【００３３】
図３のステップＳ１６０において、行動選択部２０５は、全ての行動についての行動価値の内、最大値を有するものを定める。
【００３４】
図３のステップＳ１７０において、行動選択部２０５は、ε−グリーディー法にしたがって予定行動を選択する。すなわち、通常は、行動価値が最大値を有する予定行動を選択するが、確率εでランダムな行動を選択する。
【００３５】
行動出力部２０７は、行動ａ１またはａ２を環境３００へ出力する。
【００３６】
学習制御システム１００について以下に説明する。学習制御システム１００は、状態ごとに行動価値Ｏｉ及びＯｉ，ｊを更新する。更新の詳細な方法（学習方法）は後で説明する。
【００３７】
学習システム１００への入力がＳ１またはＳ２であれば、学習制御システム１００は、行動価値Ｏｉ及びＯｉ，ｊを更新した後、行動選択部２０５が、図３に示した方法を実行するように指示を送る。あるいは、学習制御システム１００が、行動価値Ｏｉ及びＯｉ，ｊを更新した後、図３のステップＳ１１０乃至Ｓ１６０を実行し、その後、行動選択部２０５が図３のステップＳ１７０を実行するように構成してもよい。
【００３８】
学習システム１００への入力がＧ１またはＧ２であれば、学習制御システム１００は、行動価値Ｏｉ及びＯｉ，ｊの更新のみを行う。
【００３９】
図４は、学習制御システム１００の構成を示す図である。学習制御システム１００は、目標値決定部１０１、Ｑ１学習器１０３、Ｑ２学習器１０５及び行動価値決定部１０７を含む。
【００４０】
最初に、Ｑ１学習器１０３及びＱ２学習器１０５について説明する。Ｑ１学習器１０３は、たとえば、状態Ｓｉ及び行動ａｋに対応する行動価値Ｏｉの学習を行なう。Ｑ２学習器１０５は、たとえば、状態Ｓｉｊ及び行動ａｋに対応する行動価値Ｏｉｊの学習を行なう。ここで、状態Ｓｉｊは、Ｓｉをさらに細分化した状態を示す。
【００４１】
図５は、状態予測器２０３１の構成の一例を示す図である。状態予測器２０３１は、入力情報処理部２０３内に設けてもよい。図５において、ｔは時刻を示し、ｘ（ｔ）、ｙ（ｔ）は、環境のパラメータを示し、ａ（ｔ）は、エージェントの行動を示す。状態予測器２０３１は、環境のパラメータ及びエージェントの行動から、次の時刻における環境のパラメータの予測値
【数１】
0005405252.tif 000002
を求める。また、ｔにおける環境パラメータの値ｙ（ｔ）と上記予測値との差分
【数２】
0005405252.tif 000003
が求められる。
【００４２】
なお、図２を使用したこれまでの説明においては、理解しやすくするために、環境の出力が、エージェントの状態Ｓ１、Ｓ２、Ｇ１及びＧ２であるとした。しかし、実際の環境では、エージェントの入力情報取得部２０１が環境のパラメータを取得し、入力情報処理部２０３が環境のパラメータに基づいてエージェントの状態を定める。
【００４３】
図６は、Ｑ１学習器１０３の入力空間及びＱ２学習器１０５の入力空間を示す図である。Ｑ１学習器１０３の入力空間は、環境のパラメータ及び行動
【数３】
0005405252.tif 000004
に基づいて定められるＳｉ及びＳｉ＋１である。Ｑ２学習器１０５の入力空間は、環境のパラメータ、行動及び状態予測器２０３１の出力と状態との差分
【数４】
0005405252.tif 000005
に基づいて定められるＳｉｊ、Ｓ（ｉ＋１）ｊ、Ｓｉ（ｊ＋１）及びＳ（ｉ＋１）（ｊ＋１）である。Ｑ２学習器１０５の入力空間は、上記差分を使用することによって、Ｑ１学習器１０３の入力空間をさらに細分化した入力空間となっている。
【００４４】
ここで、Ｑ１学習器１０３によって学習される行動価値をＯｉによって表し、Ｑ２学習器１０５によって学習される行動価値をＯｉｊによって表す。すなわち、Ｏｉは、Ｑ１に対応し、Ｏｉｊは、Ｑ２に対応する。
【００４５】
図７は、状態と行動価値との関係を示す図である。たとえば、行動ａｋに対する行動価値には、状態Ｓｉに対応する行動価値Ｏｉと、状態Ｓｉを細分化した状態Ｓｉｊに対応する行動価値Ｏｉｊとがある。行動ａｋに対する行動価値の値は、行動価値Ｏｉと行動価値Ｏｉｊとの和である。たとえば、状態がＳ１１である場合には、行動価値の値は、
【数５】
0005405252.tif 000006
である。
【００４６】
図４は、状態がＳ１１である場合を示している。学習制御システム１００の目標値決定部１０１は、報酬値ｒと現在の行動価値の値
【数６】
0005405252.tif 000007
から目標値
【数７】
0005405252.tif 000008
を求め、Ｑ１学習器１０３及びＱ２学習器１０５に目標値を与える。ここで、γは、割引率である。割引率は遠い将来に得られる報酬ほど割り引いて評価するための係数であり、０以上１以下の値である。
【００４７】
Ｑ１学習器１０３及びＱ２学習器１０５は、以下の式にしたがって更新量を計算する。
【数８】
0005405252.tif 000009
【００４８】
行動価値決定部１０７は、現在の行動価値Ｏ１及びＯ１１と行動価値の更新量
【数９】
0005405252.tif 000010
から更新された行動価値Ｏ１及びＯ１１を計算する。計算方法の詳細は以下に説明する。
【００４９】
図８は、学習制御システム１００の学習方法を示す流れ図である。
【００５０】
最初に本学習方法で使用する、フィッシャー情報行列の逆行列（以下の明細書及び図面おいてＦ逆行列と呼称する）について説明する。
【００５１】
図９は、Ｑ１学習器１０３及びＱ２学習器１０５のパラメータＯｉ及びＯｉｊを軸とする超空間を示す図である。図９（ａ）は、パラメータ軸を直交させたユークリッド空間を示し、図９（ｂ）は、リーマン空間を示す。コスト関数を等高線で示し、パラメータの最適値は、等高線の中心とする。図９（ａ）に示すように、通常は、等高線に垂直な方向へパラメータを更新すればよい（勾配法）。しかし、図９（ｂ）に示すように、空間自体がねじれている場合には、ねじれを修正しつつ更新を行う必要がある（自然勾配法）。Ｆ逆行列は、勾配法で計算された更新の方向、たとえば
【数１０】
0005405252.tif 000011
を自然勾配法の更新の方向へおきなおすための変換行列に相当する。
【００５２】
θは、Ｏｉ、Ｏｉｊを全て含んだベクトルとして、自然勾配法は以下の式で表せる。
【数１１】
0005405252.tif 000012
ここで、ｔは時刻、ηｔは更新率、Ｇ−１はＦ逆行列、ｌは対数尤度関数を示す。また、
【数１２】
0005405252.tif 000013
は、システムへの入力値を示し、
【数１３】
0005405252.tif 000014
は、システムの目標出力値を示す。
【００５３】
また、システムの入力ベクトルをＩで表し、その際のＱの更新目標値
【数１４】
0005405252.tif 000015
が与えられるとする。この入力ベクトルＩと更新目標値ｔとの組合せをサンプルと呼称する。いま、ｐ個のサンプルがあるとして、それらのサンプルに対する尤度、対数尤度は、以下の式によって定義できる。
【数１５】
0005405252.tif 000016
ここでσは、充分に小さな正の値である。
【００５４】
なお、式（３）において、Ｆ逆行列を単位行列とすれば、式（３）は、従来の勾配法を表す。
【００５５】
図８のステップＳ３１０において、学習制御システム１００の行動価値決定部１０７は、状態及び行動に対応するＦ逆行列を更新する。
【００５６】
図１０は、状態と行動とＦ逆行列との関係を示す図である。図１の縦の点線の左側は、状態Ｓ１において、行動ａ１が選択された場合を示し、この場合にＦ逆行列
【数１６】
0005405252.tif 000017
が更新される。図１の縦の点線の右側は、状態Ｓにおいて、行動ａ２が選択された場合を示し、この場合にＦ逆行列
【数１７】
0005405252.tif 000018
が更新される。
【００５７】
本発明の実施形態において、Ｆ逆行列は、行動および状態ごとに更新される。たとえば、図７において、Ｆ逆行列は、Ｓ１及びＳ２ごとに更新される。したがって、Ｆ逆行列の次数が制限され、計算負荷が増加するのが防止される。
【００５８】
Ｆ逆行列Ｇ−１の更新は、以下の式で示す甘利らによる近似解法を使用して行う。甘利らによる近似解法は、文献（Shun-ichi Amari, Heyoung Park, and Kenji Fukumizu: “Adaptive Method of Realizing Natural Gradient Learning For Multilayer Perceptrons”, (1999)）に記載されている。ただし、Ｆ逆行列Ｇ−１の初期状態は、単位行列とする。初期状態を単位行列とすることにより、初期状態では勾配法と同じ更新を行うので、システムが安定する。
【数１８】
0005405252.tif 000019
ここで、ｔは時刻を示し、εは定数を示す。
【数１９】
0005405252.tif 000020
に対応する
【数２０】
0005405252.tif 000021
は、以下の式によって定義される。
【数２１】
0005405252.tif 000022
ここで、Ｑ（Ｉｐ）は、システム出力であり、以下の式によって定義される。
【数２２】
0005405252.tif 000023
入力Ｉｐのもとで、Ｏｉ、Ｏｉｊが出力Ｑ（Ｉｐ）へ寄与する確率は、
【数２３】
0005405252.tif 000024
であるとする。また、入力Ｉｐが得られる確率をｑ（Ｉｐ）とする。
【００５９】
図８のステップＳ３２０において、行動価値決定部１０７は、Ｆ逆行列の発散防止処理を行う。具体的には、ｇ１１の要素で、Ｆ逆行列の全要素を割ることによってｇ１１が常に１となるようにすることによって発散を防止する。他方、式（３）のηｔは、任意に選択可能な正の値であるので、全要素を同じ値で割っても自然勾配法の意味は保たれる。
【数２４】
0005405252.tif 000025
【００６０】
図８のステップＳ３３０において、Ｑ１学習器１０３及びＱ２学習器１０５は、以下の式にしたがって更新量を計算する。
【数２５】
0005405252.tif 000026
【００６１】
図８のステップＳ３４０において、行動価値決定部１０７は、各Ｏの更新量を計算する。具体的に、Ｑ１＝Ｏ１、Ｑ２＝Ｏ１１であるので、
【数２６】
0005405252.tif 000027
となる。
【００６２】
図８のステップＳ３５０において、行動価値決定部１０７は、Ｆ逆行列を使用して以下の式によって勾配の方向を変換する。
【数２７】
0005405252.tif 000028
【００６３】
図８のステップＳ３６０において、行動価値決定部１０７は、更新比率を調整する。ステップＳ３２０において、Ｆ逆行列の全要素をｇ１１で割ることは、式（３）のηｔを更新することに等しいため、図９の矢印の長さに相当するパラメータの更新率が不安定となる。そこで、
【数２８】
0005405252.tif 000029
の更新量が一定と成るように以下の式によって更新比率を調整する。
【数２９】
0005405252.tif 000030
【００６４】
図８のステップＳ３７０において、行動価値決定部１０７は、以下の式によって各Ｏを更新する。
【数３０】
0005405252.tif 000031
【００６５】
図１１は、図２に示した環境において、自然勾配法及び勾配法を使用して行動価値Ｑを求めた結果を示す図である。図１１の横軸はステップ数を示し、図２の縦軸は、行動価値の値を示す。図１１（ａ）は自然勾配法を使用した場合を示し、図１１（ｂ）は、勾配法を使用した場合を示す。自然勾配法の場合は、勾配法の場合と比較して、行動価値が急速に変化する点（Ａ点）がより早く現れる。また、自然勾配法の場合には、Ａ点通過後にＯ１（ａ１）Ｏ１２（ａ２）の値がほぼ瞬時に収束している。このように、自然勾配法を使用することにより、収束速度が改善された。
【００６６】
図１１（ａ）において、収束後の行動価値の値を確認する。状態Ｓ１においてａ１の行動を行う価値は、
Ｏ１（ａ１）＋Ｏ１１（ａ１）
であり、個の値は、ほぼ１０である。この値は、報酬の値ｒ１に対応する。他方、状態Ｓ２においてａ１の行動を行う価値は、
Ｏ１（ａ１）＋Ｏ１２（ａ１）
であり、この値は、ほぼ１である。この値は、報酬の値ｒ２に対応する。
【００６７】
上記の実施形態においては、学習制御システムが二階層の学習器を含む場合について説明したが、三階層以上の学習器を含む場合にも本発明を同様に適用することができる。
【符号の説明】
【００６８】
１００…学習制御システム、１０１…目標値決定部、１０３…Ｑ１学習器、１０５…Ｑ２学習器、１０７…行動価値決定部
【図１】
0005405252.tif 000032
【図２】
0005405252.tif 000033
【図３】
0005405252.tif 000034
【図４】
0005405252.tif 000035
【図５】
0005405252.tif 000036
【図６】
0005405252.tif 000037
【図７】
0005405252.tif 000038
【図８】
0005405252.tif 000039
【図９】
0005405252.tif 000040
【図１０】
0005405252.tif 000041
【図１１】
0005405252.tif 000042