【问题标题】:Generating schedule for pair game生成配对游戏的时间表
【发布时间】:2013-02-28 10:12:55
【问题描述】:

我们有 8 名玩家。

在一张桌子上玩 4 名玩家(两对)。

因此,每个玩家都需要与所有其他 7 名玩家配对,并将该玩家作为对手的计数相同。

如果只是创建表并从列表中删除它,我们有:

Tour 1: (1,2) - (3,4) | (5,6) - (7,8)
Tour 2: (1,3) - (2,5) | (4,7) - (6,8)
.....................................
.....................................
Tour 7: (1,8) - (2,7) | (3,6) - (4,5)

但有些付款人会比其他人经常遇到一些反对者。

我需要朝那个方向思考?

****更新**** 在 Jens Schauders 解决方案的情况下,我们将进行 7 轮。如果与玩家 2 对弈,我们将有 3 次对手 4 和 1 次对手 7。

如果在此架构中拆分对

       TABLE 1 |  TABLE 2

Pair1: 1    2  |  3    4
      ------------------
Pair2: 5    6  |  7    8

哪里出错了?

【问题讨论】:

    标签: algorithm scheduling


    【解决方案1】:

    我认为您正在寻找的算法有一个简单的可视化:

    想象一张长桌,对手坐在对面:

    1    2    3    4
    ----------------
    5    6    7    8
    

    现在每个新回合,每个人都会移动到他左边的位置。可能在桌子的另一边,除了一个例外:玩家一号保持她的座位。所以下一轮应该是这样的

    1    5    2    3    
    ----------------
    6    7    8    4
    

    如果您现在将长桌分成两部分,您将获得适合您的小桌的配对。

    关于更新后的问题

    为了使对手分布更均匀,可以尝试以不同的方式拆分大表,例如从第一列和第四列构建一个小表,从第 2+3 列构建第二个小表

    【讨论】:

    • 小问题。能否请您更新问题?
    • 我尝试了所有变体(即使是对角线),但至少有一个对手出现了 3 次。
    【解决方案2】:

    您可以在 4 支球队之间进行 6 场独特的比赛。有 7 种可能的配对,因此有 42 种独特的游戏。

    每个玩家只与其他玩家配对一次,并与他们中的每个人精确对战 6 次。

    列表:

    Pairs 01: (1,2),(3,4),(5,6),(7,8)
    PairRound 1:
    GameRound 01: (1,2) - (3,4) | (5,6) - (7,8)
    GameRound 02: (1,2) - (7,8) | (3,4) - (5,6)
    GameRound 03: (1,2) - (5,6) | (3,4) - (7,8)
    
    Pairs 02: (1,3),(2,4),(5,7),(6,8)
    PairRound 2:
    GameRound 04: (1,3) - (2,4) | (5,7) - (6,8)
    GameRound 05: (1,3) - (6,8) | (2,4) - (5,7)
    GameRound 06: (1,3) - (5,7) | (2,4) - (6,8)
    
    Pairs 03: (1,4),(2,3),(5,8),(6,7)
    PairRound 3:
    GameRound 07: (1,4) - (2,3) | (6,7) - (5,8)
    GameRound 08: (1,4) - (5,8) | (2,3) - (6,7)
    GameRound 09: (1,4) - (6,7) | (2,3) - (5,8)
    
    Pairs 04: (1,5),(2,6),(3,7),(4,8)
    PairRound 4:
    GameRound 10: (1,5) - (2,6) | (3,7) - (4,8)
    GameRound 11: (1,5) - (4,8) | (2,6) - (3,7)
    GameRound 12: (1,5) - (3,7) | (2,6) - (4,8)
    
    Pairs 05: (1,6),(2,5),(3,8),(4,7)
    PairRound 5:
    GameRound 13: (1,6) - (2,5) | (3,8) - (4,7)
    GameRound 14: (1,6) - (4,7) | (2,5) - (3,8)
    GameRound 15: (1,6) - (3,8) | (2,5) - (4,7)
    
    Pairs 06: (1,7),(2,8),(3,5),(4,6)
    PairRound 6:
    GameRound 16: (1,7) - (2,8) | (3,5) - (4,6)
    GameRound 17: (1,7) - (4,6) | (2,8) - (3,5)
    GameRound 18: (1,7) - (3,5) | (2,8) - (4,6)
    
    Pairs 07: (1,8),(2,7),(3,6),(4,5)
    PairRound 8:
    GameRound 19: (1,8) - (2,7) | (3,6) - (4,5)
    GameRound 20: (1,8) - (4,5) | (2,7) - (3,6)
    GameRound 21: (1,8) - (3,6) | (2,7) - (4,5)
    

    【讨论】:

      【解决方案3】:

      以下是两个时间表。第一个时间表是 2 轮循环固定合作伙伴时间表。这是一个平衡的 2 轮循环“对”赛程。或者,另一种说法是我们正在安排“对”中的“对”。我想这就是你要找的吗?

      第二个赛程是一个“平衡”的 2 轮循环赛“单打”赛程,有 8 名玩家(每个玩家是一个团队)。

      注意:在这两个赛程中,所有球员/球队都轮流在所有桌子上。没有球员/球队固定在一个固定的位置这对于大多数联赛来说是不可取的,因为它会创建时隙分布不平衡。该线程上发布的其他两个答案将单个团队锁定在单个时间段中,然后将其他 7 个团队轮换通过该时间段。

      下面的 PAIRS-4 时间表是固定合作伙伴时间表。我们还有一个 8 人的轮换合作伙伴时间表。在每轮循环赛中,所有玩家都与其他 7 名玩家中的每一位搭档一次,并且与所有其他玩家完全对战两次。

      PAIRS-4 SCHEDULE                     Date 8/4/14            
      -    
      DATE   DAY  TIME   LOCATION     GM#   HOME  v  AWAY
      Week 1         
      AUG  4 MON  6:00pm Table-1       1  #1 & #2 v #7 & #8
      AUG  4 MON  6:00pm Table-2       1  #3 & #4 v #5 & #6
      Week 2
      AUG 11 MON  6:00pm Table-1       2  #7 & #8 v #3 & #4
      AUG 11 MON  6:00pm Table-2       2  #5 & #6 v #1 & #2
      Week 3    
      AUG 18 MON  6:00pm Table-1       3  #1 & #2 v #3 & #4
      AUG 18 MON  6:00pm Table-2       3  #5 & #6 v #7 & #8
      Week 4
      AUG 25 MON  6:00pm Table-1       4  #5 & #6 v #3 & #4
      AUG 25 MON  6:00pm Table-2       4  #7 & #8 v #1 & #2
      Week 5        
      SEP  1 MON  6:00pm Table-1       5  #1 & #2 v #5 & #6
      SEP  1 MON  6:00pm Table-2       5  #3 & #4 v #7 & #8
      Week 6    
      SEP  8 MON  6:00pm Table-1       6  #7 & #8 v #5 & #6
      SEP  8 MON  6:00pm Table-2       6  #3 & #4 v #1 & #2
      -    
      ========================================================
      -
      SINGLES-8 SCHEDULE               Date 8/5/14 
      -
      DATE   DAY  TIME    LOCATION   GM#  HOME v AWAY
      Week 1
      AUG  5 TUE  6:00pm  Table-1     1   #1 v #8
      AUG  5 TUE  6:00pm  Table-2     1   #2 v #7
      AUG  5 TUE  6:00pm  Table-3     1   #3 v #6
      AUG  5 TUE  6:00pm  Table-4     1   #4 v #5
      Week 2    
      AUG 12 TUE  6:00pm  Table-1     2   #5 v #2
      AUG 12 TUE  6:00pm  Table-2     2   #8 v #6
      AUG 12 TUE  6:00pm  Table-3     2   #7 v #1
      AUG 12 TUE  6:00pm  Table-4     2   #3 v #4
      Week 3
      AUG 19 TUE  6:00pm  Table-1     3   #2 v #3
      AUG 19 TUE  6:00pm  Table-2     3   #5 v #7
      AUG 19 TUE  6:00pm  Table-3     3   #4 v #8
      AUG 19 TUE  6:00pm  Table-4     3   #6 v #1
      Week 4
      AUG 26 TUE  6:00pm  Table-1     4   #6 v #4
      AUG 26 TUE  6:00pm  Table-2     4   #1 v #5
      AUG 26 TUE  6:00pm  Table-3     4   #7 v #3
      AUG 26 TUE  6:00pm  Table-4     4   #8 v #2
      Week 5
      SEP  2 TUE  6:00pm  Table-1     5   #3 v #5
      SEP  2 TUE  6:00pm  Table-2     5   #4 v #1
      SEP  2 TUE  6:00pm  Table-3     5   #2 v #6
      SEP  2 TUE  6:00pm  Table-4     5   #7 v #8
      Week 6
      SEP  9 TUE  6:00pm  Table-1     6   #6 v #7
      SEP  9 TUE  6:00pm  Table-2     6   #4 v #2
      SEP  9 TUE  6:00pm  Table-3     6   #5 v #8
      SEP  9 TUE  6:00pm  Table-4     6   #1 v #3
      Week 7
      SEP 16 TUE  6:00pm  Table-1     7   #7 v #4
      SEP 16 TUE  6:00pm  Table-2     7   #8 v #3
      SEP 16 TUE  6:00pm  Table-3     7   #2 v #1
      SEP 16 TUE  6:00pm  Table-4     7   #5 v #6
      Week 8
      SEP 23 TUE  6:00pm  Table-1     8   #7 v #2
      SEP 23 TUE  6:00pm  Table-2     8   #6 v #3
      SEP 23 TUE  6:00pm  Table-3     8   #5 v #4
      SEP 23 TUE  6:00pm  Table-4     8   #8 v #1
      Week 9
      SEP 30 TUE  6:00pm  Table-1     9   #6 v #8
      SEP 30 TUE  6:00pm  Table-2     9   #1 v #7
      SEP 30 TUE  6:00pm  Table-3     9   #4 v #3
      SEP 30 TUE  6:00pm  Table-4     9   #2 v #5
      Week 10
      OCT  7 TUE  6:00pm  Table-1    10   #7 v #5
      OCT  7 TUE  6:00pm  Table-2    10   #8 v #4
      OCT  7 TUE  6:00pm  Table-3    10   #1 v #6
      OCT  7 TUE  6:00pm  Table-4    10   #3 v #2
      Week 11
      OCT 14 TUE  6:00pm  Table-1    11   #5 v #1
      OCT 14 TUE  6:00pm  Table-2    11   #3 v #7
      OCT 14 TUE  6:00pm  Table-3    11   #2 v #8
      OCT 14 TUE  6:00pm  Table-4    11   #4 v #6
      Week 12
      OCT 21 TUE  6:00pm  Table-1    12   #1 v #4
      OCT 21 TUE  6:00pm  Table-2    12   #6 v #2
      OCT 21 TUE  6:00pm  Table-3    12   #8 v #7
      OCT 21 TUE  6:00pm  Table-4    12   #5 v #3
      Week 13
      OCT 28 TUE  6:00pm  Table-1    13   #2 v #4
      OCT 28 TUE  6:00pm  Table-2    13   #8 v #5
      OCT 28 TUE  6:00pm  Table-3    13   #3 v #1
      OCT 28 TUE  6:00pm  Table-4    13   #7 v #6
      Week 14
      NOV  4 TUE  6:00pm  Table-1    14   #3 v #8
      NOV  4 TUE  6:00pm  Table-2    14   #1 v #2
      NOV  4 TUE  6:00pm  Table-3    14   #6 v #5
      NOV  4 TUE  6:00pm  Table-4    14   #4 v #7
      -               
      -                 # # # # #    
      -
      

      您可以将上面的时间表复制并粘贴到您的文字处理器中,然后使用 搜索和替换以用真实姓名替换球员号码。你也可以 编辑时间表,即更改日期和时间,添加注释、图形、联系方式 每个玩家的信息等。

      【讨论】:

      • 无需在帖子中包含您的签名,因为它会自动附加到帖子底部。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-12
      • 1970-01-01
      相关资源
      最近更新 更多