| The NETFLOW Procedure |
In this example we illustrate the use of the EXCESS= option for various scenarios in pure networks. Consider a simple network as shown in Figure 5.43. The positive numbers on the nodes correspond to supply and the negative numbers correspond to demand. The numbers on the arcs indicate costs.
|
Figure 5.43: Transportation Problem
The following SAS code creates the input data sets.
data parcs;
input _from_ $ _to_ $ _cost_;
datalines;
s1 d1 1
s1 d2 8
s2 d1 4
s2 d2 2
;
data SleD;
input _node_ $ _sd_;
datalines;
s1 1
s2 10
d1 -10
d2 -5
;
You can solve the problem using the following call to PROC NETFLOW:
title1 'The NETFLOW Procedure';
proc netflow
excess = slacks
arcdata = parcs
nodedata = SleD
conout = solex1;
run;
Since the EXCESS=SLACKS option is specified, the interior point method is used for optimization. Accordingly, the CONOUT= data set is specified. The optimal solution is displayed in Output 5.9.1.
Output 5.9.1: Supply < DemandThe solution with the THRUNET option specified is displayed in Output 5.9.2.
Output 5.9.2: Supply < Demand, THRUNET SpecifiedNote: If you want to use the network simplex solver instead, you need to specify the EXCESS=ARCS option and, accordingly, the ARCOUT= data set.
|
Figure 5.44: Missing D Demand
The following code creates the node data set:
data node_missingD1;
input _node_ $ _sd_;
missing D;
datalines;
s1 1
s2 10
d1 D
d2 -1
;
You can use the following call to PROC NETFLOW to solve the problem:
title1 'The NETFLOW Procedure';
proc netflow
excess = slacks
arcdata = parcs
nodedata = node_missingD1
conout = solex1b;
run;
The optimal solution is displayed in Output 5.9.3. As you can see, the flow balance at nodes with nonmissing supdem values is maintained. In other words, if a node has a nonmissing supply (demand) value, then the sum of flows out of (into) that node is equal to its supdem value.
Output 5.9.3: THRUNET Not Specified
title1 'The NETFLOW Procedure';
proc netflow
thrunet
excess = slacks
arcdata = parcs
nodedata = node_missingD1
conout = solex1c;
run;
The optimal solution is displayed in Output 5.9.4. By specifying the THRUNET option, we have actually obtained the minimum-cost flow through the network, while maintaining flow balance at the nodes with nonmissing supply values.
Output 5.9.4: Missing D Demand, THRUNET SpecifiedNote: The case with missing S supply values is similar to the case with missing D demand values.
Copyright © 2008 by SAS Institute Inc., Cary, NC, USA. All rights reserved.