Version: | 2.1 |
Date: | 2016-09-22 |
Title: | Function Optimization and Ranking via Desirability Functions |
Author: | Max Kuhn |
Description: | S3 classes for multivariate optimization using the desirability function by Derringer and Suich (1980). |
Maintainer: | Max Kuhn <mxkuhn@gmail.com> |
Suggests: | lattice |
Imports: | stats, graphics, grDevices |
License: | GPL-2 |
URL: | https://github.com/topepo/desirability |
NeedsCompilation: | no |
Packaged: | 2016-09-22 14:48:46 UTC; kuhna03 |
Repository: | CRAN |
Date/Publication: | 2016-09-22 17:09:59 |
Desirability Functions
Description
Functions implementing multivariate optimization and ranking using the desirability function approach described in Derringer and Suich (1980)
Usage
## Default S3 method:
dMax(low, high, scale = 1, tol = NULL, ...)
## Default S3 method:
dMin(low, high, scale = 1, tol = NULL, ...)
## Default S3 method:
dTarget(low, target, high, lowScale = 1, highScale = 1, tol = NULL, ...)
## Default S3 method:
dArb(x, d, tol = NULL, ...)
## Default S3 method:
dBox(low, high, tol = NULL, ...)
## Default S3 method:
dCategorical(values, tol = NULL, ...)
## Default S3 method:
dOverall(...)
Arguments
low |
a constant to define the desirability function for |
high |
a constant to define the desirability function for |
target |
a constant to define the desirability function for |
scale |
the scaling factor for |
lowScale |
the scaling factor for |
highScale |
the scaling factor for |
x |
a set of input values |
d |
a set of desirabilites between zero and one (inclusive) that match the length of |
values |
a named numeric vector of possible values |
tol |
an optional tolerance for zero desirability. When this is non-null, zero desirabilites are replaced with this value |
... |
For |
Details
The functions dMax
, dMin
, dTarget
ande dOverall
are the basic equations used by Derringer and Suich (1980). dBox
is a simple step funciton between two points. dArb
can be used to create other shapes that do not fall into the other funcional forms. See the package vignette or the references for more details
Value
a list. Common values are:
tol |
the value specified by the |
call |
the origianl function call |
Author(s)
Max Kuhn
References
Derringer, G. and Suich, R. (1980), Simultaneous Optimization of Several Response Variables. Journal of Quality Technology 12, 214–219.
See Also
Examples
dMax.default(1,3)
dMax(1,3)
Predict method for desirability functions
Description
Predicted values based on desirability objects
Usage
## S3 method for class 'dMax'
predict(object, newdata = NA, missing = object$missing, ...)
## S3 method for class 'dMin'
predict(object, newdata = NA, missing = object$missing, ...)
## S3 method for class 'dTarget'
predict(object, newdata = NA, missing = object$missing, ...)
## S3 method for class 'dArb'
predict(object, newdata = NA, missing = object$missing, ...)
## S3 method for class 'dBox'
predict(object, newdata = NA, missing = object$missing, ...)
## S3 method for class 'dCategorical'
predict(object, newdata = NA, missing = object$missing, ...)
## S3 method for class 'dOverall'
predict(object, newdata = data.frame(NA, ncol = length(object$d)), all = FALSE, ...)
Arguments
object |
a object of class: |
newdata |
values of the response for predicting desirability |
all |
a logical (for |
missing |
a number between 0 and 1 for missing values (the internally estimated value is used by default) |
... |
no currently used |
Details
The responses are translated into desirability units.
Value
a vector, unless predict.dOverall
is used with all=TRUE
,
in which case a matrix is returned.
Author(s)
Max Kuhn
References
Derringer, G. and Suich, R. (1980), Simultaneous Optimization of Several Response Variables. Journal of Quality Technology 12, 214–219.
See Also
Examples
d1 <- dMin(1,3)
d2 <- dTarget(1, 2, 3)
d3 <- dCategorical(c("a" = .1, "b" = .7))
dAll <- dOverall(d1, d2, d3)
outcomes <- data.frame(seq(0, 4, length = 10),
seq(0.5, 4.5, length = 10),
sample(letters[1:2], 10, replace = TRUE))
names(outcomes) <- c("x1", "x1", "x3")
predict(d1, outcomes[,2])
predict(d2, outcomes[,2])
predict(d3, outcomes[,3])
predict(dAll, outcomes)
predict(dAll, outcomes, all = TRUE)