The OPTGRAPH Procedure

PROC OPTGRAPH Statement

  • PROC OPTGRAPH < options >;

The PROC OPTGRAPH statement invokes the OPTGRAPH procedure. You can specify the following options to define the input and output data sets, the log levels, and various other processing controls:

DATA_LINKS=SAS-data-set
LINKS=SAS-data-set

specifies the input data set that contains the graph link information, where the links are defined as a list.

See the section Link Input Data for more information.

DATA_MATRIX=SAS-data-set
MATRIX=SAS-data-set

specifies the input data set that contains the matrix to be processed. This is a generic matrix (as opposed to an adjacency matrix, which defines an underlying graph).

See the section Matrix Input Data for more information.

DATA_NODES=SAS-data-set
NODES=SAS-data-set

specifies the input data set that contains the graph node information.

See the section Node Input Data for more information.

DATA_NODES_SUB=SAS-data-set
NODES_SUB=SAS-data-set

specifies the input data set that contains the graph node subset information.

See the section Node Subset Input Data for more information.

FILTER_SUBGRAPH=number

specifies the minimum number of nodes allowed in a subgraph when processing is decomposed by cluster. When the BY_CLUSTER option is also specified in another statement, any subgraph whose number of nodes is less than or equal to number is skipped. The default setting is 0, so nothing is filtered by default.

See the section Graph Input Data for more information.

GRAPH_DIRECTION=DIRECTED | UNDIRECTED
DIRECTION=DIRECTED | UNDIRECTED

specifies whether the input graph should be considered directed or undirected.

Table 1.5: Values for the GRAPH_DIRECTION= Option

Option Value

Description

DIRECTED

Specifies the graph as directed. In a directed graph, each link $(i,j)$ has a direction that defines how something (for example, information) might flow over that link. In link $(i,j)$, information flows from node i to node j ($i \rightarrow j$). The node i is called the source (tail) node, and j is called the sink (head) node.

UNDIRECTED

Specifies the graph as undirected. In an undirected graph, each link $\{ i,j\} $ has no direction and information can flow in either direction. That is, $\{ i,j\}  = \{ j,i\} $. This is the default.


By default, GRAPH_DIRECTION=UNDIRECTED. See the section Graph Input Data for more information.

GRAPH_INTERNAL_FORMAT=THIN | FULL
INTERNAL_FORMAT=THIN | FULL

requests the internal graph format for the algorithms to use.

Table 1.6: Values for the GRAPH_INTERNAL_FORMAT= Option

Option Value

Description

FULL

Stores the graph in standard (full) format. This is the default.

THIN

Stores the graph in thin format. This option can improve performance in some cases both by reducing memory and by simplifying the construction of the internal data structures. The thin format causes PROC OPTGRAPH to skip the removal of duplicate links when it reads in the graph. So this option should be used with caution. For some algorithms, the thin format is not allowed and this option is ignored. The THIN option can often be helpful when you do calculations that are decomposed by subgraph.


See the section Graph Input Data for more information.

INCLUDE_SELFLINK

includes self links—for example, $(i,i)$—when an input graph is read. By default, when PROC OPTGRAPH reads the DATA_LINKS= data set, it removes all self links.

LOGLEVEL=number | string

controls the amount of information that is displayed in the SAS log. Each algorithm has its own specific log level. This setting sets the log level for all algorithms except those for which you specify the LOGLEVEL= option in the algorithm statement. Table 1.7 describes the valid values for this option.

Table 1.7: Values for LOGLEVEL= Option

number

string

Description

0

NONE

Turns off all procedure-related messages in the SAS log

1

BASIC

Displays a basic summary of the input, output, and algorithmic processing

2

MODERATE

Displays a summary of the input, output, and algorithmic processing

3

AGGRESSIVE

Displays a detailed summary of the input, output, and algorithmic processing


By default, LOGLEVEL=BASIC.

OUT_LINKS=SAS-data-set

specifies the output data set to contain the graph link information along with any results from the various algorithms that calculate metrics on links.

See the various algorithm sections for examples of the content of this output data set.

OUT_NODES=SAS-data-set

specifies the output data set to contain the graph node information along with any results from the various algorithms that calculate metrics on nodes.

See the various algorithm sections for examples of the content of this output data set.

STANDARDIZED_LABELS

specifies that the input graph data is in a standardized format described in section Standardized Labels.

TIMETYPE=number | string

specifies whether CPU time or real time is used for the MAXTIME= option for each applicable algorithm. Table 1.8 describes the valid values of the TIMETYPE= option.

Table 1.8: Values for TIMETYPE= Option

number

string

Description

0

CPU

Specifies units of CPU time

1

REAL

Specifies units of real time


By default, TIMETYPE=CPU.