GAで整数の最適化問題を解く方法について

2 vues (au cours des 30 derniers jours)
Keisuke Takashima
Keisuke Takashima le 4 Fév 2019
Global Optimization Toolboxの遺伝的アルゴリズムgaを用いて,添付致しました二重振り子モデルの入力トルクの総和の最小化をしたいと思っています.
GAで二重振り子の入力トルク最小化の方法 をベースに,入力エネルギーは定数で,入力エネルギーの振り分け先を決める整数変数swを最適化変数として目的関数を最小化したく思っております.
添付したファイルを実行すると、
次元のサイズ不一致エラー 2:1 が必要ですが実際のサイズは 0 です。 Error in 'planning2018a/MATLAB Function' (line 4) y=cs(2,col);
のエラーが発生し困っています.
simulink上のt,swをscope blockで見てみるとt,swの定義はできているようなのですが、、、
どなたか対処法をご教授頂けますと幸いです.よろしくお願い致します.

Réponse acceptée

Tohru Kikawada
Tohru Kikawada le 5 Fév 2019
Modifié(e) : Tohru Kikawada le 5 Fév 2019
下記の記述がありますが、currentTimeは可変ステップの場合、tで定義されていない値をとりえます。その際、インデックス colemptyになるのが問題のようです。
修正前:
col=cs(1,:)==currentTime;
修正後:
ind = find(cs(1,:)>=currentTime);
col = ind(1);
また、cs作成時のベクトルの並びも間違っているようです。Digital Clockブロックも連続系で使えるClockブロックに置き換えたほうが良いかと思います。

Plus de réponses (0)

Catégories

En savoir plus sur 言語の基礎 dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!