Python实现考虑非期望产出的超效率SBM模型

一、考虑非期望产出的超效率SBM模型

(一)非期望产出超效率 SBM 模型(UOEEDEA)原理

        DEA 是一种计算多决策单元效率的非参数方法。该方法是由Charnes, Cooper 和Rhodes (CCR)于 1978 年提出,之后许多学者将该模型应用于绩效评估。数据包络分析模型从产出、投入角度划分绩效指标,其最终目标是使加权产出与加权投入的比例最大化,即提高各决策单元的效率。DEA 不仅可以处理多个可持续供应链决策单元(Charnes et al.1978),且能同时分析定量指标和定性指标(Shafiee et al.2014) 。此外,该模型具有很高的灵活性,可以应用于多准则决策技术(Golany, 1988; Spronk and Post, 1999) 。

        数据包络模型(DEA)是基于多投入、多产出变量评价同类 型决策单元相对有效的方法。Tone提出的SBM-DEA模型考虑了生产中的“松弛”问题,将松弛变量 直接纳入目标函数中,克服了在测定效率时环境和资源因素被忽视的问题,并且在产出中使用非期望产出。为了更准确地测算绿色经济效率,本文引入非期望产出的超效率SBM-DEA模型,决策单元的效率 值不受[0,1]的限制,可更准确地测算效率值为1的DMU,优化了效率评价问题

         显著优点在于它能在考虑非期望产出的同时,对有效决策单元分解排序,从而提高了效率评价的准确性和实用性。        

(二)ptyhon实现UOEEDEA过程

import numpy as np
from scipy.optimize import linprog

def super_efficiency_dea(inputs, outputs, crs=True):
    '''
    超效率DEA模型计算函数
    :param inputs: 输入指标的二维数组,每行代表一个决策单元的输入指标
    :param outputs: 输出指标的二维数组,每行代表一个决策单元的输出指标
    :param crs: 是否假设规模报酬不变 (默认为True)
    :return: 超效率DEA模型计算结果,即每个决策单元的效率分数
    '''
    num_units = len(inputs)
    num_inputs = len(inputs[0])
    num_outputs = len(outputs[0])

    efficiencies = []

    for i in range(num_units):
        # 构造正则化线性规划问题
        c = np.zeros(num_units)
        c[i] = -1

        A_ub = np.concatenate((outputs.T, -inputs.T), axis=1)
        b_ub = np.zeros(num_inputs + num_outputs)

        if crs:
            # 假设规模报酬不变,添加约束条件
            A_ub = np.concatenate((A_ub, np.ones((1, num_units))), axis=0)
            b_ub = np.concatenate((b_ub, [1]))

        # 解决线性规划问题
        result = linprog(c, A_ub=A_ub, b_ub=b_ub, method='highs')

        # 计算效率
        efficiency = 1 / result.fun
        efficiencies.append(efficiency)

    return efficiencies

# 示例数据
inputs = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
outputs = np.array([[10, 11], [12, 13], [14, 15]])

efficiencies_crs = super_efficiency_dea(inputs, outputs, crs=True)
print("效率分数(假设规模报酬不变):", efficiencies_crs)

efficiencies_vrs = super_efficiency_dea(inputs, outputs, crs=False)
print("效率分数(假设规模报酬可变):", efficiencies_vrs)

        其中,crs参数,用于决定是否使用规模报酬不变的假设。当crs为True时,将添加约束条件以考虑规模报酬不变;当crs为False时,则不添加约束条件,表示规模报酬可变。

二、DEA模型Q&A向

Q:GM指数、ML指数与ML指数是啥?

