JP6958808B2 - 方策改善プログラム、方策改善方法、および方策改善装置 - Google Patents

方策改善プログラム、方策改善方法、および方策改善装置 Download PDF

Info

Publication number
JP6958808B2
JP6958808B2 JP2017177985A JP2017177985A JP6958808B2 JP 6958808 B2 JP6958808 B2 JP 6958808B2 JP 2017177985 A JP2017177985 A JP 2017177985A JP 2017177985 A JP2017177985 A JP 2017177985A JP 6958808 B2 JP6958808 B2 JP 6958808B2
Authority
JP
Japan
Prior art keywords
policy
matrix
state
feedback coefficient
coefficient matrix
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.)
Active
Application number
JP2017177985A
Other languages
English (en)
Other versions
JP2019053593A (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.)
Fujitsu Ltd
kinawa Institute of Science and Technology Graduate University
Original Assignee
Fujitsu Ltd
kinawa Institute of Science and Technology Graduate University
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 Fujitsu Ltd, kinawa Institute of Science and Technology Graduate University filed Critical Fujitsu Ltd
Priority to JP2017177985A priority Critical patent/JP6958808B2/ja
Priority to US16/130,469 priority patent/US11573537B2/en
Publication of JP2019053593A publication Critical patent/JP2019053593A/ja
Application granted granted Critical
Publication of JP6958808B2 publication Critical patent/JP6958808B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0205Adaptive 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/024Adaptive 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 parameter or coefficient is automatically adjusted to optimise the performance
    • G05B13/025Adaptive 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 parameter or coefficient is automatically adjusted to optimise the performance using a perturbation signal
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0205Adaptive 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/021Adaptive 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
    • G05B13/022Adaptive 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 using a perturbation of the variable
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/048Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Theoretical Computer Science (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Feedback Control In General (AREA)

Description

本発明は、方策改善プログラム、方策改善方法、および方策改善装置に関する。
従来、制御対象に対する入力に応じた制御対象の即時コストまたは即時報酬に基づき、制御対象の累積コストまたは累積報酬を示す価値関数を改善し、累積コストや累積報酬が最適化されるように方策を改善していく強化学習の技術がある。価値関数は、状態−行動価値関数(Q関数)または状態価値関数(V関数)などである。
先行技術としては、例えば、入力に対して摂動を与え、入力に対するTD誤差(Temporal Difference error)を算出し、そのTD誤差に基づき方策を与えるフィードバック係数行列を更新するCacla(Continuous actor−critic learning automaton)の技術がある。
S. J. Bradtke, B. E. Ydstie and A. G. Barto, "Adaptive linear quadratic control using policy iteration", In Proc. of the 1994 American Control Conference, pp. 3475−3479, Baltimore, USA, 1994. D. Silver, G. Lever, N. Heess, T. Degris, D. Wierstra and M. Riedmiller, "Deterministic policy gradient algorithms", In Proc. of the 31st International Conference on Machine Learning, pp.387−395, 2014. H. Van Hasselt, Reinforcement learning in continuous state and action spaces, In Reinforcement Learning (pp. 207−251), Springer, Berlin Heidelberg, 2012. L. Busoniu, R. Babuska, B. De Schutter, and D. Ernst, Reinforcement Learning and Dynamic Programming Using Function Approximators, CRC press, 2010. M. P. Deisenroth, G. Neumann and J. Peters, "A Survey on Policy Search for Robotics", Foundations and Trends in Robotics, Vol. 2, No. 1−2, pp. 1−142, 2013.
しかしながら、従来技術では、方策を与えるフィードバック係数行列を更新し、方策を効率よく改善していくことが難しい場合がある。例えば、入力またはフィードバック係数行列に対して、どのような大きさの摂動を与えれば、累積コストや累積報酬が最適化されていくかを判断することが難しく、方策を与えるフィードバック係数行列を改善していくことが難しい場合がある。
1つの側面では、本発明は、累積コストまたは累積報酬を最適化する方策を与えるフィードバック係数行列を生成することができる方策改善プログラム、方策改善方法、および方策改善装置を提供することを目的とする。
1つの実施態様によれば、状態価値関数による強化学習の方策改善において、前記状態価値関数を推定した推定状態価値関数に対するTD誤差を、前記方策を与えるフィードバック係数行列の成分それぞれに摂動を与えることにより生成し、前記強化学習における制御対象の状態変化が線形な差分方程式で規定され、かつ、前記制御対象の即時コストまたは即時報酬が状態および入力の2次形式で規定される場合、前記TD誤差および前記摂動に基づき、前記制御対象の状態に対する前記フィードバック係数行列に関する前記状態価値関数の勾配関数行列を推定した推定勾配関数行列を生成し、生成した前記推定勾配関数行列を用いて、前記フィードバック係数行列を更新する方策改善プログラム、方策改善方法、および方策改善装置が提案される。
本発明の一態様によれば、累積コストや累積報酬を最適化する方策を与えるフィードバック係数行列を生成することができるという効果を奏する。
図1は、実施の形態にかかる方策改善方法の一実施例を示す説明図である。 図2は、方策改善装置100のハードウェア構成例を示すブロック図である。 図3は、方策改善装置100の機能的構成例を示すブロック図である。 図4は、制御対象110の具体例を示す説明図(その1)である。 図5は、制御対象110の具体例を示す説明図(その2)である。 図6は、バッチ処理形式の強化学習処理手順の一例を示すフローチャートである。 図7は、逐次処理形式の強化学習処理手順の一例を示すフローチャートである。 図8は、方策改善処理手順の一例を示すフローチャートである。 図9は、推定処理手順の一例を示すフローチャートである。 図10は、更新処理手順の一例を示すフローチャートである。
以下に、図面を参照して、本発明にかかる方策改善プログラム、方策改善方法、および方策改善装置の実施の形態を詳細に説明する。
(実施の形態にかかる方策改善方法の一実施例)
図1は、実施の形態にかかる方策改善方法の一実施例を示す説明図である。方策改善装置100は、所定のタイミングで、方策(policy)を改善し、その方策によって制御対象110に対する入力(input)を決定することにより、制御対象110を制御するコンピュータである。方策改善装置100は、例えば、サーバやPC(Personal Computer)、マイクロコントローラなどである。
制御対象110は、何らかの事象であり、例えば、現実に存在する物理系である。制御対象は環境(environment)とも呼ばれる。制御対象110は、具体的には、サーバルームや発電機などである。方策は、フィードバック係数行列により制御対象110に対する入力値を決定する方程式である。方策は、制御則(control law)とも呼ばれる。
方策の改善は、方策を与えるフィードバック係数行列の更新に対応する。方策の改善は、累積コストや累積報酬がより効率よく最適化されるように方策を変更することである。入力(input)は、制御対象110に対する操作である。入力は、行動(action)とも呼ばれる。制御対象110に対する入力に応じて、制御対象110の状態(state)が変化する。
ここで、上述した非特許文献1〜非特許文献5などを参考に、方策を与えるフィードバック係数行列を更新していくことにより方策の改善を図り、制御対象110を制御するいくつかの制御手法が考えられる。例えば、価値関数として状態−行動価値関数を採用する第1の制御手法が考えられる。
しかしながら、第1の制御手法は、制御対象110の入力と状態とが線形従属の関係であると、累積コストや累積報酬が最適化されるように、方策を効率よく改善していくことが難しい。累積コストや累積報酬の最適化は、累積コストの最小化または状態価値関数が示す累積報酬の最大化に対応する。
これに対し、制御対象110の入力と状態とが線形従属の関係であっても、方策を効率よく改善しやすくなるように、価値関数として状態価値関数を採用する第2の制御手法や第3の制御手法が考えられる。
第2の制御手法として、例えば、Caclaのように方策が生成した入力に対して摂動を与え、入力に対するTD誤差に基づき、方策を与えるフィードバック係数行列を更新する制御手法が考えられる。しかしながら、第2の制御手法について、入力に対して、どのような大きさの摂動を与えれば、累積コストや累積報酬が最適化されていくかを判断することは難しい。
ここで、累積コストや累積報酬を最適化するためには、状態価値関数の勾配に沿った方向に方策を変化させることが好ましいという性質がある。しかしながら、状態価値関数の勾配を求めることが難しいため、第2の制御手法は、状態価値関数の勾配とは無関係に摂動を生成してしまう。このため、第2の制御手法では、入力に与える摂動の大きさを変えながら、累積コストや累積報酬が最適化されるかを繰り返し試行することになってしまい、累積コストや累積報酬が効率よく最適化されるように、方策を効率よく改善していくことが難しい。
また、第3の制御手法として、例えば、方策を与えるフィードバック係数行列に摂動行列を加え、入力に対するフィードバック係数行列に関するTD誤差に基づき、方策を与えるフィードバック係数行列を更新する制御手法が考えられる。しかしながら、第3の制御手法について、フィードバック係数行列に、どのような摂動行列を加えれば、累積コストや累積報酬が最適化されていくかを判断することは難しい。
ここで、累積コストや累積報酬を最適化するためには、状態価値関数の勾配に沿った方向にフィードバック係数行列を変化させることが好ましいという性質がある。しかしながら、状態価値関数の勾配を求めることが難しいため、第3の制御手法は、状態価値関数の勾配とは無関係に摂動行列を生成してしまう。このため、第3の制御手法では、フィードバック係数行列に与える摂動行列の各成分の大きさを変えながら、累積コストや累積報酬が最適化されるかを繰り返し試行することになってしまう。結果、第3の制御手法では、累積コストや累積報酬が効率よく最適化されるように、方策を効率よく改善していくことが難しい。
そこで、本実施の形態では、制御対象110の性質を利用し、方策を与えるフィードバック係数行列の各成分について、摂動に対する反応度合いを示す偏微分を算出する方策改善方法について説明する。この方策改善方法によれば、算出した偏微分に基づき、状態に対するフィードバック係数行列に関する状態価値関数の勾配関数行列を推定することができ、累積コストや累積報酬が最適化されるようにフィードバック係数行列を効率よく更新することができる。
図1の例では、制御対象110は、制御対象110の状態変化が離散時間線形時不変確定状態方程式であらわされ、制御対象110の状態方程式と、即時コストまたは即時報酬の2次形式の方程式とにおける係数行列が未知である状況である。また、制御対象110は、制御対象110の状態が出力(output)になり、制御対象110の状態が直接観測可能である状況である。
図1の例では、制御対象110の状態変化が、線形差分方程式で規定され、かつ、制御対象110の即時コストまたは即時報酬が、制御対象110の状態および制御対象110への入力の2次形式で規定される。
方策改善装置100は、状態価値関数を推定した推定状態価値関数に対するTD誤差を、方策を与えるフィードバック係数行列の成分それぞれに摂動を与えることにより生成する。TD誤差を生成する具体例は、例えば、図8および図9を用いて後述する。これによれば、方策改善装置100は、フィードバック係数行列の各成分について摂動に対する反応度合いを示す偏微分の結果を取得することができる。
方策改善装置100は、TD誤差および摂動に基づき、状態に対するフィードバック係数行列に関する状態価値関数の勾配関数行列を推定した推定勾配関数行列を生成する。推定勾配関数行列を生成する具体例は、例えば、図9および図10を用いて後述する。これによれば、方策改善装置100は、任意の状態を代入可能な推定勾配関数行列を生成することができる。
方策改善装置100は、生成した推定勾配関数行列を用いて、フィードバック係数行列を更新する。フィードバック係数行列を更新する具体例は、例えば、図10を用いて後述する。これによれば、方策改善装置100は、任意の状態を代入した推定勾配関数行列の推定値に基づき、フィードバック係数行列を更新することができる。
これにより、方策改善装置100は、フィードバック係数行列に、どのような摂動行列を加えれば、累積コストや累積報酬が最適化されていくかを判断することができるようになる。結果として、方策改善装置100は、状態価値関数を改善し、累積コストや累積報酬が効率よく最適化されるように、フィードバック係数行列を更新することができ、方策を効率よく改善していくことができる。状態価値関数の改善は、累積コストの場合は全ての状態で価値関数の値がより小さくなることであり、累積報酬の場合は全ての状態で価値関数の値がより大きくなることである。
(方策改善装置100のハードウェア構成例)
次に、図2を用いて、図1に示した方策改善装置100のハードウェア構成例について説明する。
図2は、方策改善装置100のハードウェア構成例を示すブロック図である。図2において、方策改善装置100は、CPU(Central Processing Unit)201と、メモリ202と、ネットワークI/F(Interface)203と、記録媒体I/F204と、記録媒体205とを有する。また、各構成部は、バス200によってそれぞれ接続される。
ここで、CPU201は、方策改善装置100の全体の制御を司る。メモリ202は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU201のワークエリアとして使用される。メモリ202に記憶されるプログラムは、CPU201にロードされることで、コーディングされている処理をCPU201に実行させる。
ネットワークI/F203は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F203は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F203には、例えば、モデムやLANアダプタ、シリアル通信アダプタなどを採用することができる。
記録媒体I/F204は、CPU201の制御に従って記録媒体205に対するデータのリード/ライトを制御する。記録媒体I/F204は、例えば、ディスクドライブ、SSD(Solid State Drive)、USB(Universal Serial Bus)ポートなどである。記録媒体205は、記録媒体I/F204の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体205は、例えば、ディスク、半導体メモリ、USBメモリなどである。記録媒体205は、方策改善装置100から着脱可能であってもよい。
方策改善装置100は、上述した構成部のほか、例えば、キーボード、マウス、ディスプレイ、タッチパネル、プリンタ、スキャナなどを有してもよい。また、方策改善装置100は、記録媒体I/F204や記録媒体205を有していなくてもよい。
(方策改善装置100の機能的構成例)
次に、図3を用いて、方策改善装置100の機能的構成例について説明する。
図3は、方策改善装置100の機能的構成例を示すブロック図である。方策改善装置100は、記憶部300と、観測部301と、推定部302と、決定部303と、出力部304とを含む。
記憶部300は、例えば、図2に示したメモリ202や記録媒体205などの記憶領域によって実現される。観測部301〜出力部304は、制御部となる機能である。観測部301〜出力部304は、具体的には、例えば、図2に示したメモリ202や記録媒体205などの記憶領域に記憶されたプログラムをCPU201に実行させることにより、または、ネットワークI/F203により、その機能を実現する。各機能部の処理結果は、例えば、図2に示したメモリ202や記録媒体205などの記憶領域に記憶される。
記憶部300は、制御対象110の入力と、状態と、即時コストまたは即時報酬とを蓄積する。これにより、記憶部300は、制御対象110の入力と、状態と、即時コストまたは即時報酬とを、推定部302や決定部303に参照させることができる。
観測部301は、制御対象110の状態と、即時コストまたは即時報酬とを観測し、記憶部300に出力する。これにより、観測部301は、制御対象110の状態と、即時コストまたは即時報酬とを記憶部300に蓄積させることができる。
推定部302は、状態価値関数を推定した推定状態価値関数を更新する。推定部302は、例えば、一括最小二乗法、逐次最小二乗法、一括LSTDアルゴリズム、逐次LSTDアルゴリズムなどを用いて、推定状態価値関数の係数を更新することにより、推定状態価値関数を更新する。
推定部302は、具体的には、図6に後述するステップS604において、推定状態価値関数の係数を更新することにより、推定状態価値関数を更新する。これにより、推定部302は、推定状態価値関数を、フィードバック係数行列を更新するために用いることができる。また、推定部302は、状態価値関数を改善することができる。
一括最小二乗法、逐次最小二乗法、一括LSTDアルゴリズム、逐次LSTDアルゴリズムなどについては、下記非特許文献6や下記非特許文献7を参照することができる。
非特許文献6:Y.Zhu and X.R.Li. Recursive least squares with linear constraints. Communications in Information and Systems, vol.7, no.3, pp.287−312, 2007.
非特許文献7:Christoph Dann and Gerhard Neumann and Jan Peters. Policy Evaluation with Temporal Differences: A Survey and Comparison. Journal of Machine Learning Research, vol.15, pp.809−883, 2014.
推定部302は、状態価値関数を推定した推定状態価値関数に対するTD誤差を、方策を与えるフィードバック係数行列の成分それぞれに摂動を与えることにより生成する。方策改善装置100は、例えば、図8に後述するステップS802〜S804において、方策を与えるフィードバック係数行列の成分それぞれに摂動を与える。
方策改善装置100は、例えば、図8に後述するステップS805、および図9に後述するステップS901において、摂動に対応する、状態価値関数を推定した推定状態価値関数に対するTD誤差を生成することができる。これにより、推定部302は、フィードバック係数行列の各成分について摂動に対する反応度合いを示す偏微分の結果を取得することができる。
推定部302は、制御対象110の状態変化が線形な差分方程式で規定され、かつ、制御対象110の即時コストまたは即時報酬が状態および入力の2次形式で規定されることを利用し、推定勾配関数行列を生成する。推定勾配関数行列は、制御対象110の状態に対するフィードバック係数行列に関する状態価値関数の勾配関数行列を推定した行列である。推定部302は、例えば、TD誤差および摂動に基づき、推定勾配関数行列を生成する。
推定部302は、具体的には、フィードバック係数行列の各成分について生成されたTD誤差を摂動で除算した結果と、状態価値関数をフィードバック係数行列の各成分で微分した結果とを対応付けて、勾配関数行列の各成分を推定した推定成分を生成する。ここで、推定部302は、状態価値関数をフィードバック係数行列の各成分で微分した結果を、状態に依存するベクトルと、状態に依存しないベクトルとの積で規定する。
推定部302は、より具体的には、図9に後述するステップS902〜S905において、勾配関数行列の各成分を推定した推定成分を、任意の状態を代入可能な形式で生成する。そして、推定部302は、図10に後述するステップS1001において、勾配関数行列を推定した推定勾配関数行列を生成する。
ここで、推定部302は、フィードバック係数行列の各成分について生成されたTD誤差を摂動で除算した結果と、状態価値関数をフィードバック係数行列の各成分で微分した結果とを対応付けて形成される後述する式(16)を用いる。
ここで、推定部302は、勾配関数行列の各成分を推定した推定成分を生成する際に、一括最小二乗法、逐次最小二乗法、一括LSTDアルゴリズム、逐次LSTDアルゴリズムなどを用いてもよい。これにより、推定部302は、任意の状態を代入可能な推定勾配関数行列を生成することができる。
推定部302は、生成した推定勾配関数行列を用いて、フィードバック係数行列を更新する。推定部302は、例えば、図10に後述するステップS1002において、推定勾配関数行列を用いて、フィードバック係数行列を更新する。これにより、推定部302は、状態を代入した推定勾配関数行列の推定値に基づき、フィードバック係数行列を更新することができる。
決定部303は、更新したフィードバック係数行列を用いた方策に基づいて、制御対象110に対する入力値を決定する。これにより、決定部303は、累積コストや累積報酬を最適化することができる入力値を決定することができる。
出力部304は、決定した入力値を制御対象110に対して出力する。また、出力部304は、決定した入力値を記憶部300に対して出力する。これにより、出力部304は、入力値を記憶部300に記憶し、推定部302や決定部303に参照させることができる。
(強化学習の実施例)
次に、強化学習の実施例について説明する。実施例において、下記式(1)〜下記式(9)によって、制御対象110の状態方程式と、即時コストの2次形式の方程式と、方策とが規定され、問題設定が行われる。実施例において、制御対象110の状態は、直接観測可能である。
Figure 0006958808
上記式(1)は、制御対象110の状態方程式である。tは、単位時間の倍数で示される時刻である。t+1は、時刻tから単位時間経過した次の時刻である。xt+1は、次の時刻t+1における状態である。xtは、時刻tにおける状態である。utは、時刻tにおける入力である。A、Bは、係数行列である。上記式(1)は、次の時刻t+1における状態xt+1が、時刻tにおける状態xtと、時刻tにおける入力utによって決定される関係があることを示す。係数行列A,Bは、未知である。
Figure 0006958808
上記式(2)は、状態x0が、n次元であることを示す。nは、既知である。
Figure 0006958808
上記式(3)は、入力utが、m次元であることを示す。
Figure 0006958808
上記式(4)は、係数行列Aが、n×n次元である(n行n列である)ことを示し、係数行列Bが、n×m次元である(n行m列である)ことを示す。(A,B)は可安定(stabilizable)である。
Figure 0006958808
上記式(5)は、制御対象110の即時コストの方程式である。ctは、時刻tにおける入力utに応じて単位時間後に発生する即時コストである。上付き文字Tは、転置を示す。上記式(5)は、即時コストctが、時刻tにおける状態xtと、時刻tにおける入力utとの2次形式によって決定される関係があることを示す。係数行列Q,Rは、未知である。即時コストctは、直接観測可能である。
Figure 0006958808
上記式(6)は、係数行列Qが、n×n次元であることを示す。≧0は、半正定値対称行列を示す。また、上記式(6)は、係数行列Rが、m×m次元であることを示す。>0は、正定値対称行列を示す。
Figure 0006958808
tは、時刻tに用いられるフィードバック係数行列であって、状態xtに関する係数行列を示す。上記式(7)は、時刻tにおける状態xtに基づいて、時刻tにおける入力utを決定する方程式である。
Figure 0006958808
上記式(8)は、フィードバック係数行列Ftが、m×n次元であることを示す。以下の説明では、フィードバック係数行列Ftを単に「フィードバック係数行列F」と表記する場合がある。次に、方策改善装置100がフィードバック係数行列Fを更新する具体例について説明する。
(フィードバック係数行列Fを更新する具体例)
方策改善装置100は、フィードバック係数行列Fの(i,j)の成分Fijに摂動を加える。(i,j)は、行列の成分を特定するインデックスである。インデックス(i,j)は、例えば、行列Fのi行j列の成分を特定する。
方策改善装置100は、具体的には、フィードバック係数行列F+εEijの数式によって、フィードバック係数行列Fの(i,j)の成分Fijに摂動を加える。Eijは、インデックス(i,j)で特定される成分が1、その成分以外の成分が0であるm×n次元行列である。εは、実数である。
方策改善装置100は、上記式(8)のFtに代わり、フィードバック係数行列F+εEijを用いて、入力を生成する。ここで、TD誤差は、フィードバック係数行列Fの(i,j)の成分Fijに関する状態価値関数の偏微分係数(partial differential coefficient)によって表現することができる。
さらに、制御対象110の状態変化が線形時不変確定ダイナミクスに従い、即時コストが2次形式で表現される場合、状態価値関数は、下記式(9)のように2次形式で表現される。
Figure 0006958808
このため、状態価値関数を、フィードバック係数行列Fの(i,j)の成分Fijで偏微分した関数∂V/∂Fij(x:F)は、下記式(11)のように2次形式で表現される。以下の説明では、偏微分した関数を「偏導関数(partial derivative)」と表記する場合がある。
Figure 0006958808
方策改善装置100は、上記式(10)を利用し、フィードバック係数行列Fの(i,j)の成分Fijに関する偏導関数∂V/∂Fij(x:F)の推定関数を算出する。以下の説明では、推定関数は、例えば、偏導関数∂V/∂Fij(x:F)の上部に^を付して、下記式(11)のように記載する場合がある。
Figure 0006958808
方策改善装置100は、フィードバック係数行列Fのそれぞれの成分に摂動を加え、同様に、偏導関数∂V/∂Fij(x:F)の推定関数を算出する。そして、方策改善装置100は、偏導関数∂V/∂Fijの推定関数を用いて、フィードバック係数行列の勾配関数行列▽FV(x:F)を推定した推定勾配関数行列を生成する。以下の説明では、推定勾配関数行列は、例えば、勾配関数行列▽FV(x:F)の上部に^を付して、下記式(12)のように記載する場合がある。
Figure 0006958808
これにより、方策改善装置100は、上記式(10)のように、状態xと分離された形式で、行列∂PF/∂Fijの推定行列を生成することができる。このため、方策改善装置100は、ある時刻に、勾配関数行列▽FV(x:F)を推定した推定勾配関数行列を任意の状態xを代入可能な形式で算出することができる。そして、方策改善装置100は、その時刻以降は、ある状態について勾配関数行列▽FV(x:F)の推定値を算出する場合、算出済みの推定勾配関数行列に、その状態を代入すればよくなる。
このように、方策改善装置100は、ある状態xに対する勾配関数行列▽FV(x:F)の推定値ではなく、ある時刻以降に利用可能である勾配関数行列▽FV(x:F)を推定した推定勾配関数行列を生成することができる。このため、方策改善装置100は、様々な状態について勾配関数行列▽FV(x:F)の推定値を算出することを比較的容易にすることができ、処理量の低減化を図ることができる。
また、方策改善装置100は、実際に観測した入力や状態、即時コストに基づいて勾配関数行列▽FV(x:F)を推定した推定勾配関数行列を生成するため、勾配関数行列▽FV(x:F)を推定した推定勾配関数行列を精度よく生成することができる。
また、方策改善装置100は、累積コストを効率よく最小化するように、フィードバック係数行列Fを更新することができる。このため、方策改善装置100は、制御対象110の状態が好ましい状態になるまでにかかる時間の低減化を図ることができる。方策改善装置100は、例えば、勾配関数行列▽FV(x:F)を用いない強化学習の技術に比べて、制御対象110の状態が好ましい状態になるまでにかかる時間の低減化を図ることができる。
また、方策改善装置100は、勾配関数行列▽FV(x:F)を推定した推定勾配関数行列に基づき、フィードバック係数行列Fを更新する際に、フィードバック係数行列Fの変化度合いを調整することができる。このため、方策改善装置100は、フィードバック係数行列Fの急変化による制御対象110への悪影響などを防止することができる。
例えば、状態価値関数が精度よく推定されていない段階でも、フィードバック係数行列Fの変化度合いを調整することができない場合が考えられる。この場合、フィードバック係数行列Fが急変化し、好ましくない係数行列になり、累積コストや累積報酬が最適化されるように制御対象110を制御することが難しく、制御対象110の安定性を損なう可能性がある。これに対し、方策改善装置100は、フィードバック係数行列Fの変化度合いを調整するため、状態価値関数が精度よく推定されていない段階でも、フィードバック係数行列Fの変化度合いを調整することができ、フィードバック係数行列Fを急変化しづらくすることができる。
また、方策改善装置100は、様々な時刻の状態について勾配関数行列▽FV(x:F)の推定値を算出した結果に基づいて、勾配関数行列▽FV(x:F)の推定値の統計値を算出することができる。このため、方策改善装置100は、累積コストを効率よく最小化するように、フィードバック係数行列Fを更新しやすくすることができる。
(制御対象110の具体例)
次に、図4および図5を用いて、制御対象110の具体例について説明する。
図4および図5は、制御対象110の具体例を示す説明図である。図4の例では、制御対象110は、熱源であるサーバ401と、CRACやChillerなどの冷却器402とを含むサーバルーム400である。入力は、冷却器402に対する設定温度や設定風量である。状態は、サーバルーム400に設けられたセンサ装置からのセンサデータなどであり、例えば、温度などである。状態は、制御対象110以外から得られる制御対象110に関するデータであってもよく、例えば、気温や天気などであってもよい。即時コストは、例えば、サーバルーム400の5分間の消費電力量である。価値関数は、例えば、サーバルーム400の累積消費電力量である。
方策改善装置100は、累積コストである累積消費電力量を効率よく最小化するように、フィードバック係数行列Fを更新することができる。このため、方策改善装置100は、制御対象110の累積消費電力量が最小化されるまでにかかる時間の低減化を図ることができ、サーバルーム400の運営コストの低減化を図ることができる。また、方策改善装置100は、サーバ401の使用状況の変化および気温の変化などが発生した場合も、その変化から比較的短い時間で、累積消費電力量を効率よく最小化することができる。
図5の例では、制御対象110は、発電機500である。入力は、発電機500に対する指令値である。状態は、発電機500に設けられたセンサ装置からのセンサデータであり、例えば、発電機500の発電量や発電機500のタービンの回転量などである。即時報酬は、例えば、発電機500の5分間の発電量である。価値関数は、例えば、発電機500の累積発電量である。
方策改善装置100は、累積報酬である累積発電量を効率よく最大化するように、フィードバック係数行列Fを更新することができる。このため、方策改善装置100は、制御対象110の累積発電量が最大化されるまでにかかる時間の低減化を図ることができ、発電機500の利益の増大化を図ることができる。また、方策改善装置100は、発電機500の状況の変化などが発生した場合も、その変化から比較的短い時間で、累積発電量を効率よく最大化することができる。また、制御対象110は、例えば、化学プラントや自律移動ロボット、産業用ロボットであってもよい。
(強化学習処理手順の一例)
次に、図6および図7を用いて、強化学習処理手順の一例について説明する。
図6は、バッチ処理形式の強化学習処理手順の一例を示すフローチャートである。図6において、まず、方策改善装置100は、フィードバック係数行列Fを初期化し、状態x0を観測し、入力u0を決定する(ステップS601)。
次に、方策改善装置100は、前回の入力ut-1に応じた、状態xtと、即時コストct-1とを観測し、入力ut=Fxtを算出する(ステップS602)。そして、方策改善装置100は、ステップS602をN回繰り返したか否かを判定する(ステップS603)。
ここで、N回繰り返していない場合(ステップS603:No)、方策改善装置100は、ステップS602の処理に戻る。一方で、N回繰り返している場合(ステップS603:Yes)、方策改善装置100は、ステップS604の処理に移行する。
方策改善装置100は、状態xt,xt-1,・・・,xt-N-1と、即時コストct-1,ct-2,・・・,ct-N-2とに基づいて、状態価値関数の推定関数を算出する(ステップS604)。
次に、方策改善装置100は、状態価値関数の推定関数に基づいて、フィードバック係数行列Fを更新する(ステップS605)。そして、方策改善装置100は、ステップS602の処理に戻る。これにより、方策改善装置100は、制御対象110を制御することができる。
図7は、逐次処理形式の強化学習処理手順の一例を示すフローチャートである。図7において、まず、方策改善装置100は、フィードバック係数行列Fと状態価値関数の推定関数とを初期化し、状態x0を観測し、入力u0を決定する(ステップS701)。
次に、方策改善装置100は、前回の入力ut-1に応じた、状態xtと、即時コストct-1とを観測し、入力ut=Fxtを算出する(ステップS702)。そして、方策改善装置100は、状態xt,xt-1と、即時コストct-1とに基づいて、状態価値関数の推定関数を更新する(ステップS703)。
次に、方策改善装置100は、ステップS703をN回繰り返したか否かを判定する(ステップS704)。ここで、N回繰り返していない場合(ステップS704:No)、方策改善装置100は、ステップS702の処理に戻る。一方で、N回繰り返している場合(ステップS704:Yes)、方策改善装置100は、ステップS705の処理に移行する。
次に、方策改善装置100は、状態価値関数の推定関数に基づいて、フィードバック係数行列Fを更新する(ステップS705)。そして、方策改善装置100は、ステップS702の処理に戻る。これにより、方策改善装置100は、制御対象110を制御することができる。
(方策改善処理手順の一例)
次に、図8を用いて、ステップS605の具体例であって、方策改善装置100がフィードバック係数行列Fを更新し、方策を改善する方策改善処理手順の一例について説明する。
図8は、方策改善処理手順の一例を示すフローチャートである。図8において、まず、方策改善装置100は、下記式(13)に基づいて、インデックスセットSを初期化する(ステップS801)。
Figure 0006958808
(i,j)は、行列の成分を特定するインデックスである。インデックス(i,j)は、例えば、行列のi行j列の成分を特定する。以下の説明では、mは、フィードバック係数行列Fの行数である。nは、フィードバック係数行列Fの列数である。
次に、方策改善装置100は、インデックスセットSから、インデックス(i,j)を取り出す(ステップS802)。そして、方策改善装置100は、コストct-1と状態xtとを観測し、下記式(14)に基づいて、入力utを算出する(ステップS803)。
Figure 0006958808
次に、方策改善装置100は、ステップS803をN’回繰り返したか否かを判定する(ステップS804)。ここで、N’回繰り返していない場合(ステップS804:No)、方策改善装置100は、ステップS803の処理に戻る。一方で、N’回繰り返している場合(ステップS804:Yes)、方策改善装置100は、ステップS805の処理に移行する。
次に、方策改善装置100は、係数Fijに関する状態価値関数の偏導関数の推定関数を、状態xt,xt-1,・・・,xt-N'-1と即時コストct-1,ct-2,・・・,ct-N'-2と状態価値関数の推定関数とを用いて算出する(ステップS805)。
そして、方策改善装置100は、インデックスセットSが空であるか否かを判定する(ステップS806)。ここで、空ではない場合(ステップS806:No)、方策改善装置100は、ステップS802の処理に戻る。一方で、空である場合(ステップS806:Yes)、方策改善装置100は、ステップS807の処理に移行する。
次に、方策改善装置100は、推定勾配関数行列を用いて、フィードバック係数行列Fを更新する(ステップS807)。そして、方策改善装置100は、方策改善処理を終了する。
(推定処理手順の一例)
次に、図9を用いて、ステップS805の具体例であって、係数Fijに関する状態価値関数の偏導関数の推定関数を算出する推定処理手順の一例について説明する。
図9は、推定処理手順の一例を示すフローチャートである。図9において、まず、方策改善装置100は、下記式(15)に基づいて、TD誤差δt-1,・・・,δt-N'-2を算出する(ステップS901)。
Figure 0006958808
次に、方策改善装置100は、下記式(16)に基づいて、TD誤差δt-1,・・・,δt-N'-2を、摂動εで除算した結果を取得する(ステップS902)。
Figure 0006958808
次に、方策改善装置100は、下記式(17)に基づいて、一括最小二乗法によって、ベクトルθFij Fの推定ベクトルを算出する(ステップS903)。
Figure 0006958808
Tは、転置を示す。○と×を重ねた記号は、クロネッカー積を示す。†は、ムーア−ペンローズ(Moore−Penrose)の一般化逆行列を示す。
上記式(17)は、上記式(16)に対応するベクトルと、状態に依存しないベクトルθFij Fの推定ベクトルおよび下記式(18)で規定される状態に依存する行列の積との近似等式を形成し、その近似等式を変形することにより得られる。
Figure 0006958808
ここで、状態に依存しないベクトルθFij Fの推定ベクトルおよび上記式(18)で規定される状態に依存する行列の積は、状態価値関数をフィードバック係数行列Fの(i,j)成分で微分した結果に対応する。
次に、方策改善装置100は、下記式(19)に基づいて、ベクトルθFij Fの推定ベクトルを用いて、行列∂PF/∂Fijの推定行列を生成する(ステップS904)。
Figure 0006958808
vec-1は、ベクトルを行列に逆変換する記号である。
次に、方策改善装置100は、下記式(20)に基づいて、状態価値関数をFijによって偏微分した偏導関数∂V/∂Fijの推定関数を算出する(ステップS905)。そして、方策改善装置100は、推定処理を終了する。
Figure 0006958808
(更新処理手順の一例)
次に、図10を用いて、ステップS807の具体例であって、方策改善装置100がフィードバック係数行列Fを更新する更新処理手順の一例について説明する。
図10は、更新処理手順の一例を示すフローチャートである。図10において、まず、方策改善装置100は、下記式(21)に基づいて、偏導関数∂V/∂Fijの推定関数を用いて、フィードバック係数行列の勾配関数行列▽FV(x:F)を推定した推定勾配関数行列を生成する(ステップS1001)。
Figure 0006958808
次に、方策改善装置100は、下記式(22)に基づいて、フィードバック係数行列Fを更新する(ステップS1002)。
Figure 0006958808
αは、重みである。そして、方策改善装置100は、更新処理を終了する。これにより、方策改善装置100は、状態価値関数を改善し、累積コストや累積報酬が効率よく最適化されるように、フィードバック係数行列Fを更新することができる。また、方策改善装置100は、任意のxが代入可能な推定勾配関数行列を生成することができる。
ここでは、方策改善装置100が、即時コストに基づく強化学習を実現する場合について説明したが、これに限らない。例えば、方策改善装置100が、即時報酬に基づく強化学習を実現する場合があってもよい。この場合、方策改善装置100は、上記式(22)に代わり、下記式(23)を用いるようにする。
Figure 0006958808
以上説明したように、方策改善装置100によれば、状態価値関数を推定した推定状態価値関数に対するTD誤差を、方策を与えるフィードバック係数行列の成分それぞれに摂動を与えることにより生成することができる。方策改善装置100によれば、TD誤差および摂動に基づき、制御対象110の状態に対するフィードバック係数行列に関する状態価値関数の勾配関数行列を推定した推定勾配関数行列を生成することができる。方策改善装置100によれば、生成した推定勾配関数行列を用いて、フィードバック係数行列を更新することができる。これにより、方策改善装置100は、フィードバック係数行列に基づいて、方策を効率よく改善することができる。
方策改善装置100によれば、フィードバック係数行列の各成分について生成されたTD誤差を摂動で除算した結果と、状態価値関数をフィードバック係数行列の各成分で微分した結果とを対応付けて、勾配関数行列の各成分を推定することができる。これにより、方策改善装置100は、状態を代入可能な形式で、推定勾配関数行列を生成することができる。
方策改善装置100によれば、状態価値関数をフィードバック係数行列の各成分で微分した結果を、状態に依存するベクトルと、状態に依存しないベクトルとの積で規定することができる。これにより、方策改善装置100は、任意の状態を代入可能な形式で、推定勾配関数行列を生成することができる。
なお、本実施の形態で説明した方策改善方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション、マイクロコントローラ等のコンピュータで実行することにより実現することができる。本実施の形態で説明した方策改善プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本実施の形態で説明した方策改善プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)状態価値関数による強化学習の方策改善プログラムであって、
前記状態価値関数を推定した推定状態価値関数に対するTD誤差を、前記方策を与えるフィードバック係数行列の成分それぞれに摂動を与えることにより生成し、
前記強化学習における制御対象の状態変化が線形な差分方程式で規定され、かつ、前記制御対象の即時コストまたは即時報酬が状態および入力の2次形式で規定される場合、前記TD誤差および前記摂動に基づき、前記制御対象の状態に対する前記フィードバック係数行列に関する前記状態価値関数の勾配関数行列を推定した推定勾配関数行列を生成し、
生成した前記推定勾配関数行列を用いて、前記フィードバック係数行列を更新する、
処理をコンピュータに実行させることを特徴とする方策改善プログラム。
(付記2)前記生成する処理は、前記フィードバック係数行列の各成分について生成された前記TD誤差を前記摂動で除算した結果と、前記状態価値関数を前記フィードバック係数行列の各成分で微分した結果とを対応付けて、前記勾配関数行列の各成分を推定した推定成分を生成する、ことを特徴とする付記1に記載の方策改善プログラム。
(付記3)前記状態価値関数を前記フィードバック係数行列の各成分で微分した結果は、状態に依存するベクトルと、状態に依存しないベクトルとの積で規定される、ことを特徴とする付記1または2に記載の方策改善プログラム。
(付記4)前記状態価値関数は、前記制御対象の状態の2次形式で規定される、ことを特徴とする付記1〜3のいずれか一つに記載の方策改善プログラム。
(付記5)状態価値関数による強化学習の方策改善方法であって、
前記状態価値関数を推定した推定状態価値関数に対するTD誤差を、前記方策を与えるフィードバック係数行列の成分それぞれに摂動を与えることにより生成し、
前記強化学習における制御対象の状態変化が線形な差分方程式で規定され、かつ、前記制御対象の即時コストまたは即時報酬が状態および入力の2次形式で規定される場合、前記TD誤差および前記摂動に基づき、前記制御対象の状態に対する前記フィードバック係数行列に関する前記状態価値関数の勾配関数行列を推定した推定勾配関数行列を生成し、
生成した前記推定勾配関数行列を用いて、前記フィードバック係数行列を更新する、
処理をコンピュータが実行することを特徴とする方策改善方法。
(付記6)状態価値関数による強化学習の方策改善装置であって、
前記状態価値関数を推定した推定状態価値関数に対するTD誤差を、前記方策を与えるフィードバック係数行列の成分それぞれに摂動を与えることにより生成し、
前記強化学習における制御対象の状態変化が線形な差分方程式で規定され、かつ、前記制御対象の即時コストまたは即時報酬が状態および入力の2次形式で規定される場合、前記TD誤差および前記摂動に基づき、前記制御対象の状態に対する前記フィードバック係数行列に関する前記状態価値関数の勾配関数行列を推定した推定勾配関数行列を生成し、
生成した前記推定勾配関数行列を用いて、前記フィードバック係数行列を更新する、
制御部を有することを特徴とする方策改善装置。
100 方策改善装置
110 制御対象
200 バス
201 CPU
202 メモリ
203 ネットワークI/F
204 記録媒体I/F
205 記録媒体
210 ネットワーク
300 記憶部
301 観測部
302 推定部
303 決定部
304 出力部
400 サーバルーム
401 サーバ
402 冷却器
500 発電機

