matlabのプログラムについてなのですが,まず目的としてはfminconを用いて最適化問題を解きd(k)=(a(k),b(k))を求めることです.
そこで,以下のようなプログラムを考えたのですが動きません.改善点のご教授お願いいたします.
d_0 = [0 0]';
for k= 1:500
syms a b;
x(:,1) = x_0;
x_a = expm(A2*a*Ts)*x(:,k)-A2\(eye(2)-expm(A2*a*Ts))*B*v_s;
x_b = expm(A1*(b-a)*Ts)*x_a-A1\(eye(2)-expm(A1*(b-a)*Ts))*B*v_s;
x(:,k+1) = expm(A2*(1-b)*Ts)*x_b-A2\(eye(2)-expm(A2*(1-b)*Ts))*B*v_s;
v(k) = [0 1]*x(:,k);
fun = @(a,b) abs(v(k)-v_ref(k));
lb = [0 0];
ub = [1 1];
s = [1 -1];
d(:,k) = fmincon(fun,d_0,s,0,[],[],lb,ub);
end
matlabについて
Re: matlabについて
ここにはMatrixに詳しい人がおられますがMATLABを使うよりUnityEngineとかを使うことが多いのでMATLABのforumhttps://jp.mathworks.com/matlabcentral/ ... read/55767に質問されたほうがいいと思います。(過去ログにもないので)