没有合适的资源?快使用搜索试试~ 我知道了~
BFGS算法程序代码
5星 · 超过95%的资源 需积分: 48 91 下载量 132 浏览量
2010-09-05
16:59:47
上传
评论
收藏 9KB TXT 举报
温馨提示
试读
11页
这个是好不容易从别人那里找到的,可以和大家一起分享下
资源推荐
资源详情
资源评论
/*
* BFGS.c
*
* Created on: 2009-6-4
* Author: Administrator
*/
//××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
//××××××××××××××××××××××××××××BFGS算法C程序×××××××××××××××××××××××××××××××
//××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
//×××××××××××本程序适用于2设计变量的函数优化问题,对于不同的设计变量×××××××××
//***********个数可以改变维数,对于DFP算法只需修改校正矩阵即可。对于××××××××××
//×××××××××××BFGS算法的C++程序与之类似。 ××××××××
//*×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
//××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
//************************************************************************
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<conio.h>
#define tt 0.01 //-------------------一维搜索初始步长---------------------------
#define ff 1.0e-6 //-------------------差分法求梯度时的步长-----------------------
#define ac 1.0e-6 //-------------------终止迭代梯度模收敛精度---------------------
#define ad 1.0e-6 //-------------------一维搜索收敛精度---------------------------
#define ax 1.0e-6 //-------------------终止迭代点距收敛精度-----------------------
#define n 2 //-------------------设计变量的维数-----------------------------
* BFGS.c
*
* Created on: 2009-6-4
* Author: Administrator
*/
//××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
//××××××××××××××××××××××××××××BFGS算法C程序×××××××××××××××××××××××××××××××
//××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
//×××××××××××本程序适用于2设计变量的函数优化问题,对于不同的设计变量×××××××××
//***********个数可以改变维数,对于DFP算法只需修改校正矩阵即可。对于××××××××××
//×××××××××××BFGS算法的C++程序与之类似。 ××××××××
//*×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
//××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
//************************************************************************
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<conio.h>
#define tt 0.01 //-------------------一维搜索初始步长---------------------------
#define ff 1.0e-6 //-------------------差分法求梯度时的步长-----------------------
#define ac 1.0e-6 //-------------------终止迭代梯度模收敛精度---------------------
#define ad 1.0e-6 //-------------------一维搜索收敛精度---------------------------
#define ax 1.0e-6 //-------------------终止迭代点距收敛精度-----------------------
#define n 2 //-------------------设计变量的维数-----------------------------
double ia;
/*FILE *fp;*/
//=================================输入目标函数表达式========================================
double fny(double *x)
{
double x1=x[0],x2=x[1];
double f;
f=x1*x1+2*x2*x2-4*x1-2*x1*x2;
return f;
}
//==========================================================================================
//==================================迭代更新最优点===========================================
double * iterate(double *x,double a,double *s)
{
double *x1;
int i;
x1=(double *)malloc(n*sizeof(double));
for(i=0;i<n;i++)
x1[i]=x[i]+a*s[i];
return x1;
}
//==========================================================================================
//===================================计算更新后节点函数值====================================
/*FILE *fp;*/
//=================================输入目标函数表达式========================================
double fny(double *x)
{
double x1=x[0],x2=x[1];
double f;
f=x1*x1+2*x2*x2-4*x1-2*x1*x2;
return f;
}
//==========================================================================================
//==================================迭代更新最优点===========================================
double * iterate(double *x,double a,double *s)
{
double *x1;
int i;
x1=(double *)malloc(n*sizeof(double));
for(i=0;i<n;i++)
x1[i]=x[i]+a*s[i];
return x1;
}
//==========================================================================================
//===================================计算更新后节点函数值====================================
剩余10页未读,继续阅读
资源评论
- ydq_luna2013-04-16好资料,谢谢楼主分享,正要用的
- seekts2013-07-23还行,比较简单的程序,可以看看思路
- haha1223452014-10-27还行吧,渐渐一下
- jimmy-11122016-12-23正在学习当中,感谢分享!
liuyuzhen_smile
- 粉丝: 5
- 资源: 9
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功