好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

数学模型姜启源-第四章(第五版)PPT优秀课件.ppt

112页
  • 卖家[上传人]:桔****
  • 文档编号:588963995
  • 上传时间:2024-09-09
  • 文档格式:PPT
  • 文档大小:2.62MB
  • / 112 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 实际问题中实际问题中的优化模型的优化模型x~决策变量决策变量f(x)~目标函数目标函数gi(x) 0~约束条约束条件件多元函数多元函数条件极值条件极值 决策变量个数决策变量个数n和和约束条件个数约束条件个数m较大较大 最优解在可行域最优解在可行域的边界上取得的边界上取得 数数学学规规划划线性规划线性规划非线性规划非线性规划整数规划整数规划重点在模型的建立和结果的分析重点在模型的建立和结果的分析第四章第四章 数学规划模型数学规划模型 第第四四章章 数数学学规规划划模模型型 4.1    奶制品的生奶制品的生产与与销售售4.2   自来水自来水输送与送与货机装运机装运4.3   汽汽车生生产与原油采与原油采购4.4   接力接力队选拔和拔和选课策略策略4.5   饮料厂的生料厂的生产与与检修修4.6   钢管和易拉罐下料管和易拉罐下料4.7 广告投入与升广告投入与升级调薪薪4.8 投投资的的风险与收益与收益 企企业生生产计划划4.1  奶制品的生奶制品的生产与与销售售￿空间层次空间层次工厂级:根据外部需求和内部设备、人力、原料等工厂级:根据外部需求和内部设备、人力、原料等条件,以最大利润为目标制订产品生产计划;条件,以最大利润为目标制订产品生产计划;车间级:根据生产计划、工艺流程、资源约束及费车间级:根据生产计划、工艺流程、资源约束及费用参数等,以最小成本为目标制订生产批量计划用参数等,以最小成本为目标制订生产批量计划.时间层次时间层次若短时间内外部需求和内部资源等不随时间变化,可若短时间内外部需求和内部资源等不随时间变化,可制订制订单阶段生产计划单阶段生产计划,否则应制订多阶段生产计划,否则应制订多阶段生产计划.本节课题本节课题 例例1    加工奶制品的生加工奶制品的生产计划划1桶桶牛奶牛奶   3kgA1  12h  8h   4kgA2 或或获利获利24元元/kg 获利获利16元元/kg 50桶牛奶桶牛奶 时间时间480h 至多加工至多加工100kgA1 制制订生生产计划,使每天划,使每天获利最大利最大￿ ￿• 35元可买到元可买到1桶牛奶,买吗?若买,每天最多买多少桶牛奶,买吗?若买,每天最多买多少?• 可聘用临时工人,付出的工资最多是每小时几元可聘用临时工人,付出的工资最多是每小时几元? • A1的获利增加到的获利增加到 30元元/kg,应否改变生产计划?,应否改变生产计划? 每天:每天:问题 1桶桶牛奶牛奶   3kgA1 12h 8h   4kgA2 或或获利获利24元元/kg 获利获利16元元/kg x1桶牛奶生产桶牛奶生产A1 x2桶牛奶生产桶牛奶生产A2 获利获利 24×3x1 获利获利 16×4 x2 原料供应原料供应 劳动时间劳动时间 加工能力加工能力 决策决策变量量￿目目标函数函数￿每天获利每天获利约束条件束条件非负约束非负约束 线性线性规划规划模型模型(LP)时间时间480h 至多加工至多加工100kgA1 50桶牛奶桶牛奶 每天每天基本基本模型模型 模型分析与假模型分析与假设￿比比例例性性 可可加加性性 连续性连续性 xi对目标函数的对目标函数的“贡贡献献”与与xi取值成正比取值成正比 xi对约束条件的对约束条件的“贡贡献献”与与xi取值成正比取值成正比 xi对目标函数的对目标函数的“贡贡献献”与与xj取值无关取值无关 xi对约束条件的对约束条件的“贡贡献献”与与xj取值无关取值无关 xi取值连续取值连续 A1,A2每千克的获利是与各自每千克的获利是与各自产量无关的常数产量无关的常数每桶牛奶加工每桶牛奶加工A1,A2的数量的数量, 时时间是与各自产量无关的常数间是与各自产量无关的常数A1,A2每千克的获利是与相互每千克的获利是与相互产量无关的常数产量无关的常数每桶牛奶加工每桶牛奶加工A1,A2的数量的数量,时时间是与相互产量无关的常数间是与相互产量无关的常数加工加工A1,A2的牛奶桶数是实数的牛奶桶数是实数 线性性规划模型划模型 模型求解模型求解￿图解法解法￿x1x2OABCDl1l2l3l4l5约约束束条条件件目标目标函数函数 z=0z=2400z=3360z=c (常数常数) ~等值线等值线c在在B(20,30)点得到最优解点得到最优解.目标函数和约束条件是线性函数目标函数和约束条件是线性函数 可行域为直线段围成的凸多边形可行域为直线段围成的凸多边形 目标函数的等值线为直线目标函数的等值线为直线 最最优解一定在凸多解一定在凸多边形的某个形的某个顶点取得点取得. 模型求解模型求解￿软件件实现￿LINGO model:max = 72*x1+64*x2;[milk]   x1 + x2<50;[time] 12*x1+8*x2<480;[cpct]   3*x1<100;end Global optimal solution found.  Objective value:                              3360.000  Total solver iterations:                             2       Variable    Value                Reduced Cost              X1        20.00000            0.000000             X2        30.00000            0.000000           Row   Slack or Surplus   Dual Price                1        3360.000            1.000000        MILK        0.000000            48.00000        TIME        0.000000            2.000000        CPCT        40.00000            0.000000 20桶牛奶生产桶牛奶生产A1, 30桶生产桶生产A2,利润,利润3360元元.  结果解果解释￿Global optimal solution found.  Objective value:                              3360.000  Total solver iterations:                             2       Variable      Value              Reduced Cost             X1        20.00000            0.000000             X2        30.00000            0.000000           Row   Slack or Surplus   Dual Price                1        3360.000            1.000000        MILK        0.000000            48.00000        TIME        0.000000            2.000000        CPCT        40.00000            0.000000 model:max = 72*x1+64*x2;[milk]   x1 + x2<50;[time] 12*x1+8*x2<480;[cpct]   3*x1<100;end三三种种资资源源“资源资源” 剩余为零的约束为紧约束(有效约束)剩余为零的约束为紧约束(有效约束) 原料无剩余原料无剩余时间无剩余时间无剩余加工能力剩余加工能力剩余40 结果解果解释￿Global optimal solution found.  Objective value:                      3360.000  Total solver iterations:                  2      Variable     Value           Reduced Cost          X1        20.00000            0.000000          X2        30.00000            0.000000     Row   Slack or Surplus   Dual Price            1        3360.000         1.000000  MILK        0.000000          48.00000  TIME        0.000000          2.000000  CPCT        40.00000          0.000000最优解下最优解下“资源资源”增加增加1单位单位“效益效益”的增量的增量 • 35元可买到元可买到1桶牛奶,要买吗桶牛奶,要买吗?35 <48, 应该买!应该买!• 聘用临时工人付出的工资最多每小时几元聘用临时工人付出的工资最多每小时几元? 2元!元!原料增加原料增加1单位单位, 利润增长利润增长48 加工能力增长不影响利润加工能力增长不影响利润影子价格影子价格  Ranges in which the basis is unchanged:                         Objective Coefficient Ranges                 Current        Allowable        AllowableVariable  Coefficient    Increase          Decrease      X1         72.00000      24.00000       8.000000      X2         64.00000      8.000000       16.00000                         Righthand Side Ranges   Row          Current      Allowable   Allowable                      RHS          Increase       Decrease   MILK      50.00000      10.00000       6.666667   TIME      480.0000      53.33333       80.00000  CPCT       100.0000     INFINITY    40.00000 最优解不变时目标函最优解不变时目标函数系数允许变化范围数系数允许变化范围 敏感性分析敏感性分析 (“LINGO|Ranges” ) x1系数范围系数范围(64,96) x2系数范围系数范围(48,72) • A1获利增加到获利增加到 30元元/kg,应否改变生产计划,应否改变生产计划? x1系数由系数由24  3=72增加增加为为30 3=90,,在在允许范围内允许范围内 不变!不变!(约束条件不变约束条件不变) 结果解果解释￿Ranges in which the basis is unchanged:                         Objective Coefficient Ranges                 Current        Allowable        AllowableVariable  Coefficient    Increase          Decrease      X1         72.00000      24.00000       8.000000      X2         64.00000      8.000000       16.00000                         Righthand Side Ranges   Row          Current      Allowable   Allowable                      RHS          Increase       Decrease   MILK      50.00000      10.00000       6.666667   TIME      480.0000      53.33333       80.00000  CPCT       100.0000     INFINITY    40.00000影子价格有意义时约束右端的允许变化范围影子价格有意义时约束右端的允许变化范围 原料最多增加原料最多增加10 时间最多增加时间最多增加53 • 35元可买到元可买到1桶牛奶桶牛奶, 每天最多买多少每天最多买多少?最多买最多买10桶桶!目标函数不变目标函数不变充分条件充分条件 ! 例例2   奶制品的生奶制品的生产销售售计划划 在例在例1基础上深加工基础上深加工1桶桶牛奶牛奶   3kgA1   12h   8h   4kgA2 或或获利获利24元元/kg 获利获利16元元/kg   0.8kgB1 2h, 3元元1kg获利获利44元元/kg   0.75kgB2 2h, 3元元1kg获利获利32元元/kg 制制订生生产计划,使每天划,使每天净利利润最大最大￿ ￿• 30元可增加元可增加1桶牛奶,桶牛奶,3元可增加元可增加1h时间,应否投资?时间,应否投资?现现   投资投资150元,可赚回多少?元,可赚回多少?50桶牛奶桶牛奶, 480h 至多至多100kgA1 • B1,,B2的获利经常有的获利经常有10%的波动,对计划有无影响?的波动,对计划有无影响?• 每天销售每天销售10kgA1的合同必须满足,对利润有什么影响?的合同必须满足,对利润有什么影响? 1桶桶牛奶牛奶  3kg A1 12h 8h 4kg A2 或或获利获利24元元/kg 获利获利16元元/kg  0.8kg B12h, 3元元1kg获利获利44元元/kg 0.75kg B22h, 3元元1kg获利获利32元元/kg 出售出售x1 kg A1, x2 kg A2,, x3 kg B1, x4 kg B2原料原料供应供应 劳动劳动时间时间 加工能力加工能力 决策决策变量量￿目目标函数函数￿利润利润约束束条件条件非负约束非负约束 x5 kg A1加工加工B1,, x6 kg A2加工加工B2附加约束附加约束 基本模型基本模型 模型求解模型求解￿软件件实现￿ LINGO Global optimal solution found. Objective value:                         3460.800 Total solver iterations:                     2       Variable          Value        Reduced Cost               X1        0.000000            1.680000               X2        168.0000            0.000000               X3        19.20000            0.000000               X4        0.000000            0.000000               X5        24.00000            0.000000               X6        0.000000            1.520000       Row    Slack or Surplus      Dual Price          1             3460.800              1.000000      MILK        0.000000              3.160000       TIME        0.000000             3.260000       CPCT        76.00000             0.000000          5              0.000000            44.00000          6              0.000000            32.00000 Global optimal solution found.  Objective value:                       3460.800  Total solver iterations:                   2    Variable           Value       Reduced Cost            X1        0.000000            1.680000            X2        168.0000            0.000000            X3        19.20000            0.000000            X4        0.000000            0.000000            X5        24.00000            0.000000            X6        0.000000            1.520000    Row    Slack or Surplus     Dual Price        1             3460.800            1.000000   MILK        0.000000            3.160000    TIME        0.000000            3.260000   CPCT        76.00000            0.000000      5              0.000000            44.00000      6              0.000000            32.00000结果解果解释每天销售每天销售168 kgA2和和19.2 kgB1,, 利润利润3460.8(元)(元)8桶牛奶加工成桶牛奶加工成A1,,42桶牛奶加工成桶牛奶加工成A2,,将得到的将得到的24kgA1全全部加工成部加工成B1 除加工能力外均为除加工能力外均为紧约束紧约束 结果解果解释Global optimal solution found.  Objective value:                        3460.800  Total solver iterations:                   2    Variable           Value        Reduced Cost            X1        0.000000            1.680000            X2        168.0000            0.000000            X3        19.20000            0.000000            X4        0.000000            0.000000            X5        24.00000            0.000000            X6        0.000000            1.520000      Row    Slack or Surplus      Dual Price          1             3460.800           1.000000      MILK        0.000000          3.160000       TIME        0.000000          3.260000       CPCT        76.00000          0.000000         5              0.000000          44.00000         6              0.000000          32.00000增加增加1桶牛奶使利润桶牛奶使利润增长增长3.16×12=37.92增加增加1h时间使利润时间使利润增长增长3.26 30元可增加元可增加1桶牛奶,桶牛奶,3元可增加元可增加1h时间,时间,应否投资?现投资应否投资?现投资150元,可赚回多少?元,可赚回多少?投资投资150元增加元增加5桶牛桶牛奶奶,可赚回可赚回189.6元元(大于大于增加时间的利润增长增加时间的利润增长). 结果解果解释B1,B2的获利有的获利有10%的波动,对计划有无影响的波动,对计划有无影响  Ranges in which the basis is unchanged:                   Objective Coefficient Ranges                 Current      Allowable  AllowableVariable  Coefficient   Increase    Decrease          X1       24.00000         1.68000       INFINITY          X2       16.00000        8.15000         2.10000             X3       44.00000        19.75000      3.166667               X4       32.00000        2.026667       INFINITY          X5       -3.00000       15.80000        2.533333          X6       -3.00000        1.52000         INFINITY         …… ……B1获利下降获利下降10%,超,超出出X3 系数允许范围系数允许范围B2获利上升获利上升10%,超,超出出X4 系数允许范围系数允许范围波波动对计划有影响划有影响生产计划应重新制订:如将生产计划应重新制订:如将x3的系数改为的系数改为39.6计算,计算,会发现结果有很大变化会发现结果有很大变化.  敏感性分析敏感性分析 结果解果解释x1从从0开始增加一个单开始增加一个单位时,最优目标函数位时,最优目标函数值将减少值将减少1.68Reduced Cost是有意义、是有意义、有条件的有条件的(LINGO没有没有给出给出)每天销售每天销售10kgA1的合同必须满足,的合同必须满足,对利润有什么影响?对利润有什么影响?公司利润减少公司利润减少1.68×10=16.8(元)(元)最优利润为最优利润为 3460.8 – 16.8 = 3444 Global optimal solution found.  Objective value:                        3460.800  Total solver iterations:                   2    Variable           Value        Reduced Cost            X1        0.000000            1.680000            X2        168.0000            0.000000            X3        19.20000            0.000000            X4        0.000000            0.000000            X5        24.00000            0.000000            X6        0.000000            1.520000      Row    Slack or Surplus      Dual Price          1             3460.800           1.000000      MILK        0.000000          3.160000       TIME        0.000000          3.260000       CPCT        76.00000          0.000000         5              0.000000          44.00000         6              0.000000          32.00000 小小结与与评注注• 由于产品利润、加工时间等均为常数,由于产品利润、加工时间等均为常数,可可  建立建立线性规划线性规划模型模型.• 线性规划模型的三要素:线性规划模型的三要素:决策变量、决策变量、目标目标  函数函数、约束条件、约束条件.• 用用LINGO求解,输出丰富,利用求解,输出丰富,利用影子价格影子价格  和和灵敏性分析灵敏性分析可对结果做进一步研究可对结果做进一步研究.• 建模时尽可能利用建模时尽可能利用原始的数据原始的数据信息,把信息,把尽量尽量  多多的计算留给计算机去做(分析例的计算留给计算机去做(分析例2的建模)的建模). 4.2 自来水自来水输送与送与货机装运机装运生产、生活物资从若干供应点运送到一些需求点,生产、生活物资从若干供应点运送到一些需求点,怎样安排输送方案使运费最小,或利润最大怎样安排输送方案使运费最小,或利润最大?运输问题运输问题各种类型的货物装箱,由于受体积、重量等限制,各种类型的货物装箱,由于受体积、重量等限制,如何搭配装载,使获利最高,或装箱数量最少如何搭配装载,使获利最高,或装箱数量最少? 其他费用其他费用: :450元元/ 103t• 应如何分配水库供水量,公司才能获利最多?应如何分配水库供水量,公司才能获利最多? • 若水库供水量都提高一倍,公司利润可增加到多少?若水库供水量都提高一倍,公司利润可增加到多少? 元元/ 103t甲甲乙乙丙丙丁丁A160130220170B140130190150C190200230/引水管理费引水管理费例例1 自来水自来水输送送收入:收入:900元元/103t 支出支出A::50B::60C::50甲:甲:30;;50乙:乙:70;;70丙:丙:10;;20丁:丁:10;;40水水库库供供水水量量小小区区基基本本用用水水量量小小区区额额外外用用水水量量(以天计)(以天计)(103t)(103t)(103t) 总供水量:总供水量:160确定送水方案确定送水方案使利润最大使利润最大问题分析分析A::50B::60C::50甲:甲:30;;50乙:乙:70;;70丙:丙:10;;20丁:丁:10;;40< 总需求量:总需求量:120+180=300总收入总收入900 160=144000(元元) 收入:收入:900元元/ 103t 其他费用其他费用: :450元元/ 103t 支出支出引水管理费引水管理费其他其他支出支出450160=72000(元) 使引水管理费最小使引水管理费最小 供应供应限制限制约束束条件条件需求需求限制限制 线性线性规划规划模型模型(LP)目目标函数函数￿水库水库i 向向j 区的日供水量为区的日供水量为 xij((x34=0))决策决策变量量￿模型建立模型建立￿ ￿确定确定3个水库向个水库向4个小区的供水量个小区的供水量  模型求解模型求解￿部分结果:部分结果:Objective Value:             24400.00  Variable       Value         Reduced Cost       X11         0.000000         30.000000       X12       50.000000           0.000000       X13         0.000000         50.000000       X14         0.000000         20.000000       X21         0.000000         10.000000       X22       50.000000           0.000000       X23         0.000000         20.000000       X24       10.000000          0.000000       X31       40.000000         0.000000       X32         0.000000        10.000000       X33       10.000000          0.000000 利利润润= =总总收收入入- -其其他他费费用用 - -引引 水水 管管 理理 费费=144000-72000-24400 = 47600(元)(元) A(50)B(60)C(50)甲甲(30;50)乙乙(70;70)丙丙(10;20)丁丁(10;40)5050401010引水管理费引水管理费 24400(元元) 目目标函数函数￿总供水量总供水量(320) > 总需求量总需求量(300)每个水库最大供水量都提高一倍每个水库最大供水量都提高一倍利润利润  = 收入收入(900) –其他费用其他费用( (450) –引水管理费引水管理费利润利润(元元/ 103t )甲甲乙乙丙丙丁丁A290320230280B310320260300C260250220/供应供应限制限制B, C 类似处理类似处理问题讨论￿确定送水方案确定送水方案使利润最大使利润最大需求约束可以不变需求约束可以不变 模型求解模型求解部分结果:部分结果:Objective Value:           88700.00 Variable          Value         Reduced Cost      X11          0.000000         20.000000       X12      100.000000           0.000000       X13          0.000000         40.000000       X14          0.000000         20.000000       X21        30.000000          0.000000       X22        40.000000          0.000000       X23         0.000000         10.000000       X24        50.000000          0.000000       X31        50.000000          0.000000       X32         0.000000         20.000000       X33        30.000000          0.000000 运输问题运输问题总利润总利润 88700(元)(元) A(100)B(120)C(100)甲甲(30;50)乙乙(70;70)丙丙(10;20)丁丁(10;40)4010050305030供应点供应点需求点需求点物资物资供需平衡或不平衡供需平衡或不平衡 如何如何装运,装运,使本次飞行使本次飞行获利最大?获利最大?  三个货舱三个货舱最大最大载载重重( (t),),最大容积最大容积( (m3) ) 例例2  货机装运机装运 重量重量((t))空间空间( m3/t))利润利润(元(元/t))货物货物1184803100货物货物2156503800货物货物3235803500货物货物4123902850三个货舱中实际载重必须与其最大三个货舱中实际载重必须与其最大载载重成比例重成比例. . 前仓:前仓:10;;6800中仓:中仓:16;;8700后仓:后仓:8;;5300飞机平衡飞机平衡 模型模型假假设￿ ￿•每种货物可以分割到任意小;每种货物可以分割到任意小;•每种货物可以在一个或多个货舱中每种货物可以在一个或多个货舱中任意分布任意分布;;•多种货物可以多种货物可以混装混装,并保证不留空隙;,并保证不留空隙; •所给出的数据都是所给出的数据都是精确精确的,没有误差的,没有误差. .  第第i种货物的种货物的重量重量wi, 体积体积vi, 利润利润pi  (i=1,2,3,4)已知参数已知参数￿ ￿货舱货舱j的的重量限制重量限制WETj , 体积限制体积限制VOLj, (j=1,2,3 分别代表前、中、后仓分别代表前、中、后仓) 货舱容积货舱容积 目目标函数函数(利利润)约束束条件条件模型建立模型建立￿ ￿货舱重量货舱重量 10;;680016;;87008;;5300xij----第第i 种货物装入第种货物装入第j 个货舱的重量个货舱的重量 i=1,2,3,4,  j=1,2,3 决策决策变量量￿ 约束束条件条件平衡要求平衡要求 货物供应货物供应 模型建立模型建立￿ ￿10;;680016;;87008;;5300xij----第第i 种货物装入第种货物装入第j 个货舱的重量个货舱的重量j,k=1,2,3; j≠k Global optimal solution found.  Objective value:                     121515.8  Total solver iterations:                   12Variable           Value        Reduced Cost  X( 1, 1)        0.000000            400.0000  X( 1, 2)        0.000000            57.89474  X( 1, 3)        0.000000            400.0000  X( 2, 1)        7.000000            0.000000  X( 2, 2)        0.000000            239.4737  X( 2, 3)        8.000000            0.000000  X( 3, 1)        3.000000            0.000000  X( 3, 2)        12.94737            0.000000  X( 3, 3)        0.000000            0.000000  X( 4, 1)        0.000000            650.0000  X( 4, 2)        3.052632            0.000000  X( 4, 3)        0.000000            650.0000货物货物2:前仓:前仓7, ,后仓后仓8;; 货物货物3: : 前仓前仓3, 中仓中仓1 13;;货物货物4: : 中仓中仓3. .模型求解模型求解￿ ￿最大利润约最大利润约121516元元货物货物~供应点供应点货舱货舱~需求点需求点装载平衡要求装载平衡要求运输运输问题问题运输问题的扩展运输问题的扩展 • 如果生产某一类型汽车,则如果生产某一类型汽车,则至少要生产至少要生产8080辆辆,, 那么那么最优的生产计划应作何改变?最优的生产计划应作何改变?例例1  汽汽车厂生厂生产计划划 汽车厂生产三种类型的汽车,已知各类型每辆车对汽车厂生产三种类型的汽车,已知各类型每辆车对钢材、劳动时间的需求,利润及工厂每月的现有量钢材、劳动时间的需求,利润及工厂每月的现有量.                                       小型小型          中型中型          大型大型        现有量现有量钢材(钢材(t))                    1.5              3                5              600劳动时间(劳动时间(h))           280           250             400         60000利润(万元)利润(万元)               2                3                4                      •  制订月生产计划,使工厂的制订月生产计划,使工厂的利润最大利润最大.4.3 汽汽车生生产与原油采与原油采购 设每月生产小、中、大型汽车的数量分别为设每月生产小、中、大型汽车的数量分别为x1, x2, x3模型建立模型建立￿            小型小型     中型中型     大型大型     现有量现有量钢材钢材     1.5          3           5           600时间时间    280       250       400        60000利润利润     2            3           4                      线性规划线性规划模型模型(LP) 模型模型求解求解￿3)模型中)模型中增加条件增加条件::x1, x2, x3  均为整数,重新求解均为整数,重新求解. . Objective Value:                    632.2581    Variable        Value               Reduced Cost        X1        64.516129                      0.000000        X2      167.741928                      0.000000        X3          0.000000                      0.946237    Row    Slack or Surplus            Dual Price          2          0.000000                        0.731183          3          0.000000                        0.003226结果为小数,结果为小数,怎么办?怎么办?1))舍去小数舍去小数:取:取x1=64,,x2=167,算出目标函数值,算出目标函数值     z=629,与,与LP最优值最优值632.2581相差不大相差不大.2))试探试探:如取:如取x1=65,,x2=167;;x1=64,,x2=168等,等,     计算函数值计算函数值z,通过比较可能得到更优的解,通过比较可能得到更优的解.•  但但必须检验必须检验它们是否满足约束条件它们是否满足约束条件.  为什么?为什么? IP可用可用LINGO直接求解直接求解整数规划整数规划( (Integer Programming, ,简记简记IP) )IP 的最优解的最优解x1=64,,x2=168,,x3=0,最优值,最优值z=632  max=2*x1+3*x2+4*x3;1.5*x1+3*x2+5*x3<600;280*x1+250*x2+400*x3<60000;@gin(x1);@gin(x2);@gin(x3); Global optimal solution found.  Objective value:                         632.0000  Extended solver steps:                           0  Total solver iterations:                          3   Variable           Value        Reduced Cost              X1        64.00000           -2.000000              X2        168.0000           -3.000000              X3        0.000000           -4.000000模型求解模型求解￿IP 结果输出结果输出 其中其中3个个子模型应子模型应去掉,然后去掉,然后逐一求解,比较目标函数值,逐一求解,比较目标函数值,再加上整数约束,得最优解:再加上整数约束,得最优解:方法方法1:分解为:分解为8个个LP子模型子模型 • 若生产某类汽车,则至少生产若生产某类汽车,则至少生产8080辆,求生产计划辆,求生产计划. .x1, ,x2,, x3=0 或或  80   x1=80,,x2= 150,,x3=0,最优值,最优值z=610 LINGO中中对对0-1变量的限定:变量的限定:@bin(y1); @bin(y2); @bin(y3);方法方法2::引入引入0-1变量,化为整数规划变量,化为整数规划 M为大的正数为大的正数, ,本例可取本例可取1000 Objective Value:          610.0000  Variable      Value      Reduced Cost     X1        80.000000         -2.000000     X2      150.000000         -3.000000     X3          0.000000         -4.000000     Y1          1.000000          0.000000     Y2          1.000000          0.000000     Y3          0.000000          0.000000 • 若生产某类汽车,则至少生产若生产某类汽车,则至少生产8080辆,求生产计划辆,求生产计划. .x1=0 或 80x2=0 或 80x3=0 或 80最优解同前最优解同前  max=2*x1+3*x2+4*x3;1.5*x1+3*x2+5*x3<600;280*x1+250*x2+400*x3<60000;x1*(x1-80)>0;x2*(x2-80)>0;x3*(x3-80)>0;@gin(x1);@gin(x2);@gin(x3);方法方法3::化为非线性规划化为非线性规划 非线性规划非线性规划((Non- Linear Programming,,简记简记NLP)) • 若生产某类汽车,则至少生产若生产某类汽车,则至少生产8080辆,求生产计划辆,求生产计划. . x1=0 或 80x2=0 或 80x3=0 或 80最优解同前最优解同前.一般地,整数规划和非一般地,整数规划和非线性规划的求解比线性线性规划的求解比线性规划困难得多,特别是规划困难得多,特别是问题规模较大或者要求问题规模较大或者要求得到全局最优解时得到全局最优解时. • 决策变量为整数决策变量为整数, 建立建立整数规划模型整数规划模型.• 求解整数规划和非线性规划比线性规划求解整数规划和非线性规划比线性规划困难得多困难得多 (即便用数学软件即便用数学软件) .• 当整数变量取值很大时当整数变量取值很大时, 可作为连续变量可作为连续变量处理处理, 问题问题简化为线性规划简化为线性规划. • 对于类似于对于类似于“x=0 或或  80”这样的条件,通常这样的条件,通常引入引入0-1变量变量处理,尽量不用非线性规划(特处理,尽量不用非线性规划(特别是引入的整数变量个数较少时)别是引入的整数变量个数较少时).小小结与与评注注 应如何安排原油的采购和加工应如何安排原油的采购和加工 ??  市场上可买到不超过市场上可买到不超过1500t t的原油的原油A::• 购买量不超过购买量不超过500t t时的单价为时的单价为10000元元/t/t;;• 购买量超过购买量超过500t t但不超过但不超过1000t t时,超过时,超过500t t的的 部分部分8000元元/t/t;;• 购买量超过购买量超过1000t t时,超过时,超过1000t t的部分的部分6000元元/t. /t. 售价售价4800元元/t 售价售价5600元元/t库存库存500t 库存库存1000t 汽油甲汽油甲(A 50%) 原油原油A 原油原油B 汽油乙汽油乙 (A 60%) 例例2   原油采原油采购与加工与加工  决策决策变量量￿目目标函数函数问题分析分析￿ ￿• 利润:销售汽油的收入利润:销售汽油的收入 购买原油购买原油A的支出的支出. .• 难点:原油难点:原油A的购价与购买量的关系较复杂的购价与购买量的关系较复杂. .甲甲(A 50%) A B 乙乙(A 60%) 购买购买xx11x12x21x224.8千元千元/t 5.6千元千元/t原油原油A的购买量的购买量, ,原油原油A, B生产生产汽油汽油甲甲,乙的数量乙的数量c(x) ~ 购买原油购买原油A的支出的支出利利润(千元千元)c(x)如何表述?如何表述? 原油供应原油供应 约束束条件条件• x  500,,单价单价为为10千千元元/t/t;;• 500  x  1000,,超过超过500t t的的8千千元元/t/t;;•1000  x  1500,,超过超过1000t t的的6千千元元/t. /t. 目目标函数函数购买购买x A B x11x12x21x22库存库存500t 库存库存1000t  汽油含原油汽油含原油A的比例限制的比例限制 约束束条件条件甲甲(A 50%) A B 乙乙(A 60%) x11x12x21x22• 目标函数目标函数中中c(x)不是不是线性函数,是非线性规划;线性函数,是非线性规划;•对于用分段函数定义的对于用分段函数定义的c(x),一般的非线性规划,一般的非线性规划 软件也难以输入和求解;软件也难以输入和求解;•想办法将模型化简,用现成的软件求解想办法将模型化简,用现成的软件求解. .  x1 , x2 , x3 ~以价格以价格10, 8, 6(千元千元/t)t)采购采购A的吨数的吨数目目标函数函数￿只有当以只有当以10千元千元/t t的价格购买的价格购买x1=500(t)(t)时,才能以时,才能以8千元千元/t t的价格购买的价格购买x2方法方法1 非线性规划模型非线性规划模型,可以用,可以用LINGO求解求解模型求解模型求解x= x1+x2+x3, c(x) = 10x1+8x2+6x3 • 500  x  1000,,超过超过500t t的的8千千元元/t/t增加约束增加约束类似地有类似地有 方法方法1::LINGO求解求解 Local optimal solution found.  Objective value:                          4800.000  Total solver iterations:                    14     Variable           Value        Reduced Cost            X11        500.0000            0.000000            X21        500.0000            0.000000            X12        0.000000           0.2666667            X22        0.000000            0.000000              X1        0.000000           0.4000000              X2        0.000000            0.000000              X3        0.000000            0.000000                X        0.000000            0.000000LINGO得到的是局部最优解得到的是局部最优解, ,还能得到更好的解吗?还能得到更好的解吗? 用库存的用库存的500t t原油原油A、、500t t原油原油B生产汽油甲,生产汽油甲,不购买新的原油不购买新的原油A,,利润为利润为4800千千元元. . 方法方法1::LINGO求解求解计算全局最优解计算全局最优解 ::选选LINGO|Options菜单;菜单;在在弹弹出出的的选选项项卡卡中中选选择择“General Solver”;;然然 后后 找找 到到 选选 项项 “Use Global Solver”将其选中;将其选中;应用或保存;重新求解。

      应用或保存;重新求解 Global optimal solution found.  Objective value:              5000.000  Extended solver steps:               1  Total solver iterations:             43          Variable     Value        Reduced Cost X11        0.000000            0.000000   X21        0.000000            0.900000   X12        1500.000            0.000000   X22        1000.000            0.000000    X1        500.0000             0.000000    X2        500.0000             0.000000    X3        0.000000             0.000000     X        1000.000              0.000000 还有其他建模和求解方法还有其他建模和求解方法吗?吗? 购买购买1000t原油原油A,与库存的,与库存的500t原油原油A和和1000t原油原油B一起,共生产一起,共生产2500t汽油乙,利润为汽油乙,利润为5000千元千元 . . y1, y2 , y3=1 ~以价格以价格10, 8, 6(千元千元/t)t)采购采购A增加增加约束约束方法方法2 0-1线性规划模型线性规划模型, 可用可用LINGO求解求解.y1, ,y2, ,y3 =0或或1 购买购买1000t t原油原油A,与库存的,与库存的500t t原油原油A和和1000t t原油原油B一起,一起,生产汽油乙,利润为生产汽油乙,利润为5000千元千元 .x1 , x2 , x3 ~以价格以价格10, 8, 6(千元千元/t)t)采购采购A的吨数的吨数y=0  x=0x>0  y=1与方法与方法1(全局最优解)的结果相同(全局最优解)的结果相同引入引入0-1变量变量模型求解模型求解 b1            b2       b3         b4方法方法3 b1  x b2,,x= z1b1+z2b2,,z1+z2=1,,z1, z2 0, c(x)= z1c(b1)+z2c(b2).c(x)x1200090005000O50010001500b2   x  b3,,x= z2b2+z3b3,, z2+z3=1,,z2, z3   0, c(x)= z2c(b2)+z3c(b3). b3   x  b4,,x= z3b3+z4b4,,z3+z4=1,,z3, z4   0, c(x)= z3c(b3)+z4c(b4).  直接处理处理分段线性函数直接处理处理分段线性函数c(x)  IP模型,模型,LINGO求解,得到的结求解,得到的结果与方法果与方法2相同相同. .bk x bk+1yk=1, ,否则否则, ,yk=0方法方法3 bk x bk+1 , ,x= zkbk+z k+1 bk+1zk+zk+1 =1,,zk, zk+1  0, c(x)= zkc(bk)+zk+1 c(bk+1 ).c(x)x1200090005000O50010001500b1            b2       b3         b4对于对于k=1,2,3 • 方法方法3: 直接处理分段线性函数,方法更具一般性直接处理分段线性函数,方法更具一般性.• 分段函数分段函数无法直接用非线性规划方法或软件求解无法直接用非线性规划方法或软件求解. .• 方法方法1:  增加约束化为增加约束化为非线性规划非线性规划, ,可以用可以用LINGO    求解求解,  但可能但可能得到的是局部最优解得到的是局部最优解. .• 方法方法2:  引入引入0-1变量变量, 化为化为线性规划模型线性规划模型, 可用可用    LINGO求解求解.小小结与与评注注 分派分派问题4.4 接力接力队选拔和拔和选课策略策略• 若干项任务分给一些候选人来完成,每人的专长不同若干项任务分给一些候选人来完成,每人的专长不同,完成每项任务取得的效益或需要的资源不同,如何分派完成每项任务取得的效益或需要的资源不同,如何分派任务使获得的总效益最大,或付出的总资源最少任务使获得的总效益最大,或付出的总资源最少?• 若干种策略供选择,不同的策略得到的收益或付出的若干种策略供选择,不同的策略得到的收益或付出的成本不同,各个策略之间有相互制约关系,如何在满成本不同,各个策略之间有相互制约关系,如何在满足一定条件下作出抉择,使得收益最大或成本最小足一定条件下作出抉择,使得收益最大或成本最小? 如何选拔队员组成如何选拔队员组成4 4 100100m混合泳接力队混合泳接力队? ?例例1  混合泳接力混合泳接力队的的选拔拔 5名候选人名候选人4种泳姿的种泳姿的百米成绩百米成绩穷举法穷举法::组成接力队的方案共有组成接力队的方案共有5!=120种种.甲甲乙乙丙丙丁丁戊戊蝶泳蝶泳仰泳仰泳蛙泳蛙泳自由泳自由泳讨论讨论: :丁的蛙泳成绩退步到丁的蛙泳成绩退步到 ;戊的自由泳成;戊的自由泳成绩进步到绩进步到 , 组成接力队的方案是否应该调整组成接力队的方案是否应该调整?? 目标目标函数函数若选择队员若选择队员i参加泳姿参加泳姿j 的比赛,记的比赛,记xij=1, , 否则记否则记xij=0 0-1规划模型划模型 cij~队员队员i第第j 种泳姿的百米成绩种泳姿的百米成绩( (s) )约束约束条件条件每人最多入选泳姿之一每人最多入选泳姿之一 ciji=1i=2i=3i=4i=5j=166.857.2787067.4j=275.66667.874.271j=38766.484.669.683.8j=458.65359.457.262.4每种泳姿有且只有每种泳姿有且只有1 1人人 模型求解模型求解￿最优解:最优解:x14 = x21 = x32 = x43 = 1,  其他变量为其他变量为0;LINGO求解求解 甲甲~ 自由泳、乙自由泳、乙~ 蝶泳、丙蝶泳、丙~ 仰泳、丁仰泳、丁~ 蛙泳蛙泳. .成绩为成绩为253.2( (s) )=甲甲乙乙丙丙丁丁戊戊蝶泳蝶泳仰泳仰泳蛙泳蛙泳自由泳自由泳 丁蛙泳丁蛙泳c43 = = 69.675.2 ( (s) ),戊自由泳,戊自由泳c54= = 62.4  57.5 ( (s) ), 方案是否调整?方案是否调整?￿ ￿敏感性分析?敏感性分析?新方案新方案: :乙乙~ 蝶泳、丙蝶泳、丙~ 仰泳、丁仰泳、丁~ 蛙泳、戊蛙泳、戊~ 自由泳自由泳IP一般没有与一般没有与LP相类似的理论,相类似的理论,LINGO输出的输出的敏感性分析结果通常是没有意义的敏感性分析结果通常是没有意义的. .c43, c54 的新数据重新输入模型,用的新数据重新输入模型,用LINGO求解求解                原分配方案原分配方案:甲甲~ 自由泳、乙自由泳、乙~ 蝶泳、丙蝶泳、丙~ 仰泳、丁仰泳、丁~ 蛙泳蛙泳. .讨论最优解:最优解:x21 = x32 = x43 = x51 = 1,  成绩为成绩为 混合泳接力混合泳接力队的的选拔拔 指派指派( (Assignment) )问题问题::有若干项任务有若干项任务, 每项任务必每项任务必有且只能有一人承担,每人只能承担一项有且只能有一人承担,每人只能承担一项,不同人员,不同人员承担不同任务的效益承担不同任务的效益(或成本或成本)不同,怎样分派各项任不同,怎样分派各项任务使总效益最大务使总效益最大(或总成本最小或总成本最小)?• 人员数量与任务数量相等人员数量与任务数量相等• 人员数量大于任务数量人员数量大于任务数量(本例本例)• 人员数量小于任务数量人员数量小于任务数量 ?建立建立0-1规划模型是常用方法划模型是常用方法  为了选修课程门数最少,应学习哪些课程为了选修课程门数最少,应学习哪些课程 ??  要求至少选两门数学课、三门运筹学课和两门计算机课要求至少选两门数学课、三门运筹学课和两门计算机课 课号课号课名课名学分学分所属类别所属类别先修课要求先修课要求1微积分微积分5数学数学 2线性代数线性代数4数学数学 3最优化方法最优化方法4数学;运筹学数学;运筹学微积分;线性代数微积分;线性代数4数据结构数据结构3数学;计算机数学;计算机计算机编程计算机编程5应用统计应用统计4数学;运筹学数学;运筹学微积分;线性代数微积分;线性代数6计算机模拟计算机模拟3计算机;运筹学计算机;运筹学计算机编程计算机编程7计算机编程计算机编程2计算机计算机 8预测理论预测理论2运筹学运筹学应用统计应用统计9数学实验数学实验3运筹学;计算机运筹学;计算机微积分;线性代数微积分;线性代数选修课程最少,且学分尽量多,应学习哪些课程选修课程最少,且学分尽量多,应学习哪些课程 ??  例例2   选课策略选课策略 0-1规划模型划模型 决策决策变量量￿目目标函数函数￿xi=1 ~选修课号选修课号i 的的课程(课程(xi=0 ~不选)不选) 选修课程总数最少选修课程总数最少 约束条件束条件最少最少2门数学课,门数学课,3门运筹学课,门运筹学课,2门计算机课门计算机课. .课号课号课名课名所属类别所属类别1微积分微积分数学数学2线性代数线性代数数学数学3最优化方法最优化方法数学;运筹学数学;运筹学4数据结构数据结构数学;计算机数学;计算机5应用统计应用统计数学;运筹学数学;运筹学6计算机模拟计算机模拟计算机;运筹学计算机;运筹学7计算机编程计算机编程计算机计算机8预测理论预测理论运筹学运筹学9数学实验数学实验运筹学;计算机运筹学;计算机 先修课程要求先修课程要求最优解:最优解: x1 = x2 = x3 = x6 = x7 = x9 =1, 其他为其他为0;;6门课程,总学分门课程,总学分21. 0-1规划模型划模型 约束条件束条件x3=1必有必有x1 = x2 =1模型求解(模型求解(LINGO))      课号课号课名课名先修课要求先修课要求1微积分微积分 2线性代数线性代数 3最优化方法最优化方法微积分;线性代数微积分;线性代数4数据结构数据结构计算机编程计算机编程5应用统计应用统计微积分;线性代数微积分;线性代数6计算机模拟计算机模拟计算机编程计算机编程7计算机编程计算机编程 8预测理论预测理论应用统计应用统计9数学实验数学实验微积分;线性代数微积分;线性代数 学分最多学分最多多目标优化的处理方法:化成单目标优化多目标优化的处理方法:化成单目标优化. .两目两目标(多目多目标)规划划￿讨论::选修修课程最少,学分尽量多,程最少,学分尽量多,应学学习哪些哪些课程?程?￿￿￿￿课程最少课程最少 • 以以学分最多为目标学分最多为目标, ,不管课程多少不管课程多少. .• 以课程最少以课程最少为目标为目标, ,不管学分多少不管学分多少. .最优解如上,最优解如上,6门门课程,总学分课程,总学分21 .最优解显然是选修最优解显然是选修所有所有9门课程门课程 . 多目多目标规划划￿• 在在课程最少的前提下课程最少的前提下以以学分最多为目标学分最多为目标. .最优解:最优解: x1 = x2 = x3 = x5 = x7 = x9 =1,  其他为其他为0;;总总学分由学分由21增至增至22.注意:最优解不唯一!注意:最优解不唯一!课号课号课名课名学分学分1微积分微积分52线性代数线性代数43最优化方法最优化方法44数据结构数据结构35应用统计应用统计46计算机模拟计算机模拟37计算机编程计算机编程28预测理论预测理论29数学实验数学实验3            LINGO不能告诉优化不能告诉优化问题的解是否唯一问题的解是否唯一.可将可将x9 =1 易为易为x6 =1增加约束增加约束 ,,以学分最多为目标求解以学分最多为目标求解. . 多目多目标规划划￿• 对学分数和课程数加权形成一个目标,如三七开对学分数和课程数加权形成一个目标,如三七开. 最优解:最优解: x1 = x2 = x3 = x4 = x5 = x6 = x7 = x9 =1,,其他为其他为0;;总学分总学分28.课号课号课名课名学分学分1微积分微积分52线性代数线性代数43最优化方法最优化方法44数据结构数据结构35应用统计应用统计46计算机模拟计算机模拟37计算机编程计算机编程28预测理论预测理论29数学实验数学实验3        讨论与思考与思考最优解最优解与与 1=0,, 2=1的结果相同的结果相同——学分最多学分最多. .多目多目标规划划￿最优解最优解与与 1=1,, 2=0的结果相同的结果相同——课程最少课程最少. .    选 课 策策 略略用用0-1变量表示策略量表示策略选择是常用的方法是常用的方法• “要选甲要选甲 (x1)必选乙必选乙 (x2)” 可用可用x1   x2描述描述.• “要选甲要选甲 (x1)必不选乙必不选乙 (x2)” 怎样描述怎样描述?• “甲乙二人至多选一人甲乙二人至多选一人” 怎样描述怎样描述?• “甲乙二人至少选一人甲乙二人至少选一人” 怎样描述怎样描述?双双(多多)目目标规划的划的处理方法理方法￿• 加权组合成一个新目标加权组合成一个新目标, 化为单目标规划化为单目标规划.• 一个目标作为约束一个目标作为约束,  解另一个目标的规划解另一个目标的规划. 4.5 饮料厂的生料厂的生产与与检修修单阶段生产计划单阶段生产计划多阶段生产计划多阶段生产计划• 生生产批量批量问题• 企企业生生产计划划考虑与产量无关的固定费用考虑与产量无关的固定费用.给优化模型求解带来新的困难给优化模型求解带来新的困难.外部需求和内部外部需求和内部资源随时间变化资源随时间变化 • 安排生产计划安排生产计划, 满足每周的需求满足每周的需求,  使使4周总费用最小周总费用最小. .存贮费存贮费: :每周每千箱饮料每周每千箱饮料 0.2 ( (千元千元). ). 例例1 饮料厂的生料厂的生产与与检修修计划划￿ ￿• 4周内安排一次设备周内安排一次设备检修检修, ,占用占用当周当周15千箱千箱生产能力生产能力, , 能能使检修后每周增产使检修后每周增产5千千箱箱, ,检修检修应排在哪一周应排在哪一周? ? 周次周次需求量需求量(千箱千箱)生产能力生产能力(千箱千箱)成本成本(千元千元/千箱千箱)115305.0225405.1335455.4425205.5合计合计100135 某种饮料某种饮料4周的需求量、生产能力和成本周的需求量、生产能力和成本 问题分析分析• 除第除第4周外每周的生产周外每周的生产能力超过每周的需求;能力超过每周的需求;• 生产成本逐周上升;生产成本逐周上升;•前几周应多生产一些前几周应多生产一些. 周次周次需求需求能力能力11530225403354542520合计合计100135成本成本5.05.15.45.5 • 饮料厂在第饮料厂在第1周开始时没有库存;周开始时没有库存; • 从费用最小考虑从费用最小考虑, , 第第4周末不能有库存;周末不能有库存; • 周末有库存时需支出一周的存贮费;周末有库存时需支出一周的存贮费; • 每周末的库存量等于下周初的库存量每周末的库存量等于下周初的库存量. . 模模型型假假设￿ 目标目标函数函数约束约束条件条件产量、库存与需求平衡产量、库存与需求平衡 决策变量决策变量￿ ￿能力限制能力限制 非负限制非负限制 模型建立模型建立x1~ x4:第:第1~4周周的生产量的生产量y1~ y3:第:第1~3周末周末库存量库存量周次周次需求需求能力能力11530225403354542520成本成本5.05.15.45.5存贮费存贮费: :0.2(千元千元/ /周周•千箱千箱) ) 模型求解模型求解￿4周生产计划的总费用为周生产计划的总费用为528 (千元千元) 最优解:最优解: x1~ x4::15,,40,,25,,20;;                  y1~ y3:: 0,,15,,5 .周次周次需求需求能力能力11530225403354542520成本成本5.05.15.45.5产量产量15402520库存库存01550LINGO求解求解讨论￿增加库存量增加库存量( (y1~ y3)为决策变量使为决策变量使模型清晰并便于检查模型清晰并便于检查. 检修修计划划0-1变量变量wt ::wt=1=1~ 检修检修安排在第安排在第t周周(t=1,2,3,4))• 在在4周内安排一次设备检修周内安排一次设备检修, ,占用当周占用当周15千箱生产能力千箱生产能力, ,能使检修后每周增产能使检修后每周增产5千箱,检修应排在哪一周千箱,检修应排在哪一周? ? 检修安排在任一周均可检修安排在任一周均可周次周次需求需求能力能力11530225403354542520成本成本5.05.15.45.5约束条件约束条件能能力力限限制制 产量、库存产量、库存与需求平衡与需求平衡条件不变条件不变 增加约束条件:检修增加约束条件:检修1 1次次检修修计划划目标函数不变目标函数不变0-1变量变量 wt= =1~ 检修安排在第检修安排在第t周周LINGO求解求解总费用由总费用由528降降为为527(千元千元)• 检修所导致的生产能力提高的作用检修所导致的生产能力提高的作用, 需要更长需要更长的时间才能得到充分体现的时间才能得到充分体现 .最优解:最优解:w1= =1, w2 , w3,  w4=0; x1~ x4::15, ,45, ,15, ,25;; y1~ y3::0, ,20, ,0 .讨论• 引入引入0-1变量表示变量表示检修检修 例例2   饮料的生料的生产批量批量问题 • 安排生产计划安排生产计划, 满足每周的需求满足每周的需求,  使使4周总费用最小周总费用最小. .存贮费存贮费: :每周每千箱饮料每周每千箱饮料 0.2 ( (千元千元) ) (与例与例1同同) . . 饮料厂使用同一条生产线轮流生产饮料厂使用同一条生产线轮流生产多种多种饮料饮料.若某周开工生产若某周开工生产某种某种饮料饮料, 需支出需支出生产准备费生产准备费8千元千元. 某种饮料某种饮料4周的需求量、生产能力和成本周的需求量、生产能力和成本(与例与例1同同)周次周次需求量需求量(千箱千箱)生产能力生产能力(千箱千箱)成本成本(千元千元/千箱千箱)115305.0225405.1335455.4425205.5合计合计100135  ct ~时段时段t 生产费用生产费用( (元元/ /件件););ht ~时段时段t ( (末末) )存贮费存贮费( (元元/ /件件) )st ~时段时段t 生产准备费生产准备费( (元元) );;dt ~时段时段t 市场需求市场需求( (件件) );;Mt ~时段时段t 生产能力生产能力( (件件).).假设初始库存为假设初始库存为0.制订生产计划制订生产计划, , 满足需求并使满足需求并使T个时段的总费用最小个时段的总费用最小. .决策决策变量量￿xt ~时段时段t 生产量;生产量;yt ~时段时段t ( (末末) )存贮量;存贮量;问题分析分析与例与例1的主要差别的主要差别:需考虑与生产数量无关的费用需考虑与生产数量无关的费用——生产准备费生产准备费模型建立模型建立wt =1 ~时段时段t 开工开工生产生产 ( (wt =0 ~不开工不开工).). 混合混合0-1规划模型划模型￿目目标函数函数约束条件束条件模型建立模型建立 ct ~生产费生产费, ,ht ~存贮费存贮费, ,st ~准备费准备费, ,dt ~需求量需求量, , Mt ~生产能力生产能力, ,xt ~生产量生产量, ,yt ~存贮量存贮量, ,wt ~开工开工生产生产0-1变量变量. . ~ 满足需求满足需求 • 既含可变费用既含可变费用(生产成本、生产成本、存贮费存贮费)又含固定费用又含固定费用(生产准备费生产准备费)的多阶段生产计划问题的多阶段生产计划问题.最优解:最优解:x1~ x4::15,,40,,45,,0;;总费用:总费用:554.0(千元千元) 将所给参数代入模型,用将所给参数代入模型,用LINGO求解求解模型求解模型求解与例与例1 1的最优解:的最优解: x1~ x4::15, ,45, ,15, ,25 的区别的区别!生生产批量批量(lot-sizing)问题• 关键是引入关键是引入0-1变量变量wt表示表示时段时段t是否开工生产是否开工生产. 生产中通过切割、剪裁、冲压等手段,生产中通过切割、剪裁、冲压等手段,将原材料加工成规定大小的成材将原材料加工成规定大小的成材.4.6    钢管和易拉罐下料管和易拉罐下料原料下料原料下料问题优化问题优化问题:  按照工艺要求,确定下料按照工艺要求,确定下料方案,使所用材料最省,或利润最大方案,使所用材料最省,或利润最大. 问题问题1.  如何下料最节省如何下料最节省 ? 例例1 钢管下料管下料￿ ￿问题问题2.  客户增加需求:客户增加需求:原料钢管原料钢管: :每根每根19m 50根根4m20根根6m15根根8m客户需求客户需求节省的标准是什么?节省的标准是什么?由于采用不同由于采用不同切割模式切割模式太多太多, 会增加生产和管理成本会增加生产和管理成本,规定切割模式不能超过规定切割模式不能超过3种种.  如何下料最节省?如何下料最节省?10根根5m 按照客户需要在一根原料钢管上安排切割的一种组合按照客户需要在一根原料钢管上安排切割的一种组合, ,如如: : 切割模式切割模式余料余料1 1m    4m    6m   8m 余料余料3m   4m    6m   6m 合理切割模式合理切割模式的余料应小于客户需要钢管的最小尺寸的余料应小于客户需要钢管的最小尺寸. .余料余料3m   8m   8m 钢管下料管下料￿ ￿ 为满足客户需要,按照哪些种合理模式切割,每种为满足客户需要,按照哪些种合理模式切割,每种模式切割多少根原料钢管,最为节省?模式切割多少根原料钢管,最为节省?合理切割模式合理切割模式2. 所用原料钢管所用原料钢管总根数总根数最少最少 .模式模式 4m钢管根数钢管根数6m钢管根数钢管根数8m钢管根数钢管根数余料余料(m)14003231013201341203511116030170023钢管下料管下料问题1 节省的节省的两种标准两种标准1. 原料钢管剩余原料钢管剩余总余量总余量最小最小 . xi ~按第按第i 种模式切割的原料钢管根数种模式切割的原料钢管根数( (i= =1,…,7) ) 约束约束满足需求满足需求 决策变量决策变量￿ ￿目标目标1(总余量)(总余量)按模式按模式2切割切割12根根, ,按模式按模式5切割切割15根根, ,共共2727根根, ,余料余料27m. . 模模式式4m根数根数6m根数根数8m根数根数余余料料14003m23101m32013m41203m51111m60301m70023m需需求求502015最优解:最优解:x2=12, x5=15,                  其余为其余为0;;最优值:最优值:27.整数约束:整数约束: xi 为整数为整数 目标目标2(总根数)(总根数)钢管下料管下料问题1 约束条约束条件不变件不变 最优解:最优解:x2=15,  x5=5,  x7=5, 其余为其余为0;;最优值:最优值:25.xi 为整数按模式按模式2切割切割15根,按模式根,按模式5切割切割5根,按模式根,按模式7切切割割5根,共根,共25根,余料根,余料35m .目标目标2切割减少了切割减少了2根根,  但余料增加但余料增加8m, 为什么为什么?与与目标目标1的结果的结果“共切割共切割27根,余料根,余料27m” 相比相比.  若余料没有用处若余料没有用处, 通常以总根数最少为目标通常以总根数最少为目标. . 钢管下料管下料问题1 目标目标1(总余量总余量) ~ x2=12,  x5=15,  共共2727根根, ,余余27m 目标目标2(总根数总根数) ~ x2=15,  x5=5,  x7=5,  共共25根根, 余余35m模模式式4m根数根数6m根数根数8m根数根数余料余料(m)2310151111700234m根数根数6m根数根数8m根数根数需求需求502015目标目标1512715目标目标2502015按照目标按照目标1比需求多生产比需求多生产1根根4m、、7根根6m,  共共46m,  正好等于正好等于2根原料根原料(38m)再加再加8m.原料钢管原料钢管: :每根每根19m若多生产的也视为余料若多生产的也视为余料, 则则总余量最小等价于总余量最小等价于总根数最少总根数最少. . 钢管下料管下料问题2对大规模问题,用模型的约束条件界定合理模式对大规模问题,用模型的约束条件界定合理模式. .增加一种需求:增加一种需求:10根根5m ;切割;切割模式不超过模式不超过3种种.现有现有4种种需求:需求:50根根4m, , 10根根5m, , 20根根6m, ,15根根8m,用枚举法确定合理切割模式,过于复杂,用枚举法确定合理切割模式,过于复杂. .决策变量决策变量 xi ~按第按第i 种模式切割的原料钢管根数种模式切割的原料钢管根数( (i= =1,2,3). ). r1i, r2i, r3i, r4i ~ 第第i 种切割模式下,每根原料钢管种切割模式下,每根原料钢管生产生产4m、、5m、、6m和和8m长的钢管的数量长的钢管的数量. 满足需求满足需求模式合理:每根模式合理:每根余料不超过余料不超过3m整数非线性规划模型整数非线性规划模型钢管下料管下料问题2目标函数(目标函数(总根数)总根数)约束约束条件条件整数约束:整数约束: xi ,r1i, r2i, r3i, r4i ( (i= =1,2,3) )为整为整数数 增加约束,缩小可行域,便于求解增加约束,缩小可行域,便于求解. .原料钢管总根数下界:原料钢管总根数下界: 特殊生产计划:对每根原料钢管特殊生产计划:对每根原料钢管模式模式1:切割成:切割成4根根4m钢管,需钢管,需13根;根;模式模式2:切割成:切割成1根根5m和和2根根6m钢管,需钢管,需10根;根;模式模式3:切割成:切割成2根根8m钢管,需钢管,需8根根.原料钢管总根数上界:原料钢管总根数上界:13+10+8=31 模式排列顺序可任定模式排列顺序可任定 钢管下料问题钢管下料问题2需求:需求:50根根4m,,10根根5m,,20根根6m,,15根根8m每根原料钢管长每根原料钢管长19m LINGO求解整数非线性规划模型求解整数非线性规划模型Local optimal solution found.  Objective value:           28.00000Variable   Value      Reduced Cost X( 1)        10.00000            1.000000    X( 2)        10.00000            1.000000    X( 3)        8.000000            1.000000 R( 1, 1)        3.000000            0.000000 R( 1, 2)        2.000000            0.000000 R( 1, 3)        0.000000            0.000000 R( 2, 1)        0.000000            0.000000 R( 2, 2)        1.000000            0.000000 R( 2, 3)        0.000000            0.000000 R( 3, 1)        1.000000            0.000000 R( 3, 2)        1.000000            0.000000 R( 3, 3)        0.000000            0.000000 R( 4, 1)        0.000000            0.000000 R( 4, 2)        0.000000            0.000000 R( 4, 3)        2.000000            0.000000 也是全局最优解也是全局最优解模式模式1:每根原料钢管切割成:每根原料钢管切割成3根根4m和和1根根6m钢管钢管, 共共10根根;模式模式2:每根原料钢管切割成:每根原料钢管切割成2根根4m、、1根根5m和和1根根6m钢管钢管,,共共10根;根;模式模式3:每根原料钢管切割成:每根原料钢管切割成2根根8m钢管,共钢管,共8根根.原料钢管总根数为原料钢管总根数为28根根. 板材板材规格规格2::长方形,长方形,32 28cm,,2万张万张.例例2 易拉罐下料易拉罐下料每周工作每周工作40h,每只易拉罐利润,每只易拉罐利润0.10元,原料余料损失元,原料余料损失0.001元元 / cm2(不能装配的罐身、不能装配的罐身、盖、盖、底也是余料底也是余料).模式模式1::1.5s模式模式2::2s模式模式3::1s模式模式4::3s上盖上盖下底下底罐罐身身罐身高罐身高10cm,,上上盖盖、下底直、下底直径均径均5cm. 板材规格板材规格1::正方形,边长正方形,边长24cm,,5万张万张. .如何安排每周生产?如何安排每周生产?   罐身个数罐身个数底、盖底、盖个数个数余料损失余料损失((cm2))冲压时间冲压时间((s))模式模式1110222.61.5模式模式224183.32模式模式3016261.81模式模式445169.53模式模式1: 正方形正方形边长边长24cm 问题分析分析计算各种模式下的余料损失计算各种模式下的余料损失 上、下底直径上、下底直径d=5cm,,罐身高罐身高h=10cm. 模式模式1 余料损失余料损失:  242-10d2/4 -  dh=222.6 cm2 问题分析分析目标目标: :易拉罐利润扣除原料余料损失后的净利润最大易拉罐利润扣除原料余料损失后的净利润最大. 约束:约束:每周工作时间不超过每周工作时间不超过40h;;            原料数量:原料数量:规格规格1(模式(模式1 ~3))5万张,万张, 规格规格2(模式(模式4))2万张;万张;            罐身和底、盖的配套组装罐身和底、盖的配套组装 .注意:不能装配的罐身、上下底也是余料注意:不能装配的罐身、上下底也是余料.决策决策变量量￿xi ~ 按照第按照第i 种模式的生产张数种模式的生产张数( (i= =1,2,3,4) );;y1 ~ 一周生产的易拉罐个数;一周生产的易拉罐个数;y2 ~ 不配套的罐身个数;不配套的罐身个数;y3 ~ 不配套的底、盖个数不配套的底、盖个数. . 模型建立模型建立 目目标￿约束约束条件条件 时间约束时间约束 原料约束原料约束 产量产量余料余料时间时间x1222.61.5x2183.32x3261.81x4169.53模型建立模型建立y1 ~ 易拉罐个数;易拉罐个数;y2 ~ 不配套的罐身;不配套的罐身;y3 ~ 不配套的底、盖不配套的底、盖. .每只易拉罐利润每只易拉罐利润0.10元,元,余料损失余料损失0.001元元 / cm2罐身罐身面积面积 dh=157.1 cm2 底盖底盖面积面积 d2/4=19.6 cm2(40h) 约束约束条件条件 配套约束配套约束 y1 ~ 易拉罐个数;易拉罐个数;y2 ~ 不配套的罐身;不配套的罐身;y3 ~ 不配套的底、盖不配套的底、盖. .罐身罐身底、盖底、盖1102401645产量产量x1x2x3x4虽然虽然xi和和y1,,y2,,y3应是整数,但是因生产量很大,应是整数,但是因生产量很大,可以把它们看成实数,从而用线性规划模型处理可以把它们看成实数,从而用线性规划模型处理 . 将所有决策变量扩大将所有决策变量扩大10000倍(倍(xi ~万张,万张,yi ~万件)万件)￿ ￿￿数据之间的数量级差别太大,可以进行预处理,数据之间的数量级差别太大,可以进行预处理,缩小数据之间的差别,便于减少计算误差缩小数据之间的差别,便于减少计算误差. .模式模式2生产生产40125张,张,模式模式3生产生产3750张,张,模式模式4生产生产20000张,张,共产易拉罐共产易拉罐160250个个( (罐身和底、盖无剩余罐身和底、盖无剩余) ),,净利润为净利润为4298元元 .模型求解模型求解Objective value:              0.4298337 Variable    Value          Reduced CostY1        16.02500            0.000000X1        0.000000            0.000050X2        4.012500            0.000000X3       0.3750000           0.000000X4        2.000000            0.000000Y2        0.000000           0.2233312Y3        0.000000           0.0364844 下料下料问题的建模的建模￿ ￿• 确定下料模式确定下料模式 • 构造优化模型构造优化模型 规格不太多,可枚举下料模式,建立规格不太多,可枚举下料模式,建立整数线性规划整数线性规划模型,模型,否则要构造否则要构造整数非线性规划整数非线性规划模型,求解困难,可用模型,求解困难,可用缩小缩小可行域可行域的方法进行化简,但要保证最优解的存在的方法进行化简,但要保证最优解的存在.一维问题(如钢管下料)一维问题(如钢管下料)二维问题(如易拉罐下料)二维问题(如易拉罐下料)具体问题具体分析(比较复杂具体问题具体分析(比较复杂 )) 例例1 1 广告投入广告投入问题1万元广告费能够新吸引到的目标人数万元广告费能够新吸引到的目标人数(万人万人)5种媒体上分别花费多少广告费?种媒体上分别花费多少广告费? 人群人群1 人群人群2 人群人群3 人群人群4 人群人群5 人群人群6 人群人群7 104505 2网络网络 1030512  电视电视20    53报纸报纸8    610电台电台 6510114 最小最小(要求要求)254060120401115最大最大(可能可能)6070120140802555“少少”广告费广告费与与“多多”吸引人吸引人数数的数量关系的数量关系 多目标多目标aijljujji4.7 广告投入与升广告投入与升级调薪薪 决策变量决策变量xi ~ 投入第投入第 i 种媒体的广告费种媒体的广告费(万元万元)模型模型约束条件约束条件单目标规划单目标规划目标函数目标函数先先在在最低要求下,建立广告费最少的模型最低要求下,建立广告费最少的模型yj ~ 吸引到的吸引到的 j 类目标人群的数量类目标人群的数量(万人万人)xi ≥ 0, i=1,2,…,5 模型模型多目标规划多目标规划目目 标标 2双目标:双目标:广告费最少广告费最少、吸引人数最多、吸引人数最多综合:综合:约束同前约束同前 求解求解 LINGO软件件实现￿约束法:不同广告费约束下,最大化吸引人数约束法:不同广告费约束下,最大化吸引人数广告费广告费     总人数总人数 (万元万元)       (万人万人)6.50000     343.7997.00000     373.057……13.5000     546.24814.0000     550.000LINGO - SUBMODEL:子模型,实现不同的约束:子模型,实现不同的约束有效前沿有效前沿 例例2 2 升级调薪升级调薪升级调薪升级调薪: 不得越不得越级级问题薪资等级薪资等级IIIIII年薪年薪/万元万元201510定编定编/人人121515现编现编/人人91215为该单位拟定一个为该单位拟定一个满意的满意的升级调薪方案升级调薪方案依次依次考虑以下要求:考虑以下要求:1) 年工资总额尽可能不超过年工资总额尽可能不超过600万元万元2) 每级的人数尽可能不超过定编人数每级的人数尽可能不超过定编人数3) II、、III级的升级面尽可能达到级的升级面尽可能达到20%4) III级不足编制的人数可录用新员工级不足编制的人数可录用新员工 决策变量决策变量 约束条件约束条件模型模型x1 ~ II级升级升I级级人数人数x2 ~ III级升级升II级级人数人数x3 ~ 新录用新录用III级级人人数数要求要求1))薪资等级薪资等级IIIIII年薪年薪/万元万元 201510定编定编/人人121515现编现编/人人9121520(9+x1)+15(12-x1+x2)+10(15-x2+x3)年工资总额年工资总额尽可能不超过尽可能不超过600万元万元 510+5x1+5x2+10x3正偏差正偏差  = 600负偏差负偏差均非均非负负,至少,至少1个为个为0 约束条件约束条件模型模型要求要求2))定编定编 薪资等级薪资等级IIIIII年薪年薪/万元万元 201510定编定编/人人121515现编现编/人人91215要求要求3))升级面升级面要求要求4))新人:新人:x3尽量大尽量大类似类似优先级优先级P1>>P2>>P3>>P4>0目标规划目标规划xi ≥ 0为整数为整数;;  ,,   ≥ 0 求解求解 LINGO软件件实现￿目目标规划,逐划,逐级求解求解最优解最优解::x1=3,,x2=5,,x3=5即从即从II级提升级提升3人至人至I级,级,从从III级提升级提升5人至人至II级,级,新录用新录用III级人员为级人员为5名名薪金不超过薪金不超过600万元万元不超编不超编升级面升级面 ≥ 20% 例例1 1 投资投资组合组合•若还可投资若还可投资年收益率年收益率5%的的国库券,应如何调整计划国库券,应如何调整计划??假设你在假设你在1955年投资这年投资这3种种股票,希望年收益率至少达股票,希望年收益率至少达到到15%,应如何投资,应如何投资??问题3种股票种股票历年增值信息如表历年增值信息如表年份年份股票股票A 股票股票B 股票股票C19431.3001.2251.14919441.1031.2901.26019451.2161.2161.41919460.9540.7280.92219470.9291.1441.16919481.0561.1070.96519491.0381.3211.13319501.0891.3051.73219511.0901.1951.02119521.0831.3901.13119531.0350.9281.00619541.1761.7151.908•若只若只希望年收益率至少达希望年收益率至少达到到10%,应如何调整计划,应如何调整计划??4.8  投投资的的风险与收益与收益 假设假设决策决策变量量￿约束条件束条件模型模型Ri (i=1,2,3) ~ A, B, C每年的收益率每年的收益率(表中的数表中的数据减去据减去1), 随机变量随机变量期望:期望:ER1=0.0891, ER2=0.2137, ER3=0.2346市场上没有其他投资渠道,且手上资金市场上没有其他投资渠道,且手上资金(不妨假设(不妨假设为为1个单位)必须全部个单位)必须全部用完用完x1,,x2 ,,x3   0,,x1+x2 +x3 = 1协方差:协方差:xi (i=1,2,3) ~ 投资投资A, B, C的的比例比例 模模￿￿￿￿型型￿ ￿目目标函数函数￿二次二次规划规划模型模型(QP)模型模型年收益年收益 R=x1R1+x2R2+x3R3期望:期望:ER= x1ER1+x2ER2+x3ER3Min V方差:方差:x1+x2 +x3 = 1x1,,x2 ,,x3   0s.t. x1ER1+x2ER2+x3ER3  ≥ 0.15 求解求解 期望期望收益率收益率15%ABC各各占占53.01%,,35.64%,,11.35%;;风险(收益方差)风险(收益方差)0.0224,标准差,标准差0.1497LINGO软件件实现￿扩展展讨论A::   8.69%B:: 42.85%C:: 14.34%,,券券::34.12%;;方差:方差:0.0208国库券收益率国库券收益率5%(无风险无风险)期望期望收益率收益率10%A::   4.34%,B:: 21.43%C::   7.17%券券::67.06%;;方差:方差:0.0052“分离定理分离定理”::风险资产风险资产之间之间相对相对比例不变比例不变(Tobin----获获1981诺贝尔诺贝尔经济学经济学奖奖) 例例2 投资的收益和风险投资的收益和风险使净收益尽可能大,而总体风险使净收益尽可能大,而总体风险(最大者最大者)尽可能小尽可能小问题给定资金给定资金M,设计投资组合方案,设计投资组合方案(选自选自1998年全国大学生数学建模竞赛年全国大学生数学建模竞赛A题)题)资产资产Si收益率收益率ri (%)风险损失风险损失率率qi (%)交易费率交易费率pi (%)阈值阈值ui (元元) S1282.51103S2211.52198S3235.54.552S4252.66.540存款存款S05000另一组数据另一组数据n=15n=4种资产种资产 V(x) ~ 投资的净收益,投资的净收益,Q(x) ~ 风险风险决策决策变量量￿目目标函数函数￿约束条件束条件模型模型x = (x0, x1,…, xn)  ~ 投资每种资产的金额投资每种资产的金额 购买购买Si(i=1,…,n)的交易费的交易费  c0(x0)=0购买购买Si(i=0,…,n)的的净收益净收益  Vi(xi)= rixi - ci(xi) V(x) ~ 投资的净收益,投资的净收益,Q(x) ~ 风险风险决策决策变量量￿目目标函数函数￿约束条件束条件模型模型x = (x0, x1,…, xn)  ~ 投资每种资产的金额投资每种资产的金额 风险损失(最大损失作为指标)风险损失(最大损失作为指标)x ≥ 0资金平衡资金平衡多目标规划多目标规划 求解求解 LINGO软件件实现￿加权法加权法M=1万元万元有效前沿有效前沿 多目多目标规划模型小划模型小结• 解的概念:解的概念:非劣解、弱非劣解非劣解、弱非劣解.• 几何意义:几何意义:有效前沿、弱有效有效前沿、弱有效前沿前沿 • 求解思路:求解思路:效用函数法效用函数法(加权法加权法),约束法,约束法.• 用用LINGO求解,通过求解,通过 Submodel 功能功能计算计算(弱)非劣解集、有效前沿(弱)非劣解集、有效前沿. 个人观点供参考,欢迎讨论 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.