Нечеткие системы управления. Проектирование нечетких систем. Интеллектуальные информационные системы


Проектирование нечетких систем

Нечеткие системы (независимо от того, являются ли они нечеткими моделями или нечеткими контроллерами) (рис. 6) включают два главных компонента:

· Базу знаний (БЗ), в которой хранятся доступные или приобретенные знания о задаче, требующей решения, в форме нечетких правил;

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

Оба этих компонента должны быть спроектированы так, чтобы построить систему для конкретного приложения:

· БЗ формируют из знаний экспертов или путем обучения с помощью машинных методов;

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

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

Рис. 7

Проектирование БЗ затрагивает две подзадачи:

1. Определœение базы данных (БД):

· Универсум для переменных;

· Масштабирующие коэффициенты или функции;

· Гранулированность (число лингвистических терм) для каждой переменной;

· Функции принадлежности, описывающие термы.

2. Составление базы правил (БП): формулировка базовых правил.

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

Классификация генетических нечетких систем

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

Обычно методы проектирования ГНЛС разделяют на два процесса, настройка (ᴛ.ᴇ. адаптация) и обучение . При этом будем исходить из факта͵ существует или нет исходная БЗ, включая БД и БП. Тогда в рамках ГНЛС мы вводим следующее делœение.

· Генетическая настройка. В случае если существует БЗ, мы применяем процесс генетической настройки для улучшения свойств нечеткой системы, но не изменяем БП. Т.е. мы настраиваем параметры НЛС с целью улучшения ее свойств, сохраняя неизменной БП.

· Генетическое обучение. Вторая возможность обучать компоненты БП, к которым можно отнести адаптацию механизма инференции. Т.е. мы затрагиваем обучение компонентов БП, наряду с другими компонентами НЛС.

1) Генетическая настройка базы данных. Осуществляется путем определœения предварительно вида и параметров масштабирующих функций входа и выхода, а также функций принадлежности, и затем настройки этих параметров и тем самым изменения формы масштабирующих функций и функций принадлежности с помощью ГА (рис. 8).

2) Генетическое обучение базы правил . Генетическое обучение БП предполагает предопределœенное множество функций принадлежности в БД, к которым правила обращается посредством лингвистических терм.

Когда рассматривается задача обучения базы правил, открывается широкий диапазон возможностей. Имеется три главных подхода: питтсбургский, мичиганский и итеративный методы обучения. Питтсбургский и мичиганский подходы являются наиболее распространенными методами для обучения правил, разработанные в области ГА. Первый из них характеризуется представлением всœего набора (совокупности) правил как генетического кода (хромосомы), «хромосома=набор правил», сохраняя неизменной популяцию кандидатов на роль правил и, используя селœекцию, и генетические операторы для создания новых поколений наборов правил. Мичиганский подход рассматривает другую модель, в которой члены популяции являются отдельными правилами, «хромосома=правило» и набор правил представляется всœей популяцией. В третьем случае, итеративном методе с помощью хромосом кодируют отдельные правила, и новое правило настраивается и добавляется в набор правил, итеративным способом.

Разработайте и моделируйте системы нечеткой логики

Fuzzy Logic Toolbox™ обеспечивает функции MATLAB ® , приложения и блок Simulink ® для анализа, разработки и симуляции систем на основе нечеткой логики. Руководства по продукту вы через шаги разработки нечетких систем вывода. Функции обеспечиваются для многих общепринятых методик, включая нечеткую кластеризацию и адаптивное нейронечеткое изучение.

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

Начало работы

Изучите основы Fuzzy Logic Toolbox

Нечеткое системное моделирование вывода

Создайте нечеткие системы вывода и нечеткие деревья

Нечеткая системная настройка вывода

Настройте функции принадлежности и правила нечетких систем

Кластеризация данных

Найдите кластеры в данных о вводе/выводе с помощью нечетких c-средних-значений или отнимающей кластеризации

Введение

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

Нечеткие системы управления

Нечеткая система (НС) -- это система, особенностью описания которой является:

· нечеткая спецификация параметров;

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

· нечеткое описание функционирования системы на основе продукционных «ЕСЛИ…ТО…»правил.

