Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Основы теории эволюционных вычислений. Научная монография
.pdf
(неявный параллелизм). При двоичном кодировании параллелизм
генетического алгоритма является наивысшим. Таким образом,
при выводе своей теоремы Холланд опирался на два важных
свойства шаблона. Первое свойство определяет порядок шаблона
o(S) – число позиций 0 и 1, т.е. фиксированных позиций (а не ×),
представленных в шаблоне. Проще говоря, порядок шаблона –
это его длина минус число символов безразличия. Определение
порядка необходимо при вычислении вероятности выживания
шаблона для оператора мутации.
Второе свойство характеризует длину d(S) шаблона,
которая представляет собой расстояние между первой и
последней фиксированными позициями в хромосомной строке
битов. Это свойство дает оценку компактности информации,
содержащейся в шаблоне. Определение длины важно при
вычислении вероятности выживания шаблона при скрещивании
хромосом, выполняемом с помощью оператора кроссинговера.
Из базового цикла ЭВ, представленного на рис. 6, следует,
что компьютерное моделирование эволюционного процесса
включает следующую последовательность из четырех
повторяемых шагов:
•
вычисление целевой функции;
•
оценка качества решений;
•
селекция хромосом для репродукции;
•
репродукция (создание новых решений с использованием
операторов кроссинговера и мутации).
Начнем обсуждение теоремы Холланда с позиций общей
теории ЭВ с шага селекции. Селекционный отбор направлен на
то, чтобы хромосомы с лучшим значением функции качества
получили преимущество в ходе репродукции перед «слабыми»
хромосомами, в то время как применение генетических
операторов рекомбинации расширяет пространство поиска
решений. Задача состоит в том, чтобы найти некий оптимальный
баланс между уже имеющимися решениями и вновь
101

