The INTPOINT Procedure |
This example examines the effect of changing some of the arc costs. The backorder penalty costs are increased by 20 percent. The sales profit of 25-inch TVs sent to the shops in May is increased by 30 units. The backorder penalty costs of 25-inch TVs manufactured in May for April consumption is decreased by 30 units. The production cost of 19-inch and 25-inch TVs made in May are decreased by 5 units and 20 units, respectively. How does the optimal solution of the network after these arc cost alterations compare with the optimum of the original network?
These SAS statements produce the new NODEDATA= and ARCDATA= data sets:
title2 'Minimum Cost Flow problem- Altered Arc Data'; data arc2; set arc1; oldcost=_cost_; oldfc=_fcost_; oldflow=_flow_; if key_id='backorder' then _cost_=_cost_*1.2; else if _tail_='f2_may_2' then _cost_=_cost_-30; if key_id='production' & mth_made='May' then if diagonal=19 then _cost_=_cost_-5; else _cost_=_cost_-20; run;
proc intpoint bytes=100000 printlevel2=2 nodedata=node0 arcdata=arc2 conout=arc3; run;
proc print data=arc3; var _tail_ _head_ _capac_ _lo_ _supply_ _demand_ _name_ _cost_ _flow_ _fcost_ oldcost oldflow oldfc diagonal factory key_id mth_made; /* to get this variable order */ sum oldfc _fcost_; run;
The following notes appear on the SAS log:
Production Planning/Inventory/Distribution |
Minimum Cost Flow problem- Altered Arc Data |
NOTE: Number of nodes= 20 . |
NOTE: Number of supply nodes= 4 . |
NOTE: Number of demand nodes= 4 . |
NOTE: Total supply= 4350 , total demand= 4150 . |
NOTE: Number of arcs= 64 . |
NOTE: The following messages relate to the equivalent Linear Programming problem |
solved by the Interior Point algorithm. |
NOTE: Number of <= constraints= 0 . |
NOTE: Number of == constraints= 21 . |
NOTE: Number of >= constraints= 0 . |
NOTE: Number of constraint coefficients= 136 . |
NOTE: Number of variables= 68 . |
NOTE: After preprocessing, number of <= constraints= 0. |
NOTE: After preprocessing, number of == constraints= 20. |
NOTE: After preprocessing, number of >= constraints= 0. |
NOTE: The preprocessor eliminated 1 constraints from the problem. |
NOTE: The preprocessor eliminated 9 constraint coefficients from the problem. |
NOTE: 0 columns, 0 rows and 0 coefficients were added to the problem to handle |
unrestricted variables, variables that are split, and constraint slack or |
surplus variables. |
NOTE: There are 48 sub-diagonal nonzeroes in the unfactored A Atranspose matrix. |
NOTE: The 20 factor nodes make up 8 supernodes |
NOTE: There are 27 nonzero sub-rows or sub-columns outside the supernodal triangular |
regions along the factors leading diagonal. |
Iter Complem_aff Complem-ity Duality_gap Tot_infeasb Tot_infeasc Tot_infeasd |
0 -1.000000 193775969 0.894415 66024 25664 0 |
1 37797544 24594220 0.918149 4566.893212 1775.179450 0 |
2 4408681 1844606 0.590964 0 0 0 |
3 347168 312126 0.194113 0 0 0 |
4 145523 86002 0.060330 0 0 0 |
5 43008 38240 0.027353 0 0 0 |
6 31097 21145 0.015282 0 0 0 |
7 9308.807034 4158.399675 0.003029 0 0 0 |
8 1710.832075 752.174595 0.000549 0 0 0 |
9 254.197112 47.755299 0.000034846 0 0 0 |
10 5.252560 0.010692 7.8017564E-9 0 0 0 |
NOTE: The Primal-Dual Predictor-Corrector Interior Point algorithm performed 10 |
iterations. |
NOTE: Optimum reached. |
NOTE: Objective= -1285086.442. |
NOTE: The data set WORK.ARC3 has 64 observations and 17 variables. |
NOTE: There were 64 observations read from the data set WORK.ARC2. |
NOTE: There were 8 observations read from the data set WORK.NODE0. |
The solution is displayed in Output 4.2.1.
Production Planning/Inventory/Distribution |
Minimum Cost Flow problem- Altered arc data |
_tail_ | _head_ | _capac_ | _lo_ | _SUPPLY_ | _DEMAND_ | _name_ | _cost_ | _FLOW_ |
---|---|---|---|---|---|---|---|---|
fact1_1 | f1_apr_1 | 600 | 50 | 1000 | . | prod f1 19 apl | 78.60 | 540.000 |
f1_mar_1 | f1_apr_1 | 50 | 0 | . | . | 15.00 | 0.000 | |
f1_may_1 | f1_apr_1 | 20 | 0 | . | . | back f1 19 may | 33.60 | 0.000 |
f2_apr_1 | f1_apr_1 | 40 | 0 | . | . | 11.00 | 0.000 | |
fact1_2 | f1_apr_2 | 550 | 50 | 1000 | . | prod f1 25 apl | 174.50 | 250.000 |
f1_mar_2 | f1_apr_2 | 40 | 0 | . | . | 20.00 | 0.000 | |
f1_may_2 | f1_apr_2 | 15 | 0 | . | . | back f1 25 may | 49.20 | 15.000 |
f2_apr_2 | f1_apr_2 | 25 | 0 | . | . | 21.00 | 0.000 | |
fact1_1 | f1_mar_1 | 500 | 50 | 1000 | . | prod f1 19 mar | 127.90 | 340.000 |
f1_apr_1 | f1_mar_1 | 20 | 0 | . | . | back f1 19 apl | 33.60 | 20.000 |
f2_mar_1 | f1_mar_1 | 40 | 0 | . | . | 10.00 | 40.000 | |
fact1_2 | f1_mar_2 | 400 | 40 | 1000 | . | prod f1 25 mar | 217.90 | 400.000 |
f1_apr_2 | f1_mar_2 | 30 | 0 | . | . | back f1 25 apl | 38.40 | 30.000 |
f2_mar_2 | f1_mar_2 | 25 | 0 | . | . | 20.00 | 25.000 | |
fact1_1 | f1_may_1 | 400 | 50 | 1000 | . | 90.10 | 115.000 | |
f1_apr_1 | f1_may_1 | 50 | 0 | . | . | 12.00 | 0.000 | |
f2_may_1 | f1_may_1 | 40 | 0 | . | . | 13.00 | 0.000 | |
fact1_2 | f1_may_2 | 350 | 40 | 1000 | . | 113.30 | 350.000 | |
f1_apr_2 | f1_may_2 | 40 | 0 | . | . | 18.00 | 0.000 | |
f2_may_2 | f1_may_2 | 25 | 0 | . | . | 13.00 | 0.000 | |
f1_apr_1 | f2_apr_1 | 99999999 | 0 | . | . | 11.00 | 20.000 | |
fact2_1 | f2_apr_1 | 480 | 35 | 850 | . | prod f2 19 apl | 62.40 | 480.000 |
f2_mar_1 | f2_apr_1 | 30 | 0 | . | . | 18.00 | 0.000 | |
f2_may_1 | f2_apr_1 | 15 | 0 | . | . | back f2 19 may | 30.00 | 0.000 |
f1_apr_2 | f2_apr_2 | 99999999 | 0 | . | . | 23.00 | 0.000 | |
fact2_2 | f2_apr_2 | 680 | 35 | 1500 | . | prod f2 25 apl | 196.70 | 680.000 |
f2_mar_2 | f2_apr_2 | 50 | 0 | . | . | 28.00 | 0.000 | |
f2_may_2 | f2_apr_2 | 15 | 0 | . | . | back f2 25 may | 64.80 | 0.000 |
f1_mar_1 | f2_mar_1 | 99999999 | 0 | . | . | 11.00 | 0.000 | |
fact2_1 | f2_mar_1 | 450 | 35 | 850 | . | prod f2 19 mar | 88.00 | 290.000 |
f2_apr_1 | f2_mar_1 | 15 | 0 | . | . | back f2 19 apl | 20.40 | 0.000 |
f1_mar_2 | f2_mar_2 | 99999999 | 0 | . | . | 23.00 | 0.000 | |
fact2_2 | f2_mar_2 | 650 | 35 | 1500 | . | prod f2 25 mar | 182.00 | 635.000 |
f2_apr_2 | f2_mar_2 | 15 | 0 | . | . | back f2 25 apl | 37.20 | 0.000 |
f1_may_1 | f2_may_1 | 99999999 | 0 | . | . | 16.00 | 115.000 | |
fact2_1 | f2_may_1 | 250 | 35 | 850 | . | 128.80 | 35.000 | |
f2_apr_1 | f2_may_1 | 30 | 0 | . | . | 20.00 | 0.000 | |
f1_may_2 | f2_may_2 | 99999999 | 0 | . | . | 26.00 | 335.000 | |
fact2_2 | f2_may_2 | 550 | 35 | 1500 | . | 181.40 | 35.000 | |
f2_apr_2 | f2_may_2 | 50 | 0 | . | . | 38.00 | 0.000 | |
f1_mar_1 | shop1_1 | 250 | 0 | . | 900 | -327.65 | 150.000 | |
f1_apr_1 | shop1_1 | 250 | 0 | . | 900 | -300.00 | 250.000 | |
f1_may_1 | shop1_1 | 250 | 0 | . | 900 | -285.00 | 0.000 | |
f2_mar_1 | shop1_1 | 250 | 0 | . | 900 | -297.40 | 250.000 | |
f2_apr_1 | shop1_1 | 250 | 0 | . | 900 | -290.00 | 250.000 | |
f2_may_1 | shop1_1 | 250 | 0 | . | 900 | -292.00 | 0.000 | |
f1_mar_2 | shop1_2 | 99999999 | 0 | . | 900 | -559.76 | 0.000 | |
f1_apr_2 | shop1_2 | 99999999 | 0 | . | 900 | -524.28 | 0.000 | |
f1_may_2 | shop1_2 | 99999999 | 0 | . | 900 | -475.02 | 0.000 | |
f2_mar_2 | shop1_2 | 500 | 0 | . | 900 | -567.83 | 500.000 | |
f2_apr_2 | shop1_2 | 500 | 0 | . | 900 | -542.19 | 400.000 | |
f2_may_2 | shop1_2 | 500 | 0 | . | 900 | -491.56 | 0.000 | |
f1_mar_1 | shop2_1 | 250 | 0 | . | 900 | -362.74 | 250.000 | |
f1_apr_1 | shop2_1 | 250 | 0 | . | 900 | -300.00 | 250.000 | |
f1_may_1 | shop2_1 | 250 | 0 | . | 900 | -245.00 | 0.000 | |
f2_mar_1 | shop2_1 | 250 | 0 | . | 900 | -272.70 | 0.000 | |
f2_apr_1 | shop2_1 | 250 | 0 | . | 900 | -312.00 | 250.000 | |
f2_may_1 | shop2_1 | 250 | 0 | . | 900 | -299.00 | 150.000 | |
f1_mar_2 | shop2_2 | 99999999 | 0 | . | 1450 | -623.89 | 455.000 | |
f1_apr_2 | shop2_2 | 99999999 | 0 | . | 1450 | -549.68 | 235.000 | |
f1_may_2 | shop2_2 | 99999999 | 0 | . | 1450 | -460.00 | 0.000 | |
f2_mar_2 | shop2_2 | 500 | 0 | . | 1450 | -542.83 | 110.000 | |
f2_apr_2 | shop2_2 | 500 | 0 | . | 1450 | -559.19 | 280.000 | |
f2_may_2 | shop2_2 | 500 | 0 | . | 1450 | -519.06 | 370.000 |
Production Planning/Inventory/Distribution |
Minimum Cost Flow problem- Altered arc data |
Obs | _FCOST_ | oldcost | oldflow | oldfc | diagonal | factory | key_id | mth_made |
---|---|---|---|---|---|---|---|---|
1 | 42444.01 | 78.60 | 600.000 | 47160.00 | 19 | 1 | production | April |
2 | 0.00 | 15.00 | 0.000 | 0.00 | 19 | 1 | storage | March |
3 | 0.00 | 28.00 | 0.000 | 0.00 | 19 | 1 | backorder | May |
4 | 0.00 | 11.00 | 0.000 | 0.00 | 19 | . | f2_to_1 | April |
5 | 43625.00 | 174.50 | 550.000 | 95975.00 | 25 | 1 | production | April |
6 | 0.00 | 20.00 | 0.000 | 0.00 | 25 | 1 | storage | March |
7 | 738.00 | 41.00 | 15.000 | 615.00 | 25 | 1 | backorder | May |
8 | 0.00 | 21.00 | 0.000 | 0.00 | 25 | . | f2_to_1 | April |
9 | 43486.02 | 127.90 | 344.999 | 44125.43 | 19 | 1 | production | March |
10 | 672.00 | 28.00 | 20.000 | 560.00 | 19 | 1 | backorder | April |
11 | 400.00 | 10.00 | 40.000 | 400.00 | 19 | . | f2_to_1 | March |
12 | 87160.00 | 217.90 | 400.000 | 87160.00 | 25 | 1 | production | March |
13 | 1152.00 | 32.00 | 30.000 | 960.00 | 25 | 1 | backorder | April |
14 | 500.00 | 20.00 | 25.000 | 500.00 | 25 | . | f2_to_1 | March |
15 | 10361.47 | 95.10 | 50.001 | 4755.06 | 19 | 1 | production | May |
16 | 0.00 | 12.00 | 50.000 | 600.00 | 19 | 1 | storage | April |
17 | 0.00 | 13.00 | 0.000 | 0.00 | 19 | . | f2_to_1 | May |
18 | 39655.00 | 133.30 | 40.000 | 5332.04 | 25 | 1 | production | May |
19 | 0.00 | 18.00 | 0.000 | 0.00 | 25 | 1 | storage | April |
20 | 0.00 | 43.00 | 0.000 | 0.00 | 25 | . | f2_to_1 | May |
21 | 220.00 | 11.00 | 30.000 | 330.00 | 19 | . | f1_to_2 | April |
22 | 29952.00 | 62.40 | 480.000 | 29952.00 | 19 | 2 | production | April |
23 | 0.00 | 18.00 | 0.000 | 0.00 | 19 | 2 | storage | March |
24 | 0.00 | 25.00 | 0.000 | 0.00 | 19 | 2 | backorder | May |
25 | 0.00 | 23.00 | 0.000 | 0.00 | 25 | . | f1_to_2 | April |
26 | 133755.99 | 196.70 | 680.000 | 133755.99 | 25 | 2 | production | April |
27 | 0.00 | 28.00 | 0.000 | 0.00 | 25 | 2 | storage | March |
28 | 0.00 | 54.00 | 15.000 | 810.00 | 25 | 2 | backorder | May |
29 | 0.00 | 11.00 | 0.000 | 0.00 | 19 | . | f1_to_2 | March |
30 | 25520.00 | 88.00 | 290.000 | 25520.00 | 19 | 2 | production | March |
31 | 0.00 | 17.00 | 0.000 | 0.00 | 19 | 2 | backorder | April |
32 | 0.00 | 23.00 | 0.000 | 0.00 | 25 | . | f1_to_2 | March |
33 | 115570.01 | 182.00 | 645.000 | 117389.96 | 25 | 2 | production | March |
34 | 0.00 | 31.00 | 0.000 | 0.00 | 25 | 2 | backorder | April |
35 | 1840.00 | 16.00 | 100.000 | 1600.01 | 19 | . | f1_to_2 | May |
36 | 4508.00 | 133.80 | 35.000 | 4683.00 | 19 | 2 | production | May |
37 | 0.00 | 20.00 | 15.000 | 299.99 | 19 | 2 | storage | April |
38 | 8710.00 | 26.00 | 0.000 | 0.00 | 25 | . | f1_to_2 | May |
39 | 6349.00 | 201.40 | 35.000 | 7049.00 | 25 | 2 | production | May |
40 | 0.00 | 38.00 | 0.000 | 0.00 | 25 | 2 | storage | April |
41 | -49147.54 | -327.65 | 154.999 | -50785.56 | 19 | 1 | sales | March |
42 | -75000.00 | -300.00 | 250.000 | -75000.00 | 19 | 1 | sales | April |
43 | -0.01 | -285.00 | 0.000 | 0.00 | 19 | 1 | sales | May |
44 | -74350.00 | -297.40 | 250.000 | -74349.99 | 19 | 2 | sales | March |
45 | -72499.96 | -290.00 | 245.001 | -71050.17 | 19 | 2 | sales | April |
46 | 0.00 | -292.00 | 0.000 | 0.00 | 19 | 2 | sales | May |
47 | 0.00 | -559.76 | 0.000 | 0.00 | 25 | 1 | sales | March |
48 | -0.01 | -524.28 | 0.000 | -0.01 | 25 | 1 | sales | April |
49 | -0.06 | -475.02 | 25.000 | -11875.64 | 25 | 1 | sales | May |
50 | -283915.00 | -567.83 | 500.000 | -283915.00 | 25 | 2 | sales | March |
51 | -216875.92 | -542.19 | 375.000 | -203321.08 | 25 | 2 | sales | April |
52 | 0.00 | -461.56 | 0.000 | 0.00 | 25 | 2 | sales | May |
53 | -90685.00 | -362.74 | 250.000 | -90685.00 | 19 | 1 | sales | March |
54 | -75000.00 | -300.00 | 250.000 | -75000.00 | 19 | 1 | sales | April |
55 | 0.00 | -245.00 | 0.000 | 0.00 | 19 | 1 | sales | May |
56 | -0.01 | -272.70 | 0.000 | 0.00 | 19 | 2 | sales | March |
57 | -78000.00 | -312.00 | 250.000 | -78000.00 | 19 | 2 | sales | April |
58 | -44849.99 | -299.00 | 150.000 | -44850.00 | 19 | 2 | sales | May |
59 | -283869.94 | -623.89 | 455.000 | -283869.94 | 25 | 1 | sales | March |
60 | -129174.80 | -549.68 | 535.000 | -294078.78 | 25 | 1 | sales | April |
61 | 0.00 | -460.00 | 0.000 | 0.00 | 25 | 1 | sales | May |
62 | -59711.32 | -542.83 | 120.000 | -65139.47 | 25 | 2 | sales | March |
63 | -156573.27 | -559.19 | 320.000 | -178940.96 | 25 | 2 | sales | April |
64 | -192052.13 | -489.06 | 20.000 | -9781.20 | 25 | 2 | sales | May |
-1285086.44 | -1281110.34 |
Copyright © SAS Institute, Inc. All Rights Reserved.