matlab数学建模第六章

目录

 

Chapter6

6.1数学模型规划的概念

6.2线性规划

6.2.1线性规划标准形式

6.2.2线性规划求解方法

6.3 非线性规划

6.3.1 非线性规划的标准形式

 6.3.2 二次规划

6.3.3 无约束规划

6.3.4 有约束规划


Chapter6


6.1数学模型规划的概念


        在建模过程中,常常要求决策确定一些可控制量的值,使得相关的量达到最佳,即优化问题,需要建立规划模型求解。


6.2线性规划


6.2.1线性规划标准形式

        线性规划主要用于研究有限资源的最佳分配问题


6.2.2线性规划求解方法

求解线性规划基本方法是单纯形法。但为了提高求解速率,又有改进的单纯形法、对偶单纯形法、原始对偶单纯形法、分解算法等。

(1)单纯形线性方程

        单纯形法是从所有基本可行解的一个较小部分中通过迭代过程选出最优解。

        matlab采用投影法求解,该方法为单纯形法的变种。linprog

clear all
clc
f = [-5; -4; -6];                    %目标函数的系数
A =  [1  -1  1
      3  2   4
      3  2   0]; 
%限制条件左侧
b = [20; 42; 30];  
%限制条件右侧
lb=[0;0;0];                       %各变量的下限
ub = [inf;inf;inf];                  %各变量的上限
[x,fval] = linprog(f,A,b,[ ],[ ],lb,[ ]);   %求解运算
x
fval                              %输出exitflag=1的话表示过程正常收敛于解x处

(2)多目标线性规划

        由于多个目标之间的矛盾性和不可公度性,要求所有目标达到最优解不显示,因此多目标线性规划只是求其有效解

①理想点法

        先求出某个目标的最优值,然后寻找距离目标最接近的最优值的作为近似值。

②线性加权和法

        对于重要的指标给予较大的权系数。

clear all
clc
f=[-0.5;-2.5];
A=[2,3;2,1]; 
b=[18;10]; 
lb=[0;0];
x=linprog(f,A,b,[],[],lb)

③最大最小法

clear all
clc
x0=[1;1];
A=[2,3;2,1];
b=[18;10];
lb=zeros(2,1);
[x,fval]=fminimax('ex1019',x0,A,b,[],[],lb,[])

6.3 非线性规划


        即目标函数约束条件中至少有一个是非线性函数的规划问题。


6.3.1 非线性规划的标准形式

        首选考虑线性规划,如果线性误差较大,则采用非线性规划。


 6.3.2 二次规划

        目标函数为自变量的二次函数,约束条件全是线性函数。沃尔沃法quadprog函数

 例题:

clear all
clc
H=[1 -1;-1 2];
f=[-2;-6];
A=[1 1;-1 2;2 1];b=[2;2;3];
lb=zeros(2,1);
[x,fval,exitflag]=quadprog(H,f,A,b,[],[],lb)

6.3.3 无约束规划

        直接搜索法梯度法

        直接搜索法适用于目标函数高度非线性,没有导数或者导数很难计算的情况。在导数可以求解的情况下,梯度法是一种更优的方法,可以获得更快的收敛速度。

fminbad函数

fminsearch函数

fminunc函数

对于优化参数options,用户可以使用optimist函数设置或改变参数设置的值

clear all
clc
[x,y_min]=fminbnd('sin(2*x)',0,2*pi)
clear all
clc
f='3*x(1)^3+3*x(1)*x(2)^3-7*x(1)*x(2)+2*x(2)^2';
x0=[0,0];
function f = myfun(x)
f = 3*x(1)^2 + 2*x(1)*x(2) + x(2)^2;


x0 = [1,1];
[x,fval] = fminunc(@myfun,x0);
%调用函数,求[1,1]附近f(x)函数的最小值
clear all
clc
x0=[-1.2,1];
[x,fval]=fminunc('100*(x(2)-x(1)^2)^2+(1-x(1))^2',x0)

6.3.4 有约束规划

        在有约束规划过程中,通常要将问题转化为子问题,子问题可以求解并作为迭代过程的基础。基于K-T方程进行求解,直接计算拉格朗日乘子,并用拟牛顿法更新方程。

        序列二次法,每次主要的迭代过程都需要求解一次二次规划子问题。

fmincon函数:求解fun函数的最小值。

nonlcon参数: 计算非线性不等式约束c(x)<0和非线性约束等式ceq(x)=0。该参数为一个包含函数名的字符串。

clear all
clc
x0=[2 25 20]';
lb=[1 4.5 10]';
ub=[4 50 30]';
[x,fval,exitflag]=fmincon(@ex10_6a,x0,[],[],[],[],lb,ub,@ex10_6b)
clear all
clc 
x0=[10;10;10];
A=[-1 -2 -2;1 2 2];
b=[0;72];
[x,fval]=fmincon('-x(1)*x(2)*x(3)',x0,A,b)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
完整全套资源下载地址:https://download.csdn.net/download/qq_27595745/66679443 【完整课程列表】 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第10章_世界本复杂,如何做得最好(共39页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第1章_如何用数学解决实际问题(共13页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第2章_飞机如何定价(共27页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第3章_收敛与混沌(共28页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第4章_种群数量的状态转移(共48页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第5章_水塔用水量的估计_插值(共51页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第6章_曲线拟合(共51页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第7章_怎样让医院的服务工作做得好(共28页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第8章_计算机模拟(共31页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第9章_在简约的世界里使收益最大(共41页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 附录 MATLAB软件简介(共72页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 绘制图形 函数作图_参考(共39页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 数学实验一_补充内容MATLAB常用命令(共13页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 优化问题求解_参考(共70页).ppt
完整全套资源下载地址:https://download.csdn.net/download/qq_27595745/66679443 【完整课程列表】 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第10章_世界本复杂,如何做得最好(共39页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第1章_如何用数学解决实际问题(共13页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第2章_飞机如何定价(共27页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第3章_收敛与混沌(共28页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第4章_种群数量的状态转移(共48页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第5章_水塔用水量的估计_插值(共51页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第6章_曲线拟合(共51页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第7章_怎样让医院的服务工作做得好(共28页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第8章_计算机模拟(共31页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 第9章_在简约的世界里使收益最大(共41页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 附录 MATLAB软件简介(共72页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 绘制图形 函数作图_参考(共39页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 数学实验一_补充内容MATLAB常用命令(共13页).ppt 推荐优质教程 MATLAB数学建模与数学实验 用数学建模解决实际问题 优化问题求解_参考(共70页).ppt

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值