0
点赞
收藏
分享

微信扫一扫

QtC++ 设计模式(五)——状态模式

目录

例1

1.问题重述 

2.基本模型 

 变量定义:

目标函数:

约束条件: 

3.模型分析与假设 

4.模型求解 

5.LINGO代码实现 

6.结果解释 

​编辑 7.敏感性分析

 8.结果解释

例2 奶制品的销售计划

1.问题重述 

​编辑 2.基本模型

3.模型求解 

4.结果解释 

3.整数规划的实用模型 

1.题目

 2.分析

3.模型建立 

​编辑4.模型求解 

4.运输问题 

例1.

1.题目

2.分析 

3.模型建立 

​编辑 4.模型求解_Lingo

5.结果分析 

最优目标值

变量值

约束条件

冗余成本(Reduced Cost)

对偶价格(Dual Price)

例2 自来水的输送问题 

1.题目

2.分析

​编辑3. 模型建立

4.模型求解 

5.问题讨论 

6.求解

​编辑 总结


ce6fbd68767d465bbe94b775b8b811db.png

731bd47804784fa2897220a90a387b28.gif

生产与销售问题

         企业生产计划                       空间层次 

工厂级:根据外部需求和内部设备、人力、原料等条件,以最大利润为目标制订产品生产计划;
车间级:根据生产计划、工艺流程、资源约束及费用参数等,以最小成本为目标制订生产批量划.

                                                  时间层次

若短时间内外部需求和内部资源等不随时间变化,可制订 单阶段生产计划。

例1

1.问题重述 

例1 加工奶制品的生产计划 

每天:50 桶牛奶 时间480 小时 至多加工100 公斤A 1
制订生产计划,使每天获利最大
• 35 元可买到1 桶牛奶,买吗?若买,每天最多买多少?
• 可聘用临时工人,付出的工资最多是每小时几元?
• A 1 的获利增加到 30 元/ 公斤,应否改变生产计划? 

2.基本模型 

每天    50 桶牛奶    时间48小时   至多加工100 公斤A 1 

 变量定义:

目标函数:

约束条件: 

3.模型分析与假设 

4.模型求解 

5.LINGO代码实现 

model:
max = 72*x1+64*x2;
[milk] x1 + x2<50;
[time]
12*x1+8*x2<480;
[cpct] 3*x1<100;
end

 20 桶牛奶生产A 1 , 30 桶生产A 2 , 利润3360 元。

6.结果解释 

 7.敏感性分析

 8.结果解释

 

 

 

 

 

例2 奶制品的销售计划

1.问题重述 

 例2 奶制品的生产销售计划                                                              在例1基础上深加工

 2.基本模型

3.模型求解 

4.结果解释 

 

 奶制品的生产与销售

3.整数规划的实用模型 

1.题目

例.银行人员安排某储蓄所每天的营业时间为上午9点到下午5点. 根据经验, 每天不同时间所需要的服务员数量为:

时间段9—1010—1111—12 12—1
数量4346
时间段1—2 2—33—44—5 
数量 5688

 2.分析

3.模型建立 

 

4.模型求解 

4.运输问题 

例1.

1.题目

 单位路程运费表

2.分析 

3.模型建立 

 4.模型求解_Lingo

MODEL:
SETS:
    ORIG /1..2/: SUPPLY;
    DEST /1..4/: DEMAND;
    LINK(ORIG, DEST): COST, FLOW;
ENDSETS

DATA:
    SUPPLY = 2000 1100;
    DEMAND = 1700 1100 200 100;
    COST = 
    21 25  7 15
    51 51 37 15;
ENDDATA

! 目标函数:最小化总运输费用;
MIN = @SUM(LINK(I,J): COST(I,J) * FLOW(I,J));

! 供应约束:每个生产地的调运量不能超过其供应量;
@FOR(ORIG(I): 
    @SUM(DEST(J): FLOW(I, J)) <= SUPPLY(I)
);

! 需求约束:每个销售地的需求量必须得到满足;
@FOR(DEST(J):
    @SUM(ORIG(I): FLOW(I, J)) = DEMAND(J)
);

END

运行结果

5.结果分析 

最优目标值

  • 目标值(Objective value):92100.00 这表示总运输费用最小化后的总费用为92100元。

变量值

  • FLOW(1, 1):1700.000 表示从甲地到A地调运1700吨。
  • FLOW(1, 2):100.0000 表示从甲地到B地调运100吨。
  • FLOW(1, 3):200.0000 表示从甲地到C地调运200吨。
  • FLOW(1, 4):0.000000 表示从甲地到D地没有调运。
  • FLOW(2, 1):0.000000 表示从乙地到A地没有调运。
  • FLOW(2, 2):1000.000 表示从乙地到B地调运1000吨。
  • FLOW(2, 3):0.000000 表示从乙地到C地没有调运。
  • FLOW(2, 4):100.0000 表示从乙地到D地调运100吨。

约束条件

所有约束条件都得到了满足(Slack or Surplus为0),没有违反任何约束:

  • 每个生产地的供应量约束得到了满足。
  • 每个销售地的需求量约束得到了满足。

冗余成本(Reduced Cost)

  • Reduced Cost 为0表示这些流量变量都在最优解中被有效利用,没有改进的空间。

对偶价格(Dual Price)

对偶价格反映了每增加一个单位的约束右端常数对目标函数的影响:

  • 第二行:26.00000 表示增加一个单位的供应量对总费用有正向影响。
  • 第三行:0.000000 表示增加一个单位的需求量对总费用没有影响。

例2 自来水的输送问题 

1.题目

 (2)为了增加供水量, 自来水公司正在考虑进行水库改造,随三个水库的供水量都提高一倍, 问此时供水方案应如何改变?公司利润可增加多少?

 从水库向各区送水的净利润

(1)也可以基于利润表建立max模型. 

2.分析


问题的关键是如何安排从各个水库向四个居民区供水,使得引水管理费用达到最小, 注意到其它费用与供水安排无关.

3. 模型建立

4.模型求解 

5.问题讨论 

6.求解

 

 总结

数学规划模型是数学建模中用于描述和解决优化问题的一类模型。它通过构建目标函数和约束条件,将实际问题转化为数学形式,旨在寻找满足约束条件的最优解。数学规划模型广泛应用于各个领域,包括资源分配、生产计划、物流管理和金融投资等,通过线性规划、非线性规划、整数规划等方法,帮助决策者在复杂环境中做出最优选择。

举报

相关推荐

0 条评论