org.mklab.tool.control
クラス Dlqr

java.lang.Object
  上位を拡張 org.mklab.tool.control.Dlqr

public class Dlqr
extends Object

離散時間系のLQRを求めるクラスです。

Discrete-time linear quadratic regulator

バージョン:
$Revision: 1.39 $
作成者:
koga
関連項目:
Lqr, Dlqe

コンストラクタの概要
Dlqr()
           
 
メソッドの概要
static List<Matrix> dlqr(Matrix A, Matrix B, Matrix Q, Matrix R)
          離散時間線形システム x[n + 1] = Ax[n] + Bu[n] について、二次形式評価関数 J = Sum (x#Qx + u#Ru) <pre> を最小にする、状態フィードバック則 u = -Fx のフィードバックゲイン行列 F を返します。
static List<Matrix> dlqr(Matrix A, Matrix B, Matrix Q, Matrix R, Matrix S)
          評価関数が J = Sum (x#Qx + u#Ru + 2 x#Su) dt となるよう、入力uと状態xの積の重み行列を Sとします。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Dlqr

public Dlqr()
メソッドの詳細

dlqr

public static List<Matrix> dlqr(Matrix A,
                                Matrix B,
                                Matrix Q,
                                Matrix R)
離散時間線形システム
 x[n + 1] = Ax[n] + Bu[n] 
について、二次形式評価関数
 J = Sum (x#Qx + u#Ru)  <pre> を最小にする、状態フィードバック則  u = -Fx  のフィードバックゲイン行列  F を返します。
 
 

また、リカッティ方程式 <pre> P - A#PA + A#PB(R + B#PB)˜BP#A - Q = 0 </pre> の解 P を返します。

パラメータ:
A - A行列
B - B行列
Q - Q行列
R - R行列
戻り値:
{F, P} linear quadratic regulator

dlqr

public static List<Matrix> dlqr(Matrix A,
                                Matrix B,
                                Matrix Q,
                                Matrix R,
                                Matrix S)
評価関数が
 J = Sum (x#Qx + u#Ru + 2 x#Su) dt 
となるよう、入力uと状態xの積の重み行列を Sとします。

パラメータ:
A - A行列
B - B行列
Q - Q行列
R - R行列
S - S行列
戻り値:
{F, P} linear quadratic regulator