Читать в оригинале

<< Предыдущая Оглавление Следующая >>


4.7. Основная теорема о генетических алгоритмах

Для того чтобы лучше понять функционирование генетического алгоритма, будем использовать понятие схема и сформулируем основную теорему, относящуюся к генетическим алгоритмам и называемую теоремой о схемах [7, 15, 21, 33]. Понятие схема было введено для определения множества хромосом, обладающих некоторыми общими свойствами, т.е. подобных друг другу. Если аллели принимают значения 0 или 1 (рассматриваются хромосомы с двоичным алфавитом), то схема представляет собой множество хромосом, содержащих нули и единицы на некоторых заранее определенных позициях. При рассмотрении схем удобно использовать расширенный алфавит , в который помимо 0 и 1 введен дополнительный символ *, обозначающий любое допустимое значение, т.е. 0 или 1; символ * в конкретной позиции означает «все равно» (don't саге). Например,

.

Считается, что хромосома принадлежит к данной схеме, если для каждой -й позиции (локуса), , где  - длина хромосомы; символ, занимающий -ю позицию хромосомы, соответствует символу, занимающему -ю позицию схемы, причем символу * соответствуют как 0, так и 1. То же самое означают утверждения хромосома соответствует схеме и хромосома представляет схему. Отметим, что если в схеме присутствует  символов *, то эта схема содержит  хромосом. Кроме того, каждая хромосома (цепочка) длиной  принадлежит к  схемам. В таблицах 4.2 и 4.3 представлены схемы, к которым принадлежат цепочки длиной 2 и 3 соответственно.

Таблица 4.2. Схемы, к которым принадлежат цепочки длиной 2

Звенья

Схемы

1

2

3

4

00

**

*0

0*

00

01

**

*1

0*

01

10

**

*0

1*

10

11

**

*1

1*

11

Таблица 4.3. Схемы, к которым принадлежат цепочки длиной 3

Звенья

Схемы

1

2

3

4

5

6

7

8

000

***

**0

*0*

0**

*00

0*0

00*

000

001

***

**

*0*

0**

*01

0*1

00*

001

010

***

**0

*1*

0**

*10

0*0

01*

010

011

***

**1

*1*

0**

*11

0*1

01*

011

100

***

**0

*0*

1**

*00

1*0

10*

100

101

***

**1

*0*

1**

*01

1*1

10*

101

110

***

**0

*1*

1**

*10

1*0

11*

110

111

***

**1

*1*

1**

*11

1*1

11*

111

Цепочки длиной 2 соответствуют четырем различным схемам, а цепочки длиной 3 - восьми схемам.

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

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

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

Обозначим рассматриваемую схему символом , а количество хромосом популяции , соответствующих этой схеме - . Следовательно,  можно считать количеством элементов (т.е. мощностью) множества .

Начнем с исследования влияния селекции. При выполнении этой операции хромосомы из популяции  копируются в родительский пул  с вероятностью, определяемой выражением (4.3). Пусть  обозначает среднее значение функции приспособленности хромосом из популяции , которые соответствуют схеме . Если

,

то

.                   (4.6)

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

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

.             (4.7)

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

.                   (4.8)

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

.

Таким образом, ожидаемое количество хромосом из множества , отобранных для включения в родительский пул , будет равно

,

что следует из выражения (4.6).

Поскольку каждая хромосома из родительского пула  одновременно принадлежит популяции , то хромосомы, составляющие множество  - это те же самые особи, которые были отобраны из множества  для включения в популяцию . Если количество хромосом родительского пула , соответствующих схеме  (т.е. количество элементов множества ), обозначить , то из приведенных рассуждений можно сделать следующий вывод:

Вывод 4.1

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

.                     (4.9)

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

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

Определение 4.1

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

.

Порядок схемы  равен длине  за вычетом количества символов *, что легко проверить на представленных примерах (для  с одним символом * и для  с двумя, четырьмя и тремя символами *). Легко заметить, что порядок схемы, состоящей исключительно из символов *, равен нулю, т.е. , а порядок схемы без единого символа * равен ; например, . Порядок схемы  - это всегда целое число из интервала .

Определение 4.2

Охват (defining length) схемы , называемый также длиной схемы (не путать с длиной ) и обозначаемый  - это расстояние между первым и последним постоянным символом (т.е. разность между правой и левой крайними позициями, содержащими постоянные символы). Например,

               

                      .

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

Перейдем к рассуждениям о влиянии операции скрещивания на обработку схем в генетическом алгоритме. Прежде всего отметим, что одни схемы оказываются более подверженными уничтожению в процессе скрещивания, чем другие. Например, рассмотрим схемы  и , а также хромосому , соответствующую обеим схемам. Видно, что схема  имеет больше шансов «пережить» операцию скрещивания, чем схема , которая больше подвержена «расщеплению» в точках скрещивания 1, 2, 3, 4 и 5. Схему  можно разделить только при выборе точки скрещивания, равной 3. Обратим внимание на охват обеих схем, который - это очевидно оказывается существенным в процессе скрещивания.

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

Вывод 4.2 (влияние скрещивания)

Для некоторой хромосомы из  вероятность того, что она будет отобрана для скрещивания и ни один из ее потомков не будет принадлежать к схеме , ограничена сверху величиной

.

Эта величина называется вероятностью уничтожения схемы .

Вывод 4.3

Для некоторой хромосомы из  вероятность того, что она не будет отобрана для скрещивания либо, что хотя бы один из ее потомков после скрещивания будет принадлежать к схеме , ограничена снизу величиной

.

Эта величина называется вероятностью выживания схемы .

Легко показать, что если данная хромосома принадлежит к схеме  и отбирается для скрещивания, а вторая родительская хромосома также принадлежит к схеме , то оба их потомка тоже будут принадлежать к схеме . Выводы 4.2 и 4.3 подтверждают значимость показателя охвата схемы  для оценки вероятности уничтожения или выживания схемы.

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

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

Вывод 4.4 (влияние мутации)

Вероятность того, что некоторая хромосома из  будет принадлежать к схеме  после операции мутации, определяется выражением

.

Эта величина называется вероятностью выживания схемы  после мутации.

Вывод 4.5

Если вероятность мутации  мала , то можно считать, что вероятность выживания схемы  после мутации, определенная в выводе 4.4, приближенно равна

.

Эффект совместного воздействия селекции, скрещивания и мутации (выводы 4.1 - 4.4) с учетом факта, что если хромосома из множества  дает потомка, соответствующего схеме , то он будет принадлежать к , ведет к построению следующей схемы репродукции [7]:

.                     (4.10)

Зависимость (4.10) показывает, как изменяется от популяции к популяции количество хромосом, соответствующих данной схеме. Это изменение вызывается тремя факторами, представленными в правой части выражения (4.10), в частности:  отражает роль среднего значения функции приспособленности,  показывает влияние скрещивания и  - влияние мутации. Чем больше значение каждого из этих факторов, тем большим оказывается ожидаемое количество соответствий схеме  в следующей популяции. Вывод 4.5 позволяет представить зависимость (4.10) в виде

.                        (4.11)

Для больших популяций зависимость (4.11) можно аппроксимировать выражением

.                   (4.12)

Из формул (4.11) и (4.12) следует, что ожидаемое количество хромосом, соответствующих схеме  в следующем поколении, можно считать функцией от фактического количества хромосом, принадлежащих этой схеме, относительной приспособленности схемы, а также порядка и охвата схемы. Заметно, что схемы с приспособленностью выше средней и с малым порядком и охватом характеризуются возрастанием количества своих представителей в последующих популяциях. Подобный рост имеет показательный характер, что следует из выражения (4.9). Для больших популяций эту формулу можно заменить рекуррентной зависимостью вида [33]

.                       (4.13)

Если допустить, что схема  имеет приспособленность на  выше средней, т.е.

,                 (4.14)

то при подстановке выражения (4.12) в неравенство (4.11) в предположении, что  не изменяется во времени, при старте от  получаем

,

,                       (4.15)

т.е.  для схемы с приспособленностью выше средней и  - в противном случае.

Равенство (4.15) описывает геометрическую прогрессию. Из этого следует, что в процессе репродукции схемы, оказавшиеся лучше (хуже) средних, выбираются на очередных итерациях генетического алгоритма в показательно возрастающих (убывающих) количествах. Обратим внимание, что зависимости (4.9) - (4.13) основаны на предположении, что функция приспособленности  принимает только положительные значения. При использовании генетических алгоритмов для решения оптимизационных задач, в которых целевая функция может принимать и отрицательные значения, необходимы некоторые дополнительные соотношения между оптимизируемой функцией и функцией приспособленности. Конечный результат, получаемый из выражений (4.10) - (4.12), можно сформулировать в форме теоремы. Это основная теорема генетических алгоритмов, иначе называемая теоремой о схемах [21].

Теорема 4.1

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

В соответствии с приведенной теоремой важным вопросом становится кодирование, которое должно обеспечивать построение схем малого порядка, с малым охватом и с приспособленностью выше средней. Косвенным результатом теоремы 4.1 (о схемах) можно считать следующую гипотезу, называемую гипотезой о кирпичиках (либо о строительных блоках) [15, 33].

Гипотеза 4.1

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

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

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

Обратимся снова к примерам 4.4 и 4.5 и на их основе проанализируем обработку схем генетическим алгоритмом.

Пример 4.7

В условиях примера 4.4 рассмотрим схему

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

Длина , а охват и порядок схемы  составляют соответственно  и . В исходной популяции из примера 4.4 схеме  соответствуют две следующие хромосомы:

.

Из формулы (4.10) следует, что после селекции и скрещивания количество хромосом, соответствующих схеме , должно быть больше или равно 2,5. Напомним, что вероятности скрещивания и мутации считаются равными соответственно  и . Приспособленность схемы  в исходной популяции, обозначаемая , равна 8 и превышает среднюю приспособленность всех хромосом этой популяции , что легко рассчитать по формулам (4.6) - (4.8).

В примере 4.4 после селекции и скрещивания в новой популяции получены четыре хромосомы, соответствующие схеме :

.

Приспособленность схемы  в новой популяции, т.е. , составит 8,25, тогда как средняя приспособленность хромосом этой популяции , что также следует из формул (4.6) - (4.8). Новая популяция характеризуется большим средним значением функции приспособленности особей по сравнению с предыдущей (исходной) популяцией, что уже отмечалось в примере 4.4. Кроме того, в новой популяции приспособленность схемы  оказывается лучшей, а количество представителей этой схемы - большим по сравнению с предыдущей популяцией.

Пример 4.8

В условиях примера 4.5 рассмотрим схему

и проследим ее обработку при выполнении генетического алгоритма.

В этом случае , а охват и порядок схемы  составляют  и  соответственно. В исходной популяции из примера 4.5 этой схеме соответствуют три хромосомы

.

Приспособленность схемы  в исходной популяции  и превышает среднюю приспособленность особей этой популяции , что следует из выражений (4.6) - (4.8). На основе формулы (4.9) легко рассчитать ожидаемое количество хромосом родительского пула, соответствующих схеме . Оно составит . В примере 4.5 по результатам селекции в родительский пул включены 6 таких хромосом: , , , , , . Ожидаемое количество хромосом, соответствующих схеме , после скрещивания с вероятностью  (вероятность мутации ), как легко рассчитать по формуле (4.10), должно превышать 5,58. В новую популяцию включены 6 представителей схемы . Это все хромосомы данной популяции.

Пример 4.9

В условиях примера 4.5 рассмотрим схему

и проследим ее обработку при выполнении генетического алгоритма.

Длина , а охват и порядок схемы  составляют  и  соответственно. В исходной популяции из примера 4.5 этой схеме соответствует одна хромосома

.

Поэтому приспособленность схемы  в исходной популяции равна функции приспособленности хромосомы  и составляет 1683. Она превышает среднюю приспособленность особей исходной популяции, равную 589. По формуле (4.9) рассчитываем ожидаемое количество хромосом родительского пула, соответствующих схеме . Оно составит . В примере 4.5 по результатам селекции в родительский пул включены 3 одинаковых хромосомы , соответствующих схеме . Ожидаемое количество хромосом в новой популяции, соответствующих схеме , после скрещивания с вероятностью  (вероятность мутации ), должно превышать 5,58. В примере 4.5 в новую популяцию включены 3 хромосомы, соответствующих схеме . Это

.

Пример 4.10

В условиях примера 4.5 рассмотрим схему

и проследим ее обработку при выполнении генетического алгоритма.

Длина , а охват и порядок схемы  составляют  и  соответственно. В исходной популяции из примера 4.5 этой схеме соответствуют три хромосомы

.

В отличие от примеров 4.8 и 4.9 приспособленность схемы  в исходной популяции оказывается меньше средней приспособленности особей этой популяции  и составляет . Ожидаемое количество хромосом родительского пула, соответствующих схеме  и рассчитанное по формуле (4.9), равно . В примере 4.5 в родительский пул была включена одна хромосома , соответствующая схеме . На основе формулы (4.10) получаем значение 1,068, определяющее количество представителей схемы  в новой популяции. В примере 4.5 после скрещивания с вероятностью  (вероятность мутации ) в новую популяцию была включена одна хромосома, соответствующая схеме , т.е. .

Пример 4.11

В условиях примера 4.5 рассмотрим схему

и проследим ее обработку при выполнении генетического алгоритма.

Длина , а охват и порядок схемы  составляют  и  соответственно. В исходной популяции из примера 4.5 этой схеме соответствует только одна хромосома

.

Поэтому приспособленность схемы  в исходной популяции равна значению функции приспособленности хромосомы  и составляет 129. Аналогично примеру 4.10, она меньше средней приспособленности особей начальной популяции, которая равна 589. Ожидаемое количество представителей схемы  в родительском пуле составляет , что следует из формулы (4.9). В примере 4.5 родительский пул (после селекции) не содержит ни одной хромосомы, соответствующей схеме . При расчете ожидаемого количества представителей схемы  в новой популяции по формуле (4.10) для вероятности скрещивания  и вероятности мутации  получаем значение 0,165. В примере 4.5 после скрещивания в новую популяцию не была включена ни одна хромосома, соответствующая схеме .

Из примеров 4.7 - 4.11, посвященных обработке схем, можно сделать следующие выводы. Эти примеры иллюстрируют основную теорему генетических алгоритмов - теорему о схемах. Они затрагивают обработку схем низкого (малого) порядка с малым охватом. Примеры 4.7 - 4.9 демонстрируют увеличение количества представителей данной схемы в следующем поколении для случая, когда приспособленность этой схемы превышает среднюю приспособленность всех особей популяции. Примеры 4.10 и 4.11 показывают ситуацию, когда приспособленность схемы оказывается меньше средней приспособленности особей популяции. Количество представителей таких схем в следующих поколениях не увеличивается, а наоборот - наблюдается уменьшение количества соответствующих им хромосом.

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

Графическая интерпретация схем, обсуждавшихся в примерах 4.8 и 4.11, представлена на рис. 4.9; аналогичным образом можно проиллюстрировать схемы из примеров 4.9 и 4.10, равно как и любые другие.

148.jpg

Рис. 4.9. Графическое представление схем для целочисленных значений  от 0 до 31, закодированных в форме 5-битовых двоичных последовательностей для оптимизации функции  (примеры 4.5, а также 4.8 и 4.11).

На рис. 4.9 видно, что к схеме 1**** (пример 4.8) в исходной популяции из примера 4.5 принадлежат хромосомы ,  и  с фенотипами 19, 21, 29 соответственно, а после селекции и скрещивания к этой схеме уже принадлежат все включенные в новую популяцию хромосомы, т.е. , , , ,  и  с фенотипами 17, 23, 21, 29, 29, 29 соответственно. В то же время к схеме *10** (пример 4.11) в исходной популяции из примера 4.5 принадлежит только одна хромосома , фенотип которой равен 8; в следующей популяции уже нет ни одной хромосомы, принадлежащей этой схеме. Обратим внимание (рис. 4.9), что оптимальное решение, которое максимизирует функцию, заданную выражением (4.1), принадлежит к схеме 1* - и не соответствует схеме *10**.

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

Количество эффективно обрабатываемых схем, рассчитанное Холландом [21], составляет . Это означает, что для популяции мощностью  количество обрабатываемых в каждом поколении схем имеет порядок .

Следует упомянуть о том, что в последнее время теорема Холланда о схемах и следующие из нее оценки количества схем, обрабатываемых генетическим алгоритмом, вызывают в научной среде определенные возражения [37].

 



<< Предыдущая Оглавление Следующая >>