JP6136494B2 - 情報処理方法、装置及びプログラム - Google Patents

情報処理方法、装置及びプログラム Download PDF

Info

Publication number
JP6136494B2
JP6136494B2 JP2013082605A JP2013082605A JP6136494B2 JP 6136494 B2 JP6136494 B2 JP 6136494B2 JP 2013082605 A JP2013082605 A JP 2013082605A JP 2013082605 A JP2013082605 A JP 2013082605A JP 6136494 B2 JP6136494 B2 JP 6136494B2
Authority
JP
Japan
Prior art keywords
vector
function
value
state deviation
control input
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
JP2013082605A
Other languages
English (en)
Other versions
JP2014206802A (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
Original Assignee
Fujitsu Ltd
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 filed Critical Fujitsu Ltd
Priority to JP2013082605A priority Critical patent/JP6136494B2/ja
Publication of JP2014206802A publication Critical patent/JP2014206802A/ja
Application granted granted Critical
Publication of JP6136494B2 publication Critical patent/JP6136494B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Feedback Control In General (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Description

本技術は、モデル予測制御に関する。
モデル予測制御は、各時刻において有限時間未来までの応答を最適化することによって制御対象への入力を決定する制御方法である。操作量飽和などの不等式制約条件を陽に扱うことができる制御手法として高い制御性能を期待されている。
このモデル予測制御の適用については様々な分野について考察されているが、ディーゼルエンジンの吸気系制御への適用も考察されている。ディーゼルエンジンの吸気系は、EGR(Exhaust Gas Recirculator:排気循環器)とVNT(Variable Nozzle Turbo:可変ノズルターボ)を用いて、MAF(Mass Air Flow:新気量)とMAP(Manifold Absolute Pressure:吸気圧)を独立に、SISO(Single Input Single Output)としてPID(Proportional, Integral and Differential)制御を行っていることが多い。しかしながら、EGRとVNTは排気を共有して互いに干渉することから、現行の手法では低環境負荷性能を達成するために十分な目標追従性を確保することが難しくなっている。
このため、EGR及びVNTでMAF及びMAPを制御する2入力2出力のMIMO(Multi-Input and Multi-Output)制御が検討されているが、ここでEGRバルブとVNTノズルの操作量の飽和に起因する目標値追従性能の劣化が大きな問題となっている。この問題の解決策として、上で述べたモデル予測制御が期待されている。
しかしながら、吸気系のような応答の速い対象に対してモデル予測制御を適用する場合、大きな課題となるのが、サンプル時間間隔毎に行う最適化計算に要する計算時間である。この問題に対しては様々な取り組みがなされているが、その中で使われる手法が、操作量(制御入力とも呼ぶ)飽和条件付きの最適化問題をペナルティ関数を用いて緩和する方法である。
一方、エンジンなどの制御対象となるプラントに状態制約が存在する場合については、あまり検討がなされていない。そして、どのようにすれば実時間処理における計算時間を抑えることができるかという点については、具体的に考察されていない。
梅田裕平,丸山次人,志村知洋,穴井宏和,"代数的簡略化を用いたモデル予測制御の効率的解法",第11回計測自動制御学会制御部門大会予稿集,171−1−3(2011) Y. Umeda, T. Maruyama, H. Anai, A. Ejiri and K. Shimotani,"A Fast Model Predictive Control Algorithm for Diesel Engines", Proceedings of 4th IFAC Nonlinear Model Predictive Control Conference International Federation of Automatic Control., Paper SuDR.6, 2012. 梅田裕平, 丸山次人, 志村知洋,穴井宏和,下谷 圭司,"ディーゼルエンジンの効率的なモデル予測制御のためのペナルティ関数の設定に関する一考察", 第12回計測自動制御学会制御部門大会予稿集, P0066 (2012) 梅田裕平, 丸山次人, 志村知洋,穴井宏和,下谷 圭司, "GAを用いたディーゼルエンジンの効率的なモデル予測制御のためのペナルティ関数の設定",第3回進化計算学会研究会予稿集, P1-5 (2012)
従って、本技術の目的は、一側面として、モデル予測制御において制御対象の状態制約を適切に取り扱うための技術を提供することである。
本技術の第1の態様に係るオフライン処理方法は、(A)(a)モデル予測制御の評価関数とラグランジュ乗数を含み且つ制御対象の状態方程式に関する第1の関数との和を含む第2の関数をラグランジュ乗数について偏微分することで得られ且つ制御対象の状態偏差及び制御対象に対する線形化制御入力を変数として含む第1の一次式群と、(b)第2の関数を制御対象の状態偏差について偏微分することで得られ且つ制御対象の状態偏差及びラグランジュ乗数を変数として含む第2の一次式群と、(c)第2の関数を制御対象の線形化制御入力について偏微分することで得られ且つラグランジュ乗数及び制御対象の状態偏差を変数として含む第3の一次式群とを格納するデータ格納部から第1の一次式群を読み出して、状態偏差の現在値を除き状態偏差の変数を消し込むように順次代入を行って、第1の一次式群を、状態偏差の現在値と線形化制御入力とを変数として含む第4の一次式群に変形し、(B)データ格納部から第2の一次式群を読み出して、ラグランジュ乗数の変数を消し込むように順次代入を行って、第2の一次式群を、状態偏差を変数として含む、ラグランジュ乗数についての第5の一次式群に変形し、(C)データ格納部から第3の一次式群を読み出して、第4の一次式群及び第5の一次式群を用いて、第3の一次式群を、状態偏差の現在値と線形化制御入力とを変数として含む第6の一次式群に変形し、(D)第6の一次式群を、第1の係数行列と線形化制御入力についてのベクトルとの積が、状態偏差の現在値の関数ベクトルと等式で表されるように変形し、(E)モデル予測制御の制御対象における状態制約に対応するペナルティ関数を状態偏差について1階偏微分した第1の微分関数及び2階偏微分した第2の微分関数を生成し、(F)第4の一次式群から線形化制御入力についての係数を抽出し、ペナルティ関数について予め定められている第2の係数行列及び係数ベクトルを算出する処理を含む。
本技術の第2の態様に係る制御方法は、(A)モデル予測制御の制御対象についての状態偏差の現在値についての関数ベクトルと、制御期間内における制御対象に対する線形化制御入力のベクトルとの積が関数ベクトルと等しくなるように予め算出されている第1の係数行列と、モデル予測制御の制御対象における状態制約に対応するペナルティ関数について予め算出されている第2の係数行列及び係数ベクトルと、ペナルティ関数を状態偏差について1階偏微分した第1の式及び2階偏微分した第2の式とを格納するデータ格納部から第1の式及び第2の式を読み出して、状態偏差の現在値から得られる基点の値を代入することで、第1の値及び第2の値を算出し、(B)データ格納部から第1の係数行列及び第2の係数行列を読み出して、第2の値と第2の係数行列との積と第1の係数行列との和である第1の行列を算出し、(C)データ格納部から関数ベクトルを読み出して、関数ベクトルに状態偏差の現在値を代入することで得られる第1のベクトルと、第1の値と第2の値との差に線形化制御入力の1単位時間前の値から得られる第3の値を乗じた結果と係数ベクトルとの積とのである第2のベクトルを算出し、(D)第1の行列の逆行列と第2のベクトルとの積により、線形化制御入力のベクトルを生成し、(E)線形化制御入力のベクトルの要素のうち最初の時刻のための線形化制御入力を抽出する処理を含む。
一側面によれば、モデル予測制御において制御対象の状態制約をペナルティ関数で適切に取り扱うことができるようになる。
図1は、ディーゼルエンジンの吸気システムの一例を示す図である。 図2は、エンジン制御装置のブロック線図の一例を示す図である。 図3は、オフライン処理装置の機能ブロック図である。 図4は、オフライン処理装置により実行される処理の処理フローを示す図である。 図5は、モデル予測制御部の機能ブロック図を示す図である。 図6は、モデル予測制御部により実行される処理の処理フローを示す図である。 図7は、従来の問題を説明するための図である。 図8は、従来の問題を説明するための図である。 図9は、ペナルティ関数の一例を示す図である。 図10は、ペナルティ関数を説明するための図である。 図11は、第2の実施の形態に係るモデル予測制御部により実行される処理の処理フローを示す図である。 図12は、第3の実施の形態におけるペナルティ関数の適用切り替えを説明するための図である。 図13Aは、第3の実施の形態の効果を説明するための図である。 図13Bは、第3の実施の形態の効果を説明するための図である。 図14は、コンピュータの機能ブロック図である。 図15は、制御装置の機能ブロック図である。
[実施の形態1]
図1にディーゼルエンジンの吸気システムを示す。ディーゼルエンジンの吸気制御系は、吸気圧制御系と新気量制御系を含む。吸気圧制御系は、排気中の微粒子物質(PM:Particulate Matter)を低減するために、可変ノズルターボVNTのノズル径を制御して吸気圧を吸気圧目標値に追従するようにコントロールしている。一方、新気量制御系は、排気中の窒素酸化物(NOx)を低減するために、排気をシリンダ内に再循環させる排気循環器EGRのバルブ開度を制御して新気量を新気量目標値に追従するようにコントロールしている。
すなわち、エンジン本体1には、エンジン本体1からの排ガスを供給する排気循環器EGRと、排ガスの圧力にてタービンを回して新気(Fresh Air)を圧縮してエンジン本体1に供給する可変ノズルターボVNTとが接続されている。可変ノズルターボVNTのノズル開度を調整することによって、可変ノズルターボVNTのタービンの回転が調整され、吸気圧(MAP)センサで測定される吸気圧(MAP)が調整される。一方、排気循環器EGRに設けられているEGRバルブのバルブ開度を調整することによって、新気量(MAF)センサで測定される新気量(MAF)が調整される。
本実施の形態に係るエンジン制御装置1000には、MAPセンサからの吸気圧測定値と、MAFセンサからの新気量測定値と、外部から与えられる燃料噴射量の設定値と、同じく外部から与えられるエンジン回転数の設定値とが入力されるようになっている。また、エンジン制御装置1000からは、EGRバルブのバルブ開度の操作量がEGRバルブに出力され、VNTノズルのノズル開度の操作量がVNTノズルに出力されるようになっている。
以下、エンジンをプラントの一例として説明するが、本実施の形態の適用範囲は、エンジンに限られない。
本実施の形態に係るエンジン制御装置1000のブロック線図を図2に示す。エンジン制御装置1000は、計画器210と、モデル予測制御部220と、変換部225とを有する。プラント240は、例えばモデル化されたエンジン特性に相当し、EGRバルブ及びVNTノズルの開度には物理的に制限があるため、飽和要素230も設けられている。すなわち、プラント240への操作量は、飽和要素230による制限を受ける。
このようなエンジン制御装置1000の計画器210には、燃料噴射量の設定値とエンジン回転数の設定値とが入力されて、燃料噴射量の値及びエンジン回転数の値に対応付けてEGRバルブの状態目標値及びVNTノズルの状態目標値Vref、燃料噴射量の値及びエンジン回転数の値に対応付けて吸気圧MAPの目標値及び新気量MAFの目標値Xrefが登録されている。本実施の形態では、計画器210は、EGRバルブの状態目標値及びVNTノズルの状態目標値Vref、及び吸気圧MAPの目標値及び新気量MAFの目標値Xrefを出力する。
この目標値Xrefとプラント240からの出力y(例えばMAFセンサ出力及びMAPセンサ出力)との差が、モデル予測制御部220に入力される。モデル予測制御部220は、以下で述べるモデル予測制御の処理を実施して、線形化制御入力uを出力する。この線形化制御入力uは、以下で説明する変換部225(g-1)で、EGRバルブの状態及びVNTノズルの状態vに変換される。そして、状態vは、計画器210からの状態目標値Vrefとは加算されて操作量が生成され、当該操作量が飽和要素230を介してプラント240に入力される。このような処理が繰り返される。
このようなエンジン本体1の吸気系システムは、EGRバルブ及びVNTノズルについて非線形であり、エンジンのモデルとしても、エンジン回転数ω及び燃料噴射量σに応じて非線形に変化する。
ここで、エンジン回転数ω及び燃料噴射量σが固定であるとして、エンジンモデルは、以下のように定式化される。
Figure 0006136494
ここでAω(k),σ(k)及びBω(k),σ(k)は、時刻kにおける運転条件(ω(k),σ(k))によって変化する非線形の2×2行列関数である。なお、時刻kにおける回転数をω(k)と表し、燃料噴射量をσ(k)と表す。また、時刻kにおけるMAFの状態偏差をxmaf(k)と表し、MAPの状態偏差をxmap(k)と表す。また、時刻kにおけるMAFの測定値をymaf(k)と表し、MAPの測定値をymap(k)と表す。さらに、時刻kにおけるEGRバルブの状態をvegr(k)と表し、VNTノズルの状態をvvnt(k)と表す。また、吸気圧MAPの目標値をXmap refと表し、新気量MAFの目標値をXmaf refと表す。
従って、状態偏差ベクトルx(k)、測定値ベクトルy(k)、目標値ベクトルXref(k)及び状態ベクトルv(k)は、以下のように表される。
Figure 0006136494
x(k)、y(k)及びXref(k)の関係は以下のようになっている。
Figure 0006136494
また、非線形関数gを以下のように表す。
Figure 0006136494
1及びg2は、単調増加関数である。実験データからすると、このような仮定は妥当性がある。非線型モデルでは計算速度等から取り扱いが困難なため、以下では、非線形なエンジンモデルを線型モデルに変換する。そこで、上で述べた線形化制御入力uegr及びuvntを導入することで、線形化する。
Figure 0006136494
なお、線形化制御入力ベクトルu(k)を以下のように表す。
Figure 0006136494
本実施の形態では、典型的な運転条件を選択して、セットポイントと呼ぶことにする。そして、モデル予測制御部220は、運転条件(ω(k),σ(k))を取得すると、対応するセットポイントについてのω及びσについての行列Aω,σ及びBω,σを選択し、以下で述べる処理を行って線形化制御入力uを算出する。また、変換関数225は、線形化制御入力uを、変換関数g-1により非線形の最適状態vに変換する。この最適状態vと状態目標値Vrefとは加算されて操作量が生成され、エンジンのプラント240に出力される。
モデル予測制御部220は、セットポイントについて最適な線形化制御入力uを、1サンプル時間毎に、以下の線形モデルに従って算出する。
Figure 0006136494
但し、線形化制御入力uについての制約条件は以下のとおりである。
Figure 0006136494
例えば、ω=2000rpm、σ=20mm3/stの場合、以下のような行列が用いられる。
Figure 0006136494
Figure 0006136494
各時刻kについての線形化制御入力uは、以下に示すような評価関数Jを最小化することで決定される。なお、予測ホライズンHp及び制御ホライズンHcは、予め設定されるものとする。
Figure 0006136494
ここで、QTは行列Qの転置行列である。また、Q∈M(n,R)、R∈M(n,R)及びS∈M(n,R)は、重み行列であり、予め設定される。なお、M(n,R)はn×n行列を表す。(9)式において、無限ホライズンについての最適化問題を、有限ホライズンについての最適化問題にしており、このため、Ricatti代数方程式を解く行列として重み行列Sを用いている。
本実施の形態では、モデル予測制御の問題は、有限ホライズンの最適制御問題を解くことに変形される。
Figure 0006136494
ここで、xは、現在の状態偏差ベクトルを表す。
最適解を求める手法として、ラグランジュの未定乗数法が効率的であるが、不等式制約がある場合にはこの手法をそのまま用いることができない。従って、不等式制約の代わりにペナルティ関数を導入して、不等式制約のない評価関数に緩和する。
すなわち、以下のような評価関数Jbに緩和する。
Figure 0006136494
ここで、p(u(k+i))はペナルティ関数であり、入力値u(k+i)が、可能な値域の境界に近づくと、大きな値を評価関数Jに加えることになる。
一般的に、不等式制約u≦umaxに対して用いられるペナルティ関数としては以下のようなものがある。
Figure 0006136494
rは、ペナルティ関数の係数であり、不等式制約に対する重みを表している。
本実施の形態では、以下の演算のためには、(c)のようなシンプルなペナルティ関数が好ましいので、(c)を用いることにする。
ディーゼルエンジンの場合、線形化制御入力uには以下のような制約が存在する。
Figure 0006136494
(c)のような形のペナルティ関数を採用する場合には、ペナルティ関数は以下のように表される。
Figure 0006136494
(15)式を用いて制約条件を緩和する場合、以下に示すような、有限ホライズンについての最適制御問題を解くことに帰着する。
Figure 0006136494
このような最適制御問題を解くためには、ラグランジュの未定乗数法が用いられる。ここで、ラグランジュ乗数λ(j)=[λmaf(j),λmap(j)]Tを用い、ハミルトニアンHを以下のように表す。
Figure 0006136494
ここで、Х(χの大文字)は、以下のように定義される。
Figure 0006136494
x,u,λH=0と置けば、以下のような方程式が得られる。
Figure 0006136494
なお、(20)式において∂Jb/∂x=∂J/∂x+∂p(u)/∂x=∂J/∂xと変形されている。
なお、∂/∂x,∂/∂u,∂/∂λは、以下のような演算である。
Figure 0006136494
なお、方程式(20)乃至(22)は、∂p/∂uの部分を除き線形方程式となっている。∂p/∂uを、直前のステップの最適線形化制御入力u~(”~”はuの上に付される)でテイラー展開することで線形化すると、以下のように表される。
Figure 0006136494
(23)式の第1項のEGR成分は、以下のように表される。なお、VNT成分も同様の形で表される。
Figure 0006136494
このような線形近似を行えば、(20)乃至(22)式は線形となる。そうすると、線形近似された(20)乃至(22)式は以下のように表される。
Figure 0006136494
ここでMは、(2Hp+Hc)×(2Hp+Hc)の行列であり、U及びbは、(2Hp+Hc)ベクトルである。ベクトルUは、以下のように表される。
Figure 0006136494
また、ベクトルbは、以下のように表される。なお、bmaf、bmap及びbconstは、行列の変換によって算出される(2Hp+Hc)行列である。
b=xmafmaf+xmapmap+bconst (27)
最適な線形化制御入力は、この線形方程式を解くことによって得られる。しかしながら、行列Mのサイズが大きければ計算時間は長くなってしまうので、行列Mのサイズをオフラインの前処理にて削減する。
まず、(22)式の第1乃至第3の方程式を具体的に書き下すと以下のようになる。
Figure 0006136494
(28−1)式及び(28−2)式の状態偏差xmaf(k)及びxmap(k)は、現在値である。従って、(28−1)式によれば、xmaf(k+1)は線形化制御入力u(k)の1次式で表される。(28−2)式によれば、xmap(k+1)も、線形化制御入力u(k)の1次式で表される。また、(29)式によれば、xmaf(k+2)は、状態偏差及び線形化制御入力の1次式で表される。しかしながら、(28−1)式及び(28−2)式を(29)式に代入すると、xmaf(k+2)を、線形化制御入力u(k)及びu(k+1)で表すことができるようになる。これをiを増加させつつ繰り返せば、状態偏差xmaf(k+i)及びxmap(k+i)は、線形化制御入力の1次式として以下のように表される。
Figure 0006136494
一方、(20)式の(2Hp−1)番目及び(2Hp−3)番目の方程式を具体的に書き下すと以下のようになる。
Figure 0006136494
ここで、s11、s22、r11は、重み行列S及びRの行列成分を表す。
この(31)式及び(32)式は、λmaf(Hp)及びλmap(Hp)の一次式で表されることが分かる。そこで、(31)式及び(32)式を、(33)式に代入すると、λmaf(Hp−1)が、目標値Xref maf、状態偏差x(k+Hp)及びx(k+Hp−1)で表すことができる。このような処理をiを減少させつつ順次行うことで、ラグランジュ乗数λ(k+i)は、以下のように表される。
Figure 0006136494
さらに、(30)式を(34)式に代入することで、ラグランジュ乗数λ(k+i)は、線形化制御入力u(k)の一次式に変形される。
Figure 0006136494
最後に、(30)式及び(35)式を、(21)式に代入すると、以下のように表される。
Figure 0006136494
このように、(21)式は、状態偏差の初期値x(k)及び線形化制御入力uの一次式で表されることができるようになる。そうすると、(36)式は、以下の形式に直すことができる。
Figure 0006136494
ここでM2はHc×Hc行列である。U2及びb2は、以下のような形のベクトルである。
Figure 0006136494
Figure 0006136494
なお、b2maf、b2map及びb2constは、行列の変換によって算出される(2Hp+Hc)行列である。
このような処理を数式処理を用いてオフラインで行っておけば、エンジン制御装置1000では、(37)式を解く演算を行えばよい。行列M2のサイズは、行列Mよりも小さくなっており、計算量も削減されるため、高速に制御入力を得ることができるようになる。
次に、定常偏差を削減するために、状態制約を導入する場合を考える。説明を簡単にするために、MAFの状態偏差について以下のような制約を導入する。MAPについてはここでは取り扱わないが、同様に設定する場合もある。
Figure 0006136494
しかしながら、このままではモデル予測制御問題が不等式制約を含む問題となり、現実的には解けないので、例えば、以下に示すようなペナルティ関数を導入することで、不等式制約問題を等式制約問題に緩和する。
Figure 0006136494
ここでは、評価関数Jbに対して(42)式のペナルティ関数を加える。そうすると、以下のように表される。
Figure 0006136494
そして、(30)式からすると、x(k+i)は、以下のように書き下される。
Figure 0006136494
そうすると、x(k+i)は、全てのiについて、u(0)乃至u(Hc−1)の関数であるので、(42)式のペナルティ関数についてもu(0)乃至u(Hc−1)の関数と考えることができる。よって、入力制約について(20)式乃至(22)式で記述された最適化問題は、以下のように変形される。
Figure 0006136494
このような(46)式乃至(48)式を解くことになるが、そのためには状態についてのペナルティ関数に関する∂q(x)/∂uを線形化する。
まず、∂q(xmaf(k+i))/∂uegr(k+j)は以下のように表される。
Figure 0006136494
ここで(45)式があるので、(49)式は、以下のように表される。
Figure 0006136494
次に、(51)式中の∂q(xmaf(k+i))/∂xmaf(k+i)を線形化する。その際、以下の最適な線形化制御入力u~で1次のテイラー展開を行うと、∂q(xmaf(k+i))/∂xmaf(k+i)は以下のように表される。
Figure 0006136494
Figure 0006136494
また、(51)式と同様に、以下のように表される。
Figure 0006136494
従って、以下のような近似式を得られる。
Figure 0006136494
よって、(51)式及び(54)式を組み合わせると、以下のような近似式が得られる。
Figure 0006136494
ここで、x~maf(k+i)(”~”はxの上に載っているものとする)を、u~に対応する状態偏差ベースポイントと設定する。そして、短い時間における状態偏差の値の変動は小さいので、xbase maf(k)は以下のように表される。
Figure 0006136494
そして、全てのiについてx~maf(k+i)をxbase maf(k)と近似する。x(k)は、上でも述べたように現在の状態偏差の値を表しており、u*(k−1)は、1単位時間前の最適な線形化制御入力である。
そうすると、(45)式から、(55)式の定数部分は、以下のように表される。
Figure 0006136494
また、x~maf(k)をxbase maf(k)と近似する。そうすると、(56)式から、以下のような近似式が得られる。
Figure 0006136494
そこで、
d(xbase maf(k))=(1 0)Bu(k−1) (101)と置く。
さらに、x~maf(k+i)をxbase maf(k)と近似すれば、{∂2q(xmaf(k+i))/∂xmaf(k+i)2}(u~)は、全てのiについてベース状態偏差xbase maf(k)に関して同じ関数になる。同様に、{∂q(xmaf(k+i))/∂xmaf(k+i)}(u~)は、全てのiについてベース状態偏差xbase maf(k)に関して同じ関数になる。
以下、ペナルティ関数のx((42)式であればxmaf)についての一階偏微分を∂(x)と表し、二階偏微分を∂2(x)と表し、x=xbase maf(k)についての∂(xbase maf(k))及び∂2(xbase maf(k))によって、(55)式は以下のように表される。
Figure 0006136494
この(62)式から、以下のような近似も行われる。
Figure 0006136494
さらに、この(63)式から、以下のような近似も行われる。
Figure 0006136494
ここで、Λ及びνは以下のように表される。
Figure 0006136494
Figure 0006136494
なお、Λにおけるpは2j+1で固定で、qについては、1からHcまで増加する。すなわち、Λは、1行Hc列の行列である。
従って、(64)式及び(37)式から、状態についてのペナルティ関数を伴う最適化問題は、以下のように緩和される。
Figure 0006136494
(65)式をエンジン制御装置1000で解くためには、M2、b2、Λ及びνを予めオフラインで用意しておき、ペナルティ関数のxmafについての一階偏微分∂(x)と、二階偏微分∂2(x)を予めオフラインで算出しておく。そして、エンジン制御装置1000では、xbase maf(k)を(56)式で算出するとともに、∂(xbase maf(k))及び∂2(xbase maf(k))を算出し、さらにd(xbase maf(k))=(1 0)Bu(k−1)を算出する。そして(65)式を解くことになる。
なお、上ではxmafについて状態制約を設ける例を示したが、xmapについて状態制約を設けるようにしてもよいし、それら両方に状態制約を設けるようにしてもよい。基本的な処理は上で述べたとおりである。
次に、本実施の形態に係るオフライン処理装置100の機能ブロック図を図3に示す。本実施の形態では、オフライン処理装置100は、入力部101と、入力データ格納部102と、第1変形処理部103と、第1データ格納部104と、第2変形処理部105と、第2データ格納部106と、第3変形処理部107と、第3データ格納部108と、第1行列生成部109と、第4データ格納部110と、第2行列生成部111と、微分処理部112とを有する。
次に、オフライン処理装置100の処理内容を図4を用いて説明する。まず、入力部101は、ユーザからの入力データとして、行列A、B、S及びR、予測ホライズンHp及び制御ホライズンHcなどの値の入力を受け付け、入力データ格納部102に格納する(図4:ステップS1)。なお、入力データ格納部102に格納されていない場合には、(46)乃至(48)式のデータも入力部101を介して入力データ格納部102に格納されるものとする。同様に、入力制約に係る項の式のデータ((24)式)についても同様に、入力データ格納部102に格納されており、格納されていない場合には入力部101を介して入力される。さらに、状態制約に係る式のデータについても同様に、入力データ格納部102に格納されており、格納されていない場合には入力部101を介して入力される。
次に、第1変形処理部103は、入力データ格納部102に格納されているデータを用いて、状態偏差xについての第1変形処理を実行し、処理結果を第1データ格納部104に格納する(ステップS3)。(22)式に由来する(28−1)及び(28−2)式を(29)式に代入する処理をiを増加させながら繰り返して実行し、(30)式を生成する処理を実行する。なお、(30)式については、(45)式のように書き下される。
また、第2変形処理部105は、入力データ格納部102に格納されているデータを用いて、ラグランジュ乗数λについての第2変形処理を実行し、処理結果を第2データ格納部106に格納する(ステップS5)。(20)式に由来する(31)及び(32)式を(33)式に代入する処理をiを減少させながら繰り返して実行し、(34)式を生成する処理を実行する。
さらに、第3変形処理部107は、第1データ格納部104及び第2データ格納部106に格納されているデータを用いて、ラグランジュ乗数λについての第3変形処理を実行し、処理結果を第3データ格納部108に格納する(ステップS7)。(30)式を(34)式に代入する処理を実行して、(35)式を生成する。
そして、第1行列生成部109は、(30)式(第1データ格納部104に格納されている)及び(35)式(第3データ格納部108に格納されている)を(21)式(入力データ格納部102に格納されている)に代入して連立方程式(36)式を生成し、これを(37)式の形に変形することで、行列M2及びb2を算出し、第4データ格納部110に格納する(ステップS9)。ここまでの処理は、特開2012−194960号公報に記載の技術とほぼ同様である。
その後、第2行列生成部111は、第1データ格納部104に格納されている、xについての第1変形処理の結果((30)式)を用いて、入力データ格納部102に格納されている式に従って、係数行列Λ及び係数ベクトルνを生成し、第4データ格納部110に格納する(ステップS11)。
さらに、微分処理部112は、第1データ格納部102に格納されている、状態制約についてのペナルティ関数のxについての1階偏微分関数∂(x)と、2階偏微分関数∂2(x)を生成し、第4データ格納部110に格納する(ステップS13)。1階偏微分関数及び2階偏微分関数の生成については、周知であるからここでは説明を省略する。
以上のような処理を実行することで、エンジン制御装置1000の処理負荷を大幅に削減でき、処理速度を高速化できる。
次に、図5にエンジン制御装置1000におけるモデル予測制御部220の構成例を示す。モデル予測制御部220は、微分値算出部2201と、行列算出部2202と、出力生成部2203と、データ格納部2205とを有する。
データ格納部2205には、第4データ格納部110に格納されているデータが格納される。
次に、図6を用いて、エンジン制御装置1000におけるモデル予測制御部220の処理内容について説明する。
まず、モデル予測制御部220は、x(k)(=Xref(k)−y(k))を取得する(図6:ステップS21)。
そうすると、モデル予測制御部220は、関数ベクトルb2にx(k)を代入して関数ベクトルb2を数値ベクトル化する(ステップS23)。
また、微分値算出部2201は、xbase(k)(xbase maf(k)であれば(56)式)を算出し、データ格納部2205に格納されているペナルティ関数の1階偏微分関数∂(x)と、2階偏微分関数∂2(x)にxbase(k)を代入し、∂(xbase(k))及び∂2(xbase(k))を求める(ステップS25)。
そして、行列算出部2202は、M3及びb3を算出する(ステップS27)。
(65)式の左辺におけるベクトルU2以外の部分である(M2+∂2(xbase(k))Λ)がM3である。また、(65)式の右辺がb3である。すなわち、b3=b2−(∂(xbase(k))−∂2(xbase(k))d(xbase(k))νである。b3を算出するためには、d(xbase(k))を、Bu(k−1)で算出する。
そして、出力生成部2203は、U=M-1 33によってベクトルUを算出する(ステップS29)。さらに、出力生成部2203は、ベクトルUから線形化制御入力u(k)(i=0)を抽出し、出力する(ステップS31)。
その後、モデル予測制御部220は、処理が終了するのかを判断し(ステップS33)、処理終了でなければ処理はステップS21に戻り、処理終了であれば処理は終了する。
以上のような処理で分かるように、オフライン処理によって算出されているデータを活用でき、M3のサイズも削減されているので、状態制約についてのペナルティ関数を導入することでステップS25及びS27が追加されていても、高速に線形化制御入力を得ることができるようになる。さらに、ペナルティ関数の近似も適切に行われており、高い精度で適切な制御がなされるようになる。
なお、ディーゼルエンジンの吸気系制御では、図7(縦軸はMAFを表し、横軸は時間を表す)に示すようにMAFの状態ymafが目標値Xref mafを下回ると大量の微粒子物質が発生し、吸気系のつまりの原因となることがある。そのため、上で述べたようにMAFに対して下限値を設定して制御を行うこととする。
例えば、以下のようなモデルを採用するものとする。
Figure 0006136494
この時に、例えばxmaf≧−10という状態制約を設定する。そして、予測ホライズンHp=4ステップ、制御ホライズンHc=2ステップとする。この際、状態制約についてのペナルティ関数は、以下のような1階偏微分関数及び2階偏微分関数が用いられる。
Figure 0006136494
また、以下に示すようなΛ及びνが得られる。
Figure 0006136494
このようにすれば、大量の微粒子物質の発生を抑制させることができる。
なお、エンジンの制御だけではなく、例えば自動車の運転支援のための制御アルゴリズムにおいて、ハンドル(ステアリング)の位置とアクセル開度から、自動車の位置と速度を制御する場合にも本実施の形態は適用可能である。例えば、自動車は白線を越えてはいけないため、白線の位置が状態制約となる。自動車のモデルは非線形であるため、区分的線形なモデルに近似することによって、本実施の形態を適用すれば、安全な運転支援が可能となる。
さらに、空調機で室内の温度を使用電力が最小になるように制御する場合にも、本実施の形態を適用可能である。室内で、ある一定の温度区間外の室温となった時、室内にいる住人は不快に感じるため、それらの境界の温度が状態制約となる。本実施の形態を適用することで、不快温度にすることなく室内の温度の制御することができる。
[実施の形態2]
ディーゼルエンジンは、EGRバルブとVNTノズルを操作することでMAFとMAPを最適に制御することで、最適な燃焼状態を保ち、有害物質(例えばNOx、PM)の発生を抑制する。
EGR及びVNTによってMAF及びMAPを制御する際、過渡運転状態においてMAF状態が最適な状態(目標値)を上回るオーバーシュートを起こすことがあり、NOx発生の原因となっている。図8は、縦軸がMAFを表し、横軸は時間を表し、点線が目標値を表し、実線が実際のMAFの値xmafを表す。この例でも、オーバーシュートが発生している。また、図8のように、目標値が下がっていく時でも、MAFの状態が目標値を上回った状態を続けることが多くなると、この点にてもNOx発生の要因となる。また、図7に示したように目標値を大きく下回ると、PMが過剰に発生する。
第1の実施の形態のように状態制約を取り扱うモデル予測制御を行えば、改善が見込まれるが、以下のような問題もある。
(a)目標値が上がっていく運転状態(上りの状態)と下がっていく状態(下りの状態)、変わらない状態(定常状態)で状態制約の意味合いが変わってしまう。
すなわち、上りの状態の時は上限の設定が難しく、下りの時は目標値を上回る状態が続くことが多いため、現在の状態が制約を満たさない場合がある。
(b)運転状態は運転手に依存するため,状態制約を切り替えて制御することが難しい。
(c)外乱やノイズの影響で状態制約を超えてしまう可能性があり、最適解を求めることができなくなることがある。
そこで、本実施の形態では、以下のような状態制約を導入してオーバーシュートやアンダーシュートを抑制する。
Figure 0006136494
γ1乃至γ4についてはチューニングパラメータである。また、本実施の形態ではMAFについての状態制約として採用する。
このペナルティ関数は、図9に示すような関数である。x(i)、xmin及びxmaxは、目標値を基準にした値、すなわちx(i)は状態偏差であり、xmin及びxmaxはそれぞれ目標値から下又は上にどこまでずれても対処しないかを表しており、その範囲を出た場合には、その範囲内に戻ろうとする。図10に示すように、目標値曲線の上側の上限曲線と、下側の下限曲線との間であればペナルティ関数の値は0であるが、それを外れると値が急激に大きくなるペナルティ関数を採用する。
なお、上で述べたペナルティ関数は一例であり、(x−xmax)や(xmin−x)をeのべき数としていたが、これらを基数としてn乗(nは3以上)するような関数(γmax(x−xmaxn、γmin(xmin−x)n)を採用してもよい。
このような状態制約を導入したとしても、基本的に第1の実施の形態で説明したオフライン処理は同じである。但し、上限値を超えた場合の関数と、下限値を超えた場合の関数とでは形が異なるので、それぞれについてxmafについての1階偏微分関数及び2階偏微分関数を算出する。すなわち、ステップS13では、下限側の1階偏微分関数∂min(x)及び2階偏微分関数∂2min(x)と、上限側の1階偏微分関数∂max(x)及び2階偏微分関数∂2max(x)とを生成する。
そして、xmaf(k)の値に応じて、下限側の1階偏微分関数∂min(x)及び2階偏微分関数∂2min(x)と、上限側の1階偏微分関数∂max(x)及び2階偏微分関数∂2max(x)と、制約なしとを切り替えることになる。
具体的に、図11を用いてモデル予測制御部220の処理内容を説明する。
まず、モデル予測制御部220は、x(k)(=Xref(k)−y(k))を取得する(図11:ステップS41)。
そうすると、モデル予測制御部220は、関数ベクトルb2にx(k)を代入して関数ベクトルb2を数値ベクトル化する(ステップS43)。
また、微分値算出部2201は、x(k)がペナルティ関数の適用範囲のうち下限値未満についての適用範囲0であるか、上限値を超える範囲についての適用範囲1であるか、それ以外の範囲である適用範囲2であるかを判断する(ステップS45)。
適用範囲1であれば、微分値算出部2201は、xbase(k)(xbase maf(k)であれば(56)式)を算出し、データ格納部2205に格納されているペナルティ関数の1階偏微分関数∂min(x)と、2階偏微分関数∂2min(x)にxbase(k)を代入し、∂min(xbase(k))及び∂2min(xbase(k))を求める(ステップS47)。
そして、行列算出部2202は、範囲1についてのM3及びb3を算出する(ステップS49)。
(65)式の左辺におけるベクトルU2以外の部分である(M2+∂2min(xbase(k))Λ)がM3である。また、(65)式の右辺がb3である。すなわち、b3=b2−((∂min(xbase(k))−∂2min(xbase(k))d(xbase(k)))νである。b3を算出するためには、d(xbase(k))を、Bu(k−1)で算出する。そして処理はステップS57に移行する。
一方、適用範囲0であれば、微分値算出部2201は、xbase(k)(xbase maf(k)であれば(56)式)を算出し、データ格納部2205に格納されているペナルティ関数の1階偏微分関数∂max(x)と、2階偏微分関数∂2max(x)にxbase(k)を代入し、∂max(xbase(k))及び∂2max(xbase(k))を求める(ステップS51)。
そして、行列算出部2202は、範囲0についてのM3及びb3を算出する(ステップS53)。
(65)式の左辺におけるベクトルU2以外の部分である(M2+∂2max(xbase(k))Λ)がM3である。また、(65)式の右辺がb3である。すなわち、b3=b2−((∂max(xbase(k))−∂2max(xbase(k))d(xbase(k)))νである。b3を算出するためには、d(xbase(k))を、Bu(k−1)で算出する。そして処理はステップS57に移行する。
さらに、適用範囲2であれば、微分値算出部2201は、M3=M2及びb3=b2と設定する(ステップS55)。状態制約についてのペナルティ関数は適用されない。その後処理はステップS57に移行する。
そして、出力生成部2203は、U=M-1 33によってベクトルUを算出する(ステップS57)。さらに、出力生成部2203は、ベクトルUから線形化制御入力u(k)(i=0)を抽出し、出力する(ステップS59)。
その後、モデル予測制御部220は、処理が終了するのかを判断し(ステップS61)、処理終了でなければ処理はステップS41に戻り、処理終了であれば処理は終了する。
このような処理を実行すれば、適切なペナルティ関数が適用されるようになり、オーバーシュートやアンダーシュートを効果的に抑制できるようになる。
[実施の形態3]
一般にMAFとMAPの追従性にはトレードオフの関係があるため、MAFの追従性を上げるためにMAPは悪化するという現象が発生する。そこで、以下のような制御を行うと効果的である。
(A)MAPがある程度目標値に近い場合は、できるだけMAFを近づけたいので、MAFのペナルティ関数を加える。
(B)MAFはある程度目標値に近いがMAPが目標値から大きく離れている場合、MAFにペナルティ関数を加えて得られる効果よりMAPの悪化が大きくなることが多いので、ペナルティ関数を加えない。
(C)MAF及びMAPともに目標値から離れている場合には、MAF重視であってもMAPもある程度追従していなければNOx及びPMは減らないし、MAF及びMAPともに大きく変化させようとする場合、入力のバルブが全開もしくは全閉になることが多く、ペナルティ関数を入れたとしても入力制約の影響で効果が出ないことが多い。従って、計算量の観点もあり、ペナルティ関数を加えない。
そこで、図12に示すような領域分割を行って、MAF及びMAPがいずれの領域に入っているか否かを判断することで、制御を切り替えるものとする。図12の例では、縦軸はMAPの偏差xmapを表し、横軸はMAFの偏差xmafを表す。そして、MAPの基準値A及びBを設け、xmaxとMAPの基準値A及びBで囲まれる範囲を領域0と設定してMAFの状態制約についての上限側のペナルティ関数を適用する。また、xminとMAPの基準値A及びBで囲まれる範囲を領域1として設定してMAFの状態制約についての下限側のペナルティ関数を適用する。それ以外の領域については、領域2として設定し、ペナルティ関数を適用しない。
このような領域設定を行う場合には、第2の実施の形態における処理フローのステップS45において、MAF及びMAPの状態偏差x(k)に基づき、いずれの領域にx(k)が入っているかを判定するようにする。後の処理については図11と同様である。
このような制御の切り替えを行った結果の効果を、図13A及び図13Bに示す。図13Aは、MAFの値の時間変化を表しており、図13Bは、MAPの値の時間変化を表している。MAPについてはあまり変化していないが、MAFについては、部分Pではオーバーシュートが低減されており、部分Qでは目標値への追従性が向上している。これによって、NOx及びPM排出量のさらなる低減がなされる。
以上本技術の実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、上で述べた機能ブロック構成については、プログラムモジュール構成とは一致しない場合もある。また、処理結果が変わらない限り、処理フローについても、ステップの順番を入れ替えたり、複数のステップを並列実行するようにしてもよい。
なお、上で述べたオフライン処理装置100は、コンピュータ装置であって、図14に示すように、メモリ2501とCPU2503とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
また、上で述べたエンジン制御装置1000は、コンピュータ装置であって、図15に示すように、RAM(Random Access Memory)4501とプロセッサ4503とROM(Read Only Memory)4507とセンサ群4515とがバス4519で接続されている。本実施の形態における処理を実施するための制御プログラム及び存在している場合にはオペレーティング・システム(OS:Operating System))は、ROM4507に格納されており、プロセッサ4503により実行される際にはROM4507からRAM4501に読み出される。プロセッサ4503は、センサ群4515(例えば、吸気圧センサ及び新気量センサ。場合によっては燃料噴射量測定部及びエンジン回転数測定部など。)を制御して、測定値を取得する。また、処理途中のデータについては、RAM4501に格納される。なお、プロセッサ4503は、ROM4507を含む場合もあり、さらに、RAM4501を含む場合もある。本技術の実施の形態では、上で述べた処理を実施するための制御プログラムは、コンピュータ読み取り可能なリムーバブル・ディスクに格納されて頒布され、ROMライタによってROM4507に書き込まれる場合もある。このようなコンピュータ装置は、上で述べたプロセッサ4503、RAM4501、ROM4507などのハードウエアと制御プログラム(場合によってはOSも)とが有機的に協働することにより、上で述べたような各種機能を実現する。
以上述べた本実施の形態をまとめると以下のようになる。
本実施の形態の第1の態様に係るオフライン処理方法は、(A)(a)モデル予測制御の評価関数とラグランジュ乗数を含み且つ制御対象の状態方程式に関する第1の関数との和を含む第2の関数をラグランジュ乗数について偏微分することで得られ且つ制御対象の状態偏差及び制御対象に対する線形化制御入力を変数として含む第1の一次式群と、(b)第2の関数を制御対象の状態偏差について偏微分することで得られ且つ制御対象の状態偏差及びラグランジュ乗数を変数として含む第2の一次式群と、(c)第2の関数を制御対象の線形化制御入力について偏微分することで得られ且つラグランジュ乗数及び制御対象の状態偏差を変数として含む第3の一次式群とを格納するデータ格納部から第1の一次式群を読み出して、状態偏差の現在値を除き状態偏差の変数を消し込むように順次代入を行って、第1の一次式群を、状態偏差の現在値と線形化制御入力とを変数として含む第4の一次式群に変形し、(B)データ格納部から第2の一次式群を読み出して、ラグランジュ乗数の変数を消し込むように順次代入を行って、第2の一次式群を、状態偏差を変数として含む第5の一次式群に変形し、(C)データ格納部から第3の一次式群を読み出して、第4の一次式群及び第5の一次式群を用いて、第3の一次式群を、状態偏差の現在値と線形化制御入力とを変数として含む第6の一次式群に変形し、(D)第6の一次式群を、第1の係数行列と線形化制御入力についてのベクトルとの積が、状態偏差の現在値の関数ベクトルと等式で表されるように変形し、(E)モデル予測制御の制御対象における状態制約に対応するペナルティ関数を状態偏差について1階偏微分した第1の微分関数及び2階偏微分した第2の微分関数を生成し、(F)第4の一次式群から線形化制御入力についての係数を抽出し、ペナルティ関数について予め定められている第2の係数行列及び係数ベクトルを算出する処理を含む。
このような処理をオフラインで実行しておくことにより、状態制約を導入したモデル予測制御を行うことができるようになる。
上で述べたペナルティ関数が、状態偏差が第1の値以上第2の値以下で0となり、状態偏差が第1の値より小さい場合及び第2の値より大きい場合状態偏差の値に応じて指数関数的に増加する関数である場合もある。制御対象の特性に応じた適切な関数が用いられる。
また、上で述べたペナルティ関数が、状態偏差が第1の値以上第2の値以下で0となり、状態偏差が第1の値より小さい場合に状態偏差の値に応じて指数関数的に増加する第1の関数と、第2の値より大きい場合状態偏差の値に応じて指数関数的に増加する第2の関数とで表される場合もある。この場合、第1及び第2の微分関数を、第1の関数及び第2の関数の各々について生成する場合もある。このようにすれば、制御実行時に第1の関数と第2の関数とを切り替えて用いることができるようになる。
本実施の形態の第2の態様に係る制御方法は、(A)モデル予測制御の制御対象についての状態偏差の現在値についての関数ベクトルと、制御期間内における制御対象に対する線形化制御入力のベクトルとの積が関数ベクトルと等しくなるように予め算出されている第1の係数行列と、モデル予測制御の制御対象における状態制約に対応するペナルティ関数について予め算出されている第2の係数行列及び係数ベクトルと、ペナルティ関数を状態偏差について1階偏微分した第1の式及び2階偏微分した第2の式とを格納するデータ格納部から第1の式及び第2の式を読み出して、状態偏差の現在値から得られる基点の値を代入することで、第1の値及び第2の値を算出し、(B)データ格納部から第1の係数行列及び第2の係数行列を読み出して、第2の値と第2の係数行列との積と第1の係数行列との和である第1の行列を算出し、(C)データ格納部から関数ベクトルを読み出して、関数ベクトルに状態偏差の現在値を代入することで得られる第1のベクトルと、第1の値と第2の値との差に線形化制御入力の1単位時間前の値から得られる第3の値を乗じた結果と係数ベクトルとの積とのである第2のベクトルを算出し、(D)第1の行列の逆行列と第2のベクトルとの積により、線形化制御入力のベクトルを生成し、(E)線形化制御入力のベクトルの要素のうち最初の時刻のための線形化制御入力を抽出する処理を含む。
このような処理を実行することで、高速に状態制約を伴うモデル予測制御を実行できるようになる。
上で述べた制御方法は、(F)状態偏差の現在値が所定範囲内であるか判断する処理をさらに含むようにしてもよい。この場合、状態偏差の現在値が所定範囲内であれば、第1の値及び第2の値を算出する処理と、第1の行列を算出する処理と、第2のベクトルを算出する処理と、線形化制御入力のベクトルを生成する処理と、線形化制御入力を抽出する処理とを実行するようにしてもよい。制御対象によっては、状態制約に基づく処理を行うことが好ましくない場合もあるためである。
さらに、上で述べたデータ格納部が、状態偏差の現在値の値域に応じた第1の式及び第2の式を格納している場合もある。この場合、(a1)上記第1の値及び第2の値を算出する処理が、状態偏差の現在値が属する値域を特定し、当該特定された値域に応じた第1の式及び第2の式を読み出す処理を含むようにしてもよい。適切な式を状況に応じて切り分けて用いることで、適切な制御を行うことができるようになる。
また、本制御方法が、上で述べた状態偏差の現在値が所定範囲外であれば、(G)データ格納部から関数ベクトル及び第1の係数行列を読み出して、関数ベクトルに状態偏差の現在値を代入することで得られる第1のベクトルと、第1の係数行列の逆行列との積により、線形化制御入力の第2のベクトルを生成し、(H)線形化制御入力の第2のベクトルの要素のうち最初の時刻のための線形化制御入力を抽出する処理をさらに含むようにしてもよい。状態制約を考慮しないモデル予測制御を高速に実行できる。
なお、上記方法による処理をプロセッサ(又はコンピュータ)に行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
(a)モデル予測制御の評価関数とラグランジュ乗数を含み且つ前記制御対象の状態方程式に関する第1の関数との和を含む第2の関数を前記ラグランジュ乗数について偏微分することで得られ且つ前記制御対象の状態偏差及び前記制御対象に対する線形化制御入力を変数として含む第1の一次式群と、(b)前記第2の関数を前記制御対象の状態偏差について偏微分することで得られ且つ前記制御対象の状態偏差及び前記ラグランジュ乗数を変数として含む第2の一次式群と、(c)前記第2の関数を前記制御対象の線形化制御入力について偏微分することで得られ且つ前記ラグランジュ乗数及び前記制御対象の状態偏差を変数として含む第3の一次式群とを格納するデータ格納部から前記第1の一次式群を読み出して、前記状態偏差の現在値を除き前記状態偏差の変数を消し込むように順次代入を行って、前記第1の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第4の一次式群に変形し、
前記データ格納部から前記第2の一次式群を読み出して、前記ラグランジュ乗数の変数を消し込むように順次代入を行って、前記第2の一次式群を、前記状態偏差を変数として含む第5の一次式群に変形し、
前記データ格納部から前記第3の一次式群を読み出して、前記第4の一次式群及び前記第5の一次式群を代入することで、前記第3の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第6の一次式群に変形し、
前記第6の一次式群を、第1の係数行列と前記線形化制御入力についてのベクトルとの積が、前記状態偏差の現在値の関数ベクトルと等式で表されるように変形し、
前記モデル予測制御の制御対象についての制約条件に対応するペナルティ関数を前記状態偏差について1階偏微分した第1の微分関数及び2階偏微分した第2の微分関数を生成し、
前記第4の一次式群から前記線形化制御入力についての係数を抽出し、前記ペナルティ関数について予め定められている第2の係数行列及び係数ベクトルを算出する
処理を、コンピュータに実行させるためのプログラム。
(付記2)
前記ペナルティ関数が、前記状態偏差が第1の値以上第2の値以下で0となり、前記状態偏差が前記第1の値より小さい場合及び前記第2の値より大きい場合前記状態偏差の値に応じて指数関数的に増加する関数である
付記1記載のプログラム。
(付記3)
前記ペナルティ関数が、前記状態偏差が第1の値以上第2の値以下で0となり、前記状態偏差が前記第1の値より小さい場合に前記状態偏差の値に応じて指数関数的に増加する第1の関数と、前記第2の値より大きい場合前記状態偏差の値に応じて指数関数的に増加する第2の関数とで表され、
前記第1及び第2の微分関数を、前記第1の関数及び前記第2の関数の各々について生成する
付記1記載のプログラム。
(付記4)
モデル予測制御の制御対象についての状態偏差の現在値についての関数ベクトルと、制御期間内における前記制御対象に対する線形化制御入力のベクトルとの積が前記関数ベクトルと等しくなるように予め算出されている第1の係数行列と、前記モデル予測制御の制御対象における状態制約に対応するペナルティ関数について予め算出されている第2の係数行列及び係数ベクトルと、前記ペナルティ関数を前記状態偏差について1階偏微分した第1の式及び2階偏微分した第2の式とを格納するデータ格納部から前記第1の式及び第2の式を読み出して、前記状態偏差の現在値から得られる基点の値を代入することで、第1の値及び第2の値を算出し、
前記データ格納部から前記第1の係数行列及び前記第2の係数行列を読み出して、前記第2の値と前記第2の係数行列との積と前記第1の係数行列との和である第1の行列を算出し、
前記データ格納部から前記関数ベクトルを読み出して、前記関数ベクトルに前記状態偏差の現在値を代入することで得られる第1のベクトルと、前記第1の値と前記第2の値との差に前記線形化制御入力の1単位時間前の値から得られる第3の値を乗じた結果と前記係数ベクトルとの積との和である第2のベクトルを算出し、
前記第1の行列の逆行列と前記第2のベクトルとの積により、前記線形化制御入力のベクトルを生成し、
前記線形化制御入力のベクトルの要素のうち最初の時刻のための線形化制御入力を抽出する
処理をプロセッサに実行させるためのプログラム。
(付記5)
前記状態偏差の現在値が所定範囲内であるか判断する処理をさらに含み、
前記状態偏差の現在値が前記所定範囲内であれば、前記第1の値及び第2の値を算出する処理と、前記第1の行列を算出する処理と、前記第2のベクトルを算出する処理と、前記線形化制御入力のベクトルを生成する処理と、前記線形化制御入力を抽出する処理とを実行する
付記4記載のプログラム。
(付記6)
前記データ格納部が、
前記状態偏差の現在値の値域に応じた前記第1の式及び第2の式を格納しており、
前記第1の値及び前記第2の値を算出する処理が、
前記状態偏差の現在値が属する値域を特定し、当該特定された値域に応じた前記第1の式及び前記第2の式を読み出す処理
を含む付記4又は5記載のプログラム。
(付記7)
前記状態偏差の現在値が前記所定範囲外であれば、
前記データ格納部から前記関数ベクトル及び前記第1の係数行列を読み出して、前記関数ベクトルに前記状態偏差の現在値を代入することで得られる第1のベクトルと、前記第1の係数行列の逆行列との積により、前記線形化制御入力の第2のベクトルを生成し、
前記線形化制御入力の第2のベクトルの要素のうち最初の時刻のための線形化制御入力を抽出する
処理をさらに含む付記3乃至5のいずれか1つ記載のプログラム。
(付記8)
(a)モデル予測制御の評価関数とラグランジュ乗数を含み且つ前記制御対象の状態方程式に関する第1の関数との和を含む第2の関数を前記ラグランジュ乗数について偏微分することで得られ且つ前記制御対象の状態偏差及び前記制御対象に対する線形化制御入力を変数として含む第1の一次式群と、(b)前記第2の関数を前記制御対象の状態偏差について偏微分することで得られ且つ前記制御対象の状態偏差及び前記ラグランジュ乗数を変数として含む第2の一次式群と、(c)前記第2の関数を前記制御対象の線形化制御入力について偏微分することで得られ且つ前記ラグランジュ乗数及び前記制御対象の状態偏差を変数として含む第3の一次式群とを格納するデータ格納部から前記第1の一次式群を読み出して、前記状態偏差の現在値を除き前記状態偏差の変数を消し込むように順次代入を行って、前記第1の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第4の一次式群に変形し、
前記データ格納部から前記第2の一次式群を読み出して、前記ラグランジュ乗数の変数を消し込むように順次代入を行って、前記第2の一次式群を、前記状態偏差を変数として含む第5の一次式群に変形し、
前記データ格納部から前記第3の一次式群を読み出して、前記第4の一次式群及び前記第5の一次式群を代入することで、前記第3の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第6の一次式群に変形し、
前記第6の一次式群を、第1の係数行列と前記線形化制御入力についてのベクトルとの積が、前記状態偏差の現在値の関数ベクトルと等式で表されるように変形し、
前記モデル予測制御の制御対象についての制約条件に対応するペナルティ関数を前記状態偏差について1階偏微分した第1の微分関数及び2階偏微分した第2の微分関数を生成し、
前記第4の一次式群から前記線形化制御入力についての係数を抽出し、前記ペナルティ関数について予め定められている第2の係数行列及び係数ベクトルを算出する
処理を含み、コンピュータにより実行されるオフライン処理方法。
(付記9)
モデル予測制御の制御対象についての状態偏差の現在値についての関数ベクトルと、制御期間内における前記制御対象に対する線形化制御入力のベクトルとの積が前記関数ベクトルと等しくなるように予め算出されている第1の係数行列と、前記モデル予測制御の制御対象における状態制約に対応するペナルティ関数について予め算出されている第2の係数行列及び係数ベクトルと、前記ペナルティ関数を前記状態偏差について1階偏微分した第1の式及び2階偏微分した第2の式とを格納するデータ格納部から前記第1の式及び第2の式を読み出して、前記状態偏差の現在値から得られる基点の値を代入することで、第1の値及び第2の値を算出し、
前記データ格納部から前記第1の係数行列及び前記第2の係数行列を読み出して、前記第2の値と前記第2の係数行列との積と前記第1の係数行列との和である第1の行列を算出し、
前記データ格納部から前記関数ベクトルを読み出して、前記関数ベクトルに前記状態偏差の現在値を代入することで得られる第1のベクトルと、前記第1の値と前記第2の値との差に前記線形化制御入力の1単位時間前の値から得られる第3の値を乗じた結果と前記係数ベクトルとの積との和である第2のベクトルを算出し、
前記第1の行列の逆行列と前記第2のベクトルとの積により、前記線形化制御入力のベクトルを生成し、
前記線形化制御入力のベクトルの要素のうち最初の時刻のための線形化制御入力を抽出する
処理を含み、プロセッサにより実行される制御方法。
(付記10)
(a)モデル予測制御の評価関数とラグランジュ乗数を含み且つ前記制御対象の状態方程式に関する第1の関数との和を含む第2の関数を前記ラグランジュ乗数について偏微分することで得られ且つ前記制御対象の状態偏差及び前記制御対象に対する線形化制御入力を変数として含む第1の一次式群と、(b)前記第2の関数を前記制御対象の状態偏差について偏微分することで得られ且つ前記制御対象の状態偏差及び前記ラグランジュ乗数を変数として含む第2の一次式群と、(c)前記第2の関数を前記制御対象の線形化制御入力について偏微分することで得られ且つ前記ラグランジュ乗数及び前記制御対象の状態偏差を変数として含む第3の一次式群とを格納するデータ格納部から前記第1の一次式群を読み出して、前記状態偏差の現在値を除き前記状態偏差の変数を消し込むように順次代入を行って、前記第1の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第4の一次式群に変形する手段と、
前記データ格納部から前記第2の一次式群を読み出して、前記ラグランジュ乗数の変数を消し込むように順次代入を行って、前記第2の一次式群を、前記状態偏差を変数として含む第5の一次式群に変形する手段と、
前記データ格納部から前記第3の一次式群を読み出して、前記第4の一次式群及び前記第5の一次式群を代入することで、前記第3の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第6の一次式群に変形する手段と、
前記第6の一次式群を、第1の係数行列と前記線形化制御入力についてのベクトルとの積が、前記状態偏差の現在値の関数ベクトルと等式で表されるように変形する手段と、
前記モデル予測制御の制御対象についての制約条件に対応するペナルティ関数を前記状態偏差について1階偏微分した第1の微分関数及び2階偏微分した第2の微分関数を生成する手段と、
前記第4の一次式群から前記線形化制御入力についての係数を抽出し、前記ペナルティ関数について予め定められている第2の係数行列及び係数ベクトルを算出する手段と、
を有するオフライン処理装置。
(付記11)
モデル予測制御の制御対象についての状態偏差の現在値についての関数ベクトルと、制御期間内における前記制御対象に対する線形化制御入力のベクトルとの積が前記関数ベクトルと等しくなるように予め算出されている第1の係数行列と、前記モデル予測制御の制御対象における状態制約に対応するペナルティ関数について予め算出されている第2の係数行列及び係数ベクトルと、前記ペナルティ関数を前記状態偏差について1階偏微分した第1の式及び2階偏微分した第2の式とを格納するデータ格納部から前記第1の式及び第2の式を読み出して、前記状態偏差の現在値から得られる基点の値を代入することで、第1の値及び第2の値を算出する第1の算出部と、
前記データ格納部から前記第1の係数行列及び前記第2の係数行列を読み出して、前記第2の値と前記第2の係数行列との積と前記第1の係数行列との和である第1の行列を算出し、前記データ格納部から前記関数ベクトルを読み出して、前記関数ベクトルに前記状態偏差の現在値を代入することで得られる第1のベクトルと、前記第1の値と前記第2の値との差に前記線形化制御入力の1単位時間前の値から得られる第3の値を乗じた結果と前記係数ベクトルとの積との和である第2のベクトルを算出する第2の算出部と、
前記第1の行列の逆行列と前記第2のベクトルとの積により、前記線形化制御入力のベクトルを生成する生成部と、
前記線形化制御入力のベクトルの要素のうち最初の時刻のための線形化制御入力を出力する出力部と、
を有する制御装置。
101 入力部
102 入力データ格納部
103 第1変形処理部
104 第1データ格納部
105 第2変形処理部
106 第2データ格納部
107 第3変形処理部
108 第3データ格納部
109 第1行列生成部
110 第4データ格納部
111 第2行列生成部
112 微分処理部

Claims (11)

  1. (a)モデル予測制御の評価関数とラグランジュ乗数を含み且つ御対象の状態方程式に関する第1の関数との和を含む第2の関数を前記ラグランジュ乗数について偏微分することで得られ且つ前記制御対象の状態偏差及び前記制御対象に対する線形化制御入力を変数として含む第1の一次式群と、(b)前記第2の関数を前記制御対象の状態偏差について偏微分することで得られ且つ前記制御対象の状態偏差及び前記ラグランジュ乗数を変数として含む第2の一次式群と、(c)前記第2の関数を前記制御対象の線形化制御入力について偏微分することで得られ且つ前記ラグランジュ乗数及び前記制御対象の状態偏差を変数として含む第3の一次式群とを格納するデータ格納部から前記第1の一次式群を読み出して、前記状態偏差の現在値を除き前記状態偏差の変数を消し込むように順次代入を行って、前記第1の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第4の一次式群に変形し、
    前記データ格納部から前記第2の一次式群を読み出して、前記ラグランジュ乗数の変数を消し込むように順次代入を行って、前記第2の一次式群を、前記状態偏差を変数として含む、前記ラグランジュ乗数についての第5の一次式群に変形し、
    前記データ格納部から前記第3の一次式群を読み出して、前記第4の一次式群及び前記第5の一次式群を用いて、前記第3の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第6の一次式群に変形し、
    前記第6の一次式群を、第1の係数行列と前記線形化制御入力についてのベクトルとの積が、前記状態偏差の現在値の関数ベクトルと等式で表されるように変形し、
    前記モデル予測制御の制御対象における状態制約に対応するペナルティ関数を前記状態偏差について1階偏微分した第1の微分関数及び2階偏微分した第2の微分関数を生成し、
    前記第4の一次式群から前記線形化制御入力についての係数を抽出し、前記ペナルティ関数について予め定められている第2の係数行列及び係数ベクトルを算出する
    処理を、コンピュータに実行させるためのプログラム。
  2. 前記ペナルティ関数が、前記状態偏差が第1の値以上第2の値以下で0となり、前記状態偏差が前記第1の値より小さい場合及び前記第2の値より大きい場合前記状態偏差の値に応じて指数関数的に増加する関数である
    請求項1記載のプログラム。
  3. 前記ペナルティ関数が、前記状態偏差が第1の値以上第2の値以下で0となり、前記状態偏差が前記第1の値より小さい場合に前記状態偏差の値に応じて指数関数的に増加する第1の関数と、前記第2の値より大きい場合前記状態偏差の値に応じて指数関数的に増加する第2の関数とで表され、
    前記第1及び第2の微分関数を、前記第1の関数及び前記第2の関数の各々について生成する
    請求項1記載のプログラム。
  4. モデル予測制御の制御対象についての状態偏差の現在値についての関数ベクトルと、制御期間内における前記制御対象に対する線形化制御入力のベクトルとの積が前記関数ベクトルと等しくなるように予め算出されている第1の係数行列と、前記モデル予測制御の制御対象における状態制約に対応するペナルティ関数について予め算出されている第2の係数行列及び係数ベクトルと、前記ペナルティ関数を前記状態偏差について1階偏微分した第1の式及び2階偏微分した第2の式とを格納するデータ格納部から前記第1の式及び第2の式を読み出して、前記状態偏差の現在値から得られる基点の値を代入することで、第1の値及び第2の値を算出し、
    前記データ格納部から前記第1の係数行列及び前記第2の係数行列を読み出して、前記第2の値と前記第2の係数行列との積と前記第1の係数行列との和である第1の行列を算出し、
    前記データ格納部から前記関数ベクトルを読み出して、前記関数ベクトルに前記状態偏差の現在値を代入することで得られる第1のベクトルと、前記第1の値と前記第2の値との差に前記線形化制御入力の1単位時間前の値から得られる第3の値を乗じた結果と前記係数ベクトルとの積とのである第2のベクトルを算出し、
    前記第1の行列の逆行列と前記第2のベクトルとの積により、前記線形化制御入力のベクトルを生成し、
    前記線形化制御入力のベクトルの要素のうち最初の時刻のための線形化制御入力を抽出する
    処理をプロセッサに実行させるためのプログラム。
  5. 前記状態偏差の現在値が所定範囲内であるか判断する処理をさらに含み、
    前記状態偏差の現在値が前記所定範囲内であれば、前記第1の値及び第2の値を算出する処理と、前記第1の行列を算出する処理と、前記第2のベクトルを算出する処理と、前記線形化制御入力のベクトルを生成する処理と、前記線形化制御入力を抽出する処理とを実行する
    請求項4記載のプログラム。
  6. 前記データ格納部が、
    前記状態偏差の現在値の値域に応じた前記第1の式及び第2の式を格納しており、
    前記第1の値及び前記第2の値を算出する処理が、
    前記状態偏差の現在値が属する値域を特定し、当該特定された値域に応じた前記第1の式及び前記第2の式を読み出す処理
    を含む請求項4又は5記載のプログラム。
  7. 前記状態偏差の現在値が前記所定範囲外であれば、
    前記データ格納部から前記関数ベクトル及び前記第1の係数行列を読み出して、前記関数ベクトルに前記状態偏差の現在値を代入することで得られる第1のベクトルと、前記第1の係数行列の逆行列との積により、前記線形化制御入力の第2のベクトルを生成し、
    前記線形化制御入力の第2のベクトルの要素のうち最初の時刻のための線形化制御入力を抽出する
    処理をさらに含む請求項4乃至6のいずれか1つ記載のプログラム。
  8. (a)モデル予測制御の評価関数とラグランジュ乗数を含み且つ御対象の状態方程式に関する第1の関数との和を含む第2の関数を前記ラグランジュ乗数について偏微分することで得られ且つ前記制御対象の状態偏差及び前記制御対象に対する線形化制御入力を変数として含む第1の一次式群と、(b)前記第2の関数を前記制御対象の状態偏差について偏微分することで得られ且つ前記制御対象の状態偏差及び前記ラグランジュ乗数を変数として含む第2の一次式群と、(c)前記第2の関数を前記制御対象の線形化制御入力について偏微分することで得られ且つ前記ラグランジュ乗数及び前記制御対象の状態偏差を変数として含む第3の一次式群とを格納するデータ格納部から前記第1の一次式群を読み出して、前記状態偏差の現在値を除き前記状態偏差の変数を消し込むように順次代入を行って、前記第1の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第4の一次式群に変形し、
    前記データ格納部から前記第2の一次式群を読み出して、前記ラグランジュ乗数の変数を消し込むように順次代入を行って、前記第2の一次式群を、前記状態偏差を変数として含む、前記ラグランジュ乗数についての第5の一次式群に変形し、
    前記データ格納部から前記第3の一次式群を読み出して、前記第4の一次式群及び前記第5の一次式群を用いて、前記第3の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第6の一次式群に変形し、
    前記第6の一次式群を、第1の係数行列と前記線形化制御入力についてのベクトルとの積が、前記状態偏差の現在値の関数ベクトルと等式で表されるように変形し、
    前記モデル予測制御の制御対象における状態制約に対応するペナルティ関数を前記状態偏差について1階偏微分した第1の微分関数及び2階偏微分した第2の微分関数を生成し、
    前記第4の一次式群から前記線形化制御入力についての係数を抽出し、前記ペナルティ関数について予め定められている第2の係数行列及び係数ベクトルを算出する
    処理を含み、コンピュータにより実行されるオフライン処理方法。
  9. モデル予測制御の制御対象についての状態偏差の現在値についての関数ベクトルと、制御期間内における前記制御対象に対する線形化制御入力のベクトルとの積が前記関数ベクトルと等しくなるように予め算出されている第1の係数行列と、前記モデル予測制御の制御対象における状態制約に対応するペナルティ関数について予め算出されている第2の係数行列及び係数ベクトルと、前記ペナルティ関数を前記状態偏差について1階偏微分した第1の式及び2階偏微分した第2の式とを格納するデータ格納部から前記第1の式及び第2の式を読み出して、前記状態偏差の現在値から得られる基点の値を代入することで、第1の値及び第2の値を算出し、
    前記データ格納部から前記第1の係数行列及び前記第2の係数行列を読み出して、前記第2の値と前記第2の係数行列との積と前記第1の係数行列との和である第1の行列を算出し、
    前記データ格納部から前記関数ベクトルを読み出して、前記関数ベクトルに前記状態偏差の現在値を代入することで得られる第1のベクトルと、前記第1の値と前記第2の値との差に前記線形化制御入力の1単位時間前の値から得られる第3の値を乗じた結果と前記係数ベクトルとの積とのである第2のベクトルを算出し、
    前記第1の行列の逆行列と前記第2のベクトルとの積により、前記線形化制御入力のベクトルを生成し、
    前記線形化制御入力のベクトルの要素のうち最初の時刻のための線形化制御入力を抽出する
    処理を含み、プロセッサにより実行される制御方法。
  10. (a)モデル予測制御の評価関数とラグランジュ乗数を含み且つ御対象の状態方程式に関する第1の関数との和を含む第2の関数を前記ラグランジュ乗数について偏微分することで得られ且つ前記制御対象の状態偏差及び前記制御対象に対する線形化制御入力を変数として含む第1の一次式群と、(b)前記第2の関数を前記制御対象の状態偏差について偏微分することで得られ且つ前記制御対象の状態偏差及び前記ラグランジュ乗数を変数として含む第2の一次式群と、(c)前記第2の関数を前記制御対象の線形化制御入力について偏微分することで得られ且つ前記ラグランジュ乗数及び前記制御対象の状態偏差を変数として含む第3の一次式群とを格納するデータ格納部から前記第1の一次式群を読み出して、前記状態偏差の現在値を除き前記状態偏差の変数を消し込むように順次代入を行って、前記第1の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第4の一次式群に変形する手段と、
    前記データ格納部から前記第2の一次式群を読み出して、前記ラグランジュ乗数の変数を消し込むように順次代入を行って、前記第2の一次式群を、前記状態偏差を変数として含む、前記ラグランジュ乗数についての第5の一次式群に変形する手段と、
    前記データ格納部から前記第3の一次式群を読み出して、前記第4の一次式群及び前記第5の一次式群を用いて、前記第3の一次式群を、前記状態偏差の現在値と前記線形化制御入力とを変数として含む第6の一次式群に変形する手段と、
    前記第6の一次式群を、第1の係数行列と前記線形化制御入力についてのベクトルとの積が、前記状態偏差の現在値の関数ベクトルと等式で表されるように変形する手段と、
    前記モデル予測制御の制御対象における状態制約に対応するペナルティ関数を前記状態偏差について1階偏微分した第1の微分関数及び2階偏微分した第2の微分関数を生成する手段と、
    前記第4の一次式群から前記線形化制御入力についての係数を抽出し、前記ペナルティ関数について予め定められている第2の係数行列及び係数ベクトルを算出する手段と、
    を有するオフライン処理装置。
  11. モデル予測制御の制御対象についての状態偏差の現在値についての関数ベクトルと、制御期間内における前記制御対象に対する線形化制御入力のベクトルとの積が前記関数ベクトルと等しくなるように予め算出されている第1の係数行列と、前記モデル予測制御の制御対象における状態制約に対応するペナルティ関数について予め算出されている第2の係数行列及び係数ベクトルと、前記ペナルティ関数を前記状態偏差について1階偏微分した第1の式及び2階偏微分した第2の式とを格納するデータ格納部から前記第1の式及び第2の式を読み出して、前記状態偏差の現在値から得られる基点の値を代入することで、第1の値及び第2の値を算出する第1の算出部と、
    前記データ格納部から前記第1の係数行列及び前記第2の係数行列を読み出して、前記第2の値と前記第2の係数行列との積と前記第1の係数行列との和である第1の行列を算出し、前記データ格納部から前記関数ベクトルを読み出して、前記関数ベクトルに前記状態偏差の現在値を代入することで得られる第1のベクトルと、前記第1の値と前記第2の値との差に前記線形化制御入力の1単位時間前の値から得られる第3の値を乗じた結果と前記係数ベクトルとの積とのである第2のベクトルを算出する第2の算出部と、
    前記第1の行列の逆行列と前記第2のベクトルとの積により、前記線形化制御入力のベクトルを生成する生成部と、
    前記線形化制御入力のベクトルの要素のうち最初の時刻のための線形化制御入力を出力する出力部と、
    を有する制御装置。
JP2013082605A 2013-04-11 2013-04-11 情報処理方法、装置及びプログラム Active JP6136494B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013082605A JP6136494B2 (ja) 2013-04-11 2013-04-11 情報処理方法、装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013082605A JP6136494B2 (ja) 2013-04-11 2013-04-11 情報処理方法、装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2014206802A JP2014206802A (ja) 2014-10-30
JP6136494B2 true JP6136494B2 (ja) 2017-05-31

Family

ID=52120322

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013082605A Active JP6136494B2 (ja) 2013-04-11 2013-04-11 情報処理方法、装置及びプログラム

Country Status (1)

Country Link
JP (1) JP6136494B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6260214B2 (ja) * 2013-11-12 2018-01-17 富士通株式会社 情報処理方法、装置及びプログラム
ES2637006B1 (es) * 2016-04-07 2018-06-21 Lander BERISTAIN URIZARBARRENA Dispositivo para la gestión de combustible en motores diesel de gestión electrónica

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0929057A (ja) * 1995-07-19 1997-02-04 Toshiba Corp モデル予測制御装置およびその装置を用いたガス精製プラント
JP2001067103A (ja) * 1999-08-30 2001-03-16 Hitachi Ltd プロセス制御方法および装置
JP2006072700A (ja) * 2004-09-02 2006-03-16 Fujitsu Ten Ltd モデル予測制御装置及びモデル予測制御方法
JP5834759B2 (ja) * 2011-02-28 2015-12-24 富士通株式会社 行列生成プログラム、方法及び装置、並びにプラント制御プログラム、方法及び装置

Also Published As

Publication number Publication date
JP2014206802A (ja) 2014-10-30

Similar Documents

Publication Publication Date Title
JP6416781B2 (ja) 内燃機関空気経路制御のためのレートベースモデル予測制御方法
JP5834759B2 (ja) 行列生成プログラム、方法及び装置、並びにプラント制御プログラム、方法及び装置
JP6386698B2 (ja) 多変数制御装置
US9765621B2 (en) Switch gain scheduled explicit model predictive control of diesel engines
García-Nieto et al. Nonlinear predictive control based on local model networks for air management in diesel engines
JP6553580B2 (ja) 内燃機関の空気経路制御のための離散時間レートベースモデル予測制御方法
US9989001B2 (en) Discrete time rate-based model predictive control method for internal combustion engine air path control
DeCastro Rate-based model predictive control of turbofan engine clearance
Harder et al. A real-time nonlinear MPC scheme with emission constraints for heavy-duty diesel engines
Sankar et al. Model predictive controller with average emissions constraints for diesel airpath
El Hadef et al. Explicit nonlinear model predictive control of the air path of a turbocharged spark-ignited engine
Liao-McPherson et al. A cascaded economic model predictive control strategy for a diesel engine using a non-uniform prediction horizon discretization
JP6136494B2 (ja) 情報処理方法、装置及びプログラム
Ferreau et al. Fast nonlinear model predictive control of gasoline engines
Larsen et al. Coordinated passivation designs
Ortner et al. Nonlinear model predictive control of a diesel engine airpath
Izci et al. Feedforward-Compensated PI Controller Design for Air–Fuel Ratio System Control Using Enhanced Weighted Mean of Vectors Algorithm
JP6260214B2 (ja) 情報処理方法、装置及びプログラム
Asprion et al. Efficient solution of the diesel-engine optimal control problem by time-domain decomposition
Šantin et al. Combined gradient and Newton projection quadratic programming solver for MPC
Larguech et al. Adaptive sliding mode control for a class of nonlinear mimo systems: Application to a turbocharged diesel engine
Zhou et al. A softly switched multiple model predictive control of a turbocharged diesel engine
Rayasam et al. Robust Switching MIMO Control of Turbocharged Lean-Burn Natural Gas Engines
JP5903925B2 (ja) 情報処理方法、装置及びプログラム
Umeda et al. A fast model predictive control algorithm for diesel engines

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161226

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170417

R150 Certificate of patent or registration of utility model

Ref document number: 6136494

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150