Data Envelopment Analysis

dataenvelop

JMcDM.DataEnvelop.dataenvelopFunction
    dataenvelop(input, output; verbose = false)

Apply data envelop analysis for a given input matrix and an output vector.

Arguments:

  • input::Array{Float,2}: n × m matrix of input values.
  • output::Array{Float64, 1}: n-vector of output values.
  • verbose::Bool: Logical value indicating whether to show optimizition logs. Default is false.

Description

dataenvlope() applies the data envelop analysis to calculate efficiencies of cases.

Output

  • ::DataEnvelopResult: DataEnvelopResult object that holds many results including efficiencies and rankings.

Examples

julia> using JuMP, Ipopt, JMcDM

julia> x1 = [96.0, 84, 90, 81, 102, 83, 108, 99, 95];
julia> x2 = [300.0, 282, 273, 270, 309, 285, 294, 288, 306];
julia> out = [166.0, 150, 140, 136, 171, 144, 172, 170, 165];
julia> inp = hcat(x1, x2);

julia> result = dataenvelop(inp, out);

julia> result.orderedcases
9-element Array{Symbol,1}:
 :Case8
 :Case2
 :Case7
 :Case1
 :Case9
 :Case6
 :Case5
 :Case4
 :Case3

julia> result.efficiencies
9-element Array{Float64,1}:
 0.9879815986198964
 0.9999999999999999
 0.8959653733189055
 0.9421686746987951
 0.9659435120753173
 0.9715662650602411
 0.9911164465786314
 1.0
 0.9841048789857857

References

İşletmeciler, Mühendisler ve Yöneticiler için Operasyonel, Yönetsel ve Stratejik Problemlerin Çözümünde Çok Kriterli Karar verme Yöntemleri, Editörler: Bahadır Fatih Yıldırım ve Emrah Önder, Dora, 2. Basım, 2015, ISBN: 978-605-9929-44-8

Dependencies

This method is enabled when the JuMP and Ipopt packages are installed and loaded.

source