Function to construct a single-attribute parametric function end node.
utility.endnode.parfun1d.create(name.node,
name.attrib,
range,
name.fun,
par,
names.par = rep(NA, length(par)),
utility = TRUE,
required = FALSE,
col = "black",
shift.levels = 0)
The function returns the created object of type utility.endnode.parfun1d
with the properties specified in the arguments of the function.
name of the node to be constructed as a character string.
name of the attribute on which the value or utility function depends as a character string.
numeric vector with two components specifying the minimum and the maximum of the attribute range.
name of the parametric function to be evaluated as a character string.
The parametric function must have the arguments attrib
and par
which pass a vector of attribute levels and a vector of parameters
to the function, respectively.
The function has to return a vector of corresponding values or utilities.
numeric vector of parameter values to be passed to the function specified unter name.fun
.
(optional) vector of parameter names corresponging to the vector of values specified under par
.
Only required to provide access to the values through a named parameter vector.
(optional) logical variable indicating if a value function (FALSE
) or a utility function (TRUE
) is created.
Default value is TRUE
.
(optional) logical variable indicating if the value of this node is required for aggregation at the next higher level.
If this variable is TRUE
, aggregation at the next higher level is not possible if this node returns NA.
Default value is FALSE
.
(optional) color used for plotting the bounding box of the node in the objective hierarchy.
Default value is "black"
.
(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 0
.
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.parfun1d
,
summary.utility.endnode.parfun1d
,
evaluate.utility.endnode.parfun1d
and
plot.utility.endnode.parfun1d
.
Create other end nodes with
utility.endnode.discrete.create
,
utility.endnode.intpol1d.create
,
utility.endnode.intpol2d.create
,
utility.endnode.cond.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_other <-
utility.endnode.parfun1d.create(
name.node = "bed modification other",
name.attrib = "bedmodfract_percent",
range = c(0,100),
name.fun = "utility.fun.exp",
par = c(-1,100,0),
required = FALSE,
utility = FALSE)
print(bedmod_other)
plot(bedmod_other)
Run the code above in your browser using DataLab