Контроллеры с нечеткой логикой реферат

Обновлено: 08.07.2024

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

Значительное продвижение в этом направлении сделано 30 лет тому назад профессором Калифорнийского университета (Беркли) Лотфи А. Заде (Lotfi A. Zadeh). Его работа "Fuzzy Sets", появившаяся в 1965 году в журнале Information and Control, № 8, заложила основы моделирования интеллектуальной деятельности человека и явилась начальным толчком к развитию новой математической теории.

Что же предложил Заде? Во-первых, он расширил классическое канторовское понятие множества, допустив, что характеристическая функция (функция принадлежности элемента множеству) может принимать любые значения в интервале (0;1), а не только значения 0 либо 1. Такие множества были названы им нечеткими (fuzzy). Л.Заде определил также ряд операций над нечеткими множествами и предложил обобщение известных методов логического вывода modus ponens и modus tollens.

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

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

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

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

Математическая теория нечетких множеств, предложенная Л.Заде более четверти века назад, позволяет описывать нечеткие понятия и знания, оперировать этими знаниями и делать нечеткие выводы.

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

Микропроцессор, основанный на нечёткой логике , состоит из базы знаний, содержащей лингвистические переменные и нечёткие правила, и трёх блоков:

Блок фаззификации преобразует четкие (сrisp) величины, измеренные на выходе объекта управления, в нечеткие величины, описываемые лингвистическими переменными в базе знаний.

Блок решений использует нечеткие условные (if – then) правила, заложенные в базе знаний, для преобразования нечетких входных данных в требуемые управляющие воздействия, которые носят также нечеткий характер.

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

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

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

Похожие страницы:

Нечеткие множества. Лингвистическая переменная. Нечеткая логика. Нечеткий вывод. Композиционное правило вывода

. построении логического вывода в нечеткой логике. Пусть задано нечеткое высказывание  , где и – нечеткие множества. Пусть также .

Нечеткая логика в процессе моделирования

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

Использование нечеткой логики при моделировании и проектировании

. , традиционно принятого в управлении и идентификации. Сегодня нечеткая логика является стандартным методом при моделировании . всего написать сценарий. 2.Нечеткая логика в программе Simulink. Систему на нечеткой логике созданную в пакете Fuzzy .

Автоматическое регулирование микроклимата в зданиях и сооружениях на базе нечеткой логики

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

Конструирование алгоритмов управления на основе нечеткой логики и нейронных сетей

. управления на основе аппарата нечеткой логики и нейронных сетей. Нечеткое управление является практической альтернативой . стойкостью к зашумлению. перечень ссылок В.В. Круглов Нечеткая логика и искусственные нейронные сети / В.В. Круглов, М.И. Дли .

Немного теории


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

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

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

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

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

Фаззификация (переход к нечеткости)

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

Лингвистические переменные

В нечеткой логике значения любой величины представляются не числами, а словами естественного языка и называются ТЕРМАМИ. Так, значением лингвистической переменной ДИСТАНЦИЯ являются термы ДАЛЕКО, БЛИЗКО и т. д.

Конечно, для реализации лингвистической переменной необходимо определить точные физические значения ее термов. Пусть, например, переменная ДИСТАНЦИЯ может принимать любое значение из диапазона от 0 до 60 метров. Как же нам поступить? Согласно положениям теории нечетких множеств, каждому значению расстояния из диапазона в 60 метров может быть поставлено в соответствие некоторое число, от нуля до единицы, которое определяет СТЕПЕНЬ ПРИНАДЛЕЖНОСТИ данного физического значения расстояния (допустим, 10 метров) к тому или иному терму лингвистической переменной ДИСТАНЦИЯ. В нашем случае расстоянию в 50 метров можно задать степень принадлежности к терму ДАЛЕКО, равную 0,85, а к терму БЛИЗКО - 0,15. Конкретное определение степени принадлежности возможно только при работе с экспертами. При обсуждении вопроса о термах лингвистической переменной интересно прикинуть, сколько всего термов в переменной необходимо для достаточно точного представления физической величины. В настоящее время сложилось мнение, что для большинства приложений достаточно 3-7 термов на каждую переменную. Минимальное значение числа термов вполне оправданно.Такое определение содержит два экстремальных значения (минимальное и максимальное) и среднее. Для большинства применений этого вполне достаточно. Что касается максимального количества термов, то оно не ограничено и зависит целиком от приложения и требуемой точности описания системы. Число же 7 обусловлено емкостью кратковременной памяти человека, в которой, по современным представлениям, может храниться до семи единиц информации.

