GAMS Example

33 篇文章 0 订阅
 
题目:

                Exercise # 3 (GAMS (2009))
Question 1 Given the transportation problem with the following parameters:
           Distance in 1000s of miles New York      Chicago   Topeka
                               Seattle                    2.5       1.7       1.8
                               San Diego             2.3       1.9       1.4
                           
                                                             Demand at markets
                     Plant capacities
                                                                New York 400
                        Seattle 350
                                                                    Chicago 300
                       San Diego 600
                                                                     Topeka 275
Take the freight to be 90 dollars per thousand miles. Unless otherwise stated, in each consecutive question use the setting from the previous one.

(c) Change the demand at New York to 375 cases and compare the results.
  
Consider the setting from (c) again. Change the objective function from cost minimization to profit maximization. To do this, maximize the difference between revenue and cost. The revenue in each market can be computed by multiplying the total quantity delivered to that market times the price. In addition to the transportation cost there is a production cost which is equal to a constant times the quantity produced and the constants are different for each plant as given below.
                                     Seattle 0.2
                                  San Diego 0.4
The prices are given by:
                          New York Chicago Topeka
                              0.9        0.7      0.8
The values in both tables are given in thousands of dollars per case. Implement the changes in GAMS.

题解:
* initial Sets
set i markets / NewYork, Chicago, Topeka / ;
set j Plant capacities / Seattle, SanDiego / ;

* initial parameters
parameter a(i) Demand at markets
/ NewYork        375
  Chicago        300
  Topeka         275 / ;

parameter b(j) Plant capacities 
/ Seattle        350
  SanDiego       600 / ;

parameter ar(i) Market Preis  in thousands of dollars per case
/ NewYork        0.9
  Chicago        0.7
  Topeka         0.8 / ;

parameter bc(j) Plant cost  in thousands of dollars per case
/ Seattle        0.2
  SanDiego       0.4 / ;

* initial table
table d(i,j) Distance in 1000s of miles
         Seattle SanDiego
NewYork  2.5     2.3
Chicago  1.7     1.9
Topeka   1.8     1.4      ;

*initial scalar
scalar f the freight to be 90 dollars per thousand miles /90/ ;

parameter c(i,j) transport cost in thousands of dollars per case ;
          c(i,j) = f * d(i,j) / 1000 ;

* initial variables
positive variable x(i,j) quantities of freight ;
variable z      total transport cost ;
variable z1     total production cost ;
variable r total revenue ;
variable rmz different between z and r ;

*initial eqs
equations
         cost      total transport cost  (1)
cost1     total production cost (1)
revenue   total revenue (1)
diff   revenue - cost (1)
         demand(i) demand functions (3)
         supply(j) supply functions (2) ;

* transportation cost * quantity
cost..  z =e= sum((i,j),c(i,j)*x(i,j)) ;

* st.
demand(i).. sum(j,x(i,j)) =g= a(i) ;

* st.
supply(j).. sum(i,x(i,j)) =l= b(j) ;

* production cost * quantity
cost1.. z1 =e= sum((i,j),bc(j)*x(i,j)) ;

* market price * quantity
revenue.. r =e= sum((i,j),x(i,j)*ar(i)) ;

* revenue
diff.. rmz =e= r - z - z1; 

* modeling and solve
model transport /all/ ;
solve transport using lp maximizing rmz ;

display x.l,z.l,z1.l,r.l,rmz.l;

编译器:

