Learn R Programming

SdeaR (version 1.0.2)

modelstoch_addsupereff: Chance Constrained Super-efficiency Additive E-model.

Description

It solves the chance constrained super-efficiency additive E-model based on the deterministic super-efficiency additive model from Du et al. (2010), under constant and non-constant returns to scale. Besides, the user can set weights for the input and/or output slacks.

We consider \(\mathcal{D}=\left\{ \textrm{DMU}_1, \ldots ,\textrm{DMU}_n \right\} \) a set of \(n\) DMUs with \(m\) stochastic inputs and \(s\) stochastic outputs. Matrices \(\tilde{X}=(\tilde{x}_{ij})\) and \(\tilde{Y}=(\tilde{y}_{rj})\) are the input and output data matrices, respectively, where \(\tilde{x}_{ij}\) and \(\tilde{y}_{rj}\) represent the \(i\)-th input and \(r\)-th output of the \(j\)-th DMU. Moreover, we denote by \(X=(x_{ij})\) and \(Y=(y_{rj})\) their expected values. In general, we denote vectors by bold-face letters and they are considered as column vectors unless otherwise stated. The \(0\)-vector is denoted by \(\bm{0}\) and the context determines its dimension.

Given \(0<\alpha <1\), the program for \(\text{DMU}_o\) with constant returns to scale is given by $$\min \limits_{\bm{\lambda},\mathbf{t}^-,\mathbf{t}^+}\quad \mathbf{w}^-\mathbf{t}^-+\mathbf{w}^+\mathbf{t}^+$$ $$\text{s.t.}\quad P\left\{ \left( \tilde{\mathbf{x}}_o-\tilde{X}_{-o} \bm{\lambda}+\mathbf{t}^-\right) _i\geq 0\right\}\geq 1-\alpha ,\qquad i=1,\ldots ,m,$$ $$P\left\{ \left( \tilde{Y}_{-o}\bm{\lambda}-\tilde{\mathbf{y}}_o+ \mathbf{t}^+\right) _r\geq 0\right\}\geq 1-\alpha ,\qquad r=1,\ldots ,s,$$ $$\bm{\lambda}\geq \mathbf{0},\,\, \mathbf{t}^-\geq \mathbf{0},\,\, \mathbf{t}^+\geq \mathbf{0},$$ where \(\tilde{X}_{-o},\tilde{Y}_{-o}\) are the input and output data matrices, respectively, defined by \(\mathcal{D}-\left\{ \textrm{DMU}_o\right\}\), \(\bm{\lambda} =(\lambda_1,\ldots ,\lambda_{o-1},\lambda_{o+1},\ldots ,\lambda_n)^{\top}\), \(\tilde{\mathbf{x}}_o=(\tilde{x}_{1o},\ldots,\tilde{x}_{mo})^\top\) and \(\tilde{\mathbf{y}}_o=(\tilde{y}_{1o},\ldots,\tilde{y}_{so})^\top\) are column vectors. Moreover, \(\mathbf{s}^-,\mathbf{s}^+\) are column vectors with the slacks, and \(\mathbf{w}^-,\mathbf{w}^+\) are positive row vectors with the weights for the slacks. Different returns to scale can be easily considered by adding the corresponding constraints: \(\mathbf{e}\bm{\lambda}=1\) (VRS), \(0\leq \mathbf{e}\bm{\lambda} \leq 1\) (NIRS), \(\mathbf{e}\bm{\lambda}\geq 1\) (NDRS) or \(L\leq \mathbf{e} \bm{\lambda}\leq U\) (GRS), with \(0\leq L\leq 1\) and \(U\geq 1\), where \(\mathbf{e}=(1,\ldots ,1)\) is a row vector.

