Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Основы теории эволюционных вычислений. Научная монография

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
• определение критерия остановки ГП и правил
декодирования результатов эволюции.
Поскольку основой моделирования эволюции в ГП являются элементы множеств terminal set и function set, то выбор пользователем языка программирования определяет вид получаемых решений. Что касается установки функции качества, параметров эволюции и критериев остановки процесса моделирования, то они совпадают с аналогичными этапами в моделях ГА.
В качестве элементов function set могут фигурировать следующие:
• арифметические операции (например, +, -, *, %-деление);
• математические функции (например, sin, cos);
• булевы операции (например, if-then-else);
• циклы (например, for, do-until);
• некоторые специальные функции, для быстрого поиска
хороших решений.
Элементами множества terminal set являются переменные и константы, среди которых могут быть случайные, с коротким временем жизни константы, а также булевы константы, принимающие значения из множества {T, Nil}, а также вещественные константы, принимающие значения на отрезке [­1,000; 1,000] с шагом 0,001. Множества function set и terminal set должны быть достаточными для нахождения решения задачи, а
любая функция или операция − быть корректно выполнимой при любых допустимых аргументах.
Форма функции качества имеет большое значение для эффективности ГП. Общепризнанным способом оценки ее качества является такой показатель, как среднеквадратичная ошибка (чем она меньше, тем лучше программа). Иногда используется критерий «выигрыша», согласно которому выигрыш определяется в зависимости от степени близости к корректному значению целевой функции. Функцию качества в
21
ГП называют rohfitness и обозначают через Ф
. Однако на
ro
практике обычно используется стандартное значение Фst.
Обозначим через ai некоторую программу из популяции
размером µ. Тогда
st
ro
max
a
a
ro
=Φ
)(
a
i
ΦΦ
roi
,)( значение наименьшее подходит если),(
a
i
ΦΦ−Φ
roi
,)( значение наибольшееподходит если ),(
a
i
причем юстируемое значение равно
1
)(
aΦ+=Φ
jju
Интервал изменения Ф
.
)(1
a
jst
) равен (0,1). Размер популяции µ
ju (аi
в ГП обычно составляет несколько тысяч программ. Для максимального числа генераций t Дж. Коза в своих экспериментах использовал значение t
рекомендации отсутствуют.
max
=51.
max
Таким образом, формализованная модель ГП включает в
себя следующие элементы:
− инициализация модели предусматривает случайную генерацию популяции P(0), состоящей из µ древовидных программ. Причем корневой вершиной дерева всегда является функция, аргументы которой выбираются случайно из множеств function set или terminal set. Концевыми вершинами дерева должны быть переменные или константы, в противном случае процесс генерации необходимо рекурсивно продолжить. Если структура дерева становится сложной, то заранее устанавливается максимальная глубина дерева. Она равна числу ребер дерева, которое содержит самый длинный путь от корневой вершины до некоторой концевой вершины. Обычно в экспериментах максимальная глубина дерева колеблется от шести уровней для популяции P(0) до 17 уровней в более поздних популяциях P(t). Для обеспечения многообразия популяции P(0) в ходе инициализации может применяться так называемый half-ramping способ, согласно которому деревья разной высоты генерируются с одинаковой частотой. Правда этот способ не лишен недостатка, связанного с не совсем случайным
22
характером генерируемых деревьев. Поэтому существуют альтернативные методы псевдослучайной генерации деревьев начальной популяции P(0), причем дупликация идентичных хромосом в P(0) считается недопустимой;
− оценка решений по значению функции качества для каждой программы, например, по разнице между лучшим и худшим значением функции или по величине среднеквадратичной ошибки (чем ошибка меньше, тем лучше программа);
− генерация новой популяции, которая предусматривает следующие шаги:
1) выбор операторов эволюции, основными из которых для ГП являются репродукция и кроссинговер, применяемые с вероятностью p
и pk соответственно,
r
причем pr + pk = 1 (чаще всего pr = 0,1, pk = 0,9);
2) селекция и репликация, выполняемая по аналогии с
ГА;
3) образование новой популяции. Если к некоторой
программе применяют оператор репродукции, то эта программа копируется в новую популяцию. Для проведения кроссинговера выбираются две родительские хромосомы. Случайным образом определяются точки кроссинговера и путем обмена образуются два потомка. При программной реализации на языке Лисп кроссинговер сводится к обмену списками между двумя программами при сохранении синтаксической корректности вновь получаемых программ;
− проверка критерия остановки. Процедура ГП является итерационной, и критерии ее остановки аналогичны критериям для ГА: достижение максимального числа шагов эволюции, достижение заданного уровня качества (значения целевой функции всех программ в популяции превысило порог),
23
достижение заданного уровня сходимости (хромосомы подобны,
∈
улучшение функции замедляется).
Представим нотацию модели ГП на псевдокоде, который
имеет следующий вид:
выбор параметров ГП (µ=4000÷16000, t
=51, рк=0,9,
max
рr=0,1)
t:=0
инициализация программ āi (i = 1, 2,…, µ)→Р(t) определение Ф(āi) для всех ā
i
Р(t)
repeat t:=t+1 Р(t):=Ø repeat (i < µ)
выбор оператора кроссинговера с вероятностью pk или
оператора репродукции с вероятностью pr ,
если выбрана репродукция, то выполняется
соревновательная селекция индивидуума ā из популяции Р(t-
1),
формирование P(t): = P(t) U {ā} i: = i+1
иначе (если выбран кроссинговер), то в популяции P(t-
1) выполняется соревновательная селекция двух
родительских хромосом āр1 и āр2, получаются два потомка āп1 и āп2, для которых определяются функции Ф(āп1) и Ф(āп2),
P(t): = P(t) U { āп1, āп2}, i: = i+2
если (i > µ), то размер популяции P(t) сокращается до µ проверка условий останова алгоритма.
1.4. Модель эволюционных стратегий
Как одна из основных форм ЭВ, эволюционные стратегии
(ЭС) рассматривают ход эволюции на уровне фенотипа, в
отличие от генетических алгоритмов, которые акцентируют внимание на генетическом механизме наследственности на
24
уровне хромосом. ЭС анализируют эволюцию на уровне целой популяции. В ЭС оператор мутации применяется с частотой, соответствующей нормальному закону распределения. Это является оправданным для выбранного уровня моделирования, в отличие от мутации на генном уровне, где она проявляется как редкое событие и практически не влияет на фенотип.
Решение многих реальных задач сопровождается множеством технических деталей, которые трудно учесть в ГА. Существует астрономическое число возможных популяций. Большинство из них имеют несущественные отличия, выявить которые ГА не могут, поскольку они не способны уловить семантические и прагматические различия между ними и теми изменениями, которые, наоборот, существенно влияют на ход эволюции. Именно поэтому перспективным выглядит подход, состоящий в разработке ЭС. Эволюционные стратегии вырабатывают решения (фенотипы) из параметров (генотипов). К тому же многие практические задачи являются задачами не только дискретной, но и непрерывной оптимизации, поэтому имеет смысл провести формализацию принципов и особенностей построения ЭС.
Используя базовые гипотезы ЭВ, формализуем модель эволюционных стратегий.
Формализованная модель эволюционных стратегий
включает следующую систему отношений, имитирующих эволюцию исследуемого объекта. Без ограничения общности будем считать, что задача ЭС в терминах математического программирования состоит в минимизации целевой функции
F(x
1,x2
,…,x
), где xi − вещественные переменные (i = 1,2,…, n).
n
Каждому индивиду ЭС соответствует вектор в n-мерном пространстве, который представляет собой некоторое решение поставленной задачи. Кроме того, каждый индивид характеризуется некоторым среднеквадратичным отклонением σj (j = 1, 2,…, m; 1 ≤ m ≤ n), которое для оператора мутации означает среднюю величину наследственной изменчивости.
25
Величина σ
rrr
r
r
r
r
r
σ
′′=
′
rrr
′
r
′
r
является параметром, характеризующим адаптивные
j
свойства ЭС. Будем считать, что если 1< m < n, то σ1, σ2,…, σ жестко связаны с переменными x1, x2,…, x остальных переменных xm, x
,…, xn является свободной.
m+1
, а величина σj для
m-1
m-1
Отметим, что в большинстве практических приложений m = 1 или m = n.
Модель ЭС включает в себя следующие элементы:
− инициализация модели предусматривает генерацию
начальной популяции P(t=0) из µ индивидов вида
=
),(
xa
σ
, где
kkk
k = 1, 2,…, µ.;
− оценка решения. Для каждого индивида устанавливается функция качества Φ( идентичной целевой функцией F(
x
), т.е. Φ(
k
a
). Будем считать её
k
a
) = F(
k
x
);
k
a
k
− генерация потомков. Задача состоит в получении λ потомков из µ родителей. Для этого необходимо выбрать
,
родителей, провести их рекомбинацию и репликацию (копирование и передача фенотипа родителей потомкам), а затем мутацию потомков;
− оценка потомков. Производится оценка каждого потомка
),(
xa ; Ф )(a
=F )( x
и ограничивается размер промежуточной
популяции;
− селекция;
− проверка условий остановки алгоритма ЭС. Критериями
остановки алгоритма ЭС являются максимальное число шагов эволюции t
, отсутствие прогресса в смысле заметного
max
улучшения значений целевой функции, малая разница между лучшим и худшим значением функции для текущей популяции и т.п.
Представим нотацию формализованной модели ЭС на
псевдокоде, который имеет следующий вид:
выбор начальных значений параметров ЭС (µ, λ, m, σ°k, ι1, ι
,
2
ε);
t: = 0;
26
инициализация ā
r
∈
∈
r
r
′
r
′
r
′
r
(i = 1, 2,…, µ)→Р(t);
i
определение F )(
a
,
ar∀
i
P(t) ;
i
repeat t: =t + 1 ; P (t): = Ø; P
: = Ø;
раб
for z =1 to λ repeat begin
если родители выбираются случайно, то случайная селекция двух родителей из популяции P(t−1) с вероятностью ps =1/ µ для
ar∀
i
P(t−1);
если производится варьирование с репликацией, то рекомбинация родителей и образование потомка
также мутация потомка
a
и образование
z
a
;
z
если размеры промежуточной популяции ограничены, то определение Ф(
a
), P
z
раб
= P
раб
∪{
a
};
z
a
, а
z
end
если селекция ведется детерминировано, то лучшие индивиды из популяции P
→P (t);
раб
проверка условий останова алгоритма.
1.5. Модель эволюционного программирования
Другим классом задач, расширяющим границы применения концепции ЭВ, является компьютерный синтез клеточных автоматов, способных инновационным образом реагировать на стимулы, поступающие из внешней среды. Наиболее подходящим инструментом для решения подобного рода задач является эволюционное программирование (ЭП). Модель ЭП представляется актуальной с позиций теории многоагентных систем, искусственной жизни, коллективного поведения, потому что она помогает лучше понять феномен взаимодействия между искусственными программными агентами (артефактами)
[Курейчик, 2004, Родзин, 2002].
27
В ЭП популяция рассматривается как центральный объект эволюции. ЭП исходит из предположения о том, что биологическая эволюция является, в первую очередь, процессом приспособления на поведенческом уровне, а не на уровне таких генетических структур, как хромосомы. Популяция особей в ЭП отражает характер поведения, вид общения и пр. Этот уровень абстракции в природе не предусматривает рекомбинации. Поэтому в ЭП отсутствует оператор кроссинговера, также как и некоторые другие операторы, используемые в ГП. Мутация в ЭП является единственным оператором поиска альтернативных решений на уровне фенотипа, а не на уровне генотипа, как в ГП.
Рассмотрим эволюционную программу на примере задачи минимизации функции F(а переменных, которые представляются в виде вектора Ā = (а
,…, аn), зависящей от n непрерывных
1
,…,
1
аn). Вектор Ā в ЭП соответствует отдельному артефакту. Используя базовые гипотезы эволюционных вычислений, формализуем модель ЭП.
Формализованная модель эволюционного программирования включает следующую систему отношений,
имитирующих эволюцию исследуемого объекта:
− инициализация. На этапе инициализации случайным
образом генерируется популяция Р(0), состоящая из µ артефактов
Āi (i = 1,2,…, µ).;
− оценка решения. Каждая особь Āi определяет фитнесс­функцию Φ(Āi), которая зачастую равна значению целевой функции (Φ = F, хотя в общем случае они могут и не совпадать). В общем случае считаем, что Φ(Āi)=Ω(F(Āi), ξi);
− генерация потомков;
− случайная селекция;
− проверка критерия останова.
Параметры ЭП выбираются таким образом, чтобы обеспечить скорость работы алгоритма и поиск лучшего решения.
28
Нотация формализованной модели ЭП, представленная на
∀
r
∈
псевдокоде, имеет следующий вид:
выбор начальных значений параметров ЭП (µ, h, l
t: = 0;
инициализация āi (i = 1, 2,…, µ)→Р(t); определение функции качества Ф(ā
’
),
a
i
i
P(t);
repeat P
: = P(t) ;
раб
t: = t + 1 ; P(t): = Ø for i =1 to µ repeat begin
копирование āi из P(t−1);
’
};
’
;
i
’
);
i
мутация потомка ā определение Ф(ā
P
раб
= P
раб
U {ā
i
end
, rj , kj , zj);
j
for i =1 to 2 µ repeat for z =1 to h
попарное сравнение функций Ф(āi) и случайно
выбранного контрагента из P
раб
;
end
сортировка особей в P
по возрастанию числа побед
раб
при сравнении функций;
формирование P(t) из µ лучших особей P
раб
;
проверка условий останова алгоритма.
1.6. Модель роевого интеллекта
Моделирование самоорганизации общественных насекомых составляет основу моделей роевых алгоритмов. Рой рассматривается как многоагентная система, в которой каждый агент функционирует автономно по довольно примитивным правилам. В противовес почти примитивному поведению
29
агентов, поведение всей системы получается на удивление разумным.
Роевые модели исследуются с середины 90-х годов. На сегодняшний день уже получены неплохие результаты для решения таких сложных комбинаторных задач, как задача коммивояжера, задача оптимизации транспортных маршрутов, задача раскраски графа, задача о назначениях, задача оптимизации сетевых графиков, задача календарного планирования и многие другие. Особенно эффективны роевые модели при динамической оптимизации процессов в распределенных нестационарных системах, например, трафиков в телекоммуникационных сетях. Основу поведения роя составляет самоорганизация, обеспечивающая достижения общих целей роя на основе низкоуровневого взаимодействия. Рой не имеет централизованного управления. Его особенностями являются прямой и непрямой обмен локальной информацией между отдельными особями.
Совокупность сравнительно простых агентов конструирует стратегию своего поведение без наличия глобального управления. Например, модель муравьиной колонии, по аналогии с биологической моделью, базируется на непрямом обмене информацией колонии агентов, называемых искусственными муравьями, использующих феромонные следы как коммуникационное средство. Феромонные следы служат распределенной численной информацией. Она наряду с эвристической информацией о задаче используется муравьями для недетерминированного конструирования решений задачи и отражает опыт, накопленный муравьями в процессе поиска решения.
Модель роевого интеллекта может быть применена практически к любой задаче, которая допускает следующее представление:
• дан конечный набор компонент решений Х = {х
х
};
n
30
, х2,...,
1
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]