




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
作业二用DFP算法求解,取,。 一、求解: 求迭代点x1 令,得的极小值点, 所以得: 于是,由DFP修正公式有 下一个搜索方向为 求迭代点x2 令,得的极小值点 于是得:,所以:, 因Hesse阵为正定阵,为严格凸函数,所以为整体 极小点。 二、DFP算法迭代步骤如下: (1)给定初始点,初始矩阵(通常取单位阵),计算,令k=0,给定控制误差。 (2)令。 (3)由精确一维搜索确定步长, (4)令。 (5)若,则停; 否则令,。 (6)由DFP修正公式得。令k=k+1,转步骤(2) DFP算法matlab程序实现 function[best_x,best_fx,count]=DFP(x0,ess) symsx1x2t; f=x1*x1+2*x2*x2-2*x1*x2-4*x1; fx=diff(f,x1);%求表达式f对x1的一阶求导 fy=diff(f,x2);%求表达式f对x2的一阶求导 fi=[fxfy];%构造函数f的梯度函数 %初始点的梯度和函数值 g0=subs(fi,[x1x2],x0); f0=subs(f,[x1x2],x0); H0=eye(2); %输出x0,f0,g0 x0 f0 g0 xk=x0; fk=f0; gk=g0; Hk=H0; k=1; while(norm(gk)>ess)%迭代终止条件||gk||<=ess disp('************************************************************') disp(['第'num2str(k)'次寻优']) %确定搜索方向 pk=-Hk*gk'; %由步长找到下一点x(k+1) xk=xk+t*pk'; f_t=subs(f,[x1x2],xk);%构造一元搜索的一元函数φ(t) %由一维搜索找到最优步长 df_t=diff(f_t,t); tk=solve(df_t); iftk~=0 tk=double(tk); else break; end %计算下一点的函数值和梯度 xk=subs(xk,t,tk) fk=subs(f,[x1x2],xk) gk0=gk; gk=subs(fi,[x1x2],xk) %DPF校正公式,找到修正矩阵 yk=gk-gk0; sk=tk*pk'; Hk=Hk-(Hk*yk'*yk*Hk)/(yk*Hk*yk')+sk'*sk/(yk*sk')%修正公式 k=k+1; end disp('结果如下:') best_x=xk;%最优点 best_fx=fk;%最优值 count=k-1; 程序执行结果 在命令窗口输入以下命令: >>x0=[11]; ess=1e-6; [best_x,best_fx,count]=DFP(x0,ess) 程序运行结果: x0= 11 f0= -3 g0= -42 ************************************************************ 第1次寻优 xk= 2.00000.5000 fk= -5.5000 gk= -1-2 Hk= 0.84000.3800 0.38000.4100 ************************************************************ 第2次寻优 xk= 42 fk= -8 gk= 00 Hk= 1.00000.5000 0.50000.5000 结果如下: best_x= 42 best_fx= -8 count= 2 可以看到,最优点,迭代次数2次,与前面结果一致。

王子****青蛙
实名认证
内容提供者


最近下载
一种基于双轨缆道的牵引式雷达波在线测流系统.pdf
一种基于双轨缆道的牵引式雷达波在线测流系统.pdf
一种胃肠道超声检查助显剂及其制备方法.pdf
201651206021+莫武林+浅析在互联网时代下酒店的营销策略——以湛江民大喜来登酒店为例.doc
201651206021+莫武林+浅析在互联网时代下酒店的营销策略——以湛江民大喜来登酒店为例.doc
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf