additive {nonparaeff} | R Documentation |
Linear Programming for the Additive Model
Description
Solve the Additive Model under the VRS assumption
Usage
additive(base = NULL, frontier = NULL, noutput = 1)
Arguments
base |
A data set for DMUs to be evaluated. A data frame with J1*(M+N) dimention, where J1 is the number of DMUs, M for the number of inputs, and N for the number of outputs. |
frontier |
A data set for DMUs to be used in constructing a production possibility set (PPS). A data frame with J2*(M+N) dimention, where J2 is the number of DMUs, M for the number of inputs, and N for the number of outputs. |
noutput |
The number of outputs (N). |
Details
The additive model under the VRS assumption is as follows:
\theta^{k*}_{ADD} = \max_{\lambda, s^+, s^-} \left( \sum_{m=1}^M
s^-_m + \sum_{n=1}^N s^+_n \right)
s.t.~~ x^k_m = \sum_{j=1}^J x_m^j \lambda^j + s^-_n ~ (m = 1, 2,
\cdots, M);
~~~~~~ y^k_n = \sum_{j=1}^J y_n^j \lambda^j + s^-_n ~ (n = 1, 2,
\cdots, N);
~~~~~~\sum_{j=1}^J \lambda^j = 1;
~~~~~~\lambda^j \geq 0~ (j = 1, 2, \cdots, J);~ s^-_m \geq 0~ (m = 1, 2, \cdots, M);~ s^+_n \geq 0~ (n = 1, 2, \cdots, N).
Value
A data frame with J1*(J1+M+N), which has efficiency scores, optimal weightes and optimal slacks. Take a look at the example below.
Author(s)
Dong-hyun Oh, oh.donghyun77@gmail.com
References
Cooper, W., Seiford, L. and Tone, K. (2007). Data envelopment analysis: a comprehensive text with models, applications, references and DEA-solver software (2nd ed.). Springer Verlag, New York.
Lee, J. and Oh, D. (forthcoming). Efficiency Analysis: Data Envelopment Analysis. Press (in Korean).
See Also
Examples
## Simple Example
my.dat <- data.frame(y = c(1, 2, 4, 6, 7, 9, 9),
x = c(3, 2, 6, 4, 8, 8, 10))
(re <- additive(my.dat, noutput = 1))
## Property of the Additive Model
dat1 <- data.frame(y = c(1, 1, 1, 1, 1, 1),
x1 = c(2, 3, 6, 3, 6, 6),
x2 = c(5, 3, 1, 8, 4, 2))
dat2 <- dat1
dat2$x1 <- dat2$x1 * 10
dat3 <- dat1
dat3$x1 <- dat3$x1 + 10
(re1 <- additive(dat1, noutput = 1))
(re2 <- additive(dat2, noutput = 1))
(re3 <- additive(dat3, noutput = 1))