GAMS Rev 233  LEX-LEI 23.3.1 x86_64/Linux                                                          11/19/09 02:44:49 Page 1
G e n e r a l   A l g e b r a i c   M o d e l i n g   S y s t e m
C o m p i l a t i o n


   1  * initial Sets
   2  set i markets / NewYork, Chicago, Topeka / ;
   3  set j Plant capacities / Seattle, SanDiego / ;
   4   
   5  * initial parameters
   6  parameter a(i) Demand at markets
   7  / NewYork        375
   8    Chicago        300
   9    Topeka         275 / ;
  10   
  11  parameter b(j) Plant capacities
  12  / Seattle        350
  13    SanDiego       600 / ;
  14   
  15  parameter ar(i) Market Preis  in thousands of dollars per case
  16  / NewYork        0.9
  17    Chicago        0.7
  18    Topeka         0.8 / ;
  19   
  20  parameter bc(j) Plant cost  in thousands of dollars per case
  21  / Seattle        0.2
  22    SanDiego       0.4 / ;
  23   
  24  * initial table
  25  table d(i,j) Distance in 1000s of miles
  26           Seattle SanDiego
  27  NewYork  2.5     2.3
  28  Chicago  1.7     1.9
  29  Topeka   1.8     1.4      ;
  30   
  31  *initial scalar
  32  scalar f the freight to be 90 dollars per thousand miles /90/ ;
  33   
  34  parameter c(i,j) transport cost in thousands of dollars per case ;
  35            c(i,j) = f * d(i,j) / 1000 ;
  36   
  37  * initial variables
  38  positive variable x(i,j) quantities of freight ;
  39  variable z      total transport cost ;
  40  variable z1     total production cost ;
  41  variable r      total revenue ;
  42  variable rmz    different between z and r ;
  43   
  44  *initial eqs
  45  equations
  46           cost      total transport cost  (1)
  47           cost1     total production cost (1)
  48           revenue   total revenue (1)
  49           diff      revenue - cost (1)
  50           demand(i) demand functions (3)
  51           supply(j) supply functions (2) ;
  52   
  53  * transportation cost * quantity
  54  cost..  z =e= sum((i,j),c(i,j)*x(i,j)) ;
  55   
  56  * st.
  57  demand(i).. sum(j,x(i,j)) =g= a(i) ;
  58   
  59  * st.
  60  supply(j).. sum(i,x(i,j)) =l= b(j) ;
  61   
  62  * production cost * quantity
  63  cost1.. z1 =e= sum((i,j),bc(j)*x(i,j)) ;
  64   
  65  * market price * quantity
  66  revenue.. r =e= sum((i,j),x(i,j)*ar(i)) ;
  67   
  68  * revenue
  69  diff.. rmz =e= r - z - z1;
  70   
  71  * modeling and solve
  72  model transport /all/ ;
  73  solve transport using lp maximizing rmz ;
GAMS Rev 233  LEX-LEI 23.3.1 x86_64/Linux                                                          11/19/09 02:44:49 Page 2
G e n e r a l   A l g e b r a i c   M o d e l i n g   S y s t e m
C o m p i l a t i o n


  74   
  75  display x.l,z.l,z1.l,r.l,rmz.l;
  76   
  77   


COMPILATION TIME     =        0.002 SECONDS      3 Mb  LEX233-233 Oct 30, 2009
GAMS Rev 233  LEX-LEI 23.3.1 x86_64/Linux                                                          11/19/09 02:44:49 Page 3
G e n e r a l   A l g e b r a i c   M o d e l i n g   S y s t e m
Equation Listing    SOLVE transport Using LP From line 73


---- cost  =E=  total transport cost  (1)

cost..  - 0.225*x(NewYork,Seattle) - 0.207*x(NewYork,SanDiego) - 0.153*x(Chicago,Seattle) - 0.171*x(Chicago,SanDiego)
     
      - 0.162*x(Topeka,Seattle) - 0.126*x(Topeka,SanDiego) + z =E= 0 ; (LHS = 0)
     

---- cost1  =E=  total production cost (1)

cost1..  - 0.2*x(NewYork,Seattle) - 0.4*x(NewYork,SanDiego) - 0.2*x(Chicago,Seattle) - 0.4*x(Chicago,SanDiego)
     
      - 0.2*x(Topeka,Seattle) - 0.4*x(Topeka,SanDiego) + z1 =E= 0 ; (LHS = 0)
     

---- revenue  =E=  total revenue (1)

