Выбрать главу

Различия между эволюционными алгоритмами определяются тем, как именно реализован каждый из этих основных этапов.

* * *

ДАРВИН И ЛАМАРК: ДВА РАЗНЫХ ВЗГЛЯДА НА ЭВОЛЮЦИЮ

Жан Батист Пьер Антуан де Моне Ламарк (1744–1829) — французский натуралист, который совершил революцию в биологии, предложив классификацию живых организмов в зависимости от их сложности, а также четко разделив органический и неорганический мир. Еще одним его вкладом в науку стало создание первой биологической теории эволюции, изложенной в книге «Философия зоологии», которая была опубликована в 1809 году, за 50 лет до того, как свою теорию эволюции предложил Дарвин.

Теория Ламарка, в отличие от дарвиновской, основывается на наследовании приобретенных признаков, то есть на способности отдельных особей передавать потомкам приобретенные на протяжении жизни полезные признаки, которые способствуют адаптации к окружающей среде. Различия между теориями эволюции Ламарка и Дарвина прекрасно демонстрирует их объяснение длинной шеи жирафа. Согласно Ламарку, жирафы, которые выше всех вытягивали шею и развивали мышцы, чтобы дотянуться до съедобных листьев на высоких ветках деревьев, передавали этот признак своему потомству, которое продолжало развивать эти мышцы, и в конце концов шеи жирафов достигли нынешних размеров. Согласно теории Дарвина, напротив, жираф, родившийся с самой длинной шеей или с более мощными мышцами, передаст эти признаки потомству независимо оттого, какие усилия он предпринимал при жизни.

Хотя гипотезы Ламарка были отвергнуты в пользу теории Дарвина, не так давно их правильность была подтверждена для некоторых частных случаев. К примеру, известно, что мать, организм которой после пережитой болезни выработал особые антитела, может передать их детям, которые получат иммунитет к этой болезни. Таким образом, здесь мы имеем дело с наследованием признаков, приобретенных при жизни в результате адаптации к окружающей среде.

Карикатура на Ламарка, изображенного в виде жирафа.

Инициализация

Инициализация популяции — отдельный этап, достаточно независимый от используемого эволюционного алгоритма. Инициализация определяется скорее особенностями рассматриваемой задачи — присутствием в ней ограничений, которые следует учитывать, или, напротив, полным отсутствием представления о том, как должно выглядеть «хорошее» решение, в результате чего инициализация выполняется абсолютно случайным образом. Существуют задачи, в которых случайная инициализация предпочтительнее, однако особи первого поколения должны обладать определенными различиями, чтобы охватить все возможные решения.

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

Чаще всего особи представляются в виде хромосом. Это новое понятие заимствовано у природы: хромосома представляет собой последовательность генов, а каждый ген — число, обозначающее часть решения.

Рассмотрим в качестве примера алгоритм, цель которого — увеличение емкости картонной коробки при наименьшем расходе картона на ее изготовление. Если мы используем эволюционный алгоритм, то хромосомы, посредством которых мы представим решение, будут иметь три гена: длину, ширину и высоту. При инициализации будет создана популяция коробок произвольных размеров, представленных в виде троек чисел, заключенных в допустимых интервалах. В ходе работы алгоритма популяции коробок будут эволюционировать до тех пор, пока не будет найдена оптимальная коробка в соответствии с установленными критериями.

Оценка

Следующий этап после инициализации — оценка. Обычно считается, что это важнейшая часть эволюционного алгоритма, так как именно она определяет задачу, которую требуется решить. На первом шаге оценки воссоздается решение: информация из хромосомы (генотипа) каждой особи используется для моделирования решения (фенотипа), представленного особью. Целью оценки может быть как простое вычисление объема картонной коробки по известным размерам, как в нашем примере, так и чрезвычайно сложные и дорогостоящие расчеты, к примеру моделирование жесткости конструкции при проектировании моста.