🏠 总目录📚 本教程 21 · 有钱与随机分配
📑 本页目录(点开跳转)

21 · 有钱与随机分配

54 分钟 | ⭐⭐ 钱能买回无嫉妒,但只对「不浪费」的分配有效


🎯 一句话

允许转账后,EF 从「常常不存在」变成「只要这个分配本身没浪费,就一定能用钱补平」—— 判据是嫉妒图里没有正权环;而在既没有钱、也问不出基数估值的场合,结果只能是一张概率表,这时唯一能说清「谁的抽奖更好」的标尺叫一阶随机支配(SD)。


🧩 一、把钱加进来

上一章的物品「不可分割」,这是 EF 死掉的根源。钱是完美可分的 —— 它能把离散补平。

带钱的结果是一对 $(X, p)$:$X$ 是分配,$p_i$ 是付给 $i$ 的钱(可为负,即 $i$ 掏钱)。 准线性效用:$u_i(X_j, p_j) = v_i(X_j) + p_j$ —— 估值和钱直接相加,一块钱对谁都是一块钱。 结果 $(X,p)$ 无嫉妒:对所有 $i,j$,$v_i(X_i)+p_i \ \ge\ v_i(X_j)+p_j$。

⚠️「一块钱对谁都是一块钱」是假设不是事实:它意味着效用可跨人比较、且没有预算约束。房租分摊、遗产折价补偿大致成立;穷人富人分东西就不成立。

关键的新概念 —— 注意它是分配的性质,不是结果的性质,问的是「这个分法有没有救」而不是「这一组钱够不够」:

分配 $X$ 是可无嫉妒化的(envy-freeable)存在一组支付 $p$ 使 $(X,p)$ 无嫉妒。

手算两个最小例子:一件物品 $g_1$,$v_1(g_1)=10$,$v_2(g_1)=5$。

差别在哪? 分法 B 把物品给了更看重它的人(10 > 5),分法 A 没有。钱只能补偿「谁拿」,补不了「东西放错了地方」造成的浪费。 下面这条定理就是把这句直觉变成可判定的条件。


🧩 二、带权嫉妒图与三条等价条件

上一章的嫉妒图只记「有没有嫉妒」,现在给边加上权重 = 嫉妒了多少

带权嫉妒图:完全有向图,点集是 $N$,边权 $$w(i,j) = v_i(X_j) - v_i(X_i)$$ (正数表示 $i$ 真的眼红 $j$,负数表示 $i$ 觉得自己那堆更好。)路径/环的权重就是边权之和。

还需要一个概念:

重分配稳定(reassignment-stable):把现有的这几东西整体换个人来分,总福利不会更高: $$\sum_{i\in N} v_i(X_i)\ \ge\ \sum_{i\in N} v_i(X_{\pi(i)}) \quad \text{对所有排列 } \pi$$ —— 堆已经分好了,问的只是「谁拿哪一堆」有没有分错。

⭐⭐ 定理(可无嫉妒化的刻画):估值可加且非负时,下面三条等价: 1. $X$ 是可无嫉妒化的 2. $X$ 是重分配稳定的 3. $X$ 的带权嫉妒图里没有正权环

证明是一个漂亮的三步循环,每一步都很短:

(1) ⟹ (2):设支付 $p$ 让 $(X,p)$ 无嫉妒,即 $v_i(X_j)-v_i(X_i) \le p_i - p_j$。对任意排列 $\pi$,把 $j=\pi(i)$ 代入并对所有 $i$ 求和: $$\sum_i \big(v_i(X_{\pi(i)})-v_i(X_i)\big) \ \le\ \sum_i (p_i - p_{\pi(i)}) = 0$$ 最后等于 0 是因为每个 $p$ 都被加一次减一次,整体抵消。∎

(2) ⟹ (3):若有一个权重严格为正的环 $C$,就构造排列 $\pi$:环上的人指向环里的下一个,环外的人不动。这个 $\pi$ 让总福利严格变高 —— 不是重分配稳定。∎

