稳定婚姻的变化 - 是否总有稳定的“解决方案”?

时间:2013-12-23 19:04:26

标签: algorithm language-agnostic stable-marriage

以下问题来自Jon Kleinberg和ÉvaTardos的“算法设计”,第1章,练习3.我尽可能缩短了描述(我在括号中或在引用块之外注释)

  

假设我们有两个电视网络,我们称之为AB。有n个黄金时段节目时段,每个网络都有n个电视节目。每个网络都想制定一个时间表 - 将每个节目分配到一个不同的时段 - 以便尽可能多地吸引市场份额。   [...]每个节目都有固定的评级[...];我们假设没有两个节目具有完全相同的评级。如果为该时隙调度的节目具有比显示该时隙的其他网络调度的更大的评级,则网络赢得给定的时隙。目标是赢得尽可能多的时间段。

我们会从每个网络获取一个季节的时间表,因此第一个网络为我们提供了一个时间表s,第二个网络为我们提供了一个时间表T

  

[...]如果两个网络都不能单方面改变自己的时间表并赢得更多的时间段,我们会说这对时间表(S,T)稳定

也就是说,没有时间表S'可以为第一个网络提供更多的时间段,而且第二个网络也没有类似的时间表T'


  <问题是[问题]:对于每组电视节目和收视率,是否总有一对稳定的时间表?

我的直觉告诉我没有,因为我可以想象稳定时间表的问题的唯一例子是第一个网络的最佳节目仍然比第二个节目的最差节目更差网络,即一个网络可以赢得所有时间表。否则我认为一个网络可以交换两个条目以赢得更多的插槽,另一个网络可以改变其时间表,以便它一直赢回这些插槽。

2 个答案:

答案 0 :(得分:4)

并非总能找到一个稳定的解决方案,但我认为如果排名符合某个标准,可能有一种方法可以保证存在稳定的情况。

例如,一个(平凡)稳定的情况是当一个网络的所有节目具有平均评级并且另一个网络的所有节目具有极高或低排名时,则网络可以通过交换调度中的时隙来完成任何事情。
例如:
A = {45,50,59,60}
B = {1,3,90,92}我认为你可以概括一下想要得出一个稳定案例家族的特征。

答案 1 :(得分:3)

是的,我的直觉是正确的。在n = 2时,很容易想象一个反例。

说,我们为每个网络都有两个节目。第一个网络的节目评分为10, 20,第二个网络的节目评分为15, 25

所以,我们有这个时间表:

slot 1: A: 10, B: 15  # B wins
slot 2: A: 20, B: 25  # B wins

现在B赢得所有广告位。 A会想要更改计划以获得至少一个广告位。所以新的时间表是:

slot 1: A: 20, B: 15  # A wins
slot 2: A: 10, B: 25  # B wins

现在B更改其计划以赢回所有广告位...