Comments
Description
Transcript
SICEセミナー「モデル予測制御理論の新展開」 1
SICEセミナー 「モデル予測制御理論の新展開」 はじめに Tokyo Institute of Technology SICE セミナー 「実践的な制御系設計 -ポストロバスト制御理論の新展開と応用最前線-」 Tokyo Institute of Technology モデル予測制御の成立過程 ・ プロセスの現場での経験的制御 ・ 適応制御 (一般化予測制御) からの発展 ・ 最適制御 (optimal control) からの発展 「モデル予測制御理論の新展開」 Fig : 化学プラント 大嶋, 関,“モデル予測制御-V” [9] 有限時間区間 (finite horizon) の最適制御を,時刻が 進むにつれて評価時間区間を先へずらして進めていく 2005年11月11日 receding horizon (moving horizon) の考え方に基づくアドバンストな最適化制御 電気通信大学スカイオフィス 東京工業大学 藤田政之 1 Tokyo Institute of Technology Fujita Laboratory Tokyo Institute of Technology Fujita Laboratory 最適制御とモデル予測制御 アウトライン Tokyo Institute of Technology 2. 非線形モデル予測制御 ∞ N Fig : アポロ15号 “NASA” 無限時間 (infinite horizon) 最適制御 最適性, 安定性 (t = ∞) ・ 非線形モデル予測制御の安定性 ・ 非線形モデル予測制御の応用例 3. ハイブリッドシステムのモデル予測制御 4. おわりに ∞ 0 Tokyo Institute of Technology 9 1. はじめに 有限時間 (finite horizon) 最適制御 最適性 0 2 Fig : F-8 “[2]” モデル予測制御 (receding horizon control) 最適性 ,安定性?? 区間を先にずらして 何回も解く 初めの 入力のみ 用いる 0 0 0 Tokyo Institute of Technology Fig : 車 ∞ N N N Fujita Laboratory 3 Tokyo Institute of Technology Fujita Laboratory 非線形システムと入力と状態に関する制約 ステージコストと終端コスト Tokyo Institute of Technology x(k + 1) = f ( x(k ), u (k )) y (k ) = h( x(k )) (1) f (0,0) = 0 V N ( x, u ) = 状態 l ( x(i ), u (i )) > 0, l (0,0) = 0, F ( x ( N )) > 0 Fig 2.1 : ロボットマニピュレータ (4) N ステップ間 有限の N ステップ区間での 制御問題 (3) 例 (ロボットマニピュレータ) 入力に関する制約 : 入力電圧 –10V∼10V U 状態に関する制約 : 関節角度 –90°∼90° X Tokyo Institute of Technology (5) l ( x(i ), u (i )) : ステージコスト (stage cost) F ( x( N )) : 終端コスト (terminal cost) M (q ) q&& + C (q, q& ) q& + g ( q ) = τ 入力と状態に関する制約 N −1 ∑ l ( x(i), u (i)) + F ( x( N )) i =0 (2) 例 (ロボットマニピュレータ) u (k ) ∈ U x(k ) ∈ X Tokyo Institute of Technology コスト (評価関数) 非線形システム (制御対象) 入力 4 l ( x (i ), u (i )) 0 X F ( x( N )) N 例 (ロボットマニピュレータ) T T ステージコスト l ( x(i ), u (i )) = x(i ) Qx(i ) + u (i ) Ru (i ) T 終端コスト F ( x( N )) = x ( N ) Pf x( N ) Fujita Laboratory 5 Tokyo Institute of Technology Q ≥ 0, R > 0 Fujita Laboratory 6 1 SICEセミナー 「モデル予測制御理論の新展開」 終端制約 制約条件つきの最適制御問題 Tokyo Institute of Technology 終端制約 (terminal constraint) Tokyo Institute of Technology 制約条件つきの最適制御問題 (optimal control problem) PN ( x) : min{VN ( x, u ) | u ∈ U N ( x)} (7) 終端の第 N ステップにおける状態の制約 x( N ) ∈ X f ⊂ X (6) u U N (x) :入力と状態に関する制約 (3), (4) および X f :終端制約集合 (terminal constraint set) 終端制約 (6) を N ステップ区間すべてで満たす入力集合 例 (ロボットマニピュレータ) 最適入力 状態に関する制約 X : 関節角度 –90°∼90° X { x o (0; x) 最適状態軌道 目標値 } x o (x) u ( x ) = u (0; x), u (1; x), L , u ( N − 1; x ) (8) o 終端制約 X f : 関節角度 – 5°∼ 5° X x : i = 0 における状態 optimal o o o u (x) 最適な状態軌道 (trajectory) { } x o ( x) = x o (0; x), x o (1; x), L , x o ( N − 1; x), x o ( N ; x) (9) = f ( x o ( N − 1; x), u ( N − 1; x)) Xf 最適入力 o N −1 N 0 最適コスト 最適なコスト (value function) VNo ( x) = VN ( x, u o ( x)) (10) V No (x) N −1 0 Tokyo Institute of Technology Fujita Laboratory 7 Tokyo Institute of Technology モデル予測制御とは 非線形モデル予測制御の安定性の準備 Tokyo Institute of Technology モデル予測制御では 最適入力系列 (8) の最初の操作量 u o (0; x ) のみを制御対象に適応 o (11) 制御則 κ N ( x ) := u (0; x ) 最適制御問題 (7) における N ステップの区間を一つ先に進めながら, 制御則 (11) の手続きを繰り返し解く. u = κ N (x) (12) receding horizon (moving horizon) モデル予測制御 目標値 状態軌道 入力 新たな状態軌道の 予測値 新たな入力列 新たな入力列 モデル予測制御 N −1 N 0 入力 N −1 N N −1 N 0 Tokyo Institute of Technology Fujita Laboratory Fig 2.1 : ロボットマニピュレータ 状態が x のときに入力 u を加えた次のステップの状態 x + = f ( x, u ) u = κ f (x) 9 非線形モデル予測制御の安定条件 φ (x) A2 : κ f ( x ) ∈ U , x ∈ X f φ (x+ ) (15) Tokyo Institute of Technology Fujita Laboratory 非線形システム モデル予測制御 A4 : [ ∆F + l ]( x, κ f ( x)) ≤ 0 , x ∈ X f ∀ A3 : 終端制約集合 Xf が正の不変集合(positive invariant set) A4 : 終端コスト F(x) は (局所的な) リアプノフ関数 (control Lyapunov function) となる A1-A3 : 入力と状態に関する制約 (3),(4) および終端制約 (8) が満たされている 可能解の存在性 (feasibility) 最大出力許容集合(maximal output admissible set)Fujita Laboratory 11 Tokyo Institute of Technology 10 非線形モデル予測制御の安定条件の略証 ∀ A3 : f ( x, κ f ( x )) ∈ X f , ∀x ∈ X f x+ ∆φ ( x , u ) (14) Tokyo Institute of Technology 非線形モデル予測制御の安定条件 A1 : X f ⊂ X , Xf は閉集合, 0 ∈ X f x u (13) 仮定 : 非線形システム (1) に対して, (局所的な) 安定化制御則 (stabilizing control) が存在する u 0 非線形システム 状態が x から x+ へ変化したときの関数 φ ( x, u ) 状態軌道 新たな状態軌道の 予測値 u Tokyo Institute of Technology 閉ループ系の安定性 ∆φ ( x, u ) := φ ( x + ) − φ ( x) 状態軌道 入力 入力列 u という入力を繰り返し くわえる. 目標値 目標値 状態軌道の 予測値 8 Fujita Laboratory Tokyo Institute of Technology 非線形モデル予測制御の安定条件の略証 最適制御問題 (7) と対応する最適入力 (8) に対して, 1 ステップ経過した時点で新たに x+ を初期値とする + N ステップの最適制御問題 PN ( x ) を考える. 制約条件つき最適制御問題に対する入力 u~ ( x) := { } o u o (1; x), L , u o ( N − 1; x), κ f ( x ( N ; x)) (16) κ f ( x o ( N ; x)) ∈ U f ( x o ( N ; x), κ f ( x o ( N ; x))) ∈ X f ⊂ X x o ( N − 1; x) x= x o (0; x) + x o= x (1; x) o o x o ( N ; x) f ( x ( N ; x ), κ f ( x ( N ; x ))) f ( x o ( N ; x), κ f ( x o ( N ; x))) ∈ X f ⊂ X κ N (x ) = u o (0; x) u o (1; x) 入力列 u o ( N − 1; x) 0 1 安定化制御則 最適な入力とは限らない κ f ( x o ( N ; x)) u~ ( x ) Tokyo Institute of Technology κ f ( x o ( N ; x)) ∈ U N N +1 Fujita Laboratory 12 2 SICEセミナー 「モデル予測制御理論の新展開」 非線形モデル予測制御の安定条件の略証 非線形モデル予測制御の安定条件の略証 Tokyo Institute of Technology Tokyo Institute of Technology x ( N − 1; x) x o ( N − 1; x) o x +o = x= x o (0; x) x +o = x= x o ( N ; x) x (1; x) x o (0; x) κ N (x) = u o (0; x) u o (1; x) x o ( N ; x) x (1; x) κ N (x) = u o (0; x) u o (1; x) u o ( N − 1; x) u o ( N − 1; x) 入力列 入力列 u o (x) u o (x) N −1 N 0 x +o = x= x o (0; x) u o ( N − 1; x) 0 Tokyo Institute of Technology x o (0; x) o κ f ( x o ( N ; x)) ∈ U 安定化制御則 最適な入力とは限らない κ f ( x o ( N ; x)) u~ ( x ) 1 N +1 N Fujita Laboratory x +o = x= f ( x ( N ; x), κ f ( x ( N ; x))) ∈ X f ⊂ X o κ N (x ) = u o (0; x) u o (1; x) 入力列 x o ( N − 1; x) 1ステップ o o x o ( N ; x ) f ( x ( N ; x ), κ f ( x ( N ; x ))) x (1; x) N −1 N 0 x o ( N − 1; x) 1ステップ 13 o o x o ( N ; x ) f ( x ( N ; x ), κ f ( x ( N ; x ))) x (1; x) f ( x o ( N ; x), κ f ( x o ( N ; x))) ∈ X f ⊂ X κ N (x ) = u o (0; x) u o (1; x) 入力列 u o ( N − 1; x) 0 非線形モデル予測制御の安定条件の略証 安定化制御則 最適な入力とは限らない κ f ( x o ( N ; x)) u~ ( x ) Tokyo Institute of Technology κ f ( x o ( N ; x)) ∈ U 1 N +1 N Tokyo Institute of Technology x o ( N − 1; x) x +o = x o (0; x) x o ( N − 1; x) x o (0; x) f ( x ( N ; x), κ f ( x ( N ; x))) ∈ X f ⊂ X o κ N (x) = u o (0; x) u o (1; x) 入力列 u o ( N − 1; x) 0 1 コスト (評価関数) VN ( x, u ) = N −1 o κ f ( x o ( N ; x)) ∈ U 安定化制御則 最適な入力とは限らない κ f ( x o ( N ; x)) u~ ( x ) i =0 o VN ( x + , u~ ( x)) = ∑ l ( x(0; x), u o (0; x)) + F ( x ( N ; x)) = VN ( x(0; x), u o (0; x)) = i =0 + + o o − l ( x (0; x), u (0; x )) − F ( x ( N ; x)) − + l ( x o ( N ; x), κ f ( x o ( N ; x))) + F ( f ( x o ( N ; x), κ f ( x o ( N ; x)))) 15 Tokyo Institute of Technology Fujita Laboratory + f ( x o ( N ; x), κ f ( x o ( N ; x))) ∈ X f ⊂ X u o ( N − 1; x) κ f ( x o ( N ; x)) ∈ U 最適な入力とは限らない κ f ( x o ( N ; x)) u~ ( x ) 0 (5) o o x o ( N ; x ) f ( x ( N ; x ), κ f ( x ( N ; x ))) x (1; x) κ N (x) = u o (0; x) u o (1; x) 入力列 N +1 N N −1 ∑ l ( x(i), u(i)) + F ( x( N )) x +o = x= o o x o ( N ; x ) f ( x ( N ; x ), κ f ( x ( N ; x ))) x (1; x) 1 N +1 N VN ( x + , u~ ( x)) = VN ( x(0; x), u o (0; x)) − l ( x(0; x), u o (0; x)) − F ( x o ( N ; x)) = x = κ N (x) = VNo (x) + l ( x o ( N ; x), κ f ( x o ( N ; x))) + F ( f ( x o ( N ; x), κ f ( x o ( N ; x)))) = VNo ( x) − l ( x, κ N ( x)) + ∆F ( x o ( N ; x), κ f ( x o ( N ; x ))) + l ( x o ( N ; x), κ f ( x o ( N ; x))) Q ∆F ( x, u ) := F ( x + ) − F ( x ) Tokyo Institute of Technology 非線形モデル予測制御の安定条件の略証 Fujita Laboratory Tokyo Institute of Technology x ( N − 1; x) x +o = x o (0; x) x o ( N − 1; x) κ N (x) = u (0; x) u o (1; x) 入力列 u ( N − 1; x) o κ f ( x o ( N ; x)) ∈ U 最適な入力とは限らない κ f ( x o ( N ; x)) u~ ( x ) 0 x o (0; x) f ( x o ( N ; x), κ f ( x o ( N ; x))) ∈ X f ⊂ X o 1 N x +o = x= o o x o ( N ; x ) f ( x ( N ; x ), κ f ( x ( N ; x ))) x (1; x) f ( x o ( N ; x), κ f ( x o ( N ; x))) ∈ X f ⊂ X κ N (x) = u (0; x) u o (1; x) 入力列 N +1 0 o κ f ( x o ( N ; x)) ∈ U 最適な入力とは限らない κ f ( x o ( N ; x)) 1 N N +1 ∴ VN ( x , u~ ( x)) ≤ VNo ( x) − l ( x, κ N ( x)) + = VNo ( x ) − l ( x, κ N ( x)) + [∆F + l ]( x o ( N ; x), κ f ( x o ( N ; x))) ≤0 Q モデル予測制御の安定条件 A4 : [ ∆F + l ]( x, κ f ( x)) ≤ 0 , ∀x ∈ X f Tokyo Institute of Technology u ( N − 1; x) o u~ ( x ) + l ( x o ( N ; x), κ f ( x o ( N ; x))) (18) o o x o ( N ; x ) f ( x ( N ; x ), κ f ( x ( N ; x ))) x (1; x) VN ( x + , u~ ( x )) = VNo ( x) − l ( x, κ N ( x )) + ∆F ( x o ( N ; x ), κ f ( x o ( N ; x ))) ≤ VNo ( x) − l ( x, κ N ( x)) 16 非線形モデル予測制御の安定条件の略証 Tokyo Institute of Technology o x= 14 非線形モデル予測制御の安定条件の略証 Tokyo Institute of Technology x= Fujita Laboratory Fujita Laboratory 17 一方 { o u~ ( x) := u o (1; x), L , u o ( N − 1; x), κ f ( x ( N ; x)) (18) } 最適入力とは限らない (19) ∴ VNo ( x + ) ≤ VN ( x + , u~ ( x)) o o + + ~ ∴ VN ( x ) ≤ VN ( x , u ( x)) ≤ VN ( x) − l ( x, κ N ( x)) Tokyo Institute of Technology Fujita Laboratory 18 3 SICEセミナー 「モデル予測制御理論の新展開」 非線形モデル予測制御の安定条件の略証 終端コストの意味づけ Tokyo Institute of Technology Tokyo Institute of Technology x ( N − 1; x) o x +o = x= 無限時間 (infinite horizon) 最適制御 o o x o ( N ; x ) f ( x ( N ; x ), κ f ( x ( N ; x ))) x (1; x) x o (0; x) 最適性,安定性 (t = ∞) f ( x o ( N ; x), κ f ( x o ( N ; x))) ∈ X f ⊂ X κ N (x) = u (0; x) u o (1; x) o 入力列 最適な入力とは限らない κ f ( x o ( N ; x)) u~ ( x ) 0 κ f ( x o ( N ; x)) ∈ U u ( N − 1; x) o 1 N モデル予測制御 (receding horizon control) コスト (評価関数) N +1 ∴ VNo ( x + ) ≤ VNo ( x ) − l ( x, κ N ( x)) ∆VNo ( x, κ N ( x)) ≤ − l ( x, κ N ( x)) (21) Q ∆VNo ( x, u ) := VNo ( x + ) − VNo ( x) ( )>0 value function VN ・ ( ) をリアプノフ関数候補として用い, value function VNo ・ ( ) の値が単調減少し原点 x = 0 へ 時間の経過とともに VNo ・ V N ( x, u ) = l ( x(i ), u (i )) i =0 F ( x ( N )) : 終端コスト (terminal cost) o 0 ∞ N 安定性 F ( x ( N )) : N ∼ ∞ までのコストを込める 閉ループ系の漸近安定性 Tokyo Institute of Technology N −1 ∑ l ( x(i), u (i)) + F ( x( N )) Fujita Laboratory 19 Tokyo Institute of Technology Fujita Laboratory 終端コストの意味づけ 終端コストの意味づけ Tokyo Institute of Technology y (k ) = Cx (k ) V N ( x, u ) = Tokyo Institute of Technology 評価関数 例 : 線形の場合 システム x ( k + 1) = Ax ( k ) + Bu ( k ) 評価関数 20 V N ( x, u ) = どのように決めるのか? = ∑ {x k =0 N −1 ∑ {x T ( k )Qx(k ) + u (k ) Ru (k )} + x ( N ) Pf x( N ) T (k )Qx(k ) + u T (k ) Ru (k )} T ∑ {xT (k )Qx(k ) + u T (k ) Ru (k )} + xT ( N ) Pf x( N ) = k =0 ∞ ∑ {x T ∞ + ∑ {x T ( k )Qx(k ) + u T (k ) Ru (k )} k =0 N −1 T k =N ( k )Qx(k ) + u T (k ) Ru (k )} k =0 0 ∼ ∞ までの評価関数 つまり 終端コスト F ( x( N )) に N ∼ ∞ までのコストに込めること モデル予測制御の安定条件 A4 : [ ∆F + l ]( x, κ f ( x )) ≤ 0 , x ∈ X f より求められる条件である ∀ リアプノフ方程式 A f Pf A f + Q f = Pf を満たす N −1 T ∞ Pf = ∑ ( A ) Q f A k T f k f を用いると A f := A + BK f Q f := Q + K Tf RK f 無限時間 (infinite horizon) 最適制御の安定性 κ f ( x) := K f x k =0 *実際にはリアプノフ方程式を直接計算する Tokyo Institute of Technology Fujita Laboratory A. Jadbabaie, J. Yu and J. Hauser, “Unconstrained Receding-Horizon Control of Nonlinear Systems,” IEEE Trans. Automatic Control, Vol.46, No.5, pp.776-783, 2001. 21 その他の安定性の証明方法 Tokyo Institute of Technology 終端コストに control Lyapunov function を用いる 22 Fujita Laboratory 非線形モデル予測制御のロバスト安定条件 Tokyo Institute of Technology l ( x(i ), u (i )) F ( x( N )) 0 N 安定 コスト (評価関数) N −1 V N ( x, u ) = ∑ l ( x(i), u (i)) + F ( x( N )) i =0 終端コストは用いない ∞ 安定 l ( x(i ), u (i )) 0 ∞ 安定 N l ( x(i ), u (i )) 0 N ∞ Tokyo Institute of Technology 時間領域において外乱が加わる不確かなシステム (22) x + = f ( x, u , w) z = h(x) (23) w(k ) :不確かさなどに起因する外乱 w(k ) ∈ W ( x(k ), u (k )) (24) 非線形モデル予測制御のロバスト安定条件 A1 : X f ⊂ X , Xf は閉集合, 0 ∈ X f 安定性を満足するまで Horizon の長さをのばしていく. G. Grimm, M. J. Messina, S. E. Tuna and A. R. Teel, “Model Predictive Control: For Want of a Local Control Lyapunov Function, All is Not Lost,” IEEE Trans. Automatic Control, Vol.50, No.5, pp.546-558, 2005. A. Jadbabaie and J. Hauser, “On the Stability of Receding Horizon Control With a General 23 IEEE Trans. Automatic Control, Vol.50, No.5, pp.674-678, 2005. Terminal Cost,” Tokyo Institute of Technology Fujita Laboratory ∀ A2 : κ f ( x ) ∈ U , x ∈ X f A3 : f ( x, κ f ( x ), w) ∈ X f , ∀x ∈ X f , ∀w ∈ W ( x, κ f ( x )) ∀ ∀ A4 : [ ∆F + l ]( x, κ f ( x ), w) ≤ 0 , x ∈ X f , w ∈ W ( x, κ f ( x )) 終端コスト F(x) が (局所的な) ロバスト制御リアプノフ関数 (robust control Lyapunov function) となる Tokyo Institute of Technology [∆VNo + l ]( x, κ N ( x), w) ≤ 0 Fujita Laboratory 24 4 SICEセミナー 「モデル予測制御理論の新展開」 非線形モデル予測制御のロバスト性 アウトライン Tokyo Institute of Technology 制御則の構成法 ・ 開ループ min-max 型 9 1. はじめに 2. 非線形モデル予測制御 ・ 閉ループ min-max 型 (フィードバック min-max 型) ・ 非線形モデル予測制御の安定性 ・ H∞ モデル予測制御 VN ( x, u ) = Tokyo Institute of Technology N −1 ∑ {l ( x(i), u (i)) − l i =0 w ・ 非線形モデル予測制御の応用例 ( w(k ) } + F ( x( N )) 3. ハイブリッドシステムのモデル予測制御 微分ゲーム理論 (game theory) 4. おわりに 最適制御 ・ 最適レギュレータが有していた好ましい安定余裕 (inherent robustness) モデル予測制御 ・ 逆最適性の観点からの研究 (inverse optimality) 持続的な外乱が付加される場合 ・入力状態間安定性 (input-to-state stability, ISS) Tokyo Institute of Technology Fujita Laboratory 25 Tokyo Institute of Technology Fujita Laboratory 26 モデル予測制御の応用例 (Caltech ducted fan) 非線形モデル予測制御の応用例 Tokyo Institute of Technology Tokyo Institute of Technology ・ Caltech ducted fan 制御目標 入力(推進力)の大きさに制約がある 条件下で,中央のスタンドを軸に回転 運動を行いつつ, 上下に動きながら翼 の位置, 姿勢を目標値に収束させる. 非線形モデル予測制御の応用例 ・ Caltech ducted fan (California Institute of Technology) ・ Hover craft (大阪大学) モデル予測制御 プロセス制御の分野ではない ・ Visual Feedback System “速い” 制御対象への適応へ!! (東工大) システム m&x& + FX a − FX b cos θ − FZ b sin θ = 0 m&z& + FZ a + FX b sin θ − FZb cos θ = mgeff 1 Jθ&& − M a + I p Ωx& cos θ − FZ b lτ = 0 rs Fig 2.2 : Caltech ducted fan ducted fan の慣性モーメント J プロペラの慣性モーメント I p T 状態 x = [x, z , θ , x& , z&, θ&] Fig 2.2 : Caltech ducted fan Fig 2.3 : Hover Craft Fig 2.4 : Visual Feedback System Tokyo Institute of Technology Fujita Laboratory 27 モデル予測制御の応用例 (Caltech ducted fan) [ 入力 u = FXb , FZb ] T http://www.cds.caltech.edu/%7Emilam/research/res.htm Tokyo Institute of Technology Fig 2.5 : 翼の断面図 Fujita Laboratory 28 モデル予測制御の応用例 (Caltech ducted fan) Tokyo Institute of Technology Tokyo Institute of Technology 入力と状態に関する制約 入力に関する制約 : U 与える力 FXb 0 [N] ∼ 13 [N] FZb -6.5 [N] ∼ 6.5 [N] 状態に関する制約 X : 高さ z 0 [m] ∼ 2.5 [m] コスト (評価関数) T J (x) = ∫ q (x(τ ) ,u (τ )) dτ + V (x( T )) Fig 2.6 : 中央スタンド 0 q (x( t), u( t)) = V (x(T )) = 1 T 1 T xerr ( t) Q xerr (t) + uerr (t) R uerr ( t) 2 2 1 T xerr ( T )P xerr ( T ) 2 : ステージコスト (stage cost) : 終端コスト (terminal cost) xerr ≡ x − xeq uerr ≡ u − ueq :偏差 Q > 0, R > 0 xeq = [xcmd , zcmd , θ cmd , 0, 0, 0] T ueq = [mgeff , 0]T :平衡状態 M. B. Milam, R. Franz, J. E. Hauser and R. M. Murray, “Receding horizon control of vectored thrust flight Experiment ,” IEE Proc.Control Theory Appl., Vol.152, No.3, pp.340-348, 2005. Tokyo Institute of Technology Fujita Laboratory http://www.cds.caltech.edu/~murray/ 29 Tokyo Institute of Technology Fujita Laboratory 30 5 SICEセミナー 「モデル予測制御理論の新展開」 モデル予測制御の応用例 (Hover craft) モデル予測制御の応用例 (Hover craft) Tokyo Institute of Technology ・ Hover craft 制御目標 − umax ~ umax 入力に関する制約 :ファンの推進力 U 推進力、移動できる範囲に制約が ある条件下で Hover craftの位置, 姿勢を目標値に収束させる. システム − xmax ~ xmax 状態に関する制約 :移動できる範囲 X コスト (評価関数) J = ϕ (x(T ) ) + ∫ Fig 2.3 : Hover Craft ⎡− sin x3 − sin x3⎤ dx ⎢ = ⎢ cos x3 cos x3 ⎥⎥u dt ⎢⎣ 1 / L − 1 / L ⎥⎦ { L(x(t ′), u (t ′) )dt ′ 1 ( p(t ) − x(t )) Q( p(t ) − x(t ) ) + u T u 2 1 T ϕ = ( p (t ) − x(t ) ) S f ( p(t ) − x (t ) ) 2 L= 状態 x = [x1 , x2 , x3 ] T } : ステージコスト (stage cost) : 終端コスト (terminal cost) Q > 0 , Sf > 0 p (t ) = [0 0 入力 u = [u1 , u2 ] T T. Ohothuka and A. Kodama, “Automation Code Generation System for Nonlinear Receding Horizon Control,” 計測自動制御学会論文集, Vol.38, No.7, pp.617-623 2002. t +T t T Tokyo Institute of Technology Tokyo Institute of Technology 入力と状態に関する制約 π 2 ] :目標値 計算アルゴリズム C/GMRES T (t ) = T f (1 − e −αt ) :評価区間 Fig 2.7 : Hover Craft モデル http://www-newton.mech.eng.osaka-u.ac.jp/ 31 ~ohtsuka/paper/CCA02ohp_hover.pdf Fujita Laboratory モデル予測制御の応用例 (Hover craft) Tokyo Institute of Technology Fujita Laboratory 32 モデル予測制御の応用例 (Visual Feedback Control) Tokyo Institute of Technology Tokyo Institute of Technology ・ Visual Feedback Control 制御目標 視覚情報を用いて,マニピュ レータの手先を観測対象の 真上に一致させる. Camera Target Object Planar Manipulator システム ⎧ ξ& = − M −1 ( q )C (q, q& )ξ + M −1 ( q )u Fig 2.4 : Visual Feedback System ⎪ ⎨& ⎛ sλ T ⎞ sλ T T T & f R J ξ R J α J R R R = − − ⎜ + wc b wc b b wc wc wc ⎟ ⎪ ⎜z ⎟f z wo ⎝ wo ⎠ ⎩ コスト (評価関数) J RHC (u , t ) = ∫ t +T t http://www-newton.mech.eng.osaka-u.ac.jp/~ohtsuka/reseach.htm Tokyo Institute of Technology Fujita Laboratory 33 l ( x(τ ), u (τ ) ) dτ + M ( x(t + T ) ) l ( x(τ ), u (τ ) ) = 4 xT Qx + u T R −1u : ステージコスト (stage cost) M ( x(t + T ) ) = 4V ( x(t + T ) ) : 終端コスト (terminal cost) Tokyo Institute of Technology Fujita Laboratory モデル予測制御の応用例 (Visual Feedback Control) 34 制御システムの階層構造 Tokyo Institute of Technology Tokyo Institute of Technology ∆ 制御システムの階層構造 システム全体の目標 P MPC K 上位レベルでの最適化 (自己組織・適応) Fig : モデル予測制御のブロック線図 制御システムの構造, 評価関数, パラメータ値 最適化制御 制約(拘束), 故障 設定値 直接(ローカル)制御 不確かさ Tokyo Institute of Technology Fujita Laboratory 35 問題点 Tokyo Institute of Technology 操作量 制御対象 モデル予測制御 最適化 ロバスト制御 フィードバック 制御手法 Fujita Laboratory 36 6 SICEセミナー 「モデル予測制御理論の新展開」 アウトライン ハイブリッドシステムとは Tokyo Institute of Technology Tokyo Institute of Technology 人間が介在して, 人間の勘, 度胸(決断), 経験に左右されるシステム 9 1. はじめに 川口忠雄, 制御理論適用の実際, システムと制御チュートリアル講座制御工学へのガイド・ライン, 日本自動制御協会編, 1985. 9 2. 非線形モデル予測制御 3. ハイブリッドシステムのモデル予測制御 貝塚洋, 原川哲美, 山岸健太郎, 鉄鋼プロセスにおける ホロン型ハイブリッドシステム, 計測と制御, vol. 26, no. 1, 1987. 4. おわりに M 最新のモデル予測制御の研究 新しいパラダイムの構築が必要 ・ 非線形モデル予測制御 (nonlinear model predictive control) ・ ロバストモデル予測制御 (robust model predictive control) ・ ‘速い’ システム (fast systems) のモデル予測制御 ・ ハイブリッドシステム (hybrid systems) のモデル予測制御 Tokyo Institute of Technology Fujita Laboratory ハイブリッドシステム + モデル予測制御 37 Tokyo Institute of Technology Fujita Laboratory 38 ハイブリッドシステムとは ハイブリッドシステム Tokyo Institute of Technology Tokyo Institute of Technology トランスミッション 離散的な命令 (R, N, 1, 2, 3, 4, 5) + 計算機科学 計算機科学 連続的なダイナミクス (速度, トルク) If A Then B プラント 1 + 連続的なダイナミクス 3 ハイブリッドシステム ハイブリッドシステム 4 S = ( X ,U , ϕ ) Fig.3.2 プラント ハイブリッドシステム 離散事象システムと連続時間ダイナミカルシステムが 混在し相互影響しているシステム Tokyo Institute of Technology Fujita Laboratory 39 system 2 5 論理を組み込んだシステム dx(t ) = f ( x(t ), u (t )) dt y (t ) = g ( x(t ), u (t )) X = {1,2,3,4,5 } U = {A, B, C} ϕ : X ×U → X x ∈ Rn , u ∈ Rm , y ∈ R p Tokyo Institute of Technology Fujita Laboratory 40 例題:Piecewise Affine System ハイブリッドシステムのクラス Tokyo Institute of Technology Tokyo Institute of Technology 入力飽和を持つシステム x(t + 1) = ⎡10 12⎤ x(t ) + ⎡10⎤sat (u (t )) ⎢⎣ ⎥⎦ ⎢⎣ ⎥⎦ 状態フィードバック ハイブリッドシステムの表現 [ ] • ハイブリッドオートマトン u (t ) = − 1 3 x(t ) 2 2 飽和 ⎧ 1 u ≥1 ⎪ sat (t ) = ⎨ u − 1 ≤ u ≤ 1 ⎪⎩ − 1 u ≤ −1 • ハイブリッドペトリネット • Mixed Logical Dynamical(MLD)システム • Piecewise Affine(PWA)システム X1 : x(t + 1) = ⎡⎢10 12⎤⎥ x(t ) + ⎡⎢10⎤⎥ • Linear Complementarity(LC)システム ⎣ ⎦ ⎣ ⎦ 1 2 ⎡ X 2 : x(t + 1) = ⎢− 1 / 2 − 1 / 2⎤⎥ x(t ) ⎣ ⎦ • Extended Linear Complementarity(ELC)システム • Max-Min-Puls-Scaling(MMPS)システム X 3 : x(t + 1) = ⎡⎢0 1 ⎤⎥ x(t ) + ⎡⎢− 1⎤⎥ ⎣ ⎦ ⎣ ⎦ 1 2 等価性 Tokyo Institute of Technology y (t ) u (t ) ダイナミカル ダイナミカル システム システム 論理 論理 オートマトン オートマトン Fig.3.1 トランスミッション バルブ, スイッチ (開閉, ON OFF) 制御理論 制御理論 Fujita Laboratory 41 Tokyo Institute of Technology 0 sat (u ) 1 u O −1 1 −1 x2 X3 X2 x1 O X1 Fujita Laboratory 42 7 SICEセミナー 「モデル予測制御理論の新展開」 命題計算(propositional caculus) Piecewise Affine System Tokyo Institute of Technology 命題論理(propositional logic) Tyler and Morari, Automatica 1999 (PWA) Piecewise Affine System xk +1 = Ai xk + Bi u k + f i yk = Ci xk + Di u k + g i if Tokyo Institute of Technology ⎡ xk ⎤ ⎢u ⎥ ∈ Pi ⎣ k⎦ if A then B 定性的な表現 [事実] δ : 0-1変数 命題論理 [ f ( x) ≤ 0] ↔ [δ = 1] f ( x) ≤ M (1 − δ ) • 非線形要素の存在による動特性の変化 [ f ( x ) ≤ 0] ↔ [δ = 1] が真 Sontag, T-AC 1981 Johansson and Rantzer, T-AC 1998 Rantzer and Johansson, T-AC 2000 Johansson, Springer-Verlag, 2003 ⇔ f ( x) ≥ ε + ( m − ε )δ M = max f ( x), m = min f ( x) x∈χ 命題論理 Tokyo Institute of Technology Fujita Laboratory 43 ⇔ ε :小さい正の数 x∈χ 混合整数線形不等式 Tokyo Institute of Technology Fujita Laboratory 44 ハイブリッドシステム表現の等価性 Mixed Logical Dynamical System Tokyo Institute of Technology Tokyo Institute of Technology Heemels, Schutter, and Bemporad, Automatica 2001 (MLD) LC x(t + 1) = Ax(t ) + B1u (t ) + B2δ (t ) + B3 z (t ) y (t ) = Cx(t ) + D1u (t ) + D2δ (t ) + D3 z (t ) ELC MLD E2δ (t ) + E3 z (t ) ≤ E1u (t ) + E4 x(t ) + E5 PWA ・0-1変数: δ ∈{0,1} l r ・補助変数: z ∈ Rrc ・混合整数不等式 Bemporad and Morari, Automatica 1999 Tokyo Institute of Technology Fujita Laboratory 45 • Mixed Logical Dynamical(MLD)システム • Piecewise Affine(PWA)システム • Linear Complementarity(LC)システム • Extended Linear Complementarity(ELC)システム • Max-Min-Puls-Scaling(MMPS)システム Tokyo Institute of Technology ハイブリッドシステム表現の変換 Fujita Laboratory 線形システム+論理 Tokyo Institute of Technology ETH(Zurich)のグループ 車のtraction force(静摩擦力)のコントロール traction forceを高くすると 加速力がUP 滑りにくくなる 拘束 タイヤが滑らない 安定性を保つ モデリング 論理表現 HYSDEL hys2pwa MLD システム 46 応用例 Tokyo Institute of Technology ハイブリッドシステム MMPS Adaptive Cruise Control 前方を走る車を考慮 PWA システム 拘束 衝突回避 付録参照 Tokyo Institute of Technology Fujita Laboratory 47 Tokyo Institute of Technology Fujita Laboratory 48 8 SICEセミナー 「モデル予測制御理論の新展開」 マルチパラメトリック計画法を用いた最適制御 拘束を有する線形離散時間システムの最適制御 Tokyo Institute of Technology Tokyo Institute of Technology x(t + 1) = Ax(t ) + Bu (t ) y (t ) = Cx(t ) + Du (t ) xmin ≤ xt + k ≤ xmax 拘束条件 umin ≤ ut + k ≤ umax 状態方程式 状態方程式 x(t + 1) = Ax(t ) + Bu (t ) y (t ) = Cx(t ) + Du (t ) 最適制御問題 N −1 ( ) 最適制御問題 J = ∑ xtT+ k Qxt + k + utT+ k Rut + k + xtT+ N Pxt + N k =0 x 線形システムに対し, 評価関数 J を 最小にする制御問題 u (t ) = Kx (t ) ∑ (x k =0 T t +k ) Qxt + k + utT+ k Rut + k + xtT+ N Pxt + N マルチパラメトリック計画問題 マルチパラメトリック計画問題の最適解は, 区分的アファインな状態フィードバックで与えられる 0 t 最適レギュレータ(LQR) N −1 min {ut ,L,ut + N −1 } x(t ) 状態 をパラメータとする陽な形の (Explicit) 制御則 u (t ) = K i x(t ) + hi P (t ) :リカッチ方程式の解 ( K = − R + B T P (t + 1) B ) −1 B T P (t + 1) A Tokyo Institute of Technology Fujita Laboratory x∈Xi if A. Bemporad, M. Morari, V. Dua, and E. Pistikopoulos (Automatica, 2002) 49 Tokyo Institute of Technology 例題:マルチパラメトリック計画法を用いた最適制御 Fujita Laboratory 例題:マルチパラメトリック計画法を用いた最適制御 Tokyo Institute of Technology Tokyo Institute of Technology u (t ) = x2 線形システム ⎡0.7326 − 0.0861⎤ ⎡0.0609⎤ x(t + 1) = ⎢ x(t ) + ⎢ ⎥u (t ) 0.999 ⎥⎦ ⎣0.1722 ⎣0.0064⎦ Region 1 8 [− 5.9220 Region 2,3,4 2.0000 7 3 x1 1 5 2 拘束条件: − 2 ≤ u (t ) ≤ 2 6 4 最適制御問題 Fujita Laboratory Region 5,7,8 − 2.0000 Region 6 [− 6.5159 − 4.6953]x + 0.6423 Region 9 [− 6.5159 − 4.6953]x − 0.6423 状態フィードバック ⎞ T ⎡ 3.0485 − 2.5055⎤ ⎛ ⎡1 0 ⎤ 2 min ∑ ⎜⎜ xtT+ k ⎢ ⎥ xt + k + 0.01ut + k ⎟⎟ + xt + 2 ⎢− 2.5055 12.9916 ⎥ xt + 2 {ut ,ut +1 } 0 1 k =0 ⎝ ⎣ ⎦ ⎣ ⎦ ⎠ 1 u (t ) = Kx (t ) 区分的アファインな状態フィードバック 51 u (t ) = K i x (t ) + hi if 拘束条件: − 2 ≤ u (t ) ≤ 2 x ∈Xi Tokyo Institute of Technology x0 = [1 1] 例題:システムの応答(初期値 ) T Fujita Laboratory Tokyo Institute of Technology Multi-Parametric Toolbox (MPT) ver.2.04 x2 スイス連邦工科大 IfA URL http://control.ee.ethz.ch/~mpt/ 8 数理計画問題 7 3 線形計画問題 (Linear Programming) x1 1 2次計画問題 (Quadratic Programming) 5 2 4 52 Multi-Parametric Toolbox Tokyo Institute of Technology 9 − 6.883]x 9 y (t ) = [0 1.4142]x(t ) Tokyo Institute of Technology 50 混合整数計画問題 (Mixed Integer Programming) 6 → マルチパラメトリック計画問題 (Multi-Parametric Programming) オフライン計算で最適解が得られる 付録参照 Tokyo Institute of Technology Fujita Laboratory 53 Tokyo Institute of Technology Fujita Laboratory 54 9 SICEセミナー 「モデル予測制御理論の新展開」 ハイブリッドシステムのモデル予測制御 ハイブリッドシステムのモデル予測制御 Tokyo Institute of Technology MLDシステムのモデル予測制御 Dynamicalシステム+命題論理 min 等価 PWAシステムのモデル予測制御 区分的アファインなコントローラ + 区分的アファインなシステム {ut ,L,ut + N −1 } k =0 Q4 ( xt + k − xe ) ∞ + Q5 ( yt + k − ye ) ∞ } subject to x2 xt + k +1|t = Axt + k |t + B1ut + k + B2δ t + k |t + B3 zt + k |t MLDシステム yt + k |t = Cxt + k |t + D1ut + k + D2δ t + k |t + D3 zt + k |t (ハイブリッド システム) Eδ +E z ≤Eu +E x +E 2 t + k |t X2 O Tokyo Institute of Technology Fujita Laboratory 55 3 t + k |t xmin ≤ xt + k |t ≤ xmax umin ≤ ut + k ≤ umax xt + N |t = xe x1 X1 2⎤ ⎡0⎤ 1 ⎥⎦ x (t ) + ⎢⎣ − 1⎥⎦ N −1 J (u0N −1 , x(t )) := ∑ { Q1 (uk − ue ) ∞ + Q2 (δ t + k − δ e ) ∞ + Q3 ( zt + k − ze ) ∞ + X3 0 X 1 : x (t + 1) = ⎡⎢10 12 ⎤⎥ x (t ) + ⎡⎢1 ⎤⎥ ⎦ ⎣ ⎣ ⎦ X 2 : x (t + 1) = ⎡⎢ − 11/ 2 − 12/ 2 ⎤⎥ x (t ) ⎣ ⎦ 1 X 3 : x (t + 1) = ⎡⎢0 ⎣ Tokyo Institute of Technology 最適制御問題 1 t+k 4 t + k |t 5 拘束条件 終端拘束条件 混合整数計画(Mixed Integer Programming) {ut , L, ut + N −1} の最初の要素を入力として適用する 最適解 Tokyo Institute of Technology Fujita Laboratory ハイブリッドシステムのモデル予測制御 モデル予測の比較 Tokyo Institute of Technology 最適制御問題 N −1 min {ut ,L,u N −1 } ∑ (u T k Tokyo Institute of Technology MLDシステムのモデル予測制御 ) Ruk + xkT Qxk + xTN Q f xT k =0 subject to x(k + 1) = Ai x(k ) + Bi u (k ) + f i y (k ) = Ci x(k ) + Di u (k ) + gi xk ∈ X 拘束条件 uk ∈ U x( N ) = X set 終端集合 混合整数計画問題(Mixed Integer Programming) ・on-line計算(繰り返し計算) ・計算時間:大 PWAシステム (ハイブリッド システム) 等価 PWAシステムのモデル予測制御 マルチパラメトリック線形計画問題(mp-LP) { min f cT pc + f dT pd マルチパラメトリック計画問題 モデル予測制御則 p Tokyo Institute of Technology Fujita Laboratory } Gc pc + Gd pd ≤ S + Fξ (t ) u (t ) = [0 L 0 I 0 L 0] f ( x(t )), x ∈ X i f ( x(t )) = Fi x(t ) + Gi if x ∈ X i ・off-line計算 ・計算時間:小 57 例題1:ハイブリッドシステムのモデル予測制御 Tokyo Institute of Technology Fujita Laboratory cos α (t ) − sin α (t ) ⎤ x(t + 1) = 0.8⎡⎢ x (t ) + ⎡10⎤u (t ) ⎢⎣ ⎥⎦ ⎣ sin α (t ) cos α (t ) ⎥⎦ [ ] 1 0 x ( t ) ≥ 0 if / 3 π ⎧ ハイブリッドシステム 線形システム+論理 α (t ) = ⎨ HYSDEL ⎩− π / 3 if [1 0]x(t ) < 0 x(t ) ∈ [− 10,10]× [− 10,10] 拘束条件: u (t ) ∈ [− 1,1] R =1 最適制御問題 N −1 Tokyo Institute of Technology ∑ (u k =0 T k Tokyo Institute of Technology Multi-Parametric Toolbox ハイブリッドシステム min 58 例題1:ハイブリッドシステムのモデル予測制御 Tokyo Institute of Technology {ut ,L,u N −1 } 56 ) Ruk + xkT Qxk + xTN Q f xT モデリング 論理表現 hys2pwa Multi-Parametric Toolbox PWA 最適制御 システム (モデル予測制御) MLD システム 区分的アファインな制御則 N =5 Q = I2 Qf = 0 u * (t ) = K i x(t ) + hi if x ∈ X i • 複雑度の軽減, 近似最適解の構成 • 安定性 • 実行可能性 Fujita Laboratory 59 Tokyo Institute of Technology 付録参照 Fujita Laboratory 60 10 SICEセミナー 「モデル予測制御理論の新展開」 例題2:PWAシステムのモデル予測制御 例題1:Explicit状態フィードバック則 Tokyo Institute of Technology 領域数:176 計算時間:7.4476秒 Tokyo Institute of Technology PWAシステム x2 ⎡1 0.2⎤ ⎡0⎤ X 1 :x(k +1) = ⎢ x(k) + ⎢ ⎥u(k) ⎥ ⎣0 1 ⎦ ⎣1⎦ ⎡0.5 0.2⎤ ⎡0⎤ ⎡0.5⎤ x(k)+⎢ ⎥u(k)+⎢ ⎥ X2 : x(k +1) =⎢ ⎥ ⎣0 1⎦ ⎣1⎦ ⎣0⎦ 拘束条件: N −1 min {ut ,L,u N −1 } Tokyo Institute of Technology Fujita Laboratory 61 X1 x1 O x(t ) ∈ [− 10,10]× [− 10,10] R =1 u (t ) ∈ [− 1,1] N =5 Q = I2 Qf = 0 最適制御問題 領域の複雑化 X2 ∑ (u T k ) Ruk + xkT Qxk + xTN Q f xT k =0 Tokyo Institute of Technology Fujita Laboratory 例題2:PWAシステムのモデル予測制御 62 Explicit状態フィードバック則 Tokyo Institute of Technology Tokyo Institute of Technology PWAシステムのモデル予測制御 マルチパラメトリック線形計画問題(mp-LP) { min f cT pc + f dT pd p } Gc pc + Gd pd ≤ S + Fξ (t ) ・off-line計算 ・計算時間:小 ・領域数が多い ・安定性の問題 計算が複雑 漸近安定性の保証と計算の複雑度の低下 ・minimum-time controller ・one-step controller 原点に収束していない Tokyo Institute of Technology Fujita Laboratory 63 Tokyo Institute of Technology Fujita Laboratory 漸近安定性の保証 終端重みの決め方 Tokyo Institute of Technology T X2 O 終端コストの決め方 X 平衡点: x = 0 を仮定 I0 平衡点を含む領域のシステム のみを考慮。 以下の条件を満たす終端重みQf=PとフィードバックゲインFiを決める。 1 xT Px ≥ 0 ∀x ∈ X T T T F(x(N +1)) − F(x(N)) − l(x(N)) ≤ 0 に対応する。 終端コストは局所的なリアプノフ関数 P. Grieder, M.Kavaxnica, M.Baotic, M.Morari(Automatica, 2005) Tokyo Institute of Technology Fujita Laboratory min γ subject to T ⎡ Z ⎢ T ⎢( Ai Z + BiYi ) ⎢ (Q 0.5 Z ) ⎢ 0.5 ⎢⎣ ( R Yi ) 非線形モデル予測制御の ∀x ∈ Di BMI(bilinear matrix inequality) 計算時間:大 等価変換 Z > 0, Z T ∀x ∈ X xT ( Ai + Bi Fi )T P( Ai + Bi Fi )x − xT Px ≤ xT Qx− xT FiT RFi x ∀i ∈ I 0 Yi , Z ,γ x ( Ai + Bi Fi ) P( Ai + Bi Fi )x − x Px ≤ x Qx− x Fi RFi x ∀i ∈ I 0 ∀x ∈ Di T Tokyo Institute of Technology x Px ≥ 0 X3 終端コストと終端拘束を適切に決める T 64 Yi = Fi Z Z = =Z ( Ai Z + BiYi ) (Q 0.5 Z )T Z 0 0 0 γI 0 ( R 0.5Yi )T ⎤ ⎥ 0 ⎥ ≥0 0 ⎥ ⎥ γI ⎥⎦ 1 γ P −1 ∀i ∈ I 0 LMI(linear matrix inequality) 計算時間:小 65 P. Grieder, M.Kavaxnica, M.Baotic, M.Morari(Automatica, 2005) Tokyo Institute of Technology Fujita Laboratory 66 11 SICEセミナー 「モデル予測制御理論の新展開」 終端集合の決め方 漸近安定性 Tokyo Institute of Technology min γ subject to Yi , Z ,γ Yi = Fi Z Z = Z > 0, Z T = Z ⎡ Z ⎢ T ⎢( Ai Z + BiYi ) ⎢ (Q 0.5 Z ) ⎢ 0.5 ⎣⎢ ( R Yi ) ( Ai Z + BiYi ) (Q 0.5 Z )T Z 0 γI 0 0 0 ( R 0.5Yi )T ⎤ ⎥ 0 ⎥ ≥0 0 ⎥ ⎥ γI ⎦⎥ 1 P −1 γ Tokyo Institute of Technology 定理 PWAシステム x(k + 1) = Ai x(k ) + Bi u (k ) + f i に対する最適制御問題 J N* ( x(0)) = min ∀i ∈ I 0 ∑ (u T k Yi = Fi Z Z = Yi , Z ,γ Z > 0, Z T = Z ⎡ Z ⎢ T ⎢( Ai Z + BiYi ) 0 ⎢ (Q .5 Z ) ⎢ 0.5 ⎣⎢ ( R Yi ) 終端集合 PWAの閉ループ系 x(k + 1) = ( Ai + Bi Fi ) x(k ) に対し 拘束を満たす不変集合(最大出力許容集合)O PWA ∞ を終端集合とする 終端重みQfと終端集合 により漸近安定を保証 O∞PWA P. Grieder, M.Kavaxnica, M.Baotic, M.Morari(Automatica, 2005) Fujita Laboratory 67 ) Ruk + xkT Qxk + xTN Q f xT k =0 に関して、以下の最適化 min γ subject to 終端重みQf=PとフィードバックゲインFiが決定 Tokyo Institute of Technology N −1 {ut ,L,u N −1 } ( Ai Z + BiYi ) (Q Z ) Z 0 γI 0 0 0 0. 5 T 0.5 ( R Yi ) 0 0 γI T ⎤ ⎥ ⎥≥0 ⎥ ⎥ ⎦⎥ 1 γ P −1 ∀i ∈ I 0 x(k + 1) = ( Ai + Bi Fi ) x(k ) により求まるPを終端重み、閉ループ系 に対する拘束を満たす不変集合 を終端集合とするとシステ O∞PWA ムは漸近安定となる。 P. Grieder, M.Kavaxnica, M.Baotic, M.Morari(Automatica, 2005) Tokyo Institute of Technology low complexity Fujita Laboratory 68 low complexity Tokyo Institute of Technology 領域の複雑度の低下 ・minimum-time controller Tokyo Institute of Technology 領域の複雑度の低下 ・one-step controller X∞PWA を計算する 問題が解ける範囲を考える Nステップで不変集合 へ到達できる初期状態 O∞PWA PWA の集合を とする。 XN PWA X∞PWA : O へ到達できる最大の初期状態集合 ∞ ホライゾンは1に固定 X∞PWA Multi-Parametric計画法で計算する O∞PWA から逆に を 複雑度低下の理由 O∞PWA x2 PWA 初期値が決まると O∞ X1PWA へ収束を保障する最少の X2PWA x1 ホライゾンが決まる。 O∞PWA X∞PWA Multi-Parametric計画法で次にどの領域に行けばよい かを計算する x2 x2 分解 ・ ・ ・ 必要最小限のホライゾンで できる。 X∞PWA P. Grieder, M.Kavaxnica, M.Baotic, M.Morari(Automatica, 2005) Tokyo Institute of Technology 複雑度低下の理由 X∞PWA をより小さな多角形に分解 Fujita Laboratory x1 x1 P. Grieder, M.Kavaxnica, M.Baotic, M.Morari(Automatica, 2005) 69 Tokyo Institute of Technology Fujita Laboratory 70 例題:Explicit状態フィードバック則 例題:ハイブリッドシステムのモデル予測制御 Tokyo Institute of Technology Tokyo Institute of Technology 領域数:176 計算時間:7.4476秒 ハイブリッドシステム cos α (t ) − sin α (t ) ⎤ x(t + 1) = 0.8⎡⎢ x (t ) + ⎡10⎤u (t ) ⎢⎣ ⎥⎦ ⎣ sin α (t ) cos α (t ) ⎥⎦ [ ] 1 0 x ( t ) ≥ 0 if / 3 π ⎧ α (t ) = ⎨ 拘束条件: ⎩− π / 3 if [1 0]x (t ) < 0 x(t ) ∈ [− 10,10]× [− 10,10] u (t ) ∈ [− 1,1] 最適制御問題 N −1 min {ut ,L,u N −1 } Tokyo Institute of Technology ∑ (u k =0 T k ) Ruk + xkT Qxk + xTN Q f xT R =1 N =5 Q = I2 Qf = 0 Fujita Laboratory 71 Tokyo Institute of Technology Fujita Laboratory 72 12 SICEセミナー 「モデル予測制御理論の新展開」 例題:minimum-time controller 例題:one-step controller Tokyo Institute of Technology Tokyo Institute of Technology 領域数:16 計算時間:2.6344秒 領域数:170 計算時間:7.2069秒 Tokyo Institute of Technology Fujita Laboratory 73 Tokyo Institute of Technology Fujita Laboratory ハイブリッドシステムの安定性解析 74 応用例 Tokyo Institute of Technology Tokyo Institute of Technology ETH(Zurich)のグループ Electronic throttle 基本はLyapunovの定理 問題はLyapunov関数の計算 Common quadratic Lyapnov function Common sum-of-squares Lyapunov function Piecewise affine Lyapunov function Piecewise quadratic Lyapunov function Smart Damping Materials Fig.3.3 Piecewise quadratic Lyapunov function Fig.3.4 Piecewise affine Lyapunov function P. Biswas, P.Grieder, J.Lofberg, M.Morari(IFAC, 2005) Tokyo Institute of Technology Fujita Laboratory 75 分散型の制御 Tokyo Institute of Technology Fujita Laboratory Distributed Receding Horizon Control Tokyo Institute of Technology 制御目的 入力の大きさに制約がある条件下で複数台のVehicleが Formationを形成しながら目的地にたどり着くこと 制約 入力の大きさ 障害物回避 衝突回避 Tokyo Institute of Technology コントローラ Distributed Receding Horizon(分散型モデル予測制御) 基本的な考えは一般のモデル予測と同じ (Centralized) Receding Horizon 全てビークルの状態が計測可能 Masterが存在 Distributed Receding Horizon 通信できるビークルの状態のみ獲得可能 個々が入力を決定 問題の大規模化 分散制御 + Networked Control の必要性 Networked Control System 分散化の問題点 通信時間によるむだ時間の発生 ノイズなどによるパケットロス 不安定化を導く Distributed + Networkedの一体化が必要 Fig.3.6 ブルーインパルス http://www.jda.go.jp/jasdf/gallery/bluet2.htm Tokyo Institute of Technology 76 Fujita Laboratory 77 Tokyo Institute of Technology Fujita Laboratory 78 13 SICEセミナー 「モデル予測制御理論の新展開」 Distributed Receding Horizon Control Distributed Receding Horizon Control Tokyo Institute of Technology 分散制御への二つのアプローチ 連続系の非線形システムのモデル予測制御 William B. Dunbar and Richard M. Murray, ‘Distributed Receding Horizon Control with Application to Multi-Vehicle Formation Stabilization,’ Accepted to Automatica, June, 2004. Revision submitted May, 2005. Tokyo Institute of Technology 連続系の非線形システムのモデル予測制御 個々のシステムは連続な非線形システム フォーメーションの核が存在 通信相手は固定 衝突回避、障害物回避不可能 最適化 離散系のハイブリッドモデル予測制御 J * ( x (t k )) = min ∫ u (tk ) T. Keviczky, F. Borrelli and G. J. Balas ‘A Study on Decentralized Receding Horizon Control for Decoupled Systems’ Technical Report, University of Minnesota, Minneapolis. March 2004. Subject to Fujita Laboratory ∑ L ( x ( s ), x( s ) i j∈ N i −i u ( s )) ds + γ x (t + T ) − x c 79 P William B. Dunbar and Richard M. Murray, (Automatica,2005) Tokyo Institute of Technology Fujita Laboratory Tokyo Institute of Technology 離散系のハイブリッドモデル予測制御 個々のシステムは離散系の非線形システム 個々のシステムが目的地へ移動 通信相手は流動的 衝突回避、障害物回避可能 9 2. 非線形モデル予測制御 ・ 非線形モデル予測制御の安定性 ・ 非線形モデル予測制御の応用例 N −1 i t Ut Subject to 9 3. ハイブリッドシステムのモデル予測制御 k =0 9 4. おわりに 終端コスト x = f ( x , uki ,t ) xki +1,t ∈ X i uki ,t ∈ U i j j x = f j ( x , ukj,t ) xkj+1,t ∈ X j uk ,t ∈ U j ∈ Ni g ( xki ,t , uki ,t , xkj,t , ukj,t ) ≤ 0 j ∈ Ni 拘束条件 x Nj ,t ∈ X fj x Ni ,t ∈ X if 終端集合 x0i ,t ∈ xti x0j,t ∈ xtj 初期条件 i k +1,t j k +1,t i, j i i k ,t j k ,t 最新のモデル予測制御の研究 ・ 非線形モデル予測制御 (nonlinear model predictive control) T. Keviczky, F. Borrelli and G. J. Balas (Technical Report, University of Minnesota,2004) Tokyo Institute of Technology Tokyo Institute of Technology 9 1. はじめに J (x , ~ xti ) = min ∑ l i ( xki ,t , uki ,t , xkj,t , ukj,t ) + lNi ( xNj ,t , xNj ,t ) i i* N 80 アウトライン Distributed Receding Horizon Control 最適化 2 x&i = f ( xi (τ : t k ), ui (τ : t k )) L ( xi , x−i , u ) : 評価関数 x& −i = f ( x−i (τ : t k ), u −i (τ : t k )) xi : 自分の状態 ui : 自分の入力 xi ∈ X i x−i : 相手の状態 u −i : 相手の入力 拘束条件 ui ∈ Ui N i : 近傍 P : 終端重み γ : 定数 xi (T ) ∈ Ω i (ε i ) 終端集合 T : ホライゾン 通信の問題に関して触れられていない Networked Control Systemへの拡張が必要 Tokyo Institute of Technology t k +T tk Fujita Laboratory 81 ・ ロバストモデル予測制御 (robust model predictive control) ・ ‘速い’ システム (fast systems) のモデル予測制御 ・ ハイブリッドシステム (hybrid systems) のモデル予測制御 Tokyo Institute of Technology Fujita Laboratory 付録 82 HYSDEL Tokyo Institute of Technology Tokyo Institute of Technology Hybrid System Description Language (HYSDEL) ver.2.0.5 HYSTEL http://control.ee.ethz.ch/~hybrid/hysdel/ Multi-Parametric Tool box ハイブリッドシステム(Hybrid Discrete Automaton) 線形ダイナミクス オートマトン If-then-else 規則 命題論理 Mixed Logical Dynamical (MLD) システム x(t + 1) = Ax(t ) + B1u (t ) + B2δ (t ) + B3 z (t ) y (t ) = Cx(t ) + D1u (t ) + D2δ (t ) + D3 z (t ) E2δ (t ) + E3 z (t ) ≤ E1u (t ) + E4 x(t ) + E5 Tokyo Institute of Technology Fujita Laboratory 83 Tokyo Institute of Technology Fujita Laboratory 84 14 SICEセミナー 「モデル予測制御理論の新展開」 HYSDEL HYSDEL Tokyo Institute of Technology SYSTEM car{ INTERFACE{ STATE{ } 状態 INPUT{ } 入力 OUTPUT{ } 出力 PARAMETER{ } パラメータ } IMPLEMENTATION{ CONTINUOUS{ } ダイナミクス OUTPUT{ } 出力 MUST{ } 拘束条件 AUX{ } 補助変数 AD{ } AD e.g. x ≤ 0 ⇔ δ = 1 DA{ IF THEN } DA e.g. IF δ = 1 THEN x = 1000 LOGIC{ } 命題論理 } } Tokyo Institute of Technology Fujita Laboratory Tokyo Institute of Technology F.D. Torrisi and A. Bemporad, HYSDEL – A Tool for Generating Computational Hybrid Models for Analysis and Synthesis Problems, Technical Report: AUT 02-03, ETH, Zurich, 2002. SYSTEM car{ INTERFACE{ STATE{ REAL position [-1000, 1000]; REAL speed [-50*1000/3600, 220*1000/3600]; } 5段ギアシステム (プログラムの一部) INPUT{ REAL torque [-300,300]; REAL F_brake [0,9000]; REAL slope [0, 1]; BOOL gear1, gear2, gear3, gear4, gear5, gearR; } OUTPUT{ REAL position_y, speed_y, w_y; } 位置 p(t + 1) = p (t ) + Ts v(t ) 速度 PARAMETER{ v(t + 1) = f (t ) REAL mass = 1020; REAL Ts = 0.5; ギアに依存した非線形関数 REAL g = 9.8; REAL beta_friction =25; REAL Rgear1 = 3.7272; REAL Rgear2 = 2.048; } 85 } Institute of Technology Tokyo Fujita Laboratory HYSDEL HYSDEL Tokyo Institute of Technology IMPLEMENTATION{ AUX{ REAL Fe1, Fe2, Fe3, Fe4, Fe5, FeR, w1, w2, w3, w4, w5, BOOL dPWL1, dPWL2, dPWL3, dPWL4; } 86 Tokyo Institute of Technology IMPLEMENTATION{SYSTEM car{ INTERFACE{ AUX{ REAL Fe1, Fe2, Fe3, Fe4, Fe5, FeR, ¥ 5段ギアシステム (プログラムの一部) コンパイル STATE{ BOOL dPWL1, dPWL2, dPWL3, dPWL4; } REAL position [-1000, 1000]; AD{ AD{ REAL dPWL1 = wPWL1 - (w1 + w2speed + w3 [-50*1000/3600, + w4 + w5 + ¥ 220*1000/3600]; } dPWL1 = wPWL1 - (w1 + w2 + w3 + w4 + w5 + wR) <= 0; } DA{ DA{ Fe1 = {IF gear1 THEN torque / speed_factor * Rgear1}; INPUT{ Fe1 = {IF gear1 THENREAL torque torque / speed_factor * Rgear1}; [-300,300]; w1 = {IF gear1 THEN speed / speed_factor * Rgear1}; w1 = {IF gear1 THEN speed speed_factor * Rgear1}; REAL/ F_brake [0,9000]; Mixed Logical Dynamical (MLD) システム DCe1 = {IF dPWL1 THEN (aPWL2 - aPWL1) +( REAL slope [0, 1]; DCe1 = {IF dPWL1 THEN (aPWL2 - aPWL1) + (bPWL2 -bPWL1) * (w1 + w2 + w3 + w4 +wR)}; } CONTINUOUS{ CONTINUOUS{ BOOL gear1, gear2, gear3, gear4, gear5, gearR; } position = position + Ts * speed; OUTPUT{ speed = speed + Ts / mass * (Fe1 + Fe2 +Fe3 +Fe4 + REAL position_y, speed_y, w_y; } OUTPUT{ PARAMETER{ position_y = position; REAL mass = 1020; speed_y = speed; position = position + Ts * speed; speed = speed + Ts / mass * (Fe1 + Fe2 +Fe3 +Fe4 +Fe5 + FeR - F_brake - beta_friction * speed ) -g *slope; } OUTPUT{ position_y = position; speed_y = speed; Ts + = wR; 0.5; } w_y = w1 + w2 + w3 +REAL w4 + w5 REAL g = 9.8; w_y = w1 + w2 + w3 + w4 + w5 + wR; } MUST{ MUST{ beta_friction -w1 <= -wemin; w1 <=REAL wemax; -w2 <= -¥; =25; -w1 <= -wemin; w1 <= wemax; -w2 <= -wemin; w2 <= wemax; -torque - ( aPWL1 + bPWL1 (w1 + w2 +¥ REAL*Rgear1 = 3.7272; -torque - ( aPWL1 + bPWL1 * (w1 + w2 + w3 + w4 + w5 +wR)) <= 0;} } } } Tokyo Institute of Technology Fujita Laboratory 87 } REAL Rgear2 = 2.048; } } Tokyo Institute of Technology HYSDEL Fujita Laboratory 88 Multi-Parametric Toolbox Tokyo Institute of Technology Tokyo Institute of Technology Piecewise Affine (PWA) Plugin: hys2pwa 1.1.3 Multi-Parametric Toolbox (MPT) ver.2.04 Mixed Logical Dynamical システム スイス連邦工科大 IfA URL http://control.ee.ethz.ch/~mpt/ x(t + 1) = Ax(t ) + B1u (t ) + B2δ (t ) + B3 z (t ) y (t ) = Cx(t ) + D1u (t ) + D2δ (t ) + D3 z (t ) E2δ (t ) + E3 z (t ) ≤ E1u (t ) + E4 x(t ) + E5 • MATLAB hys2pwa • LP solver http://control.ee.ethz.ch/~hybrid/hysdel/hysdel.msql Piecewise Affine システム x(t + 1) = Ai x(t ) + Bi u (t ) + f i Tokyo Institute of Technology if ⎡ x(t )⎤ ⎢u (t )⎥ ∈ Di , i ∈ I ⎣ ⎦ • Linprog (MATLAB) • CDD (Free) • CPLEX (Commercial) • NAC solver (Commercial) • SeDuMi Fujita Laboratory 89 Tokyo Institute of Technology Fujita Laboratory 90 15 SICEセミナー 「モデル予測制御理論の新展開」 有限時間最適制御問題 有限時間最適制御問題 Tokyo Institute of Technology ノルム 線形離散時間システム x(t + 1) = Ax(t ) + Bu (t ) y (t ) = Cx (t ) + Du (t ) 有限時間最適制御問題 Qx 1 = Qx N −1 J N* ( x (0)) = min Q f x N + ∑ Ru k l + Qxk Qx 2 = x Qx T Qx ∞ N −1 l u0 ,L,u N −1 制約条件 xk ∈ X , uk ∈U , k =0 l l u 0 ,L,u N −1 l ∈ {1, 2, ∞} ∀k ∈ {1, K , N } 制約条件 x N ∈ X set Tokyo Institute of Technology 入力列 U N = u0T , K , u TN −1 Fujita Laboratory 91 Fujita Laboratory 92 Example 1 } Tokyo Institute of Technology システム ⎡1 x(t + 1) = ⎢ ⎣0 ⎡1 y (t ) = ⎢ ⎣0 G U N ≤ W + Ex (0) [ T Tokyo Institute of Technology J N* ( x(0)) = xT (0)Yx(0) + min U NT H U N + xT (0) F U N 入力列 U N = u0T , K , u TN −1 ] Tokyo Institute of Technology 有限時間最適制御問題 UN UN G U N ≤ W + Ex(0) [ xk +1 = Axk + Buk , x(0) = x0 , ∀k ∈ {1, K , N } 制約条件 l J N* ( x(0)) = xT (0)Yx(0) + min{U NT H U N + xT (0) F U N } ∀k ∈ {1, K, N − 1} { k =0 制約条件 xk ∈ X , ∀k ∈ {1, K , N } uk ∈ U , ∀k ∈ {1, K, N − 1} xN ∈ X set xk +1 = Axk + Buk , x(0) = x0 , ∀k ∈ {1, K, N } = max Qx 有限時間最適制御問題 J N* ( x(0)) = min Q f x N + ∑ Ruk l + Qxk Tokyo Institute of Technology ] T 定理 (陽な形の(Explicit)コントローラ) 有限時間最適制御問題が可解であれば, 最適入力列は 問題 U N* ( x(0)) = Fr x (0) + Gr if x (0) ∈ Pr = {x ∈ R n | H r x ≤ K r } 5 min u0 ,L,u 4 という区分的アファインな制御則で与えられる. Subject to A. Bemporad, M. Morari, V. Dua and E.N. Pistikopoulos (Automatica, 2002) F. Borrelli (Constrained Optimal Control of Linear and Hybrid Systems, 2003) Tokyo Institute of Technology Fujita Laboratory 1⎤ ⎡0 ⎤ x(t ) + ⎢ ⎥u (t ) 1⎥⎦ ⎣1⎦ 0⎤ ⎡0 ⎤ x(t ) + ⎢ ⎥u (t ) 1⎥⎦ ⎣0 ⎦ 93 ⎡1 0⎤ ⎥ xk ⎣ 1⎦ ∑ ⎢0 k =0 + uk 2 2 ⎡− 5⎤ ⎡5⎤ ⎢− 5⎥ ≤ x(t ) ≤ ⎢5⎥ ⎣ ⎦ ⎣ ⎦ − 1 ≤ u (t ) ≤ 1 Tokyo Institute of Technology Fujita Laboratory Example 1 94 Example 1 Tokyo Institute of Technology Tokyo Institute of Technology システム ⎡1 1⎤ ⎡0 ⎤ x(t + 1) = ⎢ ⎥ x(t ) + ⎢1⎥u (t ) ⎣0 1⎦ ⎣ ⎦ ⎡1 0 ⎤ ⎡0 ⎤ y (t ) = ⎢ ⎥ x(t ) + ⎢0⎥u (t ) ⎣0 1 ⎦ ⎣ ⎦ ⎡5⎤ ⎡ − 5⎤ ⎢ − 5⎥ ≤ x(t ) ≤ ⎢5⎥ ⎣ ⎦ ⎣ ⎦ − 1 ≤ u (t ) ≤ 1 構造体 sysStruct Tokyo Institute of Technology 問題 5 システムの記述 min u0 ,L,u 4 sysStruct.A=[1 1;0 1]; sysStruct.B=[0;1]; sysStruct.C=[1 0;0 1]; sysStruct.D=[0;0]; ⎡1 0 ⎤ ⎥ xk ⎣ 1⎦ ∑ ⎢0 k =0 + uk 2 2 最適制御問題の記述 probStruct.norm=2; probStruct.Q=eye(2); probStruct.R=1; probStruct.N=5; probStruct.xObunds0=0; probStruct.subopt_lev=0; sysStruct.umin=-1; sysStruct.umax=1; sysStruct.ymin=[-5 -5]'; sysStruct.ymax=[5 5]'; Fujita Laboratory probStruct.P_N=0; 構造体 probStruct 95 Tokyo Institute of Technology probStruct.Tconstraint=0; Fujita Laboratory 96 16 SICEセミナー 「モデル予測制御理論の新展開」 Example 1 Example 1 Tokyo Institute of Technology Tokyo Institute of Technology 構造体 ctrlStruct システム 構造体 sysStruct 領域を描く mpt_plotPartition(ctrlStruct) 問題 構造体 probStruct 5 4 最適制御問題を解く 3 2 [ctrlStruct]=mpt_Control(sysStruct,probStruct); 1 x2 0 -1 構造体 ctrlStruct -2 -3 U N* ( x(0)) = Fr x(0) + Gr if x (0) ∈ Pr = {x ∈ R n | H r x ≤ K r } Tokyo Institute of Technology Fujita Laboratory 97 Controller partition with 13 regions. -4 -5 -10 -8 -6 -4 -2 0 2 4 6 8 10 x1 Tokyo Institute of Technology Fujita Laboratory Example 1 Example 1 Tokyo Institute of Technology Tokyo Institute of Technology 最適トラジェクトリ(入力)を計算する 複雑度を軽減する probStruct.subopt_lev=2; [X,U,Y,D,cost,trajectory,feasible] = mpt_computeTrajectory(ctrlStruct,[8;-4],10) 5 4 x 3 u 10 2 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 x1 5 1 x2 0 0 -1 -2 x2 -5 -3 -10 Controller partition with 3 regions. -4 -5 -10 -8 -6 -4 -2 0 2 x1 4 98 6 8 0 10 99 Fujita Laboratory Tokyo Institute of Technology 2 Tokyo Institute of Technology Example 1 4 6 8 10 time 0 2 4 6 time 8 10 100 Fujita Laboratory GUI Tokyo Institute of Technology 最適トラジェクトリを描く Tokyo Institute of Technology GUIを使って設計をする MATLABのcommand windowで‘mpt_studio’ [X,U,cost,trajectory]=mpt_plotTrajectory(ctrlStruct) Closed-Loop Trajectory for initial state [7.9563,-4.0268] 5 4 3 2 x2 1 0 -1 -2 -3 -4 -5 -10 Tokyo Institute of Technology -8 -6 -4 -2 0 x1 2 4 6 8 10 101 Fujita Laboratory Tokyo Institute of Technology 102 Fujita Laboratory 17