The deterministic equivalent for a multivariate normal distribution of inputs/outputs is given by $$\min \limits_{\bm{\lambda},\mathbf{t}^-,\mathbf{t}^+}\quad \mathbf{w}^-\mathbf{t}^-+\mathbf{w}^+\mathbf{t}^+$$ $$\text{s.t.}\quad \mathbf{x}_o-X_{-o}\bm{\lambda}+\mathbf{t}^-+\Phi ^{-1} (\alpha)\bm{\sigma} ^-(\bm{\lambda})\geq \mathbf{0},$$ $$Y_{-o}\bm{\lambda}-\mathbf{y}_o+\mathbf{t}^++\Phi ^{-1}(\alpha) \bm{\sigma}^+(\bm{\lambda})\geq \mathbf{0},$$ $$\bm{\lambda}\geq \mathbf{0},\,\, \mathbf{t}^-\geq \mathbf{0},\,\, \mathbf{t}^+\geq \mathbf{0},$$ where \(\Phi \) is the standard normal distribution, and $$\displaystyle \left( \sigma ^-_i\left( \bm{\lambda}\right)\right) ^2=\sum _ {\substack{j,q=1\\j,q\neq o}}^n\lambda _j\lambda _q\mathrm{Cov}(\tilde{x}_{ij}, \tilde{x}_{iq})-2\sum _{\substack{j=1\\j\neq o}}^n\lambda _j\mathrm{Cov} (\tilde{x}_{ij},\tilde{x}_{io})$$ $$+\mathrm{Var}(\tilde{x}_{io}),\quad i=1,\ldots ,m,$$ $$\displaystyle \left( \sigma ^+_r\left( \bm{\lambda}\right)\right) ^2=\sum _ {\substack{j,q=1\\j,q\neq o}}^n\lambda _j\lambda _q\mathrm{Cov} (\tilde{y}_{rj},\tilde{y}_{rq})-2\sum _{\substack{j=1\\j\neq o}}^n \lambda _j\mathrm{Cov}(\tilde{y}_{rj},\tilde{y}_{ro})$$ $$+\mathrm{Var}(\tilde{y}_{ro}),\quad r=1,\ldots ,s.$$

Usage

modelstoch_addsupereff(datadea,
               alpha = 0.05,
               dmu_eval = NULL,
               dmu_ref = NULL,
               orientation = NULL,
               weight_slack_i = NULL,
               weight_slack_o = NULL,
               rts = c("crs", "vrs", "nirs", "ndrs", "grs"),
               L = 1,
               U = 1,
               solver = c("alabama", "cccp", "cccp2", "slsqp"),
               n_attempts_max = 5,
               compute_target = TRUE,
               returnqp = FALSE,
               ...)

Value

A list with the results for the evaluated DMUs and other parameters for reproducibility.

Arguments

datadea

The data of class deadata_stoch, including n DMUs, and the expected values of m inputs and s outputs.

alpha

A value for parameter alpha.

dmu_eval

A numeric vector containing which DMUs have to be evaluated. If NULL (default), all DMUs are considered.

dmu_ref

A numeric vector containing which DMUs are the evaluation reference set. If NULL (default), all DMUs are considered.

orientation

This parameter is either NULL (default) or a string, equal to "io" (input-oriented) or "oo" (output-oriented). It is used to modify the weight slacks. If input-oriented, weight_slack_o are taken 0. If output-oriented, weight_slack_i are taken 0.

weight_slack_i

A value, vector of length m, or matrix m x ne (where ne is the length of dmu_eval) with the weights of the input super-slacks (t_input). If 0, output-oriented. If weight_slack_i is the matrix of the inverses of inputs of DMUS in dmu_eval (default), the model is unit invariant.

weight_slack_o

A value, vector of length s, or matrix s x ne (where ne is the length of dmu_eval) with the weights of the output super-slacks (t_output). If 0, input-oriented. If weight_slack_o is the matrix of the inverses of outputs of DMUS in dmu_eval (default), the model is unit invariant.

rts

A string, determining the type of returns to scale, equal to "crs" (constant), "vrs" (variable), "nirs" (non-increasing), "ndrs" (non-decreasing) or "grs" (generalized).

L

Lower bound for the generalized returns to scale (grs).

U

Upper bound for the generalized returns to scale (grs).

solver

Character string with the name of the solver used by function solvecop from package optiSolve.

n_attempts_max

A value with the maximum number of attempts if the solver does not converge. Each attempt uses a different initial vector.

compute_target

Logical. If it is TRUE, it computes targets, projections and slacks.

returnqp

Logical. If it is TRUE, it returns the quadratic problems (objective function and constraints).

...

Other parameters, like the initial vector X, to be passed to the solver.

Author

Vicente Bolós (vicente.bolos@uv.es). Department of Business Mathematics

Rafael Benítez (rafael.suarez@uv.es). Department of Business Mathematics

Vicente Coll-Serrano (vicente.coll@uv.es). Quantitative Methods for Measuring Culture (MC2). Applied Economics.

University of Valencia (Spain)

References

Du, J.; Liang, L.; Zhu, J. (2010). "A Slacks-based Measure of Super-efficiency in Data Envelopment Analysis. A Comment", European Journal of Operational Research, 204, 694-697. tools:::Rd_expr_doi("10.1016/j.ejor.2009.12.007")