Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Введение
Пропорциональный отбор, также известный как отбор рулетки, — это генетический оператор, используемый в генетических алгоритмах для выбора потенциально полезных решений для рекомбинации. При пропорциональном отборе, как и во всех методах отбора, функция пригодности присваивает значение пригодности возможным решениям или хромосомам. Этот уровень пригодности используется для сопоставления вероятности отбора с каждой отдельной хромосомой. Если — это пригодность индивида в популяции, то вероятность его выбора равна
Fitness proportionate selection, also known as roulette wheel selection, is a genetic operator used in genetic algorithms for selecting potentially useful solutions for recombination. In fitness proportionate selection, as in all selection methods, the fitness function assigns a fitness to possible solutions or chromosomes. This fitness level is used to associate a probability of selection with each individual chromosome. If is the fitness of individual in the population, its probability of being selected is
где — число индивидов в популяции. Это можно представить как рулетку в казино. Обычно каждой из возможных опций выбора на основе их значения пригодности присваивается часть колеса. Этого можно достичь, разделив пригодность решения на общую пригодность всех решений, тем самым нормализуя их до 1. Затем производится случайный выбор, аналогичный вращению колеса рулетки. Хотя вероятность исключения кандидатов с более высокой пригодностью будет меньше, все же существует шанс, что они могут быть исключены, поскольку вероятность их выбора меньше 1 (или 100%). Это отличается от менее сложного алгоритма отбора, такого как усеченный отбор, который исключает фиксированный процент самых слабых кандидатов. При пропорциональном отборе существует вероятность того, что некоторые более слабые решения могут пережить процесс отбора. Это связано с тем, что, хотя вероятность выживания более слабых решений невелика, она не равна нулю, что означает, что они все еще могут выжить; это преимущество, поскольку есть шанс, что даже слабые решения могут обладать некоторыми признаками или характеристиками, которые могут оказаться полезными после процесса рекомбинации. Аналогию с рулеткой можно представить, вообразив колесо рулетки, в котором каждое возможное решение представляет собой сектор на колесе; размер секторов пропорционален вероятности выбора решения. Выбор N хромосом из популяции эквивалентен игре в N игр на колесе рулетки, поскольку каждый кандидат выбирается независимо. Другие методы отбора, такие как стохастическая универсальная выборка или турнирный отбор, часто используются на практике. Это связано с тем, что они имеют меньший стохастический шум, или они быстры, просты в реализации и обеспечивают постоянное давление отбора. Наивная реализация выполняется путем первоначального построения кумулятивного распределения вероятностей (CDF) по списку индивидов, используя вероятность, пропорциональную пригодности индивида. Выбирается равномерное случайное число из диапазона [0,1), и обратное значение CDF для этого числа дает индивида. Это соответствует падению шарика рулетки в сектор индивида с вероятностью, пропорциональной его ширине. "Сектор", соответствующий обратному значению равномерного случайного числа, можно найти быстрее всего, используя двоичный поиск по элементам CDF. Выбор индивида занимает O(log n) времени. Более быстрая альтернатива, генерирующая индивидов за O(1) времени, — использование метода псевдонимов. В 2011 году был представлен очень простой алгоритм, основанный на "стохастическом принятии". Алгоритм случайным образом выбирает индивида (скажем, ) и принимает выбор с вероятностью , где — максимальная пригодность в популяции. Некоторые анализы показывают, что версия со стохастическим принятием имеет значительно лучшую производительность, чем версии, основанные на линейном или двоичном поиске, особенно в приложениях, где значения пригодности могут изменяться во время выполнения. Хотя поведение этого алгоритма обычно быстрое, некоторые распределения пригодности (например, экспоненциальные распределения) могут потребовать итераций в худшем случае. Этот алгоритм также требует больше случайных чисел, чем двоичный поиск.
where is the number of individuals in the population. This could be imagined similar to a Roulette wheel in a casino. Usually a proportion of the wheel is assigned to each of the possible selections based on their fitness value. This could be achieved by dividing the fitness of a selection by the total fitness of all the selections, thereby normalizing them to 1. Then a random selection is made similar to how the roulette wheel is rotated. While candidate solutions with a higher fitness will be less likely to be eliminated, there is still a chance that they may be eliminated because their probability of selection is less than 1 (or 100%). Contrast this with a less sophisticated selection algorithm, such as truncation selection, which will eliminate a fixed percentage of the weakest candidates. With fitness proportionate selection there is a chance some weaker solutions may survive the selection process. This is because even though the probability that the weaker solutions will survive is low, it is not zero which means it is still possible they will survive; this is an advantage, because there is a chance that even weak solutions may have some features or characteristics which could prove useful following the recombination process. The analogy to a roulette wheel can be envisaged by imagining a roulette wheel in which each candidate solution represents a pocket on the wheel; the size of the pockets are proportionate to the probability of selection of the solution. Selecting N chromosomes from the population is equivalent to playing N games on the roulette wheel, as each candidate is drawn independently. Other selection techniques, such as stochastic universal sampling or tournament selection, are often used in practice. This is because they have less stochastic noise, or are fast, easy to implement and have a constant selection pressure. The naive implementation is carried out by first generating the cumulative probability distribution (CDF) over the list of individuals using a probability proportional to the fitness of the individual. A uniform random number from the range [0,1) is chosen and the inverse of the CDF for that number gives an individual. This corresponds to the roulette ball falling in the bin of an individual with a probability proportional to its width. The "bin" corresponding to the inverse of the uniform random number can be found most quickly by using a binary search over the elements of the CDF. It takes in the O(log n) time to choose an individual. A faster alternative that generates individuals in O(1) time will be to use the alias method. In 2011, a very simple algorithm was introduced that is based on "stochastic acceptance". The algorithm randomly selects an individual (say ) and accepts the selection with probability , where is the maximum fitness in the population. Certain analysis indicates that the stochastic acceptance version has a considerably better performance than versions based on linear or binary search, especially in applications where fitness values might change during the run. While the behavior of this algorithm is typically fast, some fitness distributions (such as exponential distributions) may require iterations in the worst case. This algorithm also requires more random numbers than binary search.