View source: R/utility.endnode.cond.r
| utility.endnode.cond.create | R Documentation |
Function to construct a node that makes a choice between given end nodes based on the levels of discrete attributes.
utility.endnode.cond.create(name.node,
attrib.levels,
nodes,
utility = TRUE,
required = FALSE,
col = "black",
shift.levels = 0)
name.node |
name of the node to be constructed as a character string. |
attrib.levels |
data frame with attribute names as column names and all discrete attribute level combinations in the rows. This may be a dependence on any number of attributes. As combinatorics can lead to a very large number of possible combinations, the node should not depend on a too large number of attributes, in particular if each attribute has many different levels expressed by numbers or character strings. |
nodes |
list of the length of the number of columns of the data frame specifed as argument |
utility |
(optional) logical variable indicating if a value function ( |
required |
(optional) logical variable indicating if the value of this node is required for aggregation at the next higher level.
If this variable is |
col |
(optional) color used for plotting the bounding box of the node in the objective hierarchy.
Default value is |
shift.levels |
(optional) number of hierarchical levels by which the node in the objective hierarchy is shifted to make a branch fit better to other branches.
Default value is |
The function returns the created object of type utility.endnode.cond with the properties specified in the arguments of the function.
Peter Reichert <peter.reichert@emeriti.eawag.ch>
Short description of the package:
Reichert, P., Schuwirth, N. and Langhans, S.,
Constructing, evaluating and visualizing value and utility functions for decision support, Environmental Modelling & Software 46, 283-291, 2013.
Textbooks on the use of utility and value functions in decision analysis:
Keeney, R. L. and Raiffa, H. Decisions with Multiple Objectives - Preferences and Value Tradeoffs. John Wiley & Sons, 1976.
Eisenfuehr, F., Weber, M. and Langer, T., Rational Decision Making, Springer, Berlin, 2010.
Print, evaluate and plot the node with
print.utility.endnode.cond,
summary.utility.endnode.cond,
evaluate.utility.endnode.cond and
plot.utility.endnode.cond.
Create other end nodes with
utility.endnode.discrete.create,
utility.endnode.parfun1d.create,
utility.endnode.intpol2d.create,
utility.endnode.parfun1d.create, or
utility.endnode.firstavail.create.
Create other types of nodes with
utility.aggregation.create,
utility.conversion.intpol.create, or
utility.conversion.parfun.create.
bedmod_riprap <-
utility.endnode.intpol1d.create(
name.node = "bed modification riprap",
name.attrib = "bedmodfract_percent",
range = c(0,100),
x = c(0,10,30,100),
u = c(1,0.775,0.5625,0.24),
required = FALSE,
utility = FALSE)
bedmod_other <-
utility.endnode.intpol1d.create(
name.node = "bed modification other",
name.attrib = "bedmodfract_percent",
range = c(0,100),
x = c(0,10,30,100),
u = c(1,0.775,0.5625,0),
required = FALSE,
utility = FALSE)
bedmod <-
utility.endnode.cond.create(
name.node = "bed modification",
attrib.levels = data.frame(bedmodtype_class=
c("riprap","other")),
nodes = list(bedmod_riprap,bedmod_other),
required = FALSE,
utility = FALSE)
print(bedmod)
plot(bedmod)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.