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

книги / Нечёткое, нейронное и гибридное управление

..pdf
Скачиваний:
5
Добавлен:
12.11.2023
Размер:
3.91 Mб
Скачать

непрерывным диапазоном значений, а компоненты вектора цели бинарными числами (0,1).

Обучение реализуется следующим образом [9]:

всем весам сети задаются малые значения;

на вход сети подаются компоненты входного обучающего

вектора X и вычисляются сигналы выхода сети:

NETj xi wij ;

– вычисляются значения пороговых функций активации для сигнала NET от каждого нейрона:

1,

если NET Qj ,

OUTj

впротивномслучае,

0,

где Qj – порог нейрона сети;

– вычисляются ошибки для каждого нейрона errorj t arg et j OUTj ;

– вычисляется новый вес

wij (t 1) wij (t) xi errorj .

Далее процедура повторяется, пока ошибка не станет достаточно малой.

2.5.2. Генетические алгоритмы

Недостатком нейронных сетей является значительное время на ее обучение. Это связано с большим размером матрицы весов НС и выбором их начальных значений. Задача генетического алгоритма (ГА) оптимизировать поиск начальных значений матрицы весов и этим существенно сократить время обучения НС [6].

В общем случае ГА – стохастические, эвристические и оптимизационные методы, которые основаны на идее эволюции с помощью естественного отбора, выдвинутой Дарвином (1857). ГА впервые были предложены в 1975 г. (через 118 лет) Дж. Холландом. Есть вычислительная технология, которая используется в системах

171

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

Эволюция – процесс оптимизации всех живых организмов. Механизм эволюции – естественный отбор.

Естественный отбор – процесс формирования новой популяции из старой популяции, которая в дальнейшем погибает. В природе наблюдается быстрая обработка информации в нервной системе и медленный процесс естественной эволюции. Современные ЭВМ снимают это противоречие, т.е. ускоряют процесс эволюции.

Популяция – конечное множество особей (организмов). Функция приспособления (функция оценки) указывает меру

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

Хромосома – дезоксирибонуклеиновая кислота (ДНК) в оболочке или упорядоченная последовательность генов. В дальнейшем хромосома будет представляться как вектор (последовательность) из нулей и единиц.

ДНК – цепочка, состоящая из молекул нуклеотидов четырех типов (F,N,C,G), которые, располагаясь особым образом, определяют код индивидуума.

Ген – определенная часть хромосомы.

Клетки человека имеют 46 хромосом. Длина хромосомы у человека может состоять из 100000 генов, хотя их точное число неизвестно. Каждое врожденное качество особи (цвет глаз, наследственные болезни и т.д.) кодируются определенной частью хромосомы. Например, ген цвета глаз содержит информацию, кодирующую цвет глаз.

Аллель – различные значения гена. Генотип – набор хромосом данной особи.

Фенотип – набор значений, соответствующих данному генотипу. Локки – множество позиций генов.

Кроссовер – скрещивание ДНК предков и образование ДНК потомка.

172

Мутация – случайное (стохастическое) изменение одной или нескольких позиций в хромосоме под действием радиации или других влияний.

Возможно независимое применение варианта ГА и НС для решения одной и той же задачи (рис. 2.17), а также вспомогательное применение варианта ГА и НС, когда они дополняют друг друга

(рис. 2.18).

Рис. 2.17. Варианты независимых вычислительных технологий

Рис. 2.18. Варианты вспомогательных объединений вычислительных технологий

173

В первом варианте НС предназначена для поддержки ГА. НС формирует исходную популяцию для ГА.

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

Гибридный подход состоит в объединении методов ГА и ОРО для подбора весов НС. Как правило, вначале при помощи ГА находится решение (начальное значение весов), достаточно близкое к оптимальным значениям с помощью программы Evolver, затем оно рассматривается как отправная точка для традиционного поиска весов, например, ОРО с помощью программы Brein Maker.

Рассмотрим НС как отправную точку для традиционного поиска оптимальной точки весов, например ОРО с помощью программы

Brein Maker (рис. 2.19).

Оптимальный первоначальый набор весов НС выберем с помощью ГА (программа Evolver) [39] (рис. 2.20).

Рис. 2.19. Нейронная сеть

Допустим, что веса могут принимать значения в интервале от –10

до +10.

Для этого необходимо обеспечить:

кодирование хромосом табличным методом;

определение функции приспособления хромосом;

174

расчет выхода НС из начальных значений хромосом;

селекцию начальных хромосом методом рулетки;

формирование новой популяции хромосом с помощью оператора «скрещивание»;

кодирование новой популяции хромосом;

определение функций приспособления новой популяции хромосом;

расчет выхода НС с новыми значениями хромосом;

сравнение значения старого выхода НС с новым значением выхода НС и т.д.

Рис. 2.20. Блок-схема ГА

175

Рассмотрим подробно работу ГА.

Пример 2.4. Найти хромосому с максимальным количеством единиц, где хромосомы состоят из 12 генов, а популяция насчитывает 8 хромосом. Тогда лучшая хромосома должна содержать 12 единиц.

Инициализация

Необходимо случайным образом сгенерировать 8 двоичных последовательностей (хромосом) длиной 12 бит. Этого можно достигнуть, например, подбрасыванием монет 8 12 96 раз, где при выпадании «орла» – 1, выпадении «решка» – 0. Таким образом,

