Нечеткая логика и нейронные сети. Нечеткая логика и искусственные нейронные сети

В основе нечеткой логики лежит теория нечетких множеств, изложенная в серии работ Л. Заде в 1965-1973 годах. Математическая теория нечетких множеств (fuzzy sets) и нечеткая логика (fuzzy logic) являются обобщениями классической теории множеств и классической формальной логики. Основной причиной появления новой теории стало наличие нечетких и приближенных рассуждений при описании человеком процессов, систем, объектов.

Л. Заде, формулируя это главное свойство нечетких множеств, базировался на трудах предшественников. В начале 1920-х годов польский математик Лукашевич трудился над принципами многозначной математической логики, в которой значениями предикатов могли быть не только «истина» или «ложь». В 1937 году еще один американский ученый М. Блэк впервые применил многозначную логику Лукашевича к спискам как множествам объектов и назвал такие множества неопределенными.

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

Первый период развития нечетких систем (конец 60-х – начало 70-х гг.) характеризуется развитием теоретического аппарата нечетких множеств. В 1970 году Беллман совместно с Заде разработали теорию принятия решений в нечетких условиях.

В 70-80 годы (второй период) появляются первые практические результаты в области нечеткого управления сложными техническими системами (парогенератор с нечетким управлением). И. Мамдани в 1975 году спроектировал первый функционирующий на основе алгебры Заде контроллер, управляющий паровой турбиной. Одновременно стало уделяться внимание вопросам создания экспертных систем, построенных на нечеткой логике, разработке нечетких контроллеров. Нечеткие экспертные системы для поддержки принятия решений нашли широкое применение в медицине и экономике.

Наконец, в третьем периоде, который длится с конца 80-х годов и продолжается в настоящее время, появляются пакеты программ для построения нечетких экспертных систем, а области применения нечеткой логики заметно расширяются. Она применяется в автомобильной, аэрокосмической и транспортной промышленности, в области изделий бытовой техники, в сфере финансов, анализа и принятия управленческих решений и многих других. Кроме того, немалую роль в развитии нечеткой логики сыграло доказательство знаменитой теоремы FAT (Fuzzy Approximation Theorem) Б. Коско, в которой утверждалось, что любую математическую систему можно аппроксимировать системой на основе нечеткой логики.


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

Достоинства нечетких систем:

· функционирование в условиях неопределенности;

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

· использование экспертных знаний в управлении;

· построение моделей приближенных рассуждений человека;

· устойчивость при действии на систему всевозможных возмущений.

Недостатками нечетких систем являются:

· отсутствие стандартной методики конструирования нечетких систем;

· невозможность математического анализа нечетких систем существующими методами;

· применение нечеткого подхода по сравнению с вероятностным не приводит к повышению точности вычислений.

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

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

В теории нечетких множеств характеристическая функция называется функцией принадлежности, а ее значение – степенью принадлежности элемента x нечеткому множеству A.

Более строго: нечетким множеством A называется совокупность пар

где – функция принадлежности, то есть

Пусть, например, U ={a, b, c, d, e}, . Тогда элемент a не принадлежит множеству A, элемент b принадлежит ему в малой степени, элемент c более или менее принадлежит, элемент d принадлежит в значительной степени, e является элементом множества A.

Пример. Пусть универсум U есть множество действительных чисел. Нечеткое множество A, обозначающее множество чисел, близких к 10, можно задать следующей функцией принадлежности (рис. 21.1):

,

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

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

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

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

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

Таблица 11.4. Нечеткое правило адаптации темпа обучения нейронной сети
Предыдущий градиент Текущий градиент
NB NS Z PS PB
NB PB PS Z NS NB
NS NS PS Z NS NB
Z NB NS Z NS NB
PS NB NS Z PS NS
PB NB NS Z PS PB

Лингвистические переменные Темп Обучения и Градиент принимают в иллюстрируемом таблицей нечетком правиле адаптации следующие значения: NB - большой отрицательный; NS - малый отрицательный; Z - близок к нулю; PS - малый положительный; PB - большой положительный.

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

Элементы нечеткой логики

