lingo求解线性规划问题实例csdn
时间: 2023-09-14 13:07:21 浏览: 148
Lindo解线性规划问题实例.pdf
下面是一个使用Lingo求解线性规划问题的实例,包括问题描述、数据输入、模型建立和求解过程。
问题描述:
某工厂生产两种产品A和B,每种产品需要三道工序。第一道工序需要机器1和机器2,第二道工序需要机器2和机器3,第三道工序需要机器1和机器3。机器1每小时可生产A或B各10个,机器2每小时可生产A或B各8个,机器3每小时可生产A或B各12个。产品A卖出的利润为200元,产品B卖出的利润为150元。现在要求制定一个生产计划,使得总利润最大。
数据输入:
首先需要确定决策变量、目标函数和约束条件。这里假设生产A和B的数量分别为x1和x2,目标函数为最大化总利润z=200x1+150x2,约束条件如下:
1. 第一道工序需要机器1和机器2,每小时机器1和机器2分别生产10x1+10x2个产品,总量不能超过800个。
2. 第二道工序需要机器2和机器3,每小时机器2和机器3分别生产8x1+8x2和12x1+12x2个产品,总量不能超过1000个。
3. 第三道工序需要机器1和机器3,每小时机器1和机器3分别生产10x1+10x2和12x1+12x2个产品,总量不能超过1200个。
4. 生产数量不能为负数。
模型建立:
根据以上数据输入,可以列出线性规划模型如下:
max z=200x1+150x2
s.t.
10x1+10x2<=800
8x1+8x2+12x1+12x2<=1000
10x1+10x2+12x1+12x2<=1200
x1>=0
x2>=0
求解过程:
将以上模型输入Lingo软件,在求解器中选择线性规划模型,并设置目标函数和约束条件,点击求解即可得到最优解。
下面是Lingo求解器的输入命令:
max = 200x1 + 150x2
c1: 10x1 + 10x2 <= 800
c2: 8x1 + 8x2 + 12x1 + 12x2 <= 1000
c3: 10x1 + 10x2 + 12x1 + 12x2 <= 1200
x1 >= 0
x2 >= 0
end
使用Lingo求解器得到最优解为:x1=40,x2=60,总利润为:z=14000元。
以上就是使用Lingo求解线性规划问题的一个实例。
阅读全文