qDEAbuild: qDEAbuild: Builds qDEA LP object for use in qDEA_solve...

View source: R/qDEA.R

qDEAbuildR Documentation

qDEAbuild: Builds qDEA LP object for use in qDEA_solve function

Description

qDEAbuild: Builds qDEA LP object for use in qDEA_solve function

Usage

qDEAbuild(
  X,
  Y,
  X0,
  Y0,
  DX0,
  DY0,
  qout = 0.1,
  dmu0 = 1,
  RTS = "CRS",
  unbounded = -1000,
  solver = "highs"
)

Arguments

X

Reference dmu's = ndmu x number of inputs input matrix.

Y

Reference dmu's = ndmu x number of outputs output matrix.

X0

Inputs for set of ndmu0 dmu's to be processed.

Y0

Outputs for set of ndmu0 dmu's to be processed.

DX0

Input directions for ndmu0 dmu's in X0 and Y0.

DY0

Output directions for ndmu0 dmu's in X0 and Y0.

qout

Maximal proportion of dmu's allowed external to DEA hull.

dmu0

Row in (X0,Y0,DX0,DY0) to use as given dmu

RTS

Returns to scale: 'CRS,'VRS,'DRS','IRS.

unbounded

DEA obj restricted >= to unbounded. Default = -1E3

solver

LP solver Default='highs'

Value

Returns an LP list object containing the following elements:

LPsense = 'max' or 'min'

nnz = number of nonzero elements in 'A' matrix

nr = number or rows in 'A' matrix

nc = number of columns in 'A' matrix

obj = nc length vector of objective coefficients

ra = nonzero coefficients in 'A' matrix

ia = row indexes for non zero elements in 'A' matrix

ja = column indexes for non zero elements in 'A' matrix

SMM = Sparse matrix method: 'CMO','RMO','CRI',or 'RCI'

ZINDEX = 'zero indexing' (T) or 'one indexing' (F)

dirs = nr length vector of constaint signs ('<=','>=', or '=')

rhs = nr length vector of RHS coefficients

xlower = nc vector of lower bounds on 'x' choice variables

xupper = nc vector of upper bounds on 'x' choice variables

rlower = nr vector of Ax lower bounds i.e. rlower <= Ax

rupper = nr vector of Ax upper bounds i.e. Ax <= rupper

vartypes = nc vector of variable types: ('C','B','I') – qDEA:rep('C',nc)

yxchngC = index of given dmu's output-input values locations in ra vector (used to edit LP problem as we loop through DMU's in (X0,Y0,DX0,DY0)

dyxchngC = index of given dmu's direction values locations in ra vector (used to edit LP problem as we loop through DMU's in (X0,Y0,DX0,DY0)

yxchngR = index of given dmu's output-input values locations in ra vector (used to edit LP problem as we loop through DMU's in (X0,Y0,DX0,DY0)

iyxchngC = row indexes associated with yxchngC cells

idyxchngC = row indexes associated with dyxchngC cells

iyxchngR = row indexes associated with yxchngR cells

DOBJ = matrix of obj values to change by dmu with DOBJ=cbind(-Y0,X0)

DYX = matrix of (dy,dx) values to change by dmu with DYX=cbind(DY0,DX0)

qchng = index of 1/q value location in ra vector (used to edit LP problem as we iterate qDEA

RTS = Returns to scale: 'CRS,'VRS,'DRS','IRS.

dmu0 = Row in (X0,Y0,DX0,DY0) to use as given dmu.

devstart = LP index for column of first qDDEA-S1 LPM "deviation" value

devend = LP index for column of last qDDEA-S1 LPM "deviation" value

tau0 = parameter used in iterative qDEA process


qDEA documentation built on April 13, 2026, 5:07 p.m.