(3) ⟹ (1):⭐ 这一步直接给出算法。令 $$p_i = \ell(i) = \text{从 } i \text{ 出发的最大权路径的权重}$$ (无正权环保证它有限。)对任意 $j$,从 $i$ 出发先走 $(i,j)$ 再走 $j$ 的最优路,也是一条路,所以 $$p_i = \ell(i)\ \ge\ w(i,j) + \ell(j) = v_i(X_j)-v_i(X_i)+p_j$$ 移项就是 $v_i(X_i)+p_i \ge v_i(X_j)+p_j$ —— 正是无嫉妒。

怎么真的算出来

两个白送的构造USW 最大的分配一定可无嫉妒化(任何重指派都不可能更好);把所有物品打成一捆给最看重它的那个人也一定可以。

完整手算

三人三物,每人各拿一件:$X_1=\{g_1\}$、$X_2=\{g_2\}$、$X_3=\{g_3\}$。

$g_1$ $g_2$ $g_3$
1 7 2 1
2 6 3 1
3 5 3 2

第一步,算六条边权 $w(i,j)=v_i(X_j)-v_i(X_i)$:

$w(\cdot,1)$ $w(\cdot,2)$ $w(\cdot,3)$
1(自己 7) $2-7=-5$ $1-7=-6$
2(自己 3) $6-3=+3$ $1-3=-2$
3(自己 2) $5-2=+3$ $3-2=+1$

(读法:2 号和 3 号都眼红 1 号,3 号还眼红 2 号;1 号谁都不眼红。)

第二步,查正权环:$1\!\to\!2\!\to\!1$ 是 $-5+3=-2$;$1\!\to\!3\!\to\!1$ 是 $-6+3=-3$;$2\!\to\!3\!\to\!2$ 是 $-2+1=-1$;$1\!\to\!2\!\to\!3\!\to\!1$ 是 $-5-2+3=-4$;$1\!\to\!3\!\to\!2\!\to\!1$ 是 $-6+1+3=-2$。全是负的 ⟹ 可无嫉妒化

第三步,算最长路 $\ell$(从出边全是负的那个人开始往回推):

支付:$p_1 = 0,\ p_2 = 3,\ p_3 = 4$。

第四步,逐条验(比较 $v_i(X_i)+p_i$ 与 $v_i(X_j)+p_j$):3 号手里 $2+4=6$,看 1 号是 $5+0=5$ ✓、看 2 号是 $3+3=6$ ✓ 持平;2 号手里 $3+3=6$,看 1 号是 $6+0=6$ ✓ 持平、看 3 号是 $1+4=5$ ✓;1 号手里 $7$,看另外两人是 $5$、$5$ ✓。

全部通过。⭐ 注意那两个「持平」 —— 最长路给出的正是恰好补平的支付,一分不多。

想同时要 EF1 和可无嫉妒化?

Brustle 等(2019):反复求「人 × 剩余物品」二部图的最大权匹配,每轮每人最多拿一件,拿完删掉,直到发完。⭐ 每一轮的最大权匹配就是那一轮的 USW 最大解,单轮不可能有正权环,各轮叠加也造不出正权环;而「每轮每人至多一件」正是上一章 Round-Robin 那套 EF1 论证需要的结构。


🛑 读到这里可以停 —— 「有钱」这半章讲完了(约 25 分钟)。 后半章还有:随机分配的两个算法(RSD / PS)· 一阶随机支配 SD · 可分物品与 AW 回来的时候不用重读,直接从下一节接着看就行。


🧩 三、没有钱、也问不出数字:只能给概率

换个场景:分宿舍、分实习岗位、分课程名额。不能收钱(政策不允许),而且只问得出排序问不出估值 —— 你可以让学生把宿舍排个序,但「A 宿舍值 80 分」这种话没人报得准,报了也没法核实。

$n$ 个人、$n$ 件物品、每人一件、严格序数偏好。这时确定性的结果一定不公平(谁拿到第一名的物品,别人就眼红),所以结果是一张概率表

随机分配 $p$ 是一个矩阵,$p_i(o)$ 表示 $i$ 拿到 $o$ 的概率。每行和为 1(每人恰好一件),每列和为 1(每件恰好给一人)。

本节从头到尾用同一个实例(3 人 3 物):

