1 最优化方法源程序 一、线性规划问题 例 解线性规划函数 linprog () 线性规划规划矩阵形式: xczTmin UBxLBBABAxtseqeq. 格式为: x = linprog (c,A,B,Aeq,Beq,LB,UB) 例 解线性规划 0,120062200500.200100max212112121xxxxxxxtsxxz 即 21)200,100('minxxz [],001200622005000111.2121LULBxxxxts %线性规划求解 clear; c=[-100,-200]'; A=[1,1;1,0]; B=[500,200]'; Aeq=[2,6]; Beq=1200; LB=[0,0]';UB=[]; [x ,fv al,ex itflag,ou tpu t]=linprog(c,A,B,Aeq,Beq,LB,UB) 执行结果: 2 Optimization terminated. x = 200.0000 133.3333 fval = -4.6667e+004 exitflag = 1 output = iterations: 4 algorithm: 'large-scale: interior point' cgiterations: 0 message: 'Optimization terminated.' 二、无约束一元非线性规划问题 例 1 0 .6 1 8 法 function [s,phis,k,G,E]=golds(phi,a,b,delta,epsilon) %功能: 0.618 法精确线搜索 %输入: phi 是目标函数, a, b 是搜索区间的两个端点 % delta, epsilon 分别是自变量和函数值的容许误差 %输出: s, phis 分别是近似极小点和极小值, G 是 nx4 矩阵, % 其第 k 行分别是 a,p,q,b 的第 k 次迭代值[ak,pk,qk,bk], % E=[ds,dphi], 分别是 s 和 phis 的误差限. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% t=(sqrt(5)-1)/2; h=b-a; phia=feval(phi,a); phib=feval(phi,b); p=a+(1-t)*h; q=a+t*h; phip=feval(phi,p); phiq=feval(phi,q); k=1; G(k,:)=[a, p, q, b]; while(abs(phib-phia)>epsilon)|(h>delta) if(phip
> [s,phis,k,G,E]=golds(inline('2*x^2-x-1'),-1,1,0.16,3) s = 0.236067977499790 phis = -1.1246117...