运筹学牛顿法c语言源代码,运筹学与MATlab编程.doc

一、 MATLAB中的优工具箱

利用Matlab的优化工具箱,可以求解线性规划、非线性规划和多目标规划问题。具体而言,包括线性、非线性最小化,最大最小化,二次规划,半无限问题,线性、非线性方程(组)的求解,线性、非线性的最小二乘问题。另外,该工具箱还提供了线性、非线性最小化,方程求解,曲线拟合,二次规划等问题中大型课题的求解方法,为优化方法在工程中的实际应用提供了更方便快捷的途径。

1.1 优化工具箱中的函数

优化工具箱中的函数包括下面几类:

表1-1 最小化函数表

函 数描 述fgoalattain多目标达到问题fminbnd有边界的标量非线性最小化fmincon有约束的非线性最小化fminimax最大最小化fminsearch, fminunc无约束非线性最小化fseminf半无限问题linprog线性课题quadprog二次课题

表1-2 方程求解函数表

函 数描 述\线性方程求解fsolve非线性方程求解fzero标量非线性方程求解

表1-3 最小二乘函数表

函 数描 述\线性最小二乘lsqlin有约束线性最小二乘lsqcurvefit非线性曲线拟合lsqnonlin非线性最小二乘lsqnonneg非负线性最小二乘

表9-4 实用函数表

函 数描 述optimset设置参数optimget?

表9-5 大型方法的演示函数表

函 数描 述circustent马戏团帐篷问题—二次课题molecule用无约束非线性最小化进行分子组成求解optdeblur用有边界线性最小二乘法进行图形处理

表9-6 中型方法的演示函数表

函 数描 述bandemo香蕉函数的最小化dfildemo过滤器设计的有限精度goaldemo目标达到举例optdemo演示过程菜单tutdemo教程演示?

使用优化工具箱时,由于优化函数要求目标函数和约束条件满足一定的格式,所以需要用户在进行模型输入时注意以下几个问题:1.目标函数最小化

优化函数fminbnd、fminsearch、fminunc、fmincon、fgoalattain、fminmax和lsqnonlin都要求目标函数最小化,如果优化问题要求目标函数最大化,可以通过使该目标函数的负值最小化即-f(x)最小化来实现。近似地,对于quadprog函数提供-H和-f,对于linprog函数提供-f。

2.约束非正

优化工具箱要求非线性不等式约束的形式为Ci(x)≤0,通过对不等式取负可以达到使大于零的约束形式变为小于零的不等式约束形式的目的,如Ci(x)≥0形式的约束等价于- Ci(x)≤0;Ci(x)≥b形式的约束等价于- Ci(x)+b≤0。

3.避免使用全局变量.2 相关函数的介绍

1.2.1 fminbnd函数

功能:找到固定区间内单变量函数的最小值。

x = fminbnd(fun,x1,x2)

x = fminbnd(fun,x1,x2,options)

x = fminbnd(fun,x1,x2,options,P1,P2,...)

[x,fval] = fminbnd(...)

[x,fval,exitflag] = fminbnd(...)

[x,fval,exitflag,output] = fminbnd(...)

描述:

fminbnd求取固定区间内单变量函数的最小值。

x = fminbnd(fun,x1,x2)返回区间{x1,x2}上fun参数描述的标量函数的最小值x。

x = fminbnd(fun,x1,x2,options)用options参数指定的优化参数进行最小化。

x = fminbnd(fun,x1,x2,options,P1,P2,...)提供另外的参数P1,P2等,传输给目标函数fun。如果没有设置options选项,则令options=[]。

[x,fval] = fminbnd(...)返回解x处目标函数的值。

[x,fval,exitflag] = fminbnd(...)返回exitflag值描述fminbnd函数的退出条件。

[x,fval,exitflag,output] = fminbnd(...)返回包含优化信息的结构输出。

变量:

函数的输入变量在表9-7中进行描述,输出变量在表9-8中描述。与fminbnd函数相关的细节内容包含在fun,options,exitflag和output等参数中,如表9-10所示。

参 数描

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值