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

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

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

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

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


Размещено на http :// www . сайт . ru /

МИНОБРНАУКИ РОССИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»

Факультет Прикладной математики, информатики и механики

Курсовая работа

38.03.05 Бизнес-информатика

по курсу «Нечеткая логика и нейронные сети»

Воронеж 2016

Глава 1. Решение задач прогнозирования цен на акции «Мазут»

Глава 2. Построение системы «Набор программистов» нечёткого логического вывода

Первая часть курсовой работы заключается в построении прогноза цен на акции «Мазут» на 5 дней вперед.

На рисунке 1 представлены данные, которые необходимо использовать для прогноза: LOW и CLOSE.

Дальше нужно запустить модуль «Neural networks. Во вкладке «Quick» выбираем тип задачи: «Time Series» После этого выбираем входные и выходные данные во вкладке «Variables». В курсовой работе будем строить прогноз для одной переменной «LOW», она будет и входной, и выходной переменной.(Рисунок 2).

Затем выбираем модуль «Intelligent Problem Solver», нажимаем «Ok» и в открывшемся окне задаем необходимые для прогнозирования параметры.

Во вкладке «Quick» задаем количество обучаемых сетей («Network tested»), в данном примере обучаться будут 500 сетей. В параметре «Network retained» ставим 10 сетей. Здесь программа выберет 10 наилучших сетей. (рисунок 3).

прогнозирование цена нечеткий логика

Выбираем следующую вкладку «Time series» (рисунок 4). Здесь задаем количество входов для прогнозирования.

Во вкладке «Feedback» выбираем следующее: «Improved networks (real time)» и ставим галочки в двух последних параметрах. Это указано на рисунке 5.

Во вкладке «Types» выбираем тип необходимой нам сети. Мы строим сети, используя многослойные персептроны (рисунок 6). Нужные нам параметры: «Three layer perceptron» и «Four layer perceptron»

После выбора всех параметров, нажимаем кнопку «OK». После идентификации процесса построения сетей появляется окно, во вкладке «Quick» нажимаем кнопку «Descriptive statistic» (рисунок 7).

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

Нам важно значение ошибки «S.D. Ratio»

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

Проанализировав данные результаты, выбираем сети под номерами:1,2,3,4,5. (Рисунок 8)

На вкладке «Plots» («Графики») строим графики выбранных 5 моделей. Отбираем наиболее удачные графики. Критерием выбора является симметричность. Из выбранных 5 сетей удовлетворяют условию графики 2 сети (рисунок 9) и 3 сети (рисунок 10).

Затем снова выбираем 2 модели и в открывшемся окне в параметре «Length of projection» ставим 5, а в параметре «Case» (здесь выбирается день, с какого начнется прогноз 310) Это означает, что прогноз будет сделан на 5 дней вперед. Нажимаем кнопку «Time series spreadsheet».(рисунок 11)

Открывается окно, где показаны цены на акции с 310 по 314 день, смоделированные нашими сетями. Добавляем новый столбец NewVar, куда копируем цены из нашей исходной таблицы (рисунок 12).

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

Система «Набор программистов»

1.Входные данные

· Знания английского языка

· Владение компьютером

Множество определения -

Множество термов - {низкое, среднее, высокое}

· Стаж работы

Множество определения -

Множество термов - {мало, достаточно, много}

Множество определения -

Множество термов - {низкий, средний, высокий, очень высокий}


