Algorithm 稳定婚姻的变异——总是有一个稳定的;解决方案;?

Algorithm 稳定婚姻的变异——总是有一个稳定的;解决方案;?,algorithm,language-agnostic,stable-marriage,Algorithm,Language Agnostic,Stable Marriage,以下问题来自Jon Kleinberg和埃瓦·塔多斯的“算法设计”,第1章,练习3。我尽可能缩短了描述(括号内或引号外的注释) 假设我们有两个电视网络,我们称之为A和B。有n黄金时段的节目,每个网络都有n电视节目。每个电视网都想制定一个时间表——将每个节目分配到一个不同的时段——以尽可能吸引更多的市场份额。 […]每个节目都有固定的评分[…];我们假设没有两个节目的收视率完全相同。如果为某个时隙安排的节目的收视率高于为该时隙安排的其他网络节目的收视率,则该网络将赢得给定的时隙。目标是赢得尽可能多

以下问题来自Jon Kleinberg和埃瓦·塔多斯的“算法设计”,第1章,练习3。我尽可能缩短了描述(括号内或引号外的注释)

假设我们有两个电视网络,我们称之为
A
B
。有
n
黄金时段的节目,每个网络都有
n
电视节目。每个电视网都想制定一个时间表——将每个节目分配到一个不同的时段——以尽可能吸引更多的市场份额。 […]每个节目都有固定的评分[…];我们假设没有两个节目的收视率完全相同。如果为某个时隙安排的节目的收视率高于为该时隙安排的其他网络节目的收视率,则该网络将赢得给定的时隙。目标是赢得尽可能多的时段

我们从每个网络获得一个季度的时间表,因此第一个网络给我们一个时间表
s
,第二个网络给我们一个时间表
T

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

也就是说,不存在会给第一个网络更多时隙的调度
S'
,也不存在第二个网络的类似调度
T'


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


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

嗯,是的,我的直觉是正确的。当
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
改变了它的时间表以赢回所有的位置…

不可能总是得到一个稳定的解决方案,但是我想如果排名满足某个标准,可能有一种方法可以保证一个稳定的情况存在。


例如,一个(微不足道的)稳定的情况是,当一个网络的所有节目都有平均收视率,而另一个网络的所有节目都有极高或极低的排名时,那么这两个网络都无法通过交换时间表中的时段来完成任何事情。
例如:
a={45,50,59,60}
B={1,3,90,92}
我认为您可以将这个想法推广到一系列稳定案例的特征化。

网络是否受到其如何改变时间表的限制?它只能为两个节目交换时间吗?或者它可以同时完全重新定位所有程序?