视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
运筹学实验作业
2025-10-02 04:46:31 责编:小OO
文档
运 筹 学

实 验 报 告

专业:信息与计算科学
班级:
学号:
姓名:

相关问题说明:

一、实验性质和教学目的

运筹学实验课是从运筹学中若干模型出发,针对性得学习相关软件,以求学生掌握解决实际问题的方法。

通过运筹学中的实例,让学生学会lingo软件的使用方法,最后让学生利用lingo软件解决运筹学中的问题。

二、实验基本要求

要求学生:

1. 实验前认真做好理论准备,仔细阅读实验指导书;

2. 遵从教师指导,认真完成实验任务,按时按质提交实验报告。

二、主要参考资料

1.LINGO软件

3. 优化建模与LINDO/LINGO软件,清华大学出版社,2005

4.运筹学编写组主编,运筹学(第四版),清华大学出版社,2012

5.胡运权主编,运筹学教程(第二版),清华大学出版社,2003

一、线性规划问题:

1、给出使用lingo软件求解该模型的原始代码;

2、计算结果(包括灵敏度分析,求解结果粘贴);

3、回答下列问题:

a) 最优解及最优目标函数值是多少;

b) 资源的对偶价格各为多少,并说明对偶价格的含义;

c) 为了使目标函数值增加最多,让你选择一个约束条件,将它的常数项增加一个单位,你将选择哪一个约束条件?这时目标函数值将是多少?

d) 对x2的目标函数系数进行灵敏度分析;

e) 对第2个约束的约束右端项进行灵敏度分析;

f ) 结合本题的结果解释“Reduced Cost”的含义。

1、原始代码

max=4*x1+3*x2;

9*x1+8*x2<12;

7*x1+11*x2<24;

9*x1+11*x2<13;

2、结果:

Global optimal solution found.

  Objective value:                              5.333333

  Infeasibilities:                              0.000000

  Total solver iterations:                             2

                       Variable           Value        Reduced Cost

                             X1        1.333333            0.000000

                             X2        0.000000           0.5555556

                            Row    Slack or Surplus      Dual Price

                              1        5.333333            1.000000

                              2        0.000000           0.4444444

                              3        14.66667            0.000000

                              4        1.000000            0.000000

灵敏度分析:

 Ranges in which the basis is unchanged:

                                      Objective Coefficient Ranges

                                  Current        Allowable        Allowable

                Variable      Coefficient         Increase         Decrease

                      X1         4.000000         INFINITY        0.6250000

                      X2         3.000000        0.5555556         INFINITY

                                           Righthand Side Ranges

                     Row          Current        Allowable        Allowable

                                      RHS         Increase         Decrease

                       2         12.00000         1.000000         12.00000

                       3         24.00000         INFINITY         14.66667

                       4         13.00000         INFINITY         1.000000

3、回答问题

(a)最优解为:x1=1.333333,x2=0.000000;最优目标函数值是5.333333。

(b)第二行资源的对偶价格为0.4444444,3、4行的对偶价格为0.000000、0.000000;

     表示当对应约束有微小变动时,目标函数的变化率。

     如:第一个约束条件变为9*x1+8*x2<13时,目标函数值将变为 

         5.333333+0.4444444= =5.7777774                                     

(c)为了使目标函数值增加最多,选择第一个约束条件,将它的常数项增加一个单位,这时目标函数值将是5.7777774 。

(d)x2原来为3.000000,当它在[3-∞,3+0.5555556]=[-∞,3.5555556]范围变化时,最优基保持不变。

(e)第2行约束中右端项原来为24,当它在

[24-14.66667,24+∞]=[9.33333,∞]范围变化时,最优基保持不变。      

(f)“Reduced Cost”代表的值表示当变量有微小变动时, 目标函数的变化率。

本题中变量x2的reduced cost的值为0.5555556,表示当非基变量x2的值从0变为 1时最优的目标函数值z=5.333333+0.4444444= =5.7777774。

                         

二、运输问题:

如下是一个最小费用运输问题。产销量及单位运价如下表。

(1) 给出使用lingo软件求解该问题的原始代码;

(2) 计算结果(决策变量求解结果粘贴)

 

(1)原始代码:

sets:

  warehouses/WH1..WH6/: supply;

  vendors/V1..V8/: demand;

  links(warehouses,vendors): cost, volume;

endsets

  min=@sum(links: cost*volume);!目标函数;

  @for(vendors(J):

    @sum(warehouses(I): volume(I,J))=demand(J));!需求约束;

  @for(warehouses(I):

    @sum(vendors(J): volume(I,J))<=supply(I));!供应约束;

data:

  supply=60 55 51 43 41 52;

  demand=35 37 22 32 41 32 43 38;

  cost=6 2 6 7 4 2 5 9

       3 6 5 3 8 9 8 2

       7 6 1 5 7 4 3 3 

       5 2 7 3 9 2 7 1

       2 3 9 5 5 2 6 5 

       5 7 2 2 3 1 4 3;

