Выбор обратной вероятности (выбор обратной эволюции алгоритмов эволюции) - PullRequest
0 голосов
/ 09 декабря 2010

Мне нужно вероятностно выбрать образец из набора данных.

Скажем, у меня был набор значений 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] имеют отдаленные проценты выбора.

Мы также попытались просто поменять местами самые низкие и самые высокие значения, а затем следующие самые низкие, с последующими самыми высокими значениями процента, но это дает вам ту же проблему, что и наша первая попытка.

Я чувствую, что должен быть легкий путь к этому.

Примечание. Если вы знакомы с эволюционными / генетическими вычислениями, мы пытаемся сделать выбор родителей в зависимости от степени пригодности. Тем не менее, наша ценность пригодности обратная (чем ниже, тем лучше). Так, как мы можем сделать выбор пропорции пригодности для родителей, если чем ниже приспособленность, тем лучше?

1 Ответ

3 голосов
/ 09 декабря 2010

Почему вы не работаете с инверсией?Базовый массив для вероятностей в вашем примере будет array[1.0/12, 1.0/15, 1.0/29, 1.0/17, 1.0/12, 1.0/29], остальные останутся прежними.

...