因为卡塔尔世界杯分组名单已出炉。这两天,我将用程序猿的代码作为工具,来预测8个小组的前两名,及淘汰赛的晋级线路,并最终预测出世界杯的冠军。
这整个过程中,最难的不是写代码,而是数据模型,即: 预测比赛胜负的理论依据和小组排名的理论依据。
先从简单的两场比赛开始,比如A国 vs B国。通过这个数据模型,要得出是A胜了还是B胜了。在我们的认知里,获胜靠什么,靠实力;实力怎么体现,靠排名。
★用排名。
那么我们的数据模型也要靠这个国家的排名的基础数据,来作为主要的预测依据。
以G组的第一场比赛为例 巴西vs塞尔维亚。巴西排名第1,塞尔维亚排名第25,肯定是巴西的获胜概率更高。但是巴西也不是百分百能赢,这个怎么能用我们的数据模型来体现呢?
★随机中带侧重。
数据模型我是这么设计的,能尽量准确地反应双方的实力差距。
★比如A国vsB国,A排名m,B排名n,m<n。计算流程如下:
①排名高的国家,生成3次10以下的随机数,并求和;
②排名低的国家,如果排名相差5以内,则同样进行3次10以下的随机数求和;
③否则,看排名差是5的几倍,则增加几次随机,随机数加到之前的结果里。
④结果值大的比赛获胜晋级。
⑤如果是小组赛,则将如上的过程里的三次结果再相加,按大小排名,前2出线。
还是以巴西vs塞尔维亚为例,巴西排名第1,塞尔维亚排名第25,套用上述计算模型。
①塞尔维亚进行3次随机,5 3 8=16
②巴西先随机3次,1 6 4=11
③(25-1)/5=4,所以巴西再进行4次随机。4 5 1 1 11=22
④22>16,巴西获胜。
再跑一次数据模型,较小概率情况下:
①塞尔维亚进行3次随机,8 9 9=26
②巴西先随机3次,1 6 4=11
③(25-1)/5=4,所以巴西再进行4次随机。4 5 1 1 11=22
④26>22,塞尔维亚获胜。
在单场淘汰赛里,获胜一方晋级。在小组赛,则将该队的3次比赛的随机结果相加,前两名出线。
总结: 该数据模型能较准确地反应对阵双方的实力状况,整个世界杯比赛的进程。刚好上海也封城了,我将在近期,以此模型为基础,用代码的手段实现该算法思想,预测出卡塔尔世界杯的小组出线名单、八强、四强、直至冠亚军。
冠军会是英格兰吗?
欢迎关注我,请大家拭目以待……
欢迎关注我,请大家拭目以待……
欢迎关注我,请大家拭目以待……
重要的事情说三遍!!!