程序竞赛参赛者的公告。
最终测试程序
最初,我们试图以“每个人都参加”的原则进行比赛。 但是,一些参与者宣布打算向比赛提交许多弱小的决定(“破坏者”),参与者的主要决定对此不利,或者担心其他人会这样做。 规则明确禁止此类行为,但是即使以某种方式规避了规则,也有悖于竞争精神。 这场比赛是关于谁最好编写一个程序,而不是谁下载了更多“破坏者”后会自己改变“风景”的人。
尽管我们可以并且将使用各种方法来识别和破坏“破坏者”的资格,但是总有可能我们不会泄露某些东西。 我们希望比赛的获胜者是那些发明和编程算法更好的人,而不是那些在规避规则方面更有创造力的人。
因此,我们决定分两个阶段进行最终测试。 在资格评定阶段,对于
N个随机选择的种子值,将举行“每个都有”锦标赛,并且(A,B)对与(B,A)不同。 因此,将在每个种子值上启动每对(并按每个顺序)。 资格阶段的结果将是按照获得的积分数量(即积分数量而不是“获胜”数量)的降序排列的参与者列表。
然后,列表中的
K个最佳参与者将进入决赛,然后在他们之间以
M个其他随机选择的种子值进行一次额外的比赛。 这
K名参与者之间的最终排名将完全由他们在彼此之间以
N +
M种子值的会话中获得的得分总和来确定,而不会考虑涉及未达成决赛的决策的会话。
一方面,这将使得有可能更彻底地测试声称是获奖的一系列狭窄决策,另一方面,它将破坏破坏者对依赖该决策的解决方案的支持。
N ,
M和
K的具体值将在稍后宣布,因为它们取决于参与者将向我们发送的解决方案的数量。
在线谈判领域
我们创建了几个新的竞技场:
standard_1s
与
standard_1s
相似,但是以每步1秒的限制监视遵从性(此竞技场与最终测试的条件完全对应);
large
和
large_1s
具有“增加的”设置的竞技场,以防万一有人想向他们伸出援手。
在GitHub的项目页面上查看
竞技场列表 。
现在,对于每个竞技场,每个活动的决策都可以使用“实时”统计信息(表格第一列中的链接)。 统计信息以机器可读的JSON格式给出,参赛者可以从中轻松获取感兴趣的数据的表示形式。 该数据的关键是使用
--id
参数指定的客户端标识符的哈希。 每次连接到服务器时,此哈希测试系统都会向您显示。 对于每个参与者,给出了整个时间(
all
)和每一天(UTC)的已完成会话总数(
sessions
),达成协议的数量(
agreements
)和总分数(
score
)。
测试系统更新
遵循GitHub上的
更新历史记录 :我们会定期纠正测试系统中参与者发现的缺陷。 定期做
git pull
!
官方聊天
为了讨论比赛,在电报中创建了一个频道:
@hola_challenge_haggling 。