Оглавление
Предисловие . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Предисловие к русскому изданию . . . . . . . . . . . . . . . . . . . . . . . 12
1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Список литературы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2. Многослойные нейронные сети и алгоритмы их обучения 18
2.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2. Нейрон и его модели . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3. Персептрон . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4. Системы типа Адалайн . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.4.1. Линейный взвешенный сумматор . . . . . . . . . . . . . . . 26
2.4.2. Адаптивный линейный взвешенный сумматор . . . . . 30
2.4.3. Адаптивный линейный взвешенный сумматор
с сигмоидой на выходе . . . . . . . . . . . . . . . . . . . . . . . 31
2.5. Алгоритм обратного распостранения ошибки . . . . . . . . . . 33
2.6. Применение рекуррентного метода наименьших квадратов
для обучения нейронных сетей . . . . . . . . . . . . . . . . . . . . . 37
Список литературы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3. Нечеткие множества и нечеткий вывод . . . . . . . . . . . . . . . . 45
3.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.2. Основные понятия и определения теории нечетких
множеств . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.3. Операции на нечетких множествах . . . . . . . . . . . . . . . . . . . 56
3.4. Принцип расширения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.5. Нечеткие числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.6. Треугольные нормы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.7. Нечеткие отношения и их свойства . . . . . . . . . . . . . . . . . . 78
3.8. Нечеткий вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
3.8.1. Основные правила вывода в двоичной логике. . . . . . 89
3.8.2. Основные правила вывода в нечеткой логике. . . . . . 90
3.8.2.1. Обобщенное нечеткое правило modus ponens. . . 90
3.8.2.2. Обобщенное нечеткое правило modus tollens . . . 93
3.8.3. Правила нечеткой импликации. . . . . . . . . . . . . . . . . . 94
3.9. Нечеткое управление . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
3.9.1. Классический модуль нечеткого управления . . . . . . 98
3.9.1.1. База правил . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
3.9.1.2. Блок фуззификации . . . . . . . . . . . . . . . . . . . . . . 100
3.9.1.3. Блок выработки решения . . . . . . . . . . . . . . . . . . 100
3.9.1.4. Блок дефуззификации . . . . . . . . . . . . . . . . . . . . . 111
3.9.2. Метод нечеткого управления Такаги-Сугено . . . . . . . 112
3.10. Проектирование базы нечетких правил на основе
численных данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
3.10.1. Построение нечетких правил . . . . . . . . . . . . . . . . . 116
3.10.2. Задача парковки грузовика . . . . . . . . . . . . . . . . . . . 121
3.10.3. Примечание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Список литературы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
4. Генетические алгоритмы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
4.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
4.2. Генетические алгоритмы и традиционные методы
оптимизации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
4.3. Основные понятия генетических алгоритмов . . . . . . . . . . 132
4.4. Классический генетический алгоритм . . . . . . . . . . . . . . . . 136
4.5. Иллюстрация выполнения классического генетического
алгоритма . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
4.6. Кодирование параметров задачи в генетическом алгоритме 145
4.7. Основная теорема о генетических алгоритмах . . . . . . . . . 150
4.8. Модификации классического генетического алгоритма . . . 163
4.8.1. Методы селекции . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
4.8.2. Особые процедуры репродукции . . . . . . . . . . . . . . . 166
4.8.3. Генетические операторы . . . . . . . . . . . . . . . . . . . . . . 167
4.8.4. Методы кодирования . . . . . . . . . . . . . . . . . . . . . . . . . 169
4.8.5. Масштабирование функции приспособленности . . . . 170
4.8.6. Ниши в генетическом алгоритме . . . . . . . . . . . . . . . . 172
4.8.7. Генетические алгоритмы для многокритериальной
оптимизации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
4.8.8. Генетические микроалгоритмы . . . . . . . . . . . . . . . . . . 175
4.9. Примеры оптимизации функции с помощью программы
FlexTool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
4.10. Эволюционные алгоритмы . . . . . . . . . . . . . . . . . . . . . . . . 212
4.11. Приложения эволюционных алгоритмов . . . . . . . . . . . . . . 219
Оглавление Оглавление
4.11.1. Примеры оптимизации функции с помощью
программы Evolver . . . . . . . . . . . . . . . . . . . . . . . . . 220
4.11.2. Решение комбинаторных задач с помощью
программы Evolver . . . . . . . . . . . . . . . . . . . . . . . . . 250
4.12. Эволюционные алгоритмы в нейронных сетях . . . . . . . . 254
4.12 1. Независимое применение генетических алгоритмов
и нейронных сетей . . . . . . . . . . . . . . . . . . . . . . . . . 256
4.12.2. Нейронные сети для поддержки генетических
алгоритмов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
4.12.3. Генетические алгоритмы для поддержки
нейронных сетей . . . . . . . . . . . . . . . . . . . . . . . . . . 257
4.12.4. Применение генетических алгоритмов для
обучения нейронных сетей . . . . . . . . . . . . . . . . . . . 260
4.12.5. Генетические алгоритмы для выбора топологии
нейронных сетей . . . . . . . . . . . . . . . . . . . . . . . . . . 260
4.12.6. Адаптивные взаимодействующие системы . . . . . . 261
4.12.7. Типовой цикл эволюции . . . . . . . . . . . . . . . . . . . . . 261
4.12.7.1. Эволюция весов связей . . . . . . . . . . . . . . . . . . . 263
4.12.7.2. Эволюция архитектуры сети . . . . . . . . . . . . . . . 265
4.12.7.3. Эволюция правил обучения . . . . . . . . . . . . . . . 268
4.13. Примеры моделирования эволюционных алгоритмов
в приложении к нейронным сетям . . . . . . . . . . . . . . . . . . 270
4.13.1. Программы Evolver и BrainMaker . . . . . . . . . . . . . . 272
4.13.2. Программа GTO . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
Список литературы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
5. Модули нечетко-нейронного управления . . . . . . . . . . . . . . . . 307
5.1. Модуль нечеткого управления со структурой,
определенной в процессе дефуззификации . . . . . . . . . . . 308
5.1.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
5.1.2. Конструкция модуля . . . . . . . . . . . . . . . . . . . . . . . . . 309
5.1.3. Структура модуля . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
5.1.4. Использование алгоритма обратного
распространения ошибки . . . . . . . . . . . . . . . . . . . . . 313
5.1.5. Модификации модуля . . . . . . . . . . . . . . . . . . . . . . . 320
5.1.6. Применение модуля нечеткого управления для
прогнозирования случайных временных рядов . . . . 322
5.1.7. Применение модуля нечеткого управления для
решения задачи парковки грузовика . . . . . . . . . . . . . 326
5.1.8. Примечание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
5.2. Представление модуля нечеткого управления в виде
стандартной нейронной сети . . . . . . . . . . . . . . . . . . . . . . . 330
5.3. Модуль нечеткого управления с нейронной сетью для
выполнения дефуззификации . . . . . . . . . . . . . . . . . . . . . . 333
5.3.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
5.3.2. Конструкция модуля . . . . . . . . . . . . . . . . . . . . . . . . . 334
5.3.3. Структура модуля . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
5.3.4. Алгоритмы обучения модуля . . . . . . . . . . . . . . . . . . 337
5.3.5. Решение задачи стабилизации перевернутого
маятника . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
5.3.6. Примечание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
5.4. Модуль нечеткого управления с возможностью коррекции
правил . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
5.4.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
5.4.2. Фаза обучения на основе самоорганизации . . . . . . 349
5.4.3. Фаза обучения с учителем . . . . . . . . . . . . . . . . . . . . 354
5.4.4. Примечание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
5.5. Модуль нечеткого управления типа Такаги-Сугено:
случай независимых лингвистических переменных . . . . . . 356
5.5.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
5.5.2. Нейронная реализация функции принадлежности . . 357
5.5.3. Модули Такаги-Сугено . . . . . . . . . . . . . . . . . . . . . . . 359
5.5.4. Реализация условий . . . . . . . . . . . . . . . . . . . . . . . . . 359
5.5.5. Реализация заключений . . . . . . . . . . . . . . . . . . . . . . 361
5.5.6. Примечание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
5.6. Модуль нечеткого управления типа Такаги-Сугено:
случай зависимых лингвистических переменных . . . . . . . 365
5.6.1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
5.6.2. Нейронные сети для нечеткого вывода . . . . . . . . . . 366
5.6.3. Структура системы . . . . . . . . . . . . . . . . . . . . . . . . . . 368
5.6.4. Способ обучения . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
5.6.5. Решение задачи парковки грузовика . . . . . . . . . . . . 374
5.6.6. Примечание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
Список литературы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Предметный указатель . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381