Matlab优化工具箱
更新时间:2023-10-01 13:21:01 阅读量: 综合文库 文档下载
Matlab优化工具箱 Matlab Optimization Toolbox
优化工具箱提供了一般和大型的非线性优化函数,同时还提供了线性规划,二次规划,非线性最小二乘以及非线性方程求解的工具。
? 主要特性:
– 无约束非线性极小化问题
– 约束性线性极小化、极大极小、多目标优化,半无穷极小化问题。
– 二次规划和线性规划问题
– 非线性最小二乘和边界曲线拟合问题 – 非线性系统方程求解问题 – 约束线性最小二乘问题 – 大型问题的特殊算法
一.最小化问题Minimization
0-1 规划 (binary integer programming problems)
x = bintprog(f) x = bintprog(f, A, b)
x = bintprog(f, A, b, Aeq, beq)
x = bintprog(f, A, b, Aeq, beq, x0) x = bintprog(f, A, b, Aeq, Beq, x0, options) [x, fval] = bintprog(...) [x,fval, exitflag] = bintprog(...) [x, fval, exitflag, output] = bintprog(...) 参数描述见help
f Vector containing the coefficients of the linear objective function
A Matrix containing the coefficients of the linear inequality constraints b Vector corresponding to the right-hand side of the linear inequality constraints
Aeq Matrix containing the coefficients of the linear equality constraints beq Vector containing the constants of the linear equality constraints x0 Initial point for the algorithm
options Options structure containing options for the algorithm.
Example1: f = [-9; -5; -6; -4];
A = [6 3 5 2; 0 0 1 1; -1 0 1 0; 0 -1 0 1]; b = [9; 1; 0; 0]; x = bintprog(f,A,b) Example2:
问题求解:min 3*x(1)-2*x(2)+5*x(3) s.t.
x(1)+2*x(2)-x(3)<=2 x(1)+4*x(2)+x(3)<=4 x(1)+x(2)<=3 4*x(2)+x(3)<=6 x(1),x(2),x(3)为0,1 f=[3,-2,5]’
A=[1 2 -1;1 4 1; 1 1 0; 0 4 1] b=[2 4 3 6]’
问题求解:min 3*x(1)-2*x(2)+5*x(3) s.t.
x(1)+2*x(2)-x(3) =2 x(1)+4*x(2)+x(3) =4
线性规划linear programming problem
x = linprog(f,A,b) %求min f ' *x sub.to
A?x?b线性规
划的最优解。
x = linprog(f,A,b,Aeq,beq) %等式约束Aeq?x?beq,若没有不等
式约束A?x?b,则A=[ ],b=[ ]。
x = linprog(f,A,b,Aeq,beq,lb,ub) %指定x的范围lb?x?ub,若
没有等式约束Aeq?x?beq ,则Aeq=[ ],beq=[ ]
x = linprog(f,A,b,Aeq,beq,lb,ub,x0) %设置初值x0
x = linprog(f,A,b,Aeq,beq,lb,ub,x0,options) % options为指定的优化参数
[x,fval] = linprog(…) % 返回目标函数最优值,即fval= f ' *x。 [x,lambda,exitflag] = linprog(…) % lambda为解x的Lagrange乘子。
[x, lambda,fval,exitflag] = linprog(…) % exitflag为终止迭代的错误条件。
[x,fval, lambda,exitflag,output] = linprog(…) % output为关于优化的一些信息
说明 若exitflag>0表示函数收敛于解x,exitflag=0表示超过函数估值或迭代的最大数字,exitflag<0表示函数不收敛于解x;
lambda=lower 表示下界lb,lambda=upper表示上界ub,
lambda=ineqlin表示不等式约束,lambda=eqlin表示等式约束,
lambda中的非0元素表示对应的约束是有效约束;
output=iterations表示迭代次数,output=algorithm表示
使用的运算规则,output=cgiterations表示PCG迭代次数。
例 求下面的优化问题 min
?5x1?4x2?6x3
sub.to
11x1?x2?x3?2023 3x?2x?4x?42 3x?2x?30
20?x1,0?x2,0?x3
解:
>>f = [-5; -4; -6];
>>A = [1 -1 1;3 2 4;3 2 0]; >>b = [20; 42; 30]; >>lb = zeros(3,1);
>>[x,fval,exitflag,output,lambda] = linprog(f,A,b,[],[],lb) 结果为:
x = %最优解 0.0000 15.0000 3.0000
fval = %最优值 -78.0000
exitflag = %收敛 1 output =
iterations: 6 %迭代次数 cgiterations: 0
algorithm: 'lipsol' %所使用规则 lambda =
ineqlin: [3x1 double] eqlin: [0x1 double] upper: [3x1 double] lower: [3x1 double] >> lambda.ineqlin ans =
0.0000 1.5000 0.5000
>> lambda.lower ans =
1.0000 0.0000 0.0000
表明:不等约束条件2和3以及第1个下界是有效的
正在阅读:
Matlab优化工具箱10-01
统计学本科考试B卷03-08
抗震简答题(含答案)09-14
电气工程与自动化专业和电气工程及其自动化专业有什么区别04-10
我不再孤单作文600字06-28
二维图形裁剪的课程设计10-18
人的因素考试题10-24
从此,我不再迷茫作文600字06-26
2016年输血知识考试试卷及答案B卷04-08
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 工具箱
- 优化
- Matlab
- 民族民间音乐试题一
- KJ78N系统说明书
- 上海金属材料公司注册流程
- 关于我市县域经济发展情况的调研报告
- 输电线路工程施工现场关键点作业安全管控措施
- 9月考题
- 成都信息工程工程导论2实验报告 - 图文
- 北师大初中信息技术八年级全册教案
- 实验四 集成电路模拟乘法器的应用
- 微生物实验
- 公考法律知识专题之刑法(四)
- 七年级历史上册练习题1
- 2019-2025年中国人造金刚石聚晶行业专项深度调研及发展规划指导可行性预测报告
- 数据结构仓库库存信息管理系统
- 教育最新K12甘肃省静宁县第一中学2017-2018学年高一数学下学期期末考试试题 文
- 职业规划与就业创业指导
- 《高级环境与资源经济学》复习资料2016(1)(1)
- 最新-社会主义核心价值观演讲稿爱国 精品
- 育新镇开展创建群众满意基层站所情况汇报
- 神经学导论期末考试