Опубликован: 10.10.2014 | Уровень: для всех | Доступ: платный | ВУЗ: Московский государственный университет путей сообщения
Лекция 5:

Генетические алгоритмы многокритериальной оптимизации

< Лекция 4 || Лекция 5: 123456 || Лекция 6 >
Аннотация: В большинстве реальных практических задач, как правило, необходимо выполнить оптимизацию по нескольким критериям. Многокритериальная оптимизация основана на поиске решения, которое одновременно оптимизирует не одну, а несколько функций. В этой лекции изложены основы многокритериальных ГА на основе концепции Парето. Описана общая структура многокритериального ГА и различные обобщения ГА для многокритериальной оптимизациии, включая: векторную оценку, ранжирование по Парето, метод взвешенной функции со случайными и адаптивными весами. Рассмотрены методы оценки качества решений в случае многокритериальной оптимизации.

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

Без потери общности задачу многокритериальной оптимизации можно сформулировать следующим образом:

\max \{z_1=f_1(x),z_2=f_2(x),\dots ,z_q=f_q(x)\}\\g_i(x)\le 0,\ i=1,2,\dots ,m\\x\ge 0

Здесь пространство поиска решений определяется следующим образом

S=\{x\in R^n |g_i(x)\le 0,\ i=1,2,\dots,m,\ x\ge0\}

В случае многокритериальной оптимизации иногда используется графическая интерпретация как пространстве поиска решений S, так и пространстве критериев S

Z=\{z\in R^q |{z_1=f_1(x),z_2=f_2(x),\dots ,z_q=f_q(x),\ x\in S\}

где z\in R^k- вектор значений q целевых функций. Другими словами Z является множеством образов в S.

5.1. Концепция доминирования Парето

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

Поэтому при многокритериальной оптимизации выполняется поиск не одной особи, а множество хромосом, оптимальных в смысле Парето [1,2,3]. Обычно пользователь имеет возможность выбирать оптимальное решение из этого множества.

Для этих целей удобно классифицировать потенциальные решения многокритериальной проблемы на доминируемые и недоминируемые решения. Решение x называется доминируемым, если существует решение y, не хуже чем x по всем критериям, то есть для всех оптимизируемых функций f_i(i=1,\dots,q):

f_i(x)\le f_i(y) для всех 1\le i \le k при максимизации функции f_i и

f_i(x)\ge f_i(y) для всех 1\le i \le k при минимизации функции f_i.

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

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

Концепция Парето оптимальных решений

Рис. 5.1. Концепция Парето оптимальных решений

Пусть P(t) и C(t) - родители и потомки текущей популяции t. Тогда общая структура многокритериального ГА может быть представлена следующим образом:


Фактически ГА относится к методам мета-стратегии. При применении ГА для решения конкретной задачи необходимо выбрать или разработать основные компоненты, такие как метод кодирования потенциального решения, генетические операторы кроссинговера и мутации, метод отбора родителей, построить фитнесс-функцию, позволяющую оценивать потенциальные решения и т.д.

Поскольку многокритериальная оптимизация является естественным развитием обычной численной или комбинаторной оптимизации, то многие разработанные методы были распространены на этот более общий случай. При использовании ГА для многокритериальной оптимизации центральным вопросом является построение фитнесс-функции. За последние десятилетия, следуя [2], разработано несколько подходов, которые можно разделить на представленные ниже три поколения:

  • Поколение 1. Векторная оценка (vector evaluated -veGA) [5].
  • Поколение 2. Ранжирование по Парето + Разнообразие:Многокритериальный ГА (multiobjective GA - moGA) [6].
  • Поколение 3. Взвешенная сумма + Элитизм:Случайный взвешенный ГА (rwGA) [7]; Адаптивный взвешенный ГА (awGA)[8]; Недоминируемый ГА на основе сортировки (nsGA) [9]; Интерактивный ГА с адаптивными весами (i-awGA) [10].

Далее мы рассмотрим эти методы более подробно.

< Лекция 4 || Лекция 5: 123456 || Лекция 6 >
Ольга Ковалевская
Ольга Ковалевская
Россия, Волгоградская область
Фродо Ёркинс
Фродо Ёркинс
Россия