Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Основы теории эволюционных вычислений. Научная монография
.pdf
мутация в эволюционном программировании является
•
единственным оператором поиска альтернативных решений
на уровне фенотипа, а не на уровне генотипа, как в
генетических алгоритмах
Ранее в разделе
1.5
.
была представлена формализованная
модель ЭП. Уточним её с позиций общей теории ЭВ. Пусть
решается задача минимизации функции
n
непрерывных переменных, которые представляются в виде
вектора Ā
артефакту
.
= (
а
,…,
1
а
),
что в ЭП соответствует отдельному
n
F(
а
,…,
1
а
),
зависящей от
n
С позиций общей теории ЭВ уточнённый алгоритм
эволюционного программирования включает следующие этапы
:
а) инициализация. На этапе инициализации случайным
образом генерируется популяция Р
Ā
(i = 1,2,…, µ).
i
µ ≥
200.
Значение элемента
Рекомендуемое значение размера популяции
aj
(0),
состоящая из µ артефактов
для каждого артефакта Ā
i
устанавливается
распределения на интервале
lj, rj
имеют значение лишь на этапе инициализации. В ходе
случайно
с
помощью
[lj , rj ] ∈ R, lj < rj .
равномерного
Границы интервала
дальнейшей эволюции пространство поиска в принципе является
неограниченным. Стандартная форма ЭП предполагает решение
оптимизационной задачи, в которой
б) оценка решения. Каждая особь Ā
функцию Φ(Ā
функции (Φ
),
i
= F,
которая зачастую равна значению целевой
хотя в общем случае они могут и не совпадать
lj = −50, rj = 50;
определяет фитнесс
i
).
В случае несовпадения функции качества и целевой функции
значение Φ преобразуется с помощью некоторой случайной
величины ξ
.
Например, если результирующее значение функции
i
качества получилось отрицательным, то оно преобразуется путем
скаляризации в положительное число. Таким образом, в общем
случае считаем, что Φ(Ā
) = Ω(F(
i
Ā
i
),
ξ
).
i
-
,
Совокупность из µ артефактов образует множество
родителей, необходимых для следующего этапа ЭП
151
;

в) генерация потомков. Этот этап выполняется µ раз
(i = 1, 2,…, µ) и
•
репликация путем копирования
а
);
n
•
мутация скопированного родителя путем сложения
включает в себя следующие действия
i-го
родителя Ā
:
= (
i
а
,…,
1
нормально распределенной случайной величины с нулевым
математическим ожиданием и динамически изменяемым
среднеквадратичным отклонением
Из родителя Ā
отклонение
(«
возникает потомок Ā′
i
ширина мутации
»)
.
.
Стандартное
i
полученной случайной
величины зависит от родительского значения функции
соответствия Φ. При этом глобальный оптимум равен
не так, то проводится соответствующее преобразование
0 (
если это
).
Идея
состоит в том, чтобы повысить эффективность процесса
оптимизации путем сокращения
«
ширины мутации
»
при
приближении к оптимуму. Значение переменной потомка
определяется по формуле
a
′
= aj + sqrt(k
j
где
kj –
качества родителя
константа скаляризации; Φ(Ā
; zj −
·Φ(Ā
j
) + zj)·Nj (0, 1),
i
дисперсия
) –
i
; N
значение функции
j
(0, 1) –
стандартная
нормально распределенная величина, определяемая для каждого
j = 1,2,…, n.
эволюционного
Значения
программирования
k
j
, zj
являются
и
параметрами
устанавливаются
пользователем. В общем случае, число этих параметров равно
2 n.
(j = 1,2,…, n).
вычисления a′
Однако на практике обычно устанавливают
Тогда квадратный корень
упрощается, и она принимает следующий вид
j
a
′
= aj + sqrt(Φ(
j
Ā
))·Nj (0, 1);
i
(sqrt) в
kj = 1, zj = 0
формуле для
:
г) оценка потомка происходит путем определения значения
его функции качества Φ(Ā′
добавляется в популяцию, причем Ā′i → Ā′
) = Ω(F(
i
Ā′
i
),
ξ
.),
после чего потомок
i
.
µ+i
При окончании
этапа размер популяции становится равным
2 µ;
д) селекция выполняется по соревновательному принципу
согласно которому каждый родитель или потомок попарно
152
,

