LINEAR_ASSIGNMENT Statement
The LINEAR_ASSIGNMENT statement invokes an algorithm that solves the minimal-cost linear assignment problem. In graph terms,
this problem is also known as the minimum link-weighted matching problem on a bipartite graph. The input data (the cost matrix)
is typically defined in the input data set that is specified in the DATA_MATRIX= option in the PROC OPTGRAPH statement. The
data can also be defined as a directed graph by specifying the DATA_LINKS= option in the PROC OPTGRAPH statement, where the
costs are defined as link weights. Internally, the graph is treated as a bipartite graph in which the from nodes define one part and the to nodes define the other part.
The linear assignment problem is described in the section Linear Assignment (Matching).
You can specify the following options in the LINEAR_ASSIGNMENT statement:
-
ID=(column1 <,column2,...>)
-
specifies the data set variable names that identify the matrix rows (from nodes). The information in these columns is carried to the output data set that is specified in the OUT= option. The value
of each column variable can be numeric or character.
-
LOGLEVEL=number | string
-
controls the amount of information that is displayed in the SAS log. Table 1.32 describes the valid values for this option.
Table 1.32: Values for LOGLEVEL= Option
number
|
string
|
Description
|
0
|
NONE
|
Turns off all algorithm-related messages in the SAS log
|
1
|
BASIC
|
Displays a basic summary of the algorithmic processing
|
2
|
MODERATE
|
Displays a summary of the algorithmic processing
|
3
|
AGGRESSIVE
|
Displays a detailed summary of the algorithmic processing
|
The default is the value that is specified in the LOGLEVEL=
option in the PROC OPTGRAPH statement (or BASIC if that option is not specified).
-
OUT=SAS-data-set
-
specifies the output data set to contain the solution to the linear assignment problem.
-
WEIGHT=(column1 <,column2,...>)
-
specifies the data set variable names for the cost matrix. The value of each column variable must be numeric. If this option is not specified, the matrix is assumed to be defined by all of the numeric variables
in the data set (excluding those specified in the ID= option).