CCR 数据包络分析
一、直观理解:在“规模报酬不变”下找谁投入少产出多
数据包络分析(DEA)评价多投入、多产出的决策单元(DMU)相对效率。CCR 模型(Charnes–Cooper–Rhodes)假设规模报酬不变(CRS):投入按比例缩放,产出同比例缩放仍可行。
效率像“用更少资源生产更多成果”。DEA 不需要预知生产函数形式,而是用线性规划在样本中撑起生产前沿:落在前沿上的 DMU 效率为 1,内部点小于 1。
二、适用场景与优缺点
| 类型 | 说明 |
|---|---|
| 适用场景 | 银行网点、医院、学校、城市、项目等多投入多产出;同质 DMU;关注相对效率。 |
| 核心优点 | 无需权重先验(由模型内生);可处理多产出;给出标杆与改进方向(对偶松弛)。 |
| 局限与缺点 | 相对效率,样本一变结果变;对指标选择敏感;CRS 可能不符合现实;DMU 数宜明显多于投入产出数;极端值影响前沿。 |
三、核心原理
投入导向 CRS 包络形式(评价 DMU):
为技术效率。 且松弛为 0 时称强有效。
等价的分式规划形式:选择投入/产出权重,使该 DMU 的效率比最大,并约束所有 DMU 的效率比不超过 1。产出导向则固定投入、最大化产出扩张比例。
四、关键决策
| 决策点 | 建议 |
|---|---|
| 投入/产出 | 越多越好 → 产出;越少越好 → 投入 |
| 导向 | 投入更可控 → 投入导向 |
| CRS vs VRS | 规模影响大 → 改用 BCC |
| DMU 数量 | 经验上 量级 |
| 指标 | 避免高度重复;径向 DEA 对单位不敏感 |
五、MATLAB 示例
使用 linprog 求解投入导向 CCR:
% 行 = DMU,列 = 投入/产出
Xin = [
2 3;
3 2;
4 5;
2 4
];
Yout = [
1;
1;
2;
1
];
X = Xin'; % m x n
Y = Yout'; % s x n
[m, n] = size(X);
s = size(Y, 1);
theta = zeros(n, 1);
options = optimoptions("linprog", "Display", "off");
for j0 = 1:n
% 变量 z = [theta; lambda(1..n)]
% min theta
% s.t. X*lambda <= theta * x0 → -x0*theta + X*lambda <= 0
% Y*lambda >= y0 → -Y*lambda <= -y0
f = [1; zeros(n, 1)];
A = [
-X(:, j0), X;
zeros(s,1), -Y
];
b = [zeros(m, 1); -Y(:, j0)];
lb = zeros(n + 1, 1);
[z, ~, exitflag] = linprog(f, A, b, [], [], lb, [], options);
if exitflag > 0
theta(j0) = z(1);
else
theta(j0) = NaN;
end
end
disp("CCR 投入导向效率 θ:");
disp(theta');
disp("有效 DMU(θ≈1):");
disp(find(theta > 1 - 1e-6)');
六、如何解释结果
- 有效单元作为标杆;
- 无效单元 的含义:在保持产出下,投入可径向缩至 倍(理想情形);
- 松弛变量:径向收缩后是否还需额外减投入或增产出;
- 指标定义与样本边界;
- 与 BCC 对比,区分纯技术效率与规模效率。
七、常见误区
1. 把相对效率当绝对生产力
换一批可比对象,前沿就会变。
2. DMU 太少、指标太多
容易“人人有效”,失去区分度。
3. 产出与投入放反
效率方向完全错误。
4. 忽略同质性
不可比单位硬放同一前沿。
5. 只报 不谈改进路径
浪费 DEA 的标杆信息。
附:建模论文中的写法要点
- 问题对应:用一两句话说明为何该方法匹配题目数据结构与目标(分类/分群/排序/效率)。
- 符号与步骤:按“输入 → 预处理 → 核心计算 → 输出指标”列出编号步骤,公式与代码变量名一致。
- 参数表:列出全部可调参数、取值、选取依据(CV、信息准则、业务约束或灵敏度)。
- 结果呈现:主结果用表格;辅以 1–2 张图(边界、树状图、得分条形图、效率分解等)。
- 稳健性:至少做一种扰动——删点、换权重、换距离、换初值或换阈值,观察结论是否保持。
- 局限:主动写明假设(球状簇、线性可分、CRS、完全补偿等)及适用边界,避免被质询时被动。
若主方法结论与合理基线(如 K-means 对 GMM、加权和对 TOPSIS、CCR 对 BCC)严重冲突,应回到数据质量与指标方向检查,而不是只报告“更好看”的一种结果。
附:计算检查清单
在提交结果前,建议按下列清单快速自检:
- 输入矩阵:行/列含义是否与正文一致,有无缺失、重复行、单位混用。
- 方向与尺度:极小型是否已正向化;聚类/距离类是否已标准化;评价类权重是否归一。
- 参数来源:所有阈值、簇数、核宽、理想解定义能否在正文找到依据。
- 数值稳定:协方差/相关是否接近奇异;DEA 线性规划是否全部求解成功;对数/除零是否加保护。
- 随机性:涉及随机初值的算法是否固定种子并报告多次结果的稳定性。
- 验证协议:分类任务是否严格隔离测试集;重采样/SMOTE 是否仅用于训练折。
- 图表编号:主结论表与图在正文中被引用,而不是只放附录。
- 可复现:给出软件版本(如 MATLAB R20xx)与关键函数名,使读者能重跑最小示例。
不满足清单中任一项时,优先修正流程,再讨论“方法先进性”。对综合评价题,额外检查:更换一种合理权重后,前三名是否大体稳定;若剧烈跳动,应降低对精细名次的措辞强度。
八、小结
CCR 在规模报酬不变假设下,用线性规划测度 DMU 的径向相对效率,是 DEA 的经典起点。
适用于多投入多产出的相对有效性评价;若规模因素重要,应继续采用 BCC 做分解。