A:学术界常把DEA模型计算的生产率指数作为全要素生产率或者绿色全要素生产率的替代指标,现有文献中更为常见的GM(Global Malmquist)指数、ML(Malmquist_Luenberger)指数和GML(Global Malmquist_Luenberger)指数,其本质上都是Malmquist指数。(DEA模型中任何一个小小改动都可以产生一个新模型,因此,判断一个模型是否相同主要看公式和引用的参考文献,而不是名称。)

        ML指数是考虑非期望产出DEA模型计算的M指数。GM指数是通过全局DEA模型计算的M指数,而GML指数自然的就是考虑非期望产出的全局DEA模型计算的M指数。

        M指数和L指数都是通过测度效率的变动情况而构造的生产率指数,区别在于M指数是通过比值,而L指数是通过两者之差。两个指数都可以分解为效率变化(EC)和技术变化(TC),而很多文章中出现的技术进步、规模效率变化和纯效率变化,都是后期学者根据自己的见解所做的不同分解。就M指数而言,比较常见的有FGNZ分解、RD分解和Zofio分解。目前学界对于M指数或L指数本身已达成共识,但对于指数分解部分不同学者则有不同看法,分歧较大。指数分解不管怎么变,对于计算总指数和指数分解用的效率值大都是一样的。      

  全局DEA模型是以所有年份所有省份数据构成的生产前沿面,即所有数据只有一个前沿面。而普通的DEA模型都是通过每一年的所有省份建立的生产前沿面,即一年一个前沿面。

Q:超效率DEA、非期望产出 SBM模型 与非期望产出超效率 SBM 模型有何异同?

A:超效率 DEA模型是由 Andersen等正式提出的, 以此来解决传统 DEA 模型不能具体区分多个决策单 元同时为 1 的情况,也有效地克服了所测算效率值不 能超过 1 的约束条件,使得各有效单元得以进一步相 互比较。

         非期望产出 SBM 模型是为了有效解决由于传统 DEA 模型的径向和角 度所带来的问题,Tone先是提出了将投入、产 出松弛变量引入其中的非径向以及非角度的 SBM 模 型;随后,Tone再次提出了考虑非期望产出的 SBM 模型,在原来的基础上综合考虑了非期望产出 这一重要指标,不仅优化了传统的 DEA 模型,而且 效率测算的准确度也大大提高了。

       非期望产出超效率 SBM 模型在非期望产出 SBM 模型中,存在着决策单元同时为1的情况,不利于进一步对决策单元进行相互之间的比较,也无法更加准确地对决策单元进行测 算结果排序,为此,Tone通过修正了松弛变量, 又进一步提出了超效率 SBM 模型 (super-SBM),该模型的优越之处在于通过结合了超效率 DEA 模型以及SBM 模型这两个模型各自的优点,以解决此问题。

三、他(参)山(考)之(引)石(用)

[1]【Dearun】数据包络分析(DEA)方法及各类模型的计算方法详解及软件实现_哔哩哔哩_bilibili

[2]含非期望产出的SBM,超效率SBM模型求解及其python实现 - 知乎 (zhihu.com)

[3]郗永勤,吉星.我国工业行业碳排放效率实证研究——考虑非期望产出SBM超效率模型与DEA视窗方法的应用[J].科技管理研究,2019,39(17):53-62.

[4]吴齐 .区域碳排放效率评价与影响因素的空间计量分析[D]. 蚌埠 : 安徽财经大学

  • 6
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
面板数据期望产出效率(Semi-Balanced Efficiency Measure, SBM模型是一种用于评估面板数据中企业或组织的效率的方法。该模型基于数据包络分析(Data Envelopment Analysis, DEA)方法,在传统的DEA方法的基础上进行改进。 MATLAB代码实现SBM模型可以分为以下几个步骤: 1. 准备数据:收集所需数据,包括各个企业或组织的输入和产出指标数据。将数据以矩阵的形式导入MATLAB。 2. 构建SBM模型:使用MATLAB中的线性规划函数(如linprog)构建SBM模型。根据实际情况,设定各个企业或组织的输入产出权重范围等约束条件。通过目标函数最大化或最小化来确定各个企业或组织的效率。 3. 运行模型:通过调用MATLAB中的线性规划函数来运行SBM模型模型将根据设定的约束条件和目标函数进行计算,得到每个企业或组织的效率评估结果。 4. 分析结果:对模型输出的结果进行进一步分析和解读,评估各个企业或组织的效率水平。根据结果,可以进行效率改进或调整策略,提高整体效率。 需要注意的是,SBM模型的准确性和有效性取决于数据的质量和模型的构建参数。在进行模型实施前,务必对数据进行清洗和验证,并进行合理的模型参数设定。 以上是关于面板数据期望产出效率SBM模型的MATLAB代码的简要介绍,实际的代码实现可能还涉及一些细节和特定的实际问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

封印师请假去地球钓鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值