为了逼年轻人结婚,新加坡政府把一个64年前的数学定理写进了相亲App

老数学成为数字月老

很多人手机里大概都装过交友软件。

晚上躺在床上,大拇指机械地往左划、往右划。半小时划拉几百张精修照片,划得手指发酸、眼睛发胀。好不容易匹配上两个,要么打完招呼石沉大海,要么聊两句就开始推荐理财甚至让你加微信买茶叶。

很多人以为是自己运气差,其实只是撞上了商业模式的天然悖论。

商业交友软件的生存根基是日活、停留时长和会员续费。如果算法真聪明到第一天就给你精准推个灵魂伴侣,俩人手牵手领证顺手把软件删了,在公司的财务报表上,这绝不叫撮合成功,这叫极其惨痛的「用户流失」。

交友软件的设计逻辑,完完全全照搬了赌场的老虎机。隔三差五给你掉落一个心动对象,吊着多巴胺,但绝不让你轻易通关。只有让你永远觉得「下一个可能更好」,你才会停不下来地一直划下去。

刷不完的交友老虎机

商业公司巴不得你单身一辈子,但有一个机构,是真被这届年轻人给逼急了。

新加坡政府。

过去这两年,新加坡的总和生育率跌到了 0.97,直接击穿历史底线。发津贴、发婴儿红包、组屋优先摇号,甚至把带薪产假一延再延,高层愁得直挠头,但年轻人依然该单身单身,该不结就不结。

新加坡政府科技局(GovTech)的一帮工程师在黑客马拉松上琢磨:既然外面的商业软件全指望年轻人单身来挣钱,那政府干脆自己动手做个平台。

这个项目叫 FirstDate,就在明天(10月5号),第一期试点申请就要正式截止。

翻开申请细则,第一期试点走的是小范围灰度策略,只面向 21 到 35 岁的未婚公职雇员开放。

技术团队的考量很务实:在把产品推向全社会之前,先找最可控的圈子做灰度测试。在互联网研发里,这叫经典的「吃自家狗粮」(Dogfooding)。当年在新加坡大获成功的全岛停车软件 Parking.sg、便民政务系统 FormSG,全都是工程师在黑客马拉松里搓出来的原型,先让身边的同事当第一批种子用户踩坑测试,等机制和体验打磨稳定了,再大面积铺开成为全岛通用的基础设施。

更现实的是,要想验证一套几十年前的数学模型到底管不管用,前期最怕脏数据。这批公职雇员的真实身份和单身状态都有现成的数据系统核验,没有杀猪盘,没有虚假照骗,也没有婚托中介。这是一个天然干净的「无菌实验场」。

政府自己做的产品,考核逻辑跟商业公司截然相反。商业公司怕你走,政府怕你留。 这个平台唯一的 KPI,就是求求你们赶紧看对眼,赶紧领证生娃,然后永远别再打开这个系统。


为了解决这种深层内耗,工程师们直接翻出了一篇 1962 年的老论文,彻底绕开了市面上花哨的推荐标签。

这套算法叫「盖尔-沙普利算法」(Gale-Shapley Algorithm),学术界俗称「稳定婚姻定理」。

1962 年,数学家戴维·盖尔(David Gale)和经济学家劳埃德·沙普利(Lloyd Shapley)在论文里联手给出了这套机制的完整证明。整整五十年后的 2012 年,沙普利和另一位学者埃尔文·罗斯(Alvin Roth)靠着这套理论对实际市场机制设计的巨大贡献,摘下了诺贝尔经济学奖。

在经济学里,相亲有一个专门的定义:双边无货币匹配市场(Two-Sided Matching Market)。

意思是,两个人能不能成,既不能靠平台强买强卖,也不能直接掏钱买爱情,纯靠双方心里的相互认可度。

在数学建模上,男士记为集合 $M = \{m_1, m_2, \dots, m_n\}$,女士记为集合 $W = \{w_1, w_2, \dots, w_n\}$。每个人心里都有一份严格偏好全序关系 $\succ$。比如男生 $m$ 觉得姑娘 $w_1$ 比 $w_2$ 更合拍,数学上就记作:

$$w_1 \succ_m w_2$$