В заключение дадим два совета, которые помогут в определении числа термов:

n исходите из стоящей перед вами задачи и необходимой точности описания, помните, что для большинства приложений вполне достаточно трех термов в переменной;

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

Функции принадлежности

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


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

Подведем некоторый итог этапа фаззификации и дадим некое подобие алгоритма по формализации задачи в терминах нечеткой логики.

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

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

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

Разработка нечетких правил

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

Большинство нечетких систем используют продукционные правила для описания зависимостей между лингвистическими переменными. Типичное продукционное правило состоит из антецедента (часть ЕСЛИ …) и консеквента (часть ТО …). Антецедент может содержать более одной посылки. В этом случае они объединяются посредством логических связок И или ИЛИ.

Процесс вычисления нечеткого правила называется нечетким логическим выводом и подразделяется на два этапа: обобщение и заключение.

Пусть мы имеем следующее правило:

ЕСЛИ ДИСТАНЦИЯ=средняя И

УГОЛ=малый , ТО МОЩНОСТЬ=средняя .

Обратимся к примеру с контейнерным краном и рассмотрим ситуацию, когда расстояние до платформы равно 20 метрам, а угол отклонения контейнера на тросе крана равен четырем градусам. После фаззификации исходных данных получим, что степень принадлежности расстояния в 20 метров к терму СРЕДНЯЯ лингвистической переменной ДИСТАНЦИЯ равна 0,9, а степень принадлежности угла в 4 градуса к терму МАЛЫЙ лингвистической переменной УГОЛ равна 0,8.

На первом шаге логического вывода необходимо определить степень принадлежности всего антецедента правила. Для этого в нечеткой логике существуют два оператора: MIN(…) и MAX(…). Первый вычисляет минимальное значение степени принадлежности, а второй - максимальное значение. Когда применять тот или иной оператор, зависит от того, какой связкой соединены посылки в правиле. Если использована связка И, применяется оператор MIN(…). Если же посылки объединены связкой ИЛИ, необходимо применить оператор MAX(…). Ну а если в правиле всего одна посылка, операторы вовсе не нужны. Для нашего примера применим оператор MIN(…), так как использована связка И. Получим следующее:

Следовательно, степень принадлежности антецедента такого правила равна 0,8. Операция, описанная выше, отрабатывается для каждого правила в базе нечетких правил.

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

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

Дефаззификация (устранение нечеткости)

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

Результат нечеткого вывода, конечно же, будет нечетким. В примере с краном команда для электромотора крана будет представлена термом СРЕДНЯЯ (мощность), но для исполнительного устройства это ровно ничего не значит.

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

Метод центра максимума (СоМ)

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



Метод наибольшего значения (МоМ)

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


Метод центроида (СоА)

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


Основные шаги разработки нечеткой системы управления с использованием CAD-системы fuzzy TECH 3.0

Процесс разработки проекта нечеткой системы управления на fuzzy TECH разбивается, как уже говорилось, на четыре основных этапа. Все они схематично показаны на рис. 7.


На этом этапе при помощи средств, доступных в fuzzy TECH, задача формализуется. Здесь необходимо описать лингвистические переменные, которые вы будете использовать; их функции принадлежности; описать стратегию управления посредством нечетких правил, которые вы сможете объединить в единую базу правил или знаний о системе. В целом CASE-технология, на основе которой построен пакет, позволяет все эти действия выполнить только посредством общения с экраном ЭВМ, не заглядывая в программный код. Поэтому начальный этап проектирования вы воспримете с легкостью, несмотря на кажущуюся сложность. Можно дать один совет: обратите внимание на некоторые тонкости при разработке. Так, например, вы можете установить разрядность машинного кода, генерируемого пакетом. Это влияет на формат величин, которые можно использовать (см. табл. ниже).

Off-line-оптимизация

On-line-оптимизация

На этом шаге разрабатываемая система управления и реальный объект управления соединяются физической линией связи (см. рис. 8).

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

Реализация

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

Основу программного кода, генерируемого пакетом fuzzy TECH, составляет аппаратно-ориентированное на конкретный тип процессора ядро. Поставляемое с пакетом fuzzy TECH MCU-96 программное ядро совместимо с такими контроллерами, как 8096BH, 8096-90, 80196KB/KC/KD, 80196 KR, 80196MC, 80196NT/NQ.

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

- код библиотечных функций;

- сегмент базы правил и функций принадлежности;

- функции нечеткой системы.