Подобные документы

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

    презентация , добавлен 29.10.2013

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

    реферат , добавлен 22.01.2015

    Модели оценки кредитоспособности физических лиц в российских банках. Нейронные сети как метод решения задачи классификации. Описание возможностей программы STATISTICA 8 Neural Networks. Общая характеристика основных этапов нейросетевого моделирования.

    дипломная работа , добавлен 21.10.2013

    Технологии решения задач с использованием нейронных сетей в пакетах расширения Neural Networks Toolbox и Simulink. Создание этого вида сети, анализ сценария формирования и степени достоверности результатов вычислений на тестовом массиве входных векторов.

    лабораторная работа , добавлен 20.05.2013

    Основные этапы систем нечеткого вывода. Правила нечетких продукций, используемые в них. Нечеткие лингвистические высказывания. Определение алгоритмов Цукамото, Ларсена, Сугено. Реализации нечеткого вывода Мамдани на примере работы уличного светофора.

    курсовая работа , добавлен 14.07.2012

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

    дипломная работа , добавлен 06.05.2011

    Понятие о нейронных сетях и параллели из биологии. Базовая искусственная модель, свойства и применение сетей. Классификация, структура и принципы работы, сбор данных для сети. Использование пакета ST Neural Networks для распознавания значимых переменных.

    реферат , добавлен 16.02.2015

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

    курсовая работа , добавлен 31.05.2014

    Характеристика моделей обучения. Общие сведения о нейроне. Искусственные нейронные сети, персептрон. Проблема XOR и пути ее решения. Нейронные сети обратного распространения. Подготовка входных и выходных данных. Нейронные сети Хопфилда и Хэмминга.

    контрольная работа , добавлен 28.01.2011

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

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

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

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

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

Математический аппарат

Характеристикой нечеткого множества выступает функция принадлежности (Membership Function). Обозначим через MF c (x) – степень принадлежности к нечеткому множеству C, представляющей собой обобщение понятия характеристической функции обычного множества. Тогда нечетким множеством С называется множество упорядоченных пар вида C={MF c (x)/x}, MF c (x) . Значение MF c (x)=0 означает отсутствие принадлежности к множеству, 1 – полную принадлежность.

Проиллюстрируем это на простом примере. Формализуем неточное определение "горячий чай". В качестве x (область рассуждений) будет выступать шкала температуры в градусах Цельсия. Очевидно, что она будет изменяется от 0 до 100 градусов. Нечеткое множество для понятия "горячий чай" может выглядеть следующим образом:

C={0/0; 0/10; 0/20; 0,15/30; 0,30/40; 0,60/50; 0,80/60; 0,90/70; 1/80; 1/90; 1/100}.

Так, чай с температурой 60 С принадлежит к множеству "Горячий" со степенью принадлежности 0,80. Для одного человека чай при температуре 60 С может оказаться горячим, для другого – не слишком горячим. Именно в этом и проявляется нечеткость задания соответствующего множества.

Для нечетких множеств, как и для обычных, определены основные логические операции. Самыми основными, необходимыми для расчетов, являются пересечение и объединение.

Пересечение двух нечетких множеств (нечеткое "И"): A B: MF AB (x)=min(MF A (x), MF B (x)).
Объединение двух нечетких множеств (нечеткое "ИЛИ"): A B: MF AB (x)=max(MF A (x), MF B (x)).

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

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

Нечеткая переменная описывается набором (N,X,A), где N – это название переменной, X – универсальное множество (область рассуждений), A – нечеткое множество на X.
Значениями лингвистической переменной могут быть нечеткие переменные, т.е. лингвистическая переменная находится на более высоком уровне, чем нечеткая переменная. Каждая лингвистическая переменная состоит из:

  • названия;
  • множества своих значений, которое также называется базовым терм-множеством T. Элементы базового терм-множества представляют собой названия нечетких переменных;
  • универсального множества X;
  • синтаксического правила G, по которому генерируются новые термы с применением слов естественного или формального языка;
  • семантического правила P, которое каждому значению лингвистической переменной ставит в соответствие нечеткое подмножество множества X.

Рассмотрим такое нечеткое понятие как "Цена акции". Это и есть название лингвистической переменной. Сформируем для нее базовое терм-множество, которое будет состоять из трех нечетких переменных: "Низкая", "Умеренная", "Высокая" и зададим область рассуждений в виде X= (единиц). Последнее, что осталось сделать – построить функции принадлежности для каждого лингвистического терма из базового терм-множества T.

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

