(57)【要約】【課題】  対象システムの時間発展が複雑な場合でも、計算量を抑制して制御することが可能な適応型制御器、適応型制御方法および適応型制御プログラムを提供する。【解決手段】  適応制御器として動作するコンピュータ１００は、対象とする物理システムの時間発展がマルコフ過程として記述される際に、物理システムの状態に対する制御量を決定する。コンピュータ１００は、物理システムの状態量を獲得する通信インタフェース１２８を備え、ＣＰＵ１２０は、状態量を目標値に制御するための制御信号を、確率的な逐次的重点サンプリング法により適応的に生成する。【選択図】        図２
2005084834.tif 000002
【特許請求の範囲】
【請求項１】
対象とする物理システムの時間発展がマルコフ過程として記述される際に、前記物理システムの状態に対する制御量を決定する適応的制御器であって、
前記物理システムの目標とすべき状態量を獲得する状態量検知手段と、
前記状態量を目標値に制御するための制御信号を、確率的な逐次的重点サンプリング法により適応的に生成する制御信号生成手段とを備える、適応型制御器。
【請求項２】
前記制御信号生成手段は、
前記物理システム状態情報系列と前記制御信号系列との確率分布に対する前記物理システムの前記状態量が前記目標値に近づくことに応じて最大となるコスト関数の期待値と、前記確率分布のエントロピーの差である自由エネルギーを最小化するように、前記制御信号を決定する、請求項１記載の適応型制御器。
【請求項３】
記憶手段をさらに備え、
前記制御信号生成手段は、
初期状態分布にしたがって、初期状態を第１の所定数だけサンプリングする初期状態サンプリング手段と、
制御信号の可変範囲内から制御信号を一様に前記第１の所定数だけサンプリングする制御信号サンプリング手段と、
前記初期状態のサンプリング結果と、前記制御信号のサンプル結果とを前記記憶手段に時系列として格納するためのスタック手段と、
各前記サンプリングされた初期状態および制御信号に対する重みを算出するための重み算出手段と、
前記重みにしたがって、前記記憶手段から、前記初期状態のサンプリング結果と前記制御信号のサンプル結果とを再サンプリングし、再サンプリングの結果を時系列として再び格納するための再サンプリング手段と、
前記再サンプリングされた前記初期状態と前記制御信号との時系列に基づいて、状態遷移確率分布にしたがって、次のタイミングの状態を前記第１の所定数だけサンプリングする手段と、
サンプリングされた時系列に基づいて、前記確率分布を算出する確率分布算出手段と、
前記算出された確率分布により確率的方策を算出する確率的方策算出手段とを含む、請求項１記載の適応型制御器。
【請求項４】
前記制御信号生成手段は、前記確率的方策に基づいて、決定論的方策を算出する手段をさらに備える、請求項３記載の適応型制御器。
【請求項５】
対象とする物理システムの時間発展がマルコフ過程として記述される際に、前記物理システムの状態に対する制御量を決定する適応的制御方法であって、
前記物理システムの状態量を獲得するステップと、
前記状態量を目標値に制御するための制御信号を、確率的な逐次的重点サンプリング法により適応的に生成するステップとを備え、
前記適応的に生成するステップは、
初期状態分布にしたがって、初期状態を第１の所定数だけサンプリングするステップと、
制御信号の可変範囲内から制御信号を一様に前記第１の所定数だけサンプリングするステップと、
前記初期状態のサンプリング結果と、前記制御信号のサンプル結果とを前記記憶手段に時系列として格納するステップと、
各前記サンプリングされた初期状態および制御信号に対する重みを算出するステップと、
前記重みにしたがって、前記記憶手段から、前記初期状態のサンプリング結果と前記制御信号のサンプル結果とを再サンプリングし、再サンプリングの結果を時系列として再び格納するステップと、
前記再サンプリングされた前記初期状態と前記制御信号との時系列に基づいて、状態遷移確率分布にしたがって、次のタイミングの状態を前記第１の所定数だけサンプリングするステップと、
サンプリングされた時系列に基づいて、前記確率分布を算出する確率分布算出手段と、
前記算出された確率分布により確率的方策を算出するステップとを含む、適応型制御方法。
【請求項６】
対象とする物理システムの時間発展がマルコフ過程として記述される際に、前記物理システムの状態に対する制御量を決定する適応的制御方法をコンピュータに実行させるためのプログラムであって、
前記物理システムの状態量を獲得するステップと、
前記状態量を目標値に制御するための制御信号を、確率的な逐次的重点サンプリング法により適応的に生成するステップとを備え、
前記適応的に生成するステップは、
初期状態分布にしたがって、初期状態を第１の所定数だけサンプリングするステップと、
制御信号の可変範囲内から制御信号を一様に前記第１の所定数だけサンプリングするステップと、
前記初期状態のサンプリング結果と、前記制御信号のサンプル結果とを前記記憶手段に時系列として格納するステップと、
各前記サンプリングされた初期状態および制御信号に対する重みを算出するステップと、
前記重みにしたがって、前記記憶手段から、前記初期状態のサンプリング結果と前記制御信号のサンプル結果とを再サンプリングし、再サンプリングの結果を時系列として再び格納するステップと、
前記再サンプリングされた前記初期状態と前記制御信号との時系列に基づいて、状態遷移確率分布にしたがって、次のタイミングの状態を前記第１の所定数だけサンプリングするステップと、
サンプリングされた時系列に基づいて、前記確率分布を算出する確率分布算出手段と、
前記算出された確率分布により確率的方策を算出するステップとを含む、
適応型制御方法をコンピュータに実行させるための適応型制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルコフ決定過程として定式化される制御問題に対する適応型制御器、適応型制御方法および適応型制御プログラムの構成に関する。
【背景技術】
【０００２】
「マルコフ決定過程」として定式化される制御問題は、ロボット、プラント、移動機械（電車、自動車）などの自律的制御問題として、幅広い応用を持つ重要な技術である。
【０００３】
ここで、「マルコフ決定過程」とは、対象とする物理システムの時間発展がマルコフ過程として記述される際に、物理システムの理想的な状態からの距離（以下、「コスト」と呼ぶ）を手がかりにして行う制御問題のことである。なお、この明細書では、対象の時間発展が近似的にマルコフ過程にしたがう場合、履歴を用いると履歴までを含めた状態についてマルコフ過程にしたがう場合、あるいは決定論的である場合などを全て含んで、「マルコフ決定過程」と呼ぶことにする。
【０００４】
マルコフ決定過程に対する最適制御に関する重要な従来技術には多くあるが、本発明との関連では、以下に特に重要であるものを２種説明する。
【０００５】
１つは、コストの累積和（以下、「期待累積コストJと呼ぶ）を獲得し、その期待累積コストを最小化するとして制御規則（以下、「方策」と呼ぶ）を決める手法である。この手法には、動的計画法によるもの（たとえば、非特許文献１、非特許文献２を参照）、ＴＤ学習法（たとえば、非特許文献３、非特許文献４を参照）によるものの２種がある。これらに関しては莫大な技術蓄積がある。
【０００６】
しかし、動的計画法では、状態数の３乗のオーダーで計算量および記憶が必要であり、状態数が多いような実問題、あるいはロボットなどの状態が連続的であるような制御問題に応用することは困難である。また、古典的最適制御（リカッチ方程式によるもの）では、連続システムの制御を行うことができるが、対象システムが線形システムでないとならない。一方で、ＴＤ学習法は、適当な関数近似器を用いて逐次的に期待累積コストを近似することができるため連続システムに応用することができ、また確率近似法を用いて未知システムに応用することが出来る一方で、制御器の構成が本来関係の少ないはずの期待累積コストの近似に大きく依存するため、応用できる対象が限られ、かつそのクラスが不明確な場合が多い。また関数近似器を適切に選ぶことは設計者の経験に委ねられているため、特に対象システムが複雑になる（例えばヒューマノイドロボットなど）場合に適応が困難であったという問題があった。
【０００７】
もう一つの従来技術は、直接最適な制御方式を探索する手法であり、例えば網羅的探索法（たとえば、非特許文献５を参照）がこれに属するが、さらに多くの計算量を必要とする。また、関数近似器を用いて方策を近似し、期待累積コストの勾配に基づき逐次的に方策を更新する方策勾配法（たとえば、非特許文献６、非特許文献７を参照）があり、強化学習法の構成法に比べて安定性が高い一方で、方策の最適性の判定が困難であるため、手続きの停止条件が明確でなく、また関数近似器に大きく依存しているという問題点がある。
【非特許文献１】Bellman, R. E.: Dynamic Programming, Princeton University Press, Princeton, NJ (1957)。
【非特許文献２】Howard, R. :  Dynamic Programming and Markov Processes, MIT Press, Cambridge, MA(1960)。
【非特許文献３】Barto, A. G., Sutton, R. S. and Anderson, C. W.: Neuron-like elements that can solve difficult learning control problems, IEEE Transaction on Systems, Man, and Cybernetics, Vol. 13, pp.835- 846 (1983)。
【非特許文献４】Doya, K.: Reinforcement learning in continuous time and space, Neural Computation, Vol. 12, pp. 243-269 (2000)。
【非特許文献５】Gosavi、 A∴ Simulation-Based Optimization: Parametric Optimization Techniques and Reinforcement Learning, Kluwer Academic Publishers (2003)。
【非特許文献６】Kimura, H., Yamamura, M. and Kobayashi, S.: Reinforcement Learning by Stochastic Hill Climbing on Discounted Reward, Proceedings of the 12th International Conference on Machine Learning pp. 295-303 (1995)。
【非特許文献７】Williams, R. J.: Simple Statistical Gradient-Following Algorithms for Connectionist Reinforcement Learning, Machine Learning, Vol. 8, pp. 229-256 (1992)。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明は、上記のような問題を解決するためになされたものであって、その目的は、対象システムの時間発展が複雑な場合で、古典的制御法の適用が困難な問題に対しても、計算量を抑制して制御することが可能な適応型制御器、適応型制御方法および適応型制御プログラムを提供することである。
【課題を解決するための手段】
【０００９】
このような目的を達成するために、本発明の適応型制御器は、対象とする物理システムの時間発展がマルコフ過程として記述される際に、物理システムの状態に対する制御量を決定する適応的制御器であって、物理システムの目標とすべき状態量を獲得する状態量検知手段と、状態量を目標値に制御するための制御信号を、確率的な逐次的重点サンプリング法により適応的に生成する制御信号生成手段とを備える。
【００１０】
好ましくは、制御信号生成手段は、物理システム状態情報系列と制御信号系列との確率分布に対する物理システムの状態量が目標値に近づくことに応じて最大となるコスト関数の期待値と、確率分布のエントロピーの差である自由エネルギーを最小化するように、制御信号を決定する。
【００１１】
好ましくは、適応型制御器は、記憶手段をさらに備え、制御信号生成手段は、初期状態分布にしたがって、初期状態を第１の所定数だけサンプリングする初期状態サンプリング手段と、制御信号の可変範囲内から制御信号を一様に第１の所定数だけサンプリングする制御信号サンプリング手段と、初期状態のサンプリング結果と、制御信号のサンプル結果とを記憶手段に時系列として格納するためのスタック手段と、各サンプリングされた初期状態および制御信号に対する重みを算出するための重み算出手段と、重みにしたがって、記憶手段から、初期状態のサンプリング結果と制御信号のサンプル結果とを再サンプリングし、再サンプリングの結果を時系列として再び格納するための再サンプリング手段と、再サンプリングされた初期状態と制御信号との時系列に基づいて、状態遷移確率分布にしたがって、次のタイミングの状態を第１の所定数だけサンプリングする手段と、サンプリングされた時系列に基づいて、確率分布を算出する確率分布算出手段と、算出された確率分布により確率的方策を算出する確率的方策算出手段とを含む。
【００１２】
好ましくは、制御信号生成手段は、確率的方策に基づいて、決定論的方策を算出する手段をさらに備える。
【００１３】
この発明の他の局面にしたがうと、対象とする物理システムの時間発展がマルコフ過程として記述される際に、物理システムの状態に対する制御量を決定する適応的制御方法であって、物理システムの状態量を獲得するステップと、状態量を目標値に制御するための制御信号を、確率的な逐次的重点サンプリング法により適応的に生成するステップとを備え、適応的に生成するステップは、初期状態分布にしたがって、初期状態を第１の所定数だけサンプリングするステップと、制御信号の可変範囲内から制御信号を一様に第１の所定数だけサンプリングするステップと、初期状態のサンプリング結果と、制御信号のサンプル結果とを記憶手段に時系列として格納するステップと、各サンプリングされた初期状態および制御信号に対する重みを算出するステップと、重みにしたがって、記憶手段から、初期状態のサンプリング結果と制御信号のサンプル結果とを再サンプリングし、再サンプリングの結果を時系列として再び格納するステップと、再サンプリングされた初期状態と制御信号との時系列に基づいて、状態遷移確率分布にしたがって、次のタイミングの状態を第１の所定数だけサンプリングするステップと、サンプリングされた時系列に基づいて、確率分布を算出する確率分布算出手段と、算出された確率分布により確率的方策を算出するステップとを含む。
【００１４】
この発明のさらに他の局面に従うと、対象とする物理システムの時間発展がマルコフ過程として記述される際に、物理システムの状態に対する制御量を決定する適応的制御方法をコンピュータに実行させるためのプログラムであって、適応的制御方法は、物理システムの状態量を獲得するステップと、状態量を目標値に制御するための制御信号を、確率的な逐次的重点サンプリング法により適応的に生成するステップとを備え、適応的に生成するステップは、初期状態分布にしたがって、初期状態を第１の所定数だけサンプリングするステップと、制御信号の可変範囲内から制御信号を一様に第１の所定数だけサンプリングするステップと、初期状態のサンプリング結果と、制御信号のサンプル結果とを記憶手段に時系列として格納するステップと、各サンプリングされた初期状態および制御信号に対する重みを算出するステップと、重みにしたがって、記憶手段から、初期状態のサンプリング結果と制御信号のサンプル結果とを再サンプリングし、再サンプリングの結果を時系列として再び格納するステップと、再サンプリングされた初期状態と制御信号との時系列に基づいて、状態遷移確率分布にしたがって、次のタイミングの状態を第１の所定数だけサンプリングするステップと、サンプリングされた時系列に基づいて、確率分布を算出する確率分布算出手段と、算出された確率分布により確率的方策を算出するステップとを含む。
【発明の効果】
【００１５】
本発明の適応型制御器、適応型制御方法および適応型制御プログラムでは、制御器を確率的制御器とすることで、期待累積コストを計算する動的計画法や直接方策を探索する網羅的探索法における計算量の削減を行うことが可能である。
【００１６】
本発明によれば、また、逐次重点サンプリング法を用いて直接方策を探索することで、価値または方策に関数近似器を用いる必要はない。さらに、期待累積コストを直接最大化することを行うため、その近似を行う必要がない。そのため、設計者の負荷を極力抑えることができる一方で、期待累積コストの推定に伴う安定性の欠如から逃れることが可能となる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照して本発明の実施の形態について説明する。
【００１８】
以下の説明で明らかとなるとおり、本発明は、ロボット、プラント、移動機械（電車、自動車）などの自律的制御問題として、幅広い応用を持つ。
【００１９】
ただし、以下では、本発明の具体的な適用例として、特に簡単なロボットの自動制御問題を対象として説明を行う。しかしながら、本発明は、このような応用に限定されるものではなく、より一般的に、対象システムの時間発展が複雑な場合の対象システムの制御に適用することができる。そのようなものの例としては、巨大プラント（溶鉱炉、原子力プラント）、マルチリンクロボット（ヒューマノイドロボット）、ノンホロノームシステム（宇宙ステーション）、地下鉄ホームでの人の流れなどがある。これらは、いずれも古典的制御法での制御が困難であり、かつ重要な制御対象である。
【００２０】
（１．本発明のシステム構成）
図１は、本発明の適応型制御方法および適応型制御プログラムが適用される適応型制御器を用いたシステム１０００の一例を示す概念図である。
【００２１】
図１を参照して、システム１０００は、制御対象となる被制御装置２００と、この被制御装置２００に対して制御信号を与えるためのコンピュータ１００とを備える。
【００２２】
図１を参照してこのコンピュータ１００は、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory ）上の情報を読込むためのＣＤ−ＲＯＭドライブ１０８およびフレキシブルディスク（Flexible Disk、以下ＦＤ）１１６に情報を読み書きするためのＦＤドライブ１０６を備えたコンピュータ本体１０２と、コンピュータ本体１０２に接続された表示装置としてのディスプレイ１０４と、同じくコンピュータ本体１０２に接続された入力装置としてのキーボード１１０およびマウス１１２とを含む。
【００２３】
図２は、このコンピュータ１００の構成をブロック図形式で示す図である。
【００２４】
図２に示されるように、このコンピュータ１００を構成するコンピュータ本体１０２は、ＣＤ−ＲＯＭドライブ１０８およびＦＤドライブ１０６に加えて、それぞれバスＢＳに接続されたＣＰＵ（Central Processing Unit ）１２０と、ＲＯＭ（Read Only Memory) およびＲＡＭ （Random Access Memory）を含むメモリ１２２と、直接アクセスメモリ装置、たとえば、ハードディスク１２４と、被制御装置２００とデータの授受を行うための通信インタフェース１２８とを含んでいる。ＣＤ−ＲＯＭドライブ１０８にはＣＤ−ＲＯＭ１１８が装着される。ＦＤドライブ１０６にはＦＤ１１６が装着される。
【００２５】
被制御装置２００からは、コンピュータ１００に対して被制御装置２００の状態を示すパラメータ（状態量）の情報、たとえば、被制御装置２００の可動部分の位置、速度、加速度、角度、角速度等の情報が与えられる。一方、コンピュータ１００からは、被制御装置２００に対して、これら状態量を制御するための制御情報が制御信号として与えられる。
【００２６】
なお、ＣＤ−ＲＯＭ１１８は、コンピュータ本体に対してインストールされるプログラム等の情報を記録可能な媒体であれば、他の媒体、たとえば、ＤＶＤ−ＲＯＭ（Digital Versatile Disc）やメモリカードなどでもよく、その場合は、コンピュータ本体１０２には、これらの媒体を読取ることが可能なドライブ装置が設けられる。
【００２７】
本発明の適応型制御器の主要部は、コンピュータハードウェアと、ＣＰＵ１２０により実行されるソフトウェアとにより構成される。一般的にこうしたソフトウェアはＣＤ−ＲＯＭ１１８、ＦＤ１１６等の記憶媒体に格納されて流通し、ＣＤ−ＲＯＭドライブ１０８またはＦＤドライブ１０６等により記憶媒体から読取られてハードディスク１２４に一旦格納される。または、当該装置がネットワークに接続されている場合には、ネットワーク上のサーバから一旦ハードディスク１２４にコピーされる。そうしてさらにハードディスク１２４からメモリ１２２中のＲＡＭに読出されてＣＰＵ１２０により実行される。なお、ネットワーク接続されている場合には、ハードディスク１２４に格納することなくＲＡＭに直接ロードして実行するようにしてもよい。
【００２８】
図１および図２に示したコンピュータのハードウェア自体およびその動作原理は一般的なものである。したがって、本発明の最も本質的な部分は、ＦＤ１１６、ＣＤ−ＲＯＭ１１８、ハードディスク１２４等の記憶媒体に記憶されたソフトウェアである。
【００２９】
なお、一般的傾向として、コンピュータのオペレーティングシステムの一部として様々なプログラムモジュールを用意しておき、アプリケーションプログラムはこれらモジュールを所定の配列で必要な時に呼び出して処理を進める方式が一般的である。そうした場合、当該ネットワークパラメータ学習装置を実現するためのソフトウェア自体にはそうしたモジュールは含まれず、当該コンピュータでオペレーティングシステムと協働してはじめてネットワークパラメータ学習装置が実現することになる。しかし、一般的なプラットフォームを使用する限り、そうしたモジュールを含ませたソフトウェアを流通させる必要はなく、それらモジュールを含まないソフトウェア自体およびそれらソフトウェアを記録した記録媒体（およびそれらソフトウェアがネットワーク上を流通する場合のデータ信号）が実施の形態を構成すると考えることができる。
【００３０】
（適応型制御方法）
本発明の構成について、概説すると、制御器を確率的制御器とすることで、期待累積コストを計算する動的計画法や直接方策を探索する網羅的探索法における計算量の削減を行う。また、逐次重点サンプリング法を用いて直接方策を探索することで、価値または方策に関数近似器を用いる必要はない。さらに、期待累積コストを直接最大化することを行うため、その近似を行う必要がない。そのため、設計者の負荷を極力抑えることができる一方で、期待累積コストの推定に伴う安定性の欠如から逃れることができる。
【００３１】
（適応型制御器の構成）
（２．マルコフ決定過程）
本節では、本発明の適用対象となるマルコフ決定過程を数学的に定義し、その具体的な問題例を示す。
【００３２】
２．１  定義
図３は、マルコフ決定過程の概念を簡潔に示した概念図である。
【００３３】
マルコフ決定過程では、確率分布Ｐ1にしたがって、制御対象の初期状態ｘ1が選択される。すなわち、ｘ1〜Ｐ1（ｘ1）である。各時刻ｋにおいて状態ｘｋを観測すると、制御器は確率的方策と呼ばれる確率分布πk（ｕｋ|ｘｋ）にしたがって制御信号ｕｋ∈Ｕを出力することができる。ここで、Ｕは制御対象に入力可能な制御信号の集合である。（ｘｋ，ｕｋ）が決定されると、制御器にはコストＣ（ｘｋ，ｕｋ）が与えられ制御対象の状態ｘkは状態遷移確率分布Ｔ（ｘｋ+1|ｘｋ，ｕｋ）にしたがって状態ｘｋ+1へ遷移する。
【００３４】
マルコフ決定過程の重要な性質は、いったんＫ（Ｋ≫０）時刻目までの確率的方策系列π≡｛π1，…，πK｝が決定されると状態系列Ｘ1:K≡｛ｘ1，…，ｘK｝と、制御信号系列Ｕ1:K≡｛ｕ1，…，ｕK｝の出現確率分布に関して以下のマルコフ性が成り立つことである。
【００３５】
【数１】
2005084834.tif 000003
【００３６】
ここで、Ｔ（ｘ1|ｘ0，ｕ0）≡Ｐ1（ｘ1）である。この確率分布を用いて、方策πの良し悪しは以下で定義される期待コストの時間累積和を用いて評価することができる。
【００３７】
【数２】
2005084834.tif 000004
【００３８】
ここで、式（２）において、右辺の関数は、以下のように定義される。
【００３９】
【数３】
2005084834.tif 000005
【００４０】
この評価基準を用いて最適な方策π*は以下で定義される。
【００４１】
【数４】
2005084834.tif 000006
【００４２】
ここで、Πはあらゆる可能な確率的方策の集合である。
【００４３】
２．２  被制御装置２００の具体例
図４は、上述したとおり、本発明の適応型制御器の構成および動作を説明すための具体例の単振り子を示す図であり、図４（ａ）は、単振り子の外観を示し、図４（ｂ）は、単振り子のモデルを示す概念図である。
【００４４】
図４で示される単振子の制御問題はマルコフ決定過程で定式化される制御問題の典型的な例である。この間題において各時刻ｋにおける状態ｘｋは、以下の式で表されるとおり、振り子の角度および角速度を用いて、定義することができる。
【００４５】
【数５】
2005084834.tif 000007
【００４６】
ここで、プライム記号（′）は転置を表している。初期状態ｘ1は振子が垂れ下がりで静止していることに相当する以下の条件の下で、決定論的に与えられる。
【００４７】
【数６】
2005084834.tif 000008
【００４８】
すなわち、Ｐ1（ｘ1）は、以下の式で表される。
【００４９】
【数７】
2005084834.tif 000009
【００５０】
ここで、δ（・）はディラック（Dirac）のデルタ関数である。物理法則より、現在の状態ｘと振子に対するトルクｕが与えられると状態ｘは以下の微分方程式にしたがって時間発展する。
【００５１】
【数８】
2005084834.tif 000010
【００５２】
ここで、Ｍは振子の質量、Ｌは振子の長さ、μは摩擦係数、ｇは重量加速度である。離散時刻ｋからｋ＋１までの物理的時間間隔を△ｔとし、△ｔが十分に小さな値であるとすると状態変数の時間発展式は以下で近似的に与えることができる。
【００５３】
【数９】
2005084834.tif 000011
【００５４】
また、実世界ではシステムや観測装置に外乱が入る。△ｔが十分に小さい場合、その外乱が分散σ2の白色ガウスノイズとみなすことができるので、状態遷移確率分布Ｔ（ｘｋ+1|ｘｋ，ｕｋ）は以下で与えられる。
【００５５】
【数１０】
2005084834.tif 000012
【００５６】
ここで、‖・‖はユークリッドノルムである。
【００５７】
単振子の制御問題の目的は、適切なトルクｕk∈［Ｕmin，Ｕmax］を出力することによって、倒立位置（図中の目標状態）で振子を静止させる、すなわち、以下の条件が満たされるような制御器を設計することである。
【００５８】
【数１１】
2005084834.tif 000013
【００５９】
ここで、Ｕmax（Ｕmin）は制御器が出力できる最大（最小）トルク量である。したがって、制御信号は制御トルク量ｕkと同一視でき、Ｕ∈［Ｕmin，Ｕmax］である。また、この制御の目的に対応したコスト関数は以下で与えられることができる。
【００６０】
【数１２】
2005084834.tif 000014
【００６１】
ここで、νi∈（０，∞）（ｉ＝１，２，３）は、所定の定数である。
【００６２】
なお、コスト関数の関数形は、必ずしも上記のような形状に限定されず、制御される物理システムの状態量が目標値に近づくことに応じて最大となるなるような関数形とすることができる。
【００６３】
以上の初期状態分布Ｐ1、状態遷移確率Ｔ、コスト関数ｃによって定式化されるマルコフ決定過程において最適方策を求めることができれば、倒立位置で振子を静止させるような制御器を実現することができる。
【００６４】
なお、以下の説明で明らかとなるように、本発明は、必ずしも、倒立位置で振子を静止させるような制御器への適用に限定されるものではなく、一般的に、「マルコフ決定過程」とみなせるような物理システムの制御に適用可能なものである。
【００６５】
（３．本発明の原理とコンピュータ１００への実装法）
本節では、本発明の設計原理を数理工学的な観点から述べ、具体的な実装法について説明する。
３．１  設計原理
確率分布ｐπ（以下、本文中では、ｐに下付添え字πがつけられているものを「ｐπ」で表す）に関する自由エネルギーを以下で定義し、その最小化問題を考える。
【００６６】
【数１３】
2005084834.tif 000015
【００６７】
ここで、β∈（０，∞）は逆温度と呼ばれる定数であり、Ｈ［π］は確率分布ｐπのエントロピーと呼ばれている。
【００６８】
β→０の極限では、自由エネルギーはエントロピーＨ［π］のみに依存するので、自由エネルギーを最小にする確率分布は、以下の式を満たす一様分布となる。
【００６９】
【数１４】
2005084834.tif 000016
【００７０】
一方、βが大きくなるにつれて自由エネルギー対するＪ［π］の影響が大きくなる。特に、β→∞の極限では、（自由エネルギー）→Ｊ［π］となり、自由エネルギーの最小化問題は期待累積コストＪの最小化問題と等価になる。したがって、自由エネルギーをβ≫０の条件の下で、最小化する確率分布を「自由エネルギー最小化確率分布」と呼び、以下の記号で表す。
【００７１】
【数１５】
2005084834.tif 000017
【００７２】
この「自由エネルギー最小化確率分布」は、最適方策に対応するマルコフ連鎖の近似を与えることになる。以下では、最適方策に対応するマルコフ連鎖を「最適方策マルコフ連鎖」と呼び、以下の記号で表す。
【００７３】
【数１６】
2005084834.tif 000018
【００７４】
変分原理に基づけば、自由エネルギー（８）式を最小にする確率分布（自由エネルギー最小化確率分布）は以下で与えられることが分かる。
【００７５】
【数１７】
2005084834.tif 000019
【００７６】
ここで、Ｚは、自由エネルギー最小化確率分布が確率条件を満たすための正規化項であり、以下で与えられる。
【００７７】
【数１８】
2005084834.tif 000020
【００７８】
いったん自由エネルギー最小化確率分布が求められると、それに対応する確率的方策は以下で求めることができる。
【００７９】
【数１９】
2005084834.tif 000021
【００８０】
ただし、Ｘ-ｋ≡｛ｘ1，…，ｘK-1，ｘk+1，…，ｘK｝およびＵ-ｋ≡｛ｕ1，…，ｕK-1，ｕk+1，…，ｕK｝である。
【００８１】
また、実際に制御を行う場合には、確率的方策よりも決定論的な制御方策を用いた方が便利な場合がある。その場合には、決定論的方策μkは確率的方策πkの期待値を用いて以下で与えることができる。
【００８２】
【数２０】
2005084834.tif 000022
【００８３】
確率分布（９）式を解析的に求めることは困難であるが、本発明では、マルコフ連鎖モンテカルロ法の一種である逐次重点サンプリング法を用いて近似的にその分布を獲得する。なお、このような「逐次重点サンプリング法」については、文献：” Andrieu, C,. de Freitas, N., Doucet, A. and Jordan, M. I.: An Introduction to MCMC for Machine Learning, Machine Learning, Vol. 50, No. 1-2, pp. 5-43 (2003)”に詳しく開示されている。
３．２  コンピュータ１００への実装
以上の発明原理に基づいて、本発明は以下の手続きによってコンピュータソフトウェアとして実装できる。
【００８４】
以下、その手続きについてまとめる。
【００８５】
図５および図６は、このようなコンピュータプログラムの処理の流れを説明するためのフローチャートである。
【００８６】
１．まず、ＣＰＵ１２０により、たとえば、メモリ１２２中に格納されているパラメータである、逆温度β、サンプリング数Ｉ、制御時間ステップ数Ｋを制御問題に適合するように設定する（ステップＳ１００）。
【００８７】
２．続いて、ＣＰＵ１２０は、初期状態分布Ｐ1にしたがって、初期状態ｘkをＩ個サンプリングする（ステップＳ１０２）。
【００８８】
ここで、状態ｘKに関するｉ番目のサンプル値を以下の式で表すことにする。
【００８９】
【数２１】
2005084834.tif 000023
【００９０】
このとき、以下の関係が成り立つ。
【００９１】
【数２２】
2005084834.tif 000024
【００９２】
３．さらに、ＣＰＵ１２０は、ソフトウェアにしたがって、各ｋ＝１，…，Ｋに対して以下の手続き（ステップＳ１０４〜Ｓ１２０）を行う。
【００９３】
まず、変数ｋの値を１に初期設定する（ステップＳ１０４）。
【００９４】
（ａ）集合Ｕから制御信号ｕkを一様にサンプリングする（ステップＳ１０６）。制御信号ｕkに関するｉ番目のサンプル値を以下の式で表す。
【００９５】
【数２３】
2005084834.tif 000025
【００９６】
このとき、以下の関係が成り立つ。
【００９７】
【数２４】
2005084834.tif 000026
【００９８】
ここで、ｃ0は所定の定数である。
【００９９】
（ｂ）サンプリング結果を以下のようにメモリ上にスタックする（ステップＳ１０８）。
【０１００】
【数２５】
2005084834.tif 000027
【０１０１】
（ｃ）各サンプルｉ＝１，…，Ｉに対して、サンプリング重みを以下で計算する（ステップＳ１１０）。
【０１０２】
【数２６】
2005084834.tif 000028
【０１０３】
（ｄ）各サンプルｉ＝１，…，Ｉに対するサンプリング重みを以下で正規化する（ステップＳ１１２）。
【０１０４】
【数２７】
2005084834.tif 000029
【０１０５】
（ｅ）各ｉ＝１，…，Ｉに対して以下の手続きを行う。
【０１０６】
ｉ）メモリインデクスｊ＝｛１，…，Ｉ｝からサンプリング重みｗ(j)kの確率にしたがって、１つをサンプリングする（ステップＳ１１４）。ここで、サンプリングされたインデクスをｊ（ｉ）と表す。
【０１０７】
ｉｉ）新たなメモリ領域に以下のように保存する（ステップＳ１１６）。
【０１０８】
【数２８】
2005084834.tif 000030
【０１０９】
（ｆ）状態遷移確率分布Ｔにしたがって、状態ｘｋ+1をＩ個サンプリングする（ステップＳ１１８）。すなわち、以下の関係が成り立つ。
【０１１０】
【数２９】
2005084834.tif 000031
【０１１１】
ｋ＝Ｋならばループを抜けて（ステップＳ１２０）処理をステップＳ１２４へ移行させる。一方、ｋ≠Ｋならば、ｋの値を１だけインクリメントして、処理をステップＳ１０６に復帰させる。
【０１１２】
４．ＣＰＵ１２０は、サンプリング軌道｛（ｘ(i)1:K，ｕ(i)1:K）｜ｉ＝１，…，Ｉ｝を用いて自由エネルギー最小化確率分布を以下で表現する（ステップＳ１２４）。
【０１１３】
【数３０】
2005084834.tif 000032
【０１１４】
ここで、以下のことが言える。
【０１１５】
【数３１】
2005084834.tif 000033
【０１１６】
５．確率分布（１１）に対応する確率的方策を以下で求める（ステップＳ１２６）。
【０１１７】
【数３２】
2005084834.tif 000034
【０１１８】
ここで、以下のことが言える。
【０１１９】
【数３３】
2005084834.tif 000035
【０１２０】
６．確率的方策に対応する決定論的方策μkを以下で求める（ステップＳ１２８）。
【０１２１】
【数３４】
2005084834.tif 000036
【０１２２】
ここで、決定論的方策μkについて、以下のことが言える。
【０１２３】
【数３５】
2005084834.tif 000037
【０１２４】
以上の手続きで、最適な制御信号ｕを求めることができる。
【０１２５】
（４．適用例：倒立振子の制御問題）
本発明の適用例として、２．２節で述べた単振子の制御問題へ適用した計算機シミュレーションの結果を示す。物理システムのパラメータは、Ｍ＝Ｌ＝１、μ＝０．０１、ｇ＝９．８に設定し、外乱として分散σ2＝０．０００１の白色ガウス雑音を与えた。
【０１２６】
振子の状態を観測し、制御トルクを入力する時間間隔は△ｔ＝０．０２に設定し、制御過程の全時間ステップはＫ＝７００とした。コスト関数のパラメータはν1＝１．０，ν2＝０．０１，ν3＝０．０とした。逆温度パラメータはβ＝１０００に設定した。
【０１２７】
また、制御器が出力できる制御トルクの最大（最小）値をＵmax＝５（Ｕmin＝−５）に制約した。この制約のため、倒立位置まで振り上げるためには垂れ下がりの位置付近では何度か振って勢いをつける必要がある。したがって、線形制御理論ではこの最適制御器を設計することはできない。
【０１２８】
図７〜図９は、３．２節のステップＳ１２４によって求められた状態および制御信号軌道のサンプリング結果を示している。図７は、角度ｑの時間変化を、図８は角速度の時間変化を、図９は制御トルクの時間変化をそれぞれ示す。
【０１２９】
結果的に、振子を振り上げて静止するための制御トルク系列Ｕ1:Kとそれによって実現される状態の軌道Ｘ1:Kほど多くのサンプル値が集中していることが分かる。
【０１３０】
また、図１０は、３．２節のステップＳ１２８によって求められた決定論的制御方策によって実現された制御の様子を示している。
【０１３１】
図１０（ａ）は制御対象である単振子の動きをストロボ的に表示したものである。図１０（ｂ）は、制御時に観測された状態および出力されたトルクの時系列を表している。
【０１３２】
ここで、実線、破線、点線は、それぞれ  出力トルク量、振子の角度、および、角速度に対応している。図１０より、目標としていた制御が実現されていることが分かる。
【０１３３】
以上説明したとおり、本発明では、マルコフ決定過程として定式化される制御問題に対する制御設計法を実現している。制御器を確率的制御器とすることで、期待累積コストを計算する動的計画法や直接方策を探索する網羅的探索法における計算量の削減を行う。また、逐次重点サンプリング法を用いて直接方策を探索することで、価値または方策に関数近似器を用いる必要はない。さらに、期待累積コストを直接最大化することを行うため、その近似を行う必要がない。そのため、設計者の負荷を極力抑えることができる一方で、期待累積コストの推定に伴う安定性の欠如から逃れることができるといった特徴を有する。
【０１３４】
以上の説明では、マルコフ決定過程の性質（初期状態分布、状態遷移確率、コスト関数）が既知であることを仮定しているが、既存の関数近似法や確率分布推定法と組み合わせれば、上記の性質が未知の場合にも応用することができる。
【０１３５】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０１３６】
【図１】本発明の適応型制御方法および適応型制御プログラムが適用される適応型制御器を用いたシステム１０００の一例を示す概念図である。
【図２】コンピュータ１００の構成をブロック図形式で示す図である。
【図３】マルコフ決定過程の概念を簡潔に示した概念図である。
【図４】本発明の適応型制御器の構成および動作を説明すための具体例の単振り子を示す図であり、（ａ）は、単振り子の外観を示し、（ｂ）は、単振り子のモデルを示す概念図である。
【図５】コンピュータプログラムの処理の流れを説明するための第１のフローチャートである。
【図６】コンピュータプログラムの処理の流れを説明するための第２のフローチャートである。
【図７】求められた状態（角度ｑ）のサンプリング結果を示す図である。
【図８】求められた状態（角速度）のサンプリング結果を示す図である。
【図９】制御信号軌道（トルク）のサンプリング結果を示す図である。
【図１０】決定論的制御方策によって実現された制御の様子を示す図であり、（ａ）は制御対象である単振子の動きをストロボ的に表示し、（ｂ）は、制御時に観測された状態および出力されたトルクの時系列を表す。
【符号の説明】
【０１３７】
１００  コンピュータ、１０２  コンピュータ本体、１０４  ディスプレイ、１０６  ＦＤドライブ、１０８  ＣＤ−ＲＯＭドライブ、１１０  キーボード１１０、１１２  マウス、１１４  無線通信装置、１１８  ＣＤ−ＲＯＭ、１２０  ＣＰＵ、１２２  メモリ、１２４  ハードディスク、１２８  通信インタフェース、２００  被制御装置、１０００  システム。
【図１】
2005084834.tif 000038
【図２】
2005084834.tif 000039
【図３】
2005084834.tif 000040
【図４】
2005084834.tif 000041
【図５】
2005084834.tif 000042
【図６】
2005084834.tif 000043
【図７】
2005084834.tif 000044
【図８】
2005084834.tif 000045
【図９】
2005084834.tif 000046
【図１０】
2005084834.tif 000047
【手続補正書】
【提出日】平成15年11月27日(2003.11.27)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
なお、一般的傾向として、コンピュータのオペレーティングシステムの一部として様々なプログラムモジュールを用意しておき、アプリケーションプログラムはこれらモジュールを所定の配列で必要な時に呼び出して処理を進める方式が一般的である。そうした場合、当該適応型制御器を実現するためのソフトウェア自体にはそうしたモジュールは含まれず、当該コンピュータでオペレーティングシステムと協働してはじめて適応型制御器が実現することになる。しかし、一般的なプラットフォームを使用する限り、そうしたモジュールを含ませたソフトウェアを流通させる必要はなく、それらモジュールを含まないソフトウェア自体およびそれらソフトウェアを記録した記録媒体（およびそれらソフトウェアがネットワーク上を流通する場合のデータ信号）が実施の形態を構成すると考えることができる。