%目的:找到最好的A極小化我的objective function
%objective function 自訂函數的m檔
function f=squaredsum(x,A)
sum=0;
temp=(x-A*A');
for i=1:73
for j=i+1:73
sum=sum+temp(i,j)^2;
end
end
f=sum;
%constraint 我限制式想表達的是A的每個列向量長度都小於等於1
function [c ceq]=constraint(A)
q=size(A);
for i=1:q(1)
sum=0;
for j=1:q(2)
sum=sum+A(i,j)^2;
end
c(i,1)=sqrt(sum)-1;
end
for i=1 : q(1)
ceq(i,1)=0;
end
end
%看到板上的文章好像沒有關於global search的 希望有強者可以幫忙
%下面是打在COMMAND WINDOW的程式碼
%初值我是設都是0.5
problem = createOptimProblem('fmincon','objective', @(A) squaredsum(correlation,A),'nonlcon',@constraint,'x0',A0,'options',opts);
gs=GlobalSearch
run(gs,problem)
%這個程式事實上是跑得動的 但跑出的結果全部都是0
%不知道哪邊錯了 還請大家多多幫忙
%感激不盡
Be the first to comment
You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.