Важнейшим классом нечетких систем являются нечеткие системы управления (НСУ). Одним из важнейших компонентов НСУ является база знаний, которая представляет собой совокупность нечетких правил «ЕСЛИ--ТО», определяющих взаимосвязь между входами и выходами исследуемой системы. Существуют различные типы нечетких правил: лингвистическая, реляционная, модель Takagi-Sugeno.

Для многих приложений, связанных с управлением технологическими процессами, необходимо построение модели рассматриваемого процесса. Знание модели позволяет подобрать соответствующий регулятор (модуль управления). Однако часто построение корректной модели представляет собой трудную проблему, требующую иногда введения различных упрощений. Применение теории нечетких множеств для управления технологическими процессами не предполагает знания моделей этих процессов. Следует только сформулировать правила поведения в форме нечетких условных суждений типа «ЕСЛИ-ТО».

Рис. 1. Структура нечеткой системы управления

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

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

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

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

В нечеткой логике значения любой величины представляются не числами, а словами естественного языка и называются «термами». Так, значением лингвистической переменной «Дистанция» являются термы «Далеко», «Близко» и т. д. Для реализации лингвистической переменной необходимо определить точные физические значения ее термов. Допустим переменная «Дистанция» может принимать любое значение из диапазона от 0 до 60 метров. Согласно положениям теории нечетких множеств, каждому значению расстояния из диапазона в 60 метров может быть поставлено в соответствие некоторое число, от нуля до единицы, которое определяет степень принадлежности данного физического значения расстояния (допустим, 10 метров) к тому или иному терму лингвистической переменной «Дистанция». Тогда расстоянию в 50 метров можно задать степень принадлежности к терму «Далеко», равную 0,85, а к терму «Близко» - 0,15. Задаваясь вопросом, сколько всего термов в переменной необходимо для достаточно точного представления физической величины принято считать, что достаточно 3-7 термов на каждую переменную для большинства приложений. Большинство применений вполне исчерпывается использованием минимального количества термов. Такое определение содержит два экстремальных значения (минимальное и максимальное) и среднее. Что касается максимального количества термов, то оно не ограничено и зависит целиком от приложения и требуемой точности описания системы. Число 7 же обусловлено емкостью кратковременной памяти человека, в которой, по современным представлениям, может храниться до семи единиц информации.

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

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

Рис. 2. Стандартные функции принадлежности

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

Разработайте и моделируйте системы нечеткой логики

Fuzzy Logic Toolbox™ обеспечивает функции MATLAB ® , приложения и блок Simulink ® для анализа, разработки и симуляции систем на основе нечеткой логики. Руководства по продукту вы через шаги разработки нечетких систем вывода. Функции обеспечиваются для многих общепринятых методик, включая нечеткую кластеризацию и адаптивное нейронечеткое изучение.

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

Начало работы

Изучите основы Fuzzy Logic Toolbox

Нечеткое системное моделирование вывода

Создайте нечеткие системы вывода и нечеткие деревья

Нечеткая системная настройка вывода

Настройте функции принадлежности и правила нечетких систем

Кластеризация данных

Найдите кластеры в данных о вводе/выводе с помощью нечетких c-средних-значений или отнимающей кластеризации

Лекция № 6. ПРОЕКТИРОВАНИЕ НЕЧЕТКИХ АЛГОРИТМОВ УПРАВЛЕНИЯ ДИНАМИЧЕСКИМИ ОБЪЕКТАМИ

Общие принципы построения интеллектуальных систем управления на основе нечеткой логики

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

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

Когда имеется некоторое лингвистическое описание, которое отражает качественное понимание (представление) процесса и позволяет непосредственно построить множество нечетких логических правил;

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

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

С помощью входных/выходных данных оцениваются нечеткие логические правила поведения системы.

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

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

Рис. 5.1. Структурная схема системы нечеткого управления

На рис. 3.1 ДФ - динамический фильтр, выделяющий, помимо сигналов ошибок управления x 1 =r 1 -y 1 и х 3 =r 2 -у 2 , производные от этих сигналов и ;