enddata

end

(2)求解结果:

  Global optimal solution found.

  Objective value:                              634.0000

  Infeasibilities:                              0.000000

  Total solver iterations:                            16

                       Variable           Value        Reduced Cost

                   SUPPLY( WH1)        60.00000            0.000000

                   SUPPLY( WH2)        55.00000            0.000000

                   SUPPLY( WH3)        51.00000            0.000000

                   SUPPLY( WH4)        43.00000            0.000000

                   SUPPLY( WH5)        41.00000            0.000000

                   SUPPLY( WH6)        52.00000            0.000000

                    DEMAND( V1)        35.00000            0.000000

                    DEMAND( V2)        37.00000            0.000000

                    DEMAND( V3)        22.00000            0.000000

                    DEMAND( V4)        32.00000            0.000000

                    DEMAND( V5)        41.00000            0.000000

                    DEMAND( V6)        32.00000            0.000000

                    DEMAND( V7)        43.00000            0.000000

                    DEMAND( V8)        38.00000            0.000000

                 COST( WH1, V1)        6.000000            0.000000

                 COST( WH1, V2)        2.000000            0.000000

                 COST( WH1, V3)        6.000000            0.000000

                 COST( WH1, V4)        7.000000            0.000000

                 COST( WH1, V5)        4.000000            0.000000

                 COST( WH1, V6)        2.000000            0.000000

                 COST( WH1, V7)        5.000000            0.000000

                 COST( WH1, V8)        9.000000            0.000000

                 COST( WH2, V1)        3.000000            0.000000

                 COST( WH2, V2)        6.000000            0.000000

                 COST( WH2, V3)        5.000000            0.000000

                 COST( WH2, V4)        3.000000            0.000000

                 COST( WH2, V5)        8.000000            0.000000

                 COST( WH2, V6)        9.000000            0.000000

                 COST( WH2, V7)        8.000000            0.000000

                 COST( WH2, V8)        2.000000            0.000000

                 COST( WH3, V1)        7.000000            0.000000

                 COST( WH3, V2)        6.000000            0.000000

                 COST( WH3, V3)        1.000000            0.000000

                 COST( WH3, V4)        5.000000            0.000000

                 COST( WH3, V5)        7.000000            0.000000

                 COST( WH3, V6)        4.000000            0.000000

                 COST( WH3, V7)        3.000000            0.000000

                 COST( WH3, V8)        3.000000            0.000000

                 COST( WH4, V1)        5.000000            0.000000

                 COST( WH4, V2)        2.000000            0.000000

                 COST( WH4, V3)        7.000000            0.000000

                 COST( WH4, V4)        3.000000            0.000000

                 COST( WH4, V5)        9.000000            0.000000

                 COST( WH4, V6)        2.000000            0.000000

                 COST( WH4, V7)        7.000000            0.000000

                 COST( WH4, V8)        1.000000            0.000000

                 COST( WH5, V1)        2.000000            0.000000

                 COST( WH5, V2)        3.000000            0.000000

                 COST( WH5, V3)        9.000000            0.000000

                 COST( WH5, V4)        5.000000            0.000000

                 COST( WH5, V5)        5.000000            0.000000

                 COST( WH5, V6)        2.000000            0.000000

                 COST( WH5, V7)        6.000000            0.000000

                 COST( WH5, V8)        5.000000            0.000000

                 COST( WH6, V1)        5.000000            0.000000

                 COST( WH6, V2)        7.000000            0.000000

                 COST( WH6, V3)        2.000000            0.000000

                 COST( WH6, V4)        2.000000            0.000000

                 COST( WH6, V5)        3.000000            0.000000

                 COST( WH6, V6)        1.000000            0.000000

                 COST( WH6, V7)        4.000000            0.000000

                 COST( WH6, V8)        3.000000            0.000000

               VOLUME( WH1, V1)        0.000000            4.000000

               VOLUME( WH1, V2)        31.00000            0.000000

               VOLUME( WH1, V3)        0.000000            3.000000

               VOLUME( WH1, V4)        0.000000            5.000000

               VOLUME( WH1, V5)        29.00000            0.000000

               VOLUME( WH1, V6)        0.000000            0.000000

               VOLUME( WH1, V7)        0.000000            0.000000

               VOLUME( WH1, V8)        0.000000            8.000000

               VOLUME( WH2, V1)        0.000000            0.000000

               VOLUME( WH2, V2)        0.000000            3.000000

               VOLUME( WH2, V3)        0.000000            1.000000

               VOLUME( WH2, V4)        32.00000            0.000000

               VOLUME( WH2, V5)        0.000000            3.000000

               VOLUME( WH2, V6)        0.000000            6.000000

               VOLUME( WH2, V7)        0.000000            2.000000

               VOLUME( WH2, V8)        1.000000            0.000000

               VOLUME( WH3, V1)        0.000000            7.000000

               VOLUME( WH3, V2)        0.000000            6.000000

               VOLUME( WH3, V3)        8.000000            0.000000

               VOLUME( WH3, V4)        0.000000            5.000000

               VOLUME( WH3, V5)        0.000000            5.000000

               VOLUME( WH3, V6)        0.000000            4.000000

               VOLUME( WH3, V7)        43.00000            0.000000

               VOLUME( WH3, V8)        0.000000            4.000000

               VOLUME( WH4, V1)        0.000000            3.000000

               VOLUME( WH4, V2)        6.000000            0.000000

               VOLUME( WH4, V3)        0.000000            4.000000

               VOLUME( WH4, V4)        0.000000            1.000000

               VOLUME( WH4, V5)        0.000000            5.000000

               VOLUME( WH4, V6)        0.000000            0.000000

               VOLUME( WH4, V7)        0.000000            2.000000

               VOLUME( WH4, V8)        37.00000            0.000000

               VOLUME( WH5, V1)        35.00000            0.000000

               VOLUME( WH5, V2)        0.000000            1.000000

               VOLUME( WH5, V3)        0.000000            6.000000

               VOLUME( WH5, V4)        0.000000            3.000000

               VOLUME( WH5, V5)        0.000000            1.000000

               VOLUME( WH5, V6)        6.000000            0.000000

               VOLUME( WH5, V7)        0.000000            1.000000

               VOLUME( WH5, V8)        0.000000            4.000000

               VOLUME( WH6, V1)        0.000000            4.000000

               VOLUME( WH6, V2)        0.000000            6.000000

               VOLUME( WH6, V3)        14.00000            0.000000

               VOLUME( WH6, V4)        0.000000            1.000000

               VOLUME( WH6, V5)        12.00000            0.000000

               VOLUME( WH6, V6)        26.00000            0.000000

               VOLUME( WH6, V7)        0.000000            0.000000

               VOLUME( WH6, V8)        0.000000            3.000000

                            Row    Slack or Surplus      Dual Price

                              1        634.0000           -1.000000

                              2        0.000000           -3.000000

                              3        0.000000           -3.000000

                              4        0.000000           -4.000000

                              5        0.000000           -3.000000

                              6        0.000000           -5.000000

                              7        0.000000           -3.000000

                              8        0.000000           -6.000000

                              9        0.000000           -2.000000

                             10        0.000000            1.000000

                             11        22.00000            0.000000

                             12        0.000000            3.000000

                             13        0.000000            1.000000

                             14        0.000000            1.000000

                             15        0.000000            2.000000

