数学建模学习(1)——线性规划

目录

前言

引例

线性规划的 Matlab 标准形式

具体案例


前言

        在人们的生产实践中,经常会遇到如何利用现有资源来安排生产,以取得最大经济
效益的问题。此类问题构成了运筹学的一个重要分支—数学规划,而线性规划(Linear
Programming 简记 LP)则是数学规划的一个重要分支。自从 1947 年 G. B. Dantzig 提出
求解线性规划的单纯形方法以来,线性规划在理论上趋向成熟,在实用中日益广泛与深
入。特别是在计算机能处理成千上万个约束条件和决策变量的线性规划问题之后,线性
规划的适用领域更为广泛了,已成为现代管理中经常采用的基本方法之一。

引例

        现有一个问题需要你来解决,某机床厂生产甲、 乙两种机床, 每台销售后的利润分别为 4000 元与 3000 元。生产甲机床需用 A、 B 机器加工,加工时间分别为每台 2 小时和 1 小时;生产乙机床需用 A、 B、 C 三种机器加工,加工时间为每台各一小时。若每天可用于加工的机器时
数分别为 A 机器 10 小时、 B 机器 8 小时和C 机器 7 小时,问该厂应生产甲、乙机床各
几台,才能使总利润最大?

        那么,这个问题该如何解决呢?上述问题的数学模型: 设该厂生产 x1 台甲机床和 x2 乙机床时总利润最大, 则 x1, x2应满足

这里变量 x1, x2 称之为决策变量, ( 1)式被称为问题的目标函数, ( 2)中的几个不等式
是问题的约束条件,记为 s.t.(即 subject to)。由于上面的目标函数及约束条件均为线性
函数,故被称为线性规划问题。

        总之,线性规划问题是在一组线性约束条件的限制下,求一线性目标函数最大或最
小的问题。

        在解决实际问题时,把问题归结成一个线性规划数学模型是很重要的一步,但往往
也是困难的一步,模型建立得是否恰当,直接影响到求解。而选适当的决策变量,是我
们建立有效模型的关键之一。

线性规划的 Matlab 标准形式

        线性规划的目标函数可以是求最大值,也可以是求最小值,约束条件的不等号可以
是小于号也可以是大于号。为了避免这种形式多样性带来的不便, Matlab 中规定线性
规划的标准形式为

其中 c 和 x 为 n 维列向量, A 、 Aeq 为适当维数的矩阵, b 、 beq 为适当维数的列向
量。如果目标函数为求解max,则只需在目标函数和方程左右两边添加负号即可。

具体案例

        求解下列线性规划问题 

具体代码实现也十分简单

c=[2;3;-5];
a=[-2,5,-1;1,3,1]; b=[-10;12];
aeq=[1,1,1];
beq=7;
x=linprog(-c,a,b,aeq,beq,zeros(3,1))
value=c'*x

线性规划模型是一种使用非常多,但还算比较简单的模型,希望看完本文之后你能够得心应手的面对它!感谢观看,如果觉得有用,不妨给个3连。

接下来的日子我会接连出一系列关于数学建模算法的专栏,如果感兴趣,欢迎订阅观看!
        

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值