相亲软件要做的,就是给全场所有人算出一个一一对应的配对函数 $\mu: M \to W$。

但光把人配成对根本没用,乱点鸳鸯谱只会制造「互相将就」。在博弈论里,这种随时可能暴雷的尴尬组合,有一个极其严谨的定义叫 「阻碍对(Blocking Pair)」:

$$\begin{cases} w \succ_m \mu(m) \\ m \succ_w \mu(w) \end{cases}$$

这个方程组翻译成人话极其扎心:男士 $m$ 觉得外面的女士 $w$ 更好,而女士 $w$ 偏偏也觉得男士 $m$ 胜过自己的现任。两个人都在将就,心里都长了草。只要稍有风吹草动,这种凑合出来的关系瞬间就会瓦解。

阻碍对示意,两组现有配对中的两人互相更喜欢对方

真正的稳定匹配(Stable Matching),必须用一道数学铁律彻底掐死这种私奔的冲动:

$$w \succ_m \mu(m) \implies \mu(w) \succ_w m$$

通俗翻译:凡是你觉得比现任更好的姑娘,人家都觉得自己的伴侣比你强。你想跳车?对方根本看不上你。算法在数学底层彻底掐死了私奔的可能。

为了求解这个全局稳定匹配,盖尔和沙普利设计了一套叫做「延迟接受」(Deferred Acceptance)的经典博弈机制:

  • Round 1(提议与暂扣):所有男士同时向自己的第一志愿发起邀请。女士们收到邀请后,只挑出其中排位最高的一位予以「暂扣」(Hold),当场礼貌拒绝其余所有人。
  • Round k(退而求其次与动态换人):被拒绝的男士按照自己的偏好单,向下一顺位的备选发起邀请。女士们将新追求者与手中已暂扣的对象综合比对,留下心仪者,退回落后者。
  • Termination(算法收敛):由于每个人的心愿单长度有限,且男士绝不重复向同一个人表白,算法在最坏情况下至多经历 $n^2 - 2n + 2$ 次提议,复杂度严格收敛在 $O(n^2)$。当全场再无新的提议发生时,所有暂扣立刻转正。

盖尔-沙普利算法一图读懂,从偏好排序、暂留与换人到稳定配对

在这个推演之上,学者们进一步证明了两个颠覆直觉的硬核定理。

定理一:颠覆常识的「主动方最优,被动方最劣」(Proposer-Optimality)

很多人潜意识里觉得相亲时坐在原地等别人追最舒服、最占便宜。但在博弈论里,结论完全相反——主动出击的一方,占尽了数学便宜。

沙普利证明了一个残酷的定理:所有符合条件的稳定结果可能有好几种(集合记为 $S$)。但只要是由男方主动发起表白,男方拿到的最终匹配 $\mu_M$,必定是他在所有稳定解里的最高上限:

$$\forall m \in M, \; \forall \mu \in S, \quad \mu_M(m) \succeq_m \mu(m)$$

而等待被选的女方,拿到的却只是她在所有稳定解里的最低下限:

$$\forall w \in W, \; \forall \mu \in S, \quad \mu(w) \succeq_w \mu_M(w)$$

道理其实很通俗:主动出击的人永远从最满意的对象开始追,一旦成了就锁定在高位;被动等待的人只能在别人挑剩下的池子里换来换去,最后留在手里的往往是顺位最靠后的妥协。

正因如此,在现实工程实现中,新加坡科技局不能搞简单的单边发起,必须在后台交叉跑两遍:男追女($\mu_M$)与女追男($\mu_W$),最后由算法算出双方的中位数均衡解(Median Stable Matching),从底层机制上保障平权。

定理二:真实的胜利——激励相容(Strategy-Proofness)

很多人相亲或填高考志愿,最耗神的是玩心机和防滑档:明明喜欢清华,怕落榜退档,被迫违心填第二志愿。

2012 年诺奖得主埃尔文·罗斯(Alvin Roth)给出了严谨的证明:在延迟接受机制下,对提议方而言,说真话才是数学上的最优解(弱占优策略 Weakly Dominant Strategy):

$$\mu(\text{真实偏好}) \succeq_m \mu(\text{虚报偏好})$$