получаемыми новыми решениями, что имеет важное значение
для адаптации системы.
ξ
Обозначим через
(H, t) число строк в популяции,
соответствующих шаблону H в момент времени t. Определим
среднюю пригодность хромосом в популяции Р(t), отвечающих
шаблону Н. Допустим, что популяция включает m хромосомных
строк {a1, a2,..., am}, соответствующих шаблону Н в момент
времени t. Тогда средняя пригодность хромосом в популяции
Р(t), отвечающих шаблону Нi , равна:
m
1
m
⋅=
∑
j
tHF
),(
aF
).(
=
1
ji
Суммирование в данной формуле ведется по всем
хромосомам, которые одновременно принадлежат шаблону Hi и
популяции Р(t).
Теперь можно вычислить среднюю пригодность для всей
популяции Р(t) размером N как математическое ожидание вида
N
1
N
⋅=
∑
=
i
1
tPFM
))](([
tHF
).,(
i
В соответствии с процедурой селекции создаются
промежуточные популяции, состоящие из хромосом, отобранных
на этой стадии эволюции. Хромосома aj будет отобрана в
следующую популяцию Р(t+1) с вероятностью равной
)(
aF
j
p
=
j
.
))](([
tPFM
После шага селекции в момент времени t + 1 ожидаемое
число хромосом, соответствующих шаблону Н, будет равно
ξ
(H, t+1). Далее необходимо учесть следующее:
•
для некоторой «средней» хромосомы, определяемой
шаблоном Н, вероятность ее отбора равна
)],([
tHFM
;
))((
tPF
•
число хромосом, удовлетворяющих шаблону Н, равно
ξ
(Н, t);
102

•
ε
+
=
число отбираемых хромосом определяется размером
популяции N.
Тогда при указанных условиях в момент времени t + 1
ожидаемое число хромосом, соответствующих эталону Н, будет
определяться следующим выражением:
)],([
tHFM
),()1,(
ξξ
NtHtH ⋅⋅=+
.
))((
tPF
Учитывая, что средняя пригодность популяции хромосом
P(t) будет равна M[P(t)] = F(P(t))/N, полученную формулу можно
преобразовать к следующему виду:
)],([
tHFM
),()1,(
ξξ
tHtH ⋅=+
.
(2)
)]([
tPM
Отсюда следует, что если пренебречь влиянием операторов
мутации и кроссинговера и рассматривать только селекцию с
помощью пропорциональной рулетки, то в следующей генерации
популяции Р(t+1) предполагается получить число экземпляров
шаблона Н, пропорциональное отношению пригодности шаблона
к средней пригодности популяции. Это означает, что шаблон с
пригодностью выше средней пригодности даёт в следующую
популяцию Р(t) большее число хромосом, а шаблон с
пригодностью ниже средней – меньшее число хромосом. Таким
образом, число экземпляров шаблона H в следующей популяции
прямо пропорционально среднему значению пригодности этого
шаблона и обратно пропорционально среднему значению
пригодности предыдущей популяции. Соотношение (2) в теории
генетических алгоритмов называется уравнением
репродуктивного роста шаблона. Оценим долговременный
эффект соотношения (2).
Допустим, что шаблон Н имеет пригодности выше среднего
значения на ε%:
Тогда
)].([)]([],[ tPMtPMtHM
t
HtH
+⋅=
.)1()0,(),(
εξξ
(3)
103

Формула (3) представляет собой геометрическую
прогрессию: при переходе от одной популяции к следующей
шаблон H получает число хромосом, увеличивающееся по
экспоненциальному закону.
Однако селекция не создает новых точек (потенциальных
решений) для поиска в пространстве решений. Селекция лишь
копирует некоторые строки для создания промежуточных
популяций. Вследствие этого необходим ввод в популяцию
новых индивидуумов, что осуществляется посредством
рекомбинации с помощью генетических операторов
кроссинговера и мутации. Рассмотрим влияние этих операторов
на ожидаемое число хромосомных строк, удовлетворяющих
шаблону Н, в популяции.
Используя указанные выше свойства шаблона, длину d(H) и
порядок шаблона о(Н), попробуем определить вероятность
«выживания» шаблона Н при выполнении одноточечного
кроссинговера и мутации.
Пусть число позиций в хромосомах равно L. Точка
скрещивания для кроссинговера выбирается случайно из L-1
позиций. Некоторый шаблон Н будет «уничтожен»
одноточечным кроссинговером, если точка скрещивания
кроссинговера окажется между первой и последней позициями, а
второй родитель не является экземпляром шаблона Н.
Вследствие этого вероятность гибели (разрушения) этого
шаблона Н будет равна
pd (Н) = d(H)/(L − 1).
Соответственно вероятность выживания некоторого
шаблона Н определяется как
ps(Н) =1 − pd (Н) = 1 − d(H)/(L − 1).
Однако скрещиванию подвергаются не все, а только
некоторые хромосомы. Их количество определяется
вероятностью кроссинговера pc. Это означает, что фактически
вероятность выживания шаблона Н будет оцениваться величиной
ps(S) = 1 − pc [d(H)/(L − 1)].
(4)
104

Если учесть, что точка скрещивания может оказаться
1
−
L
между фиксированными позициями шаблона, то сохраняются
шансы его выживания. Вследствие этого необходимо изменить
формулу (4) выживания шаблона следующим образом:
ps(S) ≥ 1 − pc [d(H)/(L − 1)].
(5)
Комбинируя эффекты выполнения операторов селекции и
кроссинговера (формулы (2) и (5)), получим следующее
соотношение, описывающее репродуктивный рост хромосомпредставителей шаблона Н, в последующих генерациях:
)],([
),()1,(
⋅≥+
ξξ
tHtH
tHFM
1[)]([
⋅−⋅
ptPM
c
.
(6)
)(
Hd
]
Полученное неравенство (6) показывает, что ожидаемое
число хромосом, удовлетворяющих шаблону Н в следующей
генерации, является функцией фактического количества
хромосом, отвечающих шаблону, относительной пригодности
шаблона и его длины d(H).
При оценке влияния оператора мутации на репродуктивный
рост хромосом, порождаемых некоторым шаблоном Н, следует
иметь в виду, что этот оператор изменяет единственную позицию
в пределах хромосомы с вероятностью pm. Очевидно, что все
остальные фиксированные позиции шаблона должны оставаться
неизменными, если шаблон подвергся мутации. Таким образом,
вероятность изменения (инвертирования) отдельного бита в
хромосоме равна pm, а вероятность выживания шаблона Н
составляет величину 1 – pm. Поскольку одноточечная мутация не
зависит от других мутаций, то вероятность выживания шаблона
Н из исходной популяции Р(0) с учётом порядка шаблона о(Н)
равна
ps (Н) = (1 – pm )
o(Н)
.
Поскольку pm<< 1, то последняя формула преобразуется к
виду
ps (Н) ≈ 1 - o(Н) pm .
(7)
105

Объединяя эффекты выполнения операторов селекции,
1
L
−
кроссинговера и мутации (формулы (6), (7)), получим следующее
соотношение, описывающее рост хромосом в популяции,
отвечающих эталону Н:
)],([
),()1,(
tHtH
ξξ
⋅≥+
1[)]([
ptPM
tHFM
)(
Hd
⋅−⋅
.
(8)
])(
pHo
⋅−
mc
Как и в предыдущих, более простых формулах (2) и (6),
последнее выражение определяет ожидаемое число сходных с
шаблоном Н хромосомных строк в последующих генерациях как
функцию числа таких строк в текущей популяции,
относительной пригодности эталона, а также его длины и
порядка.
Выражение (8) определяет теорему Холланда для
генетических алгоритмов, иногда называемую теоремой
шаблонов, которую можно теперь переформулировать
следующим образом: шаблоны, обладающие малой
определяющей длиной, низким порядком и пригодностью, выше
средней в популяции, будут увеличивать число строк, сходных с
шаблоном, в последующих генерациях по экспоненциальному
закону.
Понятным, но спорным объяснением практической
эффективности ГА и важности кроссинговера выглядит гипотеза
Д. Голдберга [Goldberg, 1989], согласно которой в ходе
генетического поиска, особенно в области близкой к оптимуму,
желательно формировать хромосомы из шаблонов меньшего
порядка с короткой определенной длиной, отбирая из них
лучшие решения, вместо селекции только элитных хромосом.
С позиций общей теории ЭВ постепенное с помощью
кроссинговера формирование квазиоптимальных решений, на
наш взгляд, является все же сильным упрощением генетических
алгоритмов. Представляется, что для практики применения
генетических алгоритмов в ЭВ нетипичным выглядит подход,
заключающийся в декомпозиции общей задачи на множество
106

независимых подзадач. Такой подход используется скорее в
традиционных методах оптимизации.
Теорема Холланда весьма упрощенно описывает поведение
генетических алгоритмов, а её доказательство, построенное на
элементах теории вероятности, не учитывает достаточно
большой разброс значений функций пригодности шаблонов в
некоторых практических задачах. Была установлена
вычислительная ошибка, которая приводит к неверным
результатам для задачи об игровых автоматах. К тому же,
поскольку популяция в генетических алгоритмах имеет
конечную величину, возникает неизбежная ошибка при
определении значения функции пригодности шаблона. Эта
ошибка в оценке ставит под сомнение значение теоремы в плане
ее практического применения, за исключением очень простых
приложений, для которых теорема становится почти тавтологией,
описывающей пропорциональный селективный отбор. Эффект
ошибки при определении значения пригодности шаблона состоит
в том, что в популяции реального размера действительное
значение функции пригодности может существенно отличаться
от среднестатистического значения, даже для начальной
популяции.
Другое критическое замечания относительно теоремы
Холланда с позиций общей теории ЭВ касается предположения о
независимости экземпляров, выбираемых из различных
шаблонов популяции. Нельзя считать независимыми экземпляры
хромосом, если популяции на основе двух пересекающихся
шаблонов имеют различную скорость сходимости. Этот факт
имеет место даже для бесконечно больших популяций. Он
состоит в том, что значение функции пригодности шаблона в
популяции быстро начинает отклоняться от теоретического
среднего значения, что никак нельзя объяснить на основании
теоремы Холланда.
Для любого метода оптимизации особый теоретический
интерес представляет вопрос о сходимости к глобальному
107

оптимуму и об условиях сходимости. Из теоремы Холланда не
следует сходимость ГА к глобальному оптимуму. Исследования
в области сходимости ГА сконцентрированы в основном на
простейших ГА, а сходимость многочисленных модификаций ГА
для решения практических оптимизационных задач является
малоисследованной проблемой. Доказано, что простейший ГА не
сходится к глобальному оптимуму за конечное время.
Доказательство основано на фундаментальной теории цепей
Маркова и сводится к следующему.
Цепь Маркова является специальной формой для описания
случайных процессов. Она характеризуется тем, что процесс
состоит из дискретных состояний и протекает дискретно во
времени. Вероятность того, что процесс будет в момент времени
(t+1) находиться в некотором состоянии v, если он к моменту t
находился в состоянии w, зависит только от этих состояний и не
зависит от течения процесса в предшествующих состояниях
цепи. Эта вероятность называется вероятностью перехода из
состояния v в состояние w и обозначается через p
≥ 0. Если
vw
вероятность pvw не зависит от t, то цепь Маркова считается
однородной. Обычно вероятности переходов представляются в
форме квадратной матрицы P, в которой число строк и столбцов
соответствует числу k возможных состояний цепи, причем сумма
элементов любой строки равна 1.
Пусть для данного начального вектора распределения
возможных состояний p(0) получается к моменту t вектор с
распределением вероятностей p(t) = p(0)·Pt. Если для некоторой
степени t справедливо Pt·P = Pt, то стохастический процесс к
моменту времени t находится в равновесии, а Pt является
равновесной матрицей, содержащей одинаковые строки. Пусть
необходимо найти максимум некоторой функции F(ā), где ā∈{0,
1}L при условии 0 < F(ā) < ∞ и F(ā) ≠ const.
Простейший ГА с вероятностями мутации и кроссинговера
pm, pc ∈ (0, 1) и пропорциональной рулеточной селекцией
описывается однородной марковской цепью. Состояниями цепи
108

являются состояния популяции, пространство которых
L·N
Y = {0,1}
. Изменение состояния популяции описывается
матрицей Р, которая образуется в результате выполнения
операторов кроссинговера, мутации и селекции. Известно, что
матрица Pt сходится к локальному оптимуму только в том случае,
если матрица переходов Р является примитивной (существует
некоторое t, при котором матрица Pt состоит только из
положительных вероятностей, т.е. pvw>0 для всех v, w) и сумма
элементов любой строки равна 1 [Родзин, 2005]. Следовательно,
простейший ГА соответствует цепи Маркова с эргодической
матрицей переходов, т.е. не зависит от исходной популяции.
Однако условие сходимости простейшего ГА к глобальному
оптимуму может не выполняться, т.е. не существует гарантий
того, что за неограниченное время алгоритм найдет абсолютно
лучшее решение.
Проиллюстрируем на примере этот результат с позиций
общей теории ЭВ. Пусть популяция состоит из хромосом, каждая
из которых кодируется 2-битовой строкой. Тогда возможными
вариантами эволюции популяции при размере популяции N = 2
будут элементы следующего множества:
S = { (00, 00), (00,01), (00,10), (00,11), (01, 00), (01, 01), (01,
10), (01, 11), (10, 00), (10, 01), (10, 10), (10, 11), (11, 00), (11, 01),
(11, 10), (11, 11)}.
Если размер популяции N будет равным 3, то возможными
вариантами эволюции популяции будут элементы следующего
множества:
S = {(00, 00, 00), (00, 00, 01), (00, 00, 10), (00, 00, 11),
(00, 01, 00), (00, 01, 01), (00, 01, 10), (00, 01, 11),
………… ……… ……….. ……….. …. …………
(11, 11, 00), (11, 11, 01), (11, 11, 10), (11, 11, 11)}.
Число элементов множества S при N = 3 равно 64. В общем
случае, если хромосомы имеют длину L битов, то мощность
множества S равна 2
L*N
.
109

При N = 2 и L = 2 размеры марковской матрицы
вероятностей переходов Р равны 16*16, а каждый элемент
матрицы p
означает вероятность перехода от i-го в j-е состояние,
ij
причём
⋅
NL
=
p
∑
=
j
1
Обозначим через
1
ij
.
π
векторную строку, k-й элемент которой
t
равен вероятности возникновения k-го состояния на шаге t
генетического алгоритма. Тогда справедлива следующая оценка:
ππ
+
.1Ptt⋅=
Таким образом, начиная с заданной начальной векторстроки π0, можно оценить вероятность состояния вектора после
n-го шага эволюции:
ππ
n
0
n
,
P⋅=
где Рn вычисляется путем умножения матрицы Р саму на себя
(n − 1) раз.
Поведение генетического алгоритма (без учёта мутации)
можно описать следующими тремя вариантами:
•
алгоритм может сходиться к одному или более
поглощающему состоянию (состояние, из которого он не
имеет переходы в другие состояния);
•
алгоритм допускает переход к другим состояниям, из
которых, в свою очередь, возможен переход к одному из
поглощающих состояний;
•
алгоритм никогда не достигнет поглощающего
состояния.
Принимая во внимание вышесказанное и обозначив через b
число поглощающих состояний, через u число состояний, из
которых возможен переход в другие состояния, можно построить
матрицу Р, разделив её на следующие подматрицы:
OI
=
P
,
QR
110
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