Найти объем ОЗУ и ПЗУ, потребный для работы и хранения вашей системы, помогут следующие формулы:

- для оперативной памяти,


где

Sv - объем необходимой оперативной памяти;

ni - число входных переменных;

no - число выходных переменных;

ti - число термов во входной лингвистической переменной i;

tj - число термов в выходной лингвистической переменной j;

C - константа, равная 28 байтам для MCU-96 и 7 байт для MCU-51;

- для постоянной памяти:,


где

Sf - размер базы правил в байтах;

ni - число входных переменных;

no - число выходных переменных;

nr - число правил в базе знаний;

ti - число термов во входной лингвистической переменной i;

tj - число термов в выходной лингвистической переменной j;

Ir - число входных условий для правила r;

Or - число выходных условий для правила r;

Точный размер сгенерированного fuzzy TECH 3.0 кода указывается по окончании процесса компиляции.

Платформа 20 правил
2 вх. и 1 вых.
20 FAM-правил
2 вх. И 1 вых.
80 правил
3 вх. и 1 вых.
MCS-96, 16 бит, 80С196KD,
встроенное ПЗУ, 20 Мгц
0,28 мс
0,84 Кбайт ПЗУ
63 байт ОЗУ
0,29 мс
0,87 Кбайт ПЗУ
63 байт ОЗУ
0,43 мс
1.27 Кбайт ПЗУ
69 байт ОЗУ
MCS-51, 8 бит, 80С51,
встроенное ПЗУ, 12 МГц
1,4 мс
0,54 Кбайт ПЗУ
25 байт ОЗУ
1,5 мс
0,58 Кбайт ПЗУ
25 байт ОЗУ
4,4 мс
1,0 Кбайт ПЗУ
29 байт ОЗУ

1. Zade L. A. The concept of a linguistic variable and its application to approximate reasoning. Part 1, 2, 3 // Information Sciences, n. 8 pp.199-249, pp.301-357; n. 9 pp. 43-80.

2. Прикладные нечеткие системы: Перевод с япон./ К. Асаи, Д. Ватада, С. Иваи и др.; под ред. Т. Тэрано, К. Асаи, М. Сугено. - М.: Мир, 1993.

3. Mamdani E. H. Applications of fuzzy algorithms for simple dynamic plant. Porc. IEE. vol. 121, n. 12, pp. 1585-1588, 1974.

4. Smidth F. L. Computing with a human face. New Scientist, 6 may, 1982.

5. Yagashita O., Itoh O., and Sugeno M. Application of fuzzy reasoning to the water purification process, in Industrial Applications of Fuzzy Control, Sugeno M, Ed. Amsterdam: North-Holand 1985, pp.19-40.

6. Yasunobu S., Miyamoto S., and Ihara H. Fuzzy control for automatic train operation system, in Proc. 4th. IFAC/IFIP/IFORS Int. Congress on Control in Transportation Systems, Baden-Baden, April, 1983.

7. Yasunobu S., and Hasegawa T. Predictive fuzzy control and its applications for automatic container crane operation system, in Proc. 2nd. IFSA Congress, Tokyo, Japan, Julie 1987.

8. F. Fujitec, FLEX-8800 series elevator group control system, Fujitec Co., Ltd., Osaka, Japan, 1988.

9. Watanabe H., and Dettloff. Reconfigurable fuzzy logic processor: A full custom digital VLCI, in Int. Workshop on Fuzzy Systems Applications, Iiruka, Japan, Aug. 1988, pp. 49-50.

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

Файлы: 1 файл

Введение.doc

Введение

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

История нечеткой логики

Основанием для создания новой теории послужил спор профессора со своим другом о том, чья из жен привлекательнее. К единому мнению они не пришли. Это вынудило Заде сформировать концепцию, которая выражает нечеткие понятия типа “привлекательность” в числовой форме.

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

В Японии это направление переживает настоящий бум. Здесь функционирует специально созданная организация – Laboratory for International Fuzzy Engineering Research (LIFE). Программой этой организации является создание более близких человеку вычислительных устройств. LIFE объединяет 48 компаний, в числе которых Hitachi, Mitsubishi, NEC, Sharp, Sony, Honda, Mazda, Toyota. Из зарубежных (не японских) участников LIFE можно выделить IBM, Fuji, Xerox; к деятельности LIFE проявляет также интерес NASA.

Общие положения

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

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

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

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