$$\succ_1:\ o_1, o_2, o_3 \qquad \succ_2:\ o_2, o_1, o_3 \qquad \succ_3:\ o_2, o_3, o_1$$

算法一:RSD(随机序列独裁)

等概率抽一个人的排列,按这个顺序让每人从剩下的里挑最想要的。 3 个人只有 6 个排列,全枚举即可:$123$ 和 $213$、$231$ 都给出 $(o_1,o_2,o_3)$;$132$ 和 $312$ 给出 $(o_1,o_3,o_2)$;只有 $321$ 让 3 号先挑走 $o_2$、2 号再抢走 $o_1$,1 号只剩 $o_3$。数一数(次数 ÷ 6):

$$\mathrm{RSD} = \begin{pmatrix} 5/6 & 0 & 1/6 \\ 1/6 & 1/2 & 1/3 \\ 0 & 1/2 & 1/2 \end{pmatrix}$$

(行是人 1/2/3,列是 $o_1/o_2/o_3$。⭐ 自查:每行每列都加到 1。)

⚠️ RSD 好懂、好实现、而且策略防伪(不管抽到什么顺序,轮到你时报真话都是最优的)。但它有个很实际的毛病:算出这张表本身是难的 —— 一般情形下 $n! $ 个排列不能枚举,而且「判断某人拿到某件的概率是否 $\ge p$」是 NP 难的。

算法二:PS(概率序列 / 「吃」算法)

把每件物品想成一块重量为 1 的蛋糕

  1. 所有人同时、以相同速度开吃自己当前最想要且还没吃完的那件
  2. 一件被吃光了,正在吃它的人立刻转向自己列表里下一件还没吃完的
  3. 全部吃光时停。每个人吃掉的份额就是他的概率

完整走一遍(还是上面那个实例):

时间段 谁在吃什么 段末状态
$[0,\ 1/2]$ 1 吃 $o_1$(独享);2、3 一起吃 $o_2$ $o_2$ 两人同吃,$\frac12$ 时吃光,各得 $1/2$;1 已吃掉 $o_1$ 的 $1/2$
$[1/2,\ 3/4]$ $o_2$ 没了:2 转向 $o_1$(和 1 一起吃剩下的 $1/2$),3 转向 $o_3$ $o_1$ 剩 $1/2$ 由两人吃,$1/4$ 后光;1 再得 $1/4$(共 $3/4$),2 得 $1/4$;3 得 $o_3$ 的 $1/4$
$[3/4,\ 1]$ 只剩 $o_3$(余 $3/4$),三个人一起吃 各得 $1/4$;3 共得 $1/2$

$$\mathrm{PS} = \begin{pmatrix} 3/4 & 0 & 1/4 \\ 1/4 & 1/2 & 1/4 \\ 0 & 1/2 & 1/2 \end{pmatrix}$$

对比一下 RSD 和 PS:1 号在 RSD 下拿到 $o_1$ 的概率是 $5/6$,在 PS 下只有 $3/4$ —— 1 号更喜欢 RSD。而 2 号呢?两者拿到最爱 $o_2$ 的概率都是 $1/2$,但第二志愿 $o_1$:PS 给 $1/4$、RSD 只给 $1/6$ —— 2 号更喜欢 PS

没有哪个整体更好。 要把这句话说清楚,需要一个正式的比较标尺。


🧩 四、一阶随机支配(SD):概率表怎么比

只有排序、没有数字,怎么说「这张概率表比那张好」?

SD(stochastic dominance):$i$ 认为 $p$ 支配 $q$,记 $p(i) \succeq_i^{SD} q(i)$,当且仅当对每一件物品 $o$: $$\sum_{o' \succeq_i o} p_i(o')\ \ \ge \sum_{o' \succeq_i o} q_i(o')$$

直觉就一句话:从最爱往下累计概率,每一层 $p$ 都不比 $q$ 少。「拿到第 1 名的概率」不少、「拿到前 2 名的概率」不少、「拿到前 3 名的概率」不少……

