Тихонов Андрей ЕвгеньевичИскусственные нейронные сети в задачах управления |
биография | библиотека | ссылки | результаты поиска |
Сегодня, как и сто лет назад, несомненно, что мозг работает более эффективно и принципиально другим образом, чем любая вычислительная машина, созданная человеком. Именно этот факт в течение стольких лет побуждает и направляет работы ученых всего мира по созданию и исследованию искусственных нейронных сетей (ИНС).
К первым попыткам раскрыть секрет высокой эффективности мозга можно отнести работу Рамон-и-Кахаля (1911) [1], в которой была высказана идея о нейроне как структурной единице мозга. Однако нейрон имеет на 5—6 порядков меньшую скорость срабатывания, чем полупроводниковый логический элемент. Как показали более поздние исследования, секрет высокой производительности мозга заключается в огромном количестве нейронов и массивных взаимосвязях между ними.
Сеть нейронов, образующая человеческий мозг, представляет собой высокоэффективную, комплексную, нелинейную, существенно параллельную систему обработки информации [2]. Она способна организовать свои нейроны таким образом, чтобы реализовать восприятие образа, его распознание или управление движением, во много раз быстрее, чем эти задачи будут решены самыми современными компьютерами [3].
ИНС является упрощенной моделью мозга. Она строится на основе искусственных нейронов, которые обладают тем же основным свойством, что и живые: пластичностью. Использование структуры мозга и пластичности нейронов делает ИНС универсальной системой обработки информации. В общем случае ИНС — это машина, моделирующая способ работы мозга. Обычно ИНС реализуются в виде электронных устройств или компьютерных программ. Среди многих можно выделить определение ИНС как адаптивной машины, данное в [4]: искусственная нейронная сеть — это существенно параллельно распределенный процессор, который обладает естественной склонностью к сохранению опытного знания и возможностью предоставления его нам. Она сходна с мозгом в двух аспектах: знание приобретается сетью в процессе обучения, для сохранения знания используются силы межнейронных соединений, называемые также синаптическими весами.
Процедура, используемая для осуществления процесса обучения, называется алгоритмом обучения. Ее функция состоит в модификации синаптических весов ИНС определенным образом так, чтобы она приобрела необходимые свойства.
Модификация весов является традиционным способом обучения ИНС. Такой подход близок к теории адаптивных линейных фильтров, которые уже давно и успешно применяются в управлении. Однако для ИНС существует еще и возможность модификации собственной топологии, основывающаяся на том факте, что в живом мозге нейроны могут появляться, умирать и менять свои связи с другими нейронами.
Из сказанного выше становится ясно, что ИНС реализуют свою вычислительную мощь, благодаря двум основным своим свойствам: существенно параллельно распределенной структуре и способности обучаться и обобщать полученные знания. Под свойством обобщения понимается способность ИНС генерировать правильные выходы для входных сигналов, которые не были учтены в процессе обучения (тренировки). Эти два свойства делают ИНС системой переработки информации, которая решает сложные многомерные задачи, непосильные другим техникам.
Если опустить чисто биологический этап, то можно сказать, что современная эпоха развития ИНС началась в 1943 году с пионерской работы Мак-Каллока и Питтса [5]. В этой работе Мак-Каллок и Питтс ввели понятие "порогового логического нейрона" и описали логическую модель ИНС.
В 1948 году была опубликована известная книга Винера "Кибернетика" [6], описывающая ряд важных концепций управления. В более поздних изданиях в нее были добавлены разделы, посвященные обучению, самоорганизации и нейрокибернетике.
Следующим событием, продвинувшим развитие ИНС, стал выход в свет книги Хебба [7], в которой впервые было представлено физиологическое обучающее правило модификации синапсов. Хебб предположил, что соединения в мозге непрерывно меняются по мере того, как организм обучается новым функциональным задачам, и что таким образом создаются нейронные ансамбли. Хебб следовал сделанному ранее предположению Рамон-и-Кахаля и ввел "постулат обучения", который гласит, что эффективность (усиление) переменного синапса между двумя нейронами увеличивается в процессе повторяющейся активации одного нейрона другим через этот синапс.
Книга Хебба стала настоящим источником вдохновения для создания обучающихся и адаптивных систем. Работы Рочестера, Холланда, Хейбта и Дуде в 1956 г. [8] были, наверное, первыми попытками использовать компьютерное моделирование для тестирования теории ИНС, базирующейся не постулате обучения Хебба. Полученные ими результаты показали, что не только активация, но и торможение должны присутствовать в процессе обучения. В тот же год Уитли [9] продемонстрировал, что ИНС с модифицируемыми синапсами может быть обучена классифицировать простые наборы бинарных шаблонов по соответствующим классам. В более поздней своей работе Уитли [10] также выдвинул гипотезу о том, что эффективность переменного синапса в нервной системе зависит от статистических взаимоотношений между изменяющимися состояниями с обеих сторон от синапса, тем самым проведя связь с информационной теорией Шеннона.
В 1952 году вышла в свет книга Эшби "Design for a Brain: The Origin of Adaptive Behavior" [11]. Одна из главных идей этой книги состоит в том, что адаптивное поведение живых систем не является наследственным, а скорее появляется в процессе обучения, и что обычно в процессе обучения поведение живых систем улучшается.
Важным моментом в истории ИНС было написание Минским в 1954 году докторской диссертации, посвященной ИНС [12]. В 1961 году он опубликовал статью "Steps Toward Artificial Intelligence" [13], которая была посвящена искусственному интеллекту и содержала большой раздел, посвященный тому, что сейчас называют ИНС.
Необходимо отметить огромную важность работ фон Неймана по созданию цифровых компьютеров для развития всего кибернетического направления. Особое значение для теории ИНС имела его идея избыточности, которая подтолкнула Винограда и Коуэна (1963) [14] к созданию распределенного избыточного представления ИНС.
Примерно 15 лет спустя появления эпохальной статьи Мак-Каллока и Питтса, в 1958 году Розенблатт в своей работе, посвященной перцептрону [15], предложил новый подход к решению задачи распознания шаблонов. В ней он ввел так называемую теорему о сходимости перцептрона, доказательство которой появилось лишь в 1960 году. В 1960 Видроу и Хофф предложили метод наименьших квадратов и использовали его для описания Adaline [16]. Основное различие между перцептроном и Adaline лежало в процедурах их обучения.
Одной из первых обучаемых ИНС со слойной структурой был Madaline, предложенный Видроу и его студентами в 1962 г. [17]. Не менее важным событием было введение в 1967 Коуэн сигмоидальной активационной функции для модели логического нейрона [18].
В течение классического периода перцептрона 60-х годов казалось, что ИНС могут делать все. Однако в 1969 вышла книга Минского и Пейперта [19], в которой строго математически было доказано существование фундаментальных ограничений возможностей однослойного перцептрона. Также было показано, что однослойная сеть любой размерности не может решать задачи доступные многослойным конфигурациям.
Для многослойных перцептронов десятилетие 70-х не принесло ничего нового. Это было связано отчасти с низким уровнем финансирования работ, отчасти с отсутствием персональных компьютеров. Негативное влияние оказало также не подтвердившееся позже мнение об аналогии между спиновыми стеклами и ИНС. С другой стороны, в это же время были получены значительные результаты в развитии самоорганизующихся карт на базе соревновательного обучения. В 1976 году фон Мальсбург и Вильшоу опубликовали первую работу [20] по самоорганизующимся картам, продемонстрировав действующую самоорганизующуюся ИНС.
С начала 80-х наступил новый период в развитии ИНС. Основными событиями были разработка Хопфилдом ИНС с полностью связанной структурой и оригинальным алгоритмом настройки весов. В 1982 в продолжение исследований фон Мальсбурга выходит работа Кохонена [21], посвященная самоорганизующимся картам. Но настоящий прорыв в применении ИНС для решения практических задач (в том числе и управления) был сделан после того, как в 1986 году Румельхарт, Хинтон и Вильямс [22] описали алгоритм обратного распространения. Это был первый эффективный алгоритм обучения многослойных перцептронов любой структуры (и, как оказалось позже, не только их).
Интересно, что в еще 1985 г. независимо вышли две работы Паркера [23] и Ле-Кана [24] с описанием алгоритма обратного распространения. Однако оказалось, что впервые этот алгоритм был детально описан в 1974 в докторской диссертации Вербоса [25]. К сожалению, тогда на него никто не обратил внимания, и потребовалось более десяти лет, чтобы эта простая, но изящная схема была переоткрыта.
В 1988 г. произошло последнее на сегодняшний день крупное открытие в теории ИНС, связанное с введением Брумхедом и Лоуе [26] РБФ-сетей. Это — альтернативная многослойному перцептрону схема слойной прямонаправленной сети, использующая скрытые нейроны с радиально-базисной активационной функцией. Идеологически идея радиально-базисных функции связана с методом потенциальных функций, предложенным в 1964 г. Башкировым, Браверманом и Мучником [27]. В своих работах Брумхед и Лоуе не только предложили новый метод синтеза ИНС, но и уделили огромное внимание установлению связей между ИНС и классическими методами численного анализа, а также теорией линейных адаптивных фильтров.
В общем случае понятие “искусственная нейронная сеть” охватывает ансамбли нейронов любой структуры, однако практическое применение нашли только некоторые из них. Это объясняется тем, что архитектура ИНС непосредственно связана с методом ее обучения. Даже различные этапы развития ИНС определялись появлением новых архитектур сетей и специально разработанных для них методов обучения.
Искусственный нейрон (или просто нейрон) является элементарным функциональным модулем, из множества которых строятся ИНС. Он представляет собой модель живого нейрона, однако лишь в смысле осуществляемых им преобразований, а не способа функционирования. Существуют логические, непрерывные и импульсные [28] модели нейрона. Логические модели нейрона (в частности, описываемый картой Вена формальный нейрон) активно исследовались в 60—70-х годах, но не получили дальнейшего развития. Импульсные модели более близки к физической природе процессов, происходящих в нервной клетке, однако их теория не так развита как у непрерывных, и они все еще не находят широкого применения.
Нейрон (рис.1) состоит из:
Рисунок 1 Формальный нейрон
Формальный нейрон реализует передаточную функцию:
Из формальных нейронов можно составлять слои нейронов, которые в свою очередь можно объединять в многослойные сети (рис.2). Нейроны входного слоя получают сигналы, преобразуют их и через точки ветвления передают нейронам скрытого слоя. Далее срабатывает следующий слой вплоть до выходного, который выдает сигналы для интерпретатора и пользователя. Каждый вывод нейронов любого слоя подается на вход всех нейронов следующего слоя. Число нейронов в слое может быть любым.
Рисунок 2 Искусственная нейронная сеть
ИНС могут обучаться, то есть улучшать свою работу под воздействием окружающей среды, изменяющей ее параметры. Существует множество определений термина "обучение", однако применительно к ИНС наиболее подходит следующее, данное Менделем и Маклареном в [29]: обучение - это процесс, при котором свободные параметры нейронной сети адаптируются в результате ее непрерывной стимуляции внешним окружением. Тип обучения определяется тем способом, которым производятся изменения параметров.
В современной литературе кроме термина "обучение" также используются равноправные понятия "тренировка сети" и "настройка параметров сети".
При решении задач управления обычно используется контролируемое обучение ИНС, которое подразумевает наличие "учителя", который наблюдает реакцию сети и направляет изменения ее параметров.
Существует две разновидности контролируемого обучения: прямое контролируемое обучение и стимулируемое обучение. Так как первый вид появился раньше второго и более распространен, то обычно на него ссылаются просто как на контролируемое обучение.
ИНС изначально никакими знаниями не обладает. В процессе обучения "учитель" и сеть подвергаются воздействию со стороны внешней среды, то есть на их входы поступает тренировочный сигнал, совпадающий с одним из входных шаблонов. "Учитель" сообщает сети, какова должна быть правильная (желаемая) реакция на поступившее воздействие, выдавая соответствующий выходной шаблон. На основании величины ошибки между реальным и желаемым выходами сети по определенному правилу проводится настройка ее параметров. Повторяя этот процесс итеративно можно настроить ИНС так, что она будет эмулировать "учителя", то есть его знания о внешней среде перейдут к ней.
Типичными задачами, решаемыми с помощью прямого обучения, являются аппроксимация неизвестной функции, описываемой набором данных, и идентификация динамического объекта. В этих задачах известны входные сигналы и правильная реакция на них, то есть тренировочный набор шаблонов.
Наиболее известным методом прямого контролируемого обучения слойных прямонаправленных ИНС является алгоритм обратного распространения ошибки (backpropagation algorithm) [30], представляющий собой обобщение метода наименьших квадратов.
Стимулируемое обучение не использует знания "учителя" о желаемом выходе ИНС, вместо этого обучение проводится по результату оценки проводимого сетью преобразования вход-выход. Оценку выполняет внешнее окружение после подачи на вход сети тренировочного воздействия. При этом настройка параметров ИНС проводится так, чтобы максимизировать скалярный индекс этой оценки, называемый стимулом (reinforcement signal).
Идея такого способа опирается на реальный процесс обучения, проходящий у живых существ. В психологии он известен, как закон действия Торндайка. Применительно к стимулируемому обучению ИНС этот закон может быть перефразирован следующим образом [31]: если действие, предпринятое системой обучения, приводит к удовлетворительному результату, то тенденция системы проводить это же действие увеличивается (система стимулируется). В противном случае тенденция производить такое действие уменьшается.
Наиболее характерным примером системы стимулируемого обучения является адаптивная система управления. В ней обучаемой частью является контроллер, а объект управления, внешние воздействия и сигналы задания выступают его внешней средой. В результате воздействия из этой среды контроллер вырабатывает определенный управляющий сигнал, который переводит объект управления в новое состояние. При этом качество управления можно оценить лишь по выходному сигналу объекта. Так как требуемая реакция контроллера, обеспечивающая заданное состояние объекта, заранее неизвестна, то нельзя сформировать тренировочный набор шаблонов, и, следовательно, применить прямое контролируемое обучение. В этом случае возможно лишь стимулируемое обучение контроллера по качеству работы всей системы управления в целом, то есть по оценке состояния внешней среды.
Возможны две реализации стимулируемого обучения: с непосредственным стимулированием и с задержанным стимулированием. В первом случае оценка работы и соответствующая ей настройка параметров ИНС проводится на каждом шаге работы системы обучения. Во втором случае, при задержанном стимулировании настройка сети выполняется так, чтобы максимизировать кумулятивную оценку работы системы на определенной последовательности шагов.
Хотя непосредственное стимулирование более свойственно классическим схемам адаптивного управления, в последнее время большое внимание уделяется методам задержанного стимулирования. Для сходимости метода непосредственного стимулирования необходимо, чтобы каждое последующее положение внешней среды определялось лишь ее предыдущим положением и предыдущим воздействием, оказанным ИНС [30]. При задержанном обучении такое ограничение снимается. С другой стороны, гораздо проще сформулировать критерий определяющий оптимальное поведение системы управления в целом, по результатам какого-то действия, чем критерий, направляющий ее движение на каждом шагу. В общем, можно заметить, что система, обучающаяся лишь по результатам своего взаимодействия с внешней средой, является более интеллектуальной, чем использующая дополнительную информацию "учителя".
Существует множество модификаций классического алгоритма обратного распространения ошибки для использования его как метода прямого или стимулируемого обучения ИНС. Однако существенной проблемой, возникающей при использовании его и других методов настройки параметров ИНС, основанных на методе наименьших квадратов или наискорейшего спуска, является их локальность. В то же время целевая функция (суммарная ошибка на тренировочном наборе шаблонов или кумулятивная оценка эффективности работы обучаемой системы) не унимодальная. Количество локальных оптимумов для большинства практических задач обучения исчисляется миллионами при размерности поискового пространства порядка 100-1000. Вследствие этого результат обучения зависит от правильности выбора стартовой точки, и возникает необходимость многократного повторения процедуры настройки параметров ИНС.
Перечисленные проблемы могут быть решены при использовании методов глобальной оптимизации. Наиболее эффективным из них является генетический алгоритм (ГА) [32]. Рассматривая ИНС как единый набор параметров, ГА способен осуществлять ее оптимальную настройку при размерности поискового пространства достаточной для решения большинства практических задач. При этом спектр рассматриваемых приложений гораздо превосходит возможности алгоритма обратного распространения ошибки [33].
В последние десять лет разработано множество способов контролируемого обучения ИНС с помощью ГА. Полученные результаты доказывают большие возможности такого симбиоза. Совместное использование ИНС и ГА алгоритмов имеет и идеологическое преимущество потому, что они относятся к методам эволюционного моделирования и развиваются в рамках одной парадигмы заимствования техникой природных методов и механизмов как наиболее оптимальных.
Управление каким-либо объектом – это процесс воздействия на него с целью обеспечения требуемого течения процессов в объекте или требуемого изменения состояния. Основой управления является получения и обработка информации о состоянии объекта и внешних условиях его работы для определения воздействий, которые необходимо приложить к объекту, чтобы обеспечить достижение цели управления.
Управление, осуществляемое без участия человека, называется автоматическим управлением. Устройство, с помощью которого осуществляется управление, называется управляющим устройством. Совокупность объекта управления и управляющего устройства образует систему автоматического управления (САУ) (рис.3).
Рисунок 3 Блок-схема системы автоматического управления
Состояние объекта характеризуется выходной величиной Х. От управляющего устройства на вход объекта поступает управляющее воздействие U. Помимо управляющего воздействия, к объекту приложено возмущающее воздействие (возмущение, помеха) F, которое изменяет состояние объекта, т.е. X, препятствуя управлению. На вход управляющего устройства подается задающее воздействие (задание) G, содержащее информацию о требуемом значении X, т.е. о цели управления. В самом общем случае на вход объекта поступает также информация о текущем состоянии объекта в виде выходной величины Х и о действующем на объект возмущении F. Переменные U, G, F и X в общем случае являются векторами.
Как и у всякой динамической системы, процессы в САУ делят на установившиеся и переходные.
При рассмотрении САУ имеет значение следующие понятия: устойчивость системы, качество процесса управления и точность управления.
Устойчивость – это свойство системы возвращаться в установившееся состояние после того, как она была выведена из этого состояния каким-либо возмущением.
Качество процесса управления характеризуется тем, насколько процесс управления близок к желаемому. Количественно они выражаются критериями качества:
Точность управления характеризуется погрешностью системы в установившихся режимах (расхождение между желаемым сигналом и действительным) – статизм.
Исходные данные: объект управления представляет автомобиль. Параметр, которым необходимо управлять – это его скорость. Скорость автомобиля можно регулировать с помощью другого параметра. Это может быть: сила нажатия на педаль акселератора и т.п. На скорость автомобиля может влиять множество внешних факторов: уклон под которым движется автомобиль, качество сцепления с дорогой, ветер. Информация о скорости автомобиля поступает с датчика скорости.
Динамика объекта управления описывается следующей системой дифференциальных уравнений:
Параметры T1, T2, K1, K2 определены экспериментально и имеют следующие значения соответственно: K1=5, K2=7.156, T1=1.735, T2=16.85.
Задание: требуется построить такой регулятор в классе нейросетевых структур, который обеспечивал бы управление объектом при соблюдении следующих требований синтезируемой системе автоматического управления:
ИНС можно обучить на некотором множестве путем подбора настроечных параметров . Используется метод обратного распространения ошибки, основанный на градиентном методе, с константой скорости сходимости h. Для обеспечения сходимости изменяем h с 1 до 0.00001 при количестве итераций в 1000000 [3]. Размер обучающего множества выбран 400 обучающих пар. Количество нейронов скрытого слоя 50.
Рисунок 4 Блок-схема САУ с нейроконтроллером
Для сравнения снята переходная характеристика САУ с ПИД-регулятором, где k1=0.2, k2=0.007, k3=0.2.
На САУ с нейрорегулятором и ПИД-регулятором подается задающее воздействие G=10, 20, 30 ... 110. На интервале 50-100с. на систему действует помеха. Результаты работы САУ на рис.5.
Рисунок 5 Сравнение нейрорегулятора и ПИД-регулятора
Сравнение показывает: ПИД-регулятор проигрывает нейрорегулятору как в быстродействии на старте, при входе в зону помехи и при выходе.
Нейросетевое управление свободно от ограничений на линейность системы, эффективно в условиях шумов и после окончания обучения обеспечивает управление в реальном масштабе времени. Нейросетевые СУ более гибко настраиваются на реальные условия, образуя модели полностью адекватные поставленной задаче, не содержащие ограничений, связанных с построением формальных систем. Кроме того, нейросетевые СУ не только реализуют стандартные адаптивные методы управления, но и предлагают свои алгоритмические подходы к ряду задач, решение которых вызывает затруднение вследствие неформализованности. Так, появляется возможность обработки в рамках одной модели данных одной природы – для НС важна лишь их коррелированность.
Таким образом, будущее интеллектуального управления лежит в сочетании традиционного управления с потенциальными возможностями и перспективами использования систем, основанных на использовании искусственных НС.
в начало |