資源簡介
用于求解凸優化問題,是一種迭代收斂算法,將問題轉化為凸問題后都可以用橢球法
代碼片段和文件信息
%橢球法法程序求解有約束問題最優解
?x0=[4;-1];
?A0=[360;09];
?x1=x0(11);x2=x0(21);
?maxk=5000;
?epsilon=1e-7;
?k=0;
?while?(k ???if(2*x1-x2-6>=0&&-2*x1-x2+10>=0&&-3*x1+x2+15>=0&&3*x1+x2-9>=0)
??????gk=[2*(x1-5*x2+4)+28*(7*x1+11*x2-18)^3;-10*(x1-5*x2+4)+44*(7*x1+11*x2-18)^3];
???????gk1=gk/sqrt(gk‘*A0*gk);
?????gammak=sqrt(gk‘*A0*gk);
?????if(gammak ?????????break;?
?????end
?????x0=x0-A0*gk1/3;
?????A0=4/3*(A0-2/3*A0*gk1*gk1‘*A0);
???else
?????cj=min([2*
評論
共有 條評論