GS problem: stable matching

GS问题描述了一个医疗机构向医学院学生发出邀约的过程,学生根据偏好选择接受或拒绝。稳定匹配算法确保双方都能找到满意的选择。典型例子如婚姻稳定匹配问题,其特点是男性有表白权,女性只能接受或拒绝,且匹配过程中满足特定稳定性条件。此外,该问题可扩展到公司与求职者、志愿录取等场景,通过稳定匹配解决资源分配问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#背景提出:
市场一方中的对象(医疗机构)向另一方中的对象(医学院学生)提出要约,每个学生会对自己接到的要约进行考虑,然后抓住自己青睐的(认为它是可接受的),拒绝其它的。该算法一个关键之处在于,合意的要约不会立即被接受,而只是被“抓住”(hold on to),也就是“延迟接受”。要约被拒绝后,医疗机构才可以向另一名医学院学生发出新的要约。整个程序一直持续到没有机构再希望发出新的要约为止,到那个时候,学生们才最终接受各自“抓住”的要约。

注意

  1. 一方A邀约,一方B只能接受或拒绝; 类似问题弄明白哪个是哪一方;
  2. 循环终止条件:所有邀约方A的preference list中的所有B都被邀约,即A中都完成了邀约。

并弄懂4个名词:
matching:还剩单个的,没被匹配
perfect matching: 所有的都匹配了
stable matching:
instable matching: 互相都不喜欢


#典型例子:

关于婚姻稳定匹配问题:这儿有一份别人写的详细解释(带图)http://www.matrix67.com/blog/archives/2976,向原作者致敬!

婚姻问题:
stable perfect matching, 一个只能对一个;
男人有表白权,女人只能选择:暂时接受或拒绝;
women: beter and beter, men: worse and worse;

##有以下3个性质:
1.Woman w remains engaged from the point at which she receives her first proposal; and the sequence of partners to which she is engaged gets better andbetter in terms of her preference list.
2.The sequence of women to whom man m propose gets worse and worse in termsof his preference list.
3.If man m is free at some point in the execution of the algorithm, then there is a woman to whom he has not yet proposed.


#其它类似问题

  1. 公司与求职者问题:(学校与学生 志愿录取问题)
    是一对多,公司可匹配多个求职者,一个求职者只能匹配一家公司。

  2. the junction box switching problem
    对题目的理解:
    可以把输入输出线看做输水管道,每一对输入和输出管道之间都有唯一的交点(看做闸门),如下图:

    每一个输入管道都有不同颜色的水流,让我们设计一个算法,给每一个输入管道选择一个输出管道.
    要求:任意两个不同颜色的水流不能经过同一个闸门。
    这里写图片描述
    对于下图这种选择就是错误的,因为在框起来的位置,水流有交叉:
    这里写图片描述
    其正确的解,如下图,所有的水流都有各自的输出管道,并且任意两个水流都没有出现交叉点(没有经过相同的闸门)
    这里写图片描述
    分析这个问题,如何选择才能避免水流经过相同的闸门。
    对于输入管道而言,每个输入管道都希望尽快的将水流导入输出管道,因为这样,在管道下游将空余出更多的闸门供其它水流经过;
    对于输出管道而言,每个输出管道都希望更晚的接收水流,因为这样,在输出管道的上游将空余出更多的闸门供其它水流经过;
    总而言之,就是输入和输出管道都选择尽量空余出更多的闸门.

因此,我们可以设计一个稳定匹配来解决这个问题。
每个输入管道按照与输出管道的交点的顺序(从上游到下游),对输出管道进行排序;同理,每个输出管道也按相同的方式对输入管道排序;
然后。。。运行稳定匹配算法,其选择条件为上一段讲到的内容

上面使用到的图,是看起来比较“规整”的,实际上,输入管道与输出管道交点的位置(顺序)对于解题没有影响,例如,下面这种
这里写图片描述
需要证明稳定匹配是一个有效的解。
以上问题的描述来自算法课上的助教解释

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值