После постановки задачи в терминах правил, состоящих из условий и выводов, производится их обработка по специальным алгоритмам. Идея обработки состоит в преобразовании (фазификация — fz) нечетких значений условий и выводов в количественную форму. Для этого используются различного рода функции принадлежности: треугольные, трапециидальные, колоколообразные и другие. Выбор типа функции зависит от решаемой задачи. Операция fz, по аналогии с интегральными преобразованиями Лапласа, Фурье и другими, может быть интерпретирована, как переход в другое пространство. В новом пространстве производится обработка нечетких переменных с использованием логических операций. В теории управления наиболее часто используется принцип максимина (алгоритм Мамдани). Затем полученный результат логической обработки с использованием обратного преобразования (дефазификации — dfz) переводится в исходное пространство числовых переменных.

Основные преимущества применения нечеткой логики для решения задач автоматизации по сравнению с традиционными подходами теории автоматического управления состоят в следующем:

- значительное повышение быстродействия процессов управления при использовании нечетких контроллеров;

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

- возможность синтеза адаптивных регуляторов на базе классических ПИД регуляторов;

- повышение точности алгоритмов фильтрации случайных возмущений при обработке информации от датчиков;

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

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

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

Данный подход предполагает использование знаний экспертов об объекте управления, представляемых в виде правил, выраженных на естественном языке. При описании объекта используются лингвистические переменные, определяющие состояние объекта. Дальнейшие процедуры формализации направлены на получение так называемых нечетких множеств, определяющих параметры объекта управления. Дальнейший расчет управления производится с помощью применения бинарных операций - t-норм - к нечетким множествам. t-нормы, или триангулярные нормы, реализуют логические операции "И", "ИЛИ", "НЕ", а также операции взятия минимума, максимума над нечеткими множествами. Последним этапом является обратное преобразование управления, полученного в виде нечеткого множества, в реальное значение выхода регулятора. Базовыми типами такого рода регуляторов являются контроллеры Мамдани и Суджено.

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

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

Базовые понятия нечеткой логики

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

Рассмотрим теперь другой пример, связанный с возрастом человека (рис. 1). До 16 лет нельзя однозначно утверждать, что человек молодой (например, 15-летие относится к термину молодой с рангом около 0,9). Зато диапазону от 16 до 30 лет можно смело присвоить ранг 1, т.е. человек в этом возрасте молодой. После 30 лет человек вроде уже не молодой, но еще и не старый, здесь принадлежность (ранг) термина молодой возрасту будет принимать значения в интервале от 0 до 1. И чем больше возраст человека, тем меньше становится его принадлежность к молодым, т.е. ранг будет стремиться к 0.

Рис. 1. Нечеткое множество для термина молодой.

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

К нечетким множествам можно применять следующие операции:

5.размывание (или размытие)

Фаззификация - сопоставление множества значений х ее функции принадлежности М(х), т.е. перевод значений х в нечеткий формат (пример с термином молодой).

Дефаззификация - процесс, обратный фаззификации.

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

Степень принадлежности - это не вероятность, т.к. неизвестна функция распределения, нет повторяемости экспериментов. Так, если взять из рассмотренного ранее примера прогноза погоды два взаимоисключающих события: будет дождь и не будет и присвоить им некоторые ранги, то сумма этих рангов необязательно будет равна 1, но если равенство все-таки есть, то нечеткое множество считается нормированным. Значения функции принадлежности M(x) могут быть взяты только из априорных знаний, интуиции (опыта), опроса экспертов.

В нечеткой логике вводится понятие лингвистической переменной, значениями которой являются не числа, а слова естественного языка, называемые термами. Например, в случае управления мобильным роботом можно ввести две лингвистические переменные: ДИСТАНЦИЯ (расстояние до помехи) и НАПРАВЛЕНИЕ (угол между продольной осью робота и направлением на помеху).

Рис. 2.

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

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

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

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

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

Фаззификация (переход к нечеткости)

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

В нечеткой логике значения любой величины представляются не числами, а словами естественного языка и называются ТЕРМАМИ. Так, значением лингвистической переменной ДИСТАНЦИЯ являются термы ДАЛЕКО, БЛИЗКО и т. д.