Треугольная функция принадлежности определяется тройкой чисел (a,b,c), и ее значение в точке x вычисляется согласно выражению:

$$MF\,(x) = \,\begin{cases} \;1\,-\,\frac{b\,-\,x}{b\,-\,a},\,a\leq \,x\leq \,b &\ \\ 1\,-\,\frac{x\,-\,b}{c\,-\,b},\,b\leq \,x\leq \,c &\ \\ 0, \;x\,\not \in\,(a;\,c)\ \end{cases}$$

При (b-a)=(c-b) имеем случай симметричной треугольной функции принадлежности, которая может быть однозначно задана двумя параметрами из тройки (a,b,c).

Аналогично для задания трапецеидальной функции принадлежности необходима четверка чисел (a,b,c,d):

$$MF\,(x)\,=\, \begin{cases} \;1\,-\,\frac{b\,-\,x}{b\,-\,a},\,a\leq \,x\leq \,b & \\ 1,\,b\leq \,x\leq \,c & \\ 1\,-\,\frac{x\,-\,c}{d\,-\,c},\,c\leq \,x\leq \,d &\\ 0, x\,\not \in\,(a;\,d) \ \end{cases}$$

При (b-a)=(d-c) трапецеидальная функция принадлежности принимает симметричный вид.

Функция принадлежности гауссова типа описывается формулой

$$MF\,(x) = \exp\biggl[ -\,{\Bigl(\frac{x\,-\,c}{\sigma}\Bigr)}^2\biggr]$$

и оперирует двумя параметрами. Параметр c обозначает центр нечеткого множества, а параметр отвечает за крутизну функции.

Совокупность функций принадлежности для каждого терма из базового терм-множества T обычно изображаются вместе на одном графике. На рисунке 3 приведен пример описанной выше лингвистической переменной "Цена акции", на рисунке 4 – формализация неточного понятия "Возраст человека". Так, для человека 48 лет степень принадлежности к множеству "Молодой" равна 0, "Средний" – 0,47, "Выше среднего" – 0,20.

Количество термов в лингвистической переменной редко превышает 7.

Нечеткий логический вывод

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

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

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

Пусть в базе правил имеется m правил вида:
R 1: ЕСЛИ x 1 это A 11 … И … x n это A 1n , ТО y это B 1

R i: ЕСЛИ x 1 это A i1 … И … x n это A in , ТО y это B i

R m: ЕСЛИ x 1 это A i1 … И … x n это A mn , ТО y это B m ,
где x k , k=1..n – входные переменные; y – выходная переменная; A ik – заданные нечеткие множества с функциями принадлежности.

Результатом нечеткого вывода является четкое значение переменной y * на основе заданных четких значений x k , k=1..n.

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

Алгоритмы нечеткого вывода различаются главным образом видом используемых правил, логических операций и разновидностью метода дефазификации. Разработаны модели нечеткого вывода Мамдани, Сугено, Ларсена, Цукамото.

Рассмотрим подробнее нечеткий вывод на примере механизма Мамдани (Mamdani). Это наиболее распространенный способ логического вывода в нечетких системах. В нем используется минимаксная композиция нечетких множеств. Данный механизм включает в себя следующую последовательность действий.

  1. Процедура фазификации: определяются степени истинности, т.е. значения функций принадлежности для левых частей каждого правила (предпосылок). Для базы правил с m правилами обозначим степени истинности как A ik (x k), i=1..m, k=1..n.
  2. Нечеткий вывод. Сначала определяются уровни "отсечения" для левой части каждого из правил:

    $$alfa_i\,=\,\min_i \,(A_{ik}\,(x_k))$$

    $$B_i^*(y)= \min_i \,(alfa_i,\,B_i\,(y))$$

    Композиция, или объединение полученных усеченных функций, для чего используется максимальная композиция нечетких множеств:

    $$MF\,(y)= \max_i \,(B_i^*\,(y))$$

    где MF(y) – функция принадлежности итогового нечеткого множества.

    Дефазификация, или приведение к четкости. Существует несколько методов дефазификации. Например, метод среднего центра, или центроидный метод:
    $$MF\,(y)= \max_i \,(B_i^*\,(y))$$

