(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024118220
(43)【公開日】2024-08-30
(54)【発明の名称】強化学習プログラム、情報処理装置および強化学習方法
(51)【国際特許分類】
G06N 20/00 20190101AFI20240823BHJP
【FI】
G06N20/00
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023024535
(22)【出願日】2023-02-20
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】檀 隼人
(72)【発明者】
【氏名】石川 菜月
(72)【発明者】
【氏名】大川 佳寛
(72)【発明者】
【氏名】小川 雅俊
(57)【要約】
【課題】学習データにはない文章入力に対しても、認識精度を向上させる。
【解決手段】情報処理装置1は、強化学習におけるポリシーの最適化問題において、信頼領域を設定してポリシーの更新を行う際に、更新前後のポリシーの差を観測し、観測した差が信頼領域のある範囲内に留まるように、ポリシーの更新に至るアルゴリズムの動作に応じて、前記信頼領域の閾値を調整する。かかる情報処理装置1の処理は、例えば、携帯基地局の通信品質を担保しながら、省電力を行う制約条件付きのCPOに適用することができる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
強化学習におけるポリシーの最適化問題において、
信頼領域を設定してポリシーの更新を行う際に、更新前後のポリシーの差を観測し、
観測した差が信頼領域のある範囲内に留まるように、ポリシーの更新に至るアルゴリズムの動作に応じて、前記信頼領域の閾値を調整する
処理をコンピュータに実行させることを特徴とする強化学習プログラム。
【請求項2】
前記閾値を調整する処理は、
前記ポリシーの近似解と更新前のポリシーとの差が前記閾値以下であるという制約条件を満たすかどうかを判定し、前記制約条件を満たさないと判定した場合には前記ポリシーの近似解を前記更新前のポリシーに近づけて判定処理を繰り返し、前記制約条件を満たすと判定した場合には前記ポリシーの近似解を更新するという前記アルゴリズムの動作に基づいて、前記閾値を調整する
ことを特徴とする請求項1に記載の強化学習プログラム。
【請求項3】
前記閾値を調整する処理は、最初の前記判定処理で前記制約条件を満たすと判定した場合には、前記閾値を大きくし、最初の前記判定処理で前記制約条件を満たさないと判定した場合でも2回目以降の前記判定処理で前記制約条件を満たすと判定した場合には、前記閾値を所定値分小さくし、2回目以降の前記判定処理で前記制約条件を満たさないと判定した場合には、前記閾値を所定値分大きくする
ことを特徴とする請求項2に記載の強化学習プログラム。
【請求項4】
前記閾値を調整する処理は、前記アルゴリズムの動作により得られた、前記閾値に対する更新前後のポリシーの差に基づいて、前記閾値を調整する
ことを特徴とする請求項1に記載の強化学習プログラム。
【請求項5】
前記閾値を調整する処理は、前記閾値に対する更新前後のポリシーの差が第1の基準値以上である場合に、前記閾値を所定値分大きくし、前記閾値に対する更新前後のポリシーの差が前記第1の基準値未満である場合に、前記閾値を所定値分小さくする
ことを特徴とする請求項4に記載の強化学習プログラム。
【請求項6】
前記閾値を調整する処理は、
前記ポリシーの近似解と更新前のポリシーとの差が前記閾値以下であるという制約条件を満たすかどうかを判定し、前記制約条件を満たさないと判定した場合には前記ポリシーの近似解を前記更新前のポリシーに近づけて判定処理を繰り返し、前記制約条件を満たすと判定した場合には前記ポリシーの近似解を更新するという前記アルゴリズムにおける更新に至る繰り返し回数に基づいて、前記閾値を調整する
ことを特徴とする請求項1に記載の強化学習プログラム。
【請求項7】
前記閾値を調整する処理は、前記繰り返し回数が第2の基準値以上である場合に、前記閾値を所定値分小さくし、前記繰り返し回数が前記第2の基準値未満である場合に、前記閾値を所定値分大きくする
ことを特徴とする請求項6に記載の強化学習プログラム。
【請求項8】
強化学習におけるポリシーの最適化問題において、
信頼領域を設定してポリシーの更新を行う際に、更新前後のポリシーの差を観測する観測部と、
前記観測部によって観測された差が信頼領域のある範囲内に留まるように、ポリシーの更新に至るアルゴリズムの動作に応じて、前記信頼領域の閾値を調整する調整部と、
を有することを特徴とする情報処理装置。
【請求項9】
強化学習におけるポリシーの最適化問題において、
信頼領域を設定してポリシーの更新を行う際に、更新前後のポリシーの差を観測し、
観測した差が信頼領域のある範囲内に留まるように、ポリシーの更新に至るアルゴリズムの動作に応じて、前記信頼領域の閾値を調整する
処理をコンピュータが実行することを特徴とする強化学習方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、強化学習プログラムなどに関する。
【背景技術】
【0002】
従来、ある環境に対してポリシーに基づき行動を決定し、その結果得られる報酬を基にポリシーを更新することで、報酬が最適化されるようにポリシーを更新(改善)していく強化学習(Reinforcement learning)の技術がある。
【0003】
ポリシーを更新する手法として、例えば、信頼領域ポリシー最適化(TRPO:Trust Region Policy Optimization)が知られている。かかるTRPOは、以下の式(1)のように、強化学習におけるポリシーの更新を、更新前と更新後とのポリシー間のKL距離(Kullback-Leibler divergence)の制約条件付き最適化問題として捉える。なお、π
old,π
newは、更新前,更新後のポリシー(確率分布)である。J(・)は、報酬期待値である。E[D
KL(π
new||π
old)]は、更新前と更新後とのポリシー間のKL距離の期待値である。
【数1】
【0004】
DKL(πnew||πold)で表されるKL距離は、2つの確率分布間の差を表す指標である。したがって、TRPOは、更新前と更新後とのポリシーの差に上限δを設けたうえで、報酬期待値の向上幅が最大となるポリシーπnewを求めるアルゴリズムといえる。なお、実際、報酬期待値J(・)やKL距離の期待値E[DKL(πnew||πold)]を厳密に求めることは困難であるので、更新前のポリシーで収集したデータを用いたポリシーの近似値を使用して報酬期待値やKL距離の期待値を求める。この際、更新前と更新後とのポリシーが大きく異なっていると、近似が使用できないので、信頼できる領域としてKL距離に上限δが設けられている。
【0005】
また、TRPOの派生アルゴリズムとしてCPO(Constrained Policy Optimizaion)がある。CPOは、ポリシーに対して物理的な制約などを考慮する際に用いられるアルゴリズムである。CPOも、TRPOと同様に、KL距離に上限を設けた最適化問題を考慮し、ポリシーの更新を行う。
【0006】
また、強化学習において、方策(ポリシー)を改善することに関する技術が開示されている(例えば、特許文献1,2参照)。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2021-064222号公報
【特許文献2】特開2021-033332号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
ところで、信頼領域ポリシー最適化(TRPO)のようなKL距離に上限を設けた強化学習において、KL距離の上限δの値によって学習の進み方が変化することが知られている。しかしながら、学習には多大な時間がかかるため、様々な上限δの値で学習を行い、様々な上限δの値の中で最適な値を見つけるという作業は非効率である。すなわち、学習に最適な上限δの値を自動的に調整するのは難しいという問題がある。
【0009】
本発明は、1つの側面では、KL距離に上限を設けた強化学習において、学習に最適な上限の値を自動的に調整することを目的とする。
【課題を解決するための手段】
【0010】
1つの態様では、強化学習プログラムは、強化学習におけるポリシーの最適化問題において、信頼領域を設定してポリシーの更新を行う際に、更新前後のポリシーの差を観測し、観測した差が信頼領域のある範囲内に留まるように、ポリシーの更新に至るアルゴリズムの動作に応じて、前記信頼領域の閾値を調整する、処理をコンピュータに実行させる。
【発明の効果】
【0011】
1実施態様によれば、KL距離に上限を設けた強化学習において、学習に最適な上限の値を自動的に調整することができる。
【図面の簡単な説明】
【0012】
【
図1】
図1は、実施例1に係る情報処理装置の機能構成の一例を示す図である。
【
図2】
図2は、実施例1に係る学習で実施されるポリシー更新を説明する図である。
【
図3】
図3は、実施例1に係るδの調整を説明する図である。
【
図4】
図4は、実施例1に係る強化学習処理のフローチャートの一例を示す図である。
【
図5】
図5は、実施例1に係る調整処理のフローチャートの一例を示す図である。
【
図6】
図6は、実施例2に係る調整処理のフローチャートの一例を示す図である。
【
図7】
図7は、実施例3に係る調整処理のフローチャートの一例を示す図である。
【
図8】
図8は、実施例1~3に係る強化学習処理の検証結果の一例を示す図である。
【
図9】
図9は、強化学習プログラムを実行するコンピュータの一例を示す図である。
【
図10】
図10は、上限δを変えて学習の進み方を示すグラフである。
【発明を実施するための形態】
【0013】
以下に、本願の開示する強化学習プログラム、情報処理装置および強化学習方法の実施例を図面に基づいて詳細に説明する。なお、本発明は、実施例により限定されるものではない。
【0014】
まず、強化学習について説明する。強化学習は、ある環境に対してポリシーに基づき行動を決定し、その結果得られる報酬を基にポリシーを更新することで、報酬が最適化されるようにポリシーを更新していく。すなわち、強化学習は、行動や報酬などの履歴をもとにより良いポリシーに更新すべく学習する。
【0015】
強化学習には、信頼領域ポリシー最適化(TRPO)の手法がある。TRPOの手法は、強化学習におけるポリシーの更新を、更新前と更新後とのポリシー間のKL距離の制約条件付き最適化問題として捉える。TRPOは、前述した式(1)を用いたアルゴリズムである。すなわち、TRPOは、更新前と更新後のポリシーの差に上限値(式(1)のδ)を設けたうえで、報酬期待値(式(1)のJ(・))の向上幅が最大となるポリシーを求めるアルゴリズムである。
【0016】
実際、報酬期待値(式(1)のJ(・))やKL距離の期待値(式(1)のE[DKL(πnew||πold)])を厳密に求めることは困難であるので、TRPOは、更新前のポリシーで収集したデータを用いたポリシーの近似値を使用して報酬期待値やKL距離の期待値を求める。この際、更新前と更新後とのポリシーが大きく異なっていると、近似が使用できないので、信頼できる領域としてKL距離に上限δが設けられている。
【0017】
ここで、TRPOのようなKL距離に上限を設けた強化学習において、KL距離の上限δの値によって学習の進み方が変化することが知られている。
【0018】
図10は、上限δを変えて学習の進み方を示すグラフである。各グラフは、上限δの値を「10
-1」,「10
-2」,「10
-3」,「10
-4」,「10
-5」とした場合の学習結果である。各グラフは、横軸をポリシー更新回数とし、縦軸を報酬とする。各グラフは、同じ学習を3回実施した結果であり、平均および分散が表されている。黒の実線が平均である。
【0019】
これによると、報酬が早く(少ないポリシー更新回数で)安定的に上昇するのは、上限δが「10-3」の場合である。上限δが「10-1」については、報酬は上昇しているが、不安定である。上限δが「10-2」については、報酬は上昇しているが、分散(ばらつき)が大きい。また、上限δが「10-4」や「10-5」については、報酬は少しずつ上昇しているものの、学習速度が遅い。このように、上限δは、ポリシー最適化の学習に最適な値があることが示唆される。また、上限δは、対象の問題ごとに異なることが予想される。
【0020】
一般に、学習には多大な時間がかかるため、様々な上限δの値で学習を行い、最適な上限δの値を見つけるという作業は非効率である。すなわち、学習に最適な上限δの値を自動的に調整するのは難しい。
【0021】
そこで、以降の実施例では、更新前と更新後のポリシーの差の上限値δをポリシー最適化の学習と並行して動的に調整して、最適な上限値を探索する手法について説明する。
【実施例0022】
図1は、実施例に係る情報処理装置の機能構成の一例を示すブロック図である。
図1に示される情報処理装置1は、強化学習において、信頼領域を設定してポリシーの更新を行う際に、更新前と更新後のポリシーの差を観測し、観測した差が信頼領域のある範囲内に留まるように、信頼領域の閾値(上限値δ)を調整する。すなわち、情報処理装置1は、更新前と更新後のポリシーの差の上限値δをポリシー最適化の学習と並行して動的に調整する。
【0023】
情報処理装置1は、制御部10と、記憶部20とを有する。制御部10は、学習部11と、調整部12とを有する。記憶部20は、学習データ21を有する。なお、学習部11は、観測部の一例である。調整部12は、調整部の一例である。
【0024】
学習データ21は、学習で用いられるデータを記憶する。学習データ21は、ポリシーに基づいて行った行動、行動を行った際の環境の状態、得られた報酬をポリシーごとに記憶したログデータである。学習データ21は、Trajectoryということがある。
【0025】
学習部11は、信頼領域を設定してポリシーの更新を行う。例えば、学習部11は、学習データ21から現在のポリシーに基づきTrajectoryを収集する。そして、学習部11は、収集したTrajectoryを用いて、式(1)の最適化問題を満たすようにポリシーを更新する。すなわち、学習部11は、式(1)に基づいて、更新前と更新後とのポリシーの差DKL(π||πold)(KL距離)が上限δ以下となるような制約条件を設けたうえで、報酬期待値J(・)の向上幅が最大となるポリシーπnewを求めて更新する。なお、制約条件(式(1)右式参照)は、信頼領域の一例である。制約条件の上限値δは、信頼領域の閾値の一例である。
【0026】
実際のアルゴリズムでは、式(1)の最適化問題のポリシーπの厳密解を求めることは困難である。このため、学習部11は、求解可能である近似した最適化問題の解π*
newを用いたうえで、以下の処理を行う。学習部11は、解π*
newが更新前の解πoldとの関係で最適化問題の制約条件を満たすかどうかを判定する。すなわち、学習部11は、近似解π*
newと更新前の解πoldとの差がδ以下であるという制約条件を満たすかどうかを判定する。そして、学習部11は、近似解π*
newが更新前の解πoldとの関係で最適化問題の制約条件を満たさない場合には、近似解π*
newを更新前の解πoldに近づけて、再度判定処理を行う。そして、学習部11は、近似解π*
newが更新前の解πoldとの関係で最適化問題の制約条件を満たせば、ポリシーを近似解π*
newに更新する。すなわち、学習部11は、判定処理を繰り返すことで、式(1)の最適化問題の制約条件を満たすことを保証する。なお、繰り返しの回数は、δの値によって変化する。このように、更新前の解πoldと近似解π*
newとのライン間で制約条件を満たす近似解を探索する処理のことを「ラインサーチ(Line search)」という。
【0027】
ここで、学習部11の学習で実施されるポリシー更新を、
図2を参照して説明する。
図2は、実施例1に係る学習で実施されるポリシー更新を説明する図である。
図2で示すπ
oldは、更新前のポリシーである。
図2で示すπ
*
newは、π
newの近似解である(例えば式(1)左式参照)。なお、π
*
newは、ラインサーチに応じてπ
oldとの関係で報酬期待値の向上幅が最大となる近似解となる。
【0028】
このような状況の下、学習部11は、π*
newが更新前のπoldとの関係で最適化問題の制約条件を満たすかどうかを判定する(例えば式(1)右式参照)。学習部11は、近似解π*
newが更新前の解πoldとの関係で最適化問題の制約条件を満たさない場合には、ラインサーチを実行する。すなわち、学習部11は、近似解π*
newを更新前の解πoldに近づけて(符号a1)、新たなπ*
newが更新前のπoldとの関係で最適化問題の制約条件を満たすかどうかの判定処理を再び行う(例えば式(1)右式参照)。そして、学習部11は、近似解π*
newが制約条件を満たせば、ポリシーを近似解π*
newに更新する。学習部11は、近似解π*
newが制約条件を満たさなければ、近似解π*
newが制約条件を満たすまでラインサーチを繰り返す(符号a2)。なお、学習部11は、最初のπ*
newが更新前のπoldとの関係で最適化問題の制約条件を満たす場合には、ラインサーチに入らないで、更新後のポリシーを最初の近似解π*
newに更新する。
【0029】
図1に戻って、調整部12は、1回分のポリシーの更新に基づいて、信頼領域の閾値を調整する。例えば、調整部12は、ラインサーチの動作に着目して、制約条件の上限値δを調整する。
【0030】
一例として、調整部12は、ラインサーチに入らないで(最初の判定処理で)ポリシーを更新した場合には、上限値δを予め定められた所定値分大きくする。これは、ラインサーチに入らないでも近似解π*
newを更新できたということは、近似の精度が十分であるといえるので、学習速度を向上させるために上限値δを大きくする。なお、所定値は、例えば、上限値δの大きさに応じて予め定義されれば良い。
【0031】
また、調整部12は、ラインサーチに入ってポリシーの更新に成功した場合には、上限値δを所定値分小さくする。これは、ラインサーチに入って近似解π*
newを更新したということは、近似の精度が十分でないといえるので、近似の精度を良くして正確なポリシーの更新を行わせるために、上限値δを小さくする。
【0032】
また、調整部12は、ラインサーチでポリシーの更新に失敗した場合には、上限値δを所定値分大きくする。これは、ラインサーチを繰り返した結果π*
newが更新前のπoldに戻ってしまい、良いポリシーがみつからなかったので、ラインサーチの探索範囲を広げるべく、上限値δを大きくする。
【0033】
ここで、上限値δの調整について、
図3を参照して説明する。
図3は、実施例1に係るδの調整を説明する図である。
図3に示すように、調整部12は、学習部11による1回のポリシー更新の都度、上限値δを調整する。すなわち、調整部12は、上限値δを学習と並行して動的に調整し、最適な値を探索する。ここでは、
図3左は、予め定められた上限値δを変更しないで、ポリシーを更新した場合のグラフである。これに対して、
図3右は、1回のポリシー更新の結果を踏まえて、上限値δを動的に調整した場合のグラフである。上限値δを動的に調整した場合には、ポリシー更新の回数を重ねるにつれて、上限値δは最適値に向かって調整される。
【0034】
図4は、実施例1に係る強化学習処理のフローチャートの一例を示す図である。なお、
図4では、学習部11は、強化学習の更新前のポリシーとしてπ
oldを受け付けたとする。
【0035】
すると、学習部11は、更新前のポリシーに基づき、学習データ21からTrajectoryを収集する(ステップS11)。そして、学習部11は、最適化問題(1´)を定式化する(ステップS12)。例えば、学習部11は、収集したTrajectoryおよび式(1)を用いて、最適化問題を定式化する。
【0036】
そして、学習部11は、最適化問題(1´)の解π*
newを求める(ステップS13)。例えば、学習部11は、式(1)左式を用いて、πoldとの関係で報酬期待値の向上幅が最大となる近似解π*
newを求める。
【0037】
そして、学習部11は、ラインサーチを実行し、ポリシーを更新する(ステップS14)。例えば、学習部11は、近似解π*
newと更新前の解πoldとの差が上限値δ以下であるという制約条件を満たすかどうかを判定する。そして、学習部11は、近似解π*
newが更新前の解πoldとの関係で最適化問題の制約条件を満たさない場合には、近似解π*
newを更新前の解πoldに近づけて、再度判定処理を行う。そして、学習部11は、近似解π*
newが更新前の解πoldとの関係で最適化問題の制約条件を満たせば、ポリシーを近似解π*
newに更新する。
【0038】
続いて、調整部12は、上限値を示すδの値を調整する(ステップS15)。なお、δの値を調整する処理は、後述する。
【0039】
そして、学習部11は、ポリシー更新回数が最大か否かを判定する(ステップS16)。ポリシー更新回数が最大でないと判定した場合には(ステップS16;No)、学習部11は、次のポリシー更新の回の処理をすべく、ステップS11に移行する。
【0040】
一方、ポリシー更新回数が最大であると判定した場合には(ステップS16;Yes)、学習部11は、強化学習処理を終了する。
【0041】
図5は、実施例1に係る調整処理のフローチャートの一例を示す図である。
図5に示すように、調整部12は、学習部11によるポリシー更新について、ラインサーチ(Line search)に入ったか否かを判定する(ステップS21)。すなわち、調整部12は、ラインサーチに入ってポリシー更新をしたか否かを判定する。
【0042】
ラインサーチに入っていないと判定した場合には(ステップS21;No)、調整部12は、上限値δを所定値分大きくする(ステップS22)。これは、ラインサーチに入らないでも近似解π*
newを更新できたということは、近似の精度が十分であるといえるので、学習速度を向上させるために上限値δを大きくする。そして、調整部12は、調整処理を終了する。
【0043】
一方、ラインサーチに入ったと判定した場合には(ステップS21;Yes)、調整部12は、ラインサーチでポリシーの更新に成功したか否かを判定する(ステップS23)。ラインサーチでポリシーの更新に成功しなかった(失敗した)と判定した場合には(ステップS23;No)、調整部12は、上限値δを所定値分大きくする(ステップS24)。これは、ラインサーチを繰り返した結果π*
newが更新前のπoldに戻ってしまい、良いポリシーがみつからなかったので、ラインサーチの探索範囲を広げるべく、上限値δを大きくする。そして、調整部12は、調整処理を終了する。
【0044】
一方、ラインサーチでポリシーの更新に成功したと判定した場合には(ステップS23;Yes)、調整部12は、上限値δを所定値分小さくする(ステップS25)。これは、ラインサーチに入って近似解π*
newを更新したということは、近似の精度が十分でないといえるので、近似の精度を良くして正確なポリシーの更新を行わせるために、上限値δを小さくする。そして、調整部12は、調整処理を終了する。
【0045】
[実施例1の効果]
上記実施例1によれば、情報処理装置1は、強化学習におけるポリシーの最適化問題において、信頼領域を設定して1回のポリシーの更新を行う際に、更新前後のポリシーの差を観測する。情報処理装置1は、観測した差が信頼領域のある範囲内に留まるように、ポリシーの更新に至るアルゴリズムの動作に応じて、信頼領域の閾値を調整する。かかる構成によると、情報処理装置1は、強化学習に最適な信頼領域の閾値を自動的に調整できる。
【0046】
また、上記実施例1によれば、情報処理装置1では、閾値を調整する処理が、ポリシーの近似解と更新前のポリシーとの差が閾値以下であるという制約条件を満たすかどうかを判定する。閾値を調整する処理は、制約条件を満たさないと判定した場合にはポリシーの近似解を更新前のポリシーに近づけて判定処理を繰り返す。閾値を調整する処理は、制約条件を満たすと判定した場合にはポリシーの近似解を更新する。閾値を調整する処理は、かかるアルゴリズムの動作に基づいて、閾値を調整する。かかる構成によると、情報処理装置1は、ポリシーを更新するアルゴリズムの動作に着目して信頼領域の閾値を調整できる。
【0047】
また、上記実施例1によれば、情報処理装置1では、閾値を調整する処理が、最初の判定処理で制約条件を満たすと判定した場合には、閾値を所定値分大きくする。閾値を調整する処理は、最初の判定処理で制約条件を満たさないと判定した場合でも2回目以降の判定処理で制約条件を満たすと判定した場合には、閾値を所定値分小さくする。閾値を調整する処理は、2回目以降の判定処理で制約条件を満たさないと判定した場合には、閾値を大きくする。かかる構成によると、情報処理装置1は、ポリシーを更新するアルゴリズムの動作に基づいて最適な信頼領域の閾値を調整できる。
ところで、実施例1に係る情報処理装置1では、調整部12が、1回のポリシーの更新の際のラインサーチの動作(過程)に着目して、制約条件の上限値δを調整すると説明した。しかしながら、調整部12は、これに限定されず、1回のポリシーの更新の際のラインサーチの動作により得られる更新後のポリシーと更新前のポリシーとの差(KL距離)に着目して、制約条件の上限値δを調整しても良い。
実施例2に係る調整部12は、1回分のポリシーの更新に基づいて、信頼領域の閾値を調整する。例えば、調整部12は、ラインサーチの動作により得られる更新後のポリシーと更新前のポリシーとの差(KL距離)に着目して、制約条件の上限値δを調整する。
一例として、調整部12は、ラインサーチの動作により得られた更新後のポリシーと更新前のポリシーとの差であってラインサーチで用いられた制約条件の上限値δに対する差を計算する。すなわち、調整部12は、E[DKL(π*
new||πold)]/δを計算する。
そして、調整部12は、計算した値が第1の基準値以下である場合には、上限値δを予め定められた所定値分小さくする。これは、上限値δに対して実際の更新幅が小さく、正確のポリシーの更新を行うためには、もう少し小さな幅で更新を行う必要があると考えられるので、上限値δを小さくする。なお、所定値は、例えば、上限値δの大きさに応じて予め定義されれば良い。また、第1の基準値は、例えば、上限値δの大きさおよびKL距離の大きさに応じて予め定義されれば良い。
また、調整部12は、計算した値が第1の基準値より大きい場合には、上限値δを予め定められた所定値分大きくする。これは、上限値δに対して実際の更新幅が大きく、現在の上限値δで十分正確なポリシーの更新ができていると考えられるので、学習速度を向上させるために上限値δを大きくする。
一方、計算した値が基準値以下でないと判定した場合には(ステップS32;No)、調整部12は、上限値δを所定値分大きくする(ステップS34)。これは、上限値δに対して実際の更新幅が大きく、現在の上限値δで十分正確なポリシーの更新ができていると考えられるので、学習速度を向上させるために上限値δを大きくする。そして、調整部12は、調整処理を終了する。
また、上記実施例2によれば、情報処理装置1では、閾値を調整する処理が、閾値に対する更新前後のポリシーの差が第1の基準値以上である場合に、閾値を所定値分大きくし、閾値に対する更新前後のポリシーの差が第1の基準値未満である場合に、閾値を所定値分小さくする。かかる構成によれば、情報処理装置1は、信頼領域の閾値に対する更新前後のポリシーの差を用いることで最適な信頼領域の閾値を調整できる。