它为什么是对的标尺:$p \succeq^{SD}_i q$ 当且仅当每一个与 $i$ 的排序相容的效用函数,$p$ 的期望效用都不低于 $q$。也就是说 —— 不管这个人心里的真实数字是多少,只要排序是这个,他就一定不会更差。 这正是「问不出基数估值」时能给出的最强承诺。

手算比较(1 号,偏好 $o_1 \succ o_2 \succ o_3$):

累计到 RSD 行 $(5/6,\,0,\,1/6)$ PS 行 $(3/4,\,0,\,1/4)$
$o_1$ $5/6$ $3/4$
$o_1,o_2$ $5/6$ $3/4$
$o_1,o_2,o_3$ $1$ $1$

每一层 RSD 都 $\ge$ PS ⟹ 1 号在 SD 意义下严格更喜欢 RSD

2 号(偏好 $o_2 \succ o_1 \succ o_3$):PS 累计是 $1/2,\ 3/4,\ 1$;RSD 是 $1/2,\ 2/3,\ 1$。⟹ 2 号在 SD 意义下更喜欢 PS

⚠️ SD 是偏序,很多东西压根不可比

这是必须讲透的一点。设某人偏好 $o_1 \succ o_2 \succ o_3$,比较 $p=(1/2,0,1/2)$ 和 $q=(1/3,1/2,1/6)$:累计概率分别是 $p:\ 1/2,\ 1/2,\ 1$ 与 $q:\ 1/3,\ 5/6,\ 1$。

第一层 $p$ 赢($1/2>1/3$),第二层 $q$ 赢($5/6>1/2$) —— 谁都不支配谁。它们在 SD 下不可比。

这不是理论洁癖:$p$ 是「要么最好要么最差」的赌博,$q$ 是「大概率拿到前二」的稳妥。哪个更好取决于这个人心里的真实数字,而序数偏好里根本没有这个信息。 SD 拒绝在这种时候下结论 —— 这是它的诚实,也是它的局限:基于 SD 的「最优」往往一大堆,选哪个还得另找理由。

三个 SD 版的性质

💀 定理(Bogomolnaia & Moulin 2001)RSD 是 SD-策略防伪的,但既不 SD-有效、也不 SD-无嫉妒PS 是 SD-有效且 SD-无嫉妒的,但不 SD-策略防伪

又一个「三条挑两条」。PS 可被操纵的具体样子:把上面那个实例的 1 号偏好改报成 $o_2 \succ o_1 \succ o_3$(假装先抢 $o_2$,逼别人分流),PS 会输出 $p_1 = (1/2,\ 1/3,\ 1/6)$。如果 1 号心里的真实数字是 $u_1 = (7,\ 6,\ 0)$,那么说真话的期望效用是 $\frac34\cdot7 + 0 = 5.25$,谎报是 $\frac12\cdot7+\frac13\cdot6=5.5$ —— 撒谎更好

⚠️ 注意谎报只在知道真实数字时才划得来 —— 而 SD 恰恰不用数字。这说明 PS 的「不防伪」是基数层面的漏洞,不是序数层面的。


🧩 五、如果东西可以切:AW 与它的代价

最后一句话交代可分物品(土地、时间、预算)。这里 EF 一定存在,问题变成怎么切最省

调整赢家法(AW,Brams & Taylor)处理 2 个人:两人各拿 100 点分摊到各件物品;先把每件给出价高的那个人,再从领先方手上比值 $x_i/y_i$ 最接近 1 的那件开始往对方转移,直到两人分数相等。手算例(1 号出价 $67,6,27$;2 号 $34,5,61$):初始 73 : 61,整件转出 $o_2$ 后是 67 : 66,最后只切开 $o_1$ 的 $\frac1{101}$,两人各得 $\approx 66.34$ 分。

定理(Brams & Taylor 1996):AW 是帕累托最优、均等、无嫉妒、比例的,且最多只切开一件物品(Aziz 等 2015:两人情形下唯一)。 💀 定理(Zhou 1990):可分 + 可加基数效用下,策略防伪、PO、无嫉妒三者不可兼得。 任意两条都容易:防伪 + PO = 独裁;防伪 + EF = 空分配;EF + PO = 最大化 Nash 福利。


🔗 这一章连到哪里