Центральным понятием нечеткой логики является понятие лингвистической переменной . Согласно Лотфи Заде лингвистической называется переменная, значениями которой являются слова или предложения естественного или искусственного языка. Примером лингвистической переменной является, например, падение производства, если она принимает не числовые, а лингвистические значения, такие как, например, незначительное, заметное, существенное, и катастрофическое. Очевидно, что лингвистические значения нечетко характеризуют имеющуюся ситуацию. Например, падение производства на 3% можно рассматривать и как в какой-то мере незначительное, и как в какой-то мере заметное. Интуитивно ясно, что мера того, что данное падение является катастрофическим должна быть весьма мала.

Название: Нечеткая логика и искусственные нейронные сети.

Как известно, аппарат нечетких множеств и нечеткой логики уже давно (более 10 лет) с успехом применяется для решения задач, в которых исходные данные являются ненадежными и слабо формализованными. Сильные стороны такого подхода:
-описание условий и метода решения задачи на языке, близком к естественному;
-универсальность: согласно знаменитой теореме FAT (Fuzzy Approximation Theorem), доказанной Б.Коско (B.Kosko) в 1993 г., любая математическая система может быть аппроксимирована системой, основанной на нечеткой логике;

Вместе с тем для нечетких экспертных и управляющих систем характерны и определенные недостатки:
1) исходный набор постулируемых нечетких правил формулируется экспертом-человеком и может оказаться неполным или противоречивым;
2) вид и параметры функций принадлежности, описывающих входные и выходные переменные системы, выбираются субъективно и могут оказаться не вполне отражающими реальную действительность.
Для устранения, по крайней мере, частично, указанных недостатков рядом авторов было предложено выполнять нечеткие экспертные и управляющие системы адаптивными - корректируя, по мере работы системы, и правила и параметры функций принадлежности. Среди нескольких вариантов такой адаптации одним из самых удачных, по-видимому, является метод так называемых гибридных нейронных сетей.
Гибридная нейронная сеть формально по структуре идентична многослойной нейронной сети с обучением, например, по алгоритму обратного распространения ошибки, но скрытые слои в ней соответствуют этапам функционирования нечеткой системы. Так:
-1-й слой нейронов выполняет функцию введения нечеткости на основе заданных функций принадлежности входов;
-2-й слой отображает совокупность нечетких правил;
-3-й слой выполняет функцию приведения к четкости.
Каждый из этих слоев характеризуется набором параметров (параметрами функций принадлежности, нечетких решающих правил, акти-
вационных функций, весами связей), настройка которых производится, в сущности, так же, как для обычных нейронных сетей.
В книге рассмотрены теоретические аспекты составляющих подобных сетей, именно, аппарат нечеткой логики, основы теории искусственных нейронных сетей и собственно гибридных сетей применительно к Задачам управления и принятия решений в условиях неопределенности.
Особое внимание уделено программной реализации моделей указанных подходов инструментальными средствами математической системы MATLAB 5.2/5.3.

Предыдущие статьи:

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

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

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

Определения

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

Искусственная нейронная сеть (ИНС), согласно Викпедии, – это «взаимосвязанная совокупность искусственных ‘нейронов’, которая использует математическую или вычислительную модель для обработки информации, опирающейся на связанность вычислителей».

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

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

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

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

Например, цена в классической задаче коммивояжера – это время, необходимое для полного объезда территории торговли с остановками во всех требуемых пунктах и прибытия в исходную точку. Более короткий маршрут дает лучшее решение.

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

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

Нечеткая логика (снова согласно Викпедии) выведена из теории нечетких множеств, имеющей дело с рассуждениями, которые в большей степени являются приближенными, чем точным. Истинность в нечеткой логике показывает принадлежность к нечетко определенным множествам. В нечеткой логике решения могут быть приняты на основе неточно определенных, но, тем менее, очень важных характеристик. Нечеткая логика допускает изменение значений принадлежности к множеству в диапазоне 0 до 1 включительно, а также использование таких неопределенных понятий, как “немного”, “до некоторой степени”и“очень”. Это особым образом позволяет реализовывать частичную принадлежность к множеству.

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

Быстрая нечеткая логика для управления в реальном времени

Несмотря на то, что любой микроконтроллер или компьютер могут реализовать алгоритмы нечеткой логики в программном виде, это может оказаться неэффективным из-за низкого быстродействия и потребности в большом объеме памяти. Джим Сибигтрот, системный инженер по автомобильной продукции отделения микроконтроллеров Transportation and Standard Products Group, входящей в Freescale Semiconductor, говорит, что микроконтроллеры HC12 и HCS12 компании очень эффективно решают эту задачу за счет добавления четырех команд, специально разработанных для реализации основных частей механизма логического вывода нечеткой логики.