сравнивается с
h
противниками, причем величина
h (h ≥ 1)
является
параметром
эволюционного
программирования
устанавливается пользователем и обычно принимает значения от
h = 0,05µ
до
h = 0,1 µ.
Противники выбираются случайно с
помощью закона равномерного распределения. Победитель
определяется путем попарного сравнения функций качества
Артефакт побеждает в соревновании, если его функция качества
по меньшей мере, не хуже
,
чем у противника
.
Для
представленной выше задачи минимизации общее число побед
Wi i-го
суммирования
Суммирование ведется для
артефакта
отдельных
(i = 1, 2,…, 2 µ)
побед
,
d = 1, 2,…, h, d ≠ i,
определяется
когда
Φ(Ā
причем
) ≤ Φ(
i
d
является
путем
Ā
).
d
целочисленным значением случайной величины, равномерно
распределенной в интервале
[1, 2 µ],
которое для каждого
d
определяется заново. После этого все артефакты сортируются по
убыванию числа побед
(а не по
значению функций качества
).
,
.
,
Лучшие артефакты образуют новую родительскую популяцию
размером µ. При одинаковом числе побед преимущество
получает артефакт с лучшим значением функции качества
Очевидно, что при таком механизме селекции
«
слабые
артефакты имеют некоторую отличную от нуля вероятность
репродукции. С ростом значения параметра
принимать дискриминационный элитный характер
h
селекция начинает
;
е) в качестве критерия останова могут быть следующие
заданные пользователем события: достижение в ходе эволюции
заданного числа поколений
t
max
;
достижение заданного уровня
качества, когда значение функций качества всех артефактов в
популяции
превысило
некоторое
пороговое
значение
достижение заданного уровня сходимости, когда артефакты в
популяции настолько подобны, что дальнейшее их улучшение
происходит чрезвычайно медленно
.
.
»
;
Параметры алгоритма эволюционного программирования
выбираются таким образом, чтобы обеспечить скорость работы
алгоритма и поиск лучшего решения
153
.

Одним из наиболее объективных средств тестирования
эволюционных алгоритмов является классическая задача теории
игр, называемая «дилеммой узников
» [
Родзин
, 2002].
Эта задача служит моделью конфликтной ситуации, в
которой интересы игроков
(
агентов) хотя и различны, но не
являются антагонистическими. Игроками считаются два узника
находящиеся в предварительном заключении по подозрению в
совершении преступления. При отсутствии прямых улик
возможность их осуждения в значительной степени зависит от
того, заговорят они или будут молчать. Потери игроков
описываются матрицей следующего вида
М
Г
М
(1,1) (5,0)
(0,5) (3,3)
Г
:
Ясно, что наиболее выгодным для них является молчание
,
(М).
Однако простое рассуждение показывает, что, не имея
никаких контактов между собой, и к тому же не очень доверяя
друг другу, каждый из узников, поразмышляв, придет к выводу
что нужно сознаваться (Г
).
Задачей эволюционного программирования является поиск
такой игровой стратегии, которая позволит минимизировать
средние потери при многократном повторении игровой ситуации
Можно представить каждую совместную игровую стратегию
одним из состояний конечного автомата
.
Множество возможных входных сигналов автомата при
символьном представлении равно
Множеством выходов автомата являются символы {м, г
{(м/м), (м/г), (г/м), (г/г)}.
}.
В качестве исходных для эксперимента выбирались
следующие параметры: размер популяции µ
игре
− не
менее
150,
число состояний, переходы состояний
= 50,
число ходов в
,
.
,
первый ход, а также выход автомата устанавливались случайно
Каждый автомат копировался, над ним производилась мутация
на базе равномерного распределения. В дальнейшем каждый
154
.

