(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-04
(45)【発行日】2023-12-12
(54)【発明の名称】制御値決定装置
(51)【国際特許分類】
G05B 13/02 20060101AFI20231205BHJP
G06N 20/00 20190101ALI20231205BHJP
【FI】
G05B13/02 L
G06N20/00
(21)【出願番号】P 2020004696
(22)【出願日】2020-01-15
【審査請求日】2022-10-26
(73)【特許権者】
【識別番号】000006297
【氏名又は名称】村田機械株式会社
(74)【代理人】
【識別番号】100109210
【氏名又は名称】新居 広守
(72)【発明者】
【氏名】後藤 歩
【審査官】藤崎 詔夫
(56)【参考文献】
【文献】国際公開第2015/040980(WO,A1)
【文献】特開2017-107902(JP,A)
【文献】特開2002-157003(JP,A)
【文献】特開2018-180633(JP,A)
【文献】特開2007-070106(JP,A)
【文献】特開昭61-060507(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 13/02
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
移動体の移動状態が目標状態となるように移動体の移動を制御する制御パラメータの値である制御値を強化学習により決定する制御値決定装置であって、
前記移動体を移動させるための制御値を出力し、前記制御値に基づき仮想的、または現実的に前記移動体の移動を試行した結果値を取得する試行処理部と、
前記試行処理部が取得した結果値に基づき報酬を導出する報酬導出部と、
前記制御値と、前記報酬導出部により導出される前記報酬とに基づき前記制御値を更新するための基本価値を導出する基本更新式に前記移動体の試行回数に従い増加する基本係数を乗算した第一式と、影響感度による近似予測により前記制御値を更新するための予測価値を導出する予測更新式に前記移動体の試行回数に従い減少する予測係数を乗算した第二式とを足し合わせた統合更新式に基づき状態値を導出する状態値導出部と、
前記状態値導出部により導出された状態値に基づき試行用の制御値を決定する試行制御値決定部と、
を備える制御値決定装置。
【請求項2】
前記影響感度を更新するための感度更新関係に基づき影響感度を更新する感度更新部と、
前記感度更新部により更新された影響感度を前記予測更新式に代入する感度代入部と、を備える請求項1に記載の制御値決定装置。
【請求項3】
前記基本係数、および前記予測係数は、加算すれば一定値となる
請求項1または2に記載の制御値決定装置。
【請求項4】
前記基本更新式は、
Q学習、Sarsa、またはモンテカルロ法に用いられる式である
請求項1から3のいずれか一項に記載の制御値決定装置。
【請求項5】
前記予測更新式は、
前記報酬と、次候補の制御値から前記制御値を減算した差に前記影響感度を乗算した積とを加算する
請求項1から4のいずれか一項に記載の制御値決定装置。
【請求項6】
前記制御パラメータは、
速度、加減速度、ジャーク、PID制御における比例ゲイン、PID制御における微分ゲイン、PID制御における積分ゲイン、走行用のモータのトルクの少なくとも1つである
請求項1から5のいずれか一項に記載の制御値決定装置。
【請求項7】
前記報酬導出部は、
結果値の1つである前記移動体に関係する物体の最大振幅と予め設定される許容最大振幅の差分、および他の結果値である前記移動体の移動に関連する関連時間と予め設定される許容時間の差分の少なくとも一方に基づき報酬を導出する
請求項1から6のいずれか一項に記載の制御値決定装置。
【請求項8】
前記予測更新式は、
前記報酬以外の項に、距離関数を乗算する
請求項5から7のいずれか一項に記載の制御値決定装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動体の移動状態が目標状態となるように移動体の移動を制御する制御パラメータの値である制御値を強化学習により決定する制御値決定装置に関する。
【背景技術】
【0002】
従来、モータを用いて動作する装置の最適な動作状態を得るために、機械学習などの人工知能を用いてモータの制御値を決定する技術が提案されている。例えば特許文献1では、人工知能の1つである強化学習を用いることによりモータの制御値を決定する技術が提案されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
モータにより移動する移動体の最適な移動状態となる制御値を強化学習を用いて決定する場合、シミュレーションにより仮想的に、または実機、モデルなどにより現実的に移動体を移動させる試行を行い、試行により得られる結果を用いる必要がある。ところが、制御値をランダムに選んで強化学習を実行すると、多数の試行を行う必要が生じる。
【0005】
本発明は、上記課題に鑑みなされたものであり、強化学習による制御値の決定に必要な試行回数を削減できる制御値決定装置の提供を目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明の1つである制御値決定装置は、移動体の移動状態が目標状態となるように移動体の移動を制御する制御パラメータの値である制御値を強化学習により決定する制御値決定装置であって、前記移動体を移動させるための制御値を出力し、前記制御値に基づき仮想的、または現実的に前記移動体の移動を試行した結果値を取得する試行処理部と、前記試行処理部が取得した結果値に基づき報酬を導出する報酬導出部と、前記制御値と、前記報酬導出部により導出される前記報酬と、に基づき前記制御値を更新するための基本価値を導出する基本更新式に前記移動体の試行回数に従い増加する基本係数を乗算した第一式と、影響感度による近似予測により前記制御値を更新するための予測価値を導出する予測更新式に前記移動体の試行回数に従い減少する予測係数を乗算した第二式とを足し合わせた統合更新式に基づき状態値を導出する状態値導出部と、前記制御値に基づき制御値を決定する決定部と、を備える。
【発明の効果】
【0007】
本発明によれば、移動体の移動状態が目標状態となる制御値の決定に必要な試行回数を削減することが可能となる。
【図面の簡単な説明】
【0008】
【
図1】
図1は、制御値決定装置の機能構成を試行実施手段と共に示すブロック図である。
【
図2】
図2は、制御値の決定の流れを示すフローチャートである。
【発明を実施するための形態】
【0009】
以下に、本発明に係る制御値決定装置の実施の形態について、図面を参照しつつ説明する。なお、以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の位置関係、および接続状態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下では複数の発明を一つの実施の形態として説明する場合があるが、請求項に記載されていない構成要素については、その請求項に係る発明に関しては任意の構成要素であるとして説明している。また、図面は、本発明を説明するために適宜強調や省略、比率の調整を行った模式的な図となっており、実際の形状や位置関係、比率とは異なる場合がある。
【0010】
図1は、制御値決定装置100の機能構成を試行実施手段200と共に示すブロック図である。制御値決定装置100は、移動体210の移動状態が目標状態となるように移動体210の移動を制御する制御パラメータの値である制御値を強化学習により決定する装置であって、プログラムを実行することによりコンピュータに機能させる試行処理部110と、報酬導出部120と、状態値導出部130と、試行制御値決定部140と、を備えている。本実施の形態の場合、制御値決定装置100は、感度更新部150と、感度代入部160と、決定部170と、を備えている。
【0011】
試行処理部110は、前記移動体を移動させるための制御値を出力し、試行実施手段200において制御値に基づき仮想的、または現実的に移動体210の移動を試行した結果値を取得する。
【0012】
制御値は、各制御パラメータに対し相互に異なる値の制御値を予め準備し、記憶部180に記憶させておく。制御値は、例えば経験則などに基づき準備されてもよく、エキスパートシステムなどを用いてコンピュータが準備してもかまわない。
【0013】
試行実施手段200は、特に限定されるものではなく、既に稼働している実機、試運転時の実機、実機を模したモデル、数理モデルにより実機を再現したシミュレーションなどを例示することができる。また実機、またはモデルなどには結果値を取得するための各種センサーが取り付けられる。取り付けられるセンサーの種類は、特に限定されるものではなく、決定する制御値の制御パラメータの種類に応じて適宜選定される。また、実機による試行、モデルによる試行、およびシミュレーションを組み合わせてもかまわない。具体的に例えば、何回かに1回は実機を動かして結果値を確認し、それ以外のときはシミュレーションでの試行結果を用いてもかまわない。
【0014】
移動体210は、原動機、電動機などにより移動する装置であれば特に限定されるものではない。例えば移動体210としては、搭載した物品を搬送する搬送車や、人を搭載して移動する車両、物品、人を搭載することなく作業のために移動する作業車などを例示することができる。また、クレーン、ロボットなどのように固定された一部に対して他の部分が移動する装置も移動体210に含まれる。また、移動体210の移動方向も水平面内ばかりで無く、鉛直方向を含む水平面に交差する方向でもかまわない。また、直線移動ばかりで無く、曲線移動でもかまわない。
【0015】
報酬導出部120は、試行処理部110が試行実施手段200から取得した結果値に基づき報酬を導出する。報酬を導出する方法、導出するための結果値の種類は、特に限定されるものではない。例えば報酬導出部120は、結果値の1つである移動体210に関係する物体の最大振幅を試行処理部110から取得し、予め記憶部180に記憶されている許容最大振幅の差分、および他の結果値の1つである移動体210の移動に関連する関連時間を試行処理部110から取得し、予め記憶部180に記憶されている許容時間の差分に基づき報酬を導出してもよい。つまり本実施の形態の場合、報酬導出部120は、複数の結果値に基づき報酬を演算により導出している。
【0016】
移動体210に関係する物体の揺れ(振幅)とは、例えば搬送中の搬送対象である荷物の揺れ、荷物を昇降させるための昇降装置の停止時の揺れ、無人搬送車が加速することにより、前輪が浮くことによる揺れを例示できる。関連時間とは、移動体210の移動に関連する時間であれば特に限定されるものではなない。例えば関連時間は、移動体210の走行開始から走行停止までの時間、走行停止後において振幅が所定値以下となる時間(整定時間)、走行開始から走行停止後において振幅が所定値以下となる時間などを例示できる。
【0017】
結果値である最大振幅をAM、許容最大振幅をAM0、結果値である関連時間をST、許容時間をST0、第一の重みをW1、第二の重みをW2とした場合、本実施の形態では、報酬導出部120は、報酬Rを下記式1を用いて算出している。
【0018】
R=W1*(AM0-AM)/AM0+W2*(ST0-ST)/ST0・・・式1
【0019】
なお、関連時間STは、停止状態の移動体210の移動開始から再停止までの時間(サイクルタイム)としている。Rは、制御値に従って移動体を制御した際に得られる結果を評価する値である。また、W1、およびW2は振動の抑制、および関連時間のどちらを重視するかに応じ予め設定し、記憶部180に記憶する。*(アスタリスク)は乗算を示している。
【0020】
なお、本実施の形態の場合、振動、および時間の2つの価値観にそれぞれ重みであるW1、W2を乗算したが、必ずしも個別に重みを乗算しなくてもかまわない。例えば、どちらかを一定値(例えば振動の重みをW1=1)として固定しておき、もう一方をそれに対する比で乗算してもかまわない。つまり、振動より時間を2倍重視するならW2=2と入力することになる。重み係数を導入することにより、ユーザや設計者のその時々の価値観を、制御パラメータの調整に柔軟に反映させることが可能になる。具体例としては、繁忙期は(振動による負荷で)機体寿命が多少犠牲になってもいいからリードタイム重視したいと考える場合は、時間に対する重み係数を振動に対する重み係数よりも重くする。閑散期は機体寿命を重視するため、振動の重み係数を時間の重み係数よりも重くするなどである。
【0021】
状態値導出部130は、試行実施手段200において移動体210に実施させた制御値である制御値と、報酬導出部120により導出される報酬Rとに基づき制御値を更新するための基本価値を導出する基本更新式に試行実施手段200における移動体210の試行回数に従い増加する基本係数を乗算した第一式と、影響感度による近似予測により制御値を更新するための予測価値を導出する予測更新式に試行実施手段200における移動体210の試行回数に従い減少する予測係数を乗算した第二式と、を足し合わせた統合更新式に基づき状態値を導出する。
【0022】
本実施の形態の場合、基本係数と予測係数を加算すれば一定値となる関係の基本係数と予測係数を採用している。また、影響感度を考慮しパラメータ学習をするための無次元の値である状態値をQP、基本公式をQB、試行実施手段200における移動体210の試行回数をn、一定値を1、基本係数をKB(n)、なお、KB(n)はnが増加するに従い増加し0<KB(n)<1である、予測更新式をQE、予測係数を1-KB(n)、統合更新式をQPとした場合、状態値導出部130は、下記式2により状態値を導出する。
【0023】
QP=KB(n)*QB+(1-KB(n))*QE・・・式2
【0024】
基本更新式QBは、例えばQ学習、Sarsa、またはモンテカルロ法など採用する強化学習のアルゴリズムによって異なるが、本実施の形態の場合、Q学習を採用しており下記式3が用いられている。
【0025】
QB=(1-α)*QP+α*(RN+γ*maxQN)・・・式3
【0026】
なお、αは学習率と称されるパラメータであり0<α<1である。RNは次の報酬である。γは割引率であり0<γ≦1である。α、およびγは予め定められ記憶部180に記憶される。maxQNは、次の状態値の最大値である。
【0027】
基本係数KB(n)は、nの増加に従い増加するものであれば特に限定されるものではないが、本実施の形態の場合、1-(1/n)^nが採用されている。なお「^」はべき乗を意味する。また本実施の形態の場合、基本係数に加算することにより一定値(本実施の形態の場合、1)となるように予測係数は(1/n)^nが採用される。このように、加算により一定値となる基本係数と予測係数とを採用することにより、試行回数nに従って状態値の基準量が単純に増大し、試行初期の結果値が軽く見られることによる弊害、つまり、試行を積み重ねても、初期の結果値が考慮されず、初期の試行回数が無駄になることによる弊害を抑制することができる。なお、基本係数を1-(1/n)、予測係数を1/nなどとしてもよい。また、基本係数をn/2、予測係数を1/nとした場合のように、基本係数と予測係数とを和算して一定値とならなくてもかまわない。なお、基本係数、および予測係数の両方がKB(n)となるなど両方が同じ関数になることは回避する。
【0028】
予測更新式QEは、一般的には報酬Rと、制御値に影響感度を乗算した積とを加算するものであり、下記式4で表現される。
【0029】
QE=R+S1*P1+S2*P2+・・・・・+Sm*Pm・・・式4
【0030】
なお、P1、P2、・・・・・Pmは、制御値、S1、S2、・・・・・Smは、各制御パラメータに対する影響感度、mは、採用する制御パラメータの数である。
【0031】
本実施の形態の場合、予測更新式QEとしては、報酬Rと、次候補の制御値から制御値を減算した差に影響感度、および所定の重みを乗算した積とを加算する式、具体的には下記式5が用いられている。
【0032】
QE=R+W1{S1*(P1N-P1)+S2*(P2N-P2)}+W2{S3*(P3N-P3)+S4*(P1N-P1)+S5*(P2N-P2)}・・・式5
【0033】
上記式5のS4*(P1N-P1)+S5*(P2N-P2)が整定時間に影響を与える項である。また、例えばP1は移動体210の加減速度、P1Nは次の加減速度である。P2はジャーク(躍度:加速度の1階微分)、P2Nは次のジャーク、P3は移動体の移動に関連する関連時間関連時間、P3Nは次の移動体の移動に関連する関連時間関連時間である。
【0034】
式5において、W1で括っているカッコ内の項は「振動量」に影響を与える因子であり、W2で括っているカッコ内の項は「移動時間」に影響を与える因子である。また振動、時間のどちらを優先させるかは同じであることを想定し、式5のW1とW2を、式1のW1とW2と同じにしている。これは、振動、サイクルタイムのどちらを優先させるかは同じであるはずであり、また同じく重みが乗算されているRの値の大きさと合わせるためである。なお、W1、W2などの重みはそれぞれの因子に異なる値として乗算してもかまわない。また、式上の重みを無くす(影響感度に含ませる)ことも可能である。また、制御値が机上計算(シミュレーション)で非常に精度よく算出できる(実測値とほとんど誤差がない)評価値である場合、影響感度を乗算しなくてもよい場合がある。例えば上記式5のS3*(P3N-P3)を(P3N-P3)としてもかまわない。
【0035】
なお、影響感度とは、制御値のベクトルに対するQE応答曲面の勾配と考えることができる。また、制御値のベクトルに対するQE応答曲面とは、制御値のベクトルとQE値の対応関係を表現する概念的な高次空間上の曲面であり、例えば制御値が2つ(P1とP2)であれば、QE値を含めて3次空間上の曲面になる。
【0036】
試行制御値決定部140は、状態値導出部130により導出された状態値に基づき試行用の制御値を決定する。試行用の制御値を決定する方法は特に限定されるものではないが、例えば最大のQP値に対応する制御値を試行用の制御値として決定する。また、最大のQP値に対応する制御値ベクトルと現在の制御値ベクトルの「距離」(この値は距離関数から求めることができる)が、予め決めた閾値を超えなければ、最大のQP値に対応する制御値を採用し、閾値を超えるならば、2番目に大きいQP値に対応する制御値と現在の制御値の距離が、閾値を超えるかを確認し、閾値を超えるようなら、3番目に大きいQP値に対応する制御値と現在の制御値の距離が、閾値を超えるかを確認することを制御値が決まるまで繰り返す、という決定方法を採用してもかまわない。
【0037】
感度更新部150は、影響感度を更新するための感度更新関係に基づき影響感度を更新する。感度更新部150により影響感度を更新することにより予測精度を高めることが可能となる。本実施の形態の場合、影響感度の更新も強化学習が用いられる。なお、感度更新関係は、例えば次の制御値が仮決定した際に、その次の制御値に対応する感度をテーブル形式で対応付けておいてもよい。また、あらかじめシミュレーションで影響感度を求めておいてもよい。また、類似の移動体(実機)で収集した情報を基に影響感度を決めておき、その感度(固定値)を代入した予測更新式で、学習アルゴリズムを実行してもよい。
【0038】
影響感度を更新する感度更新式QSは、例えばQ学習、Sarsa、またはモンテカルロ法など採用する強化学習のアルゴリズムによって異なるが、本実施の形態の場合、Q学習を採用しており下記式6が用いられている。
【0039】
QS=(1-αS)QS+αS*(RSN+γS*maxQSN)・・・式6
【0040】
なお、αSは学習率と称されるパラメータであり0<α<1である。RSNは次の報酬である。報酬RSは、-abs(QE-R)、abs()は括弧内の絶対値を意味し、-|QE-R|とも記載できる。γSは割引率であり0<γS≦1である。αS、およびγSは感度更新のために予め定められ記憶部180に記憶される。maxQSNは、次のQS値の最大値である。
【0041】
感度代入部160は、状態値導出部130が次の状態値を導出する前に、感度更新部150により更新された影響感度を予測更新式QEに代入する。本実施の形態の場合、感度更新部150は、最大のQSに対応する影響感度を採用し予測更新式QEに代入する。なお、最大のQS値に対応する感度ベクトルと現在の感度ベクトルの「距離」(この値は距離関数から求めることができる)が、予め決めた閾値を超えなければ、最大のQS値に対応する感度を採用し、閾値を超えるならば、2番目に大きいQS値に対応する感度と現在の感度の距離が、閾値を超えるかを確認し、閾値を超えるようなら、3番目に大きいQS値に対応する感度と現在の感度の距離が、閾値を超えるかを確認することを影響感度が決まるまで、上記の条件判断を繰り返す、という決定方法を採用してもかまわない。
【0042】
決定部170は、仮に決定された制御値に基づき移動体210を制御する制御値を決定する。決定部170の制御値の決定方法は、特に限定されるものではなく、試行実施手段200から得られる結果値が目標状態である目標結果値を満たしているかを判断し、満たしている場合、試行実施手段200に与えた制御値を決定制御値としてもかまわない。結果値が複数存在する場合、複数の結果値が全て目標結果値を満たしているかを判断し、全て満たしている場合、試行実施手段200に与えた制御値を決定制御値としてもかまわない。また、試行実施手段200における試行と状態値導出とを所定回数実施し、得られる結果値から最も適した結果値となる制御値を決定制御値としてもかまわない。
【0043】
次に、制御値決定装置100における制御値決定の流れについて説明する。
図2は、制御値の決定の流れを示すフローチャートである。同図に示すように、移動体210を移動させるための初期の制御値を入力する(S101)。本実施の形態の場合、作業者が制御値を試行処理部110に入力し、試行処理部110が入力された制御値を試行実施手段200に出力する。なお、入力される初期の制御値は、特に限定されるものではないが、例えば、作業者が経験則として保有している制御値、エキスパートシステム等により得られた制御値など試行する移動体210にある程度対応した制御値である。
【0044】
次に、試行処理部110は、初期の制御値を試行実施手段200に与え、移動体210の移動を試行させる(S102)。施行された結果を示す結果値は、試行処理部110によって取得される。この段階で試行実施手段200における移動体210の試行回数nは1である。
【0045】
次に、状態値導出部130がQP値を導出する(S103)。QP値の導出は、試行により得られた結果値に基づく報酬、影響感度、重みなどにより導出される。試行制御値決定部140は、得られたQP値に基づき次の試行に用いられる制御値を決定する(S104)。
【0046】
次に、試行処理部110は、試行制御値決定部140により決定された制御値を試行実施手段200に与え、移動体210の移動を試行させる(S105)。試行された結果を示す結果値は、試行処理部110によって取得される。この段階で試行実施手段200における移動体210の試行回数nは1加算される。
【0047】
本実施の形態の場合、移動体210の試行により得られる結果値が目標を達成した場合(S106:Yes)、決定部170は、目標を達成した結果値に対応する制御値を移動体210に適した制御値として決定する(S109)。目標を達成していない場合(S106:No)は、QS値導出ステップに移行する。
【0048】
QS値導出ステップは、感度更新部150がQS値を導出する(S107)。QS値の導出は、試行により得られた結果値に基づく報酬、影響感度、重み、記憶部に記憶されている制御値の候補などにより導出される。感度代入部160は、得られたQS値に基づき次に用いる影響感度を決定し、決定した影響感度を各式に代入する(S108)。
【0049】
以上説明したように、実施の形態に係る制御値決定装置100、制御値決定方法によれば、異なるパラメータ調整戦略を表現する2つの学習アルゴリズムである基本更新式と予測更新式とを、パラメータ調整の前段階(試行回数が少ない段階)、後段階(威嚇的試行回数が多い段階)で、各戦略特性が活かされるように比重を変えることができる。また、調整の前段階において比重の高い学習アルゴリズム(状態値の推定方法)に、影響感度が導入されている。これにより、調整の前段階において、いち早く目標状態に近づく大胆な制御値の更新と、調整の後段階において、最適値の見逃しを回避するためのきめ細かな制御値の更新とを実現することができ、従来よりも効率的、かつ合理的に調整することができ、制御値の決定に必要な試行回数を削減することができる。具体的な一例としては、移動体210として高さが10m以上のスタッカクレーンを選定し、スタッカクレーンの水平方向の走行において頂上部の最大振幅と、走行開始から走行を停止して頂上部の振動が停止するまでの時間であるサイクルタイムを結果とした場合、従来の強化学習により目標状態を達成する制御値を得るまでに要した試行回数は、290回程度であった。一方、本実施の形態の場合、20回程度で目標状態となる制御値を得ることができた。
【0050】
また、従来のε-greedy法、ルーレット選択、ボルツマン選択等のように制御値をランダムに選択する方法により移動体210の移動を試行した場合、移動体210が大きく振動するなど移動体210に過負荷が発生する場合があった。しかし、本実施の形態の場合、パラメータ感度に基づく探索戦略と、従来のQ学習の探索戦略とを、ハイブリッドさせたアルゴリズムを採用することにより、制御値をランダムに選択するのではなく、感度の情報から探索方向を意味する調整のアタリをつけて制御値を選択している。従って、速く最適解付近の制御値を選択することができ、移動体210に発生する過負荷の大きさ、および回数を抑制することができた。また、制御値決定装置100によれば、挙動を数理モデル化することが困難な移動体210の場合、実機を用いて安全に試行を実施することができる。これにより実機の組立誤差、据付誤差などによる機体ごとの個体差も含めて最適な制御値を探索することができる。また、長期間の使用による実機の経年変化に対応した新しい制御値を、短時間で探索することが可能となる。
【0051】
また、試行回数の増加に伴い徐々に、従来のQ学習の探索戦略の比重を上げ、感度自体も学習の対象として、制御値と並行して更新することにより、制御値の更新による感度の精度の低下を抑制している。
【0052】
また、制御値決定装置100が強化学習としてQ学習を採用することにより、計算量も比較的抑制でき、また、コンピュータへの実装が容易で、制御値の収束性が向上する。
【0053】
なお、本発明は、上記実施の形態に限定されるものではない。例えば、本明細書において記載した構成要素を任意に組み合わせて、また、構成要素のいくつかを除外して実現される別の実施の形態を本発明の実施の形態としてもよい。また、上記実施の形態に対して本発明の主旨、すなわち、請求の範囲に記載される文言が示す意味を逸脱しない範囲で当業者が思いつく各種変形を施して得られる変形例も本発明に含まれる。
【0054】
例えば、本実施の形態の場合、制御パラメータは、加減速度、およびジャークを例示したが、制御パラメータは、限定されるものではない。例えば、制御パラメータとして、加減速度やジャークの他、速度などを例示できる。また、移動体210を移動させる駆動源が電動機の場合、電動機をPID制御するための比例ゲイン、微分ゲイン、積分ゲインなどを、加減速度やジャークの他、速度などと共に、または加減速度やジャークの他、速度などの代わりとして採用してもかまわない。
【0055】
また、報酬以外の項に、距離関数を乗算した予測更新式QEを用いてもかまわない。距離関数をL(x)とした場合、QEは下記式7で表せる。
【0056】
QE=R+(1/L(x))*{W1{S1*(P1N-P1)+S2*(P2N-P2)}+W2{(P3N-P3)+S3*(P1N-P1)+S4*(P2N-P2)}}・・・式7
【0057】
なお、L(x)は、制御値のベクトルと次の制御値のベクトルとの距離に係数ρを乗算したものであり、本実施の形態の場合、L(x)は、1+ρ*((P1N-P1)^2+(P2N-P2)^2)^(1/2)として記述できる。なお、加算している1は、L(x)が0となることを回避する値であり、任意に設定できる。また、ρは、感度更新部150において強化学習により探索してもかまわない。
【0058】
制御値として選択可能な全範囲にわたる状態値を均等な重みで予測するのではなく、(現在の)制御値から離れた状態値であるほど、重みを小さくすることができる重みの数式表現である距離関数L(x)を導入することにより、制御値として規定範囲の上限値もしくは下限値の選択を回避して、制御値が極端に大きく振れることを抑制できる。
【産業上の利用可能性】
【0059】
本発明は、原動機や電動機を用いて動作する移動体に利用可能である。
【符号の説明】
【0060】
100 制御値決定装置
110 試行処理部
120 報酬導出部
130 状態値導出部
140 試行制御値決定部
150 感度更新部
160 感度代入部
170 決定部
180 記憶部
200 試行実施手段
210 移動体