Claims (5)

  1. 状態価値関数による強化学習の方策改善プログラムであって、
    前記状態価値関数を推定した推定状態価値関数に対するTD誤差を、前記強化学習の方策を与えるフィードバック係数行列の成分それぞれに摂動を与えることにより生成し、
    前記強化学習における制御対象の状態変化が線形な差分方程式で規定され、かつ、前記制御対象の即時コストまたは即時報酬が状態および入力の2次形式で規定される場合、前記TD誤差および前記摂動に基づき、前記制御対象の状態に対する前記フィードバック係数行列に関する前記状態価値関数の勾配関数行列を推定した推定勾配関数行列を生成し、
    生成した前記推定勾配関数行列を用いて、前記フィードバック係数行列を更新する、
    処理をコンピュータに実行させることを特徴とする方策改善プログラム。
  2. 前記生成する処理は、前記フィードバック係数行列の各成分について生成された前記TD誤差を前記摂動で除算した結果と、前記状態価値関数を前記フィードバック係数行列の各成分で微分した結果とを対応付けて、前記勾配関数行列の各成分を推定した推定成分を生成する、ことを特徴とする請求項1に記載の方策改善プログラム。
  3. 前記状態価値関数を前記フィードバック係数行列の各成分で微分した結果は、状態に依存するベクトルと、状態に依存しないベクトルとの積で規定される、ことを特徴とする請求項1または2に記載の方策改善プログラム。
  4. 状態価値関数による強化学習の方策改善方法であって、
    前記状態価値関数を推定した推定状態価値関数に対するTD誤差を、前記強化学習の方策を与えるフィードバック係数行列の成分それぞれに摂動を与えることにより生成し、
    前記強化学習における制御対象の状態変化が線形な差分方程式で規定され、かつ、前記制御対象の即時コストまたは即時報酬が状態および入力の2次形式で規定される場合、前記TD誤差および前記摂動に基づき、前記制御対象の状態に対する前記フィードバック係数行列に関する前記状態価値関数の勾配関数行列を推定した推定勾配関数行列を生成し、
    生成した前記推定勾配関数行列を用いて、前記フィードバック係数行列を更新する、
    処理をコンピュータが実行することを特徴とする方策改善方法。
  5. 状態価値関数による強化学習の方策改善装置であって、
    前記状態価値関数を推定した推定状態価値関数に対するTD誤差を、前記強化学習の方策を与えるフィードバック係数行列の成分それぞれに摂動を与えることにより生成し、
    前記強化学習における制御対象の状態変化が線形な差分方程式で規定され、かつ、前記制御対象の即時コストまたは即時報酬が状態および入力の2次形式で規定される場合、前記TD誤差および前記摂動に基づき、前記制御対象の状態に対する前記フィードバック係数行列に関する前記状態価値関数の勾配関数行列を推定した推定勾配関数行列を生成し、
    生成した前記推定勾配関数行列を用いて、前記フィードバック係数行列を更新する、
    制御部を有することを特徴とする方策改善装置。