revenue..  - 0.9*x(NewYork,Seattle) - 0.9*x(NewYork,SanDiego) - 0.7*x(Chicago,Seattle) - 0.7*x(Chicago,SanDiego)
     
      - 0.8*x(Topeka,Seattle) - 0.8*x(Topeka,SanDiego) + r =E= 0 ; (LHS = 0)
     

---- diff  =E=  revenue - cost (1)

diff..  z + z1 - r + rmz =E= 0 ; (LHS = 0)
     

---- demand  =G=  demand functions (3)

demand(NewYork)..  x(NewYork,Seattle) + x(NewYork,SanDiego) =G= 375 ; (LHS = 0, INFES = 375 ****)
     
demand(Chicago)..  x(Chicago,Seattle) + x(Chicago,SanDiego) =G= 300 ; (LHS = 0, INFES = 300 ****)
     
demand(Topeka)..  x(Topeka,Seattle) + x(Topeka,SanDiego) =G= 275 ; (LHS = 0, INFES = 275 ****)
     

---- supply  =L=  supply functions (2)

supply(Seattle)..  x(NewYork,Seattle) + x(Chicago,Seattle) + x(Topeka,Seattle) =L= 350 ; (LHS = 0)
     
supply(SanDiego)..  x(NewYork,SanDiego) + x(Chicago,SanDiego) + x(Topeka,SanDiego) =L= 600 ; (LHS = 0)
     
GAMS Rev 233  LEX-LEI 23.3.1 x86_64/Linux                                                          11/19/09 02:44:49 Page 4
G e n e r a l   A l g e b r a i c   M o d e l i n g   S y s t e m
Column Listing      SOLVE transport Using LP From line 73


---- x  quantities of freight

x(NewYork,Seattle)
                (.LO, .L, .UP, .M = 0, 0, +INF, 0)
       -0.225   cost
       -0.2     cost1
       -0.9     revenue
        1       demand(NewYork)
        1       supply(Seattle)

x(NewYork,SanDiego)
                (.LO, .L, .UP, .M = 0, 0, +INF, 0)
       -0.207   cost
       -0.4     cost1
       -0.9     revenue
        1       demand(NewYork)
        1       supply(SanDiego)

x(Chicago,Seattle)
                (.LO, .L, .UP, .M = 0, 0, +INF, 0)
       -0.153   cost
       -0.2     cost1
       -0.7     revenue
        1       demand(Chicago)
        1       supply(Seattle)

REMAINING 3 ENTRIES SKIPPED

---- z  total transport cost

z
                (.LO, .L, .UP, .M = -INF, 0, +INF, 0)
        1       cost
        1       diff


---- z1  total production cost

z1
                (.LO, .L, .UP, .M = -INF, 0, +INF, 0)
        1       cost1
        1       diff


---- r  total revenue

r
                (.LO, .L, .UP, .M = -INF, 0, +INF, 0)
        1       revenue
       -1       diff


---- rmz  different between z and r

rmz
                (.LO, .L, .UP, .M = -INF, 0, +INF, 0)
        1       diff

GAMS Rev 233  LEX-LEI 23.3.1 x86_64/Linux                                                          11/19/09 02:44:49 Page 5
G e n e r a l   A l g e b r a i c   M o d e l i n g   S y s t e m
Model Statistics    SOLVE transport Using LP From line 73


MODEL STATISTICS

BLOCKS OF EQUATIONS           6     SINGLE EQUATIONS            9
BLOCKS OF VARIABLES           5     SINGLE VARIABLES           10
NON ZERO ELEMENTS            37


GENERATION TIME      =        0.003 SECONDS      4 Mb  LEX233-233 Oct 30, 2009


EXECUTION TIME       =        0.003 SECONDS      4 Mb  LEX233-233 Oct 30, 2009
GAMS Rev 233  LEX-LEI 23.3.1 x86_64/Linux                                                          11/19/09 02:44:49 Page 6
G e n e r a l   A l g e b r a i c   M o d e l i n g   S y s t e m
Solution Report     SOLVE transport Using LP From line 73


               S O L V E      S U M M A R Y

     MODEL   transport           OBJECTIVE  rmz
     TYPE    LP                  DIRECTION  MAXIMIZE
     SOLVER  CPLEX               FROM LINE  73