三、一般整数规划问题:

新天地购物广场某一层各时段(每2h为一时段)需要的服务员人数见下表。按规定,服务员连续工作8h(即四个时段)为一班。现要求安排服务员的工作时间,使服务部门服务员总数最少。

时  段

12345678
服务员最少数目201618222616106
(1) 给出使用lingo软件求解该问题的原始代码;

(2) 计算结果(决策变量求解结果粘贴)

(1)原始代码:

model:

sets:

  time/x1..x8/: required,start;

endsets

data:

  !每天所需的最少职员数;

  required = 20 16 18 22 26 16 10 6;

enddata

!最小化每天所需职员数;

  min=@sum(time: start);

  @for(time (J):

    @sum(time(I) | I#le# 4:

start(@wrap(J+I+2,8))) >= required(J));

end

(2)计算结果:

  Global optimal solution found.

  Objective value:                              46.00000

  Infeasibilities:                              0.000000

  Total solver iterations:                             3

                       Variable           Value        Reduced Cost

                  REQUIRED( X1)        20.00000            0.000000

                  REQUIRED( X2)        16.00000            0.000000

                  REQUIRED( X3)        18.00000            0.000000

                  REQUIRED( X4)        22.00000            0.000000

                  REQUIRED( X5)        26.00000            0.000000

                  REQUIRED( X6)        16.00000            0.000000

                  REQUIRED( X7)        10.00000            0.000000

                  REQUIRED( X8)        6.000000            0.000000

                     START( X1)        26.00000            0.000000

                     START( X2)        0.000000            0.000000

                     START( X3)        0.000000            0.000000

                     START( X4)        4.000000            0.000000

                     START( X5)        16.00000            0.000000

                     START( X6)        0.000000            0.000000

                     START( X7)        0.000000            0.000000

                     START( X8)        0.000000            0.000000

                            Row    Slack or Surplus      Dual Price

                              1        46.00000           -1.000000

                              2        0.000000           -1.000000

                              3        0.000000            0.000000

                              4        8.000000            0.000000

                              5        4.000000            0.000000

                              6        0.000000           -1.000000

                              7        14.00000            0.000000

                              8        10.00000            0.000000

                              9        14.00000            0.000000

 