Конечно, для реализации лингвистической переменной необходимо определить точные физические значения ее термов. Пусть, например, переменная ДИСТАНЦИЯ может принимать любое значение из диапазона от 0 до 60 метров. Как же нам поступить? Согласно положениям теории нечетких множеств, каждому значению расстояния из диапазона в 60 метров может быть поставлено в соответствие некоторое число, от нуля до единицы, которое определяет СТЕПЕНЬ ПРИНАДЛЕЖНОСТИ данного физического значения расстояния (допустим, 10 метров) к тому или иному терму лингвистической переменной ДИСТАНЦИЯ. В нашем случае расстоянию в 50 метров можно задать степень принадлежности к терму ДАЛЕКО, равную 0,85, а к терму БЛИЗКО - 0,15. Конкретное определение степени принадлежности возможно только при работе с экспертами. При обсуждении вопроса о термах лингвистической переменной интересно прикинуть, сколько всего термов в переменной необходимо для достаточно точного представления физической величины. В настоящее время сложилось мнение, что для большинства приложений достаточно 3-7 термов на каждую переменную. Минимальное значение числа термов вполне оправданно.Такое определение содержит два экстремальных значения (минимальное и максимальное) и среднее. Для большинства применений этого вполне достаточно. Что касается максимального количества термов, то оно не ограничено и зависит целиком от приложения и требуемой точности описания системы. Число же 7 обусловлено емкостью кратковременной памяти человека, в которой, по современным представлениям, может храниться до семи единиц информации.

В заключение дадим два совета, которые помогут в определении числа термов:

n исходите из стоящей перед вами задачи и необходимой точности описания, помните, что для большинства приложений вполне достаточно трех термов в переменной;

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

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

Рис. 3.

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

Подведем некоторый итог этапа фаззификации и дадим некое подобие алгоритма по формализации задачи в терминах нечеткой логики.

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

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

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

Разработка нечетких правил

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

Большинство нечетких систем используют продукционные правила для описания зависимостей между лингвистическими переменными. Типичное продукционное правило состоит из антецедента (часть ЕСЛИ …) и консеквента (часть ТО …). Антецедент может содержать более одной посылки. В этом случае они объединяются посредством логических связок И или ИЛИ.

Процесс вычисления нечеткого правила называется нечетким логическим выводом и подразделяется на два этапа: обобщение и заключение.

Пусть мы имеем следующее правило:

ЕСЛИ ДИСТАНЦИЯ=средняя И

УГОЛ=малый, ТО МОЩНОСТЬ=средняя.

Обратимся к примеру с контейнерным краном и рассмотрим ситуацию, когда расстояние до платформы равно 20 метрам, а угол отклонения контейнера на тросе крана равен четырем градусам. После фаззификации исходных данных получим, что степень принадлежности расстояния в 20 метров к терму СРЕДНЯЯ лингвистической переменной ДИСТАНЦИЯ равна 0,9, а степень принадлежности угла в 4 градуса к терму МАЛЫЙ лингвистической переменной УГОЛ равна 0,8.

На первом шаге логического вывода необходимо определить степень принадлежности всего антецедента правила. Для этого в нечеткой логике существуют два оператора: MIN(…) и MAX(…). Первый вычисляет минимальное значение степени принадлежности, а второй - максимальное значение. Когда применять тот или иной оператор, зависит от того, какой связкой соединены посылки в правиле. Если использована связка И, применяется оператор MIN(…). Если же посылки объединены связкой ИЛИ, необходимо применить оператор MAX(…). Ну а если в правиле всего одна посылка, операторы вовсе не нужны. Для нашего примера применим оператор MIN(…), так как использована связка И. Получим следующее:

Следовательно, степень принадлежности антецедента такого правила равна 0,8. Операция, описанная выше, отрабатывается для каждого правила в базе нечетких правил.

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

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

Дефаззификация (устранение нечеткости)

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

Результат нечеткого вывода, конечно же, будет нечетким. В примере с краном команда для электромотора крана будет представлена термом СРЕДНЯЯ (мощность), но для исполнительного устройства это ровно ничего не значит.

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

Метод центра максимума (СоМ)

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

Рис. 4.


Метод наибольшего значения (МоМ)

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


Метод центроида (СоА)

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

Рис. 5.

Основные шаги разработки нечеткой системы управления с использованием CAD-системы fuzzy TECH 3.0

Процесс разработки проекта нечеткой системы управления на fuzzy TECH разбивается, как уже говорилось, на четыре основных этапа. Все они схематично показаны на рис. 7.

Рис. 6.

