コンテンツにスキップ
eGPU Lab.
eGPU Lab.
  • ホーム
  • プライバシーポリシー
  • 非公開・備忘録
    • LoRAに学習させる
  • ホーム
  • プライバシーポリシー
  • 非公開・備忘録
    • LoRAに学習させる
クローズ

検索

数学・物理竿燈シミュレータ

制御とは(3) ~Adaptive制御~

2026年10月9日
0

PIDやLQRは、一度パラメータを決めると、その設定で動き続けるのが基本。しかし実際の竿燈は、継竹、風、支え位置、竹の硬さなどによって動き方が変わる。Adaptive(適応)制御は、その変化を観測し、モデルや制御パラメータを運転中に調整する手法だ。

α = a θ + b u

ここで a は「傾きがどれだけ倒れる方向へ効くか」、b は「操作がどれだけ効くか」を表す係数とする。しかし実機では a, b が正確には分からない、または途中で変わることもある。つまり「本当の係数がわからない」と考える。
推定モデルは、

キャレットのついた â, b̂ は、コンピュータが現在推定している値。
そこで、予測と実測の差から係数を修正する。

 

予測誤差 ε が大きければ、「モデルの係数が現実と合っていない」と判断する。そこで少しずつ係数を更新していく。

 

η(イータ)は学習の速さ。大きすぎると推定値が暴れやすく、小さすぎると変化についていけない。機械学習の learning rate に似た役割なのだが説明は割愛。

ここで、Pythonで「適応」の考え方をどう書いているか。

# 説明用の簡略例。実用のAdaptive制御そのものではない。
a_hat = 8.0      # a の推定値
b_hat = 1.0      # b の推定値
eta_a = 0.02
eta_b = 0.002def update_model(theta, omega, u, omega_next, dt):
global a_hat, b_hat# 現在のモデルから次の角速度を予測
omega_pred = omega + dt * (a_hat * theta + b_hat * u)# 実測との差
eps = omega_next – omega_pred

# 誤差が減る方向へモデル係数を少し更新
a_hat += eta_a * eps * theta * dt
b_hat += eta_b * eps * u * dt

return eps, a_hat, b_hat

実際のAdaptive制御にはMRAC(モデル規範型適応制御)、Self-Tuning Regulator、ゲインスケジューリングなど複数の考え方があるが、上のコードは「観測結果からモデルを変える」という考え方を見せる簡略例だ。

PID、LQR、Adaptive制御を比較すると、

観点

PID LQR

Adaptive

何を見るか 主に誤差 状態ベクトル全体 状態+対象の変化
モデル なくても使いやすい 必要 不確かでも推定・調整する
調整するもの Kp, Ki, Kd Q, R → K モデル係数や制御ゲイン
得意 単純・実用的・調整しやすい 多変数をまとめて最適化 特性変化への追従
注意すべき点 ゲイン調整、積分飽和、ノイズ モデル誤差、状態観測 安定性、推定暴走、調整速度
竿燈で言うと 傾いたら戻す 傾き+速度+振動を見て最適化 竿の長さや風の変化に合わせて自分を調整

同じ「戻す」(制御)でも考え方が違うのだ。
PID:誤差 e を使って、u = Kp e + Ki ∫e dt + Kd de/dt
LQR:状態 x を使って、dx/dt = Ax + Bu。評価関数 J を最小にし、u = −Kx
Adaptive:観測結果からモデルやゲインを更新しながら、u を計算
PIDは誤差中心、LQRは状態モデル中心、Adaptiveは「対象が変わる」ことまで制御問題に含めると整理すると分かりやすいかも。

 

投稿者

リタイア爺

フォロー
関連記事
前

雑感 ネット上の脅威

次へ

制御とは(4) ~Pythonで3方式を比較~

コメントはまだありません。最初のコメントを投稿しましょう。

コメントを残す コメントをキャンセル

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

2026年10月
日 月 火 水 木 金 土
 123
45678910
11121314151617
18192021222324
25262728293031
« 9月    

最近の投稿

  • 制御とは(4) ~Pythonで3方式を比較~ 2026年10月9日
  • 制御とは(3) ~Adaptive制御~ 2026年10月9日
  • 雑感 ネット上の脅威 2026年10月8日
  • 雑感 最近の情報漏洩事件 2026年10月6日
  • 制御とは(2) ~LQR制御~ 2026年10月6日

カテゴリー

  • AIシミュレータ (14)
  • eGPU (22)
  • LLM (12)
  • セキュリティ (1)
  • 数学・物理 (8)
  • 昔話 (6)
  • 竿燈シミュレータ (13)
  • 雑感 (4)

最近のコメント

  • 雑感 ネット上の脅威 に リタイア爺 より
  • 雑感 最近の情報漏洩事件 に リタイア爺 より
  • 雑感 最近の情報漏洩事件 に 通りすがり より

アーカイブ

  • 2026年10月
  • 2026年9月
  • 2026年8月
にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村

非公開・備忘録

  • プライバシーポリシー
  • 非公開・備忘録
    • LoRAに学習させる

TOP

https://www.wildflow.tech/blog/