Chapter Contents |
Previous |
Next |

The DTREE Procedure |

The DTREE procedure in SAS/OR software
is an interactive procedure for
decision analysis. The procedure interprets a decision
problem represented in SAS data sets, finds the optimal
decisions, and plots on a line printer or a graphics device
the decision tree showing the optimal decisions.
To use PROC DTREE you first construct
a decision model to represent your problem.
This model, called *a generic decision tree model*, is made up
of *stages*^{*}.
Every stage has a *stage name*, which
identifies the stage, a *type*, which specifies the type of
the stage, and the possible *outcomes* of the stage.
There are three types of stages: decision stages, chance stages,
and end stages.

A *decision stage*
represents a particular decision you have
to make. The outcomes of a decision stage are the possible
*alternatives* (or *actions*) of the decision.
A *chance stage*
represents an *uncertain factor* in the decision
problem (a statistician may call it a *random variable*;
here it is called an *uncertainty*).
The outcomes
of a chance stage are *events*,
one of which will occur according to a given probability
distribution.
An *end stage* terminates
a particular *scenario* (a sequence of alternatives and events).
It is not necessary to include an end stage in your
model; the DTREE procedure adds an end stage to your model if one
is needed.

Each outcome of a decision or chance stage
also has several attributes, an *outcome name*
to identify
the outcome, a *reward*
to give the instant reward of the
outcome, and a *successor*
to specify the name of the stage
that comes next when this outcome is realized.
For chance stages,
a *probability*
attribute is also
needed. It gives the relative likelihood
of this outcome. Every decision stage should have at
least two alternatives, and every chance stage should have at
least two events. Probabilities of events for a chance stage
*must* sum to 1. End stages do not have any outcomes.

The structure of a decision model is given in the STAGEIN= data set. It contains the stage name, the type, and the attributes (except probability) of all outcomes for each stage in your model. You can specify each stage in one observation or across several observations. If a diagrammatic representation of a decision problem is all you want, you probably do not need any other data sets.

If you want to evaluate and analyze your decision problem, you need another SAS data set, called the PROBIN= data set. This data set describes the probabilities or conditional probabilities for every event in your model. Each observation in the data set contains a list of given conditions (list of outcomes), if there are any, and at least one combination of event and probability. Each event and probability combination identifies the probability that the event occurs given that all the outcomes specified in the list occur. If no conditions are given, then the probabilities are unconditional probabilities. The third data set, called the PAYOFFS= data set, contains the value of each possible scenario. You can specify one or more scenarios and the associated values in one observation. If the PAYOFFS= data set is omitted, the DTREE procedure assumes that all values are zeros and uses rewards for outcomes to evaluate the decision problem.

You can use PROC DTREE to display, evaluate, and analyze your decision problem. In the PROC DTREE statement, you specify input data sets and other options. A VARIABLES statement identifies the variables in the input data set that describe the model. This statement can be used only once and must appear immediately after the PROC DTREE statement. The EVALUATE statement evaluates the decision tree. You can display the optimal decisions by using the SUMMARY statement, or you can plot the complete tree with the TREEPLOT statement. Finally, you can also associate HTML pages with decision tree nodes and create web-enabled decision tree diagrams.

It is also possible to modify interactively some attributes of your model with the MODIFY statement and to change the order of decisions by using the MOVE statement. Before making any changes to the model, you should save the current model with the SAVE statement so that you can call it back later by using the RECALL statement. Questions about the value of perfect information or the value of perfect control are answered using the VPI and VPC statements. Moreover, any options that can be specified in the PROC DTREE statement can be reset at any time with the RESET statement. All statements can appear in any order and can be used as many times as desired with one exception. The RECALL statement must be preceded by at least one SAVE statement. In addition, only one model can be saved at any time; the SAVE statement overwrites the previously saved model. Finally, you can use the QUIT statement to stop processing and exit the procedure.

The DTREE procedure produces one output data set. The IMAGEMAP= data set contains the outline coordinates for the nodes in the decision tree that can be used to generate HTML MAP tags.

PROC DTREE uses the Output Delivery System (ODS),
a SAS subsystem that provides capabilities for displaying and
controlling the output from SAS procedures. ODS enables you
to convert any of the output from PROC DTREE into a SAS data
set. For further details, refer to the chapter on ODS in the
*SAS/STAT User's Guide*.

Chapter Contents |
Previous |
Next |
Top |

Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.