DEA模型复现介绍:非对称纳什-核心讨价还价成本分摊三模型(固定成本 + 可变成本)
DEA模型复现介绍:非对称纳什-核心讨价还价成本分摊三模型
一、论文基本信息
论文题目: 基于非对称纳什合作博弈理论的DEA成本分摊研究(Cost allocation method using asymmetrical Nash bargaining DEA game) 作者: 王青筠(导师:孟凡永 教授) 单位: 中南大学 管理科学与工程 年份: 2024 年 5 月(硕士学位论文,71 页,2 图 18 表 83 篇参考文献) 同题英文期刊版: Fixed cost allocation using asymmetrical core-Nash bargaining DEA game, Journal of the Operational Research Society, 2023/2024
这篇论文做的是成本分摊里一个非常经典、又非常容易被做浅的问题:
一组同质的决策单元(DMU)共同使用一个平台、共享一套资源时,产生的共同成本应该怎么分,才能让所有人都愿意继续合作?
它给出的答案是:把 DEA 的效率评价能力,和合作博弈的分配理论缝在一起——用 DEA 客观测算"谁承担得起多少",用非对称纳什讨价还价决定"谁该分多少",再用核心(Core)保证"这个方案没人想反悔"。
二、这篇论文为什么要做三套模型?
成本分摊的痛点,论文概括为一个词:"自私困境"(self-interest dilemma)。
传统 DEA 的特点是完全独立决策:每个 DMU 只优化自己。于是当每个 DMU 都试图少分摊一点时,总成本无法被完整分配,中央决策者的目标落空。
论文的解决路径是一条递进的三级台阶:
- 模型一(第 3 章):先解决"公平"——引入不满意度与非对称议价能力,让分配结果唯一且可解释;
- 模型二(第 4 章):再解决"稳定"——只有公平还不够,还要保证大联盟不会分裂,于是构造具有非空核心的联盟合作博弈;
- 模型三(第 5 章):最后解决"现实"——很多情况下成本不是固定的,DMU 合作后成本会下降,这时该怎么分?
三套模型共享同一条主线:
用 DEA 算出客观边界,用非对称纳什讨价还价选出唯一公平解,用核心锁住联盟稳定性。
三、三个模型的核心公式
这一部分是整篇论文的技术骨架。如果你只想要"一眼看懂它在干什么",看这三个公式就够了。
3.1 模型一:基于不满意度的非对称纳什讨价还价 DEA 固定成本分摊
第一步,先给每个 DMU 定出"能承受的区间"。 论文从效率最大化视角,求解每个 DMU 分摊成本的上下界:
\[ \begin{aligned} \max\Big/\min\;\; & R_d \\ \text{s.t.}\;\; & R_j=\sum_{r=1}^{q}u_ry_{rj}-\sum_{i=1}^{m}v_ix_{ij},\quad j=1,\dots,n\\ & \sum_{j=1}^{n}R_j=R\\ & v_i\ge 0,\;\; u_r\ge 0,\;\; R_j\ge 0 \end{aligned} \]
其中 \(R\) 是待分摊的固定成本总额,\(u_r\)、\(v_i\) 是对所有 DMU 共同的产出/投入权重。解出上界 \(\overline{R}_j\) 与下界 \(\underline{R}_j\) 后,不满意度定义为:
\[ \rho_j=\frac{R_j-\underline{R}_j}{\overline{R}_j-\underline{R}_j},\qquad j=1,\dots,n \]
这个定义很巧:它把每个 DMU 分摊到的成本,映射成它在"最理想"与"最不愿接受"之间的相对位置,取值恰好落在 \([0,1]\)。
第二步,用交叉效率定义议价能力。 论文没有人为预设权重,而是用仁慈型交叉效率中的自评效率 \(E_j^{*}\) 与同行评价效率 \(E_j^{peer*}\) 之差来刻画"这个 DMU 有多容易被别人质疑":
\[ \varphi_j=\frac{E_j^{*}-E_j^{peer*}}{\sum_{j=1}^{n}\left(E_j^{*}-E_j^{peer*}\right)},\qquad \sum_{j=1}^{n}\varphi_j=1 \]
第三步,把两者放进非对称纳什讨价还价模型:
\[ \begin{aligned} \max\;\; & \prod_{j=1}^{n}\left(\frac{R_j-\underline{R}_j}{\overline{R}_j-\underline{R}_j}\right)^{\varphi_j} \\ \text{s.t.}\;\; & R_j=\sum_{r=1}^{q}u_ry_{rj}-\sum_{i=1}^{m}v_ix_{ij},\quad j=1,\dots,n\\ & \sum_{j=1}^{n}R_j=R,\qquad v_i\ge 0,\;\; u_r\ge 0 \end{aligned} \]
论文 定理 3-1 证明:取对数后目标函数是严格凸规划,因此该模型存在全局唯一最优解。
这一步是全文的"方法论心脏":指数 \(\varphi_j\) 让议价能力强的 DMU 承担更多成本,而乘积形式保证所有 DMU 的不满意度被"均衡化"。
3.2 模型二:核心-非对称纳什讨价还价 DEA 固定成本分摊
模型一保证了公平与唯一,但它只强调个体理性与帕累托有效——不保证大联盟的稳定。
论文的补救方式很漂亮:构造一个具有非空核心的合作博弈。
先定义议价能力(这一章升级为双因素):
\[ \varphi_j=\lambda P_j+(1-\lambda)Q_j \]
其中 \(Q_j\) 是标准化后的自评-他评差距,\(P_j\) 是运营规模:
\[ P_j=\sum_{i=1}^{m}\hat{x}_{ij}+\sum_{r=1}^{q}\hat{y}_{rj},\qquad \hat{x}_{ij}=\frac{x_{ij}}{\sum_{j=1}^{n}x_{ij}},\qquad \hat{y}_{rj}=\frac{y_{rj}}{\sum_{j=1}^{n}y_{rj}} \]
论文取 \(\lambda=0.5\),即"规模"与"被质疑程度"等权。
再构造联盟成本上界 \(C(K)\): 对任意联盟 \(K\),在所有 DMU 分摊后效率不降低的前提下,求该联盟能承担的最大成本:
\[ \begin{aligned} C(K):\;\;\max\;\; & \sum_{j\in K}R_j \\ \text{s.t.}\;\; & \sum_{r=1}^{q}u_ry_{rj}-E_j^{*}\Big(\sum_{i=1}^{m}v_ix_{ij}+R_j\Big)\ge 0,\quad \forall j\\ & \sum_{r=1}^{q}u_ry_{rj}-\sum_{i=1}^{m}v_ix_{ij}-R_j\le 0,\quad \forall j\\ & \sum_{r=1}^{q}u_r\sum_{j\in K}y_{rj}-\sum_{i=1}^{m}v_i\sum_{j\in K}x_{ij}-\sum_{j\in K}R_j=0\\ & \sum_{j=1}^{n}R_j=R \end{aligned} \]
特征函数(收益型博弈):
\[ v(K)=\sum_{j\in K}C_j-C(K) \]
论文证明 \(v\) 具有超可加性、且是均衡博弈(定理 4-1 ~ 4-3),从而核心非空。最后把核心约束嵌进讨价还价模型:
\[ \begin{aligned} \max\;\; & \prod_{j=1}^{n}\left(\frac{C_j-R_j}{R}\right)^{1/\varphi_j}\\ \text{s.t.}\;\; & \sum_{r=1}^{q}u_ry_{rj}-E_j^{*}\Big(\sum_{i=1}^{m}v_ix_{ij}+R_j\Big)\ge 0,\quad\forall j\\ & \sum_{j\in K}R_j\le C(K),\qquad \forall K\in P(N)\setminus N\\ & \sum_{j=1}^{n}R_j=R,\qquad R_j\ge0 \end{aligned} \]
注意指数从 \(\varphi_j\) 变成了 \(1/\varphi_j\):因为效用从"成本型"\(R_j\) 换成了"利润型"\(C_j-R_j\),议价能力的方向要做倒数处理(论文注释 4-2 给出了完整的单调性证明)。
定理 4-5 同样证明了全局唯一最优解。
3.3 模型三:核心-非对称纳什讨价还价 DEA 可变成本分摊
现实里更常见的是:DMU 通过合作共享信息、互相学习,成本会下降。这时"共同成本"本身是待测量的。
论文先用 DEA 求出联盟 \(K\) 的理想(最低)成本:
\[ C(K)=\min\;\sum_{i=1}^{m}p_i\sum_{d\in K}x'_{id} \quad\text{s.t.}\quad \sum_{j\in K}\lambda_jx_{ij}\le\sum_{d\in K}x'_{id},\;\; \sum_{j\in K}\lambda_jy_{rj}\ge\sum_{d\in K}y_{rd} \]
其中 \(p_i\) 是投入单价,\(x'_{id}\) 是合作后的理想投入(决策变量)。
成本效率(即议价能力):
\[ \varphi_j=\rho_j(N)=\frac{\sum_{i=1}^{m}p_ix'^{N*}_{ij}}{\sum_{i=1}^{m}p_ix_{ij}} \]
成本型特征函数:
\[ v(K)=\sum_{i=1}^{m}p_i\sum_{d\in K}x'^{*}_{id} \]
与第 4 章不同,这里是次可加的(定理 5-2)——合作越充分,总成本越低。论文进一步证明其核心非空(定理 5-3)。
最终分摊模型:
\[ \max\;\prod_{j=1}^{n}\left(\frac{h_j-h_j^{l}}{h_j^{u}-h_j^{l}}\right)^{1/\varphi_j} \quad\text{s.t.}\quad \sum_{j\in K}h_j\le v(K),\;\;\forall K,\qquad \sum_{j\in N}h_j=v(N) \]
其中 \(h_j^{l}\)、\(h_j^{u}\) 由谈判破裂点模型给出,是每个 DMU 能接受的成本下界与上界。
四、三个模型的递进关系
把三套模型放在一起看,逻辑非常清晰:
| 模型一(第3章) | 模型二(第4章) | 模型三(第5章) | |
|---|---|---|---|
| 分摊对象 | 固定成本 | 固定成本 | 可变成本 |
| 议价能力来源 | 交叉效率自评-他评差距 | 差距 + 运营规模 | 成本效率 |
| 效用 | 不满意度 | 利润 \(C_j-R_j\) | 相对理想成本的改善 |
| 博弈类型 | 非对称纳什讨价还价 | 非对称纳什 + 核心 | 非对称纳什 + 核心 |
| 保证性质 | 唯一性、公平性 | 唯一性、公平性、联盟稳定性 | 同左,且刻画合作降本 |
| 理论支撑 | 定理 3-1 | 定理 4-1 ~ 4-5 | 定理 5-1 ~ 5-4 |
一句话概括递进逻辑:
模型一解决"分得公不公平";模型二解决"分了之后会不会有人退出";模型三解决"合作本身让成本变了怎么办"。
五、这套模型难复现在哪里
从复现者角度,这篇论文的难度不在公式本身,而在三个隐蔽的工程陷阱:
1. 三层嵌套的求解结构
每个模型都不是"一个 LP 一次性吐结果",而是:
- 外层:非线性纳什讨价还价(需 NLP 求解器);
- 中层:联盟特征函数——对 \(2^n\) 个子集逐个求解 LP(12 个 DMU 就是 4095 个 LP);
- 内层:DEA 效率评价与交叉效率(每个 DMU 一次 LP)。
以第 4 章为例,核心约束多达 4094 条,配合非线性目标,是一道标准的"大规模 MINLP 味道"的题。
2. 目标函数的数值尺度陷阱(最关键)
这一点在论文正文里完全看不出来,但它是复现成败的分水岭:
| 章节 | 目标函数形式 | 指数之和 | 目标值量级 |
|---|---|---|---|
| 第 3 章 | \(\prod(\cdot)^{\varphi_j}\) | \(\sum\varphi_j=1\) | \(\approx 0.51\) |
| 第 4 章 | \(\prod(\cdot)^{1/\varphi_j}\) | \(\sum 1/\varphi_j=51.6\) | \(\approx 1.3\times10^{-53}\) |
| 第 5 章 | \(\prod(\cdot)^{1/\varphi_j}\) | \(\sum 1/\varphi_j=49.5\) | \(\approx 10^{-45}\) |
第 4、5 章的目标值落在 \(10^{-53}\) 量级——这是通用非线性求解器(LINGO、Excel Solver)的噩梦:梯度下溢、收敛判据失效、迭代提前终止。而第 3 章因为指数是 \(\varphi_j\)(和为 1),目标值在 0.5 量级,求解非常稳定。
这就是为什么第 3 章能逐项复现,而第 4、5 章的最终结果对不上。(详见第八节)
3. "唯一解"的背后其实是凸规划
论文反复强调"全局唯一最优解",这不是装饰——它意味着:
- 只要模型写对,解就是确定的,不存在"求解器不同结果不同"的借口;
- 反过来说,一旦结果对不上,问题一定出在模型形式或求解精度上,而不是"算法选择"。
这条性质在复现中极其有用:它把"数值对不上"从一个模糊问题变成了一个可以精确定位的技术问题。
六、这次复现做了什么
技术栈:
- Julia 1.12.1
- JuMP 1.29.3
- HiGHS 1.20.1(全部线性规划:CCR、交叉效率、上下界、联盟成本、核心极值)
- Ipopt 1.13.0(全部非线性分摊模型)
覆盖论文第 3、4、5 章的全部 6 个算例:
| 算例 | 规模 | 说明 |
|---|---|---|
| 3.3 数值算例 | 12 DMU / 3 投入 2 产出 / \(R=100\) | Cook & Kress 经典数据集 |
| 3.4 案例分析 | 10 条生产线 / 4 投入 2 产出 / \(R=2000\) | 安徽某钢铁公司设备升级改造 |
| 4.3 数值算例 | 12 DMU / 同上 / \(R=100\) | 同数据集,验证核心约束 |
| 4.4 案例分析 | 11 省市 / 5 投入 3 产出 / \(R=26\) | 长江经济带水污染治理 |
| 5.3 数值算例 | 3 DMU / 2 投入 2 产出 | 可变成本基础算例 |
| 5.4 案例分析 | 12 家供货商 / 3 投入 2 产出 | 联合库存成本分摊 |
复现脚本完成的完整工作链:
- 实现 CCR 自评效率、仁慈型交叉效率、不满意度、运营规模、议价能力;
- 对 \(2^n-1\) 个联盟逐个求解特征函数 \(v(K)\);
- 求解核心上下界(Core 的极值 LP);
- 用 Ipopt 求解三个非对称纳什讨价还价模型;
- 输出与论文逐项对照的结果表(复现值 / 论文值并排)。
七、复现结果:哪些对上了
7.1 第 3 章:两组算例逐项吻合
12 个 DMU 的固定成本分摊结果(\(R=100\)):
| DMU | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 论文 \(R^*\) | 7.54 | 8.57 | 8.13 | 8.51 | 8.74 | 10.16 | 7.13 | 9.22 | 9.65 | 8.21 | 1.82 | 12.34 |
| 复现 | 7.540 | 8.565 | 8.131 | 8.514 | 8.735 | 10.163 | 7.134 | 9.216 | 9.638 | 8.207 | 1.821 | 12.336 |
- 最大绝对偏差 0.0117;\(\sum R^*=100.000000\) 精确成立
- 组距 10.52(论文 10.52)、平均差 1.472(论文 1.474)
- 中间量 \(E^*\)、\(E^{peer*}\)、\(\varphi_j\)、上下界 全部吻合
安徽钢铁 10 条生产线算例(\(R=2000\))同样逐项复现,最大偏差 0.0375,效用值偏差 ≤ 0.0007。
7.2 第 5 章数值算例:完全复现
| DMU | \(C_j\) | \(\varphi_j\) | \(h_j^{l}\) | \(h_j^{u}\) | 论文 \(h^*\) | 复现 \(h^*\) |
|---|---|---|---|---|---|---|
| 1 | 59.00 | 0.7382 | 13.65 | 59.00 | 44.00 | 44.038 |
| 2 | 50.00 | 1.0000 | 20.09 | 50.00 | 42.55 | 42.527 |
| 3 | 49.00 | 1.0000 | 3.65 | 49.00 | 26.10 | 26.082 |
\(C(N)=112.6471\)(论文 112.65),\(\sum h^*\) 精确等于 \(C(N)\)。
7.3 第 4 章:中间量全对,最终解发现论文问题
第 4 章的全部中间量都精确复现:
| 量 | 论文值 | 复现值 |
|---|---|---|
| \(\varphi_j\)(议价能力) | 0.26 0.23 0.23 0.22 0.19 0.34 0.31 0.20 0.21 0.33 0.13 0.34 | 0.2569 0.2254 0.2335 0.2206 0.1898 0.3435 0.3112 0.2040 0.2091 0.3297 0.1341 0.3422 |
| \(C_j\)(单干上界) | 8.79 13.14 10.37 20.95 21.80 29.95 13.08 20.56 65.13 19.09 3.95 24.35 | 8.7859 13.1422 10.3673 20.9474 21.8032 29.9487 13.0807 20.5599 65.1331 19.0923 3.9468 24.3453 |
| 长江案例运营规模 \(P_{\text{江苏}}\) | 1.49 | 1.4925 |
但最终的 \(R^*\) 对不上——而且我们发现:问题出在论文这一侧。详见下一节。
八、这次复现最有价值的发现:论文的两处数值问题
复现到位的标志,不是"数字对上了",而是知道为什么对不上。
8.1 第 4 章:论文报告的解不是模型的最优解
我们对论文给出的 12 个 \(R^*\) 做了三项检验:
证据一:论文解是可行的。 在模型全部约束下,最小违反量仅 0.0022(数值零),核心约束最大违反 0.0165(两位小数舍入量级)。
证据二:论文解精确满足一条"论文里没写"的约束。 用 \(R_j=\sum_r u_ry_{rj}-\sum_i v_ix_{ij}\) 拟合论文解,残差 RMS 仅 0.0030(12 个方程、5 个未知权重)。而这正是论文表 4-2 中"所有 DMU 分摊后效率 \(E_{post}\equiv 1.00\)"的原因——真实模型含有共同权重等式约束,但论文的模型 (4-11) 只写了不等式。
证据三:论文解不是最优解。
| 方案 | 目标函数值 \(\sum\frac{1}{\varphi_j}\ln\frac{C_j-R_j}{R}\) |
|---|---|
| 论文 \(R^*\) | −125.73 |
| 本次复现(论文模型口径) | −120.05 |
| 本次复现(补充共同权重约束后) | −120.68 |
论文解比最优解差 4.7%。而且从论文解出发,求解器会立即移开并收敛到最优解——说明它连局部最优都不是。
根因判断:第 4 章的目标是 12 项乘积、指数为 \(1/\varphi_j\),目标值落在 \(10^{-53}\) 量级。这种尺度下,通用求解器(LINGO / Excel Solver)极易梯度下溢、提前终止,返回一个"可行但远非最优"的点——这与我们观察到的现象完全吻合。作为对照,第 3 章因为指数是 \(\varphi_j\)(目标值 0.5 量级),求解完全稳定、逐项复现。
我们的处理:给模型补上共同权重约束,重新求解并给出可用的分摊方案。
8.2 第 5 章案例:论文的联盟成本口径差 14.5%
第 5 章数值算例完全复现,但 12 家供货商案例中,论文报告 \(C(N)=76.05\),而按论文模型 (5-4) 计算为 \(88.8976\),比值为
\[ \alpha=\frac{76.05}{88.8976}=0.8554786 \]
这个 \(\alpha\) 不是巧合,用三重证据交叉验证:
证据一:\(5.3\) 数值算例中 \(\alpha=1.0000261\approx 1\)——说明模型实现无误,\(\alpha\) 是 5.4 案例特有的。
证据二:把复现的 \(h^{l}\) 乘以 \(\alpha\),与论文的 \(h^{l}\) 逐项吻合,最大偏差从 2.3932 降到 0.0050:
| DMU | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 论文 \(h^{l}\) | 14.17 | 5.07 | 9.53 | 4.01 | 2.73 | 4.74 | 8.56 | 5.19 | 3.25 | 7.50 | 7.80 | 0.00 |
| 模型解 | 16.56 | 5.93 | 11.14 | 4.69 | 3.20 | 5.54 | 10.00 | 6.06 | 3.79 | 8.77 | 9.12 | 0.00 |
| \(\alpha\times\)模型解 | 14.17 | 5.07 | 9.53 | 4.01 | 2.73 | 4.74 | 8.55 | 5.19 | 3.25 | 7.50 | 7.80 | 0.00 |
证据三:由论文 \(h^{l}\)、\(h^{u}\) 反推的联盟成本下界,与 \(\alpha\cdot v_{model}(K)\) 在 22 个 \(|K|\ge10\) 的联盟中,有 20 个比值精确等于 1.000。
采用该口径后,复现结果与论文 11/12 个 DMU 的偏差 ≤ 0.63(占 \(C(N)=76.05\) 的 0.83%),\(\sum h^*=76.0500\) 精确等于论文的 \(C(N)\)。
同时我们还发现:论文的 \(h^*\) 前 11 个分量只比下界 \(h^{l}\) 高出 0.04~0.12(几乎贴着下界),差额全塞给了 DMU12——这是"求解器从下界出发、未真正迭代"的典型特征,与该章目标值 \(10^{-45}\) 量级的数值困境相互印证。
九、这套复现适合谁
- 做 DEA 成本分摊方向的研究生:三个模型可以直接作为方法章节的基线,公式、定理、代码全部对齐;
- 需要复现这篇论文的同学:我们踩过的坑(数值尺度、共同权重约束、联盟成本口径)你可以直接跳过;
- 做合作博弈 + DEA 交叉方向的研究者:这是一份"DEA 测边界 + 博弈定分配"的完整工程范例,\(2^n\) 联盟枚举 + 核心 LP + 非线性纳什的整套流水线可以直接迁移。
十、复现资料包包含什么
- Julia 复现脚本(模块化,可直接运行):
dea_utils.jl:CCR 自评效率、仁慈型交叉效率、议价差距、运营规模、子集枚举chapter3.jl/chapter4.jl/chapter5.jl:三章模型完整实现run_all.jl:一键复现全部 6 个算例(实测约 75 秒)ch5_paper_scale.jl:论文口径复现(\(v(K)\) 按 \(\alpha\) 缩放)
- 诊断脚本:
diag4c/diag4d/diag4e.jl(第 4 章 16 种口径搜索 + 迭代轨迹实验)、diag5b/diag5c/diag5d.jl(第 5 章联盟成本反推) - 6 张结果对照表(CSV):复现值与论文值并排,可逐项核对
- 两份报告:
复现报告.md(逐章结果)、诊断报告.md(两处数值问题的完整证据链)
运行环境:Julia 1.12 + JuMP 1.29 + HiGHS + Ipopt,全部开源免费。
十一、复现小结
这篇论文最值得把握的主线,可以概括成一句话:
用 DEA 客观测出"能承担多少",用非对称纳什讨价还价决定"该分多少",再用核心保证"没人愿意退出"。
三个模型层层递进:从不满意度到核心稳定性,从固定成本到可变成本,构成了一套完整的成本分摊方法论。
而从复现角度,这篇论文给我们的最大启示不是它的公式,而是这条经验:
当模型的"唯一最优解"是理论保证的,那么数值对不上就一定有原因——找到这个原因,比把数字凑对有价值得多。
这次我们不仅把第 3 章做到了逐项吻合、第 5 章数值算例完全复现,还把第 4、5 章论文侧的数值问题定位到了具体机制(\(1/\varphi_j\) 指数导致的目标函数数值下溢、未写明的共同权重约束、联盟成本口径差异),并给出了修正方案。
复现的最高境界,是比原论文更懂它的模型。
如果需要完整代码与复现资料包,请联系微信 canglang12002 任公子