**** SOLVER STATUS     1 Normal Completion         
**** MODEL STATUS      1 Optimal                   
**** OBJECTIVE VALUE              298.4250

 RESOURCE USAGE, LIMIT          0.000      1000.000
 ITERATION COUNT, LIMIT         2    2000000000

ILOG CPLEX       Nov  1, 2009 23.3.1 LEX 13908.14234 LEI x86_64/Linux
Cplex 12.1.0, GAMS Link 34 

LP status(1): optimal
Optimal solution found.
Objective :         298.425000


                           LOWER          LEVEL          UPPER         MARGINAL

---- EQU cost                .              .              .            -1.0000      
---- EQU cost1               .              .              .            -1.0000      
---- EQU revenue             .              .              .             1.0000      
---- EQU diff                .              .              .             1.0000      

  cost  total transport cost  (1)
  cost1  total production cost (1)
  revenue  total revenue (1)
  diff  revenue - cost (1)

---- EQU demand  demand functions (3)

               LOWER          LEVEL          UPPER         MARGINAL

NewYork       375.0000       375.0000        +INF             .          
Chicago       300.0000       300.0000        +INF           -0.1280      
Topeka        275.0000       275.0000        +INF           -0.0190      

---- EQU supply  supply functions (2)

                LOWER          LEVEL          UPPER         MARGINAL

Seattle         -INF          350.0000       350.0000         0.4750      
SanDiego        -INF          600.0000       600.0000         0.2930      

---- VAR x  quantities of freight

                        LOWER          LEVEL          UPPER         MARGINAL

NewYork.Seattle           .            50.0000        +INF             .          
NewYork.SanDiego          .           325.0000        +INF             .          
Chicago.Seattle           .           300.0000        +INF             .          
Chicago.SanDiego          .              .            +INF           -0.0360      
Topeka .Seattle           .              .            +INF           -0.0180      
Topeka .SanDiego          .           275.0000        +INF             .          

                           LOWER          LEVEL          UPPER         MARGINAL

---- VAR z                 -INF          159.0750        +INF             .          
---- VAR z1                -INF          310.0000        +INF             .          
---- VAR r                 -INF          767.5000        +INF             .          
---- VAR rmz               -INF          298.4250        +INF             .          

  z  total transport cost
  z1  total production cost
  r  total revenue
  rmz  different between z and r
GAMS Rev 233  LEX-LEI 23.3.1 x86_64/Linux                                                          11/19/09 02:44:49 Page 7
G e n e r a l   A l g e b r a i c   M o d e l i n g   S y s t e m
Solution Report     SOLVE transport Using LP From line 73


**** REPORT SUMMARY :        0     NONOPT
                             0 INFEASIBLE
                             0  UNBOUNDED
GAMS Rev 233  LEX-LEI 23.3.1 x86_64/Linux                                                          11/19/09 02:44:49 Page 8
G e n e r a l   A l g e b r a i c   M o d e l i n g   S y s t e m
E x e c u t i o n


----     75 VARIABLE x.L  quantities of freight

            Seattle    SanDiego

NewYork      50.000     325.000
Chicago     300.000
Topeka                  275.000


----     75 VARIABLE z.L                   =      159.075  total transport cost
            VARIABLE z1.L                  =      310.000  total production cost
            VARIABLE r.L                   =      767.500  total revenue
            VARIABLE rmz.L                 =      298.425  different between z and r


EXECUTION TIME       =        0.001 SECONDS      3 Mb  LEX233-233 Oct 30, 2009


USER: GAMS Development Corporation, Washington, DC   G871201/0000CA-ANY
      Free Demo,  202-342-0180,  sales@gams.com,  www.gams.com   DC0000


**** FILE SUMMARY

Input      /home/raymond/Desktop/TODO/gams/HW2.gms
Output     /home/raymond/Desktop/TODO/gams/HW2.lst
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值