中国政府网 | 国家体育总局 | 湖南省政府门户网站 无障碍浏览 |

淘汰赛编排中根种子算法

湖南省体育局 发布时间:2004-10-15 14:09 【字体:

董东风   
(长沙通信职业技术学院  湖南  长沙  邮编  410015)

摘  要:在体育竞赛淘汰赛的编排中,运用传统理论,虽然能解决实际编排问题,但不能解决给定2n个位置,来排定2n个有序种子号码和(2n—N)个空位的位置问题。本文作者采用列举推导法,通过手工对种子号码排位,推导出了在淘汰赛编排中对种子队排位的算法,从而解决了计算机替代手工编排的算法问题。
关键词:种子;位置;算法
   
    随着信息社会的到来,体育竞赛信息化的建设势在必行,其中包括竞赛编排信息化的建设。然而,传统竞赛编排的方法和原理理论,在某些方面已不能满足现代体育竞赛信息化建设的需要。这在很大程度上是因为,对竞赛编排方法和原理的研究只考虑到了手工能处理的水平上,而没有考虑到信息化处理对其算法提出的要求。因而,阻碍了体育竞赛信息化建设的进程。
    在给定参赛队数和种子队数的条件下,编排出淘汰赛轮次表中的空位和种子位,这是淘汰赛编排中需要解决的问题。运用传统理论,虽然能解决实际编排问题,但不能解决给定2n个位置,来排定2n个有序种子号码和(2n—N)个空位的位置问题。
    我们知道,在淘汰赛编排中,把强队按已往成绩设为相应种子队,依据“上区顶部、下区底部、下区顶部、上区底部”顺序的原则把种子队分散排在淘汰赛轮次表的各个区上,从而避免强队过早相遇,这就是学术上所说的根种子原理。实际上这个理论是个很抽象的概念,在实际运用中不可能规范化。
    另外,根据参赛队数的多少,淘汰表的位置数有唯一的确定,其关系表达式是2n≥N(N为参赛队数;n为大于1的正整数)。也就是说,淘汰表中的位置数是按2的幂次方增加的,如果参赛队数不是2的幂次方,那么,淘汰表中就会出现(2n—N)个空位置。如何设置空位置,学术上对这个问题早有研究,提出了用轮空位置表(见表1)来解决空位置的设置问题。目的是除第一轮比赛外,以后各轮比赛不再出现轮空队。例如,13个队的淘汰赛,位置数是16,空位置数是3。3个空位置从表中依次从左至右找出3个小于16的数,那么2、15、10就是空号码位置,与2、15、10空号相遇的队便为轮空队;然而,这个表存在着一定的局限性。从表中也可以看出,只有8个位置号码,显然不能解决有n个参赛队时的轮空位置的设置问题。有趣的是,在表2中,25的下半区最后8个位置上种子号码与表1中的数据是一样的,从这也可以看出表1是不全面的。 
[SITESERVER_PAGE]    要解决上述问题,关键是要知道种子号码在淘汰表中的排位规律。我们知道。在篮球循环赛的编排中,编排种子队的位置是按位置号码的顺序排定的,即种子号码与位罩号码是从小到大一一对应的。但在淘汰表中,种子号码与位置号码的对应关系却不是这样简单。   
    我们用手工给种子号码排位,设种子数与位置数相等,先从两个位置开始排,1号位置排1号种子,2号位置排2号种子,我们把这两个种子称之为根种子。然后,按2k(k=2,3,4…n)增加位置数和种子数,依据根种子原理把种子号码依次排放到给定2k个位置的淘汰表上。这样,我们就可以得到表2。
    我们先把表2中的位置号码进行分区,在给定2k个位置时,全区表示1至2k个位置;上半区表示1至(2k/2)个位置;下半区表示(2k/2)+1至2k个位置。然后,分别把2k个位置的全区与2k+1个位置的上半区进行比较,把2k+1个位置的上半区与2k+1个位置的下半区进行比较。这样,我们就可以从中发现种子号码在淘汰表中的排位规律。
    21的全区与22的上半区奇偶对应;22的上半区与22的下半区奇偶对应;22的全区与23的半区奇偶对应;23的上半区与23的下半区奇偶对应。依此类推。2k的全区与2k+1的上半区奇偶对应;2k+1的上半区与2k+1的下半区奇偶对应。其对应关系的表达式是:   
    21的全区奇数位置上的种子号码乘2减1就等于22的上半区奇数位置上的种子号码;21的全区偶数位置上的种子号码乘2就等于22的上半区偶数位置上的种子号码。
    22的上半区奇数位置上的种子号码加2就等于22的下半区奇数位置上的种子号码;22的上半区偶数位置上的种子号码减2就等于22的下半区偶数位置上的种子号码。
    22的全区奇数位置上的种子号码乘2减1就等于23的上半区奇数位置上的种子号码;22的全区偶数位置上的种子号码乘2就等于23的上半区偶数位置上的种子号码。
    23的上半区奇数位置上的种子号码加2就等于23的下半区奇数位置上的种子号码;23的上半区偶数位置上的种子号码减2就等于23的下半区偶数位置上的种子号码。依此类推。
    2k的全区奇数位置上的种子号码乘2减1就等于2k+1的上半区奇数位置上的种子号码。2k的全区偶数位置上的种子号码乘2就等于2k+1的上半区偶数位置上的种子号码。
    2k+1的上半区奇数位置上的种子号码加2就等于2k+1的下半区奇数位置上的种子号码;2k+1的上半区偶数位置上的种子号码减2就等于2k+1的下半区偶数位置上的种子号码。
[SITESERVER_PAGE]    要注意的是,表2中的种子号码数据是我们用手工推算出来的,实际上表2中除根种子号码是我们设定的外,其余都是未知的。因此,在实际运用中,我们每次都要从根种子开始计算。因此,我们称上述算法为根种子算法。有了这个算法就可以编写出根种子排位程序。至于轮空位置的问题,可以把空位置可以看作是大于参赛队数的种子号码,这样,如果某位置上排的种子号码大于参赛队数,那么,就可判别该位置为空位。
程序:根种子排位(程序略)。
输入:(1)参赛队数,(2)种子队数。
输出:(1)位置号码,(2)种子号码,(3)空位标志。
表3,是该程序的一个输出例子。

参考文献:
[1]周贤江编著.篮球运动管理概论[J].红旗出版社,1999年12月版。
[2]全国体育院校教材委员会审定:篮球运动教程[M].人民体育出版社,2001年10月版。

【打印本页】【关闭窗口】

淘汰赛编排中根种子算法

10092257