автомат попарно сравнивался с
99
другими, причем в качестве
функции приспособленности выбирались ожидаемые средние
потери. Хотя в игре возможна стохастическая селекция
предпочтительнее
согласно которому из
Критерием останова в данной задаче являлось значение
применять
100
детерминированный
автоматов выбирались
50
отбор
лучших
t
= 200.
max
Ниже в матрице в качестве иллюстрации приводится список
возможных автоматных состояний и переходов между
состояниями, полученный в ходе работы алгоритма
Сос
-
то
-
яние
Пере
ходы
состо
яний
-
-
S
0
г, г
/
г
, S
0
м, г
/
г
, S
1
м, м
/
м
, S
г, м
3
/
S
м, г
м
, S
г, м
г
, S
г, г
м
, S
м, м
1
/
1
/
3
/
3
/
S
м, м
г
, S
м, г
г
, S
г, г
м
, S
м, м
2
/
1
/
1
/
3
/
S
м, г
г
, S
м, м
м
, S
г, г
г
, S5
г, м
3
/
2
/
2
/
/
S
м, г
г
, S
г, г
м
, S
м, м
м
, S
г, м
4
/
м, м
г
1
/
г, м
м
1
/
м, г
г
2
/
г, г
S
, S
, S
, S
:
5
/
2
/
3
/
5
/
S
г, г
г
, S
м, м
г
, S
г, м
м
, S7
6
/
5
/
6
/
S
7
м, м
г
, S
г, м
м
, S
г, г
м
, S
м, г
/
1
/
3
/
6
/
,
,
.
г
, S6
Здесь
S0 −
являлось решение узника говорить
столбце
S4 (г, г/м, S2)
г
, S4
м
, S4
м
, S6
м
, S7
г
, S5
это стартовое состояние, входом которого
(«г»), а,
например, запись в
означает, что узник на очередном ходе
м
, S8
принял решение говорить, на предыдущем ходе использовалась
стратегия г/м, автомат из состояния
S4
переходит в состояние
S2.
Эксперименты с автоматами показали, что примерно в
течение первых
уже после
20
5-10
ходов преобладает стратегия молчания, хотя
ходов начинает встречаться стратегия
кооперативного поведения, которая в дальнейшем однозначно
становится доминирующей
.
Эволюционное программирование удачно дополняет
арсенал эвристических
поиска субоптимальных
решений, обладая свойствами адаптивности, способности к
обучению, параллелизма. ЭП позволяет проявить преимущества
эволюционных
вычислений
в
155
областях
,
отличных
от

