基于得分对多次参赛选手进行合理排名的算法相关问题咨询
可行的解决思路
- 多维度加权打分法
不要仅用最低分作为唯一排序依据,把多个反映选手表现的维度合并为一个总得分后升序排序,可参考的维度包括:最低得分(权重最高,对应最佳表现)、得分中位数、得分标准差(数值越高说明发挥越不稳定,计入总得分时占比越高)。你可以根据对「最佳表现」和「稳定性」的侧重调整各维度权重,比如设置最低分占60%、中位数占20%、标准差*可调系数占20%,调整系数直到输出的排名符合你对Atheleric等选手的排序预期即可。 - 带稳定性惩罚的最低分修正法
保留你原来的最低分排序逻辑,仅增加波动惩罚项:最终排序分 = 选手最低得分 + 惩罚系数 * 选手得分标准差,发挥波动越大的选手最终排序分越高,排名越靠后。这种方法改动最小,调试成本很低。 - 多准则决策排序法
如果你不想手动设置权重,可以用成熟的TOPSIS排序法,把「最低得分越低越好」「中位数越低越好」「标准差越低越好」作为三个评价准则,自动计算每个选手和理想最优表现的贴近度,按贴近度从高到低排序即可,不需要手动调权重,结果更客观。
相关研究方向建议
- 排序学习(Learning to Rank):属于信息检索领域的分支,专门研究如何基于多特征实现对象的最优排序,如果你后续需要处理大量选手数据、或者需要让模型自动学习排序规则,可以学习这个方向的基础方法,比如PointWise、PairWise类的排序模型。
- 综合评价理论:属于统计学科的应用分支,包含层次分析法、熵权法、模糊综合评价等多种多指标合并方法,适合需要平衡多个评价维度的排名场景。
- 竞技体育排名方法论:很多多轮次竞技赛事(比如滑雪、射箭等计时/计分类项目)都有成熟的兼顾最佳成绩和稳定性的排名规则,你可以参考对应领域的赛事排名规则做适配。

内容的提问来源于stack exchange,提问作者Rob Porter
相关产品推荐
相关产品推荐