Геометрический смысл такого значения – центр тяжести для кривой MF(y). Рисунок 6 графически показывает процесс нечеткого вывода по Мамдани для двух входных переменных и двух нечетких правил R1 и R2.

Интеграция с интеллектуальными парадигмами

Гибридизация методов интеллектуальной обработки информации – девиз, под которым прошли 90-е годы у западных и американских исследователей. В результате объединения нескольких технологий искусственного интеллекта появился специальный термин – "мягкие вычисления" (soft computing), который ввел Л. Заде в 1994 году. В настоящее время мягкие вычисления объединяют такие области как: нечеткая логика, искусственные нейронные сети, вероятностные рассуждения и эволюционные алгоритмы. Они дополняют друг друга и используются в различных комбинациях для создания гибридных интеллектуальных систем.

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

Нечеткие нейронные сети

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

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

Быстрые алгоритмы обучения и интерпретируемость накопленных знаний – эти факторы сделали сегодня нечеткие нейронные сети одним из самых перспективных и эффективных инструментов мягких вычислений.

Адаптивные нечеткие системы

Классические нечеткие системы обладают тем недостатком, что для формулирования правил и функций принадлежности необходимо привлекать экспертов той или иной предметной области, что не всегда удается обеспечить. Адаптивные нечеткие системы (adaptive fuzzy systems) решают эту проблему. В таких системах подбор параметров нечеткой системы производится в процессе обучения на экспериментальных данных. Алгоритмы обучения адаптивных нечетких систем относительно трудоемки и сложны по сравнению с алгоритмами обучения нейронных сетей, и, как правило, состоят из двух стадий: 1. Генерация лингвистических правил; 2. Корректировка функций принадлежности. Первая задача относится к задаче переборного типа, вторая – к оптимизации в непрерывных пространствах. При этом возникает определенное противоречие: для генерации нечетких правил необходимы функции принадлежности, а для проведения нечеткого вывода – правила. Кроме того, при автоматической генерации нечетких правил необходимо обеспечить их полноту и непротиворечивость.

Значительная часть методов обучения нечетких систем использует генетические алгоритмы. В англоязычной литературе этому соответствует специальный термин – Genetic Fuzzy Systems.

Значительный вклад в развитие теории и практики нечетких систем с эволюционной адаптацией внесла группа испанских исследователей во главе с Ф. Херрера (F. Herrera).

Нечеткие запросы

Нечеткие запросы к базам данных (fuzzy queries) – перспективное направление в современных системах обработки информации. Данный инструмент дает возможность формулировать запросы на естественном языке, например: "Вывести список недорогих предложений о съеме жилья близко к центру города", что невозможно при использовании стандартного механизма запросов. Для этой цели разработана нечеткая реляционная алгебра и специальные расширения языков SQL для нечетких запросов. Большая часть исследований в этой области принадлежит западноевропейским ученым Д. Дюбуа и Г. Праде.

Нечеткие ассоциативные правила

Нечеткие ассоциативные правила (fuzzy associative rules) – инструмент для извлечения из баз данных закономерностей, которые формулируются в виде лингвистических высказываний. Здесь введены специальные понятия нечеткой транзакции, поддержки и достоверности нечеткого ассоциативного правила.

Нечеткие когнитивные карты

