3

经过大量挖掘后,我发现了这个问题改进足球模拟算法并将其转换为 C#,并添加了诸如体能、士气、各种影响比赛的球员的各种统计数据等附加内容。我正在努力解决的是形成的想法。

目前,1-1-1 阵型将是最好的阵容,因为您将评分最高的球员放在每个位置,并且由于其他球员的统计数据较低,他们的平均值不会降低,我想做到所以 5-4-1 的防守比 4-4-2 更好,而 4-4-2 在所有防守球员都平等的情况下又比 3-4-3 更好。

当统计数据相同的球员比对方多时,我将如何让被标记为防守球员的球员的平均数据更好?

4

1 回答 1

1

最简单的解决方案是对统计数据求和,而不是对它们进行平均。我认为两个“5”的玩家几乎和一个“10”的玩家一样好,甚至更好。

除此之外,您可以合并一些缩放因子。例如,团队中的玩家相互加强,因此作为一个团队,他们实际上比单独玩得更好:

var playerCount = playersInLine.Count();
var teamFactor = Math.Pow(1.5, (playerCount-6)) - (1.5)^(-5));
var playerRates = playersInLine.Select(p => p.Rate + p.Rate * teamFactor);

var lineRate = playerRates.Sum();

增加玩家率的公式就是按照这个公式:link。我假设一条线路最多有 6 名球员,但我对足球不太了解,所以你可能想改变它;)

您可以对其进行调整,例如,它不会改变弱玩家的评分,而只会改变强于 5 等的玩家。

于 2013-08-17T12:46:30.250 回答