去哪 为什么
20-公平分配的算法.md 本章的带权嫉妒图就是那一章嫉妒图的加权版:那边只问「有没有边」,这边问「这条边值多少钱」
19-怎么算公平.md 回去对照:那边说 EF 在不可分物品下常常不存在 —— 本章给出它回来的两个条件(有钱 / 允许随机)
18-住房市场与TTC.md 序列独裁在那一章出现过(多份禀赋时「PO + 防伪」的实现),这里给它套上随机化,就成了 RSD
22-联盟博弈与核心.md 下一章问的是另一半问题:收益已经赚到了,怎么在联盟内部分。第 18 章的「核心」会在那里被正式展开
../推荐算法/15b-广告-从推荐到竞价.html 那边是「有钱」的另一种用法:不是补偿嫉妒,而是用支付换取说真话(VCG)。同样的准线性效用假设,不同的目的

✅ 检查点

  1. 准线性效用做了哪两条很强的假设?什么场景下它站不住?
  2. 一件物品两个人(估值 10 和 5),为什么「给估值低的人」这个分配怎么补钱都救不回来
  3. 「可无嫉妒化」为什么是分配的性质而不是结果的性质?
  4. 带权嫉妒图的边权怎么定义?正权环意味着什么?
  5. (1) ⟹ (2) 的证明里,为什么求和之后右边等于 0?
  6. 手算例子里 $\ell(3)=4$ 是怎么来的?为什么不是 3?出现两处「恰好持平」说明了什么?
  7. 哪两种分配是白送的「一定可无嫉妒化」?
  8. PS 的「吃蛋糕」过程里,$o_2$ 为什么在 $t=1/2$ 就被吃光?
  9. 1 号和 2 号分别更喜欢 RSD 还是 PS?用累计概率说明。
  10. SD 为什么是「问不出基数估值」时能给的最强承诺?它的局限是什么?
  11. RSD 和 PS 各自满足哪两条 SD 性质、丢掉哪一条?
  12. AW 最后为什么恰好切了 $o_1$ 的 $1/101$?
👀 答案
  1. ① 物品估值和钱直接相加($u_i=v_i+p_i$),意味着效用可跨人比较;② 没有预算约束,一块钱对谁都一样。房租分摊、遗产折价补偿大致成立;穷人富人分东西就不成立。
  2. 要补平估值 10 的那个人得给他至少 10;一给 10,他手里是 10 而对方手里是 5,对方反过来嫉妒。补少了这边不干、补多了那边不干。根因是东西放错地方造成了浪费,而钱只能补偿「谁拿」
  3. 它问的是「存在一组支付让它无嫉妒吗」,即「这个分法有没有救」;「结果无嫉妒」问的才是「这一组具体的钱够不够」。
  4. $w(i,j)=v_i(X_j)-v_i(X_i)$,$i$ 对 $j$ 的嫉妒量(可为负)。正权环意味着沿环轮换整堆能让总福利严格变高 —— 这几堆分错了人,不是重分配稳定,因而不可无嫉妒化。
  5. 因为 $\pi$ 是排列,$\sum_i(p_i-p_{\pi(i)})$ 里每个 $p$ 被加恰好一次、减恰好一次,整体抵消为 0。
  6. $\ell(3)=\max\{3+\ell(1),\,1+\ell(2)\}=\max\{3,\,4\}=4$ —— 绕道 $3\to2\to1$ 比直接 $3\to1$ 更划算。两处持平说明最长路给出的是恰好补平的最小支付,一分不多:那条最优路径上每条不等式都取等号。
  7. USW 最大的分配(任何重指派都不可能更好);② 把所有物品打成一捆给最看重它的那个人
  8. 因为 2 号和 3 号的第一志愿都是 $o_2$,两人同时以相同速度吃同一块重量为 1 的蛋糕,$\frac12$ 时刻正好吃光,各得 $1/2$。
  9. 1 号更喜欢 RSD:累计 $5/6,\,5/6,\,1$ 对 PS 的 $3/4,\,3/4,\,1$,每层都不少。2 号更喜欢 PS:累计 $1/2,\,3/4,\,1$ 对 RSD 的 $1/2,\,2/3,\,1$。两张表互不支配
  10. 因为 $p\succeq^{SD}_i q$ 等价于「对每一个与 $i$ 排序相容的效用函数,$p$ 的期望效用都不低于 $q$」—— 不管真实数字是多少都不会更差。局限是它只是偏序:$(1/2,0,1/2)$ 与 $(1/3,1/2,1/6)$ 第一层前者赢、第二层后者赢,不可比(对应「搏一把」与「求稳妥」的取舍,而序数偏好里没有决定它的信息)。
  11. RSD:SD-策略防伪 ✓,但 SD-有效、 SD-无嫉妒。PS:SD-有效 ✓ + SD-无嫉妒 ✓,但 SD-策略防伪。(Bogomolnaia & Moulin 2001)
  12. 转完 $o_2$ 后是 67 : 66,还差一点。设 2 号拿到 $o_1$ 的比例 $t$,令 $67(1-t)=66+34t$ 得 $t=1/101$,两人最终都是 $67\times\frac{100}{101}\approx66.34$ 分 —— 均等

