我有一個函數可以在matlab中優化f,函數依賴於我想要的變量x =(x(1),x(2))優化和兩個不需要優化的參數n和c。換句話說,我有一個n和c值的矩陣,我想爲每個n和c找到最優的x值。 這裏是我的代碼:通過函數句柄傳遞附加參數在Matlab中進行優化
clear all;
clc;
close all;
[email protected](x,n,c)n*x(1)+(x(2)+3*c)/(x(1)+c);
for n=1:10
for c=1:20
x=zeros(length(n),length(c));
fun{n,c}[email protected](x)f(x,n,c);
options=optimset('Algorithm','interior-point')
x(n,c)=fmincon(fun{n,c},[0;0],[1 0;-1 0;0 1;0 -1],[40;0;40;0],[],[],[],[],[],options);
end
end
??? Subscripted assignment dimension mismatch.
Error in ==> forloop2 at 10
x(n,c)=fmincon(fun{n,c},[0;0],[1 0;-1 0;0 1;0
-1],[40;0;40;0],[],[],[],[],[],options);
Any helps? Thank you so much!