哪怕你明知道对方是全场最抢手的人,老老实实把他排在第一位,也绝对不会影响你被备选对象接纳的概率。任何耍心机、搞策略性隐瞒,都绝不可能换来更好的结果。算法用数学法则,彻底免除了人们在试探中的心理内耗。

现实工程挑战:如何把人变成偏好矩阵?

学术论文假设每个人都能毫不犹豫地把全岛几千人从第 1 名排到第 1000 名,但在现实中这绝不可能。

新加坡政府科技局的核心技术工作,在于构建一套多维效用函数(Utility Function):

$$U(i, j) = \sum_{k=1}^K \omega_k \cdot \text{Sim}(c_{i,k}, c_{j,k})$$

系统将个人在价值观、金钱观、育儿理念等 $K$ 个维度的问卷打分 $c_{i,k}$,结合个性化权重 $\omega_k$ 转化为双向相容度矩阵,自动降序排列出每个人的严格偏好序列表 $\succ_i$。

双方通过问卷表达兴趣、习惯、价值观和偏好,概念示意

同时叠加上现实世界的硬约束过滤器:

  • 部门防尴尬隔离:$D(i) \neq D(j)$;
  • 国家身份库核验:排除已婚或在办离婚状态;
  • 个人理性底线(Individual Rationality):若 $U(i, j) < \theta_{\text{min}}$(低于单身忍受阈值),则直接从心愿单末端剔除。在数学上,宁可匹配结果为空,也绝不强塞将就。

把清洗后的干净矩阵灌入盖尔-沙普利求解器,几千名公职雇员的全局最优稳定解,在毫秒之间便完成了计算。

这套算法当年之所以能摘下诺贝尔奖,正是因为它的战场远不止于相亲——全美几十万住院医生的医院规培分配系统(NRMP)、波士顿与纽约的公立高中择校系统,甚至全美成千上万肾衰竭患者跨州活体肾脏配对网络(Kidney Exchange),全是由这套极其硬核的匹配机制在底层驱动。


为了让这个数学定理起效,新加坡人把整个软件改得极其反常识:

  • 彻底掐掉左滑右滑的信息流:在传统的交友软件里,海量精修头像在屏幕上流水一样刷过去,很容易给人一种「下一个肯定更好」的幻觉。人被当成了货架上的商品翻来拣去,挑到最后看谁都差点意思,谁也定不下来。FirstDate 直接拿掉了这个挑拣的货架。在一个匹配周期里,算法只给你推一个人。推完之后,系统给双方留出 72 小时的考虑窗口。要么双方都同意交换联系方式,要么拒绝后老老实实等待下一个漫长的周期。没有海选,没有备胎池,逼着双方把全部注意力聚焦在眼前这一个人身上。
  • 登录强制绑定数字身份 Singpass:这一招把杀猪盘和照骗连根拔起。因为账号背后直接连着婚姻登记数据库,已婚或者正在办离婚的人,连登录页面都进不去。
  • 代码里写死「防尴尬规则」:系统严禁匹配同一个政府部门的同事。写这行规则的工程师显然太懂办公室生态了,谁也不想周一早上在茶水间接热水,抬头撞见上周刚把自己拒掉的同部门同事。
  • 强制派发线下约会任务:双方一旦都点了同意,系统直接掐断线上的无休止网聊,派发一套线下约会任务:推荐去附近的植物园散步或者去咖啡馆坐坐,把人从滤镜里拽回现实世界。

商业交友软件和这套政府系统,表面上都在做相亲,但底层的目标函数完全相反。

商业公司的算法把用户在线时长当成命脉,想尽办法用多巴胺吊着你,生怕你太快脱单离场。

而当一个被少子化逼急了的政府亲自下场写代码,它的目标只有一个:尽快帮你找到一个彼此认可的人,然后迅速退出系统。

所以它关掉了虚幻的挑选货架,掐断了无意义的线上内耗,甚至连多余的聊天功能都懒得做。

技术兜兜转转演进了这么多年,面对亲密关系这种最原始的难题,最后起效的,却可能是一套最克制的逻辑:

用严谨的数学把双方意愿算到最稳固,然后合上手机,走出门去见那个真实的人。

放下手机,在真实世界里见面

署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)
— 位旅人路过 — 次翻阅 初次见面