我需要概率性地从一组数据中选择一个样本。如果我有一组值array[12, 15, 29, 17, 12, 29]
。标准方法是计算总数(12 + 15 + 29 + 17 + 12 + 29),然后创建一个偏好较高值的微调。有点像饼图,我们从样本集中随机选择,但赞成具有最高价值的个人。逆向概率选择(进化算法的逆适应选择)
以上数字随机选择array[0]
的例子为11%,而array[5]
为25%。这很好
我想要做的事情是赞成较低的数字和所有我的头脑风暴的能力,我无法找到一种方法来让较低的数字具有统计上相同的选择概率,就像我们选择较大的数字一样。我接触过这个问题
的方法之一是增加array[]
然后减去从总给你一个array2[102, 99, 85, 102, 85]
然后重新计算百分比每个值从array2[].
给予array[0]
21%。这个解决方案的问题是在array[1]
中具有接近的选择统计概率的元素具有较远的选择百分比。
我们也尝试只交换最低和最高,然后是下一个最低的百分比值,但是这给了我们第一次尝试的同样的问题。
我觉得应该有一个简单的方法来解决这个问题。
注意:如果您熟悉进化/遗传计算,我们将尝试根据健身比例进行父母选择。但是,我们的适应度值是颠倒的(越低越好)。那么,如果适合度越低越好,我们如何为父母选择健身比例?
我无法弄清楚你想要什么。你的第4段表示“赞成较低的数字......给较低的数字一个统计上相等的概率”,这是一个矛盾。你想要什么?每个数字有相同的概率,在这种情况下是1/5,还是其他的? – 2010-12-09 04:10:49