Нечеткие когнитивные карты (fuzzy cognitive maps) были предложены Б. Коско в 1986 г. и используются для моделирования причинных взаимосвязей, выявленных между концептами некоторой области. В отличие от простых когнитивных карт, нечеткие когнитивные карты представляют собой нечеткий ориентированный граф, узлы которого являются нечеткими множествами. Направленные ребра графа не только отражают причинно-следственные связи между концептами, но и определяют степень влияния (вес) связываемых концептов. Активное использование нечетких когнитивных карт в качестве средства моделирования систем обусловлено возможностью наглядного представления анализируемой системы и легкостью интерпретации причинно-следственных связей между концептами. Основные проблемы связаны с процессом построения когнитивной карты, который не поддается формализации. Кроме того, необходимо доказать, что построенная когнитивная карта адекватна реальной моделируемой системе. Для решения данных проблем разработаны алгоритмы автоматического построения когнитивных карт на основе выборки данных.

Нечеткая кластеризация

Нечеткие методы кластеризации, в отличие от четких методов (например, нейронные сети Кохонена), позволяют одному и тому же объекту принадлежать одновременно нескольким кластерам, но с различной степенью. Нечеткая кластеризация во многих ситуациях более "естественна", чем четкая, например, для объектов, расположенных на границе кластеров. Наиболее распространены: алгоритм нечеткой самоорганизации c-means и его обобщение в виде алгоритма Густафсона-Кесселя.

Литература

  • Заде Л. Понятие лингвистической переменной и его применение к принятию приближенных решений. – М.: Мир, 1976.
  • Круглов В.В., Дли М.И. Интеллектуальные информационные системы: компьютерная поддержка систем нечеткой логики и нечеткого вывода. – М.: Физматлит, 2002.
  • Леоленков А.В. Нечеткое моделирование в среде MATLAB и fuzzyTECH. – СПб., 2003.
  • Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы. – М., 2004.
  • Масалович А. Нечеткая логика в бизнесе и финансах. www.tora-centre.ru/library/fuzzy/fuzzy-.htm
  • Kosko B. Fuzzy systems as universal approximators // IEEE Transactions on Computers, vol. 43, No. 11, November 1994. – P. 1329-1333.
  • Cordon O., Herrera F., A General study on genetic fuzzy systems // Genetic Algorithms in engineering and computer science, 1995. – P. 33-57.

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

Основным недостатком нечетких и нейросетевых контроллеров является сложность их настройки (составления базы нечетких правил и обучения нейронной сети).

5.7.1. Нечеткая логика в ПИД-регуляторах

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

Правило 1: если = и = , то =

Правило 2: если = и = , то =

Правило 3: если = и = , то =

Правило 4: если = и = , то =

Правило 5: если = и = , то =

Правило 6: если = и = , то =

Правило 7: если = и = , то =

Правило 8: если = и = , то =

Правило 9: если = и = , то = .

Приведенные правила часто записывают в более компактной табличной форме (рис. 5.91).

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

e

Рис. 5.91. Представление нечетких правил в табличной форме

Операция "И" в правилах (5.118) соответствует пересечению множеств, а результат применения всех правил соответствует операции объединения множеств [Рутковская ]. Функция принадлежности для пересечения двух множеств, например, и (см. Правило 1) находится как [Рутковская ]

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

Однако применение первых двух способов нахождения функции принадлежности обычно более предпочтительно, т.к. при этом сохраняется большинство правил, разработанных для обычных множеств [Усков ].

Функции принадлежности для каждого из множеств , входящих в нечеткую переменную в правилах (5.118), получаются в виде [Рутковская ]

Здесь каждое из 9-ти уравнений соответствует одному из правил (5.118). Результирующая функция принадлежности управляющего воздействия , полученная после применения всех 9-ти правил, находится как объединение функций принадлежности всех правил:

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

.

Такой способ дефаззификации является наиболее распространенным, но не единственным.

Для построения нечетких регуляторов обычно используют П, И, ПИ и ПД ПД+И, ПИ+Д и ПИД-законы регулирования [Mann ]. В качестве входных сигналов для системы нечеткого вывода используют сигнал ошибки, приращение ошибки, квадрат ошибки и интеграл от ошибки [Mann ]. Реализация нечеткого ПИД регулятора вызывает проблемы, поскольку он должен иметь трехмерную таблицу правил в соответствии с тремя слагаемыми в уравнении ПИД-регулятора, которую чрезвычайно сложно заполнить, пользуясь ответами эксперта. Большое количество структур ПИД-подобных нечетких контроллеров можно найти в статье [Mann ].

