假设你有2个相同的n个元素数组,比如数字从1到10.你可以从每个数组中随机选择一个项目并检查它们是否匹配。对于一次迭代,正确的匹配可以是(10,10)或(3,3),因为它每次随机变化。由于两个数组都有10个元素,因此如果从每个数组中选择一个随机数,则总体上获得正确的匹配非常罕见。因此,每次都可以将特定权重分配给正确的匹配以增加此频率。我的问题是你分配了多少重量正确的匹配,所以它更频繁,但仍然是足够随机的?你是如何决定的?
答案 0 :(得分:0)
我不知道你的问题域是什么,但这种事情是一个非常常见的游戏设计问题,解决方案几乎归结为反复试验。实现您认为有意义的权重,然后运行一系列用户测试以查看人们对它的看法。根据您的结果进行调整,然后再次测试。最终,"正确"权重将取决于您的用例,您的用户,您的感受等;没有人正确的答案。
顺便提一下,许多游戏开发人员使用称为shuffle bag的算法来处理这种情况。通过这种方式,您可以避免长串的成功或失败;虽然真正的随机性有时会有这样的字符串,但人们通常并不喜欢这样。相反,一个洗牌袋是当你填充"袋"以所需分布的所有期望结果,然后从袋中随机拉取结果。这样拉动仍然是随机的,但你不会得到长串的罕见事件。