优化设计无约束优化 min f(x)= +-2-4初选 x0=[1,1]程序:Step 1: Write an M-file objfun1.m.function f1=objfun1(x)f1=x(1)^2+2*x(2)^2-2*x(1)*x(2)-4*x(1);Step 2: Invoke one of the unconstrained optimization routinesx0=[1,1];>> options = optimset('LargeScale','off');>> [x,fval,exitflag,output] = fminunc(@objfun1,x0,options)运行结果:x = 4.0000 2.0000fval = -8.0000exitflag = 1output = iterations: 3 funcCount: 12 stepsize: 1 firstorderopt: 2.3842e-007 algorithm: 'medium-scale: Quasi-Newton line search' message: [1x85 char]非线性有约束优化1. Min f(x)=3++2-3+5Subject to: (x)=++180 (x)=5-3-250 (x)=13-41 (x)=14 (x)=2初选 x0=[10,10]Step 1: Write an M-file objfun2.mfunction f2=objfun2(x)f2=3*x(1)^2+x(2)^2+2*x(1)-3*x(2)+5;Step 2: Write an M-file confun1.m for the constraints.function [c,ceq]=confun1(x)% Nonlinear inequality constraintsc=[x(1)+x(2)+18; 5*x(1)-3*x(2)-25; 13*x(1)-41*x(2)^2; 14-x(1); x(1)-130; 2-x(2); x(2)-57];% Nonlinear inequality constraintsceq=[];Step 3: Invoke constrained optimization routinex0=[10,10]; % Make a starting guess at the solution>> options = optimset('LargeScale','off');>> [x, fval] = ... fmincon(@objfun2,x0,[],[],[],[],[],[],@confun1,options)运行结果:x = 3.6755 -7.0744fval = 124.14952. min f(x)= s.t. 初选x0=[1,1]Step 1: Write an M-file objfun3.mfunction f=objfun3(x)f=4*x(1)^2+5*x(2)^2Step 2: Write an M-file confun3.m for the constraints.function [c,ceq]=confun3(x)%Nonlinear inequality constraintsc=[2*x(1)+3*x(2)-6; -x(1)*x(2)-1];% Nonlinear equality constraintsceq[];Step 3: Invoke constrained optimization routinex0=[1,1];% Make a starting guess at the solution>> options = optimset('LargeScale','off');>> [x, fval] = ... fmincon(@objfun,x0,[],[],[],[],[],[],@confun,options)运行结果:Optimization terminated: no feasible solution found. Magnitude of search direction less than 2*options...