Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции(ИИС) / ИИС(Лекции).doc
Скачиваний:
19
Добавлен:
17.04.2015
Размер:
432.13 Кб
Скачать

Эволюционное моделирование

Построение математическо модели включает формирование целевой функции переменных, т.е. такой числовой характеристики, большему (или меньшему) значению которой соответствует лучшая ситуация с точки зрения аналитика. Желательно найти такие значения переменных, при которых целевая функция принимает максимальное (минимальное) значение. К задачам такого рода сводятся многие экстремальные задачи, возникающие в биологии, химии, физике, технике, экономике и других областях. Теория и методы решения подобных задач являются содержанием математического программирования. Под термином программирование в данном случае понимают построение наилучшего плана (программы) действий. Иными словами, задача состоит в поиске наилучшего решения.

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

Идея методов эволюционного моделирования заключается в том, что при поиске наилучшего решения используются аналоги естественных (на уровне генов) форм обмена информацией.

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

Содержанием эволюционного моделирования являются:

  • генетические алгоритмы;

  • классифицирующие системы;

  • генетическое программирование;

  • эволюционное программирование;

  • эволюционные стратегии.

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

Генетические алгоритмы

Поиск оптимального решения задачи в простых генетических алгоритмах осуществляется по следующему плану.

  1. Формируется исходный набор допустимых решений, т.е. популяция. При этом начальная точка отсчета жизни популяций принимается, равной нулю: t0 = 0.

  2. Для каждого решения (хромосомы) находится значение целевой функции. Вычисляется среднее этих значений.

  3. Время жизни популяции увеличивается на шаг: t = t0 +1. Из исходной популяции случайным образом с учетом значения целевой функции выбираются две хромосомы для кроссинговера.

  4. Формируется новый набор решений. С той целью выполняется операция кроссинговера, т.е. осуществляется обмен генами в выбранных хромосомах.

  5. В этом наборе случайным образом выделяют какое-то решение. Затем к нему последовательно с заданными вероятностями применяют операторы инверсии и мутации. При инверсии участок хромосомы поворачивают на 1800. При мутации происходит перестановка соседних генов. В результате получают еще один набор решений (хромосом).

  6. В текущей популяции осуществляют замену случайно выбранной хромосомы на соответствующую ей хромосому из только что полученного набора хромосом.

  7. Процесс преобразования решений заканчивается после выполнения заданного числа шагов. Если очередной шаг не является последним, то получение новых решений продолжается, начиная со второго этапа.

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

Для иллюстрации изложенного алгоритма поиска экстремума целевой функции рассмотрим следующий пример.

В качестве последней возьмем функцию одного переменного f(x) = x2 .

Найдем ее максимальное значение на отрезке [0, 31]. Решение будем искать среди целых чисел.

Чтобы можно было создавать хромосомы, представим десятичные числа двоичными числами.

С помощью датчика случайных чисел сформируем первоначальную популяцию из четырех хромосом. Вычислим значения целевой функции для каждой хромосомы, а также среднее и суммарное ее значения.

В таблице 1 приведены результаты расчетов.

Таблица 1