Other Readings异读 返回作品
字号
主题
下载
下载全书

全书 · v0.1 · 2026-10-04

附录A:竞配模型的数学细节

克里斯蒂安·西夫克斯 · 2007 年原著 · 全书中文初译AI 辅助初译,未经人工终校第 12 / 14 单元

本附录写给那些对所提出的竞配模型的数学细节感兴趣的读者。如果你不感兴趣,完全可以跳过。不过,不必害怕:这里使用的数学并不难,而且可能有助于更好地理解这些模型。

A.1 任务竞配

任务竞配的目的,是以一种所有人都能接受、并让每个人都能按照自身偏好,在自己能够且愿意承担的任务中作出选择的方式,把实现项目目标所必需的劳动投入分摊给全体参与者。

任务 $t$ 的投入量 $E_t$ 取决于两个因素:完成该任务实际需要或预计需要的时间 $T_t$,以及衡量这类任务(劳动)受欢迎程度的劳动权重 $L_t$:

$$ E_t = T_t \times L_t $$ {#A.1}

起初假定所有任务同样受欢迎,即从 $L_t = 1$ 开始。如果愿意承担某项任务的合适志愿者不足,就提高其劳动权重 $L_t$,使任务更有吸引力(用于这项任务的相同时数,现在将被认定为更多的劳动投入),直到有足够多的志愿者愿意在这些更有利的条件下承担它。反过来,如果志愿者多于所需,就降低 $L_t$,直到有足够多的人转而选择那些耗时更少的其他任务(即劳动权重更高的任务)。

如何把这一竞配制度付诸实践?一种办法是使用快照模型,让所有贡献者一次性选定:他们在什么条件下愿意承担哪些任务(即对每一项任务,他们认为可以接受的 $L_t$ 下限是多少)。随后,竞配软件同时提高或降低所有 $L_{t \in T}$($T$ 是全部任务的集合),直至找到一种能为每项任务配备恰好所需志愿者人数的配置(如果这种配置存在的话)。但这要求贡献者十分有意识地进行规划,因为他们必须一次性确定对所有可能适合的任务的偏好;而且,也无法保证一定存在一种能够让所有任务都匹配到贡献者的配置。

因此,迭代模型也许更合适,即通过多轮迭代来分派任务。每一轮中,贡献者根据当前的 $L_t$ 值,决定自己愿意承担哪些任务 $t \in T$,并为每项任务指定自己认为可接受的 $L_t$ 下限。如果某项任务 $t$ 的贡献者多于所需,系统就自动降低 $L_t$,直到贡献者人数与所需人数相符。但如果贡献者不足,劳动权重 $L_t$ 每轮的增幅不得超过某个规定值(例如 +2%),即使这意味着愿意承担任务的人仍然不够。

这样,贡献者就能在下一轮修正自己的偏好:那些无法再保留上一轮选择的人(因为某项任务的 $L_t$ 已低于他们认为可以接受的下限),现在必须重新作出选择,像之前一样申报偏好,但把更新后的 $L_t$ 值考虑进去。他们可以选择一项尚未分派出去、$L_t$ 较高的“不受欢迎”任务,也可以决定降低对先前所选任务的 $L_t$ 下限要求(这会让该任务的 $L_t$ 进一步下降)。每轮迭代可以持续一天,或其他合适的时段;时段不应太短,以防不受欢迎任务的权重上升得太快;但也不应过长,以免严重延误这些任务的执行。

这种迭代模型也适合应对任何项目都会出现的自然变动:有些贡献者退出,另一些人加入;有些任务完成,新的任务出现;贡献者厌倦已有活动,决定尝试别的活动。因此,任务权重会不断变化,当然,这又会影响贡献者的偏好。

每位贡献者必须为项目付出多少劳动投入?这取决于所使用的分配模型(参见第4.4.2节)。在定额分摊模式下(第4.4.2.1节),所需的总投入 $\sum_{t \in T} E_t$ 在全部贡献者之间平均分摊。如果有 $n$ 位贡献者,每个人都必须贡献同样的投入量:

$$ P = \frac{1}{n} \sum_{t \in T} E_t $$ {#A.2; 定额分摊}

换言之,这就是为取得项目所生产的(不可复制的)产品的使用资格而支付的“价格”。

在均等配给模式下(第4.4.2.2节),所需投入不取决于贡献者人数,而取决于产出的单位数量。如果产出 $m$ 个单位,那么每个单位的价格为:

$$ P = \frac{1}{m} \sum_{t \in T} E_t $$ {#A.3; 均等配给}

因此,你必须为项目贡献多少投入,取决于你想要多少个单位的产品。

对于其他分配模型(生产投入与偏好加权),还需要考虑生产某件物品所需的相对投入。下一节将讨论这一点。

A.2 产品竞配

$E_x$ 表示生产物品 $x$ 所花费的生产投入,以加权小时计量。$\sum_{x \in X} E_x$ 是某项目或分配池生产的全部物品的生产投入总和($X$ 是全部产出物品的集合)。请注意,$\sum_{x \in X} E_x = \sum_{t \in T} E_t$:不论按产出的物品划分,还是按所执行的任务划分,投入某个项目(或整个分配池)的总量当然是相同的。

如果采用基于生产投入的核算方式(第4.4.2.3节),那么 $E_x$ 也就是物品 $x$ 的价格(即取得它所必需的投入):

$$ P_x = E_x $$ {#A.4; 生产投入}

如果采用产品竞配(第4.4.2.4节),那么每件产品 $x$ 的价格还会由衡量其受欢迎程度的分配权重 $A_x$ 加以调整。竞配从 $A_x = 1$ 开始。如果需求超出可满足的数量,就提高 $A_x$,直到愿意接受较高价格的需求数量与可供产品数量一致(加价竞配)。反过来,如果已经生产了一些无人想要的产品,就可以降低 $A_x$,直到有足够多的人愿意按较低的价格取得它们(降价竞配)。

采用竞配时,需要一个归一化因子 $N$,以确保投入项目/分配池的总量等于其产品的价格总和:

$$ \sum_{x \in X} E_x = \sum_{x \in X} P_x $$ {#A.5}

因此,产品 $x$ 的价格为:

$$ P_x = A_x \times N \times E_x $$ {#A.6; 产品竞配}

$N$ 按以下方式计算,以保证等式(A.5)成立:[1]

$$ N = \frac{\sum_{x \in X} E_x}{\sum_{x \in X} (A_x \times E_x)} $$ {#A.7}

无论加价竞配还是降价竞配,都意味着在可能的情况下,应调整生产,使其更好地满足实际需求。不过,二者之间有一个根本区别:在加价竞配的情况下,由于缺少必要的资源或空间,生产可能确实无法再增加(或者至少无法在不产生负面副作用的前提下增加)。但降价竞配则意味着,当初生产该产品本身就是个错误:没有人认为它值得生产它所花费的投入。(这里所谓“错误”,是就物品是为使用而生产而言;如果生产过程给生产者带来了乐趣和满足,那么生产它仍然可能是有理由的。)

当然,错误可能发生(尤其因为事先对生产所需投入的估计并不总是准确),而降价竞配是弥补错误的最好办法。不过,降价竞配给分配池带来了一个特有的问题(参见第5.2节)。由于参与项目自行决定要生产什么,有些项目可能经常生产“不值得付出这些投入”的东西,也就是需要通过降价竞配才能分配出去的东西。

这样做会提高分配池内所有产品的价格(因为每一个 $A_x < 1$ 都会提高归一化因子 $N$ 的值)。项目甚至可能占其他入池项目的便宜:先生产无人感兴趣的物品,再以低于生产投入的价格把它们拿到手。于是,项目成员便能用生产投入与价格之间的差额($\Delta_x = E_x - P_x$),从分配池中取得其他物品,而不为此作出任何相应贡献。

为避免这类情况(无论是偶然发生还是附带出现),分配池可能更倾向于把降价竞配的风险转给各个项目,只部分认可相应的投入,将获认可的投入设定为:

$$ R_x = \min(1, A_x) \times E_x $$ {#A.8}

因此,对于按生产投入或通过加价竞配分配的产品($A_x \geq 1$),投入 $E_x$ 全部被认可为贡献;但如果采用降价竞配($A_x < 1$),就用同一个权重 $A_x$ 乘以 $E_x$,得到获认可的投入 $R_x$。这意味着,如果项目希望自己付出的全部投入都得到认可,就最好注意生产那些确有需求的产品。

为确保取得足够的贡献,并使每位贡献者都有所回报,项目或分配池现在必须满足的等式变为:

$$ \sum_{x \in X} R_x = \sum_{x \in X} P_x $$ {#A.9}

归一化因子 $N$ 也需要相应调整:[2]

$$ N = \frac{\sum_{x \in X} R_x}{\sum_{x \in X} (A_x \times E_x)} $$ {#A.10}

请注意,由于归一化因子 $N$ 的存在,仍然可能以低于获认可的生产投入的价格取得产品($P_x < R_x$)。在这一调整后的安排中,$N$ 始终 $\leq 1$,而且通常会 $< 1$(因为有些产品采用加价竞配)。[3] 这并不是问题:受欢迎的产品通过竞配以高于生产投入的价格分配,会自动降低所有其他产品的价格,因为为了取得这些产品而额外付出的投入必须“去往某处”,而它唯一能去的地方,就是其他产品的生产。

A.3 资源竞配

自然资源不同于产品:生产自然资源不需要人类的劳动投入。对所有资源 $y \in Y$,都有 $E_y = 0$;其中,$Y$ 是可用资源的集合。因此,当一个分配池在产品之外也提供资源时,需要满足的等式便变为:

$$ \sum_{x \in X} R_x = \sum_{x \in X} P_x + \sum_{y \in Y} P_y $$ {#A.11}

由于资源不需要任何生产投入,但其中一些资源通常会形成非零价格 $P_y$,它们就会自动降低产品的价格 $P_x$。

基于同样的原因,资源不存在向上或降价竞配:既然没有生产投入需要收回,资源竞配就可以从初始价格 $P_y = 0$ 开始。如果对某种资源的需求少于或等于可供数量,那么每位报价者都能以这个价格取得资源,也就是免费取得。否则,就提高 $P_y$,直至剩余需求与可供数量相符(最终的 $P_y$ 将略高于未能获满足的最高报价)。类似于任务和产品的竞配,采用迭代模型也许较为合理:未能取得资源的报价者可以重新估计自己对资源的评价,并提高报价。当成功报价者的集合在一轮迭代中不再变化时,竞配结束。

A.4 虚拟投入

正文提到过两种情形,分配池的参与者可能决定认可虚拟投入,即并未实际付出、但可以用来取得产品和资源的投入。虚拟投入可以授予获豁免、无需作出贡献的人(参见第8.1.1节),使其能以与贡献者相同的方式取得产品和资源;它也可以授予特别受欢迎地区的本地居民,因为土地与住房的竞配会使那些地方的价格上涨(参见第8.3.1节)。

虚拟投入让人们取得产品与资源的资格,与实际作出且得到认可的投入相同。因此,产品与资源的总价,必须等于获认可的全部实际投入加上全部虚拟投入的总和。设 $V_e$ 为某人 $e$ 有资格取得的虚拟投入,$E$ 为所有符合资格者的集合,那么等式(A.11)必须改写如下:

$$ \sum_{x \in X} R_x + \sum_{e \in E} V_e = \sum_{x \in X} P_x + \sum_{y \in Y} P_y $$ {#A.12}

$\sum_{e \in E} V_e$ 的实际大小,取决于授予虚拟投入的条件。前文(第8.1.1节)讨论了向获豁免、无需贡献的人授予虚拟投入的两种办法。第一种是把非贡献者视为“平均”贡献者。因此,我们需要改按贡献者 $c \in C$,来划分贡献给分配池且获认可的投入,而不是按产出的物品 $x \in X$ 或所需的任务 $t \in T$ 划分。当然,这不会改变投入本身:

$$ \sum_{c \in C} R_c = \sum_{x \in X} R_x = \sum_{t \in T} R_t $$ {#A.13}

获认可投入的平均值为 $\bar{R}C = \frac{1}{|C|} \sum{c \in C} R_c$,其中 $|C|$ 是集合 $C$ 的大小,即贡献者人数。每一位符合这一方案资格的非贡献者,都会获得等于该平均值的虚拟投入:

$$ V_e = \bar{R}C = \frac{1}{|C|} \sum{c \in C} R_c $$ {#A.14; 贡献者平均值}

我们讨论过的另一种办法,是让每位曾经作出贡献的人,都有权取得等同于其个人在活跃贡献年份(或其中一部分年份,例如最后十年)内获认可贡献的平均值的虚拟投入。如果 $R_{e_1}, R_{e_2}, \dots, R_{e_n}$ 表示 $e$ 在相关的 $n$ 年中作出的获认可投入,并且采用这第二种办法,那么 $e$ 有权取得的虚拟投入,就是其在这些年份中的个人平均值:

$$ V_e = \bar{R}e = \frac{1}{n} \sum{i=1}^{n} R_{e_i} $$ {#A.15; 个人平均值}

对于从未作出过贡献的人,例如儿童以及从出生起就符合某项豁免标准的其他人,只能采用第一种办法。第二种办法可能更适合曾经作出贡献的人:他们过去作出过贡献,但现在已无法继续,例如因为年老或患病。当然,参加分配池的地方联合体也可以决定采用其他办法;例如,给予每一位曾经作出贡献的人以贡献者平均值和个人平均值中的较大值,也就是采用能带来更多虚拟投入的办法。

我们提到虚拟投入的第二种情形,是把土地与住房的竞配用作调节人口迁移的机制(第8.3.1节)。分配池中土地与住房的公开竞配,会抬高受欢迎地区的价格,从而降低这些地方对潜在迁入者的吸引力,并减轻其过度拥挤的风险;但同样也会影响那些出生于当地、希望留下的人。可以通过计算一个共同体的本地居民因其共同体受欢迎而必须付出的额外投入,再把其中的一部分(比如一半)以虚拟投入的形式返还,来部分补偿这种影响。这样,他们只需为所需额外投入的一半作出实际贡献,另一半则无条件授予他们。

要实行这样的办法,首先必须定义谁属于本地居民。一种合理的定义是:把若干年前(例如五年前)居住在某个地方共同体的所有人,都视为该共同体的本地居民,而不论他们现在是否仍住在那里,或是否已迁往别处。这样,迁入者就不会永远被视为迁入者(那样很难说得通),而会在若干年后自动成为本地居民。

其次,需要确定,由于本地区土地与住房的公开竞配,该共同体的本地居民到底必须付出多少额外投入(如果存在的话)。为此,可以在实际的土地与住房竞配之外,配上一场仅考虑本地居民报价的影子竞配。设 $P_{GH}$ 为实际竞配中位于某地方共同体的全部土地与住房的总价;$P^*_{GH}$ 为这些土地与住房在影子竞配中本应形成的总价。现在,通过计算下式,我们就能确定相应共同体的本地居民是否因该共同体受欢迎而必须支付更高价格:

$$ \Delta_{GH} = P_{GH} - P^*_{GH} $$ {#A.16}

由于影子竞配模拟的是没有人口迁移的虚构情形,它也需要纳入那些实际上已迁往别处(因而不再参与报价)的本地居民的报价。可以沿用这些本地居民迁出之前的最后一次报价。

如果 $\Delta_{GH}$ 为正,本地居民就确实因为自己的共同体受欢迎而必须付出额外投入。如果把这部分投入的50%返还给本地居民,而本地居民有 $n$ 人,那么给予相关地方共同体中每位本地居民 $e$ 的虚拟投入就是:

$$ V_e = \frac{0.5}{n} \Delta_{GH} $$ {#A.17; 受欢迎共同体的本地居民}

(当然,如果 $e$ 恰好获豁免、无需贡献,她还会按照前文的讨论,额外取得依据其个人平均值或贡献者平均值计算的虚拟投入。)

将这种虚拟投入分配给某共同体的全体本地居民,是合理的,不论他们如今住在哪里。否则,从一个地方共同体迁往另一个同样受欢迎的共同体(也许只是相邻共同体)的人就会处于不利地位,从而不必要地妨碍人口迁移。始终按照人们五年前居住的共同体的本地居民资格给予虚拟投入,会鼓励人们从受欢迎的地方迁往较不受欢迎的地方,而在反方向迁移时再三考虑。这样,它就会按预期抵消各地“自然”的受欢迎程度。

附录原注

$$ \sum_{x \in X} E_x = \sum_{x \in X} P_x = \sum_{x \in X} (A_x \times N \times E_x) = N \times \sum_{x \in X} (A_x \times E_x) = \frac{\sum_{x \in X} E_x}{\sum_{x \in X} (A_x \times E_x)} \times \sum_{x \in X} (A_x \times E_x) = \sum_{x \in X} E_x $$ {#proof-a1}

$$ R_x = \min(1,A_x) \times E_x = A_x \times E_x $$ {#proof-a3-1; 当 A < 1 时(降价竞配)} $$ R_x = \min(1,A_x) \times E_x = 1 \times E_x = A_x \times E_x $$ {#proof-a3-2; 当 A = 1 时(生产投入)} $$ R_x = \min(1,A_x) \times E_x = 1 \times E_x < A_x \times E_x $$ {#proof-a3-3; 当 A > 1 时(加价竞配)}

因此,$N = \frac{\sum_{x \in X} R_x}{\sum_{x \in X} (A_x \times E_x)}$ 在从不使用加价竞配时将等于1,在对某些 $x$ 使用加价竞配时则小于1。

注释