utility.endnode.parfun1d.create: Construct a single-attribute parametric function end node

View source: R/utility.endnode.parfun1d.r

utility.endnode.parfun1d.createR Documentation

Construct a single-attribute parametric function end node

Description

Function to construct a single-attribute parametric function end node.

Usage

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)

Arguments

name.node

name of the node to be constructed as a character string.

name.attrib

name of the attribute on which the value or utility function depends as a character string.

range

numeric vector with two components specifying the minimum and the maximum of the attribute range.

name.fun

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.

par

numeric vector of parameter values to be passed to the function specified unter name.fun.

names.par

(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.

utility

(optional) logical variable indicating if a value function (FALSE) or a utility function (TRUE) is created. Default value is TRUE.

required

(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.

col

(optional) color used for plotting the bounding box of the node in the objective hierarchy. Default value is "black".

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 0.

Value

The function returns the created object of type utility.endnode.parfun1d with the properties specified in the arguments of the function.

Author(s)

Peter Reichert <peter.reichert@emeriti.eawag.ch>

References

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.

See Also

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.

Examples

  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)

utility documentation built on Aug. 28, 2023, 1:07 a.m.