На этом этапе при помощи средств, доступных в fuzzy TECH, задача формализуется. Здесь необходимо описать лингвистические переменные, которые вы будете использовать; их функции принадлежности; описать стратегию управления посредством нечетких правил, которые вы сможете объединить в единую базу правил или знаний о системе. В целом CASE-технология, на основе которой построен пакет, позволяет все эти действия выполнить только посредством общения с экраном ЭВМ, не заглядывая в программный код. Поэтому начальный этап проектирования вы воспримете с легкостью, несмотря на кажущуюся сложность. Можно дать один совет: обратите внимание на некоторые тонкости при разработке. Так, например, вы можете установить разрядность машинного кода, генерируемого пакетом. Это влияет на формат величин, которые можно использовать (см. табл. ниже).

На этом шаге разрабатываемая система управления и реальный объект управления соединяются физической линией связи (см. рис. 8).

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

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

Основу программного кода, генерируемого пакетом fuzzy TECH, составляет аппаратно-ориентированное на конкретный тип процессора ядро. Поставляемое с пакетом fuzzy TECH MCU-96 программное ядро совместимо с такими контроллерами, как 8096BH, 8096-90, 80196KB/KC/KD, 80196 KR, 80196MC, 80196NT/NQ.

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

- код библиотечных функций;

- сегмент базы правил и функций принадлежности;

- функции нечеткой системы.

Найти объем ОЗУ и ПЗУ, потребный для работы и хранения вашей системы, помогут следующие формулы:

- для оперативной памяти,


где

Sv - объем необходимой оперативной памяти;

ni - число входных переменных;

no - число выходных переменных;

ti - число термов во входной лингвистической переменной i;

tj - число термов в выходной лингвистической переменной j;

C - константа, равная 28 байтам для MCU-96 и 7 байт для MCU-51;

- для постоянной памяти:,


где

Sf - размер базы правил в байтах;

ni - число входных переменных;

no- число выходных переменных;

nr - число правил в базе знаний;

ti - число термов во входной лингвистической переменной i;

tj - число термов в выходной лингвистической переменной j;

Ir - число входных условий для правила r;

Or - число выходных условий для правила r;

Точный размер сгенерированного fuzzy TECH 3.0 кода указывается по окончании процесса компиляции.

20 правил
2 вх. и 1 вых.

20 FAM-правил
2 вх. И 1 вых.

80 правил
3 вх. и 1 вых.

MCS-96, 16 бит, 80С196KD,
встроенное ПЗУ, 20 Мгц

0,28 мс
0,84 Кбайт ПЗУ
63 байт ОЗУ

0,29 мс
0,87 Кбайт ПЗУ
63 байт ОЗУ

0,43 мс
1.27 Кбайт ПЗУ
69 байт ОЗУ

MCS-51, 8 бит, 80С51,
встроенное ПЗУ, 12 МГц

1,4 мс
0,54 Кбайт ПЗУ
25 байт ОЗУ

1,5 мс
0,58 Кбайт ПЗУ
25 байт ОЗУ

4,4 мс
1,0 Кбайт ПЗУ
29 байт ОЗУ

1. Zade L. A. The concept of a linguistic variable and its application to approximate reasoning. Part 1, 2, 3 // Information Sciences, n. 8 pp.199-249, pp.301-357; n. 9 pp. 43-80.

2. Прикладные нечеткие системы: Перевод с япон./ К. Асаи, Д. Ватада, С. Иваи и др.; под ред. Т. Тэрано, К. Асаи, М. Сугено. - М.: Мир, 1993.

3. Mamdani E. H. Applications of fuzzy algorithms for simple dynamic plant. Porc. IEE. vol. 121, n. 12, pp. 1585-1588, 1974.

4. Smidth F. L. Computing with a human face. New Scientist, 6 may, 1982.

5. Yagashita O., Itoh O., and Sugeno M. Application of fuzzy reasoning to the water purification process, in Industrial Applications of Fuzzy Control, Sugeno M, Ed. Amsterdam: North-Holand 1985, pp.19-40.

6. Yasunobu S., Miyamoto S., and Ihara H. Fuzzy control for automatic train operation system, in Proc. 4th. IFAC/IFIP/IFORS Int. Congress on Control in Transportation Systems, Baden-Baden, April, 1983.

7. Yasunobu S., and Hasegawa T. Predictive fuzzy control and its applications for automatic container crane operation system, in Proc. 2nd. IFSA Congress, Tokyo, Japan, Julie 1987.

8. F. Fujitec, FLEX-8800 series elevator group control system, Fujitec Co., Ltd., Osaka, Japan, 1988.

9. Watanabe H., and Dettloff. Reconfigurable fuzzy logic processor: A full custom digital VLCI, in Int. Workshop on Fuzzy Systems Applications, Iiruka, Japan, Aug. 1988, pp. 49-50.

Читайте также: