Просто определенная фитнес-функция — это функция, которая принимает в качестве входных данных возможное решение проблемы и выдает в качестве выходных данных то, насколько «соответствует» нашему, насколько «хорошим» является решение по отношению к рассматриваемой проблеме.
Расчет значения пригодности проводится повторно в GA, и поэтому он должен быть достаточно быстрым. Медленное вычисление значения пригодности может отрицательно повлиять на GA и сделать его исключительно медленным.
В большинстве случаев фитнес-функция и целевая функция совпадают с целью — максимизировать или минимизировать данную целевую функцию. Однако для более сложных задач с несколькими целями и ограничениями конструктор алгоритмов может выбрать другую пригодную функцию.
Фитнес-функция должна обладать следующими характеристиками —
-
Фитнес-функция должна быть достаточно быстрой для вычисления.
-
Он должен количественно измерить, насколько подходит данное решение или как индивидуумы могут быть получены из данного решения.
Фитнес-функция должна быть достаточно быстрой для вычисления.
Он должен количественно измерить, насколько подходит данное решение или как индивидуумы могут быть получены из данного решения.
В некоторых случаях непосредственный расчет фитнес-функции может оказаться невозможным из-за сложностей, присущих данной проблеме. В таких случаях мы выполняем фитнес-аппроксимацию в соответствии с нашими потребностями.
На следующем рисунке показан расчет пригодности для решения рюкзака 0/1. Это простая фитнес-функция, которая просто суммирует значения прибыли выбранных предметов (которые имеют 1), сканируя элементы слева направо, пока рюкзак не заполнится.