首页 > 编程知识 正文

fmincon函数原理,用matlab求解非线性规划模型

时间:2023-05-06 06:42:52 阅读:37473 作者:3074

Matlab求解非线性规划。 总结fmincon函数的用法1 .概述在Matlab中,fmincon函数可以求解约束非线性多元函数(constrainednonlinearmultivariablefunction )的最小值,可以求解非线性规划问题

在matlab中,非线性规划模型的写法如下

2 .基本语法[x,fval]=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options)

的返回值是确定向量x的可取值,而fval的返回值是目标函数f(x )的可取值

fun是m文件中所定义的函数f(x ),表示线性目标函数(非)

x0是x的初始值

a,b,Aeq,beq定义线性约束,如果没有线性约束,则A=[],b=[],Aeq=[],beq=[]

lb和ub是变量x的下界和上界,如果下界和上界没有限制,则lb=[]、ub=[],lb的各成分都可以写为-inf,ub的各成分都可以写为inf

nonlcon是在m文件中定义的非线性向量函数约束

options定义了优化参数,并指示使用Matlab的默认参数设置

3 .实例,求以下非线性规划。

(1)创建m函数fun1.m定义目标函数:

功能f=fun1(x; f=x(1).^2x )2).^2x )3).^2 8; (2)制作m函数fun2.m定义非线性约束条件:

function [g,h]=fun2(x ); g=[-x(1).^2x )2)-x )3).^2x (1) x )2).^ 2x )3).^3-20]; h=[-x(1)-x )2).^22x )2*x )3).^2-3]; (3)编制主程序函数

[x,y]=fmincon('fun1',rand )、[ ]、[ ]、[ ]、[ ]、zeros ) 3,1 )、[ ]、' fun2) )的结果如下:

转载于:https://www.cn blogs.com/good two/p/11146540.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。