收藏 分享(赏)

共轭梯度法求极小值.doc

上传人:11xg27ws 文档编号:6885653 上传时间:2019-04-25 格式:DOC 页数:4 大小:59.50KB
下载 相关 举报
共轭梯度法求极小值.doc_第1页
第1页 / 共4页
共轭梯度法求极小值.doc_第2页
第2页 / 共4页
共轭梯度法求极小值.doc_第3页
第3页 / 共4页
共轭梯度法求极小值.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、1应用共轭梯度法求解方程组 的根。初始值124x(0),Tx分析:将方程组 转化为优化问题中的极值问题然后应用共轭梯度法进行求解。Ab令 ,只需求得 ,使得 取得最小值。则有:()Rxx()Rxmin2in()RminT()()()2TTTTTTbXAxbAxbXx这 是 一 个 数与 比较1()TfxGc则有: ,()2TAgxAb回到题目问题中,则对应有 124012,4xgb也就是应用共轭梯度法求点使 取得最小值。112() 0fx程序清单:#include #includedouble a,b,s2; /*全局变量*/double E=1e-6;double F(double x1,d

2、ouble x2)double y;y=2*x1*x1+2*x2*x2-12*x1-4*x2+20;return(y);void qujian(double x1,double x2) /*用前进后退法求a的探索区间*/double a0=0,h=1,a1,a2,f1,f2,X1,X2,X3,X4;a1=a0;a2=a0+h;X1=x1+a1*s0;X2=x2+a1*s1;f1=F(X1,X2);X3=x1+a2*s0;X4=x2+a2*s1;f2=F(X3,X4);if (f1f2)2while(1)h=h*2;a2=a2+h;f1=f2;X3=x1+a2*s0;X4=x2+a2*s1;f2

3、=F(X3,X4);if (f1f2) a1=a2-h;elsea=a1;b=a2;break;elseh=-h/4;while(1)a1=a1+h;f2=f1;X1=x1+a1*s0;X2=x2+a1*s1;f1=F(X1,X2);if(f1f2) a2=a1-h;h=2*h;elsea=a1;b=a2;break;double MIN(double x1,double x2) /*二次插值法求a的最小值*/double x01,x02,x03,x0,xmin;double f1,f2,f3,f;double X1,X2,X3,X4,X5,X6,X7,X8;double h=(b-a)/2;

4、double k1,k2;x01=a;x02=a+h;x03=b;X1=x1+x01*s0;X2=x2+x01*s1;X3=x1+x02*s0;X4=x2+x02*s1;X5=x1+x03*s0;X6=x2+x03*s1;f1=F(X1,X2);f2=F(X3,X4);f3=F(X5,X6);while (1)k1=(f3-f1)/(x03-x01);k2=(f2-f1)/(x02-x01)-k1)/(x02-x03);x0=(x01+x03-k1/k2)/2;X7=x1+x0*s0;X8=x2+x0*s1;f=F(X7,X8);if(fabs(x0-x02)=E)3xmin=x0;break

5、;else if(x02x0)if(f2f)x03=x0;f3=f;else x01=x02;f1=f2;x02=x0;f2=f;elseif(f2f)x01=x0;f1=f;elsex03=x02;f3=f2;x02=x0;f2=f;return(xmin);void main()double g3,m1,m2,b;int n=2,k=0;double x1=0,x2=0; /*起始点*/g1=4*x1-12;g2=4*x2-4;m1=g1*g1+g2*g2;s0=-g1;s1=-g2;while(1)qujian(x1,x2);a=MIN(x1,x2); /*求a的探索区间*/x1=x1+a*s0;x2=x2+a*s1;g1=4*x1-12;m2=g1*g1+g2*g2;if(sqrt(g1*g1+g2*g2)=E)break;if(k+1=n)g1=4*x1-12;g2=4*x2-4;s0=-g1;s1=-g2;else b=m2/m1;s0=-g1+b*s0;s1=-g2+b*s1;k=k+1;printf(“最优解:n X1=%fn X2=%fn“,x1,x2);运行结果:最优解:X1=3.0000004X2=1.000000

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报