四、指派问题:

   已知如下效率矩阵,求极大化指派问题。

B1

B2

B3

B4

B5

A1

4871512
A2

79171410
A3

691287
A4

6714610
A5

6912106
(1) 给出使用lingo软件求解该问题原始代码;

(2) 计算结果(决策变量求解结果粘贴) 

(1)原始代码:

model:

  !5个工人,5个工作的分配问题;

sets:

  workers/w1..w5/;

  jobs/j1..j5/;

  links(workers,jobs):cost,volume;

endsets

  !目标函数;

  max=@sum(links: cost*volume);

  !每个工人只能有一份工作;

  @for(workers(I):

    @sum(jobs(J): volume(I,J))=1;

  );

  !每份工作只能有一个人;

  @for(jobs(J):

    @sum(workers(I): volume(I,J))=1;

  );

data:

  cost=4 8 7 15 12

       7 9 17 14 10

       6 9 12 8 7

       6 7 14 6 10

       6 9 12 10 6;

enddata

end

(2)计算结果:

  Global optimal solution found.

  Objective value:                              57.00000

  Infeasibilities:                              0.000000

  Total solver iterations:                            10

                       Variable           Value        Reduced Cost

                  COST( W1, J1)        4.000000            0.000000

                  COST( W1, J2)        8.000000            0.000000

                  COST( W1, J3)        7.000000            0.000000

                  COST( W1, J4)        15.00000            0.000000

                  COST( W1, J5)        12.00000            0.000000

                  COST( W2, J1)        7.000000            0.000000

                  COST( W2, J2)        9.000000            0.000000

                  COST( W2, J3)        17.00000            0.000000

                  COST( W2, J4)        14.00000            0.000000

                  COST( W2, J5)        10.00000            0.000000

                  COST( W3, J1)        6.000000            0.000000

                  COST( W3, J2)        9.000000            0.000000

                  COST( W3, J3)        12.00000            0.000000

                  COST( W3, J4)        8.000000            0.000000

                  COST( W3, J5)        7.000000            0.000000

                  COST( W4, J1)        6.000000            0.000000

                  COST( W4, J2)        7.000000            0.000000

                  COST( W4, J3)        14.00000            0.000000

                  COST( W4, J4)        6.000000            0.000000

                  COST( W4, J5)        10.00000            0.000000

                  COST( W5, J1)        6.000000            0.000000

                  COST( W5, J2)        9.000000            0.000000

                  COST( W5, J3)        12.00000            0.000000

                  COST( W5, J4)        10.00000            0.000000

                  COST( W5, J5)        6.000000            0.000000

                VOLUME( W1, J1)        0.000000            7.000000

                VOLUME( W1, J2)        0.000000            6.000000

                VOLUME( W1, J3)        0.000000            10.00000

                VOLUME( W1, J4)        1.000000            0.000000

                VOLUME( W1, J5)        0.000000            1.000000

                VOLUME( W2, J1)        0.000000            4.000000

                VOLUME( W2, J2)        0.000000            5.000000

                VOLUME( W2, J3)        1.000000            0.000000

                VOLUME( W2, J4)        0.000000            1.000000

                VOLUME( W2, J5)        0.000000            3.000000

                VOLUME( W3, J1)        1.000000            0.000000

                VOLUME( W3, J2)        0.000000            0.000000

                VOLUME( W3, J3)        0.000000            0.000000

                VOLUME( W3, J4)        0.000000            2.000000

                VOLUME( W3, J5)        0.000000            1.000000

                VOLUME( W4, J1)        0.000000            2.000000

                VOLUME( W4, J2)        0.000000            4.000000

                VOLUME( W4, J3)        0.000000            0.000000

                VOLUME( W4, J4)        0.000000            6.000000

                VOLUME( W4, J5)        1.000000            0.000000

                VOLUME( W5, J1)        0.000000            0.000000

                VOLUME( W5, J2)        1.000000            0.000000

                VOLUME( W5, J3)        0.000000            0.000000

                VOLUME( W5, J4)        0.000000            0.000000

                VOLUME( W5, J5)        0.000000            2.000000

                            Row    Slack or Surplus      Dual Price

                              1        57.00000            1.000000

                              2        0.000000            14.00000

                              3        0.000000            14.00000

                              4        0.000000            9.000000

                              5        0.000000            11.00000

                              6        0.000000            9.000000

                              7        0.000000           -3.000000

                              8        0.000000            0.000000

                              9        0.000000            3.000000

                             10        0.000000            1.000000

                             11        0.000000           -1.000000

故指派问题结果为:A1做B4工作,A2做B3工作,A3做B1工作,A4做B5工作,A5做B2工作。下载本文

显示全文
专题