сформируем исходную популяцию.

Ch1 111001100101 ;

Ch2 001100111010 ;

Ch3 011101110011 ;

Ch4 001000101000 ;

Ch5 010001100100 ;

Ch6 010011000101 ;

Ch7 101011011011 ;

Ch8 000010111100 .

Оценка приспособленности хромосом в популяции

Функция приспособленности F определяется количеством единиц в хромосоме. Тогда оценка приспособленности для каждой хромосомы в исходной популяции будет такой:

F(Ch1 ) 7;

F(Ch2 ) 6;

176

F(Ch3 ) 8;

F(Ch4 ) 3;

F(Ch5 ) 4;

F(Ch6 ) 5;

F(Ch7 ) 8;

F(Ch8 ) 5.

Хромосомы Ch3 и Ch7 имеют наибольшее значение функции

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

Селекция

Селекция хромосом с помощью рулетки проводится на основании формулы

v(Chi ) NF(Chi ) 100 %.

F(Chi )

i 1

Селекция хромосом может быть представлена как результат поворота «рулетки», поскольку «выигрышная» хромосома относится к выпавшему сектору этого «колеса». Чем больше сектор, тем больше вероятность победы соответствующей хромосомы. Вероятность выбора данной хромосомы оказывается пропорциональной значению ее функции приспособленности. Выбор с помощью «колеса рулетки» сводится к выбору числа из интервала [0…100], который соответствует конкретной точке на окружности колеса. В результате селекции создается родительская популяция (родительский пул) с численностью N = 8, равной текущей популяции.

177

«Метод рулетки» отбирает особи с помощью N = 8 «запусков» рулетки. «Колесо рулетки» содержит по одному сектору для каждого члена популяции. Размер i-сектора пропорционален соответствующей величине v(Chi ). При таком отборе члены популяции,

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

Для нашего примера получим

v(Ch1 ) 15,22 %; v(Ch2 ) 13,04 %; v(Ch3 ) 17,39 %; v(Ch4 ) 6,52 %; v(Ch5 ) 8,7 %; v(Ch6 ) 10,87 %; v(Ch7 ) 17,39 %; v(Ch8 ) 10,87 %.

На рис. 2.21 показано «колесо рулетки».

 

Ch3

26,28 Ch2

 

 

 

 

 

15,22

 

 

 

 

13,04

 

 

 

 

17,39

 

 

Ch1

 

45,65

 

15,22

 

 

 

 

 

 

 

 

 

 

Ch4

6,52

 

10,87

0,100

 

Ch

 

 

 

 

 

 

8,7

 

 

 

8

52,17

 

17,39

 

89,13

 

 

 

 

 

Ch5

 

10,87

 

 

 

 

 

Ch

 

 

 

 

 

 

 

60,87 Ch 71,74

 

7

 

 

 

 

 

 

 

 

 

 

 

6

 

 

 

 

Рис. 2.21. «Колесо рулетки»

178

Селекция хромосом турнирного метода реализуется N турнирами для выбора N особей. Каждый турнир построен на выборе k элементов из популяцииивыборе лучшейособиизних. Обычно k = 2.

Выбор новой популяции особей с помощью скрещивания и мутации

Оператор «скрещивание» осуществляет обмен частями хромосом между двумя (может быть и больше) хромосомами. При одноточечном скрещивании случайным образом выбирается одна из l 1 -точек разрыва. Обе родительские структуры разрываются на два сегмента по этой точке. Затем соответствующие сегменты различных родителей склеиваются и получаются два генотипа потомков. На рис. 2.22 показан одноточечный оператор скрещивания (точка разрыва 3).

 

 

 

 

 

 

 

 

 

 

 

 

0

1

 

 

1

0

1

 

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0

0

1

0

 

1

0

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 2.22. Одноточечный оператор скрещивания

При многоточечном скрещивании точек разрыва может быть больше.

Пример генетического алгоритма

Начало (генетический алгоритм); Создать начальную популяцию;

Оценить приспособленность каждой точки (хромосомы); Если популяция не сошлась, то окончанию ГА – нет; Начало (создать популяцию нового поколения); Выполнить селекцию (размер популяции 1/2) раз;

Начало (цикл воспроизводства);

179

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

Оценить приспособленность потомков; Поместить потомков в новое поколение; Конец; Если популяция сошлась, то окончанию ГА – да;

Конец; Конец.

2.6. Алгоритмы обучения нейронной сети без учителя

Обучение без учителя предполагает, что при предъявлении входных образов сеть самоорганизуется, настраивая свои веса согласно определенному алгоритму. Требуемый выход в процессе обучения не указан, поэтому результаты определения возбуждающих образов для конкретных нейронов непредсказуемы. Однако существуют методы решения данной задачи: метод обучения Хэбба [9], метод обучения С. Гроссберга [9], самоорганизация (алгоритм Кохонена) [9].

Метод обучения Хэбба

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

wij (t 1) wij (t) NETi NETj ,

где wij (t) – сила синапса от нейрона i к нейрону j в момент времени t; NETi – уровень возбуждения пресинаптического нейрона i; NETj – уровень возбуждения постсинаптического нейрона j.

NETj OUTi wij ,

i

где NETj – выход NET нейрона j; OUTi – выход нейрона i.

180