PROC NETFLOW (SAS/OR Software)
Network flow programming
The NETFLOW procedure finds the shortest path, the maximum flow, or the minimum cost
flow through a network. In this procedure, the decision variables represent the flow
through a network that has sources of flow and demands for flow. In addition, the
procedure supports linear side constraints on the flow and additional nonarc decision
variables. PROC NETFLOW accepts the data specifying the structure of the network in
a wide variety of formats that are well-suited to describing networks, and accepts side
constraint data in dense or sparse format.
PROC NETFLOW is part of SAS/OR Software, a fully-integrated component of the SAS
System, and uses SAS data sets (proprietary format) for input and output. By taking
advantage of the SAS System's Multiple Engine Architecture, PROC NETFLOW can in effect
read from and write to over fifty different database formats.
Input Data
- provides a convenient format for specifying constrained networks by using up to three
data sets
- Node data set specifies the nodal supplies and demands
- Arc data set specifies arc cost, capacity, and lower flow bound
- Side constraint data set gives additional constraints in either a dense or sparse format
that is more flexible than but consistent with the MPS format
- node and arc data sets can contain warm-start information for starting the procedure
from an advanced basis
- can specify a given model in many alternative but equivalent ways, simplifying
programming for model generation
- minimizes work necessary to change from a linear programming specification to a
side-constrained network specification
Output Data
- arc solution data set includes arc flows and nonarc activities, reduced costs, and basis
structure
- node solution data set includes dual variables associated with the nodal constraints and
the linear side constraints
- macro status variable is saved for easier system integration
Algorithms
- primal simplex network algorithm and primal partitioning algorithm (also known as
GUB-based or factorization algorithm) exploit the network structure by representing the
network component of the basis with a spanning tree, thus maximizing list processing and
minimizing arithmetic computation
- problem sparsity in both the side constraint component and the LU factorization of the
network component of the basis is exploited
- crash routines identify an advanced starting basis
- numerous optimizer tuning parameters, especially affecting pricing
Interactive Features
- interactive and programmed interruption of iterations
- reset optimizer tuning parameters
- provide single step or multiple step processing
- reprogram interrupts
- print subsets of the current activities of arc and nonarc variables
- save intermediate solutions that can be used for warm-starts in subsequent optimizations
- switch from optimization of the relaxed network model (side constraints ignored) to the
fully constrained model
Special Features
- alternatively, find the longest path, the minimum flow, or the maximum cost flow through
a network
- monitor and specify limits on memory usage/allocation
- specify estimates of problem size for more efficient memory utilization during
optimization
- specify characteristics of the input data sets for more efficient memory utilization
while reading data
Problem Size Limitations
The size of a problem that PROC NETFLOW can solve depends on the host platform, the
available memory, and the available space for utility data sets. PROC NETFLOW does
not place any additional limits on problem size.
Available Platforms
The SAS System is supported on all major personal computer, workstation, and mainframe
operating systems.
Need more info?
Visit SAS Institute Research & Development on
the WWW or contact:
SAS Institute Inc.
SAS Campus Drive
Cary, NC 27513
Phone: (919) 677-8000
Fax: (919) 677-4444
Email: saseph@unx.sas.com
[ Optimization Software Guide | OTC Home Page | NEOS Server | NEOS Guide ]