«Основная программа для универсального механизма логического вывода, которая обрабатывает невзвешенные правила, занимает приблизительно 57 байтов объектного кода (приблизительно 24 строки ассемблерного кода)», – сообщает он.

Сибигтрот отмечает, что модель HCS12 с частотой 25 МГц может выполнить полную последовательность вывода для двух входных и одного выходного параметра с семью пометками для каждого входа и выхода примерно за 20 мкс. Эквивалентная программа для MC68HC11 с частотой 8 МГц (без команд нечеткой логики) заняла бы приблизительно 250 байтов объектного кода и примерно 750 мкс времени. Даже если бы MC68HC11 мог обработать программу с такой же скоростью, что и HCS12, команды нечеткой логики уменьшают программу в 4 раза и сокращают время выполнения в 12 раз. Такие короткие интервалы распознавания позволяют использовать алгоритмы нечеткой логики в системах управления в режиме реального времени без дорогостоящего компьютерного оборудования или больших программ.

Обработка изображений

С помощью принятия решений в ИНС, основанной на нечеткой логике, можно создать мощную систему управления. Очевидно, что две эти концепции хорошо работают вместе: алгоритм логического вывода с тремя нечеткими состояниями (например, холодный, теплый, горячий) мог бы быть реализован в аппаратном виде при использовании истинностных значений (0.8, 0.2, 0.0) в качестве входных значений для трех нейронов, каждый из которых представляет одно из трех множеств. Каждый нейрон обрабатывает входную величину в соответствии со своей функцией и получает выходное значение, которое далее будет входным значением для второго слоя нейронов, и т.д.

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

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

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

Обобщения

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

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

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

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

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

Пример сортировки рыбы

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

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

Pisces установила более 20 систем, базирующихся на интеллектуальной камере Iris от Matrox и механизме распознавания CogniSight от General Vision. Камера монтируется над конвейером так, чтобы рыба проходила под ней как раз перед попаданием в филетирующую машину. Камера связана с контроллером Siemens Simatic S7-224 (ПЛК) и с локальной сетью (LAN). Стробоскопический источник света, установленный рядом с камерой, запускается каждый раз, когда новая емкость появляется в поле зрения. Соединение камеры с локальной сетью необходимо для выполнения трех операций: настройки преобразователя, гарантирующей фокусировку и надлежащий контраст изображения, обучения механизма распознавания и доступа к статистике, непрерывно сообщающей о количестве кондиционной и некондиционной рыбы.

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

Как только камера получает базу знаний, она может начать распознавание рыбы автономно, без связи с персональным компьютером. ИНС сортирует ее по категориям «принято», «забраковано», «на переработку» или «пусто». Этот сигнал идет в ПЛК, управляющий двумя щетками, которые направляют соответствующую рыбу в емкости для удаления или переработки. ПЛК также связан с магнитным датчиком, который вырабатывает сигнал запуска каждый раз, когда емкость с рыбой проходит под камерой.

В настоящее время Pisces уже установила более 20 систем на 5 различных рыболовецких флотилиях в Норвегии, Исландии, Шотландии и Дании. Система оценивает 360 конвейерных емкостей в минуту на линиях сельди, но она может работать еще быстрее.

Для сети из 80 нейронов достигнута 98%-ая точность при классификации 16 тонн рыбы. Рыбаки довольны системой благодаря ее надежности, гибкости и легкости в использовании. Преимущества: сокращение срока плавания, повышение качества улова и доходов, распределяемых между меньшим числом рыбаков.

В средствах дискретного производства нейронные сети нашли применение в управлении транспортными средствами, распознавании образов в радарных системах, опознавании личности, распознавании объектов, рукописного текста, жестов и речи.

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

Подобные технологии «мягких вычислений» также используются для создания надежных зарядных устройство для батарей дыхательного аппарата. В отраслях непрерывного и периодического производства нечеткая логика и нейронные сети являются основой некоторых самонастраивающихся регуляторов. Некоторые микроконтроллеры и микропроцессоры оптимизированы для работы с нечеткой логикой, так что системы могут работать еще быстрей (см. ниже “Быстрая нечеткая логика для управления в реальном времени”).



Статьи по теме: