(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-10
(45)【発行日】2024-04-18
(54)【発明の名称】パラメータ探索方法、パラメータ探索用データ構造、パラメータ調整システム、コンピュータプログラム及び制御システム
(51)【国際特許分類】
G05B 13/02 20060101AFI20240411BHJP
【FI】
G05B13/02 A
(21)【出願番号】P 2019034247
(22)【出願日】2019-02-27
【審査請求日】2022-02-22
(73)【特許権者】
【識別番号】304021277
【氏名又は名称】国立大学法人 名古屋工業大学
(72)【発明者】
【氏名】前田 佳弘
(72)【発明者】
【氏名】郷 直樹
【審査官】田中 友章
(56)【参考文献】
【文献】特開2017-102619(JP,A)
【文献】特開2010-026751(JP,A)
【文献】特開平04-247556(JP,A)
【文献】特開2007-034781(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 13/02
(57)【特許請求の範囲】
【請求項1】
制御システムにおけるパラメータを最適化アルゴリズムによって最適化するためにコンピュータによって実行されるパラメータ探索方法であって、
パラメータ探索空間に含まれるM(M≧2)個の探索点を抽出し、M個の前記探索点それぞれに対応するラベルとして、前記探索点におけるパラメータから求められる第1評価値に基づく順序を付与し、前記最適化アルゴリズムを実行することを含み、
前記最適化アルゴリズムは、前記ラベルを含む探索対象集合を生成し、前記探索対象集合に含まれるラベルに対応する前記探索点におけるパラメータの評価と、前記探索対象集合に含まれるラベルを変化させる操作と、を繰り返し実行する、ことを含み、
前記探索対象集合は、M個のラベルのうち、N
ind個(M>N
ind)のラベルを含む集合であるパラメータ探索方法。
【請求項2】
前記最適化アルゴリズムは、前記探索点における前記パラメータから求められる第2評価値を最適化するように動作し、
前記第2評価値は、前記第1評価値とは異なる評価基準による評価値である請求項1に記載のパラメータ探索方法。
【請求項3】
前記パラメータは、前記制御システムに含まれる制御器が有する制御パラメータである請求項1又は請求項2に記載のパラメータ探索方法。
【請求項4】
前記パラメータ探索空間は、前記制御システムが安定する安定パラメータ範囲である請求項1から3のいずれか1項に記載のパラメータ探索方法。
【請求項5】
複数の前記探索点が抽出される前に、前記探索点間の間隔を調整することを更に含む請求項1から4のいずれか1項に記載のパラメータ探索方法。
【請求項6】
パラメータを最適化アルゴリズムによって最適化するパラメータ探索方法であって、
プロセッサが、パラメータ探索空間に含まれるM(M≧2)個の探索点を抽出し、M個の前記探索点それぞれに対応するラベルとして、前記探索点におけるパラメータから求められる第1評価値に基づく順序を示す値をメモリに保存し、前記最適化アルゴリズムを実行することを含み、
前記最適化アルゴリズムは、記ラベルを含む探索対象集合を生成し、前記探索対象集合に含まれるラベルに対応する前記探索点におけるパラメータの評価と、前記探索対象集合に含まれるラベルを変化させる操作と、を繰り返し実行する、ことを含み、
前記探索対象集合は、M個のラベルのうち、N
ind個(M>N
ind)のラベルを含む集合であるパラメータ探索方法。
【請求項7】
パラメータ調整システムであって、
パラメータ探索空間に含まれるM(M≧2)個の探索点と、M個の前記探索点それぞれに対応するラベルとして、前記探索点におけるパラメータから求められる第1評価値に基づく順序を示す値と、を含むパラメータ探索用データが保存されるメモリと、
前記パラメータ探索用データを用いて、パラメータを最適化するための最適化アルゴリズムを実行するプロセッサと、を備え、
前記最適化アルゴリズムは、前記ラベルを含む探索対象集合を生成し、前記探索対象集合に含まれるラベルに対応する前記探索点におけるパラメータの評価と、前記探索対象集合に含まれるラベルを変化させる操作と、を繰り返し実行する、ことを含み、
前記探索対象集合は、M個のラベルのうち、N
ind個(M>N
ind)のラベルを含む集合であるパラメータ調整システム。
【請求項8】
メモリ及びプロセッサを有するコンピュータを、請求項
7に記載のパラメータ調整システムとして機能させるためのコンピュータプログラム。
【請求項9】
制御対象を制御する制御器と、前記制御器が有する制御パラメータを調整するパラメータ調整システムと、を備える制御システムであって、
前記パラメータ調整システムは、パラメータ探索空間に含まれるM(M≧2)個の探索点と、M個の前記探索点それぞれに対応するラベルとして、前記探索点におけるパラメータから求められる第1評価値に基づく順序を示す値と、を含むパラメータ探索用データが保存されるメモリと、
前記パラメータ探索用データを用いて、パラメータを最適化するための最適化アルゴリズムを実行するプロセッサと、を備え、
前記最適化アルゴリズムは、前記ラベルを含む探索対象集合を生成し、前記探索対象集合に含まれるラベルに対応する前記探索点におけるパラメータの評価と、前記探索対象集合に含まれるラベルを変化させる操作と、を繰り返し実行する、ことを含み、
前記探索対象集合は、M個のラベルのうち、N
ind個(M>N
ind)のラベルを含む集合である制御システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、パラメータ探索方法、パラメータ探索用データ構造、パラメータ調整システム、コンピュータプログラム及び制御システムに関する。
【背景技術】
【0002】
特許文献1は、制御パラメータの最適化について開示している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
パラメータの最適化は、遺伝的アルゴリズムなどの最適化アルゴリズムによって行うことができる。最適化アルゴリズムによるパラメータ探索の際には、例えば、各パラメータの上下限値により範囲が規定されるN次元空間(Nは、パラメータの数)が、パラメータ探索空間として設定されることがある。そのようなN次元空間を、ここでは、N次元直方体という。
【0005】
しかし、適切なパラメータ探索空間が、N次元直方体で表せるとは限らない。したがって、任意の形状のパラメータ探索空間に対して、最適化アルゴリズムを適用するための手法が望まれる。
【課題を解決するための手段】
【0006】
本開示のある側面は、パラメータを最適化アルゴリズムによって最適化するパラメータ探索方法である。開示のパラメータ探索方法は、パラメータ探索空間に含まれる複数の探索点を抽出し、複数の前記探索点に対して、前記探索点におけるパラメータから求められる第1評価値に基づく順序を付与し、前記順序を示す値を、パラメータを探索するために操作される探索対象として、前記最適化アルゴリズムを実行することを含む。
【0007】
本開示の他の側面は、パラメータ探索用データ構造である。本開示の更なる他の側面は、パラメータ調整システムである。本開示の更なる他の側面は、コンピュータプログラムである。本開示の更なる他の側面は、制御システムである。詳細は、後述の実施形態として説明される。
【図面の簡単な説明】
【0008】
【
図1】
図1は、パラメータ調整のフローチャートである。
【
図3】
図3は、制御システムのハードウェア構成図である。
【
図4】
図4は、安定パラメータ範囲を示す図である。
【
図5】
図5は、パラメータ探索用データの生成手順を示す図である。
【
図6】
図6は、パラメータ探索用データの説明図である。
【
図7】
図7は、遺伝的アルゴリズムのフローチャートである。
【
図9】
図9は、実施例及び比較例における位置偏差波形である。
【
図10】
図10は、最適化アルゴリズムの実行時間の測定結果を示す図である。
【発明を実施するための形態】
【0009】
<1.パラメータ探索方法、パラメータ探索用データ構造、パラメータ調整システム、コンピュータプログラム及び制御システムの概要>
【0010】
(1)実施形態に係るパラメータ探索方法は、制御システムにおけるパラメータを最適化アルゴリズムによって最適化する。実施形態のパラメータ探索方法によれば、任意の形状のパラメータ探索空間において、最適なパラメータを探索することができる。パラメータは、例えば、制御システムに含まれる制御器が有する制御パラメータであってもよいし、制御対象から出力される制御量の推定器(オブザーバ)が有する推定パラメータであってもよいし、制御対象の機械パラメータ又は電気パラメータであってもよい。
【0011】
パラメータの最適化は、パラメータの組合せ最適化問題であると考えることができる。組合せ最適化問題は、例えば、近似解法によって解くことができる。近似解を求める最適化アルゴリズムは、例えば、ヒューリスティクスアルゴリズムである。ヒューリスティクスアルゴリズムとしては、メタヒューリスティクスアルゴリズムが好ましい。メタヒューリスティクスアルゴリズムは、例えば、遺伝的アルゴリズム(Genetic Algorithm; GA)などの進化的アルゴリズム、又は、粒子群最適化(Particle Swarm Optimization; PSO)などの群知能である。
【0012】
実施形態に係るパラメータ探索方法は、パラメータ探索空間に含まれる複数の探索点を抽出することを含む。抽出される探索点は、パラメータ探索空間における実行可能解に相当する。パラメータ探索空間に含まれる点を探索点として抽出する工程を備えることで、任意の形状のパラメータ探索空間から、最適化アルゴリズムにおける探索点を決定することができる。ここで、パラメータ探索空間は、一般に、2次元以上の空間であり、好ましくは、3次元以上の空間である。なお、パラメータ探索空間の次元は、パラメータの数によって決まる。
【0013】
実施形態に係るパラメータ探索方法は、複数の前記探索点に対して、順序を付与することを含む。
【0014】
実施形態に係るパラメータ探索方法は、前記順序を示す値を、パラメータを探索するために操作される探索対象として、前記最適化アルゴリズムを実行することを含む。ここで、パラメータを探索するための操作(調整)は、遺伝的アルゴリズム(GA)であれば遺伝的操作(交差又は突然変異)であり、粒子群最適化(PSO)であれば、粒子の位置の変更操作である。
【0015】
(2)前記順序は、前記探索点におけるパラメータから求められる第1評価値に基づく順序であるのが好ましい。第1評価値に基づく順序を探索対象とすることで、探索効率が向上する。
【0016】
(3)前記最適化アルゴリズムは、前記探索点における前記パラメータから求められる第2評価値を最適化するように動作し、前記第2評価値は、前記第1評価値とは異なる評価基準による評価値であるのが好ましい。
【0017】
(4)前記パラメータは、前記制御システムに含まれる制御器が有する制御パラメータであるのが好ましい。
【0018】
(5)前記パラメータ探索空間は、前記制御システムが安定する安定パラメータ範囲であるのが好ましい。
【0019】
(6)パラメータ探索方法は、複数の前記探索点が抽出される前に、前記探索点間の間隔を調整することを更に含むのが好ましい。
【0020】
(7)実施形態に係るパラメータ探索方法は、パラメータを最適化アルゴリズムによって最適化するパラメータ探索方法である。パラメータ探索方法は、プロセッサが、パラメータ探索空間に含まれる複数の探索点を抽出し、複数の前記探索点の順序を示す値をメモリに保存し、前記順序を示す値を、パラメータを探索するために操作される探索対象として、前記最適化アルゴリズムを実行することを含む。
【0021】
(8)実施形態に係るパラメータ探索用データ構造は、メモリに保存されるパラメータ探索用データ構造であって、パラメータ探索空間に含まれる複数の探索点と、複数の前記探索点の順序を示す値と、を含み、前記順序を示す値は、プロセッサが、パラメータを最適化するための最適化アルゴリズム実行の際に、パラメータを探索するために操作される探索対象として用いられる。
【0022】
(9)実施形態に係るパラメータ調整システムは、パラメータ探索空間に含まれる複数の探索点と、複数の前記探索点の順序を示す値と、を含むパラメータ探索用データが保存されるメモリと、前記パラメータ探索用データを用いて、パラメータを最適化するための最適化アルゴリズムを実行するプロセッサと、を備え、前記プロセッサは、前記順序を示す値を、パラメータを探索するために操作される探索対象として、前記最適化アルゴリズムを実行する。
【0023】
(10)実施形態に係るコンピュータプログラムは、メモリ及びプロセッサを有するコンピュータを、パラメータ調整システムとして機能させる。コンピュータプログラムは、例えば、コンピュータ読み取り可能な、非一時的な記憶媒体に格納される。
【0024】
(11)実施形態に係る制御システムは、制御対象を制御する制御器と、前記制御器が有する制御パラメータを調整するパラメータ調整システムと、を備える制御システムであって、前記パラメータ調整システムは、パラメータ探索空間に含まれる複数の探索点と、複数の前記探索点の順序を示す値と、を含むパラメータ探索用データが保存されるメモリと、前記パラメータ探索用データを用いて、パラメータを最適化するための最適化アルゴリズムを実行するプロセッサと、を備え、前記プロセッサは、前記順序を示す値を、パラメータを探索するために操作される探索対象として、前記最適化アルゴリズムを実行する。
【0025】
<2.パラメータ探索方法、パラメータ探索用データ構造、パラメータ調整システム、コンピュータプログラム及び制御システムの例>
【0026】
図1は、実施形態に係るパラメータ探索方法を含むパラメータ調整方法の手順を示している。このパラメータ調整方法は、一例として、
図2に示す制御システム10における制御パラメータの自動調整(Auto tuning)として行われる。
【0027】
制御システム10は、例えば、電子部品加工機、電子部品実装機又は工作機械などに用いられる産業サーボシステムである。産業サーボシステムでは、高速・高精度な位置決め制御が求められる。所望の制御性能を獲得するには、目標値応答特性、外乱抑圧特性、安定性、及びロバスト性などの多様な評価指標下で制御パラメータを適切に設定することが求められる。制御パラメータの調整は、機械の経時・経年変化又は設置環境の変化により、制御性能劣化が生じた場合などに行われる。
【0028】
図2に示す制御システム10は、制御対象40と、制御対象40を制御する制御器20と、を備える。制御対象40は、例えば、サーボモータである。制御器20は、例えば、PID制御を行うフィードバック制御器(FB制御器)である。
【0029】
制御器20は、指令rに対する制御対象40から出力された制御量yの偏差eに基づいて制御対象40を制御する。制御対象40には、制御入力Uが与えられる。
図2の制御システム10では、制御入力Uは、制御器20の出力(操作量)に、フィードフォワード制御入力U
ffが加算された値である。
【0030】
制御器20は、例えば、
図2に示す伝達関数C(s,ρ)を持つ。
図2に示す伝達関数C(s,ρ)は、3つの制御パラメータK
1,K
2,K
3を有する。なお、制御パラメータK
1,K
2,K
3の集合をρで表す。
【0031】
図2に示す制御システム10は、更に、
図1に示すパラメータ調整手順を実行する自動調整システム60を備える。自動調整システム60は、制御パラメータK
1,K
2,K
3の探索空間63において、最適化アルゴリズム61によりパラメータ探索をすることで、制御パラメータK
1,K
2,K
3を最適化する。最適化は、例えば、偏差eを最小化することである。実施形態の自動調整システム60は、偏差eを取得し、偏差eに基づいて制御パラメータK
1,K
2,K
3を最適化する。最適パラメータは、自動調整システム60から、制御器20に与えられる。
【0032】
自動調整システム60及び制御器20は、例えば、
図3に示すコンピュータ100によって構成される。なお、
図3では、自動調整システム60及び制御器20は、単一のコンピュータ100によって構成されているが、自動調整システム60を構成するコンピュータと、制御器20を構成するコンピュータとは、別々でもよい。
【0033】
コンピュータ100は、プロセッサ110と、プロセッサ110に接続されたメモリ120と、外部(例えば、制御対象40)とのデータの入出力を担うインタフェース130と、を備える。制御対象40は、インタフェース130を介して、コンピュータ100に接続されている。
【0034】
メモリ120には、コンピュータ100を、自動調整システム60及び制御器20として機能させるコンピュータプログラム200が格納されている。プロセッサ110は、メモリ120に格納されたコンピュータプログラム200を読み出して実行する。なお、実施形態のメモリ120は、一次記憶装置及び二次記憶装置を含むことができる。
【0035】
コンピュータプログラム200は、プロセッサ110に、
図1に示すパラメータ調整処理と、制御対象40の制御処理115と、を実行させるプログラムコードを有する。実施形態のパラメータ自動調整処理は、安定パラメータ範囲算出処理111と、パラメータ探索処理113と、を含む。それぞれの処理111,113,115については後述する。
【0036】
メモリ120は、探索空間データ121、パラメータ探索用データ123、最適パラメータ125を記憶することができる。これらのデータ121,123,125については、後述する。
【0037】
図1に戻り、実施形態のパラメータ調整処理は、パラメータ探索空間の設定(ステップS11)と、パラメータ探索(ステップS12からステップS15)と、制御器20への最適パラメータ反映処理(ステップS16)と、を含む。
【0038】
ステップS11のパラメータ探索空間の設定は、手動で行われてもよいが、実施形態においては、自動的に行われる。自動的なパラメータ探索空間の設定は、例えば、安定パラメータ範囲算出処理111によって行われる。安定パラメータ範囲は、制御システム10の安定性が確保(例えば、所望のゲイン余裕及び位相余裕確保)されたパラメータ空間である。安定パラメータ範囲内においてパラメータ探索を行うことで、不安定化を憂慮することなく、効率的にパラメータ探索を行える。
【0039】
安定パラメータ範囲算出処理111は、安定パラメータ範囲算出アルゴリズムに従って、安定パラメータ範囲を算出する。安定パラメータ範囲算出アルゴリズムは、前田佳弘・郷直樹・岩崎誠:「最適化問題の可解性を利用した制御パラメータの安定範囲算出とパラメータ調整の効率化」、電気学会論文誌D(産業応用部門誌),Vol.138 No.5 pp.392-401(2018)に開示されており、本願は、この文献に記載された全ての記載内容を、本願明細書における開示内容として援用する。
【0040】
なお、上記の文献に開示された安定パラメータ範囲算出アルゴリズムにおいて、安定パラメータ(所能の安定余裕を具備するパラメータ)は、安定余裕に係る制約条件の下で、所定の評価関数を用いた制約付き最適化問題によって求解可能であり、逐次二次計画法(SQP)によって求解される。上記の文献においては、所定の評価関数として、サーボ系の追従性能や外乱抑制性能に係る低周波領域の感度特性(制御帯域)に着目した評価関数が用いられる。この評価関数は、実感度特性と所望の感度特性との誤差を示す。この評価関数を用いた最適化問題は、実感度特性と所望の感度特性との誤差の最小化するものとなる。
【0041】
図4は、安定パラメータ範囲算出処理111により算出された安定パラメータ範囲63を示している。
図4では、制御パラメータK
1,K
2,K
3の3次元(N=3)空間において、安定パラメータ範囲63が、グレーで示されている。
図4に示すように制御パラメータK
1,K
2,K
3の値が小さい領域では安定パラメータ範囲63は比較的広く、制御パラメータK
1,K
2,K
3の値が大きい領域では、安定パラメータ範囲63は比較的狭くなる。
【0042】
図4に示す安定パラメータ範囲63を考慮せずに、手動等でパラメータ探索空間を設定する場合、不安定化を憂慮して、消極的なパラメータ探索空間が設定されることになる。例えば、
図4に示す直方体探索範囲71,72のような探索空間が設定される。
図4に示すように、直方体探索範囲71,72は、制御パラメータK
1,K
2,K
3の上下限値を決めることで、容易に設定できる。しかし、制御パラメータK
1,K
2,K
3の上下限値を決めるという手法では、直方体(N次元直方体)では表せない形状である安定パラメータ範囲63を規定することができない。
【0043】
したがって、N次元直方体で、パラメータ探索空間を設定しようとすると、不安定化を憂慮して、消極的に、比較的小さなN次元直方体71,72がパラメータ探索空間として設定されることが多い。
【0044】
この場合、設定されたパラメータ探索空間71,72に適切なパラメータが存在しない可能性が高くなり、パラメータ探索空間71,72の設定自体を試行錯誤的に行う必要があり、パラメータ調整を煩雑にする。これに対して、本実施形態では、制御システム10が安定するパラメータ範囲内で、パラメータが探索されるため、不安定化を憂慮することなく、効率的にパラメータ探索を行える。また、本実施形態では、安定パラメータ範囲63が、パラメータ探索空間として自動的に設定されるため、N次元直方体で表されるパラメータ範囲を試行錯誤的に設定する必要がない。その結果、パラメータ調整者によるN次元直方体設定の巧拙による、制御性能のばらつきを防ぐことができる。
【0045】
安定パラメータ範囲算出処理111により算出された安定パラメータ範囲63は、N次元の探索空間データ121として保存される。つまり、プロセッサ110は、安定パラメータ範囲63を示すデータを、N次元の探索空間データ121としてメモリ120に保存する。
【0046】
プロセッサ110は、メモリ120に保存された探索空間データ121が示すN次元探索空間63において、パラメータ探索処理113により、パラメータ探索をする(ステップS12からステップS15)。
【0047】
実施形態のパラメータ探索においては、まず、N次元のパラメータ探索空間(安定パラメータ範囲63)に含まれる探索点が抽出される(ステップS12)。
図5に示すように、探索点の抽出のため、パラメータ探索空間(安定パラメータ範囲63)を包含するN次元空間に、所定間隔の格子点が定義される。なお、格子点間隔は、探索点の抽出に先立って調整される。格子点間隔を調整することで、探索点の数を調整できる。格子点間隔の調整は、例えば、自動調整システム60が、ユーザから格子点間隔を示す値の入力を受け付けることによって行われる。
【0048】
N次元空間に定義された格子点のうち、パラメータ探索空間63内に含まれるM(M≧2)個の格子点が、最適化アルゴリズムによる探索のための探索点として抽出される。抽出されたM個の探索点(格子点)は、順序が付与され、1次元に整列される。1次元に整列することで、パラメータ最適化問題は、N次元空間において最適パラメータを探索する問題から、M通りのパラメータ候補から最適パラメータを探索する問題へと置き換えられる。したがって、N次元空間において設定されたパラメータ探索空間63がどのような形状であっても、1次元のM通りのパラメータ候補から最適パラメータを探索する問題として扱うことができる。
【0049】
実施形態では、N次元空間におけるM個の探索点を、1次元に並べる順序を決定するため、M個の探索点それぞれについて、所定の第1評価値J1が算出される(ステップS13)。M個の探索点は、第1評価値J1が示す値の大きさに応じた順序で、1列に並べ替えられる(ステップS14)。順序は、昇順であってもよいし、降順であってもよい。
【0050】
図5及び
図6に示すように、実施形態においては、M個の探索点を1次元に並べたときの順序を示すラベルが、各探索点に付与される。例えば、ラベル「1」が付与される探索点は、第1評価値J
1が最小となった探索点であり、ラベル「M」が付与される探索点は、第1評価値J
1が最大となった探索点である。プロセッサ110は、1列に並べられたラベル付きのM個の探索点を、パラメータ探索用データ123としてメモリ120に保存する。
【0051】
パラメータ探索用データ123は、M個の探索点データを1列に配列したデータ構造を有する。探索点データそれぞれは、探索点と、探索点に対応付けられたラベルと、を含む。個々の探索点データは、遺伝的アルゴリズムにおける一つの個体として扱われる。探索点を構成するデータは、探索点における制御パラメータK1,K2,K3によって構成される。探索点に対応付けられたラベルは、パラメータ探索用データ123における探索点の順序を示す値を示す。例えば、ラベル「3」は、制御パラメータK1_3,K2_3,K3_3を持つ探索点に付与されている。
【0052】
第1評価値J1は、特に限定されないが、例えば、探索点における制御パラメータK1,K2,K3から求められる評価値を採用できる。探索点における制御パラメータK1,K2,K3から求められる第1評価値J1としては、例えば、探索点における制御パラメータK1,K2,K3から得られる実感度特性と、所望の感度特性と、の誤差を用いることができる。この場合、第1評価値J1は、感度特性(制御帯域)に着目した評価指標に基づく値となる。
【0053】
M個の探索点を並べる順序は、特に限定されないが、所定の評価指標に基づく評価値(第1評価値J1)に基づいて並べると、探索点の並びは、その評価指標の観点からみた意義を有する並びとなる。本発明者らの実験によれば、何らかの意義を有する並びは、最適化アルゴリズムによるパラメータ探索の効率化を可能とするため有利である。この点については後述する。
【0054】
プロセッサ110は、メモリ120に保存されたパラメータ探索用データ123に基づいて、最適化アルゴリズムによりパラメータ探索を行う(ステップS15)。ここでは、最適化アルゴリズムとして、遺伝的アルゴリズムが用いられる。ステップS15では、パラメータ探索用データ123におけるラベル(順序を示す値)が、パラメータを探索するために操作される探索対象として扱われる。探索点データに含まれる制御パラメータK1,K2,K3は、探索対象としては扱われない。なお、各探索点における制御パラメータK1,K2,K3は、後述のように、最適化アルゴリズムにおける評価値(第2評価値)を求めるために用いられる。
【0055】
図6に示すように、ラベルは、Mを表現可能なビット数(
図6では12ビット)を有する2進数によって表されている。例えば、ラベル「1」は、2進数「000000000001」のように表される。本実施形態では、ラベルを構成する2進数の各ビット(0又は1)が、遺伝的アルゴリズムにおける一つの遺伝子として扱われ、遺伝的操作(交差又は突然変異)の対象となる。換言すると、ラベルは、遺伝子の列(染色体)によって規定される表現型である。
【0056】
図7は、遺伝的アルゴリズムによるパラメータ探索手順を示している。ステップS21において、世代数カウンタi
genが初期化され、初期探索対象集合となるラベル集合A
1が生成される。なお、ラベル集合A
1には、パラメータ探索用データ123に含まれるM個のラベルのうち、N
ind個(M>N
ind)のラベルが含まれる。
【0057】
ステップS22において、個体数数カウンタi
indが初期化される。ステップS23において、プロセッサ110は、i
ind個のラベルに対応付けられた探索点のパラメータK
1,K
2,K
3を、制御器20に反映させた上で、制御処理115により制御対象40に所定の動作を実施させ、偏差e(=r(t)-y(t))の時間応答波形を取得する。偏差eの時間応答波形の一例を
図8に示す。
【0058】
ステップS24において、プロセッサ110は、i
ind個のラベルが示す探索点の評価値(第2評価値J
2)を計算する。第2評価値J
2は、第1評価値とは異なる評価基準による評価値であり、パラメータ最適化の観点から決定される。第2評価値J
2は、例えば、偏差e(=r(t)-y(t))の時間応答波形の面積(
図8中の式参照)として計算される。このように、第2評価値J
2は、探索点のパラメータK
1,K
2,K
3から求められる評価値である。
【0059】
ステップS23,S24は、Nind個の探索点を評価完了するまで繰り返される(ステップS25,S26)。
【0060】
Nind個の探索点の評価が完了すると、遺伝的操作により次世代(igen世代)の探索対象集合(ラベル集合)Aigenが生成される(ステップS28,29)。遺伝的操作は、前世代の探索対象集合(ラベル集合)に含まれるラベルに対して行われる。前述のように、遺伝的操作(交差又は突然変異)は、ラベルを構成する2進数の各ビット(0又は1)に対して行われる。したがって、遺伝的操作によって、探索対象集合(ラベル集合)Aigenには、前世代の探索対象集合(ラベル集合)に含まれるラベルとは異なるラベルが含まれることになる。
【0061】
ステップS22からステップS29までの処理は、Ngen世代分の評価が完了するまで繰り返される(ステップS27)。
【0062】
ステップS30において、プロセッサ110は、第2評価値J
2が、最小となる探索点におけるパラメータK
1,K
2,K
3を最適パラメータ125として決定する。最適パラメータ125は、制御器20に反映されるようにメモリ120に保存される(
図1のステップS16)。
【0063】
図9は、実施例及び比較例それぞれで得られた最適パラメータを、制御システム10に適用して得られた位置偏差波形を示している。実施例は、上記のようにして得られた最適パラメータによる位置偏差波形である。比較例は、N次元直方体を探索空間として、パラメータK
1,K
2,K
3を探索対象(遺伝的操作の対象)として得られた最適パラメータによる位置偏差波形である。なお、
図9では、パラメータの自動調整をしない場合(自動調整なし)の位置偏差波形も示されている。
【0064】
比較例では、探索空間がN次元直方体に限られるのに対して、実施例では、N次元直票体では表せない安定パラメータ範囲全体を探索しているため、
図9に示すように、実施例は比較例よりも制御性能が向上している。
【0065】
図10は、第1実験例、第2実験例、第3実験例、第4実験例において、パラメータ最適化アルゴリズム実行に要した時間を示している。
図10における第1実験例は、安定パラメータ範囲63全体から抽出されたM個の探索点を、第
1評価値
J
1
順に並べたパラメータ探索用データ123を用い、ラベルを探索対象として遺伝的アルゴリズムを実行した結果である。第2実験例は、安定パラメータ範囲63全体から抽出されたM個の探索点を、ランダムに並べたパラメータ探索用データ123を用い、ラベルを探索対象として遺伝的アルゴリズムを実行した結果である。
【0066】
第3実験例は、安定パラメータ範囲63内に定義されたN次元直方体から抽出された探索点を、第1評価値J
1
順に並べたパラメータ探索用データ123を用い、ラベルを探索対象として遺伝的アルゴリズムを実行した結果である。第4実験例は、安定パラメータ範囲63内に定義されたN次元直方体から抽出された探索点を、ランダムに並べたパラメータ探索用データ123を用い、ラベルを探索対象として遺伝的アルゴリズムを実行した結果である。第3実験例及び第4実験例では、第1実験例及び第2実験例よりも探索空間が小さくなっている。
【0067】
図10に示すように、第
1評価値
J
1
順に並べたパラメータ探索用データ123を用いた第1実験例及び第3実験例では、ランダムに並べてパラメータ探索用データ123を用いた第2実験例及び第4実験例に比べて、探索時間を短くすることができた。
【0068】
図10の結果に示されるように、何らかの評価指標(ここでは、第
1評価値
J
1
)に基づく順序で、探索点を並べておくと、探索効率が向上する。これは、何らかの順序で探索点を並べておくと、その並びは、評価指標(第
1評価値
J
1
)の観点からみた意義に応じた順序となり、似た制御性能を持つ探索点が、近くに存在する傾向が生じるからである。最適化アルゴリズムでは、現在の探索対象を操作(調整)して、新たな探索対象が生成され、新たな探索対象は、現在の探索対象の近傍から選択されることが多い。したがって、意味のある順序で探索点を並べておくと、似た制御性能を持つ探索点が探索され易くなり、探索効率が向上する。一方、第2実験例及び第4実験例に示すように、探索点の並びに意味がなくランダムである場合、探索効率が低下する。評価値によって探索点を並べておくことは、例えば、最適化アルゴリズムが、探索対象を発見的に変更していくヒューリスティクスアルゴリズムである場合に特に有効である。
【0069】
<3.付記>
本発明は、上記実施形態に限定されるものではなく、様々な変形が可能である。
【符号の説明】
【0070】
10 :制御システム
20 :制御器
40 :制御対象
60 :自動調整システム
61 :最適化アルゴリズム
63 :探索空間
71 :N次元直方体
72 :N次元直方体
100 :コンピュータ
110 :プロセッサ
111 :安定パラメータ範囲算出処理
113 :パラメータ探索処理
115 :制御処理
120 :メモリ
121 :探索空間データ
123 :パラメータ探索用データ
125 :最適パラメータ
130 :インタフェース
200 :コンピュータプログラム
J1 :第1評価値
J2 :第2評価値
K1 :制御パラメータ
K2 :制御パラメータ
K3 :制御パラメータ