JP2017177985A 2017-09-15 2017-09-15 方策改善プログラム、方策改善方法、および方策改善装置 Active JP6958808B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017177985A JP6958808B2 (ja) 2017-09-15 2017-09-15 方策改善プログラム、方策改善方法、および方策改善装置
US16/130,469 US11573537B2 (en) 2017-09-15 2018-09-13 Apparatus, method and recording medium for controlling system using temporal difference error

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017177985A JP6958808B2 (ja) 2017-09-15 2017-09-15 方策改善プログラム、方策改善方法、および方策改善装置

Publications (2)

Publication Number Publication Date
JP2019053593A JP2019053593A (ja) 2019-04-04
JP6958808B2 true JP6958808B2 (ja) 2021-11-02

Family

ID=65720124

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017177985A Active JP6958808B2 (ja) 2017-09-15 2017-09-15 方策改善プログラム、方策改善方法、および方策改善装置

Country Status (2)

Country Link
US (1) US11573537B2 (ja)
JP (1) JP6958808B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7188194B2 (ja) * 2019-03-07 2022-12-13 富士通株式会社 方策改善方法、方策改善プログラム、および方策改善装置
JP7171520B2 (ja) * 2019-07-09 2022-11-15 株式会社日立製作所 機械学習システム
JP7351135B2 (ja) * 2019-08-13 2023-09-27 富士通株式会社 方策改善方法、方策改善プログラム、および方策改善装置
JP2021064222A (ja) * 2019-10-15 2021-04-22 富士通株式会社 方策改善方法、方策改善プログラム、および方策改善装置
DE102023001622A1 (de) 2023-04-24 2024-10-24 Mercedes-Benz Group AG Verfahren zur Optimierung von Fahrzeugfunktionen

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6000827A (en) * 1993-09-10 1999-12-14 Fujitsu Limited System identifying device and adaptive learning control device
JP5120745B2 (ja) * 2005-03-10 2013-01-16 株式会社国際電気通信基礎技術研究所 コミュニケーションロボット
JP2007065929A (ja) * 2005-08-30 2007-03-15 Okinawa Institute Of Science & Technology 制御器、制御方法および制御プログラム
US8386612B2 (en) * 2009-02-10 2013-02-26 International Business Machines Corporation Optimizing migration policy during live virtual memory migration
EP2296062B1 (de) * 2009-09-09 2021-06-23 Siemens Aktiengesellschaft Verfahren zum rechnergestützten Lernen einer Steuerung und/oder Regelung eines technischen Systems
US8626350B2 (en) * 2010-04-14 2014-01-07 King Fahd University Of Petroleum And Minerals Sliding mode AGC controller and method
WO2016020717A1 (en) * 2014-08-08 2016-02-11 Toyo System Co., Ltd. Feedback control device
FR3028624B1 (fr) * 2014-11-18 2018-04-20 Ixblue Procede et systeme de compensation adaptative de frottements secs
GB2539873B (en) * 2015-06-12 2017-11-15 Jaguar Land Rover Ltd Automated climate control system
US20180158152A1 (en) * 2016-12-05 2018-06-07 Carnegie Mellon University Methods and Software for Calculating Optimal Power Flow in an Electrical Power Grid and Utilizations of Same
US10739733B1 (en) * 2017-02-01 2020-08-11 BrainofT Inc. Interactive environmental controller
AT519771A1 (de) * 2017-03-20 2018-10-15 B & R Ind Automation Gmbh Verfahren zur Bestimmung von Regelungsparametern für ein Hydrauliksystem