🛑 可以停在这里

走神救援

这一章处理上一章留下的两个缺口:EF 常常不存在怎么办。两条出路,分别对应「有钱」和「只能给概率」。

有钱:假设准线性效用 $u_i(X_j,p_j)=v_i(X_j)+p_j$。核心概念是可无嫉妒化(envy-freeable):存在一组支付让它无嫉妒 —— 这是分配的性质,问的是「这个分法有没有救」。一件物品估值 10 和 5 的例子给出本质:给估值 5 的那个人时怎么补都救不回来(补 10 则对方反过来嫉妒)—— 钱能补偿「谁拿」,补不了「东西放错地方」的浪费。⭐⭐ 刻画定理给出三条等价:可无嫉妒化 ⟺ 重分配稳定 ⟺ 带权嫉妒图无正权环(边权 $w(i,j)=v_i(X_j)-v_i(X_i)$)。三步循环都很短,其中 (3)⟹(1) 令 $p_i=\ell(i)=$ 从 $i$ 出发的最大权路径,这一步直接就是算法(边权取反跑 Bellman–Ford)。手算的 3 人例子里六条边权是 $-5,-6,+3,-2,+3,+1$、所有环为负,最长路给出 $p=(0,3,4)$,六条无嫉妒条件全部通过、其中两条恰好持平 —— 最长路给的是一分不多的最小支付。两个白送的构造:USW 最大的分配全部打包给最看重的人

只能给概率:不能收钱又只问得出排序时,结果是一张双随机矩阵。RSD(抽排列后依次挑)SD-策略防伪,但算这张表本身 NP 难。PS(吃蛋糕)让所有人同速吃自己当前最想要且没吃完的那件,吃掉多少就是多少概率。⭐ 比较两张表用一阶随机支配(SD)从最爱往下累计概率,每一层都不少;它等价于「对所有与该排序相容的效用函数期望都不低」,是问不出数字时能给的最强承诺。手算显示 1 号更喜欢 RSD($5/6$ vs $3/4$)而 2 号更喜欢 PS($3/4$ vs $2/3$)—— 两张表互不支配。⚠️ SD 只是偏序:$(1/2,0,1/2)$ 与 $(1/3,1/2,1/6)$ 第一层前者赢、第二层后者赢,不可比,对应「搏一把」与「求稳妥」的取舍。💀 Bogomolnaia–Moulin 2001:RSD 防伪但既不 SD-有效也不 SD-无嫉妒;PS 是 SD-有效 + SD-无嫉妒但不防伪

可分物品AW(调整赢家)先把每件给出价高的人,再从比值最接近 1 的那件往回让直到分数相等 —— 手算里只切了 $o_1$ 的 $\frac{1}{101}$,两人各得约 66.34 分。AW 是 PO + 均等 + EF + 比例、且最多切一件(两人情形下唯一)。💀 Zhou 1990:可分 + 基数效用下防伪、PO、EF 三者不可兼得

下一节 👉 22-联盟博弈与核心.md

打卡记录保存在你的浏览器里,首页能看到总进度