数学建模之线性规划

简单地记录了一下数学线性规划模型的分类以及各类规划的实例应用

Posted by LJJ on July 1, 2018

数学规划模型

前述:简单记录一下规划模型中的数学规划问题。

定义

  • 满足约束条件的解叫做可行解,由所有可行解组成的集合叫做可行域。数学规划问题即求满足约束条件的x,使f(x)成为最优(最小或最大值),而将x称为数学规划问题的最优解,将f=f(x*)称为最优值。

求解基本步骤

  1. 假设决策变量
  2. 建立目标函数
  3. 寻找约束条件

线性规划

  • 数学规划模型中,如果满足
    (1)目标函数为决策变量的线性函数;
    (2)约束条件为决策变量的线性等式或线性不等式,
    则称之为线性规划(Linear programming,记为LP)

整数规划

  • 数学规划中的变量(部分或全部)限制为整数时,称为整数规划(记为IP)。

非线性规划

  • 如果线性规划的目标函数或约束函数中含非线性函数,则称之为非线性规划(记为NP)。

实际问题: 一奶制品加工厂用牛奶生产A1,A2两种奶制品,1桶牛奶可以再甲车间用12小时加工成3千克A1产品,或者在一车间用8小时加工成4千克A2产品。根据市场需求,生产的A1,A2产品全部能售出,且每千克A1产品获利24元,每千克A2产品获利16元。现在加工厂每天能得到50桶牛奶的供应,每天正式工人总劳动时间为480小时,并且甲车间的设备每天之多能加工100千克A1产品,乙车间的设备加工能力可以认为没有上限限制。试为该厂订一个生产计划,使每天获利最大,并进一步讨论以下3个附加问题: (i)若用35元可以买到1桶牛奶,是否应作这项投资?若投资,每天最多购买多少桶牛奶? (ii)若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时几元? (iii)由于市场需求变化,每千克A1产品的获利增加到30元,是否应改变生产计划?

分析:

决策变量 x1桶牛奶生产A1 x2桶牛奶生产A2
获利 获利 24(3x1) 获利 16(4x2)
目标函数 每天获利 Max z=72x1+62x2
约束条件 原料供应 x1+x2<=50
约束条件 劳动时间 12x1+8x2<=480
约束条件 加工能力 3x1<=100
约束条件 非负约束 x1,x2>=0

lingo程序为:

max 72x1+64x2
st
2)x1+x2<50
3)12x1+8x2<480
4)3x1<100
end

max 72x1+64x2
st
2)x1+x2<50
3)12x1+8x2<480
4)3x1<100
end