Also Published As

Publication number Publication date
JP2019053593A (ja) 2019-04-04
US20190086876A1 (en) 2019-03-21
US11573537B2 (en) 2023-02-07

Similar Documents

Publication Publication Date Title
JP6958808B2 (ja) 方策改善プログラム、方策改善方法、および方策改善装置
Szollosi et al. Influence of the tensor product model representation of qLPV models on the feasibility of linear matrix inequality
Li et al. A kriging metamodel assisted multi-objective genetic algorithm for design optimization
Huang et al. Practical solutions to multivariate feedback control performance assessment problem: reduced a priori knowledge of interactor matrices
Zheng et al. A hybrid variable-fidelity global approximation modelling method combining tuned radial basis function base and kriging correction
US8346693B2 (en) Method for hammerstein modeling of steam generator plant
De et al. Topology optimization under uncertainty using a stochastic gradient-based approach
Chen et al. Hierarchical least squares identification for Hammerstein nonlinear controlled autoregressive systems
Orlov et al. Robust stabilization of infinite-dimensional systems using sliding-mode output feedback control
JP7044077B2 (ja) モデル推定システム、方法およびプログラム
Hovakimyan et al. Adaptive output feedback control of a class of multi-input multi-output systems using neural networks
Imani et al. Multiple model adaptive controller for partially-observed Boolean dynamical systems
Mao et al. Highly efficient parameter estimation algorithms for Hammerstein non‐linear systems
JP7188194B2 (ja) 方策改善方法、方策改善プログラム、および方策改善装置
Bunin et al. Run-to-run MPC tuning via gradient descent
Maddu et al. STENCIL-NET: data-driven solution-adaptive discretization of partial differential equations
JP6919856B2 (ja) 強化学習プログラム、強化学習方法、および強化学習装置
Ben Halima Abid et al. An Improved Method for Stochastic Nonlinear System’s Identification Using Fuzzy‐Type Output‐Error Autoregressive Hammerstein–Wiener Model Based on Gradient Algorithm, Multi‐Innovation, and Data Filtering Techniques
JP2021064222A (ja) 方策改善方法、方策改善プログラム、および方策改善装置
JP7476136B2 (ja) 情報処理装置、情報処理方法及びプログラム
Hedengren et al. Order reduction of large scale DAE models
US11983642B2 (en) Policy improvement method, policy improvement program storage medium, and policy improvement device
Akhare et al. Diffhybrid-uq: uncertainty quantification for differentiable hybrid neural modeling
Wang et al. A Monte Carlo method for solving unsteady adjoint equations
Mirhoseini et al. Bi-Loop matrix forgetting factor-based coupled recursive least squares algorithm for identification of multivariable plants

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20171011

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20171011

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200528

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210622

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210811

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: 20210831

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210927

R150 Certificate of patent or registration of utility model

Ref document number: 6958808

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250