РНЛ - регулятор на основе нечеткой логики ("нечеткий регулятор”, включающий в себя базу знаний (конкретнее - базу правил) и механизм логического вывода;

соответственно векторы задающих воздействий (уставок), входов и выходов РНЛ, а также выходов объекта управления (т.е. парогенератора); т - операция транспонирования вектора.

В качестве входов и выходов РНЛ выступают:

Отклонение давления в паровом котле (y 1) по отношению к и требуемому (номинальному) значению (r 1);

Скорость изменения Р Е;

Отклонение скорости изменения давления (у 2) по отношению к его заданному значению (r 2);

Скорость изменения SE;

u 1 =H c – изменение степени подогрева пара;

U 2 =: Тс - изменение положения дросселя.

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

L= {NB,NM,NS,NO,PO,PS,PM,PB}.

Здесь 1-я буква в обозначении указывает знак числовой переменной и соответствует английскому слову Negative ("отрицательное") или Positive ("положительное"), 2-я буква говорит об абсолютном значении переменной: Big ("большое"), Middle ("среднее"), Small ("малое") или О ("близкое к нулю"). Например, символ NS означает "отрицательное малое".

В процессе работы ИСУ в каждый момент времени используется один из двух нечетких алгоритмов: по первому из них осуществляется регулирование давления в котле путем изменения подогрева пара Н c , по второму поддерживается требуемая скорость изменения давления с помощью изменения положения регулирующего дросселя Т с. Каждый из алгоритмов состоит из ряда правил – высказываний, записанных на естественном языке, типа:

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

"Если скорость изменения давления чуть ниже нормы и в то же время эта скорость резко растет, то следует изменить положение дросселя на положительную, достаточно малую, величину".

Используя введенные выше обозначения, можно переписать эти правила в следующем виде:

"ЕСЛИ (P E =NB И C PE =HE (NB ИЛИ NM), ТО Н С =РВ";

"ЕСЛИ (S E =NO И C SE =PB), TO T C =PS".

Реализация предложенных алгоритмов нечеткого управления при этом принципиально отличается от классических ("жестких") алгоритмов, построенных на основе концепции обратной связи (Feed-back Control) и, по существу, просто воспроизводящих некоторую заданную функциональную зависимость или дифференциальное уравнение.

Нечеткий регулятор берет на себя те функции, которые обычно выполняются опытным и умелым обслуживающим персоналом. Эти функции связаны с качественной оценкой поведения системы, анализом текущей меняющейся ситуации и выбором наиболее подходящего для данной ситуации способа управления объектом. Данная концепция управления получила название опережающего (или упреждающего) управления (Feed-Forward Control).

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

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

Как видно из данной схемы, формирование управляющих воздействий u 1 ,u 2 ,...,u m включает в себя следующие этапы:

а) получение отклонений управляемых координат и скоростей их изменения – х 1 ,x 2 ,...,х n ;

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

в) определение нечетких (качественных) значений выходных переменных u 1 ,u 2 ,...,u m (в виде функций их принадлежности соответствующим нечетким подмножествам) на основе заранее формулированных правил логического вывода, записанных в базе правил;

г) "дефаззификация", т.е. вычисление реальных числовых значений выходов u 1 ,u 2 ,...,u m , используемых для управления объектом.

Рис. 3.2. Блок-схема нечеткого регулятора

Помимо представленного на рис. 3.1 варианта "чистого" использования нечеткого управления, существуют и другие варианты построения ИСУ с нечеткими регуляторами. Так, в классической теории регулирования широкое распространение получило использование ПИД - регулятора, выходной сигнал которого вычисляется по формуле

(3.1)

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

Возможное использование нечеткого регулятора (НР) для автоматической настройки (адаптации) указанных параметров ПИД - регулятора показано на рис. 3.3,а. Другие варианты применения HP – формирование уставок обычных регуляторов (рис. 3.3,6); подключение параллельно ПИД - регулятору (рис. 3.3, в); управление с предварительной оценкой характеристик сигналов (ОХС), получаемых с датчиков, на основе интерпретации их значимости, выделения обобщенных показателей качества и т. п. с последующей обработкой с помощью алгоритмов нечеткой логики (рис. 3.3,г).

Рис. 3.3. Структуры ИСУ с нечеткими регуляторами

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

Большое число входных параметров, подлежащих анализу (оценке);

Большое число управляющих воздействий (многомерность);

Сильные возмущения;

Нелинейности;

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

Возможность использования технических знаний "know - how".

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

1) приложения, которые пока были не связаны с автоматизацией, требующие применения "know - how", например, пивоварение (где можно воспользоваться знаниями экспертов с целью повышения качества продукции), подъемные краны (для повышения производительности рабочего персонала) и т. п.;

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

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