Масштабирование функции приспособленности выполняется, чаще всего, по двум причинам. Во-первых, для предотвращения преждевременной сходимости генетического алгоритма. Во-вторых (в конечной фазе выполнения алгоритма), в случае, когда в популяции сохраняется значительная неоднородность, однако среднее значение приспособленности ненамного отличается от максимального значения. Масштабирование функции приспособленности позволяет предупредить возникновение ситуации, в которой средние и наилучшие особи формируют практически одинаковое количество потомков в следующих поколениях, что считается нежелательным явлением. Преждевременная сходимость алгоритма заключается в том, что в популяции начинают доминировать наилучшие, но еще не оптимальные хромосомы. Такая возможность характерна для алгоритмов с селекцией по методу колеса рулетки. Через несколько поколений при селекции, пропорциональной значению функции приспособленности, популяция будет состоять исключительно из копий наилучшей хромосомы исходной популяции. Представляется маловероятным, что именно эта хромосома будет соответствовать оптимальному решению, поскольку исходная популяция – это, как правило, небольшая случайная выборка из всего пространства поиска. Масштабирование функции приспособленности предохраняет популяцию от доминирования неоптимальной хромосомы и тем самым предотвращает преждевременную сходимость генетического алгоритма.
Масштабирование заключается в соответствующем преобразовании функции приспособленности. Различают 3 основных метода масштабирования: линейное, сигма-отсечение и степенное.
Линейное масштабирование заключается в преобразовании функции приспособленности к форме через линейную зависимость вида:
где и – константы, которые следует подбирать таким образом, чтобы среднее значение функции приспособленности после масштабирования было равно ее среднему значению до масштабирования, а максимальное значение функции приспособленности после масштабирования было кратным ее среднему значению. Коэффициент кратности чаще всего выбирается в пределах от до . Необходимо следить за тем, чтобы функция не принимала отрицательные значения.
Сигма-отсечение – метод масштабирования, основанный на преобразовании функции приспособленности к форме согласно выражению:
где обозначает среднее значение функции приспособленности по всей популяции, – малое натуральное число (как правило, от до ), а – стандартное отклонение по популяции. Если расчетные значения отрицательны, то они принимаются равными нулю.
Степенное масштабирование – представляет собой метод масштабирования, при котором функция приспособленности преобразуется к форме согласно выражению:
где – число, близкое к . Значение обычно подбирается эмпирически с учетом специфики решаемой задачи. Например, можно использовать .