оптимизации функций, например при формировании стратегий
поведения
многоагентных средах, принятия решений в классификационных
задачах и т.п
Параметры эволюционного программирования выбираются
таким образом
асимптотическую
эволюционного программирования также можно представить в
виде однородной цепи Маркова, которая характеризуется тем
что вероятность перехода между состояниями цепи не зависит от
времени
Число строк и столбцов матрицы соответствует числу
возможных состояний марковской цепи
вероятностей в каждой строке матрицы всегда равна
Обозначим матрицу переходов через
которых переход невозможен, поглощающими
t и
и
взаимодействия
.
,
чтобы обеспечить скорость работы и
представляется квадратной матрицей переходов
сходимость
программных
алгоритма
P, и
агентов в
.
,
причем сумма
назовем состояния, из
.
Процесс
1.
,
.
Ранее отмечалось, что для t→∞ справедливо
OI
lim
t
где
I –
это единичная матрица
содержащая вероятности перехода из непоглощающих состояний
в
поглощающие
вероятности переходов между не поглощающими состояниями
причем обратная матрица
Отсюда следует, что при
вероятностью
фундаментальный результат для марковских цепей вполне
применим к алгоритму эволюционного программирования
Действительно, примем в качестве состояний марковской цепи
все векторы Ā
популяций
t
=
P
∞→
−
1
перейдет в поглощающее состояние. Этот
популяции Р
i
соответствует
1
−
)(
состояния
(I−Q)-1
,
ORQI
; O –
; Q –
существует всегда
(t).
множеству
нулевая матрица
матрица
t
→∞ марковская цепь с
Множество всех возможных
:
; R –
,
содержащая
.
состояний
матрица
цепи
,
,
.
.
Исключение составляют
глобальный оптимум. Они могут быть объединены в отдельный
популяции
156
,
которые включают

класс
[
]
−
ψ
[
]
[
]
[
]
эквивалентных
поглощающих
состояний
.
Из
справедливости предыдущего предела вытекает при
следующее
t
где
[1] –
:
→∞
1
RQI
,1)(lim
=−
единичный вектор. Это означает, что вероятность найти
глобальный оптимум при любой исходной популяции равна
если число шагов эволюции
Представленный
t
→∞
max
алгоритм
.
эволюционного
t
→∞
1,
программирования тестировался на различных задачах. В
частности, тестовым примером была функция Клауса-Хотца для
комбинаторной задачи определения перестановок. Требовалось
максимизировать функцию следующего вида
1
nin
F
ψ
⋅=
∑∑∑
−
1 1
= +=≠
ij
ψψ
−
=
ji
ji
−
−
ψψ
ij
ijji
−
:
.,...,2,1,,2)(
=
nji
,
где
ψ −
1, 2,…, n. В
следующие значения
для
некоторая перестановка на множестве натуральных чисел
результате тестирования были получены, например
)(
= 164
для
n = 100.
для
n = 10;
ψ
F
max
n = 50;
F
:
max
)(
ψ
F
max
= 31301
)(
= 6693
С практической точки зрения интерес представляют также
такие задачи, как минимизация нелинейных несепарабельных
функций Розенбрука, Гриванка и Шеффера и др
2
1
n
xx
1
=
2
1
1.02
2
n
∑
=
i
2
4000
1
22
2
i
−+=
∏
i
225.02
2
R
21
S
xxxF
nG
2
121
121
1),...,,(
2
.:
−∈−+−= xxxxxxxF
21
i
i
[ ]
x
−∈
i
21
−∈++⋅⋅+= xxxxxxxxF
,
,047.2;048.2,,)1()(100),(
,511;512,)cos(
.100;100,,0.1))(50(sin)(),(
Обучающие классификаторы
Обучающие
разновидностей ЭВ, таксономия которых представлена на рис
классификаторы
,
являясь
одной
из
. 1,
построены на сочетании эволюционных моделей и моделей
157

компьютерного обучения решению задач классификации
[
Родзин
(
КМК) впервые предложил Дж. Холланд в работе
, 2002].
Термин
«
компьютерная модель классификации
[Holland, 1986],
»
где речь шла о разработке когнитивной модели процесса
обучения. В настоящее время данный термин используется в
областях искусственного интеллекта, связанных с методами
машинного обучения. Точное определение термина
«
обучение
дать довольно трудно, однако большинство авторов считают
обучаемость качеством адаптивной системы, которая способна
совершенствовать свое поведение, накапливая, например, опыт
решения такого важного класса интеллектуальных задач
каковыми являются задачи классификации. Наиболее общей
формой решения подобного рода задач является индуктивная
программа, способная обучаться на основе обобщения правил
классификации и извлечения из предъявляемых примеров
(
прецедентов) полезных закономерностей
Представим правила классификации в виде продукций
(i); S; P;
ЕСЛИ (условия) ТО (действия
.
:
); N,
»
,
где
(i) –
условие применимости продукции
ТО
(
выполнения действия
имя продукции
действия
) –
; S –
ситуации в предметной области; Р
(
предикат
);
ЕСЛИ
(
условия
–
ядро продукции, которое указывает на условия
; N –
постусловие продукции. В этом случае
вполне уместной выглядит аналогия между КМК и моделью
искусственной нейросети, в которой роль нейронов играют
продукции. Однако, на наш взгляд, КМК имеют перед
нейросетью очевидные преимущества: представление знаний в
виде наглядно интерпретируемых продукционных правил
транспарентность и простота интеграции знаний в КМК
.
Ядром КМК является база знаний в форме множества
случайно
инициализируемых
продукционных
правил
классификации. Для кодирования условий продукции используем
алфавит
1.
Для кодирования действия продукции применим бинарный
{0, 1, #},
где символ
#
указывает на возможность
0
или
)
;
алфавит
{0, 1}.
Оказалось, что подобного рода кодирование
158

является удобным для обработки продукций с помощью
эволюционного алгоритма. Приведем пример классификатора
.
Пусть КМК решает задачу поиска в некотором
пространстве ситуаций, принимая информацию от датчиков
слева, в центре, справа. При положительной реакции посылается
сигнал
означает, что если левый датчик «молчит
1, в
ЕСЛИ
противном случае
(0,1,#)
ТО
(1)
или
– 0.
Тогда запись вида
<0 1 # : 1>
», в
отличие от правого
то все равно, что происходит справа, и необходимо двигаться
прямо. Такая формализация учитывает, что обучение
–
это
одновременно способность и действие, при этом, однако
появляется возможность сравнивать похожие ситуации и
обобщать свойства предъявляемых прецедентов
.
Вообще
способность к обобщению является очень важной, иначе
размерность множества правил классификации резко возрастает
.
Пусть имеется два классификатора, содержащих по два
,
,
условия и по одному действию
:
<0 0 # #, # # # 1 : 1 1> и
<0 0 0 #, 0 0 0 1 : 0 1>.
Будем считать второй классификатор более специфичным
нежели первый, поскольку он содержит меньшее число символов
#.
Например, при получении информации об условиях вида
(0000) и (0001)
ситуации
(0011) и (0101), в
оба классификатора выполнимы, в отличие от
которой действует только первое
правило. Вместе оба классификатора образуют элементарную
иерархию правил, что является менее затратным способом
представления знаний, нежели формирование правил для каждой
отдельной ситуации, а также существенно облегчает адаптацию
КМК к новым ситуациям, позволяет вести речь о накоплении
опыта и самообучении
.
Реакцию КМК на некоторую ситуацию можно разделить на
,
две фазы: исполнение (получение информации) и подкрепление
На первой фазе сенсоры (детекторы) принимают информацию из
окружающей среды и кодируют ее в виде стринга битов. Затем
159
.

проверяются условия выполнения классификационных правил, и
классификаторы, для которых эти условия выполняются
копируются в отдельный список. По частоте применения
классификатора можно судить о его полезности. Выбранное к
исполнению действие посылается на эффекторы и активизирует
выполнение задачи системой. Фаза подкрепления соответствует
этапу закрепления знаний в процессе обучения или поощрению
КМК за правильные действия. Если обозначить через
A(t) –
полезность классификатора из списка исполнимых в момент
времени
механизм динамического изменения Σ
виде рекурсии
t,
через Σ
:
A(t) –
суммарное значение полезности, то
A(t)
можно представить в
ΣA(t)← ΣA(t) – α ΣA(t) + αB + αβ ΣA(t+1),
где α
коэффициент поощрения
(0< α ≤1) –
коэффициент наказания
; B –
вознаграждение за правильные
;
β
(0< β ≤1) –
,
действия
; A(t+1) –
прогнозируемая полезность
.
В рамках общей теории ЭВ предлагается дополнить
представленный выше классический механизм поощрений
штрафов правилами эволюции с целью придания процессу
обучения более динамичных свойств путем исключения
«
плохих» классификаторов и заменой их на потенциально
лучшие. Иными словами, после завершения фазы подкрепления
КМК либо переводится в фазу исполнения, либо вызывается
(
периодически или случайно) эволюционный алгоритм, например
генетический, в котором полезность классификатора в ходе
селекции выступает в качестве целевой функции
.
Понятно, что представленная модель процесса обучения
является
упрощенной
и
не
позволяет
моделировать
мыслительный акт на базе запоминаемой информации для
действительно сложных задач адаптации. Поэтому предлагается
-
расширить архитектуру КМК путем введения в модель памяти в
виде некоторого списка сообщений ограниченной длины, в
котором действуют
,
например аукционные правила
160
,
т.е
.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