Окончательная настройка нечеткого регулятора или настройка, близкая к оптимальной, до сих пор остается трудной задачей. Для этого используются обучающие алгоритмы style="color:red"> и генетические поисковые методы, требующие больших вычислительных ресурсов и времени.

Применение нечеткой логики для подстройки коэффициентов ПИД-регулятора

Настройка регулятора, выполненная методами, изложенными в разделах "Расчет параметров" и "Автоматическая настройка и адаптация" , не является оптимальной и может быть улучшена с помощью дальнейшей подстройки. Подстройка может быть выполнена оператором на основании правил (см. раздел "Ручная настройка, основанная на правилах") или автоматически, с помощью блока нечеткой логики (рис. 5.92). Блок нечеткой логики (фаззи-блок) использует базу правил подстройки и методы нечеткого вывода. Фаззи-подстройка позволяет уменьшить перерегулирование, снизить время установления и повысить робастность ПИД-регулятора [Yesil ].

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

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

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

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

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

5.7.2. Искусственные нейронные сети

Нейронные сети, как и нечеткая логика, используются в ПИД-регуляторах двумя путями: для построения самого регулятора и для построения блока настройки его коэффициентов. Нейронная сеть обладает способностью "обучаться", что позволяет использовать опыт эксперта для обучения нейронной сети искусству настройки коэффициентов ПИД-регулятора. Регулятор с нейронной сетью похож на регулятор с табличным управлением (см. раздел "Табличное управление">), однако отличается специальными методами настройки ("обучения"), разработанными для нейронных сетей и методами интерполяции данных.

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

Нейронные сети были предложены в 1943 г. Мак-Каллоком и Питтсом как результат изучения нервной деятельности и биологических нейронов. Искусственный нейрон представляет собой функциональный блок с одним выходом и входами , который реализует в общем случае нелинейное преобразование , где - весовые коэффициенты (параметры) при входных переменных ; - постоянное смещение; - "функция активации " нейрона, например, вида (сигмоидальная функция), где - некоторый параметр. Нейронная сеть (рис. 5.93) состоит из множества связанных между собой нейронов, количество связей может составлять тысячи. Благодаря нелинейности функций активации и большому количеству настраиваемых коэффициентов (в работе [Kato ] использовано 35 нейронов во входном слое и 25 в выходном, при этом количество коэффициентов составило 1850) нейронная сеть может выполнять нелинейное отображение множества входных сигналов во множество выходных.

Типовая структура системы автоматического регулирования с ПИД-регулятором и нейронной сетью в качестве блока автонастройки показана на рис. 5.94 [Kawafuku , Kato ]. Нейронная сеть в данной структуре выполняет роль функционального преобразователя, который для каждого набора сигналов вырабатывает коэффициенты ПИД-регулятора .метод обратного распространения ошибки) [Терехов ]. Используются также другие методы поиска минимума, в том числе генетические алгоритмы, метод моделирования отжига, метод наименьших квадратов.

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

Рис. 5.95. Схема обучения нейронной сети в блоке автонастройки

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

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

1. Выбор исходной популяции хромосом размера N.

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

3. Проверка условия остановки алгоритма.

4. Селекция хромосом.

5. Применение генетических операторов.

6. Формирование новой популяции.

7. Переход к п. 2.

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

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

Рис. 5.97), затем происходит обмен генетической информацией, расположенной справа от выбранной позиции [Fleming ].

После выполнения генетического алгоритма производят декодирование двоичного представления в инженерные величины.

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

,

где - текущее значение ошибки регулирования, - время.

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

В основе нечеткой логики лежит теория нечетких множеств, изложенная в серии работ Л. Заде в 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):

,

Публикации по теме