制御対象の制御入力決定手段
【課題】制御対象に入力する制御入力を生成する複数の制御関数の重みを自動的に決定する制御入力決定手段を提供する。
【解決手段】重みが設定された複数の制御関数を有する制御式を用い入力される車両4の制御入力決定手段2であり、価値決定手段6が有する価値部分空間情報に基づいて要求指令に対応する状態の価値と重みの関係データを求め、方針決定手段8で関係データから制御目的を達成する最適化重みを選択し、最適化手段10でその最適化重みを制御式に適用して制御入力を生成し、その制御入力により車両4を制御する。次に、状態抽出手段12でその制御後の車両4の状態を抽出する。価値更新手段14で車両4の制御前の状態と制御後の状態との変化に基づいて、価値部分空間情報の価値を更新する。さらに、評価手段16で制御後の状態と制御目的の目標値との差を求め、その差に基づいて価値更新手段14の価値の更新を補正する制御入力決定手段2。
【解決手段】重みが設定された複数の制御関数を有する制御式を用い入力される車両4の制御入力決定手段2であり、価値決定手段6が有する価値部分空間情報に基づいて要求指令に対応する状態の価値と重みの関係データを求め、方針決定手段8で関係データから制御目的を達成する最適化重みを選択し、最適化手段10でその最適化重みを制御式に適用して制御入力を生成し、その制御入力により車両4を制御する。次に、状態抽出手段12でその制御後の車両4の状態を抽出する。価値更新手段14で車両4の制御前の状態と制御後の状態との変化に基づいて、価値部分空間情報の価値を更新する。さらに、評価手段16で制御後の状態と制御目的の目標値との差を求め、その差に基づいて価値更新手段14の価値の更新を補正する制御入力決定手段2。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ハイブリッド車両、ロボット、電力ネットワーク等の制御対象の状態に応じて異なる制御目的を達成する制御対象の制御入力決定手段に関する。
【背景技術】
【0002】
複数の制御目的を有する制御対象の制御入力に係る最適化問題は、多目的最適化問題として定式化されている。非特許文献1によれば、多目的最適化問題はチェビシェフノルムの最小化問題として、(数1)のようにminmax問題として定式化されることが多い。
【0003】
【数1】
【0004】
ここで、aiは制御目的ごとの重み、fi(x)は最適化対象である制御関数、iは制御目的ごとに最小化した際の理想解、nは制御目的の数である。複数の制御目的がトレードオフ関係にある場合、全ての制御目的を同時に最適化することができないため妥協解を探すことになる。従来、このようなトレードオフを伴う多目的最適化問題を取り扱う方法として2つの方法が用いられている。
【0005】
第1の方法は、制御目的ごとに重みを予め設定しておき、複数の制御目的を一目的に変換して最適化を行う方法である。例えば、特許文献1に開示されているように、ある条件に応じて重みを再設定する方法や、特許文献2に開示されているように、制御目的ごとに優先順位を付けておき、一目的ずつ順番に最適化を行う方法などがある。
【0006】
また、第2の方法は、予め全てのパレート解(ある関数を悪化させることなしには他の関数を改善することができない解)を計算しておき、その中から設計者が適当な解を選ぶことが挙げられる。この方法としては、例えば遺伝的アルゴリズムや進化論的アルゴリズムが使用されている。これらの方法は、例えば非特許文献2に開示されている。
【0007】
【非特許文献1】「多目的計画法の理論と応用」 中山弘隆、谷野哲三 計測自動制御学会(1994)
【非特許文献2】Shigeru Obayashi et al., Finding Tradeofs by Using Multiobjective Optimization Algorithms Transactions of JSASS VOL,No,155 May, 2004
【特許文献1】特開2005−335548号公報
【特許文献2】特開2004−129404号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかし、重みを予め設定しておく第1の方法は、設計時に設計者の試行錯誤による重みの設定が必要であるため、設計基準が明確でないという問題があった。また、特に制御対象の状態ごとに重みを変えることが妥当な場合は、状態ごとに対話、重み調整作業が必要になるため、設計に時間がかかるという問題があった。
【0009】
なお、状態ごとに重みを変えることが妥当な制御対象としては、例えばハイブリッド車両がある。日本の交通事情にあっては、高速道路での走行時は加速性能より燃費が重視され、山道の走行時は燃費より加速性能が重視されるため、車両の走行状態ごとに重みを変える必要がある。様々な走行状態において、重みを設定する作業は煩雑であり、また、走行状態と重みとの関係を明確に表すことが困難であるため、試行錯誤的な設計が必要となる。
【0010】
全てのパレート解を計算する第2の方法は、多くの計算を処理しなければならず、設計時間が長くなるという問題があった。また、計算処理能力が高いスーパーコンピュータやグリッド、クラスターが使える環境では有効だが、例えば制御対象に組み込んでオンラインで最適化を行う場合には適さない。
【0011】
なお、組み込む制御対象としては、例えばロボットが挙げられる。特に、災害救助ロボットにおいては、どのような環境で用いられるか予め分からないため、環境が変わるたびにオンラインで複数の制御目的の最適化をしなおすことが妥当である。
【0012】
本発明が解決しようとする課題は、制御対象に入力する制御入力を生成する複数の制御関数の重みを自動的に決定することができる制御入力決定手段を提供することにある。
【課題を解決するための手段】
【0013】
上記課題を解決するため、本発明は、それぞれ重みが設定された複数の制御関数を有する制御式を用い、入力される要求指令に基づいて制御対象の制御入力を生成して出力する制御入力決定手段であって、制御対象の状態と重みを次元としてそれらに対応する価値が設定された価値部分空間情報を有し、その価値部分空間情報に基づいて要求指令に対応する状態の価値と重みの関係データを求める価値決定手段と、価値決定手段から出力される価値と重みの関係データに基づいて最大価値に対応する重みを、所定の制御目的を達成する最適化重みとして選択する方針決定手段と、方針決定手段により選択された最適化重みを制御式に適用して制御入力を生成する最適化手段と、制御対象の状態を抽出する抽出手段と、その抽出手段により抽出された制御対象の状態と方針決定手段で選択された最適化重みを入力し、制御対象の状態の変化を評価して価値部分空間情報の価値を更新する価値更新手段と、最適化手段から出力される制御入力により制御された制御対象の状態と制御目的の達成度合いに応じて価値更新手段の価値の更新を補正する評価手段とを備えてなることを特徴とする。
【0014】
本発明により、まず、方針決定手段で、要求指令に対応する状態に応じた関係データから制御目的を達成する最適化重みを選択し、最適化手段で、その最適化重みを制御式に適用して制御入力を生成し、その制御入力により制御対象を制御する。ここで、要求指令に対応する状態とは、要求指令を含めた制御対象の状態であり、複数存在する。
【0015】
次に、抽出手段で、その制御後の制御対象の状態を抽出する。ここでは、制御対象の複数の状態の中から、上記選択した最適化重みによって達成される制御目的に応じた状態を抽出する。そして、価値更新手段で、制御対象の制御前の状態と制御後の状態との変化に基づいて、価値部分空間情報の価値を更新する。すなわち、選択した最適化重みに基づく制御を行ったことにより、制御対象が制御目的に沿う状態に変化したかどうかを評価し、制御目的に沿う変化をしていた場合には、選択した最適化重みに対応する価値を高くするように更新するものである。
【0016】
さらに、評価手段で、制御目的の達成度合い、すなわち、制御後の状態と制御目的の目標値との差を求め、その差に基づいて価値更新手段の価値の更新を補正する。このようにして、上記選択した最適化重みに対応する価値が更新されることで価値部分空間情報が更新され、それに伴って関係データが更新される。制御後の制御対象は、更新された関係データに基づいて改めて方針決定手段により選択された最適化重みにより制御されて新たな状態となり、その状態変化に基づいて価値が更新される。これらの過程を繰り返すことで、方針決定手段は制御目的により適する重みを選択するようになり、制御対象を制御目的に沿う状態にすることができる。
【0017】
このように本発明によれば、設計者は、制御目的、状態変化の評価の仕方等を設計することで、以降は制御入力決定手段が学習によって自動的に適する重みを決定するようになっているので、重みの設計をする必要がなくなる。また、本発明は、スーパーコンピュータほどの計算処理能力を必要としないので、車両等に組み込んでオンラインで最適化を行うことが可能となる。
【0018】
この場合において、評価手段を、最適化手段の制御入力により制御された制御対象の状態の評価者の評価に応じて価値更新手段の価値の更新を補正するように構成することもできる。
【0019】
例えば、本発明の制御入力決定手段を車両に組み込むと、運転者が評価者となる。この場合、例えば、アクセル開度やブレーキペダル踏下頻度の記録が評価者の評価となる。運転快適性が制御目的の一つである場合、アクセル開度の変動が少なく、ブレーキペダル踏下頻度が少ない場合に評価が高くなる。また、室内カメラやマイクによって評価者の評価を取得してもよい。この場合、評価者は車両の挙動に対して、笑顔や音声によって評価を通知する。この方法によると、評価者は車両を好みに合わせて積極的に育てる楽しみを得られるため、車両に新たな商品価値を付加するのに好適である。
【0020】
また、価値更新手段を、最適化手段から出力される制御入力により制御された制御対象の状態と制御目的の達成度合いが設定値より大きいとき、価値部分空間において、最適化重みより大きい重みに対応する価値を増やし、達成度合いが設定値より小さいとき、価値部分空間において、最適化重みより小さい重みに対応する価値を更新するように構成することもできる。
【0021】
これにより、価値部分空間において、1つの価値を更新する際にその価値に隣接する価値の更新も行うことができるので、効率よく価値の更新を行うことができる。なお、設定値は0とし、達成度合いを正か負かで表すことが好ましい。
【0022】
また、関係データを複数次元マトリクスとして表現するように構成することもできる。これにより、制御プログラムを容易に作成できる。すなわち、例えば、車両に本発明の構成を持つ制御プログラムを実装する場合、制御知識を数式として保持しておくと計算時間上不利となる場合があるために、予めオフラインで計算させたテーブルやマップを利用するのが好ましい。このテーブルやマップを検索するためのプログラムは、従来の車両制御プログラムに搭載されていることが多いため、マトリクス状に記述された価値部分空間情報は、従来の検索プログラムをそのまま、もしくは少しの改良で用いることができる。
【0023】
また、本発明の制御入力決定手段をシミュレータに組み込み、シミュレータは制御対象の動作パターンと動作パターンに加算される変動情報とを要求指令として制御対象に入力するように構成することもできる。
【発明の効果】
【0024】
本発明によれば、制御対象に入力する制御入力を生成する複数の制御関数の重みを自動的に決定することができる制御入力決定手段を提供できる。
【発明を実施するための最良の形態】
【0025】
以下、本発明の制御入力決定手段2の実施例を図面を参照して説明する。
【実施例1】
【0026】
図1は、本実施例に係る制御入力決定手段2の構成例である。制御入力決定手段2は、それぞれ重みが設定された複数の制御関数を有する制御式を用い、入力される要求指令に基づいて制御対象の制御入力を生成して出力するものである。なお、本実施例では、制御入力決定手段2は、パソコン等の情報処理端末に組み込まれ、制御対象である車両4はハイブリッド車である。また、要求指令は所望の指令を車両4に与えるため指令で、一例としてアクセル開度があり、これに従って車両加速度が決定される。
【0027】
また、重みは、多目的最適化において、それぞれの制御関数をどれだけ重視するかを表す。一般的には(数1)のように、重みaiと制御関数fi(x)を理想解オフセットを考慮して掛け合わせたものの最大値の最小化として一目的最適化問題として取り扱われる。なお、単純に最適化重みと目的関数をかけたものの総和を以って一目的最適化問題として取り扱うことも可能である。
【0028】
図1に示すように、制御入力決定手段2は、価値決定手段6と、方針決定手段8と、最適化手段10と、状態抽出手段12と、価値更新手段14と、評価手段16とを備えて構成されている。
【0029】
価値決定手段6は、車両4の現在の状態において、選択可能な重みの拡大状態空間の価値を決定する。ここで、状態とは車両4の直接的に観測可能な、又は間接的に推定可能な内部状態を指すものであり、ハイブリッド自動車の場合には車速、電池残存容量などが該当する。
【0030】
図2(a)に、状態として横軸を車速[km/h]、縦軸に駆動力[N]をとったときの動作マップを示す。なお、簡単化のために2次元として図示する。運転可能領域20は、車両4の前進の場合を示すものである。常用領域22は、運用頻度が非常に多い領域である。渋滞領域24は、車速が比較的低く、ストップ・アンド・ゴーが多い領域である。加速領域26は、加速性能が重要となる領域である。最大減速領域28は、大きな制動力が求められる領域である。
【0031】
それぞれの領域では重視する制御目的が異なる。例えば、常用領域22では燃費最小が優先されるが、渋滞領域24では燃費最小に加えて、道路沿線住民の健康に配慮して排気最小も優先される。加速領域26では、燃費よりむしろ加速性が重視される。この領域は、交差点での右折や緊急回避など安全性を確保する必要があるためである。また、最大減速領域28ではできるだけ回生量を多くするために、バッテリ利用率を上げることが重視される。
【0032】
このように、状態ごとに重視する制御目的が変わるために、その重みも状態に応じて変化させる必要が生じる。重みを状態ごとに変えるための方法として、例えばタイリングがある。タイリングの一例を図2(b)に示す。図2(b)では、車速、駆動力を等間隔に分割し、個々の長方形領域で全体を被覆する。分割された長方形領域を今後タイルと称し、全体空間をタイルに分割することをタイリングと称す。図中の30はタイルの1つである。それぞれのタイルが別々の重みを持つことで、重みを状態ごとに変えることが可能となる。
【0033】
また、上記の拡大状態空間とは、状態の次元と重みの次元を合わせて次元を拡大したものである。例えば、状態が3次元、重みを2次元とすると、拡大状態空間は5次元として取り扱われる。拡大状態空間は、車両4の状態及び重みの大きさに応じて領域分割され、各分割された領域ごとに価値と称されるスカラー値を有する。
【0034】
価値決定手段6は、状態s、重みaを合わせた拡大状態空間に対して、1次元の価値Qを与えるものとして定義する。ここで、(数2)のように、状態sをm次元ベクトル、重みaをn次元ベクトルとすると、拡大状態空間eは(m+n)次元ベクトルである。
【0035】
【数2】
【0036】
ここで、拡大状態空間の領域に対応する価値を導入するために、基底関数xを導入する。基底関数xの例を図3(a)に示す。なお、簡単のため、m=n=1次元で図示している。図3(a)における基底関数xは、(m+n)次元拡大状態空間を底面に持つ高さ1の超錐として表される。この超錐を数式で書くと、(数3)のようになる。
【0037】
【数3】
【0038】
ここで、添え字νは各超錐に付された一意的な番号である。(数3)中のeはsとaを合わせた拡大状態、cνはν番目の基底関数の中心座標、dνはν番目の基底関数の底面半径を表す。拡大状態e、中心座標cν、底面半径dνはいずれも(m+n)次元ベクトルである。(数3)は最大値ノルムを表しているため、基底関数xの底面は図3(a)のように状態s、重みaと平行な境界を持つ。また、[ ]jは(m+n)次元ベクトルのj成分を表す。このような基底関数xを、数4のように線形重み付き加算することで、連続な拡大状態空間における価値を表すことができる。ここで、wは後述する線形重みである。
【0039】
【数4】
【0040】
このように拡大状態空間をいくつかの部分に分割し、それぞれの部分に対し価値を導入したものを、価値部分空間情報と定義する。ここでは簡単のために、タイリングにより拡大状態空間を分割している。図3(b)は基底関数x4個の線形重み付き加算を行って、(数4)に従って価値を求めた例を示す。このように価値を表せば、連続な状態と連続な重みが与えられたときに価値を一意に決定できる。なお、価値Q(1,1)は、状態s(1)及び重みa(1)のときの価値を示す。
【0041】
また、価値決定手段6は、価値部分空間情報に基づいてある状態に対応する価値と重みの関係データを求めるようになっている。図4に関係データを示す。ここでは簡単のため状態を固定し、制御目的1の重みa1と制御目的2の重みa2の2次元で価値が決まるマトリクスとして表している。ここで、図中の32は最大価値点であり、数字は選択する確率を示す。すなわち、a1=0.2、a2=0を、約97.6%の確率で選択する。
【0042】
方針決定手段8は、図4の関係データに基づいて最大価値に対応する重みを、制御目的を達成する最適化重みとして選択する。すなわち、図4を例にとると、制御目的1と制御目的2を適切に達成するために、a1=0.2、a2=0を最適化重みとして選択する。このように基本的には、最大価値に対応する重みが選択されるが、解候補を探索してより適する重みを選択するために、ある確率で最大価値点32以外の方針をランダムに選択する方法がε−greedy戦略として知られており、本実施例ではこの方法を用いる。
【0043】
最適化手段10は、方針決定手段8により選択された最適化重みを前述した制御式に適用して制御入力を生成するもので、一目的最適化ソルバがこれに相当する。一目的最適化については、例えば、「システム最適化」(玉置久、オーム社)に記載があり、ここでは説明を省略する。
【0044】
状態抽出手段12は、車両4の状態を抽出する。車両4の状態は複数存在するが、ここでは制御目的に係る状態が抽出される。
【0045】
価値更新手段14は、状態抽出手段12により抽出された車両4の状態と方針決定手段8で選択された最適化重みを入力とし、車両4の状態の変化を評価して価値部分空間情報の価値を更新する。価値の更新については、評価手段16の評価により補正されるので後に詳述する。
【0046】
評価手段16は、最適化手段10から出力される制御入力により制御された車両4の状態と制御目的の達成度合いに応じて評価を行い、評価に応じて報酬又は罰則を与える。すなわち、方針決定手段8で選択された最適化重みに基づく車両4の状態が、制御目的に沿うものであれば報酬を、制御目的に沿わないものであれば罰則を与える。なお、以降では報酬を正の報酬と表現し、罰則を負の報酬と表現する。
【0047】
図5は、評価手段16の評価の一例である。図5(a)は、時刻t0におけるエンジン及びモータ動作点の図であり、図5(b)は、時刻t1(=t0+Δt)におけるエンジン及びモータ動作点の図であり、横軸はエンジン回転数、縦軸はトルクである。
【0048】
図5中のエンジン最大トルク36は、エンジンが発生させる最大のトルクであり、総合最大トルク36は、エンジンとモータが協調動作して発生させる最大のトルクである。なお、ここでは、エンジン軸とモータ軸が同じ回転軸に対してトルクを供給するパラレルハイブリッド自動車を想定している。エンジン最低回転数以下では、クラッチによって回転を滑らせながら、エンジントルクを後続軸に伝達する。エンジン動作点38は時刻t0におけるエンジン動作点であり、エンジン動作点40は図1における要求指令に対応する時刻t1におけるエンジン動作点である。
【0049】
図5では、エンジン動作点40が総合最大トルクを超過しているため、要求指令で要求される加速トルクを発生させることができない。なお、ここで、範囲42は時刻t1における可能トルク、範囲44は不足トルクである。このような場合、ハイブリッド車両では変速ギアを切り替えて、エンジントルクが小さい動作点で所望の車両駆動力を発生できるようにするが、この操作が加速もたつきの一因となる。
【0050】
ここで、可能トルクをτm、不足トルクをτdとすると、加速もたつきを最小にするという制御目的に好適な報酬の値は、例えばτd/τmとすることができる。この値が大きいと好ましくないので、この報酬に基づいて価値更新手段14は、τdを時々刻々小さくするように価値を学習していく。複数の制御目的を考慮すると、価値の学習によって動作点τ0やτ1は走行パターンと評価手段16の評価によってある値で均衡する。
【0051】
また、燃費最小という制御目的に好適な報酬の値は、例えば(L−Lmin)/Lminを用いることができる。ここでLは時刻t1における実際の燃費、Lminは燃費最小という制御目的以外の最適化重みを0としたときの理想最小燃費である。なお、燃費最小という制御目的のためには、エンジン動作点を最大トルクに近くするほうが有利であるため、τdを大きくする方向に働く。このようにして、評価手段16は、価値更新手段14が価値の更新の補正に用いる報酬を算出する。
【0052】
価値更新手段14は、(数5)に示す式に従って、線形重みwを更新する。
【数5】
【0053】
なお、(数5)において、αは適当な学習係数、γは未来割引率、rは報酬である。報酬r、状態s、最適化重みaの右上に付けられた(t)は時刻tにおける値を示す。例えば、rの右上に付けられた添え字は(t+1)であるので、時刻tの次の時刻でフィードバックされる報酬を表す。(数5)は一般的にQ学習として知られた強化学習手法であり、時刻(t+1)において正の報酬が得られれば、時刻tにおける状態sの価値Qを増加させるように線形重みwを変化させることを意味している。(数5)についての説明は、例えば、「強化学習の連続値への適用」(柴田聡志、神谷昭基、釧路工業高等専門学校「紀要」第41号)に記載されているため、詳細は省略する。
【0054】
図6は、制御入力決定手段2をハイブリッド自動車設計シミュレータに用いる場合の要求指令の設定手段の構成である。設定手段は、適当な車両4の走行パターン46を指定数回繰り返すための繰り返し手段48と、外乱模擬手段50と、加算手段52とを有する。外乱模擬手段50の外乱が加算手段52によって走行パターンに加え合わされるようになっている。これにより、走行パターンが比較的少ない場合に、繰り返し回数と、外乱のばらつきを適切に設定することで、できるだけ多くの走行パターンにおける学習を行うことができる。
【0055】
このように構成される本実施例の動作について、図7,8のフローチャートを用いて説明する。ここでは、前述したハイブリッド自動車設計シミュレータを用いて学習を行う。まず、図7を参照して設計者が行う作業について説明する。ステップ1において、設計者は、学習用の車両4の運転パターンを選定し、複数の学習用運転パターンを用いる場合は、各運転パターンの出現確率を決定する。
【0056】
ステップ2において、外乱模擬手段50の誤差分布を決定する。ステップ3において、車両4の状態に応じて報酬を出力する関数、すなわち、評価手段16において、制御目的の達成度合いに応じて決まる報酬を出力する関数を設計する。ステップ4において、ステップ1で決定した運転パターンを入力として最適化重みを学習させる。ステップ5において、学習の終了した最適化重みを保存する。最後にステップ6において、新たに評価したい運転パターンを入力として、学習の終了した最適化重みを用いてシミュレーションを行う。
【0057】
次に、図8を参照して最適化重みの学習過程について説明する。なお、この過程では、設計者又は車両4の運転者がすべき作業はなく、自動で行われる。ステップ11において、状態抽出手段12により、時刻tの車速Vt、車両加速度dVt/dt、アクセル開度θtを観測する。ステップ12において、制御関数fi(x)に係る最適化重みをkiとし、車速Vt、車両加速度dVt/dt、アクセル開度θtを状態stとし、最適化重みkiの更新幅Δkiを行動atとする。
【0058】
ステップ13において、価値決定手段6により、状態stの全ての行動atでの価値Qtを観測する。ステップ14において、1−εの確率で最も高い価値Qを示す行動aを選択し、εの確率で行動aをランダムに選択し(ε−greedy戦略)、最適化重みkiを決定する。ステップ15において、最適化手段10により、決定された最適化重みkiを用いて、時刻tにおける最適化を実行する。
【0059】
ステップ16において、評価手段16の報酬rt+1を受け取る。ステップ17において、状態抽出手段12により、時刻(t+1)の車速Vt+1、車両加速度dVt+1/dt、アクセル開度θt+1を観測する。ステップ18において、価値更新手段14により、(数5)を用いて線形重みwを更新する。ステップ19において、時間ステップを(t+1)に進めてステップ11に戻る。以上のステップを充分な回数行ったら学習を終了する。
【0060】
以上説明したように本実施例によれば、方針決定手段8で、要求指令に対応する状態に応じた関係データから制御目的を達成する最適化重みを選択し、最適化手段10で、その最適化重みを制御式に適用して制御入力を生成し、その制御入力により車両4を制御する。次に、状態抽出手段12で、その制御後の車両4の状態を抽出する。そして、価値更新手段14で、車両4の制御前の状態と制御後の状態との変化に基づいて、価値部分空間情報の価値を更新する。さらに、評価手段16で、制御後の状態と制御目的の目標値との差を求め、その差に基づいて価値更新手段14の価値の更新を補正する。
【0061】
このようにして、上記選択した最適化重みに対応する価値が更新されることで価値部分空間情報が更新され、それに伴って関係データが更新される。制御後の車両4は、更新された関係データに基づいて改めて方針決定手段8により選択された最適化重みにより制御されて新たな状態となり、その状態変化に基づいて価値が更新される。これらの過程を繰り返すことで、方針決定手段8は制御目的により適する重みを選択するようになり、車両4を制御目的に沿う状態にすることができる。
【0062】
これにより、設計者は、制御目的、状態変化の評価の仕方等を設計することで、以降は制御入力決定手段2が学習によって自動的に適する重みを決定するようになっているので、重みの設計をする必要がなくなる。また、本発明は、スーパーコンピュータほどの計算処理能力を必要としないので、車両4等に組み込んでオンラインで最適化を行うことが可能となる。
【0063】
また、マトリクス状に表された価値部分空間情報は、従来の制御プログラムに搭載されているテーブルやマップを検索するためのプログラムをそのまま又は少しの改良で用いることができるので、プログラムの開発が容易となる。また、価値部分空間情報を収束させた結果がマトリクス状になっていると、その結果をマップ化して実機に組み込む際の変換作業が不要になるという利点がある。これによって、更なる開発期間短縮効果が得られる。
【実施例2】
【0064】
実施例2について説明する。実施例1では、基本的な価値の更新方法について説明したが、価値部分空間の分割数が多い場合、ある状態になる頻度やある重みを選択する頻度が少なくなり、Q学習が収束するまでの時系列信号を集めきれない場合がある。本実施例は、価値部分空間の分割数が多くなった場合においても、フィードバックによる価値の学習を可能にし、収束を早めるものである。
【0065】
図9(a)に基本的な価値の更新方法の説明図を示す。通常、制御目的1の報酬r1と制御目的2の報酬r2の和によって、価値が更新される。そのため、更新される価値は1つであり、ある状態になる頻度やある重みを選択する頻度が少ない場合、それらに対応する価値の更新がなかなか行われない。
【0066】
図9(b)に価値の収束改善方法の説明図を示す。ここでは説明を簡単にするため、状態sはある状態に固定し、拡大状態空間として、a1、a2、Qを取り出して表記している。さらに簡単化するため、重みa2に関する更新についてのみ説明する。
【0067】
目的2の報酬r2が正の場合、重みa2の値について、方針決定手段8で選択した値より大きい値の重みに対応する価値は増加することが考えられる。一方、選択した値より小さい値の重みに対応する価値は減少すると考えられる。なお、この場合の価値の増減は推定によるものであるため、割り引いて評価する必要がある。割引率をβ(0≦β≦1)とすると、フィードバックされた評価r1+r2によって決定される線形重みwに目的2の報酬r2の符号と割引率βをかけたものを反映させる。これを式に書き下したものを(数6)に示す。
【0068】
【数6】
【0069】
これにより、ある評価がフィードバックされたときに更新される価値が増えるため、効率よく価値の学習を行うことが可能になり、収束性が改善する。
【0070】
一方、図10は、図2(b)において、充分な学習回数を確保できなかったタイルに対して、隣接タイルから価値を補間する方法の説明図である。ここで、タイル60,61は最適化重みが収束したタイルであり、タイル62,63は最適化重みがまだ収束していないタイルである。タイル62は両脇に収束したタイル60,61が存在するため、例えば平均をとることで価値を推定することができる。
【0071】
タイル63は左側に収束したタイル60があるものの、右側には収束したタイルがないため、最も近い収束したタイル60の最適化重みを用いることができる。このように、収束していない領域が存在する場合でも、価値の補間によって、比較的精度よく本発明による多目的最適化手法を用いることができる。
【実施例3】
【0072】
図11を参照して実施例3について説明する。実施例1,2との違いは、評価手段16の変わりに、評価者70が車両4の制御後の状態、挙動を評価することである。なお、評価者70は通常は車両4の運転者である。評価者70による評価は、評価取得手段72によって取得され報酬に変換される。
【0073】
評価取得手段72はハイブリッド自動車の場合、例えばアクセル開度センサ信号の記録や、ブレーキペダル踏下頻度取得によって実現される。例えば、運転快適性が制御目的の1つである場合、アクセル開度センサ信号の変動が少なく、ブレーキペダル踏下頻度が少ないと報酬は高い。
【0074】
一方、評価取得手段72を、車内カメラやマイクによって実現することもできる。この場合、評価者70は車両4の制御後の状態に対して、笑顔や音声によって評価取得手段72に評価を通知する。車両4が評価者70にとって不快な挙動をしたときには評価が下がることになる。
【0075】
これらの方法による場合、評価者70は特に意識して評価を行う必要はなく、時間とともに自動的に評価が取得される。これにより、評価者70は車両4を積極的に育てる楽しみを得られるため、車両4に新たな商品価値を付加することができる。
【実施例4】
【0076】
実施例1乃至3では、本発明を車両に適用する場合について説明したが、本発明は時々刻々評価情報が得られる対象であるならば、様々な対象に適用することができる。例えば、風力発電や太陽発電といった再生可能エネルギー発電を分散電力として系統に接続した電力システムの制御にも適用できる。
【0077】
図12に電力システムに本発明を適用した例について示す。図12に示す電力システムは、電力ネットワーク80を有し、集中電力82と分散電力84の供給を受ける。図中の86は電力需要である。また、電力需給情報取得手段88は、電力ネットワーク80の電力需要及び電力供給の情報を取得する。なお、集中電力82が本発明の制御対象である。評価手段16には、電力需給情報のほかに、電力需要予測及びCO2排出割当が入力される。電力需要予測は、CO2排出割当を元に予め目標として設定する。
【0078】
図13に電力システムにおける評価の考え方を示す。図13には、CO2排出割当90、電力需要予測のCO2排出量換算値92、実排出CO2量94、瞬時超過CO2量96が示されている。瞬時超過CO2量96は、実排出CO2量94から電力需要予測のCO2排出量換算値92を引いたものとして定義する。このときの電力システムの制御目的は、まず発電コストを最小にすることであり、次に、瞬時超過CO2量96を最小にすることである。このように定義することで電力システムにおいても、実施例1乃至3と同様に、本発明を適用して複数の制御目的を考慮した系統電力制御を行うことができる。
【0079】
以上、4つの実施例について説明したが、本発明は、これらに限らず適宜構成を変更して適用することができる。例えば、本実施例では、基底関数として(数3)を用いたが、これに限るものではなく、(数7)のようにガウス分布形状にしてもよい。
【0080】
【数7】
【0081】
このガウス関数を用いれば、いたるところで微分可能な価値関数Qを得ることができるため、数4と数7から得られる価値関数も微分可能となり、感度解析や最小値探索といった微分を用いた各種数値演算手法の適用が容易になる。
【0082】
また、本実施例では、タイリングにより拡大状態空間を分割しているが、例えば、複数の母点からの距離によって分類するボロノイ分割や、サポートベクタマシンといった方法も用いることができる。
【0083】
また、方針決定手段8で価値を選択する方法としてε−greedy戦略を用いたが、最大価値を選択する確率を時間とともに大きくするアニーリング戦略も用いることができる。
【0084】
また、本実施例では、シミュレータにより最適化重みを学習させることについて述べたが、シミュレータである程度最適化重みを学習させ、その後車両に組み込んで運転者好みの挙動をする車両にすることもできる。
【図面の簡単な説明】
【0085】
【図1】本発明の制御入力決定手段の構成図である。
【図2】(a)は、車両の動作マップであり、(b)は、動作マップのタイリングの方法である。
【図3】(a)は、基底関数の一例であり、(b)は、基底関数4個の線形重み付け加算である。
【図4】2次元の重みのマトリクスである。
【図5】(a)は、時刻t0におけるエンジン及びモータ動作点の図であり、(b)は、時刻t1(=t0+Δt)におけるエンジン及びモータ動作点の図である。
【図6】ハイブリッド自動車設計シミュレータに用いる場合の要求指令の設定手段の構成である。
【図7】設計者の作業のフローチャートである。
【図8】学習過程を示すフローチャートである。
【図9】(a)は、基本的な価値の更新方法の説明図であり、(b)は、価値の収束改善方法の説明図である。
【図10】隣接タイルから価値Qを補間する方法の説明図である。
【図11】実施例3の制御入力決定手段の構成図である。
【図12】本発明を電力システムに適用した例である。
【図13】電力システムにおける評価の考え方を説明する図である。
【符号の説明】
【0086】
2 制御入力決定手段
4 車両
6 価値決定手段
8 方針決定手段
10 最適化手段
12 状態抽出手段
14 価値更新手段
16 評価手段
70 評価者
82 集中電力
【技術分野】
【0001】
本発明は、ハイブリッド車両、ロボット、電力ネットワーク等の制御対象の状態に応じて異なる制御目的を達成する制御対象の制御入力決定手段に関する。
【背景技術】
【0002】
複数の制御目的を有する制御対象の制御入力に係る最適化問題は、多目的最適化問題として定式化されている。非特許文献1によれば、多目的最適化問題はチェビシェフノルムの最小化問題として、(数1)のようにminmax問題として定式化されることが多い。
【0003】
【数1】
【0004】
ここで、aiは制御目的ごとの重み、fi(x)は最適化対象である制御関数、iは制御目的ごとに最小化した際の理想解、nは制御目的の数である。複数の制御目的がトレードオフ関係にある場合、全ての制御目的を同時に最適化することができないため妥協解を探すことになる。従来、このようなトレードオフを伴う多目的最適化問題を取り扱う方法として2つの方法が用いられている。
【0005】
第1の方法は、制御目的ごとに重みを予め設定しておき、複数の制御目的を一目的に変換して最適化を行う方法である。例えば、特許文献1に開示されているように、ある条件に応じて重みを再設定する方法や、特許文献2に開示されているように、制御目的ごとに優先順位を付けておき、一目的ずつ順番に最適化を行う方法などがある。
【0006】
また、第2の方法は、予め全てのパレート解(ある関数を悪化させることなしには他の関数を改善することができない解)を計算しておき、その中から設計者が適当な解を選ぶことが挙げられる。この方法としては、例えば遺伝的アルゴリズムや進化論的アルゴリズムが使用されている。これらの方法は、例えば非特許文献2に開示されている。
【0007】
【非特許文献1】「多目的計画法の理論と応用」 中山弘隆、谷野哲三 計測自動制御学会(1994)
【非特許文献2】Shigeru Obayashi et al., Finding Tradeofs by Using Multiobjective Optimization Algorithms Transactions of JSASS VOL,No,155 May, 2004
【特許文献1】特開2005−335548号公報
【特許文献2】特開2004−129404号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかし、重みを予め設定しておく第1の方法は、設計時に設計者の試行錯誤による重みの設定が必要であるため、設計基準が明確でないという問題があった。また、特に制御対象の状態ごとに重みを変えることが妥当な場合は、状態ごとに対話、重み調整作業が必要になるため、設計に時間がかかるという問題があった。
【0009】
なお、状態ごとに重みを変えることが妥当な制御対象としては、例えばハイブリッド車両がある。日本の交通事情にあっては、高速道路での走行時は加速性能より燃費が重視され、山道の走行時は燃費より加速性能が重視されるため、車両の走行状態ごとに重みを変える必要がある。様々な走行状態において、重みを設定する作業は煩雑であり、また、走行状態と重みとの関係を明確に表すことが困難であるため、試行錯誤的な設計が必要となる。
【0010】
全てのパレート解を計算する第2の方法は、多くの計算を処理しなければならず、設計時間が長くなるという問題があった。また、計算処理能力が高いスーパーコンピュータやグリッド、クラスターが使える環境では有効だが、例えば制御対象に組み込んでオンラインで最適化を行う場合には適さない。
【0011】
なお、組み込む制御対象としては、例えばロボットが挙げられる。特に、災害救助ロボットにおいては、どのような環境で用いられるか予め分からないため、環境が変わるたびにオンラインで複数の制御目的の最適化をしなおすことが妥当である。
【0012】
本発明が解決しようとする課題は、制御対象に入力する制御入力を生成する複数の制御関数の重みを自動的に決定することができる制御入力決定手段を提供することにある。
【課題を解決するための手段】
【0013】
上記課題を解決するため、本発明は、それぞれ重みが設定された複数の制御関数を有する制御式を用い、入力される要求指令に基づいて制御対象の制御入力を生成して出力する制御入力決定手段であって、制御対象の状態と重みを次元としてそれらに対応する価値が設定された価値部分空間情報を有し、その価値部分空間情報に基づいて要求指令に対応する状態の価値と重みの関係データを求める価値決定手段と、価値決定手段から出力される価値と重みの関係データに基づいて最大価値に対応する重みを、所定の制御目的を達成する最適化重みとして選択する方針決定手段と、方針決定手段により選択された最適化重みを制御式に適用して制御入力を生成する最適化手段と、制御対象の状態を抽出する抽出手段と、その抽出手段により抽出された制御対象の状態と方針決定手段で選択された最適化重みを入力し、制御対象の状態の変化を評価して価値部分空間情報の価値を更新する価値更新手段と、最適化手段から出力される制御入力により制御された制御対象の状態と制御目的の達成度合いに応じて価値更新手段の価値の更新を補正する評価手段とを備えてなることを特徴とする。
【0014】
本発明により、まず、方針決定手段で、要求指令に対応する状態に応じた関係データから制御目的を達成する最適化重みを選択し、最適化手段で、その最適化重みを制御式に適用して制御入力を生成し、その制御入力により制御対象を制御する。ここで、要求指令に対応する状態とは、要求指令を含めた制御対象の状態であり、複数存在する。
【0015】
次に、抽出手段で、その制御後の制御対象の状態を抽出する。ここでは、制御対象の複数の状態の中から、上記選択した最適化重みによって達成される制御目的に応じた状態を抽出する。そして、価値更新手段で、制御対象の制御前の状態と制御後の状態との変化に基づいて、価値部分空間情報の価値を更新する。すなわち、選択した最適化重みに基づく制御を行ったことにより、制御対象が制御目的に沿う状態に変化したかどうかを評価し、制御目的に沿う変化をしていた場合には、選択した最適化重みに対応する価値を高くするように更新するものである。
【0016】
さらに、評価手段で、制御目的の達成度合い、すなわち、制御後の状態と制御目的の目標値との差を求め、その差に基づいて価値更新手段の価値の更新を補正する。このようにして、上記選択した最適化重みに対応する価値が更新されることで価値部分空間情報が更新され、それに伴って関係データが更新される。制御後の制御対象は、更新された関係データに基づいて改めて方針決定手段により選択された最適化重みにより制御されて新たな状態となり、その状態変化に基づいて価値が更新される。これらの過程を繰り返すことで、方針決定手段は制御目的により適する重みを選択するようになり、制御対象を制御目的に沿う状態にすることができる。
【0017】
このように本発明によれば、設計者は、制御目的、状態変化の評価の仕方等を設計することで、以降は制御入力決定手段が学習によって自動的に適する重みを決定するようになっているので、重みの設計をする必要がなくなる。また、本発明は、スーパーコンピュータほどの計算処理能力を必要としないので、車両等に組み込んでオンラインで最適化を行うことが可能となる。
【0018】
この場合において、評価手段を、最適化手段の制御入力により制御された制御対象の状態の評価者の評価に応じて価値更新手段の価値の更新を補正するように構成することもできる。
【0019】
例えば、本発明の制御入力決定手段を車両に組み込むと、運転者が評価者となる。この場合、例えば、アクセル開度やブレーキペダル踏下頻度の記録が評価者の評価となる。運転快適性が制御目的の一つである場合、アクセル開度の変動が少なく、ブレーキペダル踏下頻度が少ない場合に評価が高くなる。また、室内カメラやマイクによって評価者の評価を取得してもよい。この場合、評価者は車両の挙動に対して、笑顔や音声によって評価を通知する。この方法によると、評価者は車両を好みに合わせて積極的に育てる楽しみを得られるため、車両に新たな商品価値を付加するのに好適である。
【0020】
また、価値更新手段を、最適化手段から出力される制御入力により制御された制御対象の状態と制御目的の達成度合いが設定値より大きいとき、価値部分空間において、最適化重みより大きい重みに対応する価値を増やし、達成度合いが設定値より小さいとき、価値部分空間において、最適化重みより小さい重みに対応する価値を更新するように構成することもできる。
【0021】
これにより、価値部分空間において、1つの価値を更新する際にその価値に隣接する価値の更新も行うことができるので、効率よく価値の更新を行うことができる。なお、設定値は0とし、達成度合いを正か負かで表すことが好ましい。
【0022】
また、関係データを複数次元マトリクスとして表現するように構成することもできる。これにより、制御プログラムを容易に作成できる。すなわち、例えば、車両に本発明の構成を持つ制御プログラムを実装する場合、制御知識を数式として保持しておくと計算時間上不利となる場合があるために、予めオフラインで計算させたテーブルやマップを利用するのが好ましい。このテーブルやマップを検索するためのプログラムは、従来の車両制御プログラムに搭載されていることが多いため、マトリクス状に記述された価値部分空間情報は、従来の検索プログラムをそのまま、もしくは少しの改良で用いることができる。
【0023】
また、本発明の制御入力決定手段をシミュレータに組み込み、シミュレータは制御対象の動作パターンと動作パターンに加算される変動情報とを要求指令として制御対象に入力するように構成することもできる。
【発明の効果】
【0024】
本発明によれば、制御対象に入力する制御入力を生成する複数の制御関数の重みを自動的に決定することができる制御入力決定手段を提供できる。
【発明を実施するための最良の形態】
【0025】
以下、本発明の制御入力決定手段2の実施例を図面を参照して説明する。
【実施例1】
【0026】
図1は、本実施例に係る制御入力決定手段2の構成例である。制御入力決定手段2は、それぞれ重みが設定された複数の制御関数を有する制御式を用い、入力される要求指令に基づいて制御対象の制御入力を生成して出力するものである。なお、本実施例では、制御入力決定手段2は、パソコン等の情報処理端末に組み込まれ、制御対象である車両4はハイブリッド車である。また、要求指令は所望の指令を車両4に与えるため指令で、一例としてアクセル開度があり、これに従って車両加速度が決定される。
【0027】
また、重みは、多目的最適化において、それぞれの制御関数をどれだけ重視するかを表す。一般的には(数1)のように、重みaiと制御関数fi(x)を理想解オフセットを考慮して掛け合わせたものの最大値の最小化として一目的最適化問題として取り扱われる。なお、単純に最適化重みと目的関数をかけたものの総和を以って一目的最適化問題として取り扱うことも可能である。
【0028】
図1に示すように、制御入力決定手段2は、価値決定手段6と、方針決定手段8と、最適化手段10と、状態抽出手段12と、価値更新手段14と、評価手段16とを備えて構成されている。
【0029】
価値決定手段6は、車両4の現在の状態において、選択可能な重みの拡大状態空間の価値を決定する。ここで、状態とは車両4の直接的に観測可能な、又は間接的に推定可能な内部状態を指すものであり、ハイブリッド自動車の場合には車速、電池残存容量などが該当する。
【0030】
図2(a)に、状態として横軸を車速[km/h]、縦軸に駆動力[N]をとったときの動作マップを示す。なお、簡単化のために2次元として図示する。運転可能領域20は、車両4の前進の場合を示すものである。常用領域22は、運用頻度が非常に多い領域である。渋滞領域24は、車速が比較的低く、ストップ・アンド・ゴーが多い領域である。加速領域26は、加速性能が重要となる領域である。最大減速領域28は、大きな制動力が求められる領域である。
【0031】
それぞれの領域では重視する制御目的が異なる。例えば、常用領域22では燃費最小が優先されるが、渋滞領域24では燃費最小に加えて、道路沿線住民の健康に配慮して排気最小も優先される。加速領域26では、燃費よりむしろ加速性が重視される。この領域は、交差点での右折や緊急回避など安全性を確保する必要があるためである。また、最大減速領域28ではできるだけ回生量を多くするために、バッテリ利用率を上げることが重視される。
【0032】
このように、状態ごとに重視する制御目的が変わるために、その重みも状態に応じて変化させる必要が生じる。重みを状態ごとに変えるための方法として、例えばタイリングがある。タイリングの一例を図2(b)に示す。図2(b)では、車速、駆動力を等間隔に分割し、個々の長方形領域で全体を被覆する。分割された長方形領域を今後タイルと称し、全体空間をタイルに分割することをタイリングと称す。図中の30はタイルの1つである。それぞれのタイルが別々の重みを持つことで、重みを状態ごとに変えることが可能となる。
【0033】
また、上記の拡大状態空間とは、状態の次元と重みの次元を合わせて次元を拡大したものである。例えば、状態が3次元、重みを2次元とすると、拡大状態空間は5次元として取り扱われる。拡大状態空間は、車両4の状態及び重みの大きさに応じて領域分割され、各分割された領域ごとに価値と称されるスカラー値を有する。
【0034】
価値決定手段6は、状態s、重みaを合わせた拡大状態空間に対して、1次元の価値Qを与えるものとして定義する。ここで、(数2)のように、状態sをm次元ベクトル、重みaをn次元ベクトルとすると、拡大状態空間eは(m+n)次元ベクトルである。
【0035】
【数2】
【0036】
ここで、拡大状態空間の領域に対応する価値を導入するために、基底関数xを導入する。基底関数xの例を図3(a)に示す。なお、簡単のため、m=n=1次元で図示している。図3(a)における基底関数xは、(m+n)次元拡大状態空間を底面に持つ高さ1の超錐として表される。この超錐を数式で書くと、(数3)のようになる。
【0037】
【数3】
【0038】
ここで、添え字νは各超錐に付された一意的な番号である。(数3)中のeはsとaを合わせた拡大状態、cνはν番目の基底関数の中心座標、dνはν番目の基底関数の底面半径を表す。拡大状態e、中心座標cν、底面半径dνはいずれも(m+n)次元ベクトルである。(数3)は最大値ノルムを表しているため、基底関数xの底面は図3(a)のように状態s、重みaと平行な境界を持つ。また、[ ]jは(m+n)次元ベクトルのj成分を表す。このような基底関数xを、数4のように線形重み付き加算することで、連続な拡大状態空間における価値を表すことができる。ここで、wは後述する線形重みである。
【0039】
【数4】
【0040】
このように拡大状態空間をいくつかの部分に分割し、それぞれの部分に対し価値を導入したものを、価値部分空間情報と定義する。ここでは簡単のために、タイリングにより拡大状態空間を分割している。図3(b)は基底関数x4個の線形重み付き加算を行って、(数4)に従って価値を求めた例を示す。このように価値を表せば、連続な状態と連続な重みが与えられたときに価値を一意に決定できる。なお、価値Q(1,1)は、状態s(1)及び重みa(1)のときの価値を示す。
【0041】
また、価値決定手段6は、価値部分空間情報に基づいてある状態に対応する価値と重みの関係データを求めるようになっている。図4に関係データを示す。ここでは簡単のため状態を固定し、制御目的1の重みa1と制御目的2の重みa2の2次元で価値が決まるマトリクスとして表している。ここで、図中の32は最大価値点であり、数字は選択する確率を示す。すなわち、a1=0.2、a2=0を、約97.6%の確率で選択する。
【0042】
方針決定手段8は、図4の関係データに基づいて最大価値に対応する重みを、制御目的を達成する最適化重みとして選択する。すなわち、図4を例にとると、制御目的1と制御目的2を適切に達成するために、a1=0.2、a2=0を最適化重みとして選択する。このように基本的には、最大価値に対応する重みが選択されるが、解候補を探索してより適する重みを選択するために、ある確率で最大価値点32以外の方針をランダムに選択する方法がε−greedy戦略として知られており、本実施例ではこの方法を用いる。
【0043】
最適化手段10は、方針決定手段8により選択された最適化重みを前述した制御式に適用して制御入力を生成するもので、一目的最適化ソルバがこれに相当する。一目的最適化については、例えば、「システム最適化」(玉置久、オーム社)に記載があり、ここでは説明を省略する。
【0044】
状態抽出手段12は、車両4の状態を抽出する。車両4の状態は複数存在するが、ここでは制御目的に係る状態が抽出される。
【0045】
価値更新手段14は、状態抽出手段12により抽出された車両4の状態と方針決定手段8で選択された最適化重みを入力とし、車両4の状態の変化を評価して価値部分空間情報の価値を更新する。価値の更新については、評価手段16の評価により補正されるので後に詳述する。
【0046】
評価手段16は、最適化手段10から出力される制御入力により制御された車両4の状態と制御目的の達成度合いに応じて評価を行い、評価に応じて報酬又は罰則を与える。すなわち、方針決定手段8で選択された最適化重みに基づく車両4の状態が、制御目的に沿うものであれば報酬を、制御目的に沿わないものであれば罰則を与える。なお、以降では報酬を正の報酬と表現し、罰則を負の報酬と表現する。
【0047】
図5は、評価手段16の評価の一例である。図5(a)は、時刻t0におけるエンジン及びモータ動作点の図であり、図5(b)は、時刻t1(=t0+Δt)におけるエンジン及びモータ動作点の図であり、横軸はエンジン回転数、縦軸はトルクである。
【0048】
図5中のエンジン最大トルク36は、エンジンが発生させる最大のトルクであり、総合最大トルク36は、エンジンとモータが協調動作して発生させる最大のトルクである。なお、ここでは、エンジン軸とモータ軸が同じ回転軸に対してトルクを供給するパラレルハイブリッド自動車を想定している。エンジン最低回転数以下では、クラッチによって回転を滑らせながら、エンジントルクを後続軸に伝達する。エンジン動作点38は時刻t0におけるエンジン動作点であり、エンジン動作点40は図1における要求指令に対応する時刻t1におけるエンジン動作点である。
【0049】
図5では、エンジン動作点40が総合最大トルクを超過しているため、要求指令で要求される加速トルクを発生させることができない。なお、ここで、範囲42は時刻t1における可能トルク、範囲44は不足トルクである。このような場合、ハイブリッド車両では変速ギアを切り替えて、エンジントルクが小さい動作点で所望の車両駆動力を発生できるようにするが、この操作が加速もたつきの一因となる。
【0050】
ここで、可能トルクをτm、不足トルクをτdとすると、加速もたつきを最小にするという制御目的に好適な報酬の値は、例えばτd/τmとすることができる。この値が大きいと好ましくないので、この報酬に基づいて価値更新手段14は、τdを時々刻々小さくするように価値を学習していく。複数の制御目的を考慮すると、価値の学習によって動作点τ0やτ1は走行パターンと評価手段16の評価によってある値で均衡する。
【0051】
また、燃費最小という制御目的に好適な報酬の値は、例えば(L−Lmin)/Lminを用いることができる。ここでLは時刻t1における実際の燃費、Lminは燃費最小という制御目的以外の最適化重みを0としたときの理想最小燃費である。なお、燃費最小という制御目的のためには、エンジン動作点を最大トルクに近くするほうが有利であるため、τdを大きくする方向に働く。このようにして、評価手段16は、価値更新手段14が価値の更新の補正に用いる報酬を算出する。
【0052】
価値更新手段14は、(数5)に示す式に従って、線形重みwを更新する。
【数5】
【0053】
なお、(数5)において、αは適当な学習係数、γは未来割引率、rは報酬である。報酬r、状態s、最適化重みaの右上に付けられた(t)は時刻tにおける値を示す。例えば、rの右上に付けられた添え字は(t+1)であるので、時刻tの次の時刻でフィードバックされる報酬を表す。(数5)は一般的にQ学習として知られた強化学習手法であり、時刻(t+1)において正の報酬が得られれば、時刻tにおける状態sの価値Qを増加させるように線形重みwを変化させることを意味している。(数5)についての説明は、例えば、「強化学習の連続値への適用」(柴田聡志、神谷昭基、釧路工業高等専門学校「紀要」第41号)に記載されているため、詳細は省略する。
【0054】
図6は、制御入力決定手段2をハイブリッド自動車設計シミュレータに用いる場合の要求指令の設定手段の構成である。設定手段は、適当な車両4の走行パターン46を指定数回繰り返すための繰り返し手段48と、外乱模擬手段50と、加算手段52とを有する。外乱模擬手段50の外乱が加算手段52によって走行パターンに加え合わされるようになっている。これにより、走行パターンが比較的少ない場合に、繰り返し回数と、外乱のばらつきを適切に設定することで、できるだけ多くの走行パターンにおける学習を行うことができる。
【0055】
このように構成される本実施例の動作について、図7,8のフローチャートを用いて説明する。ここでは、前述したハイブリッド自動車設計シミュレータを用いて学習を行う。まず、図7を参照して設計者が行う作業について説明する。ステップ1において、設計者は、学習用の車両4の運転パターンを選定し、複数の学習用運転パターンを用いる場合は、各運転パターンの出現確率を決定する。
【0056】
ステップ2において、外乱模擬手段50の誤差分布を決定する。ステップ3において、車両4の状態に応じて報酬を出力する関数、すなわち、評価手段16において、制御目的の達成度合いに応じて決まる報酬を出力する関数を設計する。ステップ4において、ステップ1で決定した運転パターンを入力として最適化重みを学習させる。ステップ5において、学習の終了した最適化重みを保存する。最後にステップ6において、新たに評価したい運転パターンを入力として、学習の終了した最適化重みを用いてシミュレーションを行う。
【0057】
次に、図8を参照して最適化重みの学習過程について説明する。なお、この過程では、設計者又は車両4の運転者がすべき作業はなく、自動で行われる。ステップ11において、状態抽出手段12により、時刻tの車速Vt、車両加速度dVt/dt、アクセル開度θtを観測する。ステップ12において、制御関数fi(x)に係る最適化重みをkiとし、車速Vt、車両加速度dVt/dt、アクセル開度θtを状態stとし、最適化重みkiの更新幅Δkiを行動atとする。
【0058】
ステップ13において、価値決定手段6により、状態stの全ての行動atでの価値Qtを観測する。ステップ14において、1−εの確率で最も高い価値Qを示す行動aを選択し、εの確率で行動aをランダムに選択し(ε−greedy戦略)、最適化重みkiを決定する。ステップ15において、最適化手段10により、決定された最適化重みkiを用いて、時刻tにおける最適化を実行する。
【0059】
ステップ16において、評価手段16の報酬rt+1を受け取る。ステップ17において、状態抽出手段12により、時刻(t+1)の車速Vt+1、車両加速度dVt+1/dt、アクセル開度θt+1を観測する。ステップ18において、価値更新手段14により、(数5)を用いて線形重みwを更新する。ステップ19において、時間ステップを(t+1)に進めてステップ11に戻る。以上のステップを充分な回数行ったら学習を終了する。
【0060】
以上説明したように本実施例によれば、方針決定手段8で、要求指令に対応する状態に応じた関係データから制御目的を達成する最適化重みを選択し、最適化手段10で、その最適化重みを制御式に適用して制御入力を生成し、その制御入力により車両4を制御する。次に、状態抽出手段12で、その制御後の車両4の状態を抽出する。そして、価値更新手段14で、車両4の制御前の状態と制御後の状態との変化に基づいて、価値部分空間情報の価値を更新する。さらに、評価手段16で、制御後の状態と制御目的の目標値との差を求め、その差に基づいて価値更新手段14の価値の更新を補正する。
【0061】
このようにして、上記選択した最適化重みに対応する価値が更新されることで価値部分空間情報が更新され、それに伴って関係データが更新される。制御後の車両4は、更新された関係データに基づいて改めて方針決定手段8により選択された最適化重みにより制御されて新たな状態となり、その状態変化に基づいて価値が更新される。これらの過程を繰り返すことで、方針決定手段8は制御目的により適する重みを選択するようになり、車両4を制御目的に沿う状態にすることができる。
【0062】
これにより、設計者は、制御目的、状態変化の評価の仕方等を設計することで、以降は制御入力決定手段2が学習によって自動的に適する重みを決定するようになっているので、重みの設計をする必要がなくなる。また、本発明は、スーパーコンピュータほどの計算処理能力を必要としないので、車両4等に組み込んでオンラインで最適化を行うことが可能となる。
【0063】
また、マトリクス状に表された価値部分空間情報は、従来の制御プログラムに搭載されているテーブルやマップを検索するためのプログラムをそのまま又は少しの改良で用いることができるので、プログラムの開発が容易となる。また、価値部分空間情報を収束させた結果がマトリクス状になっていると、その結果をマップ化して実機に組み込む際の変換作業が不要になるという利点がある。これによって、更なる開発期間短縮効果が得られる。
【実施例2】
【0064】
実施例2について説明する。実施例1では、基本的な価値の更新方法について説明したが、価値部分空間の分割数が多い場合、ある状態になる頻度やある重みを選択する頻度が少なくなり、Q学習が収束するまでの時系列信号を集めきれない場合がある。本実施例は、価値部分空間の分割数が多くなった場合においても、フィードバックによる価値の学習を可能にし、収束を早めるものである。
【0065】
図9(a)に基本的な価値の更新方法の説明図を示す。通常、制御目的1の報酬r1と制御目的2の報酬r2の和によって、価値が更新される。そのため、更新される価値は1つであり、ある状態になる頻度やある重みを選択する頻度が少ない場合、それらに対応する価値の更新がなかなか行われない。
【0066】
図9(b)に価値の収束改善方法の説明図を示す。ここでは説明を簡単にするため、状態sはある状態に固定し、拡大状態空間として、a1、a2、Qを取り出して表記している。さらに簡単化するため、重みa2に関する更新についてのみ説明する。
【0067】
目的2の報酬r2が正の場合、重みa2の値について、方針決定手段8で選択した値より大きい値の重みに対応する価値は増加することが考えられる。一方、選択した値より小さい値の重みに対応する価値は減少すると考えられる。なお、この場合の価値の増減は推定によるものであるため、割り引いて評価する必要がある。割引率をβ(0≦β≦1)とすると、フィードバックされた評価r1+r2によって決定される線形重みwに目的2の報酬r2の符号と割引率βをかけたものを反映させる。これを式に書き下したものを(数6)に示す。
【0068】
【数6】
【0069】
これにより、ある評価がフィードバックされたときに更新される価値が増えるため、効率よく価値の学習を行うことが可能になり、収束性が改善する。
【0070】
一方、図10は、図2(b)において、充分な学習回数を確保できなかったタイルに対して、隣接タイルから価値を補間する方法の説明図である。ここで、タイル60,61は最適化重みが収束したタイルであり、タイル62,63は最適化重みがまだ収束していないタイルである。タイル62は両脇に収束したタイル60,61が存在するため、例えば平均をとることで価値を推定することができる。
【0071】
タイル63は左側に収束したタイル60があるものの、右側には収束したタイルがないため、最も近い収束したタイル60の最適化重みを用いることができる。このように、収束していない領域が存在する場合でも、価値の補間によって、比較的精度よく本発明による多目的最適化手法を用いることができる。
【実施例3】
【0072】
図11を参照して実施例3について説明する。実施例1,2との違いは、評価手段16の変わりに、評価者70が車両4の制御後の状態、挙動を評価することである。なお、評価者70は通常は車両4の運転者である。評価者70による評価は、評価取得手段72によって取得され報酬に変換される。
【0073】
評価取得手段72はハイブリッド自動車の場合、例えばアクセル開度センサ信号の記録や、ブレーキペダル踏下頻度取得によって実現される。例えば、運転快適性が制御目的の1つである場合、アクセル開度センサ信号の変動が少なく、ブレーキペダル踏下頻度が少ないと報酬は高い。
【0074】
一方、評価取得手段72を、車内カメラやマイクによって実現することもできる。この場合、評価者70は車両4の制御後の状態に対して、笑顔や音声によって評価取得手段72に評価を通知する。車両4が評価者70にとって不快な挙動をしたときには評価が下がることになる。
【0075】
これらの方法による場合、評価者70は特に意識して評価を行う必要はなく、時間とともに自動的に評価が取得される。これにより、評価者70は車両4を積極的に育てる楽しみを得られるため、車両4に新たな商品価値を付加することができる。
【実施例4】
【0076】
実施例1乃至3では、本発明を車両に適用する場合について説明したが、本発明は時々刻々評価情報が得られる対象であるならば、様々な対象に適用することができる。例えば、風力発電や太陽発電といった再生可能エネルギー発電を分散電力として系統に接続した電力システムの制御にも適用できる。
【0077】
図12に電力システムに本発明を適用した例について示す。図12に示す電力システムは、電力ネットワーク80を有し、集中電力82と分散電力84の供給を受ける。図中の86は電力需要である。また、電力需給情報取得手段88は、電力ネットワーク80の電力需要及び電力供給の情報を取得する。なお、集中電力82が本発明の制御対象である。評価手段16には、電力需給情報のほかに、電力需要予測及びCO2排出割当が入力される。電力需要予測は、CO2排出割当を元に予め目標として設定する。
【0078】
図13に電力システムにおける評価の考え方を示す。図13には、CO2排出割当90、電力需要予測のCO2排出量換算値92、実排出CO2量94、瞬時超過CO2量96が示されている。瞬時超過CO2量96は、実排出CO2量94から電力需要予測のCO2排出量換算値92を引いたものとして定義する。このときの電力システムの制御目的は、まず発電コストを最小にすることであり、次に、瞬時超過CO2量96を最小にすることである。このように定義することで電力システムにおいても、実施例1乃至3と同様に、本発明を適用して複数の制御目的を考慮した系統電力制御を行うことができる。
【0079】
以上、4つの実施例について説明したが、本発明は、これらに限らず適宜構成を変更して適用することができる。例えば、本実施例では、基底関数として(数3)を用いたが、これに限るものではなく、(数7)のようにガウス分布形状にしてもよい。
【0080】
【数7】
【0081】
このガウス関数を用いれば、いたるところで微分可能な価値関数Qを得ることができるため、数4と数7から得られる価値関数も微分可能となり、感度解析や最小値探索といった微分を用いた各種数値演算手法の適用が容易になる。
【0082】
また、本実施例では、タイリングにより拡大状態空間を分割しているが、例えば、複数の母点からの距離によって分類するボロノイ分割や、サポートベクタマシンといった方法も用いることができる。
【0083】
また、方針決定手段8で価値を選択する方法としてε−greedy戦略を用いたが、最大価値を選択する確率を時間とともに大きくするアニーリング戦略も用いることができる。
【0084】
また、本実施例では、シミュレータにより最適化重みを学習させることについて述べたが、シミュレータである程度最適化重みを学習させ、その後車両に組み込んで運転者好みの挙動をする車両にすることもできる。
【図面の簡単な説明】
【0085】
【図1】本発明の制御入力決定手段の構成図である。
【図2】(a)は、車両の動作マップであり、(b)は、動作マップのタイリングの方法である。
【図3】(a)は、基底関数の一例であり、(b)は、基底関数4個の線形重み付け加算である。
【図4】2次元の重みのマトリクスである。
【図5】(a)は、時刻t0におけるエンジン及びモータ動作点の図であり、(b)は、時刻t1(=t0+Δt)におけるエンジン及びモータ動作点の図である。
【図6】ハイブリッド自動車設計シミュレータに用いる場合の要求指令の設定手段の構成である。
【図7】設計者の作業のフローチャートである。
【図8】学習過程を示すフローチャートである。
【図9】(a)は、基本的な価値の更新方法の説明図であり、(b)は、価値の収束改善方法の説明図である。
【図10】隣接タイルから価値Qを補間する方法の説明図である。
【図11】実施例3の制御入力決定手段の構成図である。
【図12】本発明を電力システムに適用した例である。
【図13】電力システムにおける評価の考え方を説明する図である。
【符号の説明】
【0086】
2 制御入力決定手段
4 車両
6 価値決定手段
8 方針決定手段
10 最適化手段
12 状態抽出手段
14 価値更新手段
16 評価手段
70 評価者
82 集中電力
【特許請求の範囲】
【請求項1】
それぞれ重みが設定された複数の制御関数を有する制御式を用い、入力される要求指令に基づいて制御対象の制御入力を生成して出力する制御入力決定手段であって、
前記制御対象の状態と前記重みを次元としてそれらに対応する価値が設定された価値部分空間情報を有し、該価値部分空間情報に基づいて前記要求指令に対応する状態の価値と重みの関係データを求める価値決定手段と、
前記価値決定手段から出力される価値と重みの関係データに基づいて最大価値に対応する重みを、所定の制御目的を達成する最適化重みとして選択する方針決定手段と、
前記方針決定手段により選択された最適化重みを前記制御式に適用して前記制御入力を生成する最適化手段と、
前記制御対象の状態を抽出する抽出手段と、
該抽出手段により抽出された前記制御対象の状態と前記方針決定手段で選択された最適化重みを入力し、前記制御対象の状態の変化を評価して前記価値部分空間情報の価値を更新する価値更新手段と、
前記最適化手段から出力される制御入力により制御された前記制御対象の状態と前記制御目的の達成度合いに応じて前記価値更新手段の価値の更新を補正する評価手段とを備えてなる制御入力決定手段。
【請求項2】
入力される要求指令に基づいてそれぞれ重みが設定された複数の制御関数を有する制御式を用い、入力される要求指令に基づいて制御対象の制御入力を生成して出力する制御入力決定手段であって、
前記制御対象の状態と前記重みを次元としてそれらに対応する価値が設定された価値部分空間情報を有し、該価値部分空間情報に基づいて前記要求指令に対応する状態の価値と重みの関係データを求める価値決定手段と、
前記価値決定手段から出力される価値と重みの関係データに基づいて最大価値に対応する重みを、所定の制御目的を達成する最適化重みとして選択する方針決定手段と、
前記方針決定手段により選択された最適化重みを前記制御式に適用して前記制御入力を生成する最適化手段と、
前記制御対象の状態を抽出する抽出手段と、
該抽出手段により抽出された前記制御対象の状態と前記方針決定手段で選択された最適化重みを入力し、前記制御対象の状態の変化を評価して前記価値部分空間情報の価値を更新する価値更新手段と、
前記最適化手段から出力される制御入力により制御された前記制御対象の状態の評価者の評価に応じて前記価値更新手段の価値の更新を補正する評価手段とを備えてなる制御入力決定手段。
【請求項3】
請求項1又は2に記載の制御入力決定手段において、
前記価値更新手段は、前記最適化手段から出力される制御入力により制御された前記制御対象の状態と前記制御目的の達成度合いが設定値より大きいとき、前記価値部分空間において、前記最適化重みより大きい重みに対応する価値を増やし、前記達成度合いが設定値より小さいとき、前記価値部分空間において、前記最適化重みより小さい重みに対応する価値を更新することを特徴とする制御入力決定手段。
【請求項4】
請求項1乃至3のうちいずれか1項に記載の制御入力決定手段において、
前記関係データを複数次元のマトリクスとして表現することを特徴とする制御入力決定手段。
【請求項5】
請求項1乃至4のうちいずれか1項に記載の制御入力決定手段を有することを特徴とする車両。
【請求項6】
請求項1乃至4のうちいずれか1項に記載の制御入力決定手段を有する前記制御対象のシミュレータであって、前記シミュレータは前記制御対象の動作パターンと前記動作パターンに加算される変動情報とを前記要求指令として前記制御対象に入力することを特徴とするシミュレータ。
【請求項1】
それぞれ重みが設定された複数の制御関数を有する制御式を用い、入力される要求指令に基づいて制御対象の制御入力を生成して出力する制御入力決定手段であって、
前記制御対象の状態と前記重みを次元としてそれらに対応する価値が設定された価値部分空間情報を有し、該価値部分空間情報に基づいて前記要求指令に対応する状態の価値と重みの関係データを求める価値決定手段と、
前記価値決定手段から出力される価値と重みの関係データに基づいて最大価値に対応する重みを、所定の制御目的を達成する最適化重みとして選択する方針決定手段と、
前記方針決定手段により選択された最適化重みを前記制御式に適用して前記制御入力を生成する最適化手段と、
前記制御対象の状態を抽出する抽出手段と、
該抽出手段により抽出された前記制御対象の状態と前記方針決定手段で選択された最適化重みを入力し、前記制御対象の状態の変化を評価して前記価値部分空間情報の価値を更新する価値更新手段と、
前記最適化手段から出力される制御入力により制御された前記制御対象の状態と前記制御目的の達成度合いに応じて前記価値更新手段の価値の更新を補正する評価手段とを備えてなる制御入力決定手段。
【請求項2】
入力される要求指令に基づいてそれぞれ重みが設定された複数の制御関数を有する制御式を用い、入力される要求指令に基づいて制御対象の制御入力を生成して出力する制御入力決定手段であって、
前記制御対象の状態と前記重みを次元としてそれらに対応する価値が設定された価値部分空間情報を有し、該価値部分空間情報に基づいて前記要求指令に対応する状態の価値と重みの関係データを求める価値決定手段と、
前記価値決定手段から出力される価値と重みの関係データに基づいて最大価値に対応する重みを、所定の制御目的を達成する最適化重みとして選択する方針決定手段と、
前記方針決定手段により選択された最適化重みを前記制御式に適用して前記制御入力を生成する最適化手段と、
前記制御対象の状態を抽出する抽出手段と、
該抽出手段により抽出された前記制御対象の状態と前記方針決定手段で選択された最適化重みを入力し、前記制御対象の状態の変化を評価して前記価値部分空間情報の価値を更新する価値更新手段と、
前記最適化手段から出力される制御入力により制御された前記制御対象の状態の評価者の評価に応じて前記価値更新手段の価値の更新を補正する評価手段とを備えてなる制御入力決定手段。
【請求項3】
請求項1又は2に記載の制御入力決定手段において、
前記価値更新手段は、前記最適化手段から出力される制御入力により制御された前記制御対象の状態と前記制御目的の達成度合いが設定値より大きいとき、前記価値部分空間において、前記最適化重みより大きい重みに対応する価値を増やし、前記達成度合いが設定値より小さいとき、前記価値部分空間において、前記最適化重みより小さい重みに対応する価値を更新することを特徴とする制御入力決定手段。
【請求項4】
請求項1乃至3のうちいずれか1項に記載の制御入力決定手段において、
前記関係データを複数次元のマトリクスとして表現することを特徴とする制御入力決定手段。
【請求項5】
請求項1乃至4のうちいずれか1項に記載の制御入力決定手段を有することを特徴とする車両。
【請求項6】
請求項1乃至4のうちいずれか1項に記載の制御入力決定手段を有する前記制御対象のシミュレータであって、前記シミュレータは前記制御対象の動作パターンと前記動作パターンに加算される変動情報とを前記要求指令として前記制御対象に入力することを特徴とするシミュレータ。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2010−134863(P2010−134863A)
【公開日】平成22年6月17日(2010.6.17)
【国際特許分類】
【出願番号】特願2008−312534(P2008−312534)
【出願日】平成20年12月8日(2008.12.8)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
【公開日】平成22年6月17日(2010.6.17)
【国際特許分類】
【出願日】平成20年12月8日(2008.12.8)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
[ Back to top ]