Текст
                    Московский государственный технический университет
имени Н.Э. Баумана
Учебное пособие
Н.П. Деменков
НЕЧЕТКОЕ УПРАВЛЕНИЕ
В ТЕХНИЧЕСКИХ СИСТЕМАХ
Издательство МГТУ имени Н.Э. Баумана


МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ им. 11.Э. БАУМАНА Н.П. Демепков НЕЧЕТКОЕ УПРАВЛЕНИЕ В ТЕХНИЧЕСКИХ СИСТЕМАХ Рекомендовано редсоветом МГГУ нм. И.Э. Баумана в качестве учебного пособия Москва Издательство МГГУ им. Н.Э. Баумана 2005
УДК 681.5:683.3(075.8) ББК 14.2.6 ДЗО Рецензенты: В.М. Недашковский, В.II. Хохловский Деменков Н.П. ДЗО I (ечеткое управление в технических системах: Учебное пособие. М.: Изд-во МГТУ им. Н.Э. Баумана, 2005. - 200 с.: ил. ISBN 5-7038-2742-6 Рассматриваются вопросы, связанные с использованием тео- рии нечеткого управления для решения неформализованных задач оптимизации в технических системах. Изложены методы проектирования АСУ ГП на основе теории нечеткого управления в соответствии с международным стандар- том IEC 61131-7. Значительное внимание уделено существующим пакетам прикладных программ, реализующим нечеткое управление для решения технических задач: Matlab, Concept, Трейс Моуд. Для студентов МГТУ им. Н.Э. Баумана, изучающих курсы «Управление в технических системах», «Управляющие ЭВМ и комплексы», «Проектирование систем управления производствен- ными процессами», «Алгоритмическое и программное обеспечение систем управления». Настоящее издание будет полезным также для широкого круга научных работников, инженеров, аспирантов и студентов старших курсов технических университетов. Ил. 170. Табл. 12. Библиогр. 59 пазв. УДК 681.5:683.3(075.8) ББК 14.2.6 Николай Петрович Деменков Нечеткое управление в технических системах Учебное пособие Редактор О.М. Корочева Корректор Л.И. Малютина Компьютерная верстка А.Ю. Ураловой Подписано в печать 20.09.05. Формат 60x84/16. Бумага офсетная. Печ.л. 12,5. Усл. печ. л. 11,63. Уч.-изд. л. 11,45. Тираж 200 экз. Изд. № 22. Заказ Издательство МГГУ им. Н.Э. Баумана. 105005, Москва, 2-я Бауманская ул., 5. © МГТУ им Н.Э. Баумана, 2005
Посвящается 175-летию МГТУ им. Н.Э. Баумана ПРЕДИСЛОВИЕ Современные методы управления производственными процес- сами на основе компьютерных технологий получили распростране- ние на большинстве промышленных предприятий. Период с 80-х годов XX века до настоящего времени характеризуется широким использованием в различных областях пауки и техники интеллек- туальных систем управления. К ним относятся и системы нечетко- го управления, или «fuzzy control». Сочетание «fuzzy control» обычно интерпретируется как «нечеткое (неясное, размытое) управление». Fuzzy control - одно из направлений современных новейших технологий управления [1,2, 3]. Книга посвящена рассмотрению прикладных методов нечетко- го управления в контексте решения практических задач с исполь- зованием специализированных программных средств Matlab, Con- cept и Трейс Моуд. Основная цель учебного пособия - привлечь внимание студен- тов, аспирантов, преподавателей, инженеров, молодых научных сотрудников к «нечеткой проблематике» и дать доступное введе- ние в одну из интереснейших и перспективных областей совре- менных высоких технологий - нечеткое управление. Чем же обусловлена актуальность новой технологии и в чем проявляется ее преимущество перед известными и ставшими уже классическими концепциями управления? Прежде всего это тенденция увеличения сложности математи- ческих моделей реальных систем и процессов управления, связан- ная с желанием повысить их адекватность и учесть все большее число различных факторов, оказывающих влияние на процессы принятия решений. С одной стороны, традиционные методы построения моделей нс приводят к удовлетворительным результатам, когда исходное описание проблемы, подлежащей решению, заведомо является не- точным и неполным. С другой стороны, стремление получить ис- черпывающую информацию для построения точной математиче- 3
ской модели сложной реальной ситуации часто приводит к потере времени и средств, поскольку это в принципе невозможно. Целесообразно воспользоваться методами, которые специ- ально ориентированы на построение моделей, учитывающих не- полноту и неточность исходных данных. Именно в таких ситуа- циях технология нечеткого управления оказывается наиболее конструктивной, поскольку за последнее десятилетие на ее осно- ве были решены сотни практических задач управления и приня- тия решений. Для чего необходимо нечеткое управление? Во-первых, нечеткое управление является новой технологией и поэтому может быть использовано для уклонения от требований по патентной чистоте товаров при схожих технических средствах. Во-вторых, сегодня «нечеткости» в продукции желает потре- битель, так как «нечеткость» представляет собой «высокую техно- логию», а это является синонимом товара высшего качества. В этом случае технология «нечеткости» используется как инстру- мент на рынке товаров. В-третьих, проектированию нечетких регуляторов можно легко обучиться, а для его эксплуатации требуется менее опытный пер- сонал по сравнению с традиционным регулятором. Этот факт сни- жает стоимость продукции. В-четвертых, нечеткий регулятор обеспечивает большую роба- стность (устойчивость), чем традиционный регулятор. В-пятых, нечеткий регулятор лучше управляет нелинейным процессом. Теория нечетких множеств, основные идеи которой были пред- ложены американским ученым Л. Заде (L. Zadeh) в 1965 году, по- зволяет описывать качественные, неточные понятия и наши знания об окружающем мире, а также позволяет оперировать этими зна- ниями с целью получения новой информации. Созданные на базе этой теории методы построения информационных моделей сущест- венно расширяют традиционные области применения компьютеров и образуют самостоятельную область научно-прикладных исследо- ваний нечеткое управление, которое является одним из наиболее активных и перспективных направлений прикладных исследований в задачах управления и принятия решений. 11ечеткое управление оказывается особенно полезным, когда в описании технических систем и биз1 iec-процессов присутствует неопределенность, которая затрудняет или даже исключает применение точных количествен- ных методов и подходов. 4
Использование нечеткого регулятора в таких бытовых това- рах как стиральная машина, пылесос, электробритва, кондицио- нер (и т. д.), придает этим товарам более совершенные потреби- тельские свойства, делает их более конкурен тными на традицион- ных рынках сбыта. Так, стиральная машина, оснащенная нечетким регулятором, автоматически оценивает степень загрязненности и тип материала, а затем автоматически определяет необходимое количество воды и стирального порошка, минимизируя их потреб- ление. Пылесос с нечетким регулятором автоматически оценивает степень загрязненности пола и регулирует скорость вращения электродвигателя в зависимости от запыленности, обеспечивая потребление двигателем минимального количества электроэнер- гии по сравнению с традиционным пылесосом, который не осна- щен нечетким регулятором. Карманная электробритва с питанием от аккумулятора, оснащенная нечетким регулятором, авюматиче- ски определяет плотность волосяного покрова и регулирует ско- рость вращения двигателя бритвы, обеспечивая минимальное по- требление электроэнергии. Нечеткий регулятор автоматически управляет кондиционером, который учитывает изменение темпе- ратуры комнаты и влажность в зависимости от количества людей в комнате, реагирует на запах табака и другие запахи путем автома- тического переключения режимов работы вентилятора кондицио- нера, создавая комфортные условия. Нечеткий регулятор функционирует в терминах правил «если- затем» (if-then) и, таким образом, может обеспечивать исполне- ние дружественного и понимаемого человеком представления знания. Некоторые исследователи видят в этом язык программи- рования очень высокого уровня, в котором программирование осуществляется в виде написания команд «если-загсм», а регуля- тор интерпретирует эти команды в нелинейный алгоритм управ- ления. В результате качественные высказывания программиру- ются средствами, которые представляются сообщениями типа «если-затем», а получаемая рабочая программа имеет качествен- ное содержание и функционирует по сигналам от датчиков и ис- полнительных механизмов. Интуитивно ясно, что это вызывает потерю информации, по- скольку не существует единственного преобразования количест- венной категории в качественное представление, кроме специаль- ных случаев. К примеру, имеется не единственное качественное преобразование высказывания «большое напряжение» в числовую величину этого напряжения, и наоборот. 5
При управлении результаты вычислений на выходе регулятора представляются в количественной форме, затем перерабатываются в сигналы для пусковых устройств (соленоидов) двигателей, засло- нок, насосов, электронагревателей (и т. д.), являющихся дополни- тельными техническими средствами, которые служат для преобра- зования информации. Это способствует тому, что даже сложные стратегии управления, используемые операторами или инженерами- технологами, полученные ими в результате экспериментов или из своих профессиональных знаний, могут быть запрограммированы и поддержаны естественным и понимаемым способом. Исследователи часто утверждают, что нечеткое управление обеспечивает большую робастность. Однако не имеется никаких результатов исследований, которые в общем случае доказывают, что нечеткие регуляторы более робастные, чем традиционные [4]. Можно показать, что нечеткий регулятор является фактически статической нелинейностью и, следовательно, из двух типов регу- ляторов является более робастным, чем традиционный, а степень робастности зависит от правил, определяющих эту статическую нелинейность. Однако если изменения параметров процесса явля- ются частично известными, то нечеткий регулятор может быть спроектирован так, что он будет нечувствительным к изменению параметров процесса, следовательно, будет более робастным по сравнению с линейным регулятором. Действительно, как показано в [5], нечеткий регулятор в неяв- ной форме обеспечивает демпфирование при переходе параметров из одного множества в другое. Следовательно, большая робаст- ность нечетких регуляторов могла бы интерпретироваться как большая робастность при известных изменениях параметров. Од- нако для практического применения нечеткого регулятора еще ос- таются проблемы, решение которых зависит в основном от знаний регулируемых процессов. Другие исследователи утверждают, что нечеткий регулятор более приспособлен для управления нелинейными процессами, так как является более высокой формой регулятора по отношению к линейному регулятору в случае управления нелинейными процес- сами. Подобное утверждение действительно справедливо тогда, когда нелинейный процесс может быть описан как функция ошиб- ки и ее производной, которые подаются как входные сигналы на регулятор. Этот случай не является обычным, поскольку ошибка и ее производная являются не только детерминированными процес- сами, они также зависят от задания. 6
Если требуется, чтобы регулятор управлял нелинейными про- цессами и не был основан на ошибке и ее производных, для неко- торых регуляторов можно было бы использовать, например, задание или выходной процесс (или их производные) для допол- нительных входов в регулятор. В общем виде это может быть сформулировано в основном для некоторых входов регулятора таким образом: нечеткий регулятор может управлять нелиней- ным процессом ничуть не хуже, чем это делает линейный регуля- тор, именно потому, что нечеткий регулятор в принципе является более восприимчивым для управления нелинейным процессом, но для этого необходимо иметь дополнительные сведения об этом нелинейном процессе. Некоторые исследователи могли бы заметить, что робаст- ность человеческого регулирования является первично обуслов- ленной способностью человека адаптироваться к изменяющейся обстановке и способностью человека производить интуитивную линеаризацию. Реализация этих способностей внутри нечетких регуляторов является высшим примером нечеткого регулирова- ния в потребительских товарах на сегодня, а с результатами ис- следований по адаптивному нечеткому управлению можно озна- комиться в этом пособии. Суммируя сказанное выше, можно констатировать следующее: нечеткий регулятор обеспечивает метод для конструирования ал- горитма регулирования пользователем и обеспечивает способность охватывать «человеческий» режим нелинейного управления, что позволяет решать более сложные задачи. Этот метод проектирова- ния регуляторов подобен человеческому мышлению и требуез ме- нее квалифицированного персонала для проектирования регулято- ров. Экономическая выгода здесь очевидна. Нечеткое управление можно использовать следующим образом: 1) в процессах, которые могут адекватно регулироваться чело- веком, если сконструированный регулятор имеет датчики, обеспе- чивающие его похожей информацией, которая используется чело- веком при управлении процессом. Например, нечеткая логика мо- жет применяться в автоматической коробке передач автомобиля, в стиральных машинах и т. д. Сегодня имеется много применений нечеткой логики в потребительских товарах; 2) в процессах, которые в настоящее время управляются по линейным алгоритмам управления и в дальнейшем будут необхо- димы для нелинейных алгоритмов управления, известных операто- рам или инженерам-технологам. Нечеткая логика имеет успех по- 7
тому, что она заменяет классический ПИД-регулятор [6]. Настраи- вая параметры ПИД-регулятора, мы влияем на форму создания кривой управления. Так как нечеткая логика основана на правилах регулирования, форма кривой может создаваться индивидуально на каждом ее участке, а с помощью нечеткой логики можно огра- ничить влияние соседних участков кривой. В некоторых исследованиях содержится более или менее кри- тическая точка зрения на нечеткий регулятор, например в [7], где нечеткий регулятор характеризуется следующими свойствами: ♦ типичный нечеткий регулятор использует не более 100 пра- вил, иногда даже не более 20 правил; ♦ знания в нечетком регуляторе представлены обычно поверх- ностно, как в статической, так и динамической форме; ♦ знания в нечетком регуляторе являются типичным отраже- нием корреляций между входами и выходами регулятора; * числовые параметры нечеткого регулятора настраиваются для линейного процесса; * нечеткий регулятор реализует операции нечеткой логики. В [8, 9] отмечено также, что успех нечеткого управления обу- словлен в основном первыми четырьмя свойствами, указанными в |7], и что применение нечеткой логики является несущественным. По мнению автора статьи [10], эти замечания относительно нечет- ких регуляторов являются более корректными, однако более точ- ным было бы следующее утверждение: эти свойства не имеют от- рицательную интерпретацию, поскольку они способствуют поль- зовательскому развитию нелинейных регуляторов. В области автоматизации технологических процессов нечеткие логические регуляторы дают возможность реализовать системы управления с новыми свойствами, которые технически трудно достигнуть при использовании методов классической теории ав- томатического регулирования. Применение в инверторе (преобразователе) частотно-регули- руемого асинхронного электропривода гибридного ПИ-регулятора, который в цепи обратной связи имеет нечеткий логический регуля- тор, обеспечивает быструю обработку скачкообразного задания с ми- нимальной величиной выброса переходного процесса и с одновре- менным уменьшением статической ошибки регулирования за счет адаптивного изменения коэффициента усиления пропорционального звена ПИ-регулятора. Использование таких интеллектуальных инвер- торов дает возможность программировать в широком диапазоне вре- мя разгона электродвигателя с допустимой перегрузкой его по току и 8
с одновременным увеличением точности отработки задания. Напри- мер, инвертор типа 3G3FV фирмы Omron (Япония) за счет встроен- ного ПИД-регуляюра с нечетким регулятором позволяет поддержи- вать точность вращения двигателя в системе с образной связью по скорости до 0,001 % и использовать привод в системах позициониро- вания в качестве замены привода постоянного тока. Применение интеллектуальных инверторов в асинхронном приводе циркулярных насосов тепловых станций, в которых ис- пользуется обратная связь по давлению, позволяет соответственно увеличить точность поддержания заданного давления, что может давать значительную экономию расхода воды в коммунальном хо- зяйстве крупного города. При реализации традиционными методами локальной систе- мы управления температурой, которая должна поддерживать за- данный температурный режим и регулировать изменения темпе- parypbi во времени (например, в металлургии, в биологии, в химии и т. д.), часто возникает проблема использования ПИД- регулятора в точках температурной кривой, определяющих смену температурных режимов. В этих точках появляются температур- ные выбросы, недопустимые по технологическим соображениям. В традиционных системах управления устранение выбросов про- исходит путем изменения (перенастройки) коэффициента усиле- ния ПИД-регулятора ручным способом. Гибридная система управления с нечетким управлением позволяет решить проблему устранения температурных выбросов путем автоматической пе- ренастройки параметров ПИД-регулятора. Нечеткое управление может быть перспективным при реализа- ции поисковых систем автоматической оптимизации, в которых такие параметры поиска, как число измерений выхода объекта, величины рабочих и пробных шагов и другие параметры адапти- руются с помощью нечеткого логического регулятора. Статистические алгоритмы фильтрации случайных процессов, которые широко применяются в системах управления для уменьше- ния влияния случайных возмущений, возникающих на выходе объек- та управления, также легко могут быть модифицированы в адаптив- ные алгоритмы с использованием нечеткого логического регулятора Для фильтрации нестационарных возмущений. Например, в алгорит- ме скользящего среднего с помощью нечеткого управления можно адаптировать величину «окна». В этом случае входом нечеткого ре- гулятора является величина невязки, выходом регулятора — число измерений (величина «окна») в алгоритме фильтрации. 9
Подобным образом может быть решена задача адаптивной идентификации нестационарных параметров распределенной системы, описываемой параболическим уравнением. Величина невязки температурных полей используется как вход нечеткого логического регулятора, выход которого адаптирует величину интервала аппроксимации неизвестных параметров модели в виде констант. На базе нечеткого логического регулятора была реализована система управления разгоном и торможением скоростного поезда, которая устранила толчки при пуске и торможении поезда и сде- лала поездку на таком поезде более комфортабельной. Аналогич- ным способом может быть решена и проблема реализации слож- ных скоростных режимов в различных подъемниках и лифтах. Наиболее интенсивные исследования по нечеткому управле- нию проводятся в Китае, Японии, в развитых европейских странах и в США. Проблемы, связанные с нечетким управлением, решают- ся и в России. Япония занимает второе место после Китая по пуб- ликациям по этой проблематике, следующими идут европейские страны и затем США. Однако Япония является лидером по реали- зации нечеткого регулятора в виде специализированных техниче- ских устройств, представляющих собой ряд новейших нечетких логических контроллеров, которые широко используются в много- уровневых АСУ ТП. Имеются сообщения о разработке по линии НАСА (США) в части применения нечеткого регулятора при управлении ориентацией космического корабля. Делаются попыт- ки использования нечеткого регулятора при автоматизации произ- водства и в российской промышленности. В настоящее время в развитых странах налажен выпуск и про- дажа технических средств, таких, как цифровой фази-процессор, реализованный на одном кристалле, фази-плата, подключаемая внутри персонального компьютера типа ГОМ PC, различного рода специализированные фази-контроллеры для реализации нечеткого управления в промышленности и в других областях человеческой деятельности. Практически все ведущие фирмы развитых стран («Omron», «Allen Bradley», «Schneider Electric», «Siemens» и др.) продают инструментальное программное обеспечение (ПО) для разработки нечеткого регулятора на программируемых логических контроллерах (ПЛК) или iPC. В настоящее время все эти изделия имеются на российском рынке. Непредсказуемые аварии в системах обеспечения безопасно- сти, неразумные выводы в информационных системах, разбалан- 10
сировка системы автоматизации и многое другое - все это возни- кает из-за того, что предпосылки проектирования слишком расхо- дятся с реальным положением дел. На практике нередки случаи, когда из-за особенностей промышленной системы информацию с достаточно хорошей точностью получить не удается (при этом учитывается погрешносзь измерения) или нет возможности уста- новить устройство измерения. Наилучшие области применения нечеткого управления: ав томатизация на базе нечетких регуляторов металлургическо- го производства, очистки воды, производственных линий, работы эскалаторов метро, электропоездов; использование нечетких регу- ляторов в потребительских электротехнических и радиоэлектрон- ных товарах; разработка на основе нечетких регуляторов нового (интеллек- туального) поколения датчиков, контрольно-измерительных при- боров, различного рода анализаторов спектра сигналов, опознава- телен голоса и т. д.; использование нечетких регуляторов в информатике для раз- работки современных информационно-поисковых систем, баз дан- ных и знаний, экспертных систем, языков программирования и моделирования и т. д.; конструирование с применением нечетких регуляторов в технических средствах вычислительной техники, таких, как пультовое оборудование, арифметические блоки, контроллеры и микроЭВМ; применение нечетких регуляторов в различного рода систе- мах автоматизированного проектирования, которые использу- ются при разработке и оценке различных вариантов графиков движения поездов, а также оценок инвестиций и развития раз- личных проектов; использование нечетких регуляторов в банковских автоматах по опознаванию чеков и автомазической выдаче по ним наличных денег, обеспечивающих высокую степень надежности опознавания чеков, в автоматах по подсчету денег и т. д. Важнейшей особенностью жизнеспособности той или иной теоретической концепции является ее реализация и поддержка в соответствующих программных инструментах. Появление и ус- пешное развитие коммерческих программных средств, которые специально ориентированы на решение задач нечеткого управле- ния, объективно свидетельствуют в пользу того, что теория нечет- 11
ких множеств и нечеткая логика могут и должны быть эффективно использованы для решения широкого круга практических задач. Можно выделить три периода в становлении, развитии и прак- тическом применении теории нечеткого управления. Первый период, который обычно связывают с концом 60-х и началом 70-х годов XX века, характеризуется становлением тео- ретических основ нечеткого управления, изложенных в работах JLA. Заде. Наиболее яркое событие этого периода - публикация Л.А. Заде в 1965 г. статьи «Нечеткие множества» в американском журнале «Информатика и управление», в которой он впервые ввел понятие «нечеткое множество». В следующих статьях Л. Заде был изложен разработанный им нечеткий алгоритм. Су- ществует такая легенда о появлении теории нечетких множеств. Однажды Л. Заде вел длинную дискуссию со своим другом о том, чья из их жен является более привлекательной. Термин «привле- кательная» был очень неопределенным, и в результате дискуссии они не смогли прийти к удовлетворительному решению, что вы- нудило Л. Заде сформулировать концепцию, выражающую не- четкие понятия типа «привлекательная» в числовой форме. Второй период приходится на 70-80-е годы XX века, когда появились первые практические результаты применения создан- ной теории. Наиболее яркое событие этого периода - состояв- шийся в 1974 г. доклад доктора И.А. Мамдани из Лондонского университета, который получил первые положительные резуль- таты по применению нечеткого управления для парового порш- невого двигателя [11]. В 1980 г. датская компания «F.L.Smith & С» использовала теорию нечеткого управления для управления обжиговой цементной печыо. Эти события считаются первыми в мире практическими применениями теории нечеткого управле- ния. В 1983 г. японская компания «Fuzzy Electric» использовала теорию нечеткого управления для управления химическим инжектором в установке по очистке воды. Третий период длится с конца 80-х годов XX века до на- стоящего времени и характеризуется бумом практического при- менения теории нечеткого управления в различных сферах нау- ки и техники. Наиболее яркое событие этого периода - Вторая международная конференция 1987 г. по фази-системам, на ко- торой был продемонстрирован японский нечеткий логический контроллер. Этот контроллер был использован для управления скоростью электропоезда. 12
В 1989 г. в Японии была создана международная лаборатория по инженерным исследованиям в области нечеткого управления. Положительный опыт внедрения за рубежом высокоэффектив- ных систем управления на базе нечетких регуляторов, перспектив- ность их использования для решения некоторых новых задач авто- матической оптимизации и идентификации, а также наличие на рос- сийском рынке готовых технических средств и поддерживающего программного обеспечения показывают, что направление развития интеллектуальных систем, связанное с нечеткими регуляторами, является очень перспективным для модернизации действующих АСУ ТП, а также для проектирования новых систем управления. Такие интеллектуальные системы смогут обеспечить более высокие точностные и динамические показатели управления, снизить требо- вания к квалификации обслуживающего персонала, обеспечить бо- лее высокую функциональную надежность управления (и т. д.) по сравнению с классическими системами управления. В конечном итоге все это позволит уменьшить затраты на производство готовой продукции и сделать ее более конкурентоспособной. Судьба нечеткой логики (fuzzy logic) как нового научного на- правления во многом сходна с ее содержанием: необычна, сложна и парадоксальна. Достаточно сказать, что еще в 1989 г. Нацио- нальный научный фонд США обсуждал вопрос об исключении fuzzy logic из всех институтских учебников, а годом позже Коми- тет по контролю над экспортом (СОСОМ) внес ее в список крити- чески важных оборонных технологий, не подлежащих экспорту потенциальному противнику. Страсти не улеглись до сих пор. «Экзотичность» этой новейшей технологии управления и от- сутствие достаточного отечественного опыта реализации нечетких регуляторов в АСУ ТП привели к тому, что в России практически отсутствуют руководства по проектированию нечеткого управле- ния и соответствующие учебные пособия. В настоящем учебном пособии рассматриваются алгоритмы нечеткого логического управления, технические и программные средства нечетких систем, а также показывается, что язык нечет- кого описания близок к естественному языку и языку проектиров- щика систем управления, что нечеткое управление придает систе- мам управления новые потребительские свойства по сравнению с 'радиционными системами управления, поскольку улучшаются •очность, быстродействие и помехозащищенность системы управ- ления. Приведенные в пособии примеры реализованы в пакетах Matlab, Concept и Трейс Моуд. 13
ГЛАВА 1. ОСНОВНЫЕ ПОНЯТИЯ ТЕОРИИ НЕЧЕТКОГО УПРАВЛЕНИЯ 1.1. Структура нечеткого логического регулятора Алгоритм нечеткого управления состоит из преобразования входных переменных нечеткого логического регулятора в его вы- ходные переменные с помощью следующих взаимосвязанных процедур: преобразования нечетких множеств входных физических переменных нечеткого регулятора, получаемых от измери- тельных датчиков с объекта управления в безразмерные пе- ременные; обработки логических высказываний относительно без- размерных входных и выходных переменных нечеткого регу- лятора; преобразования выходных безразмерных переменных нечетко- го регулятора в физические управляющие переменные. Определение управляющих воздействий состоит из четырех основных этапов (рис. 1.1): Рис. 1.1. Структура нечеткого логического регулятора — НЛР 1) получение отклонения; 2) преобразование значения отклонения к нечеткому виду, та- кому как «большой», «средний»; 3) оценка входного значения по заранее сформулированным правилам принятия решения посредством композиционного пра- вила вывода; 14
4) вычисление детерминированного выхода, необходимого для регулирования процесса. Р Нечеткий алгоритм является алгоритмом логической свя- зи описывающей объект управления в терминах «вход- выход» в форме высказываний «если-то». Совокупность высказываний называется правилами. Вход нечеткого регуля- тора называется условием правила, а его выход заключени- ем правила. Логическая обработка правил в нечетком регуляторе состоит из двух частей: 1) обработка условий каждого правила, соединенных логиче- ским И, и нахождение для каждого правила минимального ранга входных переменных нечеткого регулятора (выходы объекта управления), по которым определяются ранги заключений правил для одного из выходов нечеткого регулятора; 2) обработка заключений для всех правил, соединенных логи- ческим ИЛИ, для каждого фиксированного идентификатора и на- хождение максимального ранга выходной переменной нечеткого регулятора для этого идентификатора. Существую! четыре способа составления правил нечеткого управления, т. е. проектирования нечетких регуляторов: 1) на основе знаний и опыта эксперта; 2) путем создания модели действий оператора; 3) путем обучения; 4) на основе нечеткой модели оборудования. Особенности нечеткого управления состоят в следующем. Во-первых, правила нечеткого управления, будучи услов- ными высказываниями типа «если-то», являются логическими и реализуются через механизм логических выводов. Для ре- ального оборудования это не только использование при управлении полной информации в отличие от классической теории управления, но и изменение режимов управления в зависимости от различных условий (времени, значения пара- метров и т. д.). Во-вторых, осуществляется параллельное управление. При нечетком управлении можно успешно справляться со всем многообразием целей и даже со взаимно противоречащими Целями. В-третьих, можно организовать управление в виде диалога с оператором. За счет обучения оператор может улучшать способно- сти нечеткого регулятора. 15
1.2. Основные положения теории нечетких множеств, используемые при проектировании нечеткого регулятора Пусть X некоторое множество (в обычном смысле) элемен- тов. Нечетким подмножеством А' множества X называется сово- купность пар вида (х, р.л. (х)), где х е X, цл. е [0; 1]. Функция 1] (1 1) называется функцией принадлежности нечеткого множества А', а X - базовым (универсальным) множеством или базовой шка- лой. Для каждого конкретного значения х е X величина (х) принимает определенное значение из замкнутого интервала [0; 1], которое называется степенью принадлежности х нечеткому множеству А'. Носителем нечеткого множества А' называется подмножество А множества X, содержащее те элементы из X, для которых значе- ния функции принадлежности цл-(х) больше нуля. Рассмотрим пример. Пусть X - множество действительных целых чисел от 0 до 10. На этом множестве имеется бесконечное число нечетких подмно- жеств. Так, число может быть «маленьким», «не большим», «большим», «средним» и т. д. Чтобы формализовать, т. е. опреде- лить количественно, эти качественные понятия, используется по- нятие- «функция принадлежности». Функция принадлежности может задаваться в виде вектора ц„(х) = [(0,1) (1,0.8) (2,0.5) (3,0.2) (4,0) (5,0) (6,0) (7,0) (8,0) (9,0) (Ю,0)|, цс(х) = [(0,0) (1,0.2) (2,0.5) (3,0.8) (4,0.9) (5,1) (6,0.9) (7,0.8) (8,0.5) (9,0.2) (10,0)], pfi(x) = [(0,0) (1,0) (2,0) (3,0) (4,0) (5,0) (6,0) (7,0.2) (8,0.5) (9,0.8) (10,1)], где первое число в скобке - действительное число, а число в скоб- ке после запятой - значение функции принадлежности для данного действительного числа, или в графическом виде (рис. 1.2). Степень принадлежности цл.(х) элемента х нечеткому мно- жеству А' интерпретируется как субъективная мера того, на- 16
сколько элемент х е X соответствует понятию, смысл которого формализуется нечетким множеством А'. Поскольку каждое нечеткое множество вполне определяется своей функцией принадлежности, последняя зачастую используется как синоним нечеткого множества. Рис. 1.2. Функции принадлежности Существует два класса методов построения функций принад- лежности множества А': прямые и косвенные. В прямых методах эксперт или группа экспертов просто за- дают для каждого х 6 X значение функции принадлежности КИ*)- Прямые методы построения функций принадлежности используются для таких свойств, которые могут быть измерены в количественной шкале. Например, скорость, время, расстояние, температура, давление и другие физические величины имеют со- ответствующие единицы и эталоны для своего измерения. При этом целесообразно ограничить рассмотрение только теми значе- ниями величин, которые имеют физический смысл в контексте решаемой задачи. При прямом построении функций принадлеж- ности следует учитывать то обстоятельство, что теория нечетких множеств не требует абсолютно точного задания функций при- надлежности. Зачастую бывает достаточно зафиксировать лишь наиболее характерные значения и вид (тип) функции принадлеж- ности. В последующем функция принадлежности может быть Уточнена опытным путем с помощью анализа результатов реше- ния конкретных задач. 17
Процесс построения или задания нечеткого множества на ос- нове некоторого известного заранее количественного значения из- меримого признака получил специальное название - фазификация или приведение к нечеткости. Если гарантируется, что люди далеки от случайных ошибок и работают как «надежные и правильные приборы», то можно спра- шивать их непосредственно о значениях принадлежности. Человеку свойственно ошибаться, и поэтому результаты экс- пертного опроса имеют субъективный характер. Следовательно, прямые измерения, основанные на непосредственном определении функции принадлежности, должны выполняться только в том слу- чае, когда случайные ошибки незначительны или маловероятны. Косвенные методы определения значений функции принадлеж- ности применяются в тех случаях, когда отсутствуют очевидные из- меримые свойства, которые могут быть использованы для построе- ния нечетких моделей рассматриваемой предметной области. Среди косвенных методов наиболее известен метод попарных сравнений Т.Н. Саати [12]. Этот метод применяется для конечных нечетких множеств и основан на следующем предположении. Если бы значения искомой функции принадлежности были известны и равны значениям ЦЛ'(х) i 6 {1,2,...,л}, то попарные сравнения со- ответствующих элементов носителя нечеткого множества А' можно было бы представить в виде матрицы А с элементами а„. Элементы этой матрицы равны: а,у = -----. В этом случае задача построения функции принадлежности сводится к нахо- ждению такого вектора w, который является решением уравнения Ахм = A.llli)Xw, где w - наибольшее собственное значение матрицы А. Поскольку все значения элементов матрицы А положительны по построению, решение данного уравнения существует и является положительным. Собственно процесс попарного сравнения элементов может быть основан на субъективной интуиции или на выполнении неко- торой последовательности алгоритмических или логических дей- ствий. Из алгоритмических процедур наибольшую известность получили методы итеракгивного уточнения значений функций принадлежности, основанные на нейронных сетях и генетических алгоритмах. Логические процедуры используют методы индук- тивного обучения и построения нечетких метаправил. Иногда 18
применяются методы обработки статистических данных, фактор- ного и дискриминантного анализа с целью выделения значимых признаков для последующего сравнения элементов рассматривае- мого универсума. Нечеткая переменная характеризуется тройкой (а, X, R(a, х)), где: а - название переменной; А'--универсальное множество (конечное или бесконечное); х - общее название элемен гов множества X; R(a, х) - нечеткое подмножество множества X, представляю- щее собой нечеткое ограничение на значение переменной х, обу- словленное а. Неограниченная обычная (нечеткая) переменная х является для а базовой переменной. Степень совместимости значения х с /?(а) обозначим как С(х) = Ня(а) (Ах е (1-2) где (х) - степень принадлежности х ограничению /?(сс). Обобщением нечеткой переменной является лингвистическая переменная. Лингвистической переменной называется переменная, заданная на некоторой количественной шкале и принимающая значения, являющиеся словами и словосочетаниями естественного языка. Зна- чения лингвистических переменных описываются нечеткими пере- менными. С их помощью можно формализовать качественную ин- формацию об объекте принятия решений, представленную в словес- ной форме специалистами экспертами. Принципиально важным является то, что любая лингвистическая переменная, как и все ее зна- чения, связана с конкретной количественной шкалой. Эта шкала, по аналогии с базовым множеством, иногда называется базовой шкалой. Лингвистическая переменная характеризуется набором (р, ЛР). X, G, М), где: Р - название лингвистической переменной; ?1Р) терм-множество переменной, т. е. множество назва- ний лингвистических (вербальных) значений переменной р, причем каждое из таких значений является нечеткой перемен- ной а со значениями из универсального множества X с базовой переменной х\ 19
G - синтаксическое правило (имеющее обычно форму грамма- тики), порождающее наименование ос е 7(Р) вербальных значений лингвистической переменной Р; М- семантическое правило, которое ставит в соответствие ка- ждой нелегкой переменной а е Г(Р) нечеткое подмножество Л/(а) универсального множест ва X, М(а) — смысл нечеткой переменной а. Конкретное название переменной а, порожденное синтаксиче- ским правилом G, называется термом. Смысл М(а) терма ос опре- деляется как ограничение 7?(а) на базовую переменную х, обу- словленное нечеткой переменной ос: 7И(ос) = А(ос) с учетом того, что Л’(ос) и, следовательно, Л7(а) можно рассматривать как нечет- кое подмножество множества X, имеющее название а. В качестве примера рассмотрим субъективную оценку скоро- сти движения автомобиля. В этом случае имеем: Р - скоростъ; Т= {«малая скорость», «средняя скорость», «высокая скорость»}; X- [О, 100 км/ч]; G - процедура образования новых термов с помощью логических связок И, ИЛИ и модификаторов типа «очень», НЕ, «слегка» и др.; М- процедура задания на множестве X = [0, 100] нечетких пе- ременных ot] = «малая скорость», ос2 = «средняя скорость», ос, = = «высокая скорость», а также соответствующих нечетких мно- жеств для термов из 6(7) в соответствии с правилами трансляции нечетких связок и модификаторов. Необходимо сформулировать ряд дополнительных условий, которым в силу своей семантики должны удовлетворять функции принадлежности нечетких множеств, описывающих термы лин- гвистических переменных. Приняв m = 5, с помощью рис. 1.3 про- комментируем эти условия. Пусть Т = {Т,}, i = {1,2... л?} - базовое терм-множество лин- гвистической переменной (х, 7(х), X) (Т„ X, В,) - нечеткая перемен- ная, соответствующая терму 7’, е 7', Z?,' = { (ц/г(х), Л)}, х с-Х, В,~ носитсль нечеткого множества В]. Будем считать, что х с R\, где 7?] - действительная ось. Обозначим inf х через Xi, a sup х через х2. Упорядочим множество 7’В соответствии с выражением (V Т, g 7)(У 7} е 7) (i > j <>( Эхе /?,)( V у е В,) (х > у)), обозначающим, что терм, который имеет носитель, расположен- ный левее, получает меньший номер. Здесь и далее следующие символы означают: V - для всех; е - принадлежит; <-> эквива- 20
лентность; 3 - существует; с включение; с строгое включение, разность множеств; п - пересечение; О - объединение; ° композиция отношений; * декартово произведение Рис. 1.3.Ограничения на терм-множество Тогда терм-множество любой лингвистической переменной должно удовлетворять следующим условиям: условию Мд (Л'1) ~ 1, Мд, (Л'г) — 1 > которое запрещает функциям принадлежности крайних термов (в Данном случае 7| и Ту) иметь вид колоколообразных кривых, что обу- словлено расположением этих термов в упорядоченном множестве Т; условию (V Tj е Т\ {Т,,,}) (0 < sup|ifi пд+| (х) < 1), хсХ которое запрещает существование в базовом множестве Г пар тер- мов типа У, и 72, Т2 и Ту, поскольку в первом случае отсутствует естественная разграниченность понятий, аппроксимируемых тер- мами, а во втором случае участку [a, ft] области определения не соответствует никакое понятие; 21
условию (Vr,e7)(3xe L0 (Цд, (х) = 1), которое запрещает наличие в множестве Т термов типа 74, по- скольку каждое понятие имеет хотя бы один типичный объект, обозначаемый этим понятием; условию (V х) (В х, е /?|) (В х2 е А,) ((V х е Л) (xj < х < х2)), которое ограничивает область определения х конечным множест- вом точек и констатирует имеющиеся в любой задаче управления ограничения на числовые значения параметров. Любую лингвистическую переменную можно рассматривать в виде иерархии. Для пояснения приведем пример (рис. 1.4), представляющий ие- рархическую декомпозицию лингвистической переменной «возраст». Рис. 1.4. Иерархическая декомпозиция лингвистической переменной «возраст» Лингвистическая переменная «возраст» характеризуется трой- кой («возраст», Т, X), где: «возраст» - название лингвистической переменной; 7 = {«очень молодой», «молодой», «старый»} - терм-множест- во лингвистической переменной; X- { 20, 30, 40,50, 60, 70} - базовое множество. 22
Терм «очень молодой» характеризуется нечеткой переменной («очень молодой», X, С,). Требуется построить функции принадлежа юс i и цс., не- четких множеств С,', С'г, С'у, описывающих понятия «очень моло- дой», «молодой», «старый» соответственно. Дня получения функций принадлежности оцениваются два последних уровня иерархии 1.3. Логические операции, высказывание, импликация, композиция Для нечетких чисел и интервалов могут бы и, определены аналоги обычных арифметических операций. В этом случае расширенные бинарные арифметические операции (сложение, вычитание, умноже- ние и деление) для нечетких чисел определяются через соответст- вующие операции для обычных дейсгви тельных чисел. Нечеткая логика предназначена для формализации человеческих способностей к неточным или приближенным рассуждениям, кото- рые позволяют более адекватно описывать ситуации с неопределен- ностью. В предложенном Л. Заде варианте нечеткой логики множе- ство истинностных значений высказываний обобщается до интерва- ла действительных значений [0,1], что позволяет высказыванию принимать любое значение истинности из этого интервала. Исходным понятием нечеткой логики является понятие эле- ментарного нечеткого высказывания - повествовательное предло- жение, выражающее законченную мысль, относительно которой мы можем судить об ее истинности или ложности только с некото- рой степенью уверенности. Центральное место в системе нечеткого вывода занимает не- четкая импликация. Импликацией нечетких высказываний А' и в (записывается A' зэ В' и читается - «из А' следует В' «ЕСЛИ А', ТО В'») называется бинарная логическая операция. Ее результатом является нечеткое высказывание, истинность которого может принимать значение, определяемое по одной из формул. Классическая нечеткая импликация, предложенная Л. Заде: Т(А' о 2?') = max{min{ Т(А'),Т(В')}, 1-ДЛ')}. (1.3) Нечеткая импликация, предложенная И. Мамдани: T(A'^B') = mm{7lA'),7lB')}. (1.4) 23
Гак же как и в математической логике, первый операнд импли- кации (нелегкое высказывание) называется посылкой или антеце- дентом, а второй - заключением или консеквенгом. Взаимосвязь между условием и заключением в нелегком правиле продукции предшавляст собой некоторое бинарное (т. е. между дву- мя множествами) нелегкое отношение на декартовом произведении универсальных множеств соответствующих нелегких высказываний. Содержательно нечеткое отношение определяется как любое нелегкое подмножество упорядоченных списков, построенных из элементов тех или иных базисных множеств. Бинарное нечеткое отношение задается на базисных множест- вах Х{, Х2 и определяется как нечеткое отношение Q' ={< х,,Х/ >, (< Х..Х,>)}. (1.5) Здесь < х„ х, > - набор из двух элементов (х, g Х\, х, е Х2), (< х„ х, >) - функция принадлежности бинарного нечеткого от- ношения, которая определяется как отображение : AS * Хг —>[0,1 ]. Нечеткие отношения могут задаваться в форме списка с яв- ным перечислением всех наборов нечеткого отношения и соот- ветствующих им значений функций принадлежности, а также аналитически в форме некоторого математического выражения для соответствующей функции принадлежности, графически в форме некоторой поверхности или совокупности отдельных то- чек в трехмерном пространстве, в форме ориентированного не- четкого графа, в форме матрицы, строки которой соответствуют первым элементам списков, а столбцы — вторым элементам спи- сков рассматриваемого нечеткого отношения. При этом элемен- тами матрицы XIq' являются соответствующие значения функ- ции принадлежности данного нечеткого отношения. Нечеткое бинарное отношение, заданное на декартовом произве- дении X] х Ху и обозначенное через Q' ® Л', где исчез кое отношение (/={<x„xt>, (ip- (<х„ху>)} задано на декартовом произведении уни- версумов А) * AS, а нечеткое отношение Л'={<х,, хк>, pft. (<х,, х*>)} на декартовом произведении универсумов AS *Aj, называется компо- зицией бинарных нечетких отношений Q' и Л', а его функция при- надлежности определяется следующим выражением: 24
>) = max{min {ц^. Xj еХ2 ® Л| ’** (<л„л7>),ця,(<х7,ха>)}}. (1 6) Определенную таким образом композицию бинарных нечетких отношений иногода называют (тах-гтп)-композицией или макси- минной сверткой нечетких отношений. Важным компонентом систем нечетких продукций является схема вывода заключений на основе нечетких условий в базе пра- вил нечетких продукций. Наиболее известными являются два ме- тода вывода заключений: прямой и обратный. Прямой метод вывода основан на использовании нечеткого обобщения правила вывода «модус нонене» (Fuzzy Modus Ponens - FMP). Согласно JI. Заде, суть FMP заключается в том, что класси- ческая импликация А' п В' в правиле вывода «модус нонене» заменяется на правило нечеткой продукции: «ЕСЛ И х есть А', ТО у есть В'», где А' и В' - нечеткие множества, а само правило нечеткой про- дукции представляет собой некоторое нечеткое отношение между переменными х и у, при этом х е X и у е Y. Посылка А' правила FMP заменяется на нечеткое условие <а есть А'». Объединение правила нечеткой продукции и нечеткого условия позволяет полу- чить новую информацию о значении переменной у в форме «у есть В'». При этом заключение по правилу FMP получается в виде функции принадлежности нечеткого множества В' на основе функции принадлежности А' и функции принадлежности нечет- кой импликации как соответствующего нечеткого отношения с использованием одного из методов нечеткой композиции. 1.4. Системы нечеткого вывода Системы нечеткого вывода предназначены для преобразования значений входных переменных процесса управления в выходные переменные на основе нечетких правил продукций. 1 фоцеес нечеткого вывода представляет собой некоторую процедуру или алгоритм получения нечетких заключений на °ве нечетких условий или предпосылок. Этот процесс со- яет в себе все основные концепции теории нечетких мно- 25
жест: функции принадлежности, лингвистические переменные, нечеткие логические операции, методы нечеткой импликации и нечеткой композиции. Информацией, которая поступает на вход системы нечеткого вывода, являются измеренные входные переменные, соответст- вующие реальным переменным процесса управления. Информа- ция, которая формируется на выходе системы нечеткого вывода, соответсгвует выходным переменным, которые являются управ- ляющими переменными процесса управления. Для получения заключений в системах нечеткого вывода пред- ложено несколько алгоритмов, описание которых базируется на разделении процесса вывода на ряд последовательных этапов. 1. Формирование базы правил систем нечеткого вывода. 2. Фазификация входных переменных. 3. Агрегирование подусловий в нечетких правилах продукций. 4. Активизация или композиция подзаключений в нечетких правилах продукций. 5. Аккумулирование заключений. 6. Дефазификация выходных переменных. База правил предназначена для формализации эмпирических знаний или знаний экспертов и является конечным множеством правил нечетких продукций, согласованных с используемыми в них лингвистическими переменными. База правил представляется в форме структурированного текста ПРАВИЛО i: ЕСЛИ «Условие i» ТО «Заключение !» (F,) или в эквивалентной форме RULE i: IF Condition ! THEN Conclusion ! (F,) (1.7) Здесь F, весовые коэффициенты соответствующих правил. Эти коэффициенты могут принимать значения из интервала [0,1J. Согласованность правил относительно лингвистических пере- менных означает, что в качестве условий и заключений правил Moiyr использоваться только нечеткие лингвистические высказывания. 11ижс приведен пример лингвистического правила управления: «Если температура t «большая», то давлениер «маленькое». Мы имеем две функции принадлежности, показанные на рис. 1.5 и 1.6 и записанные в виде векторов Цб (/) = [(> Д) (2,0) (3,0) (4,0.2) (5,0.05) (6,0.8) (7,1) |; цм (д) = [ (1,1) (2,0.9) (3,0.7) (4,0.1) (5,0) (6,0) (7,0) ]. 26
М/7) {.пегенькое» I, град Рис 1.5. Функция принадлежности ^(р) Рис. 1.6. Функция принадлежности Цб(0 Используется операция И, соответствующая в нечеткой ло- гике операции декартова произведения, которое определяется как minimum. Декартово произведение Ai...A„ нечетких множеств А- в Xhi = определяется как нечеткое множество А' в декартовом произведении Х= Xi * Х„ с функцией принадлежност и вида ц/(х) = тш{р/((л|),...,Дл;(л„)}; g) * = (*!.>^)еХ’ Для нашего примера операция min (пересечения) min{p6 (г), цм (р)}= [(1,0) (2,0) (3,0) (4,0.2) (5,0.05) (6,0.8) (7,1)] п[(1,1) (2,0.9) (3,0.7) (4,0.1) (5,0) (6,0) (7,0)] в графическом виде представлена на рис. 1.7. Объединением нечетких множеств А' и В' в X называется не- четкое множество А' + В' с функцией принадлежност и вида Нл'+д' (*) = тах(Мл' (*)>Н/Г (*)}> х е Х- -9) Для нашего примера операция та*{М0, (р)}= [(1,0) (2,0) (3,0) (4,0.2) (5,0.05) (6,0.8) (7,1)] о [(1,1) (2,0.9) (3,0.7) (4,0.1) (5,0) (6,0) (7,0)] "Редставлена на рис. 1.8. 27
Рис. 1.7. Функция принадлежности Рис. 1.8. Функция принадлежности min{ Рб(/), щ,(д)} тах{ цв(/), цн(д)} При задании или формировании базы правил необходимо опре- делить: М1ЮЖСС1ВО правил нечетких продукций Р = {7?ь Р2, ..., /?„} в форме (1.7); множество входных лингвистических перемен- ных V = {Рь р2 , Р„}) и множество выходных лингвистических переменных W = {од, од, ..., од}. База правил считается заданной, если заданы множества Р, V, W. Для удобства записи наименований отдельных термов входных и выходных лингвистических переменных используют специаль- ные сокращения (табл. 1.1.) Таблица / / Обозначение терм-м пожества Англоязычная нотация Русскоязычная нотация NB Negative Big Отрицателы юс болы ное NM Negative Middle Отрицательное среднее NS Negative Small Отрицательное малое ZN Zero Negative Отрицательное, близкое к пулю Z Zero Нуль, близкое к нулю ZP Zero Positive Положительное, близкое к нулю PS Positive Small Положительное малое РМ Positive Middle Положительное среднее РВ Positive Big [ 1оложи тельное большое В контексте нечеткой логики под фазификацией (fuzzification) понимается нс только этап выполнения нечеткого вывода, но и собственно процесс или процедура нахождения значений функций принадлежности нечетких множеств (термов) на основе обычных (не нечетких) исходных данных. 28
Целью этапа фазификации является установление соответствия между конкретным (обычно численным) значением отдельной входной переменной системы нечеткого вывода и значением функции принадлежности соответствующего ей терма входной лингвистической переменной. Формально процедура фазификации выполняется следующим образом. До начала этого этапа предполагаются известными кон- кретные значения всех входных переменных системы нечеткого вывода, т. е. множество значений V' = {щ, а2, а„}, полученных от датчиков. В общем случае каждое а, е X, где X- универсум (ба- зовое множество) лингвистической переменной р,. Далее рассмат- ривается каждое из подусловий вида «р, есть а'», где а' - неко- торый терм с известной функцией принадлежности ц(х). При этом значение а, используется в качестве аргумента ц(х), тем самым на- ходится количественное значение Ъ\ = ц(щ). Это значение и явля- ется результатом фазификации подусловия «Р, есть а'». Этап фа- зификации считается законченным, когда будет найдено все мно- жество значений В = {Ь- = ц(а,)} для каждого из подусловий всех правил. Агрегирование (Aggregation) представляет собой процедуру определения степени истинности условий по каждому из правил системы нечеткого вывода. До начала этого этапа предполагаются известными значения истинности всех подусловий, т. е. множество значений В ={Ь- }. Далее рассматривается каждое из условий пра- вил и находятся количественные значения истинности всех усло- вий правил с использованием формул нечеткой конъюнкции типа (1-7) или нечеткой дизъюнкции типа (1.8). Этап агрегирования считается 5" = {^"Л, законченным, когда будут найдены все значения Для каждого из правил /4, входящих в рассмат- риваемую базу правил Р системы нечеткого вывода. Активизация (Activation) представляет собой процедуру или роцесс нахождения истинности каждого из подзаключений пра- вил нечетких продукций. Активизация в общем случае во многом аналогична композиции нечетких отношений, но не тождественна ’ поскольку в системах нечеткого вывода используются лин- гвишические переменные. До начала процедуры активизации предполагаются извест- и значения истинности всех условий, т. е. множество значе- 29
ний В" = {b",b^,...,b'^} и значения весовых коэффициентов F, для каждого правила. Далее рассматривается каждое из заключений правил и находятся все значения ск степеней истинности каждого из заключений для каждого из правил Rk, входящих в базу пра- вил. После нахождения множества С = {сь С2,...,сД, где q - об- щее количество подзаключений в базе правил, определяются функции принадлежности каждого из подзаключений для рас- сматриваемых выходных лингвистичеких переменных с помо- щью методов, являющихся модификацией того или иного метода нечеткой композиции: Min-активизация ц'(у) = min{c/, ц(у)}; (1-Ю) Prod-активизация р' (у) = с, • ц(у); (1-11) Average-активизация р' (у) = 0,5(с, + р(у)). (1-12) Аккумуляция (Accumulation) представляет собой процедуру нахождения функции принадлежности для каждой из выходных лингвистических переменных множества W= {ол, со2, , <Д-}- Цель аккумуляции заключается в том, чтобы объединить все степени истинности заключений (подзаключений) для получения функции принадлежности каждой из выходных переменных, так как подзаключения, относящиеся к одной и той же лингвистиче- ской переменной, принадлежат различным правилам. На основании известных значений истинности всех подзаклю- чений для каждого из правил последовательно рассматривается каждая из выходных лингвистических переменных со, е W и объе- диняются относящиеся к ней нечеткие множества: CJ}, С^, ..., Cjq. Этап аккумуляции считается законченным, когда для каждой из выходных лингвистических переменных будут определены итого- вые функции принадлежности нечетких множеств их значений С/, Cj.—.Q, где .V - общее количество выходных лингвистиче- ских переменных в базе правил. Дефазификация (Defuzzification) представляет собой процедуру нахождения обычного (не нечеткого) значения для каждой из вы- ходных лингвистических переменных из семейства 1У = {соь сог, • I ..., соД. Применяемые в системах управления исполнительные ме- ханизмы способны воспринимать команды в форме количествен- 30
jIX значений соответствующих управляющих переменных. Именно по этой причине необходимо преобразовать нечеткие множества в некоторые конкретные значения переменных. Последовательно рас- сматривая каждую из выходных лингвистических переменных й е Жи относящиеся к ней нечеткое множест во С', определяют в виде количественного значения у, е R по одному из методов дефа- зификации. Метод центра тяжести (Centre of Gravity - COG): max j CO(.l(co)r/<n | ц(со)г/со mtn В этом случае значение выходной переменной равно абсциссе центра тяжести площади, ограниченной графиком кривой функции принадлежности, которая соответствует выходной переменной. Метод центра тяжести для одноточечных множеств (Centre of Gravity for Singletons COGS): Ё«,Ц((ф) , (1.14) il где n - число одноточечных (одноэлементных) нечетких множест в, каждое из которых характеризует единственное значение рассмат- риваемой выходной лингвистической переменной. Рассмотренные этапы нечеткого вывода могут быть реализова- ны неоднозначным образом, поскольку включают в себя отдельные параметры, которые должны быть фиксированы или специфициро- ваны. Выбор конкретных вариантов каждого из этапов определяет некоторый алгоритм, в полном объеме реализующий нечеткий вы- вод. Наиболее известны алгоритмы Мамдани (Mamdani), Цукамото (Tsukamoto), Ларсена (Larsen), Сугено (Sugeno). При решении прак- тических задач нечеткого управления могут одновременно исполь- зоваться несколько алгоритмов нечеткого вывода с целью получе- ния наиболее адекватных результатов. 31
1.5. Язык нечеткого управления Язык нечеткого управления (Fuzzy Control Language - FCL) разработан для представления нечетких моделей систем управле- ния, в частности моделей ПЛК, в форме структурируемого текста, который может быть интерпрет ирован как программа на языке вы- сокого уровня, и описан в стандарте IEC 61131-7. В стандарте оп- ределяются цели разработки этого языка, его базовая нотация и приводятся примеры записи моделей нечеткого управления с ис- пользованием нотации [13]. Хотя стандарт не определяет требова- ния к вычислительным устройствам и средам, которые могут реа- лизовывать трансляцию, компиляцию и выполнение программ на FCL, описанная в нем нотация основных компонентов систем не- четкого вывода позволяет достичь формального уровня строгости, необходимого для последующей разработки соответствующих ин- струментальных средств. Под нечетким управлением (Fuzzy Control) понимается область применения общей методологии теории нечетких множеств и не- четкой логики для решения практических задач управления. Не- четкое управление возникло как технология, способная расширить возможности автоматизации производства и предназначенная для решения прикладных задач в области управления, которые в об- щем случае могут быть реализованы с помощью ПЛК. Нечеткое управление базируется на использовании не столько аналитических или теоретических моделей, сколько на практиче- ском применении знаний, которые можно представить в форме баз правил, называемых лингвистическими. Нечеткое управление мо- жет использоваться в том случае, когда существует определенный опыт экспертов и его можно записать некоторым формальным об- разом. Широкий диапазон приложений и естественность подхода, опирающегося на опыт специалистов, делает нечеткое управление основным средством, которое в качестве стандарта должно стать доступным для всех пользователей ПЛК. Нечеткое управление может также непосредственно комбинироваться с классическими методами управления. Применение нечеткого управления может быть наиболее эффек- тивным в тех случаях, когда отсутствует явная модель процесса или аналитическая модель является слишком сложной для представления или для получения решений в реальном масштабе времени. Другое достоинство нечетко! о управления заключается в непо- средственном объединении опыта нескольких специалистов. Не- 32
четкое управление, являясь многозначным управлением, больше ограничивается значениями высказываний «истина» или «ложь». Эта особенность делает нечеткое управление адекватным средст- вом для моделирования эмпирического опыта экспертов, оперируя теми понятиями, в терминах которых формулируются управляю- щие воздействия на заданном множестве входов. С точки зрения информационных технологий системы нечет- кого управления являются продукционными экспертными систе- мами, а с точки зрения теории управления - нелинейными регуля- торами. При этом текущие значения выходных переменных зави- сят только от текущих значений входных переменных и не зависят от предыстории этих значений за исключением случаев, когда от- сутствуют активные правила и не определены значения перемен- ных по умолчанию. Если же регулятор должен быть реализован как динамическая система, то соответствующие динамические функции представляю! собой внешние элементы для нечеткого функционального блока. Область применения нечеткого управления достаточно широка - от небольших и простых приложений до комплексных и сложных проектов. Чтобы охватить все возможные случаи, следует использо- вать правила согласованности классов систем нечеткого управления, которые дополняют и расширяют базовую нотацию FCL. При этом базовый класс определяет минимальное множество требований, ко- торым должны удовлетворять все согласованные системы, что обес- печивает переносимость программ нечеткого управления. Цель стандарта (ЕС 61131-7 состоит в том, чтобы, с одной сто- роны, предоставить разработчикам и пользователям однозначные и доступные для понимания базовые средства для интеграции приложений нечеткого управления, которые могут быть записаны в нотации языков ПЛК, а, с другой стороны, обеспечить возмож- ность переносимости мобильных программ нечеткого управления между различными системами программирования. Необязательные средства FCL определены в классе расшире- ния. Программы нечеткого управления, использующие эти сред- ства, могут переноситься с одной системы на другую только в том случае, если эти системы реализуют одинаковое множество этих средств. В противном случае может оказаться возможным "ишь частичный перенос программ. Стандарт не требует, чтобы все согласованные системы реализовывали средства класса рас- ширения в полном объеме. Хотя и допускается возможность час- тичного переноса, следует избегать использования нестандарт- 33
пых средств. Поэтому согласованная система не должна содер- жать нестандартные средства, которые не могут быть адекватно реализованы с использованием стандартных средств базового класса и класса расширения. Чтобы не исключать из рассмотрения системы, использующие свои собственные и достаточно сложные средства, и не препятст- вовать процессу дальнейшего развития, стандарт разрешает при- менение дополнительных нестандартных средств, которые не во- шли ни в базовый класс, ни в класс расширения. Однако все такие средства должны быть перечислены стандартным способом, чтобы можно было легко установить их нестандартный характер. Переносимость приложений нечеткого управления зависит как от особенностей систем программирования, так и от характери- стик систем управления. Эти особенности указываются в списке проверки данных, который создастся производителями систем. Приложения нечеткого управления, разработанные в форме программ на FCL, согласно стандарту 1ЕС 61131-7, должны быть инкапсулированы в функциональные блоки на основе стандарта IEC 61131-3, который определяет использование языков програм- мирования в ПЛК [14, 15]. Тип функционального блока, определяемый в FCL, задается входными и выходными параметрами, специальными правилами и объявлениями нечеткого управления. Соответствующие экзем- пляры функционального блока должны содержать значения дан- ных конкретных приложений нечеткого управления. Функцио- нальные блоки, записанные на FCL, могут быть использованы на любом из пяти языков стандарта IEC 61131-3. При этом типы данных входных и выходных параметров функциональных бло- ков на FCL должны соответствовать аналогичным параметрам данной среды реализации. Определение нотации FCL базируется на определениях языков программирования ПЛК. Взаимодействие алгоритма нечеткого управления со средой программирования должно быть скрыто от соответствующих программ. Именно поэтому алгоритм нечеткого управления следует представлять в форме функционального блока. Для представления собственно лингвистических аспектов функ- ционального блока нечеткого управления необходимы такие эле- менты, как функции принадлежности, правила, операции и мето- ды, определяемые стандартом. Стандартизация элементов FCL выполнена с целью достиже- ния единого представления данных для обеспечения переноса про- 34
грамм между системами нечеткого управления различных произ- водителей с помощью текстового файла на FCL в формате перено- са данных. Использование единого представления разработчиками ПЛК позволяет каждому из них иметь собственное аппаратное обеспечение, редакторы и компиляторы программ. Разработчику достаточно лишь реализовать интерфейс данных для своего собст- венного редактора. В свою очередь заказчики и потребители полу- чают возможность переноса соответствующих проектов нечеткого управления между различными разработчиками. В соответствии со стандартом для FCL используется следую- щее подмножество элементов языка для текстовых языков нрш ра- мирования: буквы, цифры, идентификаторы; константы; типы данных; переменные, а для записи правил продукции следующие элементы FCL: объявление функционального блока, входных и выходных переменных, других переменных; объявление блоков фазификации, дефазификации, правил, необязательного блока; объявление лингвистических термов, функций принадлежности, метода дефазификации, активации и аккумуляции; определение операций, условий и подусловий. В табл. 1.2 приведен перечень ключевых слов FCL, которые разрешается использовать только в значении, определенном в но- тации языка. Таблица 1.2 Ключевое слово Описание О Скобки в условии, герме, интервале ACCU Метод аккумуляции ACT Метод активизации AND Операция лы ической конъюнкции (логическое И) ASUM Операция логическое ИЛИ ио формуле алгебраиче- ской суммы BDIF BSUM Операция логическое И но формуле oi раниченной разности Мезод аккумуляции по формуле oi раниченной сум- мы _COA Метод дсфазификации по формуле центра площади .COG Метод дефазификации по формуле центра гяжссчи COGS j — Метод дефазификации по формуле центра тяжести для одноэлементных множеств default LDEFUZZIFY Значение выхода по умолчанию в случае отсутст- вия активных правил Дефазификация выходной переменной 35
Окончание табл / 2 Ключевое слово Описание END DEFUZZIFY Конец спецификации дефазификации END FUNCTION BLOCK Конец спецификации функционального блока ENDFUZZ1FY Конец спецификации фазификации ENDOPTIONS Конец спецификации дополнительных параметров END RULEBLOCK Конец спецификации блока правил END VAR Конец определения входных/выходиых пере- менных FUNCTION BLOCK Начало спецификации функционального блока FUZZIFY Фазификация входной переменной IF Начало правила, после которого следует его условие IS Связка для значения лингвистической переменной в условии или заключении LM Метод дефазификации по формуле левого модаль- ного значения MAX Метод аккумуляции по формуле максимума METHOD Метод дефазификации MIN Минимум в качестве логической операции И NC Значение выходной переменной остается без изме- нения (No Change) в случае отсутствия активных правил NOT Операция логического отрицания (логическое НЕ) NSUM Метод аккумуляции по формуле нормализованной суммы OPTIONS Начало спецификации дополнительных параметров OR Операция логической дизъюнкции (логическое ИЛИ) PROD 11роизведение в качестве логической операции И RANGE Интервал переменной для шкалирования функции принадлежности RM Метод дефазификации по формуле правого мо- дального значения RULE Начало спецификации нечеткого правила RULEBLOCK Начало спецификации блока правил TERM Определение лингвистического терма (функции принадлежности) для лингвистической переменной THEN Разделитель условия и заключения в нечетком пра- виле VAR Определение локальной переменной (переменных) VARJNPUT Определение входной переменной (переменных) VAROUTPUT Определение выходной переменной (переменных) WITH Определение весового коэффициента 36
Согласно стандарту, внешнее представление нечеткого функционального блока требует использования следующих элементов языка: FUNCTION BLOC К имяфункционального блока /♦функциональный блок*) ' VAR INPUT (*объявление входных параметров*) Имя переменной: типданных; ENDVAR VAR_OUTPUT (*объявление выходных параметров*) Имя переменной: типданных; END VAR VAR (*локальные переменные*) Имя переменной: тип данных; ENDVAR ENDFUNCTIONBLOCK Эти элементы языка позволяют описать интерфейс функцио- нального блока (Eunction Block interface). Интерфейс функцио- нального блока определяется совместно с параметрами, которые могут использоваться внутри и вне этого функционального блока. Типы данных этих параметров должны быть определены в соот- ветствии с требованиями стандарта FCL. Фазификация (Fuzzyfication) в FCL описывается между ключе- выми словами FUZZIFY и END_ FUZZIFY следующим образом: FUZZIFY имяпеременной TERM имя терма =: функцияпринадлежности; END- FUZZIFY После ключевого слова FUZZIFY должно быть записано имя переменной, используемой для фазификации. Это имя перемен- ной предварительно должно быть определено в секции AR-fNPUT. Соответствующая лингвистическая переменная должна быть описана одним или несколькими лингвистически- ми термами. 37
Лингвистические термы определяются после ключевого слова TERM и описываются посредством функций принадлежности, ко- торые фазифицируют эту переменную. В качестве функции принадлежности может использоваться некоторая кусочно-линейная функция. Эта функция задается таб- лицей своих точек. Каждая точка в списке представляет собой пару значений, разделенных запятой: первое из них количест- венное значение переменной, а второе - значение функции при- надлежности для этого значения переменной. Эти пары значений заключаются в скобки и отделяются друг' от друга запятыми. Точ- ки должны записываться в возрастающем порядке значений пере- менной. Число точек может изменяться, но их максимальное количество ограничено. Чтобы адаптировать модель нечеткого управления на этапе ее реализации, базовые точки функций принадлежности могут быть модифицированы. Это можно сделать посредством определения дополнительных переменных, которые описываются как входные в функциональном блоке. Эти переменные необходимо объявить в секции VAR INPUT функционального блока. Лингвистическая переменная, согласно процедуре дсфазифика- ции (Defuzzification), должна быть преобразована в количественное значение. Это преобразование описывается между ключевыми сло- вами DEFUZZIFY и ENDDEFUZZIFY следующим образом: DEFUZZIFY имя переменной ТЕРМ имя терма := функция принадлежности; М етоддефазифика ции; Зпаченис_по_умолчанию; [интервал;] ENDDEFUZZIFY Переменная, которая используется для дефазификации, должна быть записана после ключевого слова DEFUZZIFY. Имя этой пе- ременной должно быть объявлено ранее в секции VAROUTPUT. Определение лингвистических термов задастся в секции фазифи- кации. С целью упрощения дсфазификации выходов могут быть использованы специальные функции принадлежности в форме значения для одноэлементного множества. Подобные функции принадлежности описываются посредством единственного значе- ния для лингвистического терма. Метод дефазификации должен быть определен с помощью элемента языка МЕТОД после ключевого слова METHOD. 38
Если значение функции принадлежности равно нулю для всех лингвистических термов некоторой выходной переменной, то это значает отсутствие активных правил для этой переменной. В этом случае дефазификация не позволит получить адекватный результат. Именно по этой причине целесообразно определить для такой пере- менной некоторое значение по умолчанию. Это значение будет на- значено выходной переменной только в случае отсутствия активных правил. Значение по умолчанию задается после ключевого слова DEFAULT. После ключевого слова DEFAULT может быть указано значение по умолчанию или ключевое слово NC (no change). По- следнее применяется для того, чтобы явно указать, ч го выход оста- ется без изменения, если отсутствую! активные правила. Интервал определяется путем задания после ключевого слова RANGE некоторых минимального и максимального значений, кото- рые разделяются двумя точками. Интервал используется для специ- фикации минимального и максимального значений некоторой выходной переменной. Если функции принадлежности термов вы- ходной переменной заданы в форме одноэлементных множеств, то подобный интервал не может быть задан. В остальных случаях RANGE используется для ограничения каждой функции принадлеж- ности интервалом по каждой из выходных переменных. Эгот интервал следует явно определить, чтобы избежать непредсказуемых значений выходных переменных. Если этот интервал не задан, то принимается интервал по умолчанию для типа данных соответствующей перемен- ной, как это определено стандартом IEC 61131-3. Для определения механизма нечеткого вывода используется один или несколько блоков правил (Rule block). С целью удобства и для предоставления возможности декомпозиции базы правил на отдельные модули разрешается использовать несколько блоков правил. При этом каждый блок правил должен иметь уникальное имя. Правила должны быть определены между ключевыми слова- ми RULEBLOCK и END RULEBLOCK следующим образом: RULEBLOCK имя блока правил определение операции; [метод_активизации;] методаккумуляции; правила; endruleblock Внутри блока правил используются нечеткие операции: Онределение опсрации : := операция : алгоритм. 39
этой лингвистической переменной. При необходимости, но ни обязательно, для каждого подзаключения можно задать весовой коэффициент. Он представляет собой некоторое число типа дан. них REAL со значением из интервала [0,1]. Это число записыва- ется после ключевого слова WITH. Чтобы иметь возможность внешнего изменения параметров приложений нечеткого управле- ния, весовой коэффициент может быть задан как переменная. При этом соответствующая переменная должна быть объявлена в секции VAR INPUT. Это позволит изменять весовой коэффици- ент в ходе выполнения программы и тем самым адаптировать программу нечеткого управления к особенностям решаемой за- дачи. Если подзаключение не имеет записи с ключевым словом WITH, го используется значение весового коэффициента по умолчанию, которое равно единице. Необязательные параметры (Optional parameters) при построе- нии нечетких моделей используются в случае необходимости по- лучения некоторой дополнительной информации для гой или иной системы, чтобы иметь возможность наиболее адекватного преоб- разования приложений нечеткого управления. Такая дополнитель- ная информация может относиться к соответствующему элементу языка и помещаться между ключевыми словами OPTIONS и END OPTIONS следующим образом: OPTIONS Параметры спецификации приложения END OPTIONS Соответствующие элементы языка должны удовлетворять пра- вилам согласованности классов открытого уровня. Модели систем управления, записанные в нотации FCL, долж- ны быть согласованными по так называемым уровням согласован- ности классов. В соответствии стандарту 1ЕС 61131 7 уровни со- гласованности представляют собой иерархию из грех уровней: базовый уровень, включающий в себя определения функцио- нальных блоков и типы данных; уровень расширения, включающий в себя необязательные па- раметры; откры гый уровень, включающий в себя дополнительные парамез ры- Модель системы управления должна соответствовать требова- ниям стандарта, представленным в форме следующих правил со- гласованное ги. 42
Т1 авило 1- Для реализации функциональное ги в модели нечет- правления следует использовать функциональный блок гак, К01°он определен в настоящем стандарте, поэтому определения КаК книональных блоков и типов данных для входных и выходных метров функциональных блоков должны согласовываться с базов°й нотацией языка. Правило 2. Все параметры функциональное!и модели нечстко- управления, приведенные в табл. 1.7, должны быть заданы в оответствии с базовой нотацией языка. Табл. 1.7 определяет мно- жество элементов базового уровня, которые должны содержать в обшем случае все модели стандартных систем. Габлица / 7 Элеменз FCL Ключевое слово Примечание 'Объявление функ- ционального блока VARJNPUT VAR OUTPUT Содержит входные и выход- ные переменные функция принадлежности Входная переменная: TERM Максимум три точки (коор- дината степени принадлежно- сти равна 0 или 1) Выходная переменная 1ERM Только одноэлементное мно- жество Агрегирование ус- ловий Оператор AND Алгоритм MIN Активизация I !е применяется в случае ис- пользования только одноэле- ментных множеств Аккумуляция (ре- зультат агрегирова- ния) Оператор ACCU Алгоритм МАХ Дефазификация METHOD Ajii ори гм COGS Значение по умол- чанию Ч гобы использовать это т эле- мент, в базовом классе долж- ны быть подготовлены пред- вари тельные определения Условие IF...IS... /V подусловий -Заключение THEN Только одно нодзаключение Весовой коэффици- ен г WITH Только значение весового коэффициента Правило 3. Подмножество элементов уровня расширения, опре- деленных в табл. 1.7, составляет дополнительные элементы, которые можно использованэ в необязательном порядке. Все необязательные параметры должны относиться к уровню расширения, а перечень применяемых необязательных параметров в форме табл. 1.8 должен стать частью документации на модель системы. 43
Таблица 1 8 Элеменг FCL Ключевое слово Примечание Объявление функцио- нального блока VAR Содержит локальные пере- менные Фу и Ki тия припадлеж пости Входная пере- менная PERM Максимум четыре точки (ко- ордината степени принад- лежности равна 0 или I) Выходная пере- менная TERM Максимум четыре точки (ко- ордината степени принад- лежности равна 0 или I) Агрегирование условий Оператор AND Алгоритм PROD,BDIF Оператор OR Алгоритм ASUM.BSUM Оператор NOT 1 - {аргумент} О Скобки Активизация Оператор ACT Алгоритм MIN, PROD Аккумуляция Оператор ACCU Алгоритм BSUM, NSUM Метод дсфазификации Оператор METHOD Алгоритм COG, СОА, LM, RM Значение по умолчанию DEFAULT NC, значение Условие IF п подусловий,N входных переменных Заключение THEN п нодзаключепий, N выход- ных переменных Весовой коэффициент WITH Значение присваивается пере- менной в секции объявления VAR INPUT...VAR END Правило 4. Параметры, выходящие за пределы базового уровня и уровня расширения (т. е. дополнительные параметры), допускается использовать в модели таким образом, чтобы они не имели таких же или аналогичных параметров среди стан- дартных элементов функциональности FCL. Тем самым должны быть исключены любые возможные недоразумения. Эти допол- нительные параметры относятся к открытому уровню и должны стать частью документации на модель системы. Их перечень приведен ниже: произвольные функции принадлежности для входов-выходов (например, функция Гаусса, экспоненциальная функция); функции принадлежности, содержащие более чем четыре точки; координата значения функции принадлежности от 0 до 1; произвольные элементы, заданные программистом. 44
Правило 5. Перенос прикладных программ между различными истемами нечеткого управления следует осуществлять в тексто- вой форме в соответствии с нотацией языка. Список проверки данных должен прилагаться к технической окументации. В этом списке разработчик 11JIK, средеi в нечетко- го программирования и прикладных программ должен описать специальные параметры реализации своей системы нечеткого ./правления. Чтобы обеспечить передачу приложений нечеткого управления между системами различных производителей, нсоб- хо (Имо представить список проверки данных (табл. 1.9), который является средством установления правильности возможного пе- реноса программ. Габлица 1.9 Список проверки данных Примеры значений, установленных разработчиком Типы данных входов и выходов функцио- нального блока REAL, IN Г Строки комментариев в программах па FCL YES, NO Длина идентификаторов (например, имена переменных, блоков правил, термов) 6,8 Максимальное число входных переменных для фазификации 6,8 Максимальное число функций принадлежно- сти гермовдля входной переменной 5.7 Максимальное общее число функций принад- лежности термов для всех входных переменных 30,56 Максимальное число точек функции принад- лежности для каждого из термов входных переменных 3,4,10 Максимальное общее число точек функции принадлежности для всех термов входных переменных 90, 224 Максимальное число выходных переменных — для дсфазификации 6,8 Максимальное общее число функций припад- -Й2ЩК£П£термов для всех выходных переменных 30, 56 иксимальиое число точек функции припал- ‘ежпосги для каждого из термов выходных —— переменных 1,4, 10 П|ч-ималыюе общее число точек функции । про 1адлежности для всех термов выходных । ~~££менпых_^ 90, 224 число блоков правил I, 10 число правил в блоке 10 45
Окончание табл. 1 tj Список проверки данных 1 1римеры значений, установленных разработчиком Максимальное число подусловий в правиле 4, 10 Максимальное число всех правил 15 Максимальное число ползаключений в правиле 4 Глубина вложенности скобок «()» 1,3 1.6. Нечетка}! модель управления контейнерным краном Контейнерный кран используется при выполнении погрузочно- разгрузочных работ в портах для транспортировки моноблочного контейнера, с которым он соединяется гибким тросом. Кран под- нимает контейнер к кабине крана, которая вместе с контейнером может перемещаться в горизонтальном направлении по направ- ляющим. Когда контейнер поднимается к кабине, а кран приходит в движение, контейнер начинает раскачиваться и отклоняться от строго вертикального положения под кабиной крана. Проблема заключается в том, что пока контейнер раскачивает- ся в ходе своей транспортировки и отклоняется от вертикали, он не может быть опущен на основание цели перемещения, в качестве которой используются железнодорожные платформы или другие транспортные средства. Чтобы иметь возможность автоматически управлять таким краном, необходимо применять датчики для измерения горизон- тального положения кабины крана (переменная «расстояние») и измерения угла раскачивания контейнера (переменная «угол»). Выходом в этом случае является мощность мотора. Анализ действий крановщиков-операторов, управляющих кра- ном, показывает, что они в своей работе применяю! следующие эвристические правила. 1. Начинать движение следует со средней мощностью. 2. Если движение уже началось и кабина находится далеко от цели, нужно отрегулировать мощность двигателя таким образом, чтобы контейнер находился несколько впереди кабины крана. 3. Если кабина находится недалеко от цели, нужно уменьшить скорость таким образом, чтобы контейнер находился несколько впереди кабины крана. 4. Когда контейнер находится близко от позиции цели, следует выключить двигатель. 46
5 Когда контейнер находится прямо над позицией цели, следу- ет остановить двигатель. ’(ля построения базы правил преобразуем эти пять эвристиче- ских правил в шесть правил нечеткой продукции: ПРАВИЛО 1: ЕСЛИ «расстояние далекое» И «угол равен нулю», ТО «мощность положительная средняя». ПРАВИЛО 2: ЕСЛИ «расстояние далекое» И «угол отри- цательный малый», ТО «мощность положительная большая». ПРАВИЛО З: ЕСЛИ «расстояние далекое» И «угол отри- цательный большой», ТО «мощность положительная сред- няя». ПРАВИЛО 4:ЕСЛИ «расстояние среднее» И «угол отри- цательно малый», ТО «мощность отрицательнаяи средняя». ПРАВИЛО 5: ЕСЛИ «расстояние близкое» И «угол по- ложительный малый», ТО «мощность положительная сред- няя». ПРАВИЛО 6: ЕСЛИ «расстояние нуль» И «угол равен нулю», ТО «мощность равна нулю». Для входных лингвистических переменных «расстояние» и «угол» используем пять термов с кусочно-линейными функция- ми принадлежности. Мощность мотора включает в себя также пять термов, но с функцией принадлежности для одноточечных множеств. Агрегирование подусловий проведем с помощью операции min-конъюнкции, поскольку во всех правилах 1 6 в качестве логи- ческой связки для подусловий используется только нечеткая конъюнкция (операция И). Для реализации схемы нечеткого вывода будем применять ме- тод Мамдани, поэтому методом активизации будет MIN. Аккумуляцию заключений правил осуществим методом шах- дизъюнкции, который также применяется в случае схемы нечетко- го вывода методом Мамдани. Дефазификацию выполним методом центра тяжести для одно- элементных множеств COGS. Нечеткая модель управления контейнерным краном может быть записана в нотации FCL следующим образом: FUNCTION BLOCK контейнерный кран VAR INPUT расстояние: REAL; угол: REAL; 47
ENDVAR VAR OUTPUT мощность: REAL; ENDVAR FUZZIFY расстояние TERM оченьдалекос: = (-5,1) (0,0); TERM нуль- (-5,0) (0,1) (5,0); TERM близкое— (0,0) (5,1) (10,0); TERM среднее- (5,0) (10,1) (22,0); TERM далекое— (10,0) (22,1); ENDFUZZIFY FUZZIFY угол TERM отрбольшой: - (-50,1) (-5,0); TERM отрмалый— (-50,0) (-5,1) (0,0); TERM нуль- (-5,0) (0,1) (5,0); TERM пол малый— (0,0) (5,1) (50,0); TERM пол большой— (5,0) (50,1); END FUZZIFY DEFUZZIFY мощность TERM отрвысокая: =-27; TERM отрсредняя—-12; TERM нуль— 0; TERM пол средняя— 12; TERM пол высокая— 27; ACCU: MAX; METHOD: COGS DEFAULT-0 ENDDEFUZZIFY RULEBLOCK Номер ! AND: MIN; RULE 1: IF расстояние IS далекое AND угол IS нуль THEN мощность IS пол средняя; RULE 2: IF расстояние IS далекое AND угол IS отр малый THEN мощность IS полбольшая; RULE 3: IF расстояние IS далекое AND угол IS отр большой THEN мощность IS пол средняя; RULE 4: IF расстояние IS среднее AND угол IS отр малый THEN мощность IS отр средняя; RULE 5: IF расстояние IS близкое AND угол IS пол малый 48
THEN мощность IS пол средняя; [<ULE 6: IF расстояние IS HynbAND угол IS нуль THEN мощность IS нуль; END_RULEBLOCK END__FUNCT1ON BLOCK Поскольку этот функциональный блок записан в нотации fCL который является языком программирования высокого „ов'ня, рассмотренная программа по своей структуре полно- огыо соответствует некоторой процедуре. Формальными пара- метрами такой процедуры являются входные переменные блока правил, а возвращаемыми значениями значения выходной пе- ременной после дефазификации. Вызов такой процедуры в не- которой внешней программе может быть реализован, например, следующим образом: Контейнерный кран (расстояние := 12, угол ;=15); VarP := контейнерный крап.мощность; В этом случае переменной с именем varP присваивается значе- ние нечеткого вывода для блока правил, определенного в функ- циональном блоке «контейнерный кран», при конкретных значе- ниях входных переменных: 12 м для расстояния и 15° для угла.
ГЛАВА 2. АЛГОРИТМЫ НЕЧЕТКОГО УПРАВЛЕНИЯ В ПАКЕТЕ MATLAB Пакет Matlab компании Mathwoks (США) содержит’ большой набор готовых функций, используемых при анализе и синтезе сис- тем автоматического управления. Линейная алгебра, матричные вычисления, численный анализ пакета Matlab обеспечивают на- дежный фундамент для проектирования и исследования систем автоматического управления. «Инструментарий» представляет собой набор алгоритмов, оформленных в виде файлов с расширением т, так называемых m-файлов, являющихся инструментом для проектирования, анали- за и моделирования систем автоматического управления. Системы управления могут быть описаны передаточными функциями или представлены в пространстве состояний, что по- зволяет использовать как классические, так и современные методы расчета. Matlab работает как с непрерывными, так и дискретными системами. Алгоритмы, отсутствующие в «Инструментарии», могут быть созданы в виде новых т-файлов. Имеющийся в пакете набор блоков Simulink позволяет в гра- фической форме выполнить моделирование достаточно сложной системы, в том числе и с использованием блоков, реализующих нечеткое управление. 2.1. Fuzzy-библиотека пакета Matlab Fuzzy Logic Toolbox - пакет прикладных программ, входящих в состав системы Matlab [16]. Он позволяет создавать системы не- четкого логического вывода и нечеткой классификации в рамках среды Matlab с возможностью их интегрирования в Simulink. Базо- вым понятием Fuzzy Logic Toolbox является FIS-структура - сис- тема нечеткого вывода (Fuzzy Inference System). FIS-структура со- держит все необходимые данные для реализации функционального отображения «входы-выходы» на основе нечеткого логического 50
рьшоДЗ- Fuzz> Logic Toolbox содержит следующие категории про- граммных инструментов: . функции; • интерактивные модули с графическим пользовательским ин- терфейсом GUI; • блоки для пакета Simulink; • демонстрационные примеры. Первая категория программных инструментов пакета Fuzzy Logic Toolbox содержит функции, которые могут быть вызваны непосредственно путем набора имени функции в командном окне (command line) или из собственных пользовательских приложений. Большинство из этих функций представляют собой функции Mat- lab в виде m-файлов. В этом случае пользователь может посмот- реть запрограммированные в этих функциях алгоритмы, а также редактировать и корректировать m-файлы. Ниже приведены на- звания функций с кратким описанием их назначения: • addmf- добавление функции принадлежности в FIS; • addrule - добавление правила в FIS; • addvar - добавление переменной в FIS; • anfis - обучение FIS типа Сугэно (Sugcno type); • convertfis - преобразование FIS-матрицы (Fuzzy Logic Toolbox v. 1) в FIS-структуру (Fuzzy Logic Toolbox v.2); • defuzz - дефазификация нечеткого множества; • discfis - дискретизация функций принадлежности всех тер- мов, входящих в FIS; • dsigmf - функция принадлежности в виде разности между двумя сигмоидными функциями; • evalfis - выполнение нечеткого логического вывода; • evalmf - вычисление значений произвольной функции при- надлежности; • evalrnmf- расчет степеней принадлежностей для нескольких Функций принадлежностей; • fem - поиск кластеров по алгоритму fuzzy c-means; • findrow - нахождение строки в матрице, совпадающей с входной строкой; • fstrvcat - конкатенация матриц различного размера ; • fuzarith - нечеткий калькулятор; • gauss2mf-двухсторонняя гауссовская функция принадлежности; • gaussmf- гауссовская функция принадлежности; • gbellmf - обобщенная колоколообразная функция принадлеж- ности; 51
• genfisl - генерирование из данных исходной FIS типа Сугэно без использования кластеризации; • genfis2 - генерирование из данных исходной FIS типа Сугэно с использованием субтрактивной кластеризации; • genparam - генерирование исходных параметров функций принадлежности для обучения ANFIS (Adaptive-Network-based Fuzzy Inference System); • gensurf - генерирование поверхности «входы-выход», соот- ветствующей FIS; • getfis - получение свойств FIS; • mam2sug - преобразование FIS типа Мамдани в FIS типа Сугэно; • mf2mf пересчет параметров встроенных функций принад- лежности различных типов; • newfis - создание новой F1S; • parsrule - вставка в F1S правил, заданных в виде предложений на естественном языке; • pimf- л-подобная функция принадлежности; • plotfis - вывод основных параметров FIS в виде графической схемы; • plotmf вывод графиков функций принадлежности термов одной переменной; • probor - вероятностная реализация логической операции ИЛИ; • psigmf - произведение двух сигмоидных функций принад- лежности; • readfis - загрузка F1S из файла; • rmmf- удаление функции принадлежности терма из FIS; • rmvar - удаление переменной из FIS; • setfis - назначение свойств FIS; • showfis - вывод на экран в текстовом формате данных, со- ставляющих FIS-струкгуру; • showrule - вывод базы знаний FIS; • sigmf- сигмоидная функция принадлежности; • smf s-подобная функция принадлежности; • subclust - оценка количества кластеров в субтрактивной кла- стеризации; • sugmax - нахождение диапазона изменения выходной пере- менной в F1S типа Сугэно; • trapmf-трапециевидная функция принадлежности; • trimf- треугольная функция принадлежности; • writefis - сохранение FIS на диске; • zmf-z-подобная функция принадлежности. 52
Примечания. I) функции findrow и fstrvcat не связаны с нечеткими множест- вами и нечеткой логикой, они использую гея для выполнения алго- ритмов обработки информации общего характера, необходимых для других функций Fuzzy Logic Toolbox. 2) В Fuzzy Logic Toolbox также включены файлы fismain.c и fis с, которые содержат исходные коды на языке Си, позволяющие загружать FIS-файл и файл исходных данных, а также выполнять нечеткий логический вывод. Вторая категория программных инструментов пакета Fuzzy Logic Toolbox содержит диалоговые модули, которые обеспечива- ют доступ к большинству функций через графический интерфейс. Кроме того, эти модули создают удобную среду для проектирова- ния, исследования и внедрения систем на основе нечеткого логи- ческого вывода. Для запуска интерактивных модулей достаточно ввести имя модуля в командной строке. Ниже приведены названия модулей с кратким описанием их назначения: • anfisedit - модуль для генерирования из данных FIS типа Сугэ- но, ее обучения с использованием ANF'IS-алгоригма и тестирования; • findclustcr - модуль кластеризации данных с применением ал- горитма fuzzy c-means и алгоритма нечеткой субтрактивной кла- стеризации; • fuzzy - основной редактор FIS. Позволяет создавать и редак- тировать FIS типов Мамдани и Сугэно, обеспечивает визуализа- цию процедуры нечеткого логического вывода и поверхностей «входы-выходы». Для этого модуль fuzzy вызывает следующие GUI-модули: mfedit, rulecdit, rulcview и surfview; • mfedit - редактор функций принадлежностей. Позволяет вы- бирать тип функции принадлежности и устанавливать ее парамет- ры в символьном и в интерактивном графическом (drag) режимах; • ruleedit - редактор базы знаний; •ruleview - модуль визуализации процедуры нечеткого логи- ческого вывода. Обеспечивает вывод графической диаграммы не- четкого вывода по каждому правилу, включая процедуры фазифи- кации, агрегации и дефазификации Позволяет вводить значения Годных переменных в символьном и в интерактивном графиче- ском (drag) режимах. Гретья категория программных инструментов пакета Fuzzy ^ogic Toolbox содержит следующие модули, которые обеснсчива- интеграцию систем нечеткого логического вывода с пакетом blrnulink: 53
• fuzblock - модули контроллеров па основе нечеткого логиче- ского вывода; • sffis - функция выполнения нечеткого логического вывода, оптимизированная под Simulink. Четвертая категория программных инструментов пакета Fuzzy Logic Toolbox содержит следующие демонстрационные примеры: • defuzzdm - дефазификация различными методами; • femdemo - 2П-кластеризация с использованием алгоритма fuzzy c-means; • fuzdemos список всех демонстрационных примеров Fuzzy Logic Toolbox; • gasdemo - применение алгоритма ANF1S и субтрактивной кластеризации для идентификации зависимости топливной эффек- тивности (расход топлива на одну милю) от шести параметров ав- томобиля; • invkine- инверсная кинематика робота-манипулятора; • irisfem применение алгоритма fuzzy c-means для кластери- зации ирисов; • juggler жонглирование шариком с помощью теннисной ра- кетки с демонстрацией нечеткой базы знаний; • noisedm адаптивное подавление шумов; • slbb управление системой «шарик на коромысле» (необхо- дим пакет Simulink); • slcp - управление системой «перевернутый маятник» (необ- ходим пакет Simulink); • sltank управление уровнем воды (необходим пакет Simulink); • sltankrule - управление уровнем воды с демонстрацией нечет- кой базы знаний (необходим пакет Simulink); • sltbu парковка грузовика (необходим пакет Simulink). Система нечеткого логического вывода представляется в рабочей области Matlab в виде структуры данных, изображенной па рис. 2.1. Поля структуры данных системы нечеткого логического выво- да предназначены для хранения следующей информации: name наименование системы нечеткого логического вывода; type тип системы. Допустимые значения ‘Mamdani’ и ‘Sugeno’; andMcthod реализация логической операции И Запро- граммированные реализации: ‘min’ - минимум и ‘prod’ - умножение; 54
orMethod defozzMethod impMethod aggMethod input input.name input.rangc input.mf input.mf.name input, mf. type — реализация логической операции ИЛИ. Запро- граммированные реализации: ‘max’ максимум и ‘probor’ вероятностное ИЛИ; — метод дефазификации. Запрограммированные методы для систем типа Мамдани: ‘centroid1 центр тяжести; ‘bisector' медиана; ‘lorn’ - наи- больший из максимумов; ‘som’ - наименьший из максимумов; ‘mom’ — среднее из максимумов. Запрограммированные методы для систем типа Сугэно: ‘wtaver1 - взвешенное среднее и ‘wtsum’ - взвешенная сумма; - реализация операции импликации. Запрограм- мированные реализации: ‘min’ - минимум и ‘prod’ - умножение; реализация операции объединения функций принадлежности выходной переменной. Запро- граммированные реализации: ‘max’ максимум; ‘sum’ - сумма и ‘probor’ вероятностное ИЛИ; массив входных переменных; - наименование входной переменной; диапазон изменения входной переменной; массив функций принадлежности входной переменной; - наименование функции принадлежности вход- ной переменной; - модель функции принадлежности входной переменной. Запрограммированные модели: dsigmf- функция принадлежности в виде разно- сти между двумя сигмоидными функциями; gauss2mf—двухсторонняя гауссовская функция принадлежности; gaussmf- гауссовская функция принадлежности; gbellmf - обобщенная колоко- лообразная функция принадлежности; pimf пи- подобная функция принадлежности; psigmf - произведение двух сигмоидных функций при- надлежности; sigmf - сигмоидная функция при- надлежности; smf s-подобная функция принад- лежности; trapmf трапециевидная функция принадлежности; trimf - треугольная функция принадлежности; zmf-z-подобпая функция принадлежности; 55
input.mf.params - массив параметров функции принадлежности output output.name output.range output.mf output.mf.name output.mf. type входной переменной; - массив выходных переменных; наименование выходной переменной; - диапазон изменения выходной переменной; - массив функций принадлежности выходной переменной; - наименование функции принадлежности вы- ходной переменной; - модель функции принадлежности выходной переменной. Запрограммированные модели для системы типа Мамдани: dsigmf- функция при- надлежности в виде разности между двумя сиг- моидными функциями; gauss2mf -двухсторон- няя гауссовская функция принадлежности; gaussmf- гауссовская функция принадлежности; gbellmf- обобщенная колоколообразная функция принадлежности; pimf- пи-подобная функция принадлежности; psigmf- произведение двух сигмоидных функций принадлежности. Запро- граммированные модели для системы типа Сугэ- но: constant - константа (функция принадлежно- сти в виде синглтона); linear - линейная комби- нация входных переменных; output.mf.params - массив параметров функции принадлежности выходной переменной; rule - массив правил нечеткой базы знаний; rule.antec edent rule.consequent rule.weight rule.connection - посылки правила. Здесь указываются порядко- вые номера термов в порядке записи входных переменных. Число 0 указывает на то, что значе- ние соответствующей входной переменной не влияет на истинность правила; заключения правила. Здесь указываются по- рядковые номера термов в порядке записи вы- ходных переменных. Число 0 указывает на то, что правило не распространяется на соответст- вующую выходную переменную; - вес правила. Задается числом из диапазона [0, 1]: логическая связка переменных внутри правила: 1 - логическое И; 2 - логическое ИЛИ. 56
Рис. 2.1. Структура данных нечеткого логического вывода 57
Для доступа к свойствам системы нечеткого логической вывода достаточно указать имя соответствующего поля. На пример, команда FIS_NAME.rulc(l).wcight=0.5 устанавливает вес первого правила в 0,5, команда length(FIS NAME.rulej определяет количество правил в базе знаний, а команда FIS NAME.input( 1 ).mf( 1 ).пате='низкий' переименовывает пер- вый герм первой входной переменной в «низкий». Система нечеткого вывода состоит (рис. 2.2) из собственно ре. дактора системы нечеткого вывода (Fuzzy Inference System Editor- FIS Editor), редактора функций принадлежности (The Membership Function Editor), редактора правил (The Rule Editor), подсистем для просмотра правил и схем нечетких выводов (The Rule Viewer) ц полученных поверхностей (The Surface Viewer). FIS редактор Рис. 2.2. Система нечеткого вывода 58
plS-редактор автоматически обеспечивает высокий уровень . ия с системой. Он не имеет ограничений на число входных и 0 х0Д11Ь1х переменных системы, которые могут быть ограничены вь1 доступной памятью используемой машины. Если число вхо- К слишком велико или число функций принадлежности слиш- Д°В большое, что может затруднить анализ с помощью F1S, ис- Кользуется другой графический интерфейс пользователя (GUI). Редактор функций принадлежности служит для определения гЬормы функций принадлежности для каждой переменной. С помощью редактора правил осуществляется редактирование текста правил при описании поведения системы. Просмотрщик правил и просмотрщик поверхностей использу- ются для просмотра в FIS. Они являются средствами только чте- ния. Просмотрщик правил отображает на основе Matlab схему не- четкого вывода в конце последнего раздела и используется также в качестве средства диагностики. Он может показать, например, ка- кие правила активны или как влияет форма отдельной функции принадлежности на результат. Просмотрщик поверхностей ис- пользуется для показа зависимости одного выхода от одного или двух входов. Он генерирует и строит график-картину поверхности выхода для системы. Все перечисленные выше основные графические инструмен- тальные средства могут взаимодействовать и обмениваться ин- формацией. Имеются два дополнительных графических редактора: ANFIS (anfisedit) - для обучения и тестирования и findcluster для кла- стеризации UI-средств. Обработка нечеткого логического алгоритма состоит из пяти этапов: 1) фазификация входных переменных; 2) применение не- четкого оператора (И или ИЛИ) в предпосылке (антецеденте); 3) импликация (включение) предпосылки и следствия; 4) агрегация следствий через правила; 5) дефазификация. Одновременное вы- числение правил является одним из наиболее важных аспектов не- четких логических систем. Этап 1. Фазификация входов. На этом этапе определяется сте- пень принадлежности входной величины нечеткому множеству с помощью функции принадлежности (рис. 2.3) Вход является чи- словым значением, ограниченным пространством предпосылок, а выход является степенью принадлежности нечеткому множеству (всегда интервал между 0 и 1). 59
Фазификация входов Пища = 8 Вход Рис. 2.3. Фазификация входных данных Этап 2. Применение нечеткого оператора. Если предпосылка правила состоит из нескольких частей, необходимо применять нечет- кий оператор для получения числа - результата предпосылки. Это число затем используется в выходной функции принадлежности! Вход для нечеткого оператора два или более значений функции принадлежности, которые получены после фазификации входных лингвистических переменных. На выходе оператора единственное значение. Оператор И преобразуется в два: min (минимум) и prod (произведение). Оператор ИЛИ преобразуется также в два: max (мак- симум) и probor (оператор вероятного ИЛИ). На рис. 2.4 показан пример реализации оператора ИЛИ с помощью функции max. Опера- тор вероятного ИЛИ (также известный как алгебраическая сумма) вычисляется согласно уравнению probor(a, Ь) = а + b ab. 0.7 Результат оператора Сервис s3 Рис. 2.4. Реализация оператора ИЛИ с помоыыо функции max 60
Этап 3. Применение оператора импликации. Чаще всего одного правила недостаточно, чтобы добиться хороших ре- «пьтатов. Нужно применять два или больше правил. Выход каждого правила является нечетким множеством. Прежде чем применить оператор импликации, нужно выбрать вес правил. Каждое правило имеет вес (число между 0 и 1), который при- меняется к численному результату предпосылки. Обычно вес равен 1. Можно выделить одно правило относительно других, изменяя величину веса на число, отличное от 1. Если соответ- ствующий вес присвоен каждому правилу, метод импликации осуществлен. Следствие является нечетким множеством, представленным функцией принадлежности, вес которой соответствует лингвисти- ческим характеристикам, приписанным к нему. Следствие восстанав- ливает форму, используя функцию, связываемую с предпосылкой (единственное число). Входом для процесса импликации является единственное число, вычисленное предпосылкой, а выходом не- четкое множество. На рис. 2.5 показан пример реализации опера- ции импликации. Пр сап о сыпка Следствие Сервис s 3 Пища з 8 В Рис. 2.5. Операция импликации Импликация осуществляется для каждого правила. Поддержи- ваются два встроенных оператора, выполняющих те же функции, которыми пользуется и оператор И; функция min (минимум) усе- кает выходное нечеткое множество, а функция prod (произведе- те) масштабирует выходное нечеткое множество. 61
Этап 4. Агрегация всех выходов. Поскольку решения базирова- лись на использовании всех правил в системе нечеткого вывода, пра- вила должны объединяться в некоторый способ принимать решение. Агрегация является процессом, с помощью которого нечеткие множества, представляющие выходы каждого правила, объединяются в единственное нечеткое множество. Агрегация происходит только один раз для каждой выходной переменной перед пятым и конечным шагом (дефазификацией). На входе процесса агрегации должен быть список усеченных выходных функций, возвращаемых процессом им- пликации для каждого правила. Выходом процесса агрегации являет- ся одно нечеткое множество для каждой выходной переменной. Следует обратить внимание, что метод агрегации перестано- вочный, т. е. порядок, в котором правила выполняются, неважен. На рис. 2.6 все зри правила установлены вместе, чтобы показать, как выход каждого правила объединяется (или суммируется) в един- ственное нечеткое множество. Правопреемниками этих правил явля- ются функции принадлежности (веса) для величины каждого выхода. Результат агрегации Рис. 2.6. Операция агрегации Поддерживаются три встроенных оператора: max (максимум), probor (вероят ное ИЛИ) и sum (просто сумма каждого правила вы- ходного множества). 62
Jtna^ 5. Дефазификация. На входе процесса дефазификации тся нечеткое множество (агрегированный выход нечеткого ИМССкества), а на выходе - число. I (ечеткость помогает оценке пра- м" во время промежуточных шагов. Желаемый конечный выход ВИЛ каждой переменной - обычно единственное число. Несмотря g что агрегирование нечеткого множества охватывает область выходных значений, должно дефа- зифицироваться выбранное из множества единственное выходное значение. Наиболее часто в процессе де- фазификации используется метод вычисления центра тяжести, кото- рый ищет центр тяжести площади под кривой (рис. 2.7). В Matlab поддерживаются пять встроенных методов: метод центра зяжести, Мнение = 16.7% Результат дефазификации Дефазификация выходов Рис. 2.7. Дефазификация выходов метод двух секторов, метод среднего максимума (среднее из мак- симального значения выходного множества), метод наибольшего максимума и наименьшего максимума. Схема нечеткого логического вывода на два входа и один вы- ход приведена на рис. 2.8. 63
Выходы каждого правила суммируются в единственное печег. кое множество, которое и подвергается дефазификации по центра тяжести. 2.2. Редактор системы нечеткого вывода Существует два способа загрузки FIS-редактора (Fuzzy Infer- ence System Editor) в рабочую область: • считывание с диска с помощью функции readfis; • передача из основного FIS-редактора путем выбора в меню File подменю Export и команды То workspace. Для загрузки основного FlS-редакгора напечатаем слово fuzzy в командной с троке. После этого откроется новое графическое ок- но, показанное па рис. 2.9. Рис. 2.9. Окно редактора FIS-Editor Модуль fuzzy позволяет строить нечеткие системы двух типов: Мамдани и Сугэпо. В системах типа Мамдани база знаний состоит из правил вида «ЕСЛИ Т| низкий и Х2 = средний, ТО у = высокий». 64
В системах типа Сугэпо база знаний состоит из правил вида «ЕСЛИ Х[ = низкий и хг = средний, ТО у = а0 + + «2^2»- Таким образом, основное различие между системами Мамдани и Cyi эно заключается в разных способах задания значений выход- ной переменной в правилах, образующих базу знаний. В системах типа Мамдани значения выходной переменной задаются нечетки- ми термами, в системах типа Сугэно - как линейная комбинация входных переменных. 2.3. Редактор функций принадлежности Редактор функций принадлежности (Membership Function Editor) предназначен для задания следующей информации о терм- множествах входных и выходных переменных: • количества термов; • наименований термов; • типов и параметров функций принадлежности, которые необ- ходимы для представления лингвистических термов в виде нечет- ких множеств. Редактор функций принадлежности может быть вызван из лю- бого GUI-модуля, используемого с системами нечеткого логиче- ского вывода, командой Membership Functions... меню Edit или нажатием клавиш <Ctrl> + <2>. В FIS-редакторе можно открыть редактор функций принадлежности двойным щелчком левой кнопкой мыши по полю входной или выходной переменных. Общий вид редактора функций принадлежности с указанием функционального назначения основных полей графического окна приведен на рис. 2.10. В нижней части графического окна распо- ложены кнопки Help и Close, которые соответственно позволяют вызвать окно справки и закрыть редактор. Редактор функций принадлежности содержит: четыре меню - File, Edit, View, Туре и четыре окна ввода информации Range, Display Range, Name и Params. Окна предназначены для задания диапазона изменения текущей переменной, диапазона вывода функций принадлежности, для наименования текущего лингвисти- ческого терма и параметров его функции принадлежности соответ- ственно. Параметры функции принадлежности можно подбирать и в графическом режиме путем изменения формы функции принадлеж- ности с помощью технологии «Drug and drop». Для этого необхо- димо позиционировать курсор мыши на знаке режима «Drug and 65
drop» (см. рис. 2.10), нажать на левую кнопку мыши и, не отпуская ее, изменять форму функции принадлежности. Параметры функций принадлежности будут пересчитываться автоматически. Рис. 2.10. Редактор функций принадлежности Fuzzy Logic Toolbox включает одиннадцать вст роенных функций принадлежностей, ко торые используют следующие основные функции: • кусочно-линейную; • гауссовское распределение; • сигмоидную кривую; • квадратическую и кубические кривые. Для удобства имена всех встроенных функций принадлежно- сти оканчиваются на mf. Вызов функции принадлежности осуще- ствляется следующим образом: 66
namemf(x, params), namemf- наименование функции принадлежности; x- вектор, для ^ординат которого необходимо рассчитать значения функции при- надлежности; Paratns “ вектоР параметров функции принадлежности. С помощью fuzzy-библиотеки пакета Matlab могут быть реали- зованы следующие функции принадлежности. Самые простые в реализации функции (рис. 2.11): trimf-треугольная функция принадлежности; Рис. 2.11. Треугольная и трапецеидальная функции принадлежности Более сложные функции, основанные на функциях распреде- ления Гаусса (рис.2.12): gaussmf - функция принадлежности в форме кривой Гаусса; gauss2mf - функция принадлежности, составленная из двух различных функций Гаусса; gbeilmf - колоколообразная функция принадлежности, опреде- ляемая тремя параметрами; она является более универсальной по сравнению с функциями принадлежности Гаусса. Все три функции чрезвычайно популярны в приложениях. Рис. 2.12. Гауссовы функции принадлежности В некоторых случаях важно иметь несимметричные функции принадлежности. Для этих целей можно использовать сигма- Функции (рис. 2.13): sigmf - сигма-функцию принадлежности, открытую слева или справа; 67
dsigmf - закрытую функцию принадлежности, составленную из разности двух сигма-функций; psigmf- закрытую функцию принадлежности, составленную из произведений двух сигма-функций. Рис. 2.13. Несимметричные функции принадлежности Следующие три функции принадлежности основаны на поли- номиальных кривых (рис. 2.14): zmf несимметричная полиномиальная функция принадлеж- ности, открытая слева; smf- несимметричная полиномиальная функция принадлежно- сти, открытая справа; pimf закрытая полиномиальная функция принадлежности, обеспечивающая нуль слева и справа. Рис. 2.14. Полиномиальные функции принадлежности Такой большой выбор функций принадлежности обеспечивает значительную гибкость в решении как технических, так и соци- ально-экономических задач. Matlab позволяет создавать и свои собственные функции принадлежности. Однако если такой боль- шой выбор вызывает затруднение, можно обойтись одной или двумя функциями принадлежности. 2.4. Редактор базы знаний Редактор базы знаний (Rule Editor) предназначен для фор- мирования и модификации нечетких правил. Редактор базы зна- 68
жет быть вызван из любого GUI-модуля, используемого с нийм и нечеткого логического вывода, командой Rules... сиСТСГ'рс|Л или нажатием клавиш <Ctrl> + <3> В FIS-редакторе ме"КЭ открыть редактор базы знаний двойным щелчком левой ой мыши по прямоугольнику с названием системы нечет- кН°о логического вывода, расположенного в центре графическо- Г°°Обший вид редактора базы знаний с указанием функциональ- ного назначения основных полей графического окна приведен на 2.15. В нижней части графического окна расположены кнопки Help и Close, которые позволяю! вызвать окно справки и закрыть редактор соответственно. Меню выбора значений входных и выходных переменных Весовой коэффициенг правиле Рис. 2.15. Редактор базы знаний 69
Редактор правил содержит: четыре системных меню - Рце Edit, View, Options; меню выбора термов входных и выходных переменных; поля установки логических операций И, ИЛИ, НЕ и весов правил, а также кнопки редактирования и просмотра правил. Для ввода нового правила в базу знаний необходимо с помо- щью мыши выбрать соответствующую комбинацию лингвистиче- ских юрмов входных и выходных переменных, определить тип логической связки (И или ИЛИ) между переменными внутри пра- вила, установить наличие или отсутствие логической операции НЕ для каждой лингвистической переменной, ввести значение весово- го коэффициента правила и нажать кнопку Add Rule. По умолча- нию установлены следующие параметры: • логическая связка переменных внутри правила И; • логическая операция I IE отсутствует; • значение весового коэффициента правила 1. Возможны случаи, когда истинность правила не изменяется при произвольном значении некоторой входной переменной, г. е. эта переменная не влияет на результат нечеткого логического вы- вода в данной области факторного пространства. Тогда в качестве лингвистического значения этой переменной необходимо устано- вить попе. Для удаления правила из базы знаний необходимо выполнить однократный щелчок левой кнопкой мыши по этому правилу и нажать кнопку Delete Rule. Для модификации правила необходимо выполнить одно- кратный щелчок левой кнопкой мыши по этому правилу, затем установить необходимые параметры правила и нажать кнопку Edit Rule. 2.5. Подсистема для просмотра правил и схем нечетких выводов Визуализация нечеткого логического вывода осуществляется с помощью GUI-модуля Rule Viewer. Этот модуль позволяет проиллюстрировать следующее: ход логического вывода по каж- дому правилу; получение результирующего нечеткого множест- ва; выполнения процедуры дефазификации. Модуль Rule Viewer может быть вызван из любого GUI-модуля, используемого с сис- темами нечеткого логического вывода, командой View rules ... меню View или нажатием клавиш <Ctrl> + <4>. Вид Rule Viewer для системы логического вывода tipper с указанием функцио- 70
наЛьного назначения приведен на рис. 2.16. основных полей графического окна Рис. 2.16. Визуализация логического вывода для системы tipper с помощью Rule Viewer Rule Viewer содержит: четыре меню - File, Edit, View, Options; Два поля ввода информации - Input и Plot points; кнопки прокрутки изображения влево-вправо (left-right), вверх-вниз (up-down). В нижней части графического окна расположены также кнопки Help и Close, которые позволяют вызвать окно справки и закрыть ре- дактор соответственно. Каждое правило базы знаний представляется в виде после- довательности горизонтально расположенных прямоугольников. При этом первые два столбца прямоугольников (см. рис. 2.16) 71
отображают функции принадлежностей термов посылки прави- ла (ЕСЛИ-...), а последний третий столбец прямоугольников соответствует функции принадлежности терма-следствия вы- ходной переменной (ТО-...). Пустой прямоугольник во втором столбце в визуализации второго правила означает, что в этом правиле посылка по переменной food отсутствует (food IS none). Заливка (желтая на экране дисплея) графиков функций принад- лежностей входных переменных указывает, насколько значения входов соответствуют термам данного правила. Для вывода правила в формате Rule Editor необходимо выполнить одно- кратный щелчок левой кнопки мыши по номеру соответствую- щего правила. В этом случае указанное правило будет выведено в нижней части графического окна. Заливка (голубая на экране дисплея) графика функции принад- лежности выходной переменной представляет собой результат логического вывода в виде нечеткого множества по данному пра- вилу. Результирующее нечеткое множество, соответствующее логическому выводу по всем правилам, показано в нижнем прямо- угольнике последнего столбца графического окна. В этом же пря- моугольнике вертикальная линия (красная на экране дисплея) со- ответствует четкому значению логического вывода, полученного в результате дефазификации. Ввод значений входных переменных может осуществляться двумя способами: • введением численных значений в поле Input; • перемещением с помощью мыши линий-указателей красного цвета (цвет виден на экране дисплея). В последнем случае необходимо позиционировать курсор мыши на красной вертикальной линии, нажать на левую кнопку мыши и, не отпуская ее, переместить указатель на нужную по- зицию. Новое численное значение соответствующей входной переменной будет пересчитано автоматически и выведено в ок- но Input. В поле Plot points задается количество точек дискретизации для построения графиков функций принадлежности. Значение по умолчанию равно 101. 2.6. Подсистема для просмотра полученных поверхностей Визуализация поверхности «входы-выход» осуществляется с помощью GUI-модуля Surface Viewer. Этот модуль позволяет вы- 72
чи графическое изображение зависимости значения любой вы- Ве^Ной переменной от произвольных двух (или одной) входных переменных. Модуль Surface Viewer может быть вызван из любого ^рд-модуля, используемого с системами нечеткого логического вывода, командой View surface ... меню View или нажатием кла- виш <Ctrl> + <4>. Общий вид модуля Surface Viewer с указанием функционального назначения основных полей графического окна приведен на рис. 2.17. В этой области можно вращать изображение с помощью мыши Ale Edit View Options Suri. \ЛЭНЮ ПОЗ- ВОЛЯЮТ ас- ЮЦИИрОВЭП Гордин аг- 1ые оси г входными временны- ми X grids: Trj 2 (odpuil: .-JOJXJ Поля ПОЗВОЛЯЮТ задать количество ючек диск- ретизации по ос им X иУ этом поле задают Ся значения осталь- ных входных пере- менных 15 Ref Input: React» Help X (input) | set vice ~r [ СПР^]- | food Ygilds [ is Меню позволяет выбрать вы- ходную переменную, которая будет отображатся по оси Z Кнопка позволяет пере- рисовать поверхность при новых значениях параметров Рис. 2.17. Визуализация поверхности «входы-выход» для системы tipper с помощью Surface Viewer Surface Viewer содержит: четыре верхних системных меню с; Edit, View, Options; три меню выбора координатных °Сей х (input), Y (input), Z (output); три поля ввода информа- 73
НИИ - X girds, Y girds, Ref. Input; кнопку Evaluate для пострс! ния поверхности при новых параметрах. В нижней части гра фического окна расположены также кнопки Help и Close, котД рые позволяют вызвать окно справки и закрыть редактор coo7j ветственпо. Surface Viewer позволяет вращать поверхность «входы-выход„ с помощью мыши. Для этого необходимо позиционировать курсор мыши па поверхности «входы-выход», нажать на левую кнопку мыши и, не отпуская ее, повернуть графическое изображение на требуемый угол. Поля X girds и Y girds предназначены для задания количества точек дискретизации по осям X и Y, для построения поверхности «входы-выход». По умолчанию количество дискрет по каждой оси равно 15. Для изменения этого значения необходимо установить маркер па поле X girds (Y girds) и ввести новое значение. Поле Ref. Input предназначено для задания значений входных переменных, кроме тех, которые ассоциированы с координат ными осями. По умолчанию это значения середины интервалов измене- ния переменных. Для изменения этих значений необходимо уста- новить маркер на поле Ref. Input и ввести новые значения. 2.7. Система обогрева/охлаждения здания Вопросы потребления, учета, преобразования, сохранения и использования электроэнергии являются па сегодняшний день в условиях значительного удорожания ее стоимости чрезвычайно актуальными. На примере системы обогрева/охлаждения здания показаны преимущества использования даже простейших законов нечеткой логики по сравнению с традиционными формами управления ра- ботой кондиционера в здании в условиях переменной температуры внешней среды в течение суток [17]. Управление системой обогрева/охлаждения здания реализуется двумя путями: с использованием традиционного термостата или нечеткого регулятора. Термодинамическая модель здания, а также оба закона управ- ления моделируются с помощью пакета Matlab. Общая схема мо- делирования термодинамики здания приведена на рис. 2.18. Традиционный термостат работает короткими включепия- ми/выключепиями и имеет статическую характеристику типа реле с гистерезисом. 74
Рис. 2.18. Схема моделирования термодинамической модели здания 75
Для увеличения экономичности системы использован нечеткий ре!улятор со следующими нечеткими высказываниями. 1 . «ЕСЛИ величина ошибки е ниже нормы, ТОГДА необходи- мо нагревать». Этому нечеткому высказыванию соответствует правило IF е =NL THEN m=NL. 2 .«ЕСЛИ величина ошибки е выше нормы, ТОГДА необходи- мо охлаждать». Этому нечеткому высказыванию соответствует правило IF е =PL THEN u=PL. 3 .«ЕСЛИ величина ошибки е в норме, ТОГДА все в порядке». Этому нечеткому высказыванию соответствует правило IF e=ZR THEN m=ZR. Функции принадлежности для параметров ошибки е и выхода и не- четкого регулятора изображены на рис. 2.19 и 2.20 соответственно. Membership function plots •noul variable quihCko" Рис. 2.19. Функции принадлежности сигнала ошибки oirtpul variable “выход' Рис. 2.20. Функции принадлежности выходного сигнала регулятора Для моделирования взято здание с общим объемом 1200 м3. Ставит- ся задача поддержания постоянства в течение суток комфортной темпе- ратуры около 20 °C при условии неблагоприятного изменения гемпера- 76
туры вне здания в течение суток от -5 °C в ночные до +25 °C в дневные часы. Начальное значение температуры было принято равным 10 °C. Графики изменения температуры внутри и вне здания при работе термо- стата приведены на рис. 2.21, а при работе нечеткого регулятора - на рис. 2.22 соответственно. Результаты моделирования свидетельствуют, что стоимость поддержания постоянной температуры при исполь- зовании простейшего нечеткого ретулятора оказывается в два раза ниже. Рис. 2.21. Графики изменения температуры внутри и вне здания при работе термостата Рис. 2.22. Графики изменения температуры внутри и вне здания при работе нечеткого регулятора Можно показать, что применение более сложных законов не- четкой логики дает еще больший эффект как с точки зрения эко- номии электроэнергии, так и с точки зрения точности поддержа- ния заданной температуры [18]. 77
ГЛАВА 3. АЛГОРИТМЫ НЕЧЕТКОГО УПРАВЛЕНИЯ В ПАКЕТЕ CONCEPT В области автоматизации технологических процессов нечет- кие логические регуляторы дают возможность реализовать сис- темы управления с новыми свойствами, которые технически трудно достигнуть с помощью методов классической теории автоматического регулирования. Такие системы могут обеспе- чить более высокие точностные и динамические показатели управления, снизить требования к квалификации обслуживаю- щего персонала, обеспечить более высокую функциональную надежность управления (и т. д.) по сравнению с классическими системами управления. Особенности решения задач в реальном масштабе времени приводят к тому, что недостаток вычислительных возможностей (несоответствие вычислительных ресурсов сложности задачи) эк- вивалентен, в некотором смысле, недостатку информации об усло- виях задачи. В этой главе дано более простое, рассчитанное на специали- стов по управлению, не владеющих основами теории нечеткой ло- гики, объяснение того, что собой представляет нечеткое управле- ние и как оно может быть применено для функций контроля и управления; приведены также описания функций и функциональ- ных блоков (FFB) для реализации нечеткого управления средства- ми пакета Concept фирмы Schneider Electric (Франция) для кон- троллеров Modicon TSX Quantum, Compact и Momentum, описано их взаимодействие. Глава не содержит строгого математического описания тео- рии нечеткого управления, ее цель - обеспечить понимание принципа нечеткого управления. Более подробная теоретиче- ская информация может быть найдена в соответствующей лите- ратуре [1,2, 19, 20]. Выражение «нечеткая логика» описывает теорию «неодно- значных величин». В науке или в компьютерных программах 78
обычно используются только два значения переменных; TRUE или FALSE, вкл. или выкл.. 1 или 0, при этом отсутствуют промежу- точные значения. Основная идея нечеткой логики - работа с неоднозначными величинами, элементы которых принадлежат множеству лишь в какой-то степени. Взамен «принадлежности» и «непринадлежно- сти» допускаются также промежуточные стадии. С помощью не- четкой логики самые различные неоднозначные величины могут быть математически описаны и обработаны. Теория нечетких множеств нашла наиболее успешное приме- нение в системах управления в виде нечеткого управления [21]. Если рассмотреть физическую величину, такую, как, например, температура, то в общем случае эта величина представляется чис- лом физических единиц измерения, например 21 °C. Но температура также может быть описана словесными ха- рактеристиками. Например, когда мы говорим о температуре в комнате, мы описываем се характеристиками «низкая», «нор- мальная» и «высокая». Эти характеристики не имеют по отно- шению друг к другу точных границ, г. е. это неоднозначное описание температуры. Комнатная температура в 15 °C обычно характеризуется как «холодная», а температура в 21 °C - как «теплая». Для человече- ских чувств не существует четкой границы между «холодным» и «теплым», как это есть в классической логике, которая оперирует терминами истинности TRUE (1) и FALSE (0). Необходимо учи- тывать плавный переход от «холодного» к «теплому». При проектировании систем управления одна или несколько управляющих переменных делаются зависимыми от одной или нескольких входных переменных. Входные переменные логиче- ски и численно связаны между собой. Выходные переменные являются своего рода следствием этих связей или результатом вычислений. Нечто подобное происходит и в теории нечеткого управления. Входная величина преобразуется в лингвистическую перемен- ную е помощью лингвистических термов и оценивается с помо- щью набора правил. Результатом этой оценки является также «не- четкая» лингвистическая переменная, которую необходимо преоб- разовать в величину управляющего сигнала, так как, например, нельзя управлять клапаном с помощью «нечетких» величин. При разработке системы управления выполняются следующие Действия: 79
1) фазифицируются входные переменные; 2)лингвистические переменные сопоставляются соответствующим операторам с помощью специальных правил, Результатом обработки всех правил является нечеткая выходная переменная, т. е. переменная, свойства которой описываются с помощью ее функций принадлежности; 3) дефазифицируются выходные переменные, т. е. осуществля- ется преобразование их в определенные числа, с которыми связа- ны действия в процессе управления. Если температура определена как лингвистическая перемен- ная, она может быть описана с помощью лингвистических меток (термов) «низкая», «приятная» и «высокая». Лингвистическая переменная - это величина (например, тем- пература), которая описывается лингвистическими термами. Лингвистические термы описывают свойства лингвистической переменной. Лингвистические метки «низкая», «приятная» и «высокая» не могут быть четко разделены между собой. Чтобы должным обра- зом охарактеризовать эту нечеткую границу, каждой лингвистиче- ской метке присваивается так называемая степень принадлежно- сти. Эта степень принадлежности показывает, в какой мере темпе- ратура является низкой: значение 0 степени принадлежности лингвистической метке «низкая» означает, что температура не низкая вообще; значение 1 степени принадлежности лингвистической метке «низкая» означает, что температура действительно низкая. Раз- личные примеры изображены на рис. 3.1. Рис. 3.1. Примеры степеней принадлежности лингвистической переменной «Температура» 80
Степень принадлежности определяет, в какой мере физическая величина соотносится с лингвистической меткой: О означает, что величина совершенно не соответствует лин- гвистической метке; 1 означает, что величина полностью соответствует лингвисти- ческой метке. Плавный переход от «не очень холодного» к «очень холодно- му» описывается с помощью функции. Функции такого рода назы- ваются функциями принадлежности, так как они отображают сте- пень принадлежности каждого значения физической величины соответствующему лингвистическому терму. В случае с температурой функция принадлежности указывает не только на то, низкая температура или нет, опа ставит в соответствие каждому значению физической величины меру соответствия выра- жению «т емпература низкая», т. е. степень принадлежности. В общем случае бывает достаточно охарактеризоват ь принад- лежность посредством относительно простых классов функций, таких, как, например, треугольного, трапецеидального или же сту- пенчатого вида. Таким образом, для любого значения температуры может быть определена степень принадлежности. На рис. 3.2 показана степень принадлежности для двух различ- ных значений температуры. Если определена функция принадлеж- ности лингвистической метке, то можно определить принадлеж- ность различных значений температуры соответствующей лин- гвистической метке с помощью степени принадлежности. рнс. 3.2. Степень принадлежности для двух различных значений температуры: (Т„ щ), (Тг, р2) - элементы нечеткого множества 81
Функция принадлежности определяет степень принадлежно- сти лингвистической метке для каждого значения физической величины. Определение степеней принадлежности всем лингвистиче- ским меткам переменных в отношении входной переменной на- зывается фазификацией. На рис. 3.3. показана фазификация входной температуры. Входная величина в стандартном (чет- ком) описании в сравнении с нечетким описанием записывается следующим образом. • Че ткое описание: «Температура 21 °C»; • Нечеткое описание: «Температура «низкая» со степенью принадлежности 0.0»; «Температура «средняя» со степенью при- надлежности 0.7». Рис. 3.3. Фазификация входного значения температуры Если мы рассмотрим, например, наши ежедневные действия, можно заметить, что они основаны на различных предпосылках. Мы делаем что-то, когда встречается предпосылка для этого. Для описания действий либо реакции мы используем правила, например: «Если температура в комнате воспринимается как низкая, не- много открыть клапан обогревателя»; «Если температура в комнате расценивается как высокая, за- крыть клапан обогревателя»; «Если сейчас лето и наружная температура не низкая, полно- стью выключить обогреватель». За правилами стоят знания эксперта, который посредством более или менее обширного обучения системы получает воз- можность влиять на процесс желаемым образом. Знания эксперта не ограничены только лишь типом действий (открыть немного 82
клапан), но в то же время связаны со знанием того, что означает понятие «немного», в частности какой угол поворота ему соот- ветствует. Правила формируют (нечеткие) значения выходных перемен- ных для определенных (нечетких) входных переменных. Обычно условия (предпосылки) объединяются в правила с помощью операторов И и ИЛИ. В примере условие «сейчас лето» (основная переменная - «сезон», лингвистическая мет- ка - «лето») соотносится с условием «наружная температура не низкая» таким образом, что для прихода к требуемому за- ключению необходимо, чтобы оба этих условия были выпол- нены. Сопоставления И и ИЛИ осуществляются в нечеткой логике с помощью соответствующих математических операторов. В теории нечеткого управления существует ряд операторов, которые реали- зуют сопоставление И, с одной стороны, и сопоставление ИЛИ, с другой. Простейший оператор для И - минимум, а простейший оператор для ИЛИ - максимум. Сопоставление условий осуществляется через операторы. При составлении правил может оказаться, что они должны обладать различным весом. Например, одно правило должно применяться всегда (в 100 % случаев), однако другое правило применяется не всегда (в 80 % случаев). Чтобы описать подоб- ную ситуацию, каждому правилу ставится в соответствие степень правдоподобия. Математически это осуществляется в общем случае умножением результата на степень правдоподобия. Логический вывод является результатом применения всех правил. 11реобразование нечеткой переменной в четкую называется Дефазификацией. Простейшая возможность получить четкую переменную из нечеткой - это снабдить каждое из свойств нечеткой перемен- ной четкой количественной характеристикой. Таким образом, каждая лингвистическая метка представляется установленным численным значением переменной. В этом случае говорят о так называемых синглтонах (рис. 3.4). Предложенные значения Для каждой лингвистической метки взвешиваются посредством соответствующих степеней принадлежности. В этом случае нечеткая переменная арифметически преобразуется обратно в Четкую. 83
Рис. 3.4. Синглтоны В теории нечеткого управления существует также серия дру- гих методов дефазификации, некоторые из них характеризуются значительным объемом вычислений и поэтому в Concepte от- сутствуют. 3.1. Библиотека Concept FUZZY для реализации нечеткого управления Библиотека Concept FUZZY для реализации нечеткого управ- ления содержит следующие стандартные функции и элементарные функциональные блоки: • FUZSTERM_INT, FUZ STERM REAL - для фазификации отдельного терма лингвистической переменной соответственно с типом данных целого типа и вещественного; • FUZ ATERM-JNT, FUZ_ATERM_ REAL - для фазификации одновременно до 9 термов лингвистических переменных соответ- ственно с типом данных целого типа и вещественного; • FUZ ATERM STI - для получения значения рангов от 2 до 10 000 для данных целого типа с сохранением результатов в виде структурированных данных; • FUZ ATERM STR - для получения значения рангов от 0 до 1 для данных реального типа с сохранением результатов в виде структурированных данных; • FUZ MAX INT, FUZ MAX REAL - для реализации опера- тора ИЛИ (максимум); • FUZMININT, FUZMINREAL - для реализации оператора И (минимум); • FUZ PROD INT, FUZ PROD REAL - для формирования не- четкого произведения функций принадлежности (оператор И); 84
• FUZ SUM INT, FUZ SUM REAL для формирования огра- ниченной суммы функций принадлежности (оператор ИЛИ); • DEFUZ INT, DEFUZ REAL для дсфазификации лингвис- тических переменных на основе использования синглтонов; • DEFUZ STI, DEFUZ STR для дефазификации лингвисти- ческих переменных на основе использования синглтонов, при этом данные считываются из структурированных данных. Такого набора функций во многих случаях достаточно для реа- лизации нечеткого логического регулятора. Различия между вещественной и целочисленной арифметикой заключаются в следующем. В процессе вычислений степень принадлежности вычисляется с точностью до 0,01 %, а диапазон степени принадлежности 0... I пре- образуется в диапазон 0... 10 000. Вещественная арифметика дает возможность работать с реаль- ными значениями физической величины, в отличие от целочис- ленной арифметики. В вещественной арифметике время выполнения больше, чем в целочисленной арифметике. В случае необходимости пакет Concept позволяет пользовате- лю создавать нестандартные функциональные блоки на языке Си и включать их в программное обеспечение контроллера. Отличительной чертой пакета Concept является наличие про- граммы, моделирующей контроллер со всеми его модулями (симу- лятор аппаратных средств). Это дает возможность выполнять большую часть работы по отладке приложения в автономном ре- жиме, без подключения к контроллеру. 3.2. Фазификация входных переменных регулятора Все переменные, которые должны быть взаимосвязаны друг с Другом через лингвистические правила, сначала должны фазифи- цироваться. Для этого рассматривается необходимое число при- знаков, которые присваиваются переменной. Это число зависит от того, будут ли эти признаки использоваться в правилах. Обычно бывает достаточно от 3 до 5 признаков. В Concept имеется воз- можность выбора фазификации каждого герма лингвистической переменной либо фазификация до 9 термов одной переменной од- новременно. С помощью функциональных блоков FUZ STERM INT и UZ_STERM_REAL (рис.3.5) можно осуществлять фазифика- 85
FUZ_ STEaM-**** MD S1 S3 54 - INT REAL Рис. 3.5. Блок FUZ STERM *, реализующий процедуру фазификации случае используются функции цию одного терма функциями принадлежности, которые имеют до 4 опорных точек. При этом должно выполняться условие S1<S2<S3<S4. Функции принад- лежности могут выглядеть, как показано на рис. 3.6. В общем принадлежности двух видов: треугольные и наклонные. Фа- термов предлагает значительную гибкость для опытных пользователей, однако простейший спо- соб фазифицировать переменную - это применить блок FUZATERM или FUZ ATERM ST (рис. 3.7), так как эти блоки фазифицируют не просто отдельный терм, а все термы лингвис- тической переменной. Эти блоки также упрощают входы функ- ций принадлежности для различных термов (рис. 3.8). зификация индивидуальных Рис. 3.6. Фазификация с помощью EFB FUZ STERM Идея такого упрощения заключается в том, что функции при- надлежности различных термов нечеткой переменной не являются независимыми. В большинстве случаев общая степень принадлеж- ности двум последовательным функциям равна 1. Если для иро- 86
стоты использовать треугольные функции принадлежности вместо трапецеидальных в примере опреде- ления функций принадлежности для 6 термов (рис. 3.8), то необходимо определить только 6 опорных точек вместо 2-2 + 4-3 = 14 опорных то- чек в случае фазификации с помо- щью FUZJSTERM. Блоки FUZ_ATERMZFUZATERM_ST допускают до 9 признаков. Фазификация должна быть вы- полнена для каждой входной переменной. Результатом каждой фазификации является степень принадлежности терму, который соотносится с признаком. При использовании FUZ ATERM ре- зультатом является создание индивидуальных переменных для применения графических связей в выводе. При использовании FUZ ATERM ST степени структуру данных. FUZATERM^-** X MDI MD3 — —- MD3 *A* MD4 MD5 MD7 M. SI MD6 *»• S2 MDS ... S9 •“ c INT, HEAL Рис. 3.7. Блок FUZ ATERM, реализующий процедуру фазификации принадлежности сводятся воедино в Рис. 3.8. Фазификация с помощью EFB FUZ ATERM Функциональный блок FUZ ATERM фазифицирует до 9 термов лингвистической переменной (вход X) и отображает ин- дивидуальные степени принадлежности (выходы MD1...MD9). Диапазоны выходов: 0...10 ООО для данных типа INT, и 0...1 для Данных типа REAL. Функции принадлежности определяются с Помощью опорных точек (расширяемые входы S1...S9). Функ- циональный блок работает со специальными упрощениями для определения функций принадлежности. Наклонная функция (Ramps) используется для первого и последнего терма; функция треугольного вида - между первым 87
и последним термом; при этом сумма двух функций принад- лежности для двух соседних лингвистических термов всегда равна 1 или 10 000; а сумма всех функций принадлежностей всех лингвистических термов для каждого входа X всегда рав- на 1 или 10 000. Число опорных точек (Sl...Sn) может быть увеличено мак- симум до 9 путем увеличения вертикального размера символа блока. Дополнительные опорные точки не допускаются. Число вычисляемых степеней принадлежности соответствует числу функций принадлежности. Если используется меньше 9 функ- ций принадлежности, остальным выходам присваивается зна- чение 0 (например, для 4 функций принадлежности вычисля- ются 4 степени принадлежности MD1...MD4, a MD5...MD9 равны 0). Типы данных всех входных и выходных переменных должны быть одинаковыми. Имеется специальный функцио- нальный блок для обработки каждого из различных типов дан- ных. Могут учитываться дополнительные параметры EN и ENO. С помощью функционального блока FUZATERM все термы лингвистической переменной могут быть фазифицированы одно- временно. Функции принадлежности определяются через опорные точки (SI, S2, S3, ...). В этой концепции вершины фазификации определяются числом функций принадлежности с одной опорной точкой в каждом случае. Результирующие формы функций при- надлежности - наклонные и треугольные, в которых сумма инди- видуальных степеней принадлежности всегда равна 100 %. Эта связь отражается временными диаграммами, которые представле- ны на рис. 3.9-3.11. Рис. 3.9. Две функции принадлежности, две опорные точки, две степени принадлежности 88
Рис. 3.10. Три функции принадлежности, три опорные точки, три степени принадлежности Рис. 3.11. Четыре функции принадлежности, четыре опорные точки, четыре степени принадлежности Функциональные блоки FUZATERMSTI и FUZAT ERMSTR могут обрабатывать различные типы входных данных (рис. 3.12). Блок фазифицирует до 9 термов лингвистической переменной (вход X) и помещает индивидуальные функции принадлежности в элемен- ты terml ... term9 структуры данных FUZ_MD_INT, если ис- пользуется FUZ ATERM STI, или FUZMDRFAL, если ис- пользуется FUZATERMSTR. Типы данных всех параметров входа идентичны. Диапазоны *** *** *** *** FUZ_ATERM_» -X HD -SI - S2 — FUZ_MD_”* S9 * = STI, STR *”=INT, REAL значений на выходе: 2... 10 000 ДДя данных типа INT и 0...1 для Данных типа REAL. Функции Рис. 3.12. Блок FUZ ATERM ST, реализующий процедуру фазификации принадлежности определяются уровнями поддержки (расширенные входы S1...S9). 89
Функциональный блок FUZ A TERM S Т работает со специ- альным упрощением определения функций принадлежности. Наклонная функция (Ramps) используется для первого и последнего терма, функция треугольного вида - между первым и последним термом, при этом сумма двух функций принад- лежности для двух соседних лингвистических термов всегда равна 1 илиЮ ООО, а сумма всех функций принадлежностей всех лингвистических термов для каждого входа X всегда рав- на 1 или 10 000. Число опорных точек (S1 ... Sn) может быть увеличено макси- мум до 9 путем увеличения вертикального размера символа блока. Дополнительные опорные точки не допускаются. Число вычис- ляемых степеней принадлежности соответствует числу функций принадлежности и хранится в структуре данных (элемент «п»). Если используется менее 9 функций принадлежности, остальные элементы структуры данных (termx) не меняются (например, для 4 опорных точек имеется 4 функции принадлежности; 4 степени принадлежности находятся в элементах terml ... term4; term5 ... term9 не меняются). Эго имеет то преимущество, что структуры данных, которые отображаются в сигнальной памяти, занимают ровно столько ячеек памяти, сколько фактически требуется. Типы данных всех входных переменных должны быть одинаковыми. Имеется специальный функциональный блок для обработки каж- дого из различных типов данных. Могут учитываться дополни- тельные параметры EN и ENO. Сообщения об ошибке появляются в следующих случаях: E EFB INPUT VALUE OUTOFRANGE - при неправильном порядке опорных точек. Опорные точки должны следовать в возрастающем порядке (SI < S2 < S3 < ... < S9 ); Е EFB ТОО MANYJNPUTS - при использовании более 9 опорных точек. 3.3. Анализ состоянии объекта управления в определение степени воздействия па него Анализ состояния объекта управления и определение степени воздействия на пего осуществляются через правила. Правила реали- зуются через связь степеней принадлежности нечетких переменных. 90
Входы EFB, которые представляю! собой нечеткие операторы, объеди- няются со степенями принадлежно- сти (созданными нечеткими EFB). Пары FUZ MIN/FUZ МАХ и FUZPROD/FUZ SUM являются хорошими комбинациями для свя- зей И/ИЛИ. В первом приближе- нии лучше использовать пару fuz_min/fuz_max. ftt FUZ_MIN_*»« INI IN2 Din ***=INT.REAL Рис. 3.13. Блок FUZ MIN *, реализующий функцию нечеткого минимума Функциональный блок FUZ_MIN_* - блок, реализующий не- четкий минимум (рис. 3.13). Этот блок обнаруживает самую низ- кую входную оценку и передает ее значение па выход блока в со- ответствии с формулой REAL: OUT = MIN {1, INI, IN2,..., INn} или INT: OUT = MIN {10 000, INI, IN2,..., INn}. FUW» INI IN2 INn , “= INI, REAL Рис. 3.14. Блок FUZ_MAX_*, реализующий функцию нечеткого максимума Функциональный блок Функциональный блок FUZ MIN * дос1упен для обработки различных ти- пов данных: мо>уг быть обработаны данные типа INI' и REAL. Диапазоны значений на входе и выходе: 0 ... 10 000 для данных типа IN I' и 0 ... 1 для дан- ных типа REAL. Типы данных всех параметров входа и также параметров выхода должны быть идентичны. Чис- ло входов может быть увеличено. FUZ_MAX_* - блок, реализующий нечеткий максимум (рис. 3.14). Блок FUZMAX* обнаружива- ет самую высокую входную оценку и помещает ее на выход по формуле OUT = МАХ {0, INI, IN2,..., INn}. Могут быть обработаны данные типа INT и REAL. Диапазон значений на входе и выходе: 0...10 000 для данных типа INT и 0...1 Данных типа REAL. Тины данных всех параметров входа и также параметров выхода должны быть идентичны. Число входов может быть увеличено. 91
Правила взвешиваются с помощью умножения. В веществен- ной арифметике для этой цели служит блок FUZ PROD REAL. В целочисленной арифметике для этой цели служит блок FUZPRODINT, который учитывает нормализованную форму степеней принадлежности от 0 до 10 000. Функциональный блок FUZPROD (рис. 3.15) формирует произведение (выход MD) степеней принадлежности (расши- ряемые входы MD1 ... MDn). Кроме того, блок FUZPROD (в случае целочисленных вычислений) выполняет умножение, учитывая диапазон степеней ruz_PROD_-“ принадлежности (0 ... 10 000). ___мрз----Диапазоны входов и выходов: 0 ... 10 000 для данных типа ------------- — = int real INT и 0 ... 1 для данных типа REAL. Число входов может Рис. 3.15. Блок FUZ PROD, быть увеличено. Могут учиты- реализующий нечеткое произведение виться дополнительные пара- метры EN и ENO. В вещественной арифметике формирование произведения про- исходит путем простого перемножения. Правило: (0 ... 1)х(0... 1) = (0 ... 1). Пример: 0.3 х 0.6 = 0.18 В целочисленной арифметике должна проводиться коррекция с пересчетом диапазона. Правило: Пример: (0... 10 000) х (0 ... 10 000) = (0 ... 10 000). 3 000 х 6 000 = 1 800 (!). 3.4. Дефазификация выходных переменных регулятора Результатом применения всех правил является в свою очередь степень принадлежности признакам выходной переменной. Чтобы получить приемлемый результат (например, признаки со степеня- ми принадлежности не могут непосредственно использоваться для управления), степени принадлежности всех термов переменных должны быть скомбинированы. Это достигается с помощью функ- ционального блока дефазификации DEFUZ_* (рис. 3.16). Этот блок выполняет дефазификацию лингвистической переменной, которая состоит из лингвистических термов, представленных от- 92
дельными тонами (singletons), c использованием метода среднего максимума по формуле DEFUZ„««< ZERO_V MDxSxl MD1S12 MDiSxx Y Л ^MDi-Si = INT, REAL п ^MDi Рис. 3.16. Блок DEFUZ *, реализующий операцию дефазификации где 2 < п< 9 - число синглтонов. С помощью синглтонов степени принадлежности функцио- нальный блок DEFUZ* создает однозначное значение выходных переменных, которое назначается термам выходных переменных. Положение синглтонов определяется уровнями поддержки (опорными точками S1 ... S9). Диапазоны значений степени при- надлежности: 0 ... 10 000 для данных типа 1NT и 0 ... 1 для данных типа REAL. При конфигурировании функциональных блоков необходимо помнить, что входы всегда используются в парах, потому что каждый лингвистический терм взвешивается с соот- ветствующей степенью принадлежности (MD1 ... MD9). Дополни- тельные входы не допускаются. Имеется специальный функцио- нальный блок для обработки каждого из различных типов данных. Могут учитываться дополнительные параметры EN и ENO. Если все степени принадлежности имеют значение 0, то пове- дение выхода функционального блока может управляться через вход ZEROY: ZERO Y = 0 - выход Y останется неизменным; ZERO Y = 1 - выход Y установлен в 0. Число входов (MDnSn) может быть увеличено максимум до 18, что соответствует 9 отдельным тонам. Сообщения об ошибке появляются в следующих случаях: Е EFB ТОО MANY INPUTS при использовании более 9 опорных точек (это соответствует Максимуму — 18 MDnSn входов); 93
E EFB_WRONG NUMBER_OF_INPUTS при инициализации функционального блока с неверным чис- лом входов; E EFB INPUT VALUE OUT OF RANGE, при выходе одной из степеней принадлежности MD1 ... MD9 за допустимые пределы. Возможны только следующие диапазоны: INT: 0... 10 000; REAL: 0 ... 1. DEFUZ^ ZERO_Y MI> 51 S2 — FUZ_MD^*“ * = STI. STR *** = INT, REAL Рис. 3.17 Блоки DEFUZ STI и DEFUZ S FR “*----S9 Функциональные блоки DEFUZSTI, DEFUZ STR (рис. 3.17) работают как функции принадлежности и дефазифипируют лингвистические термы, представленные синглтонами (рис. 3.18), в соответствии с методом максимального сред- него. Положение синглтонов определяется через опорные точки (S1 ... S9). Каждый терм взвешивается в соответ- ствии со степенью принадлеж- ности (terml ... term9) из структуры данных FUZ MD INT (для DEFUZSTI) или FUZ MD REAL (для DEFUZ STR). Диапазоны степеней принадлежности: 0 ... 10 000 для данных тина INT и 0 ... 1 для данных типа REAL. Число входов (S1 ... Sn) может быть уве- личено максимум до 9 путем увеличения вертикального размера символа блока. Дополнительные входы не допускаются. Типы данных для всех входных переменных (Sn) должны совпадать. Имеется специальный функциональный блок для обработки каж- дого из различных типов данных. Могут учитываться дополни- тельные параметры EN и ENO. Сообщение об ошибке: E EFB TOO MANY INPUTS появляется при использовании более 9 опорных точек. 94
И (MD) 1 - (MD2) Ц.Ю (MD4) 0 -L Щ1> (ММ) (MD3) S1 S2 S3 S4 V Рис. 3.18. Функции принадлежности выходов в виде синглтонов Предупреждение E EFB WRONG NUMBER OF INPUTS появляется, если число входов, равное числу опорных точек S1 ... Sn, не соответстствует числу используемых термов (MD) в структуре дан- ных FUZ MD INT.n (для DEFUZ STI) или FUZ MD REAL.n (для DEFUZSTR). 3.5. Нечеткое управление работой парового котла Возможности fuzzy-библиотеки пакета Concept рассмотрим на примере синтеза нечеткого регулятора для стабилизации работы парового котла [22]. На нормальную работу парового котла влияют такие пара- метры, как давление и температура окружающей среды, темпе- ратура нагревателя и т. п. В качестве исходных данных ис- пользуются показания датчиков давления и температуры в котле. Требуется создать нечеткий регулятор управления хо- дом клапана для обеспечения максимально устойчивой работы котла. Пример базируется на целочисленной логике. Имеются Две переменные («давление» и «температура»), которые долж- ны оцениваться в соответствии с четырьмя предписанными экспертом правилами. 95
В работе нечеткого регулятора можно выделить три этапа. Первый этап - фазификация реальных данных, т. е. получение функций принадлежностей входных переменных (в данном случае давления и температуры); Второй этап - работа по нечетким правилам над нечеткими пе- ременными с целью анализа состояния системы и определения степени воздействия на регулирующий орган; Третий этап - дефазификация, т. е. преобразование полу- ченных результатов в четкую величину управляющего воз- действия. На первом этапе необходимо получить функции принадлежно- сти входных переменных. В качестве среднего значения температуры в котле исполь- зуется значение в 200 °C, а в качестве нормального значения давления - 80 атм. Так как значения температуры и давления от- носительно велики (доли градуса и атмосферы в пашем примере не играют роли), то в качестве фазификатора давления и температуры используем блок FFB UZ ATERM INT, работающий с целочис- ленными данными. Фазификатор лингвистической переменной «давление» имеет три лингвистических терма: «ниже нормы» для давления 70 атм, «норма» для давления 80 атм и «выше нормы» для давления 90 атм. Вид функций принадлежности, уровней поддержки и сте- пени принадлежности к гермам приведены на рис. 3.19. Фазифика- тор определяет функцию принадлежности для каждого герма входной лингвистической переменной «давление». Рис. 3.19. Три функции принадлежности, три уровня поддержки, три терма 96
Фазификатор лингвистической переменной «температура» имеет четыре лингвистических терма: «невысокая» для тем- пературы 150 °C, «средняя» для температуры 200 ПС, «высо- кая» для температуры 250 °C и «очень высокая» для темпера- туры 300 °C. Вид функций принадлежности, уровней под- держки и степени принадлежности к термам приведены на рис. 3.20. Фазификатор определяет функцию принадлежности для каждого терма входной лингвистической переменной «температура». Рис. 3.20. Четыре функции принадлежности, четыре уровня поддержки, четыре терма На втором этапе необходимо проанализировать процессы, про- исходящие в паровом котле, и в соответствии с ними определить степень воздействия на клапан. Экспертом предложен следующий набор правил, использовав который нечеткий регулятор способен стабилизировать состояние системы. Правило 1. «ЕСЛИ «давление» «нормальное» и «температура» «высокая», ТО клапан «почти открыт»». 11равило 2. «ЕСЛИ «давление» «выше нормы» или «температура» «очень высокая», ТО клапан «открыт»». Правило 3. «ЕСЛИ «давление» «нормальное» и «температура» «средняя», ТО клапан «почти закрыт»». Правило 4. «ЕСЛИ «давление» «ниже нормы» или «температура» «невы- сокая», ГО клапан «закрыт»». 97
Правила 1 и 3 реализованы с помощью FFB FUZMfN INT блока, реализующего нечеткий минимум. Функция FUZ MIN 1^-р обнаруживает самую низкую входную оценку и передает это'зна чсние на выход блока в соответствии с формулой OUT = MIN {10 000, INI, IN2,..., INn}. В функциональном блоке FUZ MIN INT могут быть обра- ботаны данные типа INT. Диапазон значений на входе и выходе' 0 ... 10 000. Типы данных всех параметров входа и также пара! метров выхода должны быть идентичны. Правила 2 и 4 реализованы с помощью FFB FUZ MAX JNT- бло- ка, реализующего нелегкий максимум. Функция FUZMAXINT об- наруживает самую высокую входную оценку и помещает это на выход по формуле OUT = МАХ {0, INI, IN2,..., INn}. В функциональном блоке FUZMAXINT могут быть обра- ботаны данные типа 1NT. Диапазон значений на входе и выходе: 0 ... 10 000. Типы данных всех параметров входа и также пара- метров выхода должны быть идентичны. Используя приведенные выше правила, регулятор вырабатыва- ет четыре лингвистических меры воздействия на клапан парового котла (рис. 3.21). Рис. 3.21. Функции принадлежности выходной переменной регулятора Процесс дефазификации реализован с помощью блока FFB DEFUZ INT. Этот блок выполняет дефазификацию лин- 98
генетической переменной, которая состоит из лингвистических термов, представленных отдельными гонами (singletons), с ис- пользованием метода среднего максимума но формуле Л Y = ^-------. Л MD, г—I Положение отдельных тонов определено уровнями поддерж- ки (S1 ••• S9). Диапазон значений степени принадлежности О ... 10 000 для данных типа IN I’. При конфигурировании функ- циональных блоков необходимо помнить, что входы всегда ис- пользуются в парах, потому что каждый лингвистический герм взвешивается с соответствующей степенью принадлежности (MD1 ... MD9). Если все степени принадлежности имеют значение 0, то пове- дение выхода функционального блока может управляться через вход ZEROY: ZERO Y = 0 выходУ останется неизменным; ZEROY = 1 выход Y установлен в 0. Имея четыре независимых лингвистических «меры воздей- ствия» на клапан котла, необходимо объединить их с учетом следующих факторов: граничные коэффициенты S1 и S4 выби- раются из расчета максимальной сочности выходного воздейст- вия, а промежуточные коэффициенты S2 и S3 выбираются та- ким образом, чтобы выходная переменная достаточно плавно изменяла свое значение. Соответственно на вход MD1 необхо- димо подать значение «клапан открыт», на вход MD2 - «клапан почти открыт», на вход MD3 - «клапан почти закрыт» и па вход MD4 - «клапан закрыт». Выходное значение Y представлено в виде интервала значений от 0 до 10000 (т. е. 0 «клапан за- крыт», 10000 - «клапан открьп»). Использовав преобразователь, Можно получить любую необходимую меру воздействия на Управляемый объект. 99
Структурная схема нечеткого регулятора на языке функ- циональных блок-схем (FBD) пакета Concept приведена на рис. 3.22. Рис. 3.22. Структурная схема нечеткого рс1улятора на языке функциональных блок-схем Результаты моделирования показали эффективность работы нечеткого логического регулятора в сравнении с ПИД- регулятором.
ГЛАВА 4. АЛГОРИТМЫ НЕЧЕТКОГО УПРАВЛЕНИЯ В ПАКЕТЕ ТРЕЙС МОУД В общем случае усложненные условия эксплуатации совре- менных технологических комплексов приводят к необходимо- сти учета в процессе контроля и управления следующих видов неопределенности: 1) низкой точности оперативной информа- ции; 2) неточности моделей объектов контроля и управления; 3) нечеткости в процессе принятия решений; 4) трудностей представления знаний диспетчера. Низкая точность оперативной информации, получаемой с объ- ектов управления, возникает ввиду большой погрешности датчи- ков замера технологических параметров (расхода, давления и т. д.) и их невысокой надежности, а также в результате отказов каналов связи, большого запаздывания при передаче информации по уров- ням управления, отсутствия возможности замеров параметров во всех точках технологического процесса, необходимых для моде- лей. Наличие такого вида неопределенности вызывает неточность в задании переменных величин в моделях, начальных и граничных условий. Неточность моделей объектов контроля и управления вызыва- ется неэквивалентностью созданных системных многоуровневых иерархических моделей и используемых на практике отдельных локальных задач. Неточность моделей может возниказь по следующим причинам: неверно проведенная декомпозиция общей задачи управления; из- лишняя идеализация модели сложного процесса; разрыв существен- ных связей в технологическом комплексе; линеаризация; дискретиза- ция; замена фактических характеристик оборудования паспортными; нарушение допущений, принятых при выводе уравнений (стационар- ности, изотермичное™, однородности и т. д.). Ввиду большой слож- ности объекта, существенной нелинейности, трудностей формализа- ции, наличия различных субъективных критериев и ограничений 1Могуг применяться нечеткие модели. 101
Нечеткость в процессе принятия решений в многоуровневых иерархических системах, обусловленная тем, что наличие четких (точных) целей и координирующих решений на каждом уровне контроля и управления и для каждого локального устройства регу- лирования, затрудняет процесс координации и предопределяет длительный итеративный характер согласования решений. Наличие диспетчера в контуре управления и ведение процес- са координации в реальной производственной системе на естест- венном языке приводит к необходимости учета трудностей пред- ставления знаний диспетчера в виде алгоритмов и согласования полученного ЭВМ решения с его оценкой. Это связано с нена- дежностью исходной информации, получаемой от диспетчера в режиме принятия решения, с неточностью оценок, недоопреде- ленностыо понятий и терминов, с неуверенностью диспетчеров в своих заключениях, а также с нечеткостью (неоднозначностью) естественного языка (лингвистическая неопределенность) и язы- ка предс тавления правил в системах экспертного типа. Кроме то- го, процедура принятия решения базируется на неполной инфор- мации, т. е. нечетких посылках; неопределенность проявляется также при агрегации правил и моделей, исходящих оз разных ис- точников знаний или от диспетчеров различных уровней управ- ления (эти правила и модели могут быть противоречивыми, из- быточными и т. п.). Необходимость работы в условиях неопределенностей затруд- няет использование стандартных систем автоматики и АСУ ТП. Особенно сложным является описание областей допустимых ре- жимов работы оборудования в таких условиях, так как задание же- стких (четких) ограничений для АСУ ТП и систем автоматики приводит в настоящее время к отключению этих систем диспетче- ром. Возможность использования теории нечетких множеств для описания и формализации областей допустимых режимов работы оборудования представляется крайне важной. При столкновении с неопределенностью реальной системы в процессе принятия решений технолог (или диспетчер) поступает следующим образом: 1) чаще всего сознательно (или бессознательно) игнорирует существование неопределенности и используез детерминирован- ные модели; 2) выбирает один наиболее существенный, с его точки зрения, вид неопределенности и используез' соответствующую теорию, так как разработанные в настоящее время количественные методы 102
принятия решений помогают выбрать наилучшие из множества возможных решений лишь в условиях конкретного вида неопреде- ленности; 3) проводит дополнительные исследования системы или полу- чает информацию в ходе контроля (адаптация и обучение) или управления (дуальное управление системой). В SCADA-системе Трейс Моуд российской компании AdAstra реализована возможность управлять объектами, параметры кото- рых заданы с помощью качественного описания. Настройка нечеткого регулятора в Трейс Моуд заключается в том, чтобы пользователь определил: какое отклонение пара- метра от задания является сильным (рис. 4.1), какое отклоне- ние параметра от задания является средним (рис. 4.2) и какое отклонение параметра от задания является слабым (рис. 4.3). Рис. 4.1. Сильное отклонение -NR NM -NL О NL NM NR Рис. 4.2. Среднее отклонение 103
Возможности Грейс Моуд По реализации нелегкого управления используются в задаче управления системой обогрева/охлаждепия здания. 4.1. Нечеткий регулятор FZCTR sl Mvi 0 sr Библиотека нечеткою управ- ления в Трейс Моуд содержит Рис. 4.3. Слабое отклонение Функциональные блоки FZCTR и SFZ, которые находятся в библио- теке алгоритмов «Регулирование» (рис. 4.4). Рнс. 4.4. Блок FZCTR и SFZ в библиотеке алгоритмов «Регулирование» Функциональный блок FZCTR реализует функцию нечеткого регулятора. Он имеет три функциональных входа и два выхода. На вход INP подастся регулируемая величина. Вход PV предназначен для ввода значения уставки (задания). Вход МАХ ограничивает величину приращения управляющего воздействия. Это ограниче- ние вычисляется как произведение данного входа и рассогласова- ния задания и регулируемой величины. 104
Па выходе Q блока формируется величина управляющего воз- действия. Выход dQ используется для вывода величины прираще- ния управляющего воздействия па текущем пересчете блока. Значения выходов формируются по следующему алюригму: dQ ~ ‘ dQR + кп ' dQ„ + ks dQ, где управляющее воздействие; Q\ - управляющее воздействие на предыдущем такте; dQ - приращение управляющею воздейст- вия; kg, кп, ks - принадлежность рассогласования к категориям “большое”, “среднее” и “малое” соответственно; dQR, dQ„, dQ, - приращение управления по условию “большое”, “среднее" и “ма- лое” отклонение соответственно. Приращения но каждой из категорий отклонения рассчитыва- ются по следующей формуле: dQj-к,- sign(PV INP), где INP - значение регулируемой величины; PV - значение ус- тавки; j - признак категории рассогласования: g - сильное рас- согласование, п - среднее рассогласование, s - слабое рассо- гласование. Коэффициенты к, настраиваются входами Kg, Кп и Ks данного блока. Если эти коэффициенты не заданы, го их значения прини- маются по умолчанию равными 0,3; 0,2 и 0,05 соответственно. На рис. 4.5 демонстрируется подход к определению коэффици- ентов принадлежности к интервалам рассогласования. Рис. 4.5. Определение коэффициентов принадлежности к интервалам для блока FZCTR 105
4.2. Настройка FZCTR (SFZ) Функциональный блок SFZ предназначен для настройки диа- пазонов нечеткого регулятора, реализованного в функциональном блоке FZCTR. Блок SFZ передает свои настройки всем нечетким регуляторам данного узла, поэтому он размещается перед каждым регулятором, имеющим индивидуальные настройки. Обозначен- ные на рис. 4.6 границы диапазонов настраиваются одноименными входами данного блока. Рис. 4.6. Настройка границ диапазонов в блоке SFZ Если этот блок не использовался, то по умолчанию принима- ются следующие значения настроек: GM = 1; GL = 0,5; NR = 0,75; NM = 0,5; NL = 0,02; SR = 0,25; SM = 0, SL = -0,25. 4.3. Нечеткая система обогрева/охлаждения здания Использование даже простейших законов нечеткой логики дает преимущества по сравнению с традиционными формами управле- ния работой кондиционера в здании в условиях переменной тем- пературы внешней среды в течение суток. Управление системой обогрева/охлаждения здания реализуется с помощью нечеткого регулятора, схема моделирования которого средствами Трейс Моуд приведена на рис. 4.7 [23]. Для увеличения экономичности системы использован нечеткий регулятор со следующими нечеткими высказываниями. 1. «Если величина ошибки е ниже нормы (имеет отрицательное сильное отклонение), тогда необходимо нагревать». «Если величина ошибки е выше нормы (имеет положительное сильное отклонение), тогда необходимо охлаждать». «Если величина ошибки е в норме (имеет место слабое откло- нение), тогда все в порядке». 106
Рис. 4.7. Схема моделирования нечеткого регулятора в 1 рейс Моуд Функции принадлежности для параметров ошибки е нечеткого регулятора изображены па рис. 4.8. Ниже нормы Выше нормы Норма Ошибка Рис. 4.8. Функции принадлежности сигнала ошибки Для исследования взяты характеристики здания и изменения температуры внешней среды разд. 2.7. Были получены аналогич- ные разд. 2.7 результаты [24].
ГЛАВА 5. РЕШЕНИЕ МНОГОКРИТЕРИАЛЬНЫХ ЗАДАЧ ОПТИМИЗАЦИИ В УСЛОВИЯХ КАЧЕСТВЕННОЙ НЕОПРЕДЕ ЛЕНИ ОСТИ Диапазон проблем, которые могут быть адекватно сформули- рованы как неформализованные задачи принятия решений или многокритериальной оптимизации, очень широк. Это может быть анализ решений при выборе технологий резки металла, для которой характерна многокритериалыгость и неопре- деленность, так как заказчику необходимо учитывать разнообраз- ные факторы производственной среды, а значения показателей ка- чества технологического комплекса на протяжении его жизненно- го цикла (порядка 20 лет) практически невозможно предсказать точно. В решении данной задачи большую роль играет субъектив- ный фактор, и выбор должен основываться на использовании субъективных оценок и предпочтений специалистов промышлен- ности, а также на учете их опыта и интуиции. Это может быть разработка модели управления системой энер- госнабжения. Практика эксплуатации сложных объектов энергети- ки показывает, что при динамически развивающихся переходных режимах работы особенно проявляется нечеткость и неполнота информации, необходимой для автоматизированного принятия управляющего решения, адекватного текущей ситуации. Много- связное управляющее решение приводит к изменению ряда значе- ний параметров режима, что можно представить в виде цепочки нечетких ситуаций. АСУ, учитывающие только один параметр, могут привести к каскадному развитию аварийных ситуаций. В связи с этим в системе управления энергоснабжением решение по комплексному изменению тех или иных параметров принимает диспетчер. Для получения оптимального уровня параметров ре- жима требуется высокая квалификация диспетчера. Из-за разли- чий, неполноты и нечеткости параметров режима работы системы энергоснабжения и состояния каждого из ее узлов нагрузки даже опытный диспетчер принимает решения, далекие от оптимальных, 108
поэтому следует разработать модель управления системой энерго- снабжения, являющейся объектом с мпогосвязанными параметра- ми- При этом необходимо оцепить параметры режима и узлов на- грузки, нечеткие лингвистические правила управления и формали- зовав i> качественно представленную информацию. Это может быть и задача оценки стоимости квартиры. В стои- мость входит множество параметров и факторов, имеющих раз- личную степень значимости с точки зрения их влияния на оценку обшей стоимости квартиры. И при оценке общей стоимости жела- тельно учитывать эту степень, т. е. необходимо ранжировать пока- затели, характеризующие каждую квартиру. Оценка должна про- водиться на основе суждений специалиста - эксперта риэлторской фирмы. На оценку стоимости влияют такие общие критерии, как планировка; техническое состояние; удобство; расположение. При этом в критерий «планировка» входят такие подкритсрии, как жи- лая площадь, количество комнат, планировка комнат, планировка санузла, размер кухни, наличие лоджии, балкона. Критерий «тех- ническое состояние» состоит из следующих подкригериев: вет- хость строения, состояние подъезда, качество входной двери, со- стояние сантехники, внутренняя отделка, тип строения. Критерий «удобство» состоит из подкритериев: наличие лифта, мусоропро- вода, телефона; этаж; ванное оборудование. В критерии «располо- жение» составными являются подкритерии: наличие автостоянки, удаленность от метро, экология, развитость инфраструктуры. Ка- ждый подкритерий характеризуется параметром, имеющим опре- деленную стоимость. Например, качество входной двери опреде- ляется ее материалом, она может быть: деревянная, металлическая, двойная металлическая. Стоимость каждого компонента должна входить в общую стоимость с коэффициентом значимости этого компонента. Это может быть также и задача оценки эффект ивност и научно- исследовательских работ (НИР). Оценка эффективности НИР это плохо формализованная задача, выполняемая в условиях неполно- ты и неопределенности исходной информации. При этом НИР Должны оцениваться по ряду несовпадающих частных критериев. Вся информация о системе предпочтений выдается в качест венной форме специалистами-экспертами. К неформальным задачам оптимизации можно отнести разра- ботку и оценку модели нечеткого логического ре1улятора. Задача Разработки нечеткого логического регулятора заключается в фор- мализации всех качественных значений физических величин с 109
учетом оценки всех параметров модели регулятора. Модель perv лятора представляет собой набор продукционных правил, напи санных на естественном языке качественных понятий специаД стами по сложному плохо формализуемому технологическому, процессу. Продукционные правила в данном случае рассматрива ются как критерии для оценки модели. Формализация всех качест венных значении проводится на множествах количественных зна- чений физических величин, задействованных в технологическом процессе. Формализовать нечеткую информацию во многих задачах при- нятия решений либо слишком сложно, либо невозможно совсем так как она может описываться только в виде качественных пред- ставлений специалистов-экспертов. 5.1. Неформализованные задачи оптимизации Под общей неформализованной задачей оптимизации пони- мается многокритериальная задача оптимизации с нечетко вы- раженными критериями и альтернативами, а под ее решением получение и максимизация функции полезности на множестве альтернатив. Многокритериальные задачи принятия решений можно под- разделить на две группы: анализ решений по набору показате- лей; многокритериальная оптимизация (многокритериальное математическое программирование) [25-28]. Анализ решений по набору показателей наиболее часто применяется в ситуациях, когда необходимо сделать выбор из небольшого числа альтер- натив в условиях неопределенности, учитывая все противоречи- вые частные критерии. Многокритериальная оптимизация чаще применяется при решении задач с большим числом возможных альтернатив. Идеальным способом решения многокритериальной задачи могла бы быть следующая процедура: сначала требуется опреде- лить функцию полезности U лица, принимающего решение, а за- тем решить задачу математического программирования вида max{t/(z1, z2,..., zA)} (5-0 при условиях z /, (х ), i = I, ..., к, х е S. (5-2) НО
Зцесьх ' е /?" i-я точка в пространстве решений, z е Rk век- критериев (целевых функций), к число критериев, a S мно- Г°с!во допустимых решений. Функция полезности отображает Экторы критериев на действительную прямую гак, что большее 1ачение на этой прямой соответствует более предпочтительному вектору критериев. Задача (5.1) нелинейная, по не это главная трудность подхода. Самое сложное то, что для многих задач невозможно получить ма- тематическое описание функции полезности U. Широко принятый подход при решении задач векторной оптими- зации состоит в определении путем численных расчетов характерно- Е, «компромисса», т. е. участков кривой, на которых лицо, прини- мающее решение, может выбрать точку, в наибольшей степени отвечающую его предпочтениям (называемым также множествами эффективных значений или множествами Парето). Точка из множе- ства S является оптимальной, если она максимизирует функцию по- лезности лица, принимающего решение, в выражении (5.1). Однако для того, чтобы точка была оптимальной, опа должна быть эффек- тивной. Точка из множества 5 является эффективной тогда и только тогда, когда соответствующее ей значение векторного критерия не до- минируется. Точка эффективна, если она Парето-опгимальна, г. е. если из нее невозможно сдвинуться в пределах допустимого множества с увеличением одного из критериев, не уменьшая при этом, по крайней мере, один из остальных. Па практике часто довольствуются некото- рым близким к оптимальному («квазиот имальным») решением. Для решения задач математического программирования с не- четко сформулированными целями широко известны методы не- четкого математического программирования, основанные па под- ходе Веллмана - Заде [28]. Задачи многокритериальной оптимизации, относящиеся к группе задач анализа решений по набору показателей, у которых н&еткость содержится в описании множества критериев и альтер- натив, будем называть задачами многокритериальной оптимиза- ции в условиях качественной неопределенности. Задача анализа решений по набору показателей имеет вид max {(/(%], х2, .., хА)} (5.3) Цри условиях х'= J (z ), 11 = 1,..., П, X Е S. (5.4) 111
Наиболее распространенным методом анализа решений по набору показателей, основанным на теории полезности, являе- ся метод аддитивной функции полезности МАФП [29 зц Функция полезности U рассматривается и рассчитывается как вероятностная величина, однако для многих сложных неформа- лизованных задач принятия решений оценка многомерного рас- пределения вероятности является очень сложной и даже нераз- решимой задачей. При помощи метода анализа иерархий (МАИ) - метода ре- шения многокритериальных задач в сложной постановке - лег- ко решаются задачи, подобные, например, задачам оценки эф- фективности НИР и задачам оценки стоимости квартиры, но решение, найденное с помощью МАИ, не может считаться ре- шением задачи (5.3), так как полученное ранжирование не мо- жет рассматриваться как функция полезности. И технические задачи, требующие формализации качественных характеристик физических величин, не могут решаться МАИ в его классиче- ской постановке. МАИ генерирует функциональные значения функции полезности, а нс саму функцию. Для повторяющихся ситуаций при принятии решений выгоднее иметь функцию по- лезности. Функцию полезности можно рассматривать как нечеткое описание глобальной цели решения задачи с нечетко выражен- ными альтернативами, если нормировать к единице значения этой функции, т. е. функция полезности может рассчитываться как функция принадлежности глобальной цели на множестве альтернатив. МАИ является косвенным методом для определения функ- ции принадлежности нечетких множеств. Если нечеткое множе- ство описывает сложное понятие, то оно представляется в виде иерархии более простых свойств. Но возможно ли применение МАИ для сравнения и оценки элементов, являющихся нечетки- ми множествами, т. е. возможно ли применение МАИ для реше- ния таких задач, в которых элементами иерархии являются не- четкие множества? Если доказать основную теорему МАИ через теорию нечетких множеств, это даст возможность решать при помощи МАИ слож- ные технические задачи, требующие формализации качественных понятий физических величин, т. е. такие, как, например, разработ- ка модели управления системой энергоснабжения или разработка модели нечеткого логического регулятора. 112
5.2. Метод аддитивной функции полезноеги I [редметом теории полезности является представление в дей- ствительных числах относительных предпочтений отдельного ли- ца, принимающего решение, при выборе элемента из некоторого множества. Рассмотрим основные положения теории полезности. Пусть ранжирование возможных исходов имеет вид X, >x2>xi>...>x„, где п - число возможных исходов. Пусть лица, принимающие решение, должны выразить свои предпочтения между действиями (альтернативами) а\ и а2 для ве- роятностных распределений на множестве этих исходов, где а) действие а, приводит к исходам х, с вероятностью р', I - = 1, ..., п,р' > 0 для всех / и £р- = 1; i б) альтернатива а2 приводит к исходам х,- с вероятнос тью р,2, i — = 1, ..., л,/?2 > 0 для всех i и ^р2 =1. i Пусть получению лучшего исхода хп соответствует вероят- ность 7ii и худшему исходу Х| соответствуез вероятность I л,-. Основной результат теории полезности состоит в том, что ма- тематическое ожидание величины л может быть использовано для введения числовых оценок (шкалирования) вероятностных рас- пределений на множестве исходов х. Каждому х,- ставится в соответствие его шкальная оценка то- гда математическое ожидание оценок л для альтернатив а\ и а2, обозначаемых П, и П2, будут равны: п^Ед’п,.; п2 = 2>2п,- (5-5) Если числа л можно преобразовать в функцию полезности U при помощи положительного линейного преобразования Ц = Ыи1 =YPi(a + h*nl):=a + hn (5.6) легко видеть [31], что математическое ожидание величин 6/, ран- жируют а\ и а2 точно так же, как и математическое ожидание ве- 113
личин л,. Существо проблемы состоит в нахождении подходящих численных значений л. Оценка многомерного распределения вероятностей и много- критериальной функции полезности представляет весьма сложную проблему, для решения которой в настоящее время имеется лишь небольшое число специализированных методов. Тем не менее та- кая оценка совершенно необходима для адекватного анализа и подготовки приемлемых решений в сложных ситуациях. Как сравнить полезности альтернативных решений, когда при оценке полезности каждой альтернативы должен быть учтен вклад многих факторов? Теория аддитивной полезности предлагает возможный подход к этой проблеме в предположении, что полезность целого равна сумме полезностей, приписываемых его частям. Наиболее распространенным подходом для оценки многомер- ных (многофакторных) альтернатив является использование адди- тивной функции полезности, которая в «-мерном случае может быть записана в следующем виде: U(xi,х2„х„) = U^x^ + U2(x2) + ...4- Un (х„), (5.7) где Ui (Xj) - функция полезности для фактора х,. В основе подхода лежит идея исследования ограничений, накладываемых на функцию полезности лица, принимающего ре- шение, в результате принятых допущений о его системе предпоч- тений на множестве рассматриваемых альтернатив. Принятые допущения представляются конструктивными и адекватными во многих задачах принятия решений. В двумерном случае аддитивная функция полезности имеет следующий вид: U(y, z) = ку Uy(y) + kzUz(z), (5.8) где ку, кг - положительные шкалирующие константы. Функция (5.8) позволяет суммировать вклады каждого из двух факторов с точки зрения получения общей полезности. Она явля- ется наиболее известной из многомерных функций полезности и имеет большое значение как из-за возможности ее использования во многих практических задачах, так и из-за своей простоты [30]. Главный недостаток аддитивного представления - это ограни- чительный характер требуемых допущений. Часто многомерная 114
функция полезности предполагается аддитивной ради удобства, а не на основе проверки соответствующих допущений. 5.3. Метод анализа иерархий Одним из распространенных методов решения неформали- зованных задач многокритериальной оптимизации является МАИ (в оригинале АИР - Analytic Hierarchy Process), разрабо- танный Т.Л. Саати [12]. МАИ - метод решения многокритериальных задач в сложной постановке с иерархическими структурами, включающими нефор- мализованные элементы. Он объединяет аналитический подход, опирающийся на алгебраическую теорию матриц, с экспертными процедурами. МАИ является замкнутой логической конструкцией, обеспечивающей с помощью простых правил анализ сложных про- блем во всем их разнообразии и приводящей к наилучшему ответу. Применение метода позволяет включить в иерархию все имеющие- ся у исследователя по данной проблеме знания и воображение. МАИ позволяет выявить наиболее существенные признаки (на основе их ранжирования), описывающие проблему, и произвести ранжирование оценок и классов решений, если это необходимо. МАИ использует линейную свертку критериев и оригинальную процедуру определения весовых коэффициентов с помощью дере- ва критериев, в котором общие критерии подразделяются на кри- терии частного характера. Для каждой группы критериев методом парных сравнений по балльной шкале определяется коэффициент «превосходства» каждого критерия над другими, а затем находятся весовые коэффициенты каждого критерия. Далее тем же методом определяются весовые коэффициенты для групп критериев (аль- тернатив). Процесс продолжается аналогичным образом до самого верхнего уровня иерархии. В случае слабой формализации крите- рия для вычисления коэффициентов превосходства альтернатив используются мнения экспертов. Эти мнения при необходимости согласуются, например, с помощью метода Дельфи, разработанно- го О. Хелмером [32]. МАИ находит широкое практическое применение благодаря сво- ей простоте и наглядности, а также тому, что на его основе создано множество программных систем поддержки принятия решений. Область применения МАИ необычайно широка благодаря то- му, что он позволяет сравнивать, по выражению Т. Саати, «апель- 115
сипы с яблоками», т. е. сущности, для которых не существует чи- л еловых оценок. ч Основной же проблемой является получение хорошо согласо- ванных оценок на этане формирования матриц парных сравнений. г МАИ состоит в иерархической декомпозиции проблемы на все 1 более простые составляющие части и в дальнейшей обработке гю- I следователыюсти суждений лица, принимающего решение, по f парным сравнениям. Рассматриваются доминантные иерархии, 1 которые похожи на перевернутое дерево с основой при вершине. Иерархия считается полной, если каждый элемент заданного уров- ( ня функционирует как критерий для всех элементов нижестоящего г уровня. В противном случае иерархия неполная. Иерархия есть определенный тип системы, основанный на 1 предположении, что элементы системы могут быть сгруппированы * в несвязанные множества. Элементы каждой группы находятся под влиянием элементов некоторой группы, называемой группой вышестоящего уровня, элементы которой, в свою очередь, оказы- ваю! влияние на элементы другой группы. Считается, что элемен- ты в каждой группе независимы. В общем случае иерархическая модель для некоторой проблемы может быть представлена сле- дующим образом (рис. 5.1): иерархия исходит из фокуса (глобаль- ной цели) к критериям, далее к подкритериям, и, наконец, к аль- тернативам, из которых нужно сделать выбор. После иерархиче- ского или сетевого воспроизведения проблемы устанавливаются приоритеты критериев, оцениваются альтернативы по критериям и выявляется самая важная из них. Рис. 5.1. Иерархическое представление задачи: ПК - полкритерий 116
В МАИ элементы задачи сравниваются попарно по отношению к их воздействию («весу» или «интенсивности») на общую для них характеристику. На основе суждений эксперта строятся матрицы попарных сравнений на каждом уровне по отношению к каждому критерию вышестоящего уровня. Когда проблема представлена иерархически, матрица составляется для сравнения относительной важности критериев на втором уровне по отношению к общей це- ли на первом уровне. При сравнении двух объектов i и J по одному критерию экс- перт пользуется заранее определенной девятибаллыюй шкалой (табл. 5.1). Таблица 5 1 Степень превосходства Определение Пояснение 1 Одинаковая значимость Два действия вносят одинако- вый вклад в достижение цели 3 Некоторое превосходство Опыт и суждение дают легкое предпочтение первому вари- анту перед вторым 5 7 Существенная или сильная степень превосходства Очень сильное или оче- видное превосходство Опыт и суждение дают силь- ное предпочтение первому варианту перед вторым Предгюч гение первого вари- анта перед вторым очень сильно. Его превосходство практически явно 9 Абсолютное прсвосходс гво Свидетельства в пользу пред- почтения первого варианта второму в высшей степени убедительны 2, 4, 6, 8 Промежуточные значения между соседними значе- ниями ШКаЛЫ Ситуация, когда необходимо компромиссное решение Обратные i значения чисел 1-9 Если действию i при сравнении с действием j приписывается одно из чисел 1-9, то действию j при сравнении е i припи- сывается обратное значе- ние Обоснованное предположение Причины выбора именно девятибаллыюй шкалы следующие. I- Качественные различия значимы на практике и обладают ’ентом точности, когда величины сравниваемого показателя 117
для обоих вариантов одного порядка или близки относительно свойства, использованного для сравнения. 2. Способность человека проводи ть качественные различия хо- рошо представлена пятью определениями: одинаковый, слабый сильный, очень сильный и абсолютный. Можно принять компро- миссные решения между соседними определениями, когда требу- ется большая точность. В целом требуется девять значений, и они могут быть хорошо согласованы. Получаемая шкала подтвержда- ется практикой. Результаты таких сравнений представляются в виде матрицы попарных сравнений: А (5.9) где <т,у- оценка степени превосходства /го объекта (варианта, критерия) К, над объектом (вариантом, критерием) К по отно- шению к /-му критерию. Матрица составляется следующим образом: сравниваемая цель (или критерий) записывается вверху, но строкам и столбцам мат- рицы записываются сравниваемые элементы (табл. 5.2). Таблица 5 Цель Критерий 1 Критерий 2 Критерий 3 Критерий 1 1 4 6 Критерий 2 0,25 1 з Критерий 3 0,17 0,33 1 1 Число 4 в первой строке табл. 5.2 показывает, что превосходство критерия I над критерием 2 находится между слабым и сильным. В результате получаются квадратные диагональные матрицы, обладающие свойством обратной симметричности. Эти матрицы в общем случае несогласованные. Величины «у интерпретируются как 4=—’ Ц)/7 (5 Ю' где со-, Wy вес объектов; N- число сравниваемых объектов 118
Элементы а., матрицы А определяются следующим образом: если а,. = а, то а =—, а^О. а Если суждения таковы, что <о(- =а)у, то =1; в часто- сти, я(( =1 для всех I. Матрица А имеет вид: 1 й12 «1„ l/al2 1 а2п А= . . . . . Х!а\п }/“2п 1 После представления количественных суждений о парах (А',, Кв числовом выражении через а&. задача сводится к тому, чтобы всем объектам Kt, К2, ..., К„ поставить в соответствие век- тор весовых коэффициентов, которые соответствовали бы зафик- сированным суждениям. Для этого необходимо нечеткой матема- тической задаче придать строгую математическую форму. По мне- нию Т. Саати, этот шаг является наиболее важным в любой задаче, в которой требуется представить жизненную ситуацию в терминах абстрактной математической структуры. Важность его обусловле- на еще и тем, что в зависимости от того, насколько логично вы- полнен данный переход и насколько подробно он описан, зависит мнение потенциального пользователя о возможности применения метода в его конкретной задаче. Гак как а = -—, то матрица А является обратно симметрич- аи н°и. Если наши суждения совершенны при всех сравнениях, то 'а1]-а-к для всех i,j, к, и матрица является согласованной. В Реальном случае точного измерения отношения между весами со( суждениями aJt выражаются в виде Ц • • 1— — = а, для I, ] — 1: п 119
или таким образом: wiM «i/®2 (OjX Ю2/(0| 6j2/oj, ••• со2/<о„ Ч,/“1 «и/Ю2 " «„/% Однако требование выполнения этих условий в общем случае не- реально, и в большинстве практических случаев это сделало бы задачу нахождения неразрешимой. Во-первых, даже физические измерения никогда не бывают точными в математическом смысле и, следовательно, отклонения должны быть учтены, во-вторых, эти отклонения достаточно велики из-за ошибок в человеческих суж- дениях. В идеальном (точном) случае А ш - X • со, где со - собственный вектор матрицы А; X,, Х2,.„, Хи - собствен- ные значения матрицы А (отклонения от идеального случая). Если ан = 1 для всех i, то п il В идеальном случае все собственные значения матрицы есть нули, за исключением одного, равного л. В случае согласованно- сти п есть наибольшее собственное значение матрицы А. Известно, что если элементы положительной обратно сим- метричной матрицы незначительно изменить, то собственные зна- чения также изменятся незначительно. Если диагональ матрицы А состоит из единичных элементов и А - согласованная матрица, то при малых изменениях в наибольшее собственное значение останется близким к и, а остальные собственные значения оста- нутся близкими к 0. Сформулируем следующую задачу. Если А - матрица парных сравнений, то для нахождения вектора приоритетов нужно найти вектор щ,, который удовлетворяет уравнению 120
= W. Чтобы иметь нормализованное решение, изменим вектор оз, " 1 положив cc = Vco(- и заменив й на — со. Это обеспечит единст- (=! °- п венность решения и выполнение условия ^со, =1 I । Малые изменения в а,.- вызывают малое изменение в . У Пита Отклонение же последнего от п является мерой согласованности. Оно позволяет оценить близость полученной шкалы к основной шкале отношений, которую мы хотим оценить. Поэтому индекс согласованности (ИС) рассматривается как показатель близости к согласованности: 7 — /7 ис= тах- . п -1 ИС сгенерированной случайным образом но шкале от 1 до 9 обратно симметричной матрицы называется случайным индексом (СИ). В табл. 5.3 представлены данные, полученные в результате статистических экспериментов по определению среднего СИ слу- чайных обратно симметричных матриц размерностью от 1 до 15. Таблица 5.3 Размерность матрицы Индекс согласованности Размерность матрицы Индекс согласованности 1 0,0 7 1,32 2 0,0 8 1,32 3 0,58 9 1,45 4 0,90 10 1,49 5 1J2 11 1,51 6 1,24 12 1,48 Отношение ИС к среднему СИ для матрицы того же порядка (размерности) называется оз ношением согласованности. Значение отношения согласованности, меньшее или равное 0,1, считается приемлемым. 121
Проблема обеспечения и повышения согласованности - основ- ная проблема МАИ, равно как и многих других методов, рабо- тающих с субъективной исходной информацией, каковой являются суждения человека. Разрабатываются различные алгоритмы и ме- тоды автоматического обеспечения и повышения согласованности матриц парных сравнений. Итак, для восстановления неизвестных оценок {со(1} достаточ- но решить систему уравнений (5.10). Если А1 обладает свойством супертранзитивности ац_ц' = а,у, д' ад, в* для любых т 1. i2, Z3, то ре- шением системы (5.10) будет собственный вектор матрицы {Ду1} со, соответствующий ее наибольшему собственному значению Л<о=Чтах“- <511) Вместе с матрицей попарных сравнений мы получаем меру оценки отклонения от согласованности — отношение согласован- ности. Когда такие отклонения превышают установленные преде- лы, экспертам следует перепроверить их в матрице. Чтобы быть приемлемой, величина отношения согласованности должна быть порядка 10 % или менее. Если требования к точности не слишком строгие, для расче- та вектора приоритетов можно использовать также метод строчных сумм. Метод строчных сумм состоит в том, что эле- менты матрицы суммируются построчно, а затем полученный вектор нормируется. Однако Т. Саати считает такой метод по- лучения вектора весовых коэффициентов менее точным, чем метод собственных векторов. После получения векторов весовых коэффициентов для всех матриц проводится процедура синтеза приоритетов. Приоритеты синтезируются, начиная со второго уровня вниз (т. е. приоритеты на уровне I совпадают с компонентами вектора весов). Локальные приоритеты нижнего уровня умножаются на приоритеты соответ- ствующих критериев на вышестоящем уровне и суммируются по каждому элементу в соответствии с критериями, по которым оце- ниваются элементы нижнего уровня. Это дает составной приори- тет того элемента, который зачем используется для взвешивания локальных приоритетов элементов, расположенных уровнем ниже и сравниваемых с ним как с критерием. Процедура продолжается до самого нижнего уровня. Таким образом, мы получаем глобаль- ные приоритеты иерархии. 122
При определении экспертных оценок, в которых принимает участие группа людей, нужно объединить различные суждения, удовлетворив условия образной симметричности соответствую- щей матрицы. 5.4. Сравнение метода аддитивной функции полезности и метода анализа иерархий МАИ предназначен главным образом для решения задач ран- жирования конечного множества сложных объектов, настолько сложных, что их прямое попарное сравнение невозможно. Здесь, как показывает накопленный опыт, аналитические методы в чис- том виде оказываются крайне неэффективными, а использование экспертных оценок в таких сложных ситуациях (особенно при ра- боте относительно больших по численности эксперт ных групп) без специально разработанных процедур также далеко нс всегда при- водит к успеху. В основе МАИ лежат два фундаментальных аспекта: 1) иерархическая декомпозиция задачи сравнения сложных объектов; 2) восстановление значений функции полезности па основе ре- зультатов попарных сравнений. Иерархическая декомпозиция продолжается вплоть до показа- телей, которые, во-первых, достаточно информативны для того, чтобы сравнение объектов на их основе имело смысл, во-вторых, достаточно просты, чтобы процедура такого сравнения могла быть осуществлена реальными экспертами и лицом, принимающим ре- шение. Численные оценки значимости таких показателей опреде- ляются с помощью излагаемой далее процедуры восстановления, но в принципе для этого может быть использована и любая другая процедура. В результате некоторых противоречий аксиом, лежащих в основе МАИ, стандартному набору аксиом теории полезности возникает па- радокс, связанный с реверсированием рангов альтернатив. Известно, что ранжирование альтернатив может быть полу- чено в результате как относительных измерений (основанных на попарных сравнениях, дающих относительные значения), так и абсолютных измерений (основанных на сравнении с известным стандартом). Тип измерений зависит от рассматриваемой ситуа- ции. При совершенно новой задаче принятия решений, или в старых задачах, для которых не установлены общепринятые 123
стандарты, следует применять относительные измерения, срав- нивая альтернативы попарно для выявления их предпочтитель- ности. Если же имеются стандарты, то используют абсолютные измерения. При относительных измерениях, когда имеется только один критерий и суждения согласованны, добавление или удаление альтернативы не влияет на ранговый порядок начальных аль- тернатив. В случае многих критериев при согласованности в суждениях ранговый порядок любых двух альтернатив не меня- ется (в результате структурных изменений), когда одна альтер- натива предпочтительнее другой в матрицах сравнения для всех критериев. Тем не менее даже для согласованных матриц, когда одна альтернатива доминирует над другой не по всем критери- ям, структурные изменения могут вызвать перестановку рангов альтернатив [12]. Этот парадоксальный результат дает основа- ния для замечания о том, что ответ на вопрос: «Какой из авто- мобилей лучше: Mersedes или Volvo?», полученный с помощью МАИ будет зависеть от того, есть ли среди сравниваемых авто- мобилей BMW. МАИ с точки зрения любой теории, допускающей кардинальное изменение полезности, дает произвольное ранжирование объектов (альтернатив). Ио, как показано в [33], реверсирование рангов явля- ется достоинством, а не недостатком МАИ, так как ранжирование, полученное МАИ, всегда будет эффективным относительно остаю- щихся неизвестными значений функции полезности объектов по отдельным критериям. С помощью МАИ можно организовать диалоговые процедуры просмотра множества эффективных ранжирований, подобные из- вестным методам многокритериальной оптимизации. Для МАИ не требуется допущения о согласованности в предпочтениях, в то время как построение функции полезности при использовании подхода, основанного на использовании МАФП, требует транзитивности отношения предпочтений. Кроме того, при попарных сравнениях в МАИ информация бо- лее детализирована и применима в сферах, где существуют не- измеримые показатели. МАФП обладает хорошо развитой методологией для трактовки ситуаций с риском, а также нелинейными функциями полезности. МАФП работает лучше при решении задач, связанных с риском, так как в этом случае правильнее оценивать все параметры как ве- роятностные. Однако МАФП требует слишком много времени и 124
усилий, а также не обладает преимуществами группового процес- са, присущими МЛИ. МАИ включает процедуру синтеза множественных суждений, получение приоритетных критериев и нахождение альтернатив- ных решений. Метод позволяет группе людей взаимодействовать по интересующей их проблематике, модифицировать свои суж- дения и в результате объединить групповые суждения в соответ- ствии с основным критерием. Используя МАИ, можно изменять суждения в пределах иерархии для получения нового набора приоритетов, г. е. МАИ позволяет проводить чувствительный анализ к изменениям в суждениях. Главной областью применения МАИ являются неформализо- ванные задачи многокритериальной оптимизации, для которых либо невозможно, либо очень затруднительно получить оценку многомерного распределения вероятностей. 5.5. Выбор SCADА-сисгемы Диспетчерское управление и сбор данных SCADA (от англ. Supervisory Control And Data Acquisition) является в настоящее время основным методом автоматизированного управления слож- ными динамическими системами и процессами. За последние годы резко возрос интерес к проблемам построения высокоэффективных и высоконадежных SCADA- систем. С одной стороны, это связано со значительным прогрес- сом в области вычислительной техники, программного обеспече- ния и телекоммуникаций, что увеличивает возможности и рас- ширяет сферу применения автоматизированных систем. С другой стороны, развитие информационных технологий, повышение степени автоматизации и перераспределение функций между че- ловеком и аппаратурой обострило проблему взаимодействия че- ловека-оператора с системой управления. Выбор наиболее приемлемой SCADA-системы представляет собой сложную многокритериальную задачу, решением которой является компромисс между надежностью, стоимостью, техниче- ским уровнем, полнотой программного обеспечения, комфортно- стью, затратами на сервисное обслуживание и т. д. [34]. Процедура выбора включает в себя следующие этапы. 1. Составление технических требований к SCADA-систсмс. 2. Выделение двух (максимум трех) SCADA-систем, наиболее подходящих к объекту автоматизации. 125
3. Оценка выделенных SC ADA-систем по отзывам пользователей 4. Личное ознакомление со SCADA-системами, их тестирова- ние, конкретизация состава пакета. 5. Определение наилучшей SCADA-систсмы и принятие решения. Пусть перед вами стоит проблема выбора одной из трех пред, лакаемых вам SCADA-систем, и вы хотите их сравнить (рис. 5.2). Рис. 5.2. Выбор наилучшей SCADA-системы В этом случае глобальная цель задачи — выбор наилучшей SCADA-системы; критерии - требования, которым должна удов- летворять SCADA-система; альтернативы - SCADA 1, SCADA 2, SCADA 3. Вам нужно учесть относительную важность критериев. Самым значительным (влияющим на ваш выбор критерием) может ока- заться цена SCADA-системы. На первом шаге вы оцениваете значимость критериев по пар- ным сравнениям критериев между собой. Вы должны ответить примерно на следующие вопросы. I. Насколько цена системы наибольшим образом влияет на ее выбор, чем удобство работы с ней? I 2. Насколько цена наибольшим образом влияет на выбор SCADA-системы, чем обмен данными в системе? 3. Насколько цена наибольшим образом влияет на выбор SCADA-системы, чем ее надежность? И 4. Насколько цена наибольшим образом влияет на выбор SCADA-системы, чем полнота технической поддержки? После ответа на вопросы рассчитываются приоритеты критериев в численном виде. При этом также определяется согласованность су- 126
л^ений экспертов. Если полученное отношение согласованности больше 10 %, экспертам следует пересмотреть свои суждения. [(а следующем шаге нужно оценить SCADA-системы по всем вышеуказанным критериям. Для этого экспертам нужно ответить приблизительно на следующие вопросы. 1. Насколько в SCADA 1 удобнее работать с редакторами, чем в SCADA 2? 2. Насколько SCADA 1 дешевле SCADA 2? (и т. д.). Далее рассчитываются локальные приоритеты SCADA-систем по каждому из подкритериев: цене, надежности и г. д. Затем необходимо рассчитать глобальные приоритеты SCADA- систем. При этом для суждений по каждому из критериев рассчи- тывается значение согласованности, а также общая согласован- ность для всей иерархии. 5.6. Решение общей неформализованной задачи оптимизации па основе молода анализа иерархий и теории нечетких множеств Решим задачу многокритериальной оптимизации в постановке (5.1) в случае, если цели, исходы и альтернативы заданы нечетко, но для которой отношения предпочтения (функция полезности) заданы четко. Основной трудностью, которая может возникнуть при решении поставленной задачи, является невозможность полу- чения математического описания функции полезности U. Чтобы решить поставленную задачу, применим теорию нечет- ких множеств для математической формализации печечкой ин- формации. Функции принадлежности этих нечетких множеств рассматриваются как субчэекчивные измерения лица, принимаю- щего решения, и определяются с помощью МАИ. Иерархическая декомпозиция такой общей задачи представле- на па рис. 5.3. Обозначим множество целей G, а множество аль- тернатив через X. Если цели представляются слишком сложными понятиями, их можно представить в виде иерархии более простых понятий. Элементы иерархии являются нечеткими множествами, обозначаемыми на рисунке G„ i = 1, ..., п, где п количество це- лей, и Хк, где к = 1, - количество целей. Для решения задачи оптимизации требуется доказать возмож- ность применения МАИ для случая, когда иерархия представляет собой совокупность нечетких множеств, г. е. необходимо доказать основную теорему МАИ через теорию нечетких множеств. 127
Рис. 5.3. Структура неформализованной задачи оптимизации Применение данного подхода для решения задач многокрите- риальной оптимизации в нечеткой постановке, а также для опре- деления функции полезности является более простым и эффек- тивным методом, чем МАФП в случае, когда задача настолько неформализована и сложна, что получить вероятностный закон распределения для элементов этой задачи либо слишком сложно, либо невозможно совсем. Функцию принадлежности будем рас- сматривать как субъективную, а не как вероятностную величину. Степень субъективизма при нахождении функции полезности всегда можно уменьшить. Для этого необходимо проверить со- гласованность суждений экспертов и, удовлетворив требованиям к точности получаемого значения функции полезности, снизить значение приемлемого отношения согласованности иерархии. Па каждом уровне мы имеем различные упорядоченные четкие множества, которые состоят из элементов, являющихся нечеткими (качественными), и определяются каждый своей функцией при- надлежности. Элементы каждого уровня являются нечеткими подмножествами четкого упорядоченного множества и определя- ются именно в этом смысле. 11уст ь X], л'2, ..., х„ - совокупность объектов некоторого уровня иерархии. Мы хотим определить веса СО|, щг,..., <о„ и их влияние на некото- рый элемент следующего уровня. Количественные суждения о парах 128
„Аъектов (х„ Xj) представляются матрицей размеров п уп. Обозначим °° 3 я число, соответствующее значимоеги элемента х, по сравне- Еюсх7, а матрицу, состоящую из этих чисел, через Л = {а,,}. Элементы х g X сравниваются по их соответствию понятию, Формализованному нечетким множеством В', или, другими сло- gaMii, они сравниваются по степени соответствия критерию, фор- мализованному нечетким множеством В'. По матрице попарных сравнений А определяется функция принадлежности цв-(х) для каждого элемента х е X, и элементы atJ представляют собой неко- торые оценки интенсивности принадлежности элементов х, g X нечеткому множеству В' по сравнению с элементами х, g X. Предполагается, что значения функций принадлежности известны для всех элементов х g X, например, |1в-(х,) = со,(/с/с{1,2, где символ cz означает строгое включение. Для получения матрицы попарных сравнений проводится оп- рос эксперта относительно того, насколько, по его мнению, вели- чина (х;) превышает величину (х,-), т. е. насколько элемент х, более соответствует понятию, описываемому нечетким множе- ством В', чем элемент хг Если свойство переменной, представляемое термом, является сложным свойством, непосредственная оценка которого затрудни- тельна, его можно представить в виде иерархии более простых свойств. Иерархию можно рассматривать как специальный тип упоря- доченных множеств. Определение 1. Упорядоченным множеством называют любое множество S с бинарным отношением <, которое удов- летворяет законам рефлексивности, антисимметричности и транзитивности. Рефлексивность: для всех х, х < х. Антисимметричность: если х < у и у < х, то х = у. 1 ранзитивность: если х < у и у < z, то х < z. Для любого отношения х < у (читается: х предшествует у) тако- г°типа можно определить х <у, что означаетх <у их/у. Говорят, 4,0У покрывает (доминирует) х, если х < у и если х < t < у невоз- можно ни для какого I. 129
целям наиболее соответствует следующий: воспользуемся обозн" ченисм х~={у|х покрывает у} и г = {у |у покрывает х} для любого элемента х в упорядоченном множестве. Определение 2. Пусть И конечное частично упорядоченное множество с наибольшим элементом Ь. Множество II есть иерар- хия, если выполняются следующие условия. 1. Существует разбиение //на подмножества Lk, к= 1,.. £ Где Л = {6}. 2. Из х е Lk следует, что х cz L к ь к = I,...,//- 1. 3. Из х е Ц следует, что х g L * ь к = 2, ..., h. Для каждого х е II существует такая весовая функция (сущ- ность ее зависит от явления, для которого строится иерархия) од: х >[0,11, что |'СЛ где U'. R1' > R означает отображение U множества Rk в R. Множества L, являются уровнями иерархии, а функция cov есть функция приоритета элемента одного уровня относительно цели х Заметим, что даже если х + L к , । (для некоторого уровня £Л), то со, может быть определена для всех Lk, если приравнять ее к нулю для всех элементов/,/( ,, не принадлежащих х . Определение 3. Иерархия называется полной, если для всех х 6 Lk множество х = Lk_} при к = 2,..., /?. Основную задачу МАИ можно сформулировать следующим образом. Как определить для любого заданного элемента х g La и под- множества .V с: Ljj, а < р функцию согЛ-: S > [0,1], чтобы она отра- жала свойства функций приоритетов соЛ на уровнях Lk, к = а,...,р -1. В час тности, что эго за функция a>b z : Lh > [0,1] ? Используя менее формальную терминологию, задачу можно переформулировать гак. Рассмотрим систему с главной целью (элементом первого уровня) b и множеством альтернатив (элемен- тов последнего уровня) £/,. Пусть эту систему можно представить как иерархию с максимальным элементом (элементом верхнего уровня) b и нижним уровнем Lh. Каковы приоршеты элементов уровня Lh по отношению к Ы При оценке функций принадлежности нечетких множеств, описывающих гермы лингвистических переменных, если терм 130
представляет собой сложное свойство, его можно представить в виде иерархической декомпозиции более простых свойств. То есть в нашем случае терм лингвистической переменной яв- ляется максимальным элементом Ь. На следующих уровнях располагаются простые свойства, являющиеся подмножества- ми оцениваемого нечеткого множества, а элементы нижнего уровня Lh - это попарно сравниваемые элементы из базового множества X. Требуется получить ц;, (L/J: £/, -> [0, 1]. Изложим метод решения основной задачи МАИ. Предполо- жим, что Y= {у,,..., у„,к } {х,,..., хш(/(1)) } с. Можно предположигь, что Х = Lk,\, Y = Lk. Пусть также существует эле- мент z е Lk. |, такой, что у е z . Рассмотрим функции приоритетов со,: Y—> [0, 11 и со,.- X—> [0, 1 ],/ = 1,..., пк. Обозначим через со, со: X -> [0, 11 функцию приоритета элемен- тов из % относительно z и зададим ее следующим образом: ю(х/) = Хю.',и)ю--Н/)’ ' = (5.12) 7=1 Очевидно, что это ни что иное, как процесс взвешивания показателя влияния элемента у, на приоритет элемента .г, путем умножения этого показателя на важность элемента у, относи- тельно z. Соответствующие алгоритмы упростятся, если из со?, (х,) об- разовать матрицу В, положив />,, = сог (х,) . Если обозначить через = со(х,) и Wj = со_ (уу), то формула (5.12) примет вид 7=1 Итак, можно говорить о векторе приоритетов со и о матрице приоритетов В (к 4 1)-го уровня. В результате получаем оконча- тельную формулу 131
W = BW'. (5.13) Предыдущая композиция приоритетов включает взвешивание и суммирование. Это требует независимости критериев па каждом уровне. В противном случае один элемент может получить не только некоторый приоритет относительно некоторого критерия, но и дополнительный приоритет, вызванный перекрыванием этого критерия другим критерием, что вызовет двойной учет. В простых терминах критерии называют независимыми, если возможна взаи- мозаменяемость любой пары безотносительно влияния других. Иными словами, критерии независимы, если между ними пет взаимодействия. Теорема [12]. Пусть II полная иерархия с наибольшим элементом b и h уровнями. Пусть Вк- матрица приоритетов А-го уровня, к = 2,..., И. Если W' - вектор приоритетов р-го уровня относительно некоторого элемента z в (р -1)-м уровне, то век- тор приоритетов Wq-ro уровня (р < q) относительноz определя- ется как W^BqB^...B^W'. (5.14) Таким образом, вектор приоритетов самого низкого уровня oi- носителыю элемента b W = BhBhv..B2W'. (5.15) Обычно L\ состоит из единственного элемента, W' просто скаляр, в противном случае W - вектор. Базовое множество X будем считать универсальным множест вом X нечеткого множества А', т. е. универсальным множеством будем называть область определения функции принадлежности где любое линейно упорядоченное множещво. Обычно [0,!] В случае, когда набор Л', j = 1,.. .,m в Xсоответствует т свой- ствам рассматриваемого обьекта, каждый элемент х & X характе- ризуется вектором значений степеней принадлежности, т. е. функ" цией принадлежности нечеткого множества, определяемого этот элемент как качественный: 132
M/W s [Иn (*,), ),..., j.iA„ (х,)], гдег = р;р- количество элементовх. Пусть имеется нечеткое множество с функцией принадлежности: рх;(а) :Л-> N. При анализе иерархий примем следующее. Любая иерархия является совокупностью уровней Sh к= 1,..., п, п - количес тво уровней иерархии, и отношений между уровнями: R:Sk^ °Sk—>N, где символ о означает композицию отношений. Любой /с-й уровень иерархии является совокупностью отдель- ных элементов // , где j = 1,..., т, т > 1- количество элементов данного уровня. Формально определим множество Е элемент ов иерархии состоящее из подмножеств, т. е. уровней: Очевидно, что каждый элемент // ! можно считать подмножеством Е Причем Л п ТЩ Е = и L = V U Ml, к=\ к *=ij^i * (5-16) где символ О означает об ьединенис, т. е. алгебраическую сумму. 133
Представим иерархию в виде совокупности нечетких множеств и докажем справедливость (5.15) в случае представления иерархИи в виде нечетких множеств, а собственных векторов в виде функ. ций принадлежности. Рассмотрим иерархию, состоящую из трех уровней (рис. 5.4) Рис. 5.4. Иерархическая структура, состоящая из элементов, которые являются нечеткими множествами Набор MJk является набором нечетких свойств для элементов нижнего уровня, т. е. М/ - это набор нечетких множеств; универ- сальными множествами этих нечетких множеств являются множе- ства элементов нижних уровней. Область определения функций принадлежности нечетких множеств М-1 - универсальное множество элементов уровня S„ ь обозпаченпого L,, при этом множество элементов уровня S„, обо- значенного Ln, является универсальным (базовым) для нечеткого множества м\ уровня Х„ |,принадлежащего множеству £„ ь Запишем элемент ы каждого уровня. Уровень S„ ь L„ ...0'1" У ровень S„: L„: l',!^ .. ,l'"[' Уровень X„,|: Ln< ь Сн^+i^+i-^n+i 134
Связь соседних уровней иерархии определяется матрицей соб- ственных векторов, т. е. матрицей приоритетов В: /п 'п+1 «,, ю!2 /2 в - "+| «п+1 - з 'п+1 (02| (О22 - (03, со32 “3'«w /'"(..О 'п+1 ®п?, .1 %.|)2 где В„+1 - матрица собственных векторов уровня Л’,,,,; т„1} число элементов уровня п + 1: L„,t = /^i^nn/n+i • •01" ’т" число элементов уровня п: L„ = ./"’w ; (о‘„„,| = т ®ii<B2i(O3i ••<Bm( )i - собственный вектор, г. е. вектор приорите- тов элементов уровня ц относительно критерия верхнего уровня । 1 [ п / и, (o„t,„ <nii<ni20)i3---(0iw собственный вектор, т. е. вектор приоритетов элементов уровня Sn относительно крите- рия нижнего уровня п+1 - /'+1. Тогда на основании (5.16) можно записать следующее. Степень принадлежности элемента нечеткому множеству, которое является элементом /('+,: Т1/'и юн “ Т1/1 (Zn+i )• Функция принадлежности нечеткого множества, которое явля- йся элементом /,'+,: (Ln) = [(О, ,(0,203,3 .. ,(0lmn ]1 ТСД, п 135
функция принадлежности первого элемен та (п 1 1)-го уровня, оп- ределенная на базовом множестве уровня S,, (строка матрицы). Функция нринадлсжнос!и нечеткого множества, являющегося элемен том : Р/-(^+|) = = W' г п,п - функция принадлежност и первого элемента /7-го уровня, опреде- ленная на базовом множестве уровня ^;|11 (столбец), эквивалентна вектору приоритетов уровня п + 1 по первому критерию и-го уровня. В общем случае = = 1............................. И/' (^лт I ) ~ ^л, л+1 ’ ' ~ !’• • -’^п' Очевидно, что матрица Bnil задает бинарное нечеткое отношение между нечеткими множеавами, принадлежащими уровням и и и + 1: R„.l.n:Ln.l°L„ >[0,1]. (5.18) Задача анализа иерархий сводится к нахождению ц, (£я+1), что эквивалентно WnllA, т. е. к нахождению функции принадлеж- ности нечеткого множества элемента первого уровня иерархии, определяемого на базовом множестве уровня л + 1. Считаем, что уровень 5] состоит из одного элемента и в иерархии п + 1 уровней Необходимо найти отношение: К„н,|(^ьЛ): ^,4, ->[0, 1]. Рассмотрим получение функции принадлежности нечетких множеств п- 1-го уровня иерархии, если этот уровень состоит из/ элементов, г. е. необходимо определить р, ‘I 1 На основании (5.18) й„и есть матрица нечетких отношений не- четких множеств уровней S„ и Snl р В„ц ~R(L,n |, L„). 136
функция принадлежности ц 6 (Ая+() определяется как компо- зйция нечетких отношений следующим образом: Ж, >) = М/Л (Ж) = Жж, Л.) ° М/Л (4)- Композицию можно расписать иначе: т„ п Мф (z„+i) = uM/> (Z„)qh Л (Л,„), (5.19) 'я-1 1=1 "+| 1=1 'л-1 где Г» (пересечение) алгебраическое произведение. Эта запись эквивалентна (5.14). Таким образом доказана следующая теорема. Теорема. Пусть Н - полная иерархия с наибольшим элементом b (элементом первого уровня, являющимся глобальной целью ре- шения задачи) и h уровнями. При этом элементы иерархии есть нечеткие подмножества четких упорядоченных множеств, и уров- ни иерархии есть универсальные множества нечетких подмно- жеств верхних и нижних уровней. Пусть Вк - матрица функций принадлежности Lki уровня, определяемых на универсальном множестве элементов L к уровня (к = 3,..., Л) Белиц, (£„) - функция принадлежности нечеткого множества lf,i уровня Lp-i, определяемая на универсальном множестве уровня Lr„ то функция принадлежности Н/ '(г 1) Lt/J (р < q) элемента 1Р |, опреде- ляемая на универсальном множестве уровня L4, определяется как (р-')' 7 (ж)4 7 (5-20) Таким образом, функция принадлежности элемента b верхнего Уровня, определяемая на универсальном множестве самого нижне- го уровня L Л определяется следующим образом: ц/,(£/,) = 5/,йЛ „.-ЖЖ)- (5.21) Теорема доказывает справедливость решения МАИ многокри- териальных задач с нечетко выраженными исходами и алыернати- вами с получением функции полезности. При этом функция по- лезности рассматривается как функция принадлежности глобаль- ной цели на множестве альтернатив. 137
ГЛАВА 6. РЕШЕНИЕ ПЛОХО ФОРМАЛИЗОВАННЫХ ЗАДАЧ ОПТИМАЛЬНОГО УПРАВЛЕНИЯ 6.1. МАИ - пакет программ дли принятии плох» формализованных решений Подход для решения многокритериальных задач оптимиза- ции в условиях качественной неопределенности реализован в виде универсального программного обеспечения в среде Matlab [35]. Программное обеспечение позволяет решать неформализо- ванные задачи оптимизации, структурированные в виде 3-, 4- и 5-уровневых полных и неполных иерархий. Пользователю необ- ходимо представить свою задачу в виде иерархической деком- позиции и при работе с программой выбрать подходящую структуру с необходимым количеством уровней. Работа с программой ведется последовательно по уров- ням. Пользователь вводит количество элементов каждого уровня. Если иерархия па текущем уровне неполная, то вво- дится количество подкритсриев каждого критерия вышестоя- щего уровня. На втором уровне вводится одна матрица попарных срав- нений, порядок которой определяется количеством элементов уровня, па нижестоящих уровнях вводятся матрицы для срав- нения по каждому критерию вышестоящих уровней и их коли- чество определяется количеством этих критериев. Порядок матриц равен количеству элементов текущего нижестоящего уровня в случае полной иерархии и количеству подкритериев текущего уровня для каждого критерия вышестоящего уровня в случае неполной иерархии. При введении матриц попарных сравнений система выдает номер критерия вышестоящего уровня для сравнения и номера сравниваемых элементов. Элементы сравниваются однократно, и происходит заполнение матрицы под главной диагональю (т- е. сравниваются элементы в такой последовательности: 2 и Е 3 и I; 3 и 2; 4 и 3; 4 и 2; 4 и 3 и т. д. в зависимости от порядка 138
матрицы), остальные сравнения обратно симметричны введен- ным. При сравнении пользователь определяет сначала значи- мость сравниваемых элементов (рис. 6.1), которая может быть: одинаковая (два элемента равнозначны по рассматриваемому критерию), большая (второй элемент более значим, чем пер- вый), меньшая (второй элемент менее значим, чем первый). Степень значимости определяется по дсвя гибалльной вербаль- ной шкале. File fdil V/jndows Help File £dii Windows Help file Edit Options Windows Номер подиритерия Приоритеты критериев 2-го уровня: 1.5 2 2.5 ~5 3.5 1 тит по Крит 1 Веса подкрит.по крит.2 Веса подкрит.по крит.З Одинаковая значимость Значимость Меньшая значимость The fundamental scale Введите указанный эле указанного эксперта 4 Глобальные приоритеты подкритериев ЗВ Пуск | U-jNC-NCMAIN | ЦМАТТАВСо... | Д Figure No, 1 Е ш 1220 Рис. 6.1. Пакет МАИ для принятия плохо формализованных решений Q Если сравнения даются группой экспертов, то они вводятся поочередно, а затем вычисляется геометрическое среднее всех введенных сравнений. Такой расчет прост для реализации и не нарушает условия обратной симметричности матриц мпожест- вепных суждений. Для каждой матрицы рассчитывается и нормируется отно- сительно единицы собственный вектор, соответствующий ее максимальному собственному значению, и отношение согласо- ванности суждений экспертов. Затем рассчитывается вектор Приоритетов текущего уровня и отношение согласованности Уровня. 139
После оценки элементов последнего уровня, т. е. альтернатив рассчитывается глобальный вектор приоритетов и согласованность всей иерархии. Результаты выдаются в численном и графическом виде, графики выдаются для векторов приоритетов в виде гисто- грамм в окнах ввода системы Matlab. При работе с системой пользователь может прервать работу в любом месте, записать данные в введенный им файл, а затем про- должить работу с прерванного места, указав имя файла, в котором записаны все данные. После окончания работы пользователю предлагается записать все результаты в отдельный файл, чтобы можно было в любой мо- мент их просмотреть и распечатать. 6.2. Сравнительный анализ SCADA-систем Выбор наиболее приемлемой SCADA-системы представляет собой сложную многокритериальную задачу, решением которой является компромисс между надежностью, стоимостью, техниче- ским уровнем, полнотой программного обеспечения, комфортно- стью, затратами на сервисное обслуживание и т. д. В большинстве SCADA-систем присутствуют известные ба- зовые свойства, но технологии и средства их реализации доста- точно сильно отличаются. Именно мера реализации каждого свойства в SCADA-системе определяет необходимость в разра- ботке дополнительного программного обеспечения (новые драйверы ввода-вывода, графические объекты; функции, рас- ширяющие список базовых функций, встроенные библиотеки). Для минимизации этой процедуры важны три фактора: степень соответствия выбранного SCADA-пакета вашей задаче, понима- ние тонкостей реализации конкретной прикладной системы по- ставщиками SCADA-продукта и качество осуществляемой ими технической поддержки [36, 37]. Существенное влияние на выбор SCADA-системы оказыва- ют следующие свойства: тип, мощность, динамичность объекта автоматизации; учет дальнейшего распространения SCADA- системы на другие объекты автоматизации; класс систем авто- матизации, контроль и учет; имеющаяся платформа; число и расположение пультов операторов; число и типы контроллеров; имеющаяся сетевая архитектура; число измеряемых величин на каждый пульт; необходимость обработки измерительной ин- формации; надежность. 140
Еще не так давно SCADA-системы различались между со- бой такими параметрами, как: мощность векторной графики; особенность построения графиков, трендов; формат экспорта и импорта изображений; возможность работы с мультимедиа; тиражирование изображений; проектирование первичной переработки данных; написание пользователем программ; осо- бенности отладки отдельных программ (эмуляция); возмож- ность эмуляции объекта автоматизации; обучаемость персона- ла; открытость протоколов связи с контроллерами и сетями; наличие интерфейса с базами данных (БД), электронными таб- лицами и Web-браузерами; перечень драйверов к контролле- рам; полнота документации; особенности технического сопро- вождения; цена базового комплекта. При выборе SCADA-системы необходимо идти от задачи, так как она во многом будет определять дальнейшее решение. Напри- мер, если понравившаяся вам SCADA-система не поддерживает имеющиеся у вас контроллеры, то следует подумать, стоит ли вам браться за разработку драйверов. SCADA-системы можно анализировать в разных срезах и один из них потребитель, т. е. кто выбирает SCADA-продукт - конеч- ный пользователь (технолог) или системный интегратор, имеющий навыки в области создания проектов. Сейчас практически все SCADA-системы работают под Windows 2000/NT и в связи с этим используют одну и ту же платформу, обладают примерно одинаковыми функциональ- ными и графическими возможностями, а па первый план при сравнении выходят такие критерии, как падежноегь работы, обмен данными, удобство работы, техническая поддержка и цена. На рис. 6.2 представлена иерархическая структура кри- териев, по которым оцениваются в последнее время SCADA- системы. Методики определения надежности SCADA-систем отсут- ствуют, хотя важность этого критерия составляет, но оценкам специалистов, около 70 %. Косвенным показателем надежно- сти считается количество инсталляций. Однако, по мнению ряда специалистов, роль этого показателя незначительна, если число инсталляций системы превышает 1000. В большей сте- пени вас волнует вопрос: сколько внедрений имеет система нс в мире, а в России, если вы - российский производитель, и сколько в Германии, если ваше производство размещено в Германии. 141
Наилучшая SCADA-система Рис. 6.2. Критерии выбора SCADA-систем 142
На втором месте, по мнению многих специалистов, должен быть такой критерий, как обмен данными. Здесь важными подкри- териями являются поддержка стандартных сетевых протоколов и форматов данных, включая Web-технологии, наличие встроенных драйверов к отечественным и зарубежным контроллерам, а также производительность системы. Причем важны протоколы, которые используются для организации взаимодействия между компонен- тами, расположенными как на одном узле, так и на разных узлах. Какие протоколы, для какой SCADA-системы предпочтительны и почему. Они должны быть указаны, поскольку от них зависит как производительность текущего SCADA-приложения, так и парал- лельно загруженных программ. Важнейшим российским критерием является цена. Как правило, критерий выбора - это соотношение функциональность/стоимость. Специалисты обращают внимание на зависимость цены системы от конфигурации, на возможность получения новых версий и бесплат- ного обновления релизов, а также на наличие бесплатной системы разработки. В условиях повышенных требований к оптимальному исполь- зованию конкретного высокотехнологичного продукта повышает- ся роль технической поддержки при ужесточении требований к ее квалификации и компетентности менеджеров продуктов. Западные пакеты проигрывают по русификации документации и, тем более, программного обеспечения, по «либеральности» технической под- держки, наличию «горячей» линии, а главное, по возможности поддержки от разработчика. Последнее не может обеспечить ни один западный разработчик, так как работает в России через дист- рибьюторов. Хотя критерий «удобство работы» в оценках специалистов за- нимает сравнительно небольшой удельный вес, однако именно он вызывает наибольший интерес. Это возможность автоматического построения проекта, универсальность и наличие стандартных язы- ков математического описания данных и процессов, удобство пользовательского интерфейса (работа с редакторами), качество графики и стандартных изображений, эмуляция работы. В связи с тем, что общее поле деятельности ведущих компа- ний-производителей сегодня концентрируется в области MS Windows, а общие технические возможности систем достаточно близки, главный упор делается на качество технической поддерж- ки, на качество обучения пользователей, на концентрацию и на качество дополнительных комплексных услуг по освоению и вне- 143
дрению конечной системы управления, другими словами, - на со- кращение издержек разработчиков на инжиниринг и менеджмент своих проектов, на уменьшение стоимости сопровождения конеч- ной системы. Именно эти показатели сегодня в основном влияют на рейтинг и рыночный успех той или иной SCADA-системы. Эти показатели даже более важны, чем абсолютные стоимостные ха- рактеристики SCADA-систем. Выбор алгоритмов сравнения и критериев зависит от того, кто проводит сравнение - журнал или организация для своих проек- тов. В первом случае ориентируются на общие принципы пос трое- ния продуктов, на многообразие поддерживаемых протоколов, на производительность и т. д. (сотни параметров), во втором случае оговариваются особые, ориентированные на определенные проек- ты условия. Следовательно, возможны специализированные алго- ритмы сравнения. Традиционно языком программирования профессионалов яв- ляется Си. Он обеспечивает более высокие скоростные характери- стики, в том числе и при работе с внешними устройствами. Имен- но поэтому многие SCADA-системы ориентированы на Си прямо или чаще всего неявно (нельзя требовать профессиональных навы- ков программиста от разработчиков SCADA-приложений). При этом разработчики подчеркивают, что подобный выбор не случаен и определяется гибкостью и производительностью Си. В качестве встроенного языка программирования в зарубеж- ных SCADA-системах используется VisualBasic. Интересно сравнить скорости выполнения скриптового фрагмента, а также приоритеты в использовании различных типов скриптов, про- анализировать механизмы конкурентного и рекурсивного ис- полнения скриптов. Разработчик часто предварительно не ана- лизирует, создавая скрипты по различным событиям в SCADA- приложении, как они «одновременно» будут исполняться, что, по логике, может привести к непредсказуемым результатам ра- боты приложения. Наиболее предпочтительно использование методики сравни- тельного анализа, базирующейся на косвенных заключениях экс- пертов, что улучшает достоверность получаемой информации. Программное обеспечение основано на МАИ [35]. Система рассчитывает локальные приоритеты SCADA- систем по каждому из подкритериев: цене, надежности и т. д. (рис. 6.3), где 1 — надежность; 2 - обмен данными; 3 - удобство работы; 4 - техническая поддержка, 5 - цена. Затем система 144
рассчитывает и выводит на экран глобальные приоритеты SCADA-систем (рис. 6.4 - 6.6). Рис. 6.5. Векторы приоритетов SCADA-систем по подкритериям На рис. 6.4: 1 - отсутствие отказов; 2 - число инсталляций в осени; 3 число инсталляций в мире; 4 - поддержка стандарт- ных сетевых протоколов и форматов данных; 5 наличие встро- енных драйверов к отечественным и зарубежным контроллерам; производительность; 7 — возможность автопостроения; 8 145
универсальность и наличие Рис. 6.6. Глобальный вектор приоритетов SCADA-систем стандартных языков математиче- ского описания; 9 - удобство пользовательского интерфейса- 10 русификация и документа- ция к ПО; 11 возможность под- держки от разработчика; 12 наличие горячей линии, «либе- ральность» технической поддерж- ки; 13 зависимость цены систе- мы от конфигурации; 14 воз- можность получения новых версий и бесплатного обновления рели- зов; 15 - наличие бесплатной сис- темы разработки. На рис. 6.5 и 6.6 обозначены: 1 — Трейс Моуд, а 2 Intouch. Для суждений по ка- ждому из критериев выводится значение согласованности, а затем выводится общая согласованность для всей иерархии. Программная система МАИ позволяет выбрать SCADA- систему, которая в надлежащей степени удовлетворяет всем по- ставленным требованиям с учетом их значимости. 6.3. Оценка эффективности научно-исследовательских работ Под эффективностью научных исследований будем пони- мать последствия применения человеком результата данного исследования в своей практической деятельности. Задачу опре- деления эффективности научных исследований можно сформу- лировать как задачу нахождения количественного соотношения результатов научных исследований и совокупных затрат на их проведение [38]. Таким образом, определение наиболее эффек- тивной НИР является сложной многокритериальной задачей, решаемой в условиях неполноты или неопределенности исход- ной информации. Оценка НИР должна быть многоуровневым процессом, преду- сматривающим использование нескольких систем критериев на всех этапах проведения исследований, и осуществляться различ- ными группами людей. Для задачи оценки эффективности ПИР элементы иерархии - эго виды эффекта или критерии, по которым оцениваются НИР. Определение видов эффекта следует проводить в зависимости от целей и особенностей конкретных научных исследований. 146
Научные исследования и разработки делятся на: 1) фундамен- тальные исследования, связанные с формированием принципиаль- но новых теоретических проблем, законов и теорий; 2) прикладные исследования, направленные на поиски наиболее рациональных путей практического использования результатов фундаменталь- ных исследований. Для фундаментальных исследований характерна научная зна- чимость, а для прикладных исследований и разработок обязатель- ным и главным является определение экономического эффекта и экономической эффективности. При оценке определенной группы работ следует учитывать веса эффектов, т. е. критериев. Важно учесть тот факт, что для разных по классификации групп работ основные эффекты (или критерии) будут иметь различные веса. Для рассмотрения различных по классификации НИР нужно выделить общие основные критерии для оценки любых НИР, которые должны отвечать определенным требованиям. К важ- нейшим требованиям относятся: значимость, критичность к оцениваемым параметрам, максимально возможная простота, агрегатность, т. е. объединение в себе по возможности всех ос- новных элементов оцениваемого показателя, и правильный учет специфики работ. МАИ обладает определенными преимуществами по сравнению с другими методами такого класса, которые значимы при решении поставленной задачи. Во-первых, МАИ не требует допущения о согласованности в предпочтениях, т. е. суждения в общем виде могут быть несогласованными, тем не менее позволяет проверят ь согласованность суждений. Во-вторых, он позволяет использовать и синтезировать групповые суждения. В-третьих, при попарных сравнениях в МАИ информация более детализирована и примени- ма в сферах, где существуют неизмеримые показатели. Очень удобна в данном случае и та особенность метода, что он требует представления проблемы в виде иерархии, а в дальнейшем позво- ляет оценить все ее элементы. В вузе ведутся различные по классификации НИР (т. е. как фун- даментальные, так и прикладные исследования). Для решения зада- чи оценки эффективности НИР при помощи МАИ необходимо структурировать НИР в виде иерархии. В иерархии выделены ос- новные группы критериев, по которым можно оценивать различные по классификации группы НИР, но при этом группы критериев бу- дут иметь различный вес. На первом уровне иерархии выделяется глобальная цель решения задачи - наиболее эффективная НИР. 147
На втором уровне выделяются основные критерии, по кото рым будут оцениваться рассматриваемые работы. Для ПИР проводимых в вузе, можно выделить следующие основные группы критериев. I. Учебно-исследовательский эффект. 2. Общенаучный эффект. 3. Экономический эффект. На третьем уровне выделяются критерии, по которым будут оцениваться работы. Четвертым уровнем являются сами оцени- ваемые работы, которые разбиваются па кластеры в соответствии с научными направлениями. Такое представление позволяет оценить степень важности кри- териев при оценке работ, а также эффективно ранжировать группы работ каждого направления и, наконец, получить количественную оценку всех сравниваемых работ. Данный подход рекомендуется для оценки эффективности таких работ, для которых вышеуказанные критерии являются рав- нозначными, т. е. оценку можно использовать для проведения кон- курсов НИР или внутри одного вуза или среди нескольких одно- профильных вузов [39]. В труппе «учебно-исследовательский эффект» выделяются че- тыре критерия: 1) уровень соот ветствия НИР профилю подготовки специалистов; 2) уровень влияния НИР на повышение квалифика- ции преподавателей; 3) уровень влияния НИР на повышение каче- ства подготовки специалистов; 4) уровень влияния НИР на совер- шенствование методики и организации обучения. В группе «общенаучный эффект» можно выделить следующие основные критерии: актуальность; новизна проводимой работы; практическая ценность; перспективность развития исследования; показатель уровня представления результатов НИР; показатель уровня патентной защищенности НИР. Под актуальностью, во-первых, понимается степень соответ- ствия выполняемой НИР основным задачам и темам, проводи- мым в организации, т. е. критерий необходимости проводимой работы, во-вторых, уровень соответствия НИР ресурсам органи- зации, так как наличные экономические ресурсы являются огра- ниченными. Новизна работ оценивается: но новизне постановки задачи, по новизне используемых методов, по новизне полученных фактов (или новизне полученной связи между ними); по новизне получен- ных закономерностей, теории, устройства, вещества, способа; по 148
уменьшению неопределенности имевшегося знания; по рациопа- пизации использования прежних результатов. Практическая ценность определяется в зависимости от типа оцениваемой работы. Если работа фундаментальная, то ее практи- ческая ценность может рассматриваться, во-первых, как «теорети- ческая», поскольку ее ценность будет проявляться через примени- мость полученных результатов и теоретических исследований в различных областях науки, и во-вторых, как «практическая», по- скольку результаты исследований могут использоваться в дальней- шем и в прикладных исследованиях и разработках, г. с. результат данного поискового исследования через ряд опосредованных звень- ев будет иметь выход в производство материальных продуктов. Ес- ли работа прикладная, го практическая ценность будет выражаться непосредственно через возможность практической реализации в любой из областей производства (т. е. данный кри терий может рас- сматриваться как вероятность продвижения технического новшест- ва от «лаборатории до рынка»). Перспективность развития исследования - это возможность дальнейшего развития и усовершенствования НИР. Оставшиеся два критерия в группе «общенаучный эффект» мо- гут рассматриват ься как количественные: показатель уровня представления результатов НИР в научных публикациях, на выставках и на научных конференциях (этот кри- терий показывает уровень теоретических обобщений); показатель уровня патентной защищенности ПИР. Экономический эффект обычно рассматривается как наиболее значимый для прикладных работ, имеющих непосредственный выход в производство, и как дополни тельный для фундаментальных и поис- ковых работ, для которых основным является общенаучный эффект. Существует ряд факторов, затрудняющих или делающих прак- тически невозможным осуществление экономических оценок раз- личных видов фундаментальных исследований. Расчет экономической эффективности целесообразен для исследо- ваний, которые нашли реальное воплощение в новых технических уст- ройствах, материалах и технологиях, пришедших на смену сущест- вующим, традиционным, но целиком выполняющим ту же целевую функцию. Такая оценка обеспечивает возможность проведения срав- ни тельных экономических оценок. Исследования, проведенные, но не реализованные, могут быть оценены с точки зрения их потенциальной носящей вероятност- ный характер экономической эффективност и. 149
Для ранжирования исследований, не имеющих непосредствен- ного выхода в производство, рассматриваются качественные не- формализованные критерии: степень завершенности работ, т. е. степень готовности работы к реализации; степень наличия потенциальных потребителей. Экономические эффекты фундаментальной науки проявляются, во-первых, через снижение наукоемкое™ в производстве (непосредст- венно) и, во-вторых, через снижение стоимости воспроизводства тра- диционных видов продуктов (через ряд опосредованных звеньев). Экономическая эффективнос1Ъ результатов фундаментальных иссле- дований, таким образом, может быть исчислена как соотношение за- трат на деятельность академических и иных научных организаций, за- нятых фундаментальными НИР, и суммы экономии трудозатрат на различных этапах цикла «паука производство», полученной в ре- зультате использования теоретической информации. Теоретически правильным является расчет экономического эффекта (добавочного чистого дохода, получаемого в результате «эксплуатации» научных знаний) пропорционально снятой научной неопределеннос ти. Таким образом, можно выделить два критерия, существенных как /для фундаментальных, так и для прикладных исследований: 1) относительная экономическая научная эффективность. Этот критерий рассматривается как итог соизмерения экономического эффекта от внедрения результатов НИР и затрат на его достиже- ние, при этом обычно учитывается фактор времени; используем указанный критерий как качественный; 2) уровень снижения наукоемкое™ (критерий информацион- ной емкости научного знания оцениваемой НИР). Экономический эффект в данном случае - эго добавочный чистый доход, который получают в результате «эксплуатации» научных знаний пропор- ционально снятой научной неопределенности. Иерархия представлена на рис. 6.7. Для оценки большого количе- ства НИР (больше 9) их следует разбить на кластеры. Удобным спо- собом исследования большого числа элементов, попадающих на один из уровней иерархии, является группирование этих элементов в кла- стеры в соответствии с их относительной важностью. Предлагается разбить НИР на кластеры согласно направлениям НИР, т. е. в каждом направлении выделить работы с одной конкретной спецификой. Это позволит оценить не только НИР по отдельности, по и направления в целом. Направления (кластеры) сравниваются попарно по каждому из 14 критериев третьего уровня. 150
Наиболее эффективная НИР X с Рис. 6.7. Структура задачи оценки эффективности НИР 151
После анализа кластеров элементы в каждом кластере по- парно сравниваются ио их важности в этом кластере. Если их слишком много, то они вновь могут быть сгруппированы в кла- стеры. Каждый элемент, принадлежащий нескольким кластерам, будет получать несколько весов из различных кластеров. Эле- менты кластеров сравниваются по тем же критериям верхнего уровня, что и сами кластеры, так как в данном случае нужно оценить не только направления НИР, но и сами работы но вы- деленным критериям. В результате мы получаем четырехуровневую неполную иерархию с разбитым на кластеры четвертым уровнем. Для решения задачи требуется выполнить следующие дейс твия. Действие 1. Группы критериев сравнивают между собой по сте- пени их важности для оценки эффективности НИР. Для заполнения матриц попарного сравнения элементов иерархии составляют листы экспертного опроса. При проведении экспертного опроса экспертам не нужно знакомиться с методом, им лишь нужно ответить на во- просы, поставленные в листах экспертного опроса и отметить нуж- ную ячейку в таблице, пример которой приведен на рис.6.8. Сравнение групп критериев 1 2 3 а > ( а<б а > б а< б а > 6 а < б 1. Очень слабая значимость I I □ I I I ~| 2. Слабая значимость U I I I 3. Промежуточное значение U I I I I Е 4. Существенная о I '" I I I значимость 5. Промежуточное значение U I I Е U U I । 6. Очевидная значимость — о — —j 7. Промежуточное значение LJ U 8. Абсолютная значимость I I I । а Рис. 6.8. Пример таблицы для введения экспертных оценок 152
Для сравнения трех групп критериев между собой требуется заполнить один лист, ответив на следующий вопрос: «Какая из двух указанных групп критериев является наиболее важной для оценки эффективности рассматриваемых работ, го есть насколько одна группа критериев важнее другой для оценки эффективности работ?» Степень увеличения (уменьшения) важности одной груп- пы по сравнению с другой оценивается по девятибалльной вер- бальной шкале. Для сравнения имеется три пары (групп) критери- ев (см. рис. 6.8). Группа 1: а - учебно-исследовательский эффект; б - общенаучный эффект. Группа 2: а учебно-исследовательский эффект; б - экономический эффек г. Группа 3: а - общенаучный эффек т; б - экономический эффект. Таблица на рис. 6.8 заполняется следующим образом. Например, для сравнения пары 1 критериев, если элемент «а» более важен для оценки эффективности работ, чем элемент «б», то отмечается клетка под соответствующей строкой шкалы в столбце «а > б», если, наобо- рот, «б» важнее «а», тогда - в столбце «а < б» и т. д. Действие 2. Сравнивают в каждой группе кри терии между собой: критерии группы I по степени их влияния па учебно- исследовательский эффект; критерии группы 2 по степени их влияния на общенаучный** эффект; критерии группы 3 по степени их влияния на экономический эффект. Экспертам для заполнения листов экспертного опроса требует- ся ответи ть на следующие вопросы (см. рис. 6.7): 1. Какой из двух критериев из данной нары наибольшим обра- зом влияет на учебно-исследовательский эффект и насколько? (В группе «учебно-исследовательский эффек!» 4 критерия, и Мы имеем 6 пар для сравнения.) 2. Какой из двух критериев из данной пары наибольшим обра- зом влияет на общенаучный эффект и насколько? (В группе «общенаучный эффект» 6 критериев, и мы имеем 15 ПаРдля сравнения.) 153
3. Какой из двух критериев из данной пары наибольшим обра- зом влияет на экономический эффект и насколько? (В группе «экономический эффект» 4 критерия, и мы имеем 6 пар для сравнения.) Для сравнения групп критериев между собой и попарного сравнения самих критериев в каждой группе требуется заполнить 8 листов экспертного опроса. Действие 3. Сравнивают кластеры НИР между собой по каж- дому из 14 указанных ранее критериев. В данном случае работы разбивают по направлениям, т. е. сравнивают направления (кла- стеры) между собой по каждому критерию. Соответственно экспертам для заполнения листов экспертного опроса требуе тся отве тить на вопросы по группам критериев. Ниже приведен пример вопросов. Учебно-исследовательский эффект. 1. Насколько работы одного кластера (направления) превосхо- дя! работы другого кластера по степени соответствия профилю подготовки специалистов? 2. Насколько работы одного кластера больше влияют на повы- шение качества подготовки специалистов, чем работы другого клас тера? 3. Насколько ПИР одного кластера больше влияют на совер- шенствование методики и организации обучения, чем НИР друго- го кластера? 4. Насколько работы одной из пары кластеров больше влияют на повышение квалификации преподавателей? Общенаучный эффект. 5. Насколько работы одного из кластеров наиболее актуальны, то есть насколько больше будет вклад работ одного из направле- ний (кластеров) в выполнение организации своих главных задач, и насколько НИР одного из кластеров больше соответствует ресур- сам вуза (материальным и техническим), чем НИР другого? 6. Насколько работы одного из кластеров обладают большей степенью новизны, то есть насколько более новой является поста- новка задачи, насколько более оригинальным является метод, на- сколько больше степень новизны у полученных фактов, законо- мерностей, теории,способа? 7. Насколько у работ одного из кластеров большая степень реализуемости (применимости) научных результатов? 8. Насколько работы одного кластера перспективнее работ дрУ' того в области развития исследований? 154
9. Насколько у работ одного из кластеров выше, чем у работ другого, уровень представления научных результатов? 10. Насколько у работ одного из кластеров выше показатель уровня патентной защищенности НИР? Экономический эффект. 11. Насколько работы одного из кластеров более готовы к реа- лизации, чем работы другого? 12. Насколько у работ одного из кластеров больше возможных потенциальных потребителей? 13. Насколько больше относительная экономическая эффек- тивность у работ одного из кластеров, то есть насколько больше полезный эффект от использования работ одного из направле- ний и насколько меньше материальных и временных затрат на выполнение работ одного из направлений по сравнению с рабо- тами другого? 14. Насколько работы одного из кластеров способны наиболь- шим образом снизить «наукоемкость», т. е. насколько больше до- бавочный чистый доход, полученный в результате эксплуатации научных знаний работ одного из направлений по сравнению с ра- ботами другого? Для проведения этих оценок для одной пары работ требуется заполнить 4 листа. Если будут сравниваться 7 направлений, то они составят 21 пару и потребуется заполнить 84 листа. Действие 4. Сравнивают работы между собой по каждому на- правлению отдельно, по всем 14 критериям. Для сравнения одной пары работ требуется заполнить 4 листа экспертного опроса. Если в каждом кластере 3 работы, то по одному кластеру нужно запол- нить 12 листов экспертного опроса. Следовательно, для 7 направ- лений научной деятельности это составит 84 листа. Для сокращения времени опроса, для уменьшения загруженно- сти экспертов и для повышения объективности суждений целесооб- разно распределить листы экспертного опроса между экспертами (представителями направлений) так, чтобы каждый представитель сравнивал по 3 пары тех направлений, к которым он не относится. 1аким образом, экспертам будет выдано по 12 листов экспертного опроса для сравнения между собой трех пар направлений. Следова- тельно, каждому эксперту достанется по 24 листа. Критерии между собой должны сравнить члены комиссии, ко- Торые не принадлежат ни одному из направлений. Так как для сРавнения групп критериев и самих критериев попарно требуется заполнить только 8 листов экспертного опроса, это могут сделать 155
представители направлений, тогда каждому эксперту нужно будет заполнить 32 листа. Пример. Для получения финансирования на 1999 год в кон- курсе участвовало девять работ: 1. Исследование эффективных методов и средств информаци- онной защиты от несанкционированного доступа к индивидуаль- ным базам данных в вычислительных сетях. 2. Разработка прецизионных систем навигации и управления подвижными объектами. 3. Теоретические основы построения информационно-измери- тельной системы стыковки космических объектов, базирующихся на определении ориентации и параметров сближения объектов по реперным точкам. 4. Проектно-исследовательская система решения комбинатор- но-оптимизационных задач. 5. Разработка и исследование типовых структур интеллекту- альных мехатронных автоматических сервосистем, средств их ал- горитмической, программной и аппаратной поддержки. 6. Разработка навигационных комплексов ИНС-GPS для опре- деления текущих координат и ориентации движущихся объектов. 7. Проблемы информатики в экологических задачах. 8. Разработка системы ранней диагностики разрушений строи- тельных сооружений. 9. Разработка системы бесконтактной диагностики поверхно- сти дорожных покрытий. Было проведено ранжирование указанных работ и получены весовые коэффициенты основных групп критериев и самих крите- риев, по которым оценивались работы. Сравнение групп критериев и самих критериев проводилось двумя экспертами, при этом были получены следующие результа- ты, показанные на рис. 6.9: 1 общенаучный эффект: весовой коэффициент 0,7352; 2 - учебно-исследовательский эффект: весовой коэффициент 0,2067; 3 экономический эффект: весовой коэффициент 0,0581. На рис. 6.9 группы критериев отображены в такой последова- тельности: 1 - учебно-исследовательский эффект; 2 — общенауч- ный эффект; 3 - экономический эффект. Работы в основном были представлены фундаментальные, по- этому наибольший приоритет получила группа критериев общена- учного эффекта. 156
0.8 Рис. 0.9. Приоритеты групп критериев Приоритеты самих критериев распределились по степени убы- вания весового коэффициента следующим образом: практическая ценность работы - весовой коэффициент 0,3502; новизна - весовой коэффициент 0,2243; степень влияния НИР на повышение квалификации преподава- телей - весовой коэффициент 0,1376; актуальность весовой коэффициент 0,0757; степень соответствия НИР профилю подготовки специалистов весовой коэффициент 0,0455; перспективность научных исследований - весовой коэффици- ент 0,0392; патентная защищенность - весовой коэффициент 0,0278; наукоемкость - весовой коэффициент 0,0261; относительная экономическая эффективность весовой коэф- фициент 0,0207; показатель уровня представления результатов весовой коэф- фициент 0,0180; степень влияния НИР на повышение качества подготовки спе- циалистов весовой коэффициент 0,0138; степень влияния НИР на совершенствование методики и орга- низации обучения - весовой коэффициент 0,0098; наличие потенциальных потребителей - весовой коэффициент 0,0078; завершенность работы весовой коэффициент 0,0036. На рис. 6.10 критерии отображены в такой последовательно- сти: 1 - степень соответствия НИР профилю подготовки специали- Сгов; 2 степень влияния НИР на повышение качества подготовки 157
специалистов; 3 - степень влияния НИР на совершенствование методики и организации обучения; 4 - степень влияния НИР на повышение квалификации преподавателей; 5 - актуальность; 6 новизна; 7 - практическая ценность; 8 перспективность развития исследований; 9 - уровень представления результатов; 10 па- тентная защищенность НИР; 11 - степень завершенности работы; 12 степень наличия потенциальных потреби гелей; 13 относи- тельная экономическая эффективность; 14 - уровень снижения наукоемкое™. Рис. 6.10. Приоритеты критериев Окончательно получены следующие глобальные приоритеты работ (рис. 6.11). Здесь цифры 1 9 означают номера работ. Рис. 6.11. Глобальные приоритеты работ 158
Первое место получила работа 7 с весовым коэффициентом 0,3903; второе место — работа 3 с весовым коэффициентом 0,2060; третье место - работа 1 с весовым коэффициентом 0,157; четвертое место - работа 4 с весовым коэффициентом 0,1314; пя- тое место - работа 5 с весовым коэффициентом 0,0516: шестое место - работа 2 с весовым коэффициентом 0,0351; седьмое ме- сто - работа 8 с весовым коэффициентом 0,0115; восьмое место - работа 9 с весовым коэффициентом 0,0095; девятое место - рабо- та 6 с весовым коэффициентом 0,0077.
ГЛАВА 7. РЕШЕНИЕ ЗАДАЧ НЕЧЕТКОГО УПРАВЛЕНИЯ Задача проектирования нечеткого логического регулятора ре- шается как многокритериальная задача оптимизации в нечеткой постановке. Формализация на количественных шкалах качествен- ных понятий, влияющих на процесс переменных (физических зна- чениях этих переменных), решается с учетом оценки параметров и элементов модели регулятора. Модель нечеткого регулятора описывается набором лингвис- тических правил управления (ЛПУ). В качестве правила нечеткого вывода используется комбинационное правило вывода. Дефазифи- кация выполняется методом весов, который в качестве единствен- ного значения для величины управления предлагает выбирать зна- чение, имеющее максимальную функцию принадлежности. Модель получения управляющей величины представляется в виде иерархической структуры, элементами которой являются входные переменные, ЛПУ и качественные значения входных ве- личин. Это позволяет оценить относительную важность ЛПУ в технологическом процессе с учетом степени влияния каждой входной переменной на управление, а также оценить достовер- ность ЛПУ при помощи получаемых качественных значений. Если для регулирования используется несколько выходных ве- личин, составляются и оцениваются иерархические структуры по каждой переменной. 7.1. Разработка модели нечеткого логического регулятора Лингвистические правила управления зачастую бывают проти- воречивыми, а при выработке управляющего воздействия необхо- димо учитывать все множество правил. Кроме того, переменные процесса, используемые в ЛПУ, влияют на процесс управления с различной степенью. ЛПУ при изменении значений параметров объекта имеют различную степень достоверности, которую жела- тельно учитывать при дефазификации. Поэтому задача разработки 160
нечеткого логического регулятора и получение всех функций при- надлежности рассматривается как многокритериальная задача оп- тимизации в условиях качест венной неопределенности. Решение задачи разработки модели нечеткого логического ре- гулятора как многокритериальной задачи оптимизации позволяет выбрать максимальное значение функции принадлежности с уче- том значимости различных параметров процесса и достоверности ЛПУ, т. е. разработать нечеткий логический регулятор, управляю- щий сложными плохо формализуемыми процессами и действую- щий адекватно текущей ситуации, с учетом различных параметров и факторов. Для указанных процессов бывает очень сложно непосредст- венно задать необходимые функции принадлежности, и в этих случаях применение данного подхода является особенно аффек- тивным. Задача представляется в виде иерархии, изображенной на рис 7.1. Получение «оп111малыюго» Рис. 7.1. Иерархическая структура модели печет кого логического регулятора На первом уровне выделяется основная цель решения задачи - получение «оптимального» управления. Гак как управление зави- 161
сит только от соответствующих входных переменных, на втором уровне выделяются входные лингвистические переменные влияющие на указанное управление, а на третьем уровне выделя- ются ЛПУ для получения «оптимального» управления с помощью перечисленных входных лингвистических переменных. На четвер- том уровне выделяются качественные значения входных лингвис- тических переменных. На рис 7.1 представлена ситуация, когда имеется три входных переменных: ЛГИ, ЛП2 и ЛПЗ. Для каждой переменной существу- ет по два лингвистических правила управления (ЛПУ1 и ЛП2; ЛПУЗ и ЛП4; ЛПУ5 и ЛГ1У6) и соответственно по два качествен- ных значения; А', С, D' качественные данные наблюдения для ЛП1, Л112 и ЛПЗ соответственно. Достоверность ЛПУ учитывается на основании оценки качест- венных значений текущих данных наблюдения. Так, для набора лингвистических правил управления «.если А мало, то В мало», «если А очень велико, то В велико» значение А' «очень мало» будет обладать большим весом по от- ношению к ЛНУ1, а значение А' «велико» будет обладать большим весом по отношению к ЛПУ2. Все элементы иерархии являются нечеткими множествами. При решении поставленной задачи получены веса качествен- ных данных наблюдений. Обозначим их ш/л., wtc-, wlis.. На пятом уровне можно выделить элементы, которые являются количественными значениями используемых входных лингвисти- ческих переменных, г. е. универсальными множествами нечетких множеств термов лингвистических переменных, и оценить их функции принадлежности. Перед оценкой лингвистических переменных, ЛПУ и данных наблюдений должна быть оценена функция принадлежности для качественных значений самого управляющего воздействия В е U по иерархии, представленной на рис. 7.2. Аналогично оцениваются функции принадлежности для качественных значений входных переменных. В результирующей формуле (для композиционного правила вывода) учитывается этот приоритет путем умножения значения функции принадлежности качественного данного наблю- дения на свой приоритет. 162
Рис. 7.2. Иерархическая структура оценки функций принадлежности Для входной управляющей переменной Л1 И (Л): М/г (") = max {max min {цл- (v)wtA.t (v)min[|iA(v),nft (и)]}}, (7.1) ' vcT где / = 1 п - количество ЛПУ для ЛП1 (И). Для входной управляющей переменной ЛП2 (С) (u) = max{maxmin{|Lir (щ)и-/су (w)min[pQ (w),pW/ (//)]}}, (7.2) i wgW где / = 1,...,/и, пг- количество ЛПУ для ЛГ12 (С). Для входной управляющей переменной Л113 (D): p/y(n) = max{maxmin{|ii/y(z)n'//yA(z)min[pD/((z)ji/rt(//)]}}J, (7.3) к zeZ где Л = 1.../, /- количество ЛПУ для ЛПЗ (D). Конечное значение и* выбирается по формуле М«(«’) = max{|iis;(и), цд; (w), (//)}. (7-4) Для регулирования, как правило, используется несколько управляющих воздействий. При этом для каждого управляющею воздействия будет составляться и оцениваться своя иерархическая структура. Используемый математический аппарат основан па методике решения многокритериальных задач оптимизации в нечеткой постановке, программное обеспечение, реализующее данную методику, схоже с пакетом МАИ и реализовано также в системе Matlab [40]. 163
Максимальное количество управляющих воздействий, т. е. число оцениваемых иерархий, равно 4. Максимальное количество входных переменных 12. Максимальное количество ЛПУ для од- ной входной лингвистической переменной 8. Таким образом, мак- симальное количество ЛПУ составляет 384. Сначала пользователь оценивает функции принадлежности всех качественных значений, попарно сравнивая количественные элементы по степени их соответствия качественному понятию по девятибалльной вербальной шкале. Результаты выдаются в чис- ленном и графическом виде (рис. 7.3). Рассчитывается отношение согласованности для каждой оцениваемой функции принадлежно- сти. Затем оцениваются приоритеты лингвистических переменных, ЛПУ и достоверность ЛПУ. Вводит© количество числовых значений, будете количественно оценивать качественны© значения 1!1ЕПуск| Fiu«№No. 1 QmENU ’ T|^Pairibioi)Rit, | 0.'( Рис. 7.3. Программный комплекс для проектирования НЛР Оценка проводится так же, как в программном обеспечении для решения многокритериальных задач в случае рассмотрения пятиуровневой неполной иерархии. При работе с программой пользователь может прервать ее, записать данные в файл, а затем продолжить работу с прерван- ного места. 164
Вся формализованная информация автоматически записываегся в файлы БД разрабатываемого нечеткого логического регулятора. Блоки, реализующие операции взятия максимума, минимума, максиминную композицию, фазификацию и дефазификацию, на- писаны на языке C++. Блоки фазификации используют файлы БД разрабатываемого нечеткого логического регулятора. Блоки, реа- лизующие операции импликации, могут быть соединены в любом порядке, и, таким образом, могут реализовываться любые по структуре ЛПУ. Для реализации нечеткого логического регулятора может ис- пользоваться любой свободно программируемый контроллер, имеющий возможность использовать блоки, написанные на языке C++, т. е. любой контроллер, для программирования которого су- ществуют подобные средства. 7.2. Математическая модель системы управления приводом CD-ROM Изложенный в разд. 7.1 подход используется для проектирова- ния и реализации нечеткого логического регулятора для позицио- нирования оптической головки накопителя на CD-ROM. В современных накопителях на CD-ROM информация записана в виде непрерывной спиральной дорожки, «закрученной» на 2000 оборотов. Сканирование начинается с внутренней части диска. При воспроизведении поддерживается постоянной линейная ско- рость вращения диска, и угловая скорость вращения диска умень- шается в 2,5 раза при перемещении головки лазера с внешнего ра- диуса диска на внутренний. Задачей системы управления является поддержание и обеспече- ние движения считывающего луча лазера по спиральной информаци- онной дорожке диска и подведение луча к произвольному информа- ционному участку диска по команде операционной системы. Система управления накопителем состоит из четырех подсис- тем управления [41, 42]: 1) система автофокуса; 2) система слежения за дорожкой (система автотрекинга); 3) система позиционирования оптической головки; 4) система стабилизации скорости вращения диска (система Управления шпиндельным двигателем). Функциональная схема системы воспроизведения компакт- диска представлена на рис. 7.4. 165
выход Рис. 7.4. Функциональная схема системы воспроизведения компакт-дисков: ОЗУ - оперативное запоминающее устройство, ПЗУ - постоянное запоминающее устройство После считывания загрузочной записи операционной системе персонального компьютера и служебным регистрам привода пере- дается информация о содержании конкретного диска и о порядке размещения данных на нем (логический формат и адресация дан- ных), т. е. передается так называемая таблица содержания (the table of contents - TOC) или таблица перехода (ТП). 166
При поступлении управляющего сигнала привод, используя ин- формацию, считанную из загрузочной области, осуществляет пере- мещение лазера к началу информационного блока, который был за- требован. При этом выполняются следующие действия: система позиционирования головки, в которую входит шаговый двигал ель и редуктор с реечной передачей, перемещает па заданный радиус го- ловку с лазером, а система управления шпиндельным двигателем, на валу которого закреплен диск, снижает' число оборотов гем больше, чем на больший радиус перемещен лазер. При обнаружении начала информационного блока система автотрскиига поддерживает лазер точно на информационной дорожке, а система управления шпин- дельным двигателем постоянно снижает скорость вращения диска. Задачи автофокусировки и трехлучевого автотрекипга не зави- сят от решения двух других задач управления и решаются авто- номно на протяжении всего процесса воспроизведения, поэтому далее они не обсуждаются. Рассмотрим систему управления скоростью вращения шпиндель- ного двигателя и систему позиционирования оптической головки. Шпиндельный двигатель предназначен для вращения компакт- диска. Компакт-диск устанавливается непосредственно на вал шпиндельного двигателя и фиксируется на нем при помощи крон- штейна с постоянным магнитом. В начальный момент времени (при чтении загрузочной инфор- мации диска - ТОС) скорость вращения компакт-диска составляет 500 об/мин. В зависимости от места расположения нужной информа- ции на носителе число оборотов шпиндельного двигателя уменьшается согласно зависимости: чем больше радиус расположения начального фрагмента данных, тем меньше скорость вращения. На максимально большом радиусе скорость вращения составляет 200 об/мин. Таким образом, регулирование скорости вращения диска производится по нелинейному закону в пределах от 500 до 200 об/мин. Функциональная схема системы управления шпиндельным двигателем (системы стабилизации скорости вращения диска) представлена на рис. 7.5. Математическая модель (передаточная функция) шпиндельно- го двигателя (двигателя постоянного тока) имеет вид W(s) =--------------, (7> + 1)(7> + 1) (де -электромеханическая постоянная времени; 7) электрическая постоянная времени двигателя; К,, - коэффициенг передачи двигателя. 167
Рис. 7.5. Функциональная схема системы стабилизации скорос ти вращения: ГП таблица переходов, ЦАП - цифро-аналоговый преобразователь Функциональная схема системы позиционирования оптической головки представлена на рис. 7.6. Рис. 7.6. Функциональная схема системы позиционирования оптической головки В качестве шагового двигателя в двухскоростных накопителях ис- пользуется двигатель постоянного тока, поэтому его математическая модель ai 1алогична матемап ической модели шпиндельного двигателя. В двухскоростном накопителе используется двигатель марки FF-030PK. Его отечественный аналог - ДП20-1-4-12-Р11 имеет следующие основные характеристики [43]: Тм = 0,015 с; Д = 0,000125 с; Ка = 0,035. Стабилизация вращения двигателя осуществляется с помощью корректирующего устройства, которое имеет следующую переда- точную функцию: 168
w , x 0,372s3 + 25,75? +50,515л + 1 rrk (l?) — 2 •------————— ----------. 0,00222? +0,149?+s + l В качестве редуктора используегся червячная передача с ко- эффициентом передачи СО,. / = —£- = 20, “к где (»д - угловая скорость вращения двигателя, а сок - скорость вращения зубчатого колеса. Реечная передача обеспечивает радиус позиционирования счи- тывающей головки Rn =f К dt, где Vn = ык RK ~ скорость линейного перемещения лазерной голов- ки, a RK = 10 мм - радиус колеса. Значение числа шагов головки, снимаемого с датчика положения, где К, ~ 62500 - коэффициент пересчета радиуса позиционирова- ния в число шагов. Уравнение обратной связи: A7V = /73 - N, где М - заданное значение числа шагов головки лазера (поступает с таблицы пе- реходов). Функциональная схема системы позиционирования оптической головки и системы стабилизации скорости вращения вала двигате- ля представлена на рис. 7.7. На вход таблицы переходов ТП с таб- лицы содержания ТОС поступаст' временная метка начала инфор- мационного блока. Таблица переходов ТП представляет собой набор аппроксими- рованных дискретных значений функций изменения требуемой и реальной скоростей перемещения оптической головки в зависимо- сти от радиуса позиционирования, которые записываются в посто- янное запоминающее устройство ПЗУ и оперативное запоминаю- щее устройство ОЗУ, при этом увеличение степени дискретизации приводит к потере быстродействия, а ее уменьшение - к позере точности. 169
Уцромом сравнения Учройс mo ср ir нении hjjiniiHue IIM'ICIIliC -* ЦЛИ * I [euif коррекции Цени коррекции Рис. 7.7. Функциональная схема систем стабилизации скорости вращения и позиционирования оптической головки Из таблицы перехода на вход системы позиционирования головки поступает радиус позиционирования считывающей головки (число шагов головки лазера). Далее осуществляется захват дорожки точной системой, ее сопровождение и декодирование информации. По окон- чании декодирования в устройстве сравнения проводится сравнение считанной временной метки с заданной и выдача корректирую!цего управления. При этом системой снова затрачивается определенное время на разгон/торможение диска для следующего захвата после реализации корректирую!цего управления. Серьезным недостатком существующих систем управления яв- ляется необходимость использования весьма грубой процедуры поиска начала информационного блока, основанной на информа- ции из таблицы переходов, которая является трудноформализуе- мой структурой, уникальной для каждою носителя. Для более точного регулирования скорости вращения диска предложена система координации систем позиционирования го- ловки и управления шпиндельным двигателем [44]. Так как модель взаимодействия двух локальных подсистем управления является трудноформализуемой, для реализации нечетких правил коорди- нации этих систем используется нечеткий логический регулятор [45]. Это позволяет установить более тесную взаимосвязь между локальными подсистемами и добиться тем самым более высокого качества управления и скорости реакции системы. 7.3. Нечеткий логический регулятор для позиционирования оптической головки привода CD-ROM В первом приближении можно считать, что время поиска систе- мой необходимой информационной дорожки, т. е. заданного номера 170
витка, не зависит от скорости вращения шпиндельного двигателя, т. е. от работы системы стабилизации скорости вращения. Рассмотрим систему позиционирования оптической головки, в которой вместо таблицы переходов и устройства сравнения ис- пользуется нечеткий логический регулятор. Это позволяет более точно регулировать положение оптической головки, что снижает затраты времени на поиск информации, а также дает возможность использовать одну и ту же процедуру управления для накопителей с различной плотностью записи. Иерархическая структура задачи разработки модели нелегкого логического регулятора для позиционирования оптической голов- ки привода CD-ROM представлена на рис. 7.8, где A/V - N3 N отклонение текущего числа витков спирали N от заданного TVg. Рис. 7.8. Иерархическая структура задачи разработки модели нечеткого логического регулятора для позиционирования оптической головки привода CD-ROM Нечеткие правила позиционирования оптической головки имею!' следующий вид. ЛПУ1: «если A/V «отрицательно большое» (уменьшается номер витка), то Ан «отрицательно большое» (уменьшается число шагов)»; ЛПУ2: «если AW «положительно большое» (увеличивается номер витка), то Ад «положительно большое» (увеличивается число шагов)». 171
Здесь Ли - отклонение текущего числа шагов головки лазера от отклонения, полученного на предыдущем шаге. Для формализации всех качественных значений используется программный комплекс для разработки модели нечеткого логиче- ского регулятора [40]. Мы имеем два качественных понятия, задействованных в ЛПУ: «отрицательно большое» и «положительно большое». Значение озтслонения числа витков спирали изменяется от -2000 до 2000. Для получения функций принадлежности возьмем девять значений из указанного интервала: ATVj равно -2000; AV2 равно -1500; АЛз равно -1000; AV4 равно -500; AV5 равно 0; AV6 равно 500; АУ7 равно 1000; АА8 равно 1500 и ДМ, равно 2000. Далее эти коли- чественные значения попарно сравниваются между собой по сте- пени их соответствия рассматриваемым качественным понятиям. При этом, например, для получения функции принадлежности по- нятия «отрицательно большое» при сравнении значений отклоне- ний -2000 и 0 эксперз' отвечаез' на вопрос, насколько отклонение количества витков -2000 больше соответствует' качественному по- нятию «отрицательно большое», чем отклонение количества вит- ков 0. Таким образом, заполняется вся матрица попарных сравне- ний и рассчитывается функция принадлежности понятия «отрица- тельно большое». Затем заполняется матрица попарных сравнений для получения функции принадлежности качественного понятия «положительно большое» и рассчитывается его функция принадлежности. Функции принадлежности качественных величин «отрица- ние. 7.9. Функции принадлежности качественных значений лингвистических переменных тельно большое» и «положи- тельно большое» получены оди- наковыми для всех переменных и представлены на рис. 7.9 (1 - «отрицательно большое» и 2 - «положительно большое»). Далее полагаем, что имеется 9 качественных значений состоя- ний наблюдения. Функции при- надлежности этих качественных значений получены аналогично функциям принадлежности каче- ственных значений переменных, используемых в ЛПУ, и пред- ставлены на рис. 7.10 и 7.11. На 172
рис. 7.10 изображены функции принадлежности значений: 1 - «большое отрицательное»; 2 - «достаточно большое отрицательное»; 3 «небольшое отрицательное»; 4 - «малое огрицателыюе»; 5 - «среднее», а на рис. 7.11: 1 «малое положительное»; 2 - «небольшое положительное»; 3 - «достаточно большое положительное»; 4 - «большое положительное» Рис.7.10. Функции принадлежности Рис. 7.11. Функции принадлежности качественных 31 гачений состоя!<ий качестве! 1ных значений состояний наблюдения наблюдения Далее рассчитывается степень значимости и достоверности ЛПУ. В данном случае веса полученных правил одинаковы. Для определения степени достоверности каждого правила в за- висимости от текущей ситуации, т. е. от текущего значения на- блюдения, необходимо получить значение приоритета каждого текущего состояния наблюдения по каждому правилу. Следова- тельно, необходимо получить 18 значений приоритетов для 9 ка- чественных значений и по 2 правилам. Для этого нужно заполнить последовательно 18 матриц попарных сравнений размером 3 х 3, в которых сравниваются между собой качественные значения - «от- рицательно большое», «положительно большое» и текущее каче- ственное значение отклонения числа витков по степени их соот- ветствия каждому правилу. Например, при сравнении значения «большое положительное» со значением «отрицательно большое» по степени их соответствия ЛПУ2 «если ДУ «положительно большое», то Дя «положительно большое»», наибольший приоритет получит качественное значе- 173
ние текущего данного наблюдения «большое положительное». Аналогично заполняются все 18 матриц попарных сравнений и рассчитываются степени достоверности правил в зависимости от текущих качественных значений числа витков. При получении управления, г. е. отклонения числа шагов го- ловки лазера, эти значения учитываются путем умножения на функцию принадлежности текущего качественного значения числа витков по формулам (7.1 7.4). Функциональная и структурная схемы системы позициониро- вания оптической головки с нечетким логическим регулятором представлены па рис. 7.12 и 7.13 соответственно. Л/V пир J I Un и коррекция Шаговый j .чвигагель • ’Поз инион» Ними датчик ।— Рис. 7.12. Функциональная схема системы позиционирования оптической головки с нечетким логическим регулятором Рис. 7.13. Струкгурная схема системы позиционирования оптической головки с нечетким логическим регулятором Моделирование проведено в системе Matlab при помощи встроенного в него пакета программ Simulink. При этом нечеткий логический регулятор программировался как функция системы Matlab, которая встраивалась в схему. Результаты моделирования представлены на рис. 7.14 и 7.15. На рис. 7.14 представлен переходной процесс для числа витков диска ./Упри входном воздействии (заданном числе витков), равном 200, а на рисунке 7.15 переходной процесс для числа витков дис- ка ./V при входном воздействии, равном 2000. 174
Рис. 7.15. Переходной процесс при 7V3 = 2000 Рис. 7.14. Переходной процесс при = 200 Время переходного процесса при N, = 200 равно 50 мс, при N3 =2000 равно 370 мс. Таким образом, приближенное значение среднего времени переходного процесса составляет 210 мс, а приближенное зна- чение среднего времени переходного процесса (среднее время доступа к информации) на аналогичных двухскоростных дисках равно 300 мс [46]. Моделирование системы позиционирования оптической голов- ки для двухскоростного привода с использованием нечеткого ло- гического регулятора вместо таблицы переходов и устройства сравнения показало, что средняя скорость доступа к данным уве- личивается в накопителе примерно на 30 %. Другими словами, не- четкий логический регулятор оптимизирует один из критериев ка- чества управляемой системы, а именно быстродействие. Таким образом, используя нечеткий логический регулятор, можно решить проблему увеличения скорости доступа к информа- ции и увеличения емкости дисков, не прибегая к серьезным конст- руктивным изменениям. 7.4. Реализация нечеткого логического регулятора на контроллере Ремикоит Р-130 Объект управления в системе с нечетким регулятором пред- ставлен цифровой моделью - динамическими звеньями с переда- точными функциями апериодического звена и звена чистого за- 175
паздывания (постоянная времени Т= 60 с, коэффициент усиления К-\, время запаздывания т = 2 с). В качестве лингвистической переменной принята переменная, ха- рактеризующая рассогласование (ошибку) с [47]. Пересекающиеся не- четкие множества (рис. 7.16) разбивают множест во возможных значе- ний сигнала рассогласования на пять диапазонов, определяя соответст- венно пять значений линт вист ической переменной (ошибки е): «боль- шая отрицательная», «средняя отрицательная», «нормальная», «сред- няя положительная», «большая положительная». Регулирующее воз- действие представлено функциями принадлежности такого же вида. Дефазификация переменной регулирующего воздействия осуществля- ется по методу определения центра тяжести. Рис.7.16. Функции принадлежности сигнала рассогласования и регулирующего воздействия Функциональная схема системы с нечетким регулятором (рис. 7.17) состоит из блока формирования задающего воздейст- вия, блока выделения сигнала рассогласования, блока нечеткого регулирования, объекта управления и блока отображения и опера- тивного контроля. В блоке нечеткого регулирования реализуются функции фазификации, обработки правил и дефазификации. SCADA-система Трейс Моуд использована как средство гра- фического отображения основных параметров системы, переход- ных процессов, а также как средство оперативного управления ин- тересующими пользователя параметрами системы. Возможности оперативного управления в системах на основе контроллеров Ремиконт Р-130 па сегодняшний день существенно ограничены и обусловлено это в основном следующим: • оперативное управление жестко привязано к лицевой панели, так как оператор-технолог должен находиться в непосредственной близост и от нее; 176
• лицевая панель жестко ориентирована (конструктивно и функционально) на параметры контура регулирования при тради- ционном ПИД-регулировании. Рис. 7.17. Функциональная схема системы с нечетким регулятором Для организации дистанционного оперативного управления, нечеткого или другого нетрадиционного для Р-130 способа регу- лирования требуется специальное решение, которое обобщенно можно сформулировать как создание новой, виртуальной, свобод- но конфигурируемой лицевой панели [48]. Такая лицевая панель была создана с использованием SCADA- системы Грейс Моуд, которая использовалась как средство графи- ческого отображения основных параметров системы, переходных процессов, а также как средство оперативного управления интере- сующими пользователя параметрами системы. В редакторе базы каналов создан узел (тип «без автопостроения», подтип «малый»), в котором использованы для различных конфигураций аппаратных средств дискретные и аналоговые входные и выходные каналы (от 13 до 15, в зависимости от конфигурации) подтипа КОНТР 1 с дополнением к подтипу Ремиконт-130, связанные с параметрами и сигналами системы, подлежащими наблюдению и изменению (для отображения задающего воздействия, сигнала рассогласования, выходного сигнала объекта). Экранная форма представляет собой сочетание элементов статического текста (для обозначения эле- ментов формы), динамического текста (отображение задающего воздействия, сигнала рассогласования, выходного сигнала объек- та), тренда (отображение задающего воздействия, выходного сиг- нала объекта), а также других управляющих динамических форм. Проведенные исследования показали, что можно существенно Расширить функциональные возможности контроллеров Ремиконт 177
Р-130, уже находящихся в эксплуатации. В частности, возможно осуществить дистанционную автонасзройку регуляторов. При этом уменьшается трудоемкость процессов автонастройки и улучшаются эргономические условия деятельности операторов, открываются но- вые возможности в реализации современных методов регулирования, таких как нечеткое и нейронечеткое регулирование [48, 49]. 7.5. Нечеткий алгоритм поисковой системы автоматической оптимизации В промышленности существует значительное число объектов управления, которые имеют статическую характеристику экстре- мального типа, например котлоагрегат по производству горячей воды или пара, нагревательные печи различных типов в металлургии. Та- кие объекты управления имеются в ракетной и авиационной технике, в химии, экологии и т. д. Построение для них систем автоматической оптимизации позволяет обеспечить функционирование объекта на выгодных режимах. В зависимости от критерия управления на эзих режимах достигается максимум коэффициента полезного действия, минимум потребления энергоресурсов, минимум выбросов в атмо- сферу продуктов сгорания ит. п. [50, 51, 52]. Однако под воздействием монотонных возмущений, обуслов- ленных наличием горизонтального и вертикального дрейфа харак- теристики, статическая характеристика может изменять свою форму и перемещаться по координатной плоскости. Случайные возмуще- ния, обусловленные ошибками измерительной системы, искажают измерения выхода объекта. Традиционные системы управления не могут обеспечить в этих условиях поддержание рабочей точки в экстремальном положении. Для управления такими объектами применяются поисковые сис- темы автоматической оптимизации. Поэтому решение проблемы синтеза, анализа и практической реализации поисковых систем авто- матической оптимизации для объектов управления, математическая модель которых может быть представлена в виде последовательного соединения нелинейного звена с экстремальной статической характе- ристикой и звена, описываемого обыкновенным линейным диффе- ренциальным уравнением заданного порядка с известными коэффи- циентами уравнения, при воздействии на объект монотонных и случайных возмущений имеет значительный практический интерес. Использование нечеткой логики можез' быть перспективным при реализации поисковых систем автоматической оптимизации 178
для адаптации таких параметров поиска, как число измерений вы- хода объекта, величина рабочего шага, величина пробного шага и других параметров [53 57]. Рассмотрим простейший алгоритм системы автоматической оптимизации с парными пробными шагами. Пусть имеем экстремальную зависимость у = ./W + где у - выход объекта; х - его вход; - случайные возмущения вы- хода, описываемые центрированным стационарным случайным процессом. На вход объекта подаются пробные смещения ± q от- носительно значения Тогда (/+1)-й шаг поиска экстремальной точки производится в соответствии с алгоритмом j « | «t Лж = Xi + h sign{ - У у h-У у, } = Xi + h signA, где y;( и у,-, -соответствующие измерения выхода объекта; Л - ве- личина рабочего шага; sign{*} - функция знака, п - число измере- ний выхода; А разность средних арифметических. Параметры поиска Л, q, п в процессе функционирования выби- раются исходя из априорных сведений о типе зависимости у - у(л), и затем их величины не изменяются. Однако очевидно, что качество работы системы автоматической оптимизации можно существенно улучшить, если перечисленные параметры будут автоматически изменяться в зависимости от того, в какой области относительно экстремального значения находится рабочая точка. Например, при фиксированных параметрах q и п для зависимос ти, изображенной на рис. 7.18, величина h может быть большой, а по мере приближения к максимальному значению величина h должна уменьшаться, т. е. тактика поиска должна быть более «осторожной». Для адаптации параметра h используются нечеткие высказыва- ния типа: «Если разность двух значений статической характеристики при пробных смещениях входа является очень большой, тогда необхо- димо выбирать очень большую величину рабочего шага» или 179
«Если разность двух значений статической характеристики при пробных смещениях входа является средней, тогда необходимо выбирать не очень большую величину рабочего шага» Рис. 7.18. Алгоритм с парными пробами поиска максимума статической характеристики у =/(х) Если выбрать семь идентификаторов для функций классов тре- угольного типа для параметров А и h, тогда этим высказываниям соответствуют следующие правила. ПРАВИЛО 1: «Если А = PL, то h = PL» (где PL - positive large - плюс большой) или 180
11РАВИЛО 2: «Если A — PM, то h — РМ» (PM - positive medium - плюс средний) и т. д. Для статической характеристики объекта у = fix'), имеющей симметричную форму относительно максимального значения, функции принадлежности треугольного типа выбираются с одина- ковыми наклонами во всем диапазоне варьирования входного сиг- нала (рис. 7.19). Здесь использованы следующие обозначения для идентификатора функций принадлежности: Н (-)min (+) max А Рис. 7.19 Функции принадлежности для симметричной зависимости у 181
ZR - нулевой ранг (zero range); NS - минус маленький (negative small); NM минус средний (negative medium); NL минус большой (negative large); PS - плюс маленький (positive small); PM - плюс средний (positive medium); PL - плюс большой (positive large). Таким образом, весь диапазон изменения статической экстре- мальной характеристики объекта разбит на совокупность нечетких множеств и характеризуется своим идентификатором, который берется из множества I={PL,...,ZR,...,NL}. Если же правая ветвь зависимости у =f (х) имеет менее крутой спад по сравнению с левой ветвью, то функции принадлежности должны иметь больший наклон для идентификаторов PS -PL (рис. 7.20). Каждая функция ц, треугольного типа при ее реализации в нечет- ком регуляторе аппроксимируется семью прямоугольниками. Типы функций принадлежности выбираются по результатам моделирования. Подобным способом может быть произведена адаптация пара- метров q и п, а также синтезированы соответствующие адаптивные алгоритмы поиска при наличии инерционности и транспортного запаздывания на выходе объекта. 7.6. Комбинированный нейро-нечеткий ПИД-регулятор Применение методов нечеткого управления все еще затрудни- тельно из-за сложности получения управляющих правил для про- цессов, в которых априорные знания недостаточны или не сущест- вуют вообще. Поэтому, очень важным для нечеткого управления является то, как получить управляющие правила [58, 59]. В этом разделе рассмотрен просто реализуемый и эффективный подход к генерированию нечетких управляющих правил автоматиче- ски в соответствии с традиционной линейной стратегией управления [59]. Этот метод менее отягощен вычислениями, чем самонастраи- вающиеся методы Мамдани и многие другие нейронечеткие регуля- торы, которые требуют off-line процедур обучения. Нечеткие правила генерируются автоматически через нечеткие входные переменные и 182
затем формируется соответствующее управляющее воздействие по упрощенной нечеткой схеме логического вывода. Посредством осо- бой комбинации ПИ- и ПД-алгоритмов стратегия нечеткого ПИД- управления реализована с помощью двух входных переменных, что значительно снижает количество управляющих правил без ухудше- ния качества регулирования. Гибкость регулирования обеспечивается настройкой фазовой плоскости решений. Параметры регулирования могут настраиваться в режиме on-line. Рис.7.20. Функции принадлеж! юст и для несимме гричной зависимое! и у f(x) 183
Рассматриваемый нечеткий регулятор реализован средствами пакета Concept и может эффективно управлять неизвестными про- цессами и обеспечивает хорошее качество. При разработке нечеткого регулятора следует решить две главные проблемы: 1) генерирование управляющих правил на основе системонеза- висимых знаний; 2) создание эффективного механизма логического вывода и максимально возможное уменьшение количества управляющих правил для обеспечения управления в реальном времени. Количество правил, учитывающих все возможные комбинации нечеткого 1I ИД-регулятора, равно п, х л2 х д3, где щ, л2, «з ~ число лингвистических термов трех входных переменных. Для гц = д2 = = Пу = 7 количество правил р = 343. При практическом приме- нении разработка и внедрение такой большой базы правил утомительная задача, которая, кроме того, требует больших ре- сурсов памяти и времени. Существуют разнообразные подходы к преодолению этой про- блемы. Типичный подход к уменьшению числа правил разделить ПИД-регулятор па две отдельные ПИ- и ПД-части. Для ПД-алгоритма регулирования 1/(д) = А'рх|(д) + А:г,х2(л), (7.5) где м(л) выход регулятора в дискретные моменты времени и; Кр - коэффициент усиления по ошибке; %i(«) = е(п) - ошибка системы; K,i коэффициент усиления по изменению ошибки; х2(п) = Де(н) - изменение ошибки, Де(и) = е(п) - е(п 1). Дискретный аналог (7.5) в нечеткой форме можно представить в виде [59] С(и) = уЛГ[ссЕ + (1-<х)с]. Здесь [/(и) е С, Е(п) е Х\, С(и) е Х2, К пропорциональный коэффициент усиления; а весовой коэффициент, который уста- навливает баланс между Е и С; у - регулирующий коэффициент; Х2 и U- базовые множества. Обычно при анализе нечеткие множества Е, С, U разбиваются следующим образом: Е = {-/V... , 1,0,1,...,7V}; 184
и= {-м,...,-1,о,1,...,лд, где N, М - нечеткие числа, обозначающие различные лингвистиче- ские термы в нечетких множествах. Определим регулирующий коэффициент как у = M/N, а параметр К учтем в соответствующем масштабном коэффициенте. Тогда при К - 1 6/ = у[аЕ + (1-а)с]. (7.6) Без потери общности нечеткую стратегию управления (7.6) мож- но описать в форме обычных нечетких правил следующего вида: R,: if е is Е, and Де is С, then и is Ц, (7.7) где Е, обозначает i-e правило, Е,е Хх ,С, g Х2, U, е U, U, рассчиты- вается по (7.6). Считая функции принадлежности для Е, С, U треугольными, симметрично распределенными, можно генерировать нечеткие правила в центральной точке каждой метки Е и С, используя (7.6). Общее количество правил зависит от числа лингвистических ме- ток входных переменных - ошибки и изменения ошибки: N= щ х п2. Далее проводится импликация всех правил и дефазификация выходной переменной. Следует отметить, что в данном алгоритме база правил форми- руется заранее один раз. Задача регулятора - сопоставлять реаль- ные данные с набором заданных правил, т. е. управление в данном случае негибкое, а фазовая плоскость решений геометрически яв- ляется плоскостью, а не поверхностью. В процессе генерирования базы правил параметр а должен быть определен заранее. При различных значениях параметра а имеет место различный набор управляющих правил. Если а по- стоянен, то имеем линейную стратегию управления и управляю- щие правила, рассчитанные по (7.6), подобны тем, что использу- ются в обычных нечетких регуляторах. Качество управления нечеткого регулятора значительно улучшает- ся при введении саморегулирующегося весового коэффициента а: |EL а = 1^(а2-«,) + «!, 0<а, <а2 ^1- (7-8) 185
Коэффициент а является функцией |£|, что дает возможность саморегулироваться весовому коэффициенту в зависимости от ва- риации ошибки. С помощью (7.8) влияние ошибки на управляю- щее воздействие будет автоматически возрастать с увеличением ошибки и наоборот. Свойство самонастройки параметра а делает управляющие правила адаптивными и гибкими, а стратегию управления (7.6) нелинейной. Процесс рассуждений состои т из грех этапов: вычисление сте- пени принадлежности между нечеткими входами и условиями ка- ждого правила; определение, какие правила следует использовать; расчет заключений выбранных правил для формирования оконча- тельного нечеткого выхода. Если количество входных переменных I и количество лингвис- тических термов для каждой нечеткой входной переменной и, го общее количество управляющих правил р = и. Очевидно, что ко- гда база правил велика, вычисления управляющих правил занима- ют много времени. Для увеличения эффективности логического вывода сгенерируем управляющие правила на печегкой фазовой плоскости решений (плоскость Е-С), показанной на рис. 7.21, которая отражает взаимо- связь между условиями и заключением базы нечетких правил. На не- четкой фазовой плоскости решений любая точка означает входную пару Р, (£„ С,). Если Р, находится в узле, го соответствующее управ- ляющее значение есть значение этого узла. Для точки, расположенной в любой другой позиции, соответствующее выходное значение опре- деляется областью соседних узлов, как показано на рис. 7.22. Предпо- лагая, что все входные нечеткие множества поделены одинаково, т. е. ач а I, степень принадлежности между текущим входом Р, (£„ С,) и условиями нечетких правил можно измерить следующим образом: mH=\-d^ (7-9) где dj, - евклидово расстояние между Р, и соседними узлами плос- кости решений, определяемое как где Гу- входная пара, соигвегсгвующая узлу н,у. Область соседних узлов ЛП1 определяет ся как окружнос ть с центром в точке Р, и радиусом а: 186
(7.11) Необходимо вычислить максимум четыре правила, соответст- вующих входной паре. -10 12 3 Рис. 7.21. Нечеткая фазовая плоскость решений Применяя метод нахождения центра тяжести, вычисление управляющего сигнала на выходе сводят к нахождению: 9 ик=~---------(7-12) 7=1 187
где q - количество вычисляемых правил; пу - значение узла в об- ласти А„;, ту (pt) - степень принадлежности входной точки Р, усло- виям j-го правила. Используя алгоритм (7.12), управляющий вы- ходной сигнал вычисляют только по q = 21 правилам в случае I не- четких входов. Рис. 7.22. Область соседних узлов Процедура нахождения управляющего сигнала состоит из сле- дующих шагов. Шаг 1. Измерить входные данные е, и Ле, и преобразовать их в соответствующие Е, и С,. Шаг 2. Сформировать точку Р, (Е„ Q) и определить область со- седних узлов на нечеткой фазовой плоскости. Шаг 3. Вычислить степень принадлежности между Р, и соот- ветствующими узлами, используя (7.9) и (7.10). Шаг 4. Вычислить численный управляющий выходной сигнал по (7.12). В процедуре нет вычислений функций принадлежности, что дает по меньшей мере два преимущества: 1) численное значение управ- ляющего выходного сигнала может быть получено непосредственно из входных данных без подробных процедур фазификации и дефази- фикации; 2) значительно возрастает скорость логического вывода. Для ПИ-алгоритма регулирования Л.и(п) = Крх{(п) +Kdx2(n). (7.13) Выражение (7.13) подобно (7.5). Следовательно, если мы фа- зифицируем (7.13) тем же способом, что и (7.5), и разделим нечет- 188
кое множество At/ на тс же термы, что и у нечеткого множества U, то получим уравнение, подобное (7.6). Используя один и тот же метод разбиения на термы и соответст- вующие масштабирующие коэффициенты для ПИ- и ПД- управляющих правил, можно реализовать общую базу нечетких управляющих правил. Это означает, что комбинированная ПИ- и ПД-стратегия управления может быть реализована па простой базе управляющих ПД-правил без каких-либо инкрементирующих пра- вил, т. е. для нечеткого ПИД-регулятора требуется только 49 вместо 343 или 98 правил. Структура комбинированного ПД- и ПИ- нечеткого регулятора показана на рис. 7.23. Здесь Ке и Кс входные масштабирующие факторы (коэффициенты), а К/х1 и Kpi выходные масштабирующие факторы и и Ли соответственно. Рис. 7.23. Структура комбинированного нечеткого регулятора Преимущество этого подхода значительное упрощение базы управляющих правил и, следовательно, значительное увеличение эффективности логического вывода. Недостатком является то, что параметры регулятора связаны друг с другом и должны настраи- ваться совместно. Эта проблема может быть решена введением параметрически обучающего и оптимизационного алгоритмов, таких, как алгоритмы на нейронных сетях. В основном используют три способа настройки нечетких регу- ляторов: 1) настройку масштабирующего фактора; 2) настройку функции принадлежност и; 3) изменение правил. 189
Способ настройки масштабирующих коэффициентов заключа- ется в следующем. Для реализации адаптации масштабирующего коэффициента в нечеткий регулятор встраивается нейрон с линей- ной функцией активации. Связь между входом и выходом нейрона описывается как и = г^и-] + w2w2, (7.14) Вводится эталонная модель, которая определяет желаемые ха- рактеристики системы. Параметры управления w, настраиваются согласно критерию минимизации стоимостной функции с помощью алгоритма обуче- ния методом обратного распространения с некоторыми модифика- циями: Ди(/) = sign кРем (0 + О') I ./=1 J (7.15) где kp,kj,ki - коэффициенты при пропорциональной, диффе- ренциальной и интегральной составляющих соответственно; ем = = ум -у, аум- выход эталонной модели. Далее находятся W| и wy W| = W| +1/| Ли; w2 = w2 + u2 Ли; (7.16) и вычисляется управление по формуле (7.14). Таким образом, по- лучаем комбинированный пейро-нечегкий регулятор, что и было сделано средствами пакета Concept. Объект управления представляем собой апериодическое зве- но с запаздыванием. На вход обьекта подается сигнал управле- ния в сумме со случайным шумом и сигналом с регулятора, с выхода снимается отработанный сигнал. Вычитая из задающего сигнала выходной, получаем текущее значение ошибки е. По- давая его на блок задержки по времени, получаем предыдущее значение ошибки и, вычитая его из текущего, получаем прира- щение ошибки Де. Далее выполняем фазификацию входных параметров (ошибки и изменения ошибки) путем умножения на 190
соответствующие коэффициенты. В результате этих преобразо- ваний получаем четыре пары точек (Е, С), которые определяют четыре соседних узла: (£’|, С|), (£), С2), (Е2, С|), (Е2, С2). Далее рассчитываем значения управления в каждом из узлов (щ, п2, л4) по выражению (7.8), формируя таким образом базу применяемых правил. Поскольку мы используем самонастраи- вающийся параметр, база правил каждый раз пересчитывается. Итоговое управляющее воздействие и\ рассчитывается по формуле (7.12). После этого необходимо сформировать общее управляющее воздействие, учитывая, что мы используем комбинированную базу правил для ПИ- и ПД-управления. Дефазифицируем значение щ умножением на соответствующие коэффициенты, получаем два значения: управление и приращение управления. Суммируя эти приращения, получаем интегральную составляющую управления. Далее каждую составляющую умножаем на свой весовой фактор, вычисляемый по формуле (7.15), и в сумме получаем окончатель- ное значение управляющего сигнала.
ЗАКЛЮЧЕНИЕ Ошибки расчета систем управления складываются из ошибок в исходных данных, ошибок модели и ошибок метода решения (численного метода). Для многоуровневых иерархических систем управления на- блюдается достаточно резкий рост ошибок исходных данных в зависимости от номера уровня управления, на котором проводится расчет. Рост ошибок обусловлен запаздыванием и искажением данных при передаче от уровня к уровню, фильтрацией их на каж- дом уровне и невозможностью передачи ряда данных с требуемой периодичностью ввиду их большого объема и ограниченной про- пускной способности каналов связи. Усложнение математической модели, учитывающей большое число замеряемых параметров, приводит к снижению погрешности, вносимой моделью. Однако при большой размерности моделей очень существенной становится составляющая ошибки, вносимая неточно- стью применяемых аналитических и численных методов. Время ре- шения задачи большой размерности также может стать неприемле- мым при ее решении в реальном масштабе времени. Особенности решения задач в реальном масштабе времени приводят к тому, что недостаток вычислительных возможностей (несоответствие вычисли- тельных ресурсов сложности задачи) эквивалентен, в некотором смысле, недостатку информации об условиях задачи. Ввиду большой доли погрешности исходных данных возникает и погрешность в расчете целевой функции, что приводит к значи- тельной зоне неопределенности при выборе оптимального режима работы системы. Отсюда возникает необходимость разработки ме- тодов, учитывающих неопределенность исходных данных при ре- шении задач многоуровневого управления технологическими про- цессами. Эти методы можно разделить на две основные группы. 1. Подавление влияния неточной информации с дальнейшим использованием обычных детерминированных алгоритмов. 192
2. Переход при наличии неточной информации на специальные алгоритмы (стохастические, нечеткие, интервальные). Учитывая условия существования моделей, сами особенности минимаксных операций аппарата нечетких множеств, удается до- биться робастности алгоритмов, т. е. их нечувствительности к ма- лым отклонениям от предположений (например, о пестациопарно- сти режима). Используя метод анализа иерархий, можно добиться робастности по функциям принадлежности. С помощью методов сведения задач управления в условиях не- определенности к детерминированному управлению строятся ре- гуляторы, обеспечивающие устойчивое поведение динамических систем при наличии неопределенности элементов математических моделей, вызванной несовершенством моделей (неточности пара- метров) или внешними возмущениями (неопределенности входов). При наличии границ неопределенностей элементов регуляторы используют эту информацию с применением обратной связи. При отсутствии данных об этих границах применяются адаптивные нечеткие регуляторы. Для оптимизации сложных распределенных систем приме- няются методы многоуровневого управления, основой которых является идея декомпозиции и координации. В результате де- композиции сложная система разделяется на более мелкие под- системы с такой взаимосвязью, которая позволяет глобальную задачу оптимизации преобразовать в локальные задачи оптими- зации, т. е. отдельные решения будут приниматься по ограни- ченной информации, без использования всего объема сведений. Переход к иерархической структуре управления сужает в общем случае множество допустимых стратегий, но одновременно снижает и уровень неопределенности, т. е. делает возможным получение более качественного решения.
СПИСОК ЛИТЕРАТУРЫ 1. Заде Л А. Понятие лингвистической переменной и его применение для принятия приближенных решений: Пер. с англ. М: Мир, 1976. 165 с. 2. Прикладные нечеткие системы: Пер. с англ. / Под ред. Т. Тэрано. М.: Мир, 1993. 368 с. 3. Демеиков Н.П., Мочалов И.А. Нечеткий логический регулятор в задачах управления // Промышленные АСУ и контроллеры. 1999. № 2. С.30-35. 4. Direct real-time control using knowledge-based techniques / Jager R.J., Krugsman A.J., Verbruggen П.В., Brunn P.M. // SCS. 1990. P. 61—65. 5. Jager R.J. Fuzzy Logic in Control. Ph.D. thesis, Delft University of Technology, Delft, The Netherlands. 1995. 16 p. 6. Astrom K.J., Wittcnmark B. Computer Controlled Systems: Theory and design. Stockholm: Prentice Hall. 1984. 400 p. 7. Mamdani E.A. Fuzzy Control - a misconception of theory and applica- tion // IEEE Expert - A Fuzzy Logic Symposium 9 (4). 1994. P.27 28. 8. Elkan C. The paradoxical success of fuzzy logic. H In Proceedings of the National Artificial Intelligence Conference. AAAI: MIT and AAAI Press. 1993. P. 698 -703. 9. Elkan C. The paradoxical success of fuzzy logic. // IEEE Expert - A Fuzzy Logic Symposium 9 (4). 1994. P. 3-8. 10. Zade L.A. Why the succecss of fuzzy logic is not paradoxial // IEEE Expert - A Fuzzy Logic Symposium 9 (4). 1994. P. 43-46. 11. Mamdani E.A. Application of fuzzy algorithms for Control of a simple dynamic plant//Proc. IEEE. Vol. 121. 1974. № 12. P. 1584 1589. 12. Caamu T. 7/. Принятие решений. Метод анализа иерархий: Пер. с англ. М.: Радио и связь. 1993. 315 с. 13. МЭК 61131-7. Программируемые контроллеры. Ч. 7: Программи- рование нечеткого управления. М: Измерительно-информационные техно- логии, 2004. 56 с. 14. Деменков Н.П. Языки программирования промышленных кон- троллеров / Под ред. К.А. Пупкова. М.: Изд-во МГТУ нм. Н.Э. Баумана. 2004.172 с. 15. Петров И.В. Программируемые контроллеры. Сшидаргные языки и приемы прикладного проектирования / Под ред. В.П. Дьяконова. М.: СОЛОН-Прссс. 2004. 256 с. 194
16. Леопенков А.В. Нечеткое моделирование в среде Matlab и FuzzyTECH. СПб.: БХВ-Петербург, 2003. 736 с. 17. Немецкое Н.П. Использование пакета Matlab для реализации нечет- кого управления // Промышленные АСУ и контроллеры. 1999. № 8. С. 29 31. 18. Деменков Н.П. Решение задачи энергосбережения при управлении кондиционером на основе нечеткой логики // Промышленные АСУ и контроллеры. 2000. № 1. С. 28-29. 19. Нечеткие множества в моделях управления и искусственного ин- теллекта / Под ред. Д.А. Поспелова. М.: Наука. 1986. 312 с. 20. Методы робастного, нейро-нечеткого и адаптивного управления: Учеб. / Под ред. Н.Д. Егупова. М.: МГТУ им. Н.Э. Баумана,2002. 744 с. 21. Деменков Н.П., Мочалов И.А. Полезность и границы применимо- сти нечеткого управления //Промышленные АСУ и кон 1 роллеры. 1999. №3. С. 21-23. 22. Деменков Н.П. Использование пакета Concept для нечеткого управ- ления работой парового котла И Промышленные АСУ и контроллеры. 1999. № 7. С. 20-22. 23. Деменков Н.П. Нечеткое управление в системе Грейс Моуд // Промышленные АСУ и контроллеры. 1999. № 5. С. 26-28. 24. Деменков Н.П. Алгоритмы нечеткого управления в задачах энерго- сбережения // Промышленные АСУ и контроллеры. 2002. № 10. С. 35- 39. 25. Борисов АН., Алексеев А.В., Вилюмс Э.Р. и др. Обработка не- четкой информации в системах принятия решений. М.:Радио и связь. 1989. 304 с. 26. Орловский С.А. Проблемы принятия решений при нечеткой ис- ходной информации. М.: Наука. 1981.208 с. 27. Нечеткие множества и теория возможностей / Под род. Р. Ягера. М.: Радио и связь. 1986. 391 с. 28. Веллман Р„ Заде Л.А. Принятие решений в расплывчатых условиях //Вопросы анализа и процедуры принятия решений. М., 1976. С. 172-215. 29. Кипи Р.Л., Райфа X. Принятие решений при многих критериях: предпочтения и замещения: Пер. с англ. М.: Радио и связь. 1981.560 с. 30. Кини Р.Л. Функции полезности многомерных альтернатив И Во- просы анализа и процедуры принятия решений. М., 1976. С. 59 79. 31. Фишбери П. Теория полезности для принятия решений / Пер. с англ. / Под ред. Н.П. Воробьева. М.: Наука. 1978. 352 с. 32. Helmer О. Analysis of the Future: The Delphi Method. Santa Monica: Rand Corporation, 1969. 300 c. 33. Михайлевич M.B. Замечания о дискуссии Дж. Дайра и Т. Саати /! Кибернетика и системный анализ 1991. № I. С. 97 102. 34. Деменков Н.П. Методика сравни тельного анализа SCADA-систсм // Приборы и системы управления. 1998. № 10. С. 40-42. 195
35. Грунина Г.С., Деменков Н.П. Пакет программ, реализующий метод анализа иерархий // Приборы и системы управления. 1996. № 7 С. 10-11. 36. Деменков Н.П. Проблемы сравнительного анализа SCADA-систем // Промышленные АСУ и контроллеры. 2001. № 4. С. 43-46 37. Деменков Н.П. SCADA-системы как инструмент проектирования АСУТП И Приложение к журналу «Информационные технологии». 2002. № И. 24 с. 38. Татаринов Ю.Б. Проблемы оценки эффективности фундамен- тальных исследований. М.: Наука. 1986. 227 с. 39. Фасфелд Г Эффективность научных исследований и разработок. М.: Экономика, 1986. 144 с. 40. Грунина ГС., Деменков Н.П. Про>раммный комплекс для проек- тирования нечеткого логического регулятора // Приборы и системы управления. 1997. №8. С. 19 21. 41. Оптические дисковые системы / Г. Боуохыоз, Дж. Браат, А. Хей- сер и др.: Пер. с англ. М.: Радио и связь, 1991. 280 с. 42. Николаев В.А. Компакт-диски и CD устройства. СПб.: Лань, 1997. 112 с. 43. Справочник по электрическим машинам: В 2 т. / Под общ. ред. Н.П. Копылова, Б.К. Клокова. М.: Энергоатомиздат. 1989. Т. 2. 688 с. 44. Грунина Г.С., Деменков Н.П., Евлампиев А.А. Системы управления накопителями информации на оптических дисках // Приборы и системы управления. 1998. № 3. С. 16- 19. 45. Грунина Г.С., Деменков Н.П., Евлампиев А.А. Решение многокри- териальных задач оптимизации в условиях качественной неопределенно- сти // Вести. МГТУ. 1998. № 1. С. 45 -53. 46. Pemberton Н. Reporting the latest news products and services of the CD-ROM industry// CD-ROM professional. 1994. Vol. 7. № 6. P. 13-14. 47. Деменков Н.П., Суханов В.А. Реализация нечеткого логического регулятора на контроллере Ремиконт Р-130 И Тр. IV Междунар. симпо- зиума «Интеллектуальные системы». М., 2000. 296 с. 48. Деменков Н.П., Онищенко А.В., Суханов В.А. Виртуальная па- нель к контроллеру Ремиконт Р-130 в задачах традиционного и нечет- кого регулирования // Промышленные АСУ и контроллеры. 2003. № 7. С. 43-45. 49. Реализация нечеткого регулятора на микроконтроллере Ремиконт Р-130 / С.В. Фролов, И.А. Елизаров, В.Н. Назаров, А.А. Третьяков // Про- мышленные АСУ и контроллеры. 2000. № 3. С. 54-57. 50. Деменков Н.П., Сенькин А.В. Система автоматической регенера- ции сажевого фильтра для дизельных двигателей // Экологические систе- мы и приборы. 1999. № 2. С. 10-12. 51. Деменков Н.П., Адаптивное управление с помощью нечетких су- первизоров//Промышленные АСУ и котроллеры. 1999. №4. С. 22-24. 196
52. Деменков Н.П., Матвеев В.А. Логико-лингвистические модели в экологических задачах городского хозяйства // Промышленные АСУ и контроллеры. 2003. № 2. С. 27-28. 53. Деменков Н.П. Решение задачи адаптации парамо ров в алгоритме поисковой оптимизации на основе нелегкой логики И Промышленные АСУ и контроллеры. 1999. № 10. С. 21-23. 54. Деменков Н П., Мочалов И.А. Адаптивная система автоматиче- ской оптимизации с нечеткой последовательной процедурой проверки статистических гипотез // Вести. Российского университета дружбы на- родов. Сер. «Кибернетика». 1999. № I. С. 31 42. 55. Деменков Н.П., Мочачов И.А. Нечеткая система автоматической оптимизации//Вести. МГТУ им. Н.Э. Баумана. Сер. «Приборостроение». 2000. № 1(38). С. 38-43. 56 Деменков Н.П., Мочачов И.А. Нечеткая логика в задаче фильтрации случайных возмущений // Промышленные АСУ и контроллеры. 1999. № 11. С.26-28. 57. Нечеткие вероятностно-статистические методы в задачах управления производственными процессами / Деменков Н.П., Мочалов И.А.. Петру- нин Н.Г. и др. 1(ромышленные АСУ и кош роллеры. 2002. № 4. С. 8 15. 58. Деменков Н.П. Особенности нечеткого адаптивного управления // Промышленные АСУ и контроллеры. 2000. № 3. С. 31-32. 59. Minyou С., Linkens D.A. A hybrid neuro-fuzzy P1D controller // Fuzzy Sets and Systems 99. 1998. P. 40-50.
ОГЛАВЛЕНИЕ Предисловие....................................................3 Глава 1. Основные понятия теории нечеткого управления.........14 1.1. Структура нечеткого логического регулятора...........14 1.2. Основные положения теории нечетких множеств, используемые при проектировании нечеткого регулятора.......16 1.3 Логические операции, высказывание, импликация, композиция.................................................23 1.4. Системы нечеткого вывода.............................25 1.5. Язык нечеткого управления.............................32 1.6. Нечеткая модель управления контейнерным краном........46 Глава 2. Алгоритмы нечеткого управления в пакете Matlab.......50 2 1. Fuzzy-библиотека пакета Matlab .....................50 2.2. Редактор системы нечеткого вывода.....................64 2.3. Редактор функций принадлежности.......................65 2.4. Редактор базы знаний..................................68 2.5. Подсистема для просмотра правил и схем нечетких выводов.70 2.6. Подсистема для просмотра полученных поверхностей......72 2.7. Система обогрева/охлаждения здания....................74 Глава 3. Алгоритмы нечеткого управления в пакете Concept......78 3.1. Библиотека Concept FUZZY для реализации нечеткого управления.................................................84 3.2. Фазификация входных переменых регулятора.............85 3.3. Анализ состояния объекта управления и определение степени воздействия на него........................................90 3.4. Дефазификация выходных переменных регулятора... ..92 3.5. Нечеткое управление работой парового котла............95 Глава 4. Алгоритмы нечеткого управления в пакете Трейс Моуд...101 4.1. Нечеткий регулятор FZCTR.............................104 4.2. Настройка FZCTR (SFZ)................................106 4.3. Нечеткая система обогрева/охлаждения здания..........106 Глава 5. Решение многокритериальных задач оптимизации в условиях качественной неопределенности.....................108 5.1.1 ^формализованные задачи оптимизации.... 110 5.2. Метод аддитивной функции полезности... ...113 5.3 Метод анализа иерархий...............................115 5.4. Сравнение метода аддитивной функции полезности и метода анализа иерархий............................... 123 198
5.5. Выбор SCADA-системы............................... 125 5.6. Решение общей неформализованной задачи оптимизации на основе метода анализа иерархий и теории нечетких множеств.127 Глава 6. Решение плохо формализованных задач оптимального управления................................................ 138 6.1. МАИ пакет программ для принятия плохо формализованных решений................................ 138 6.2. Сравнительный анализ SCADA-систем...................140 6.3. Оценка эффективности научно-исследовательских работ. ... 146 Глава 7. Решение задач нечеткого управления.................160 7.1. Разработка модели нечеткого логического регулятора......160 7.2. Математическая модель системы управления приводом CD-ROM...................................................165 7.3. Нечеткий логический регулятор для позиционирования оптической головки привода CD-ROM........................170 7.4. Реализация нечеткого логического регулятора на контроллере Ремиконт Р-130...........................................175 7.5. Нечеткий алгоритм поисковой системы автоматической оптимизации..............................................178 7.6. Комбинированный нейро-нечеткий ИИД-регулятор........182 Заключение..................................................192 Список литературы...........................................194
ОБУЧЕНИЕ, РАЗРАБОТКА И ЭКСПЛУАТАЦИЯ АСУ ТП ИнтелсисТ Учебно-научный центр при МГТУ им. Н.Э. Баумана «Интеллектуальные системы» предлагает услуги по профессиональной подготовке в области интеллектуализации про- изводственных процессов предприятия, мониторингу и управле- нию на базе промышленных контроллеров: ОАО «ЗЭиМ» Реми- конт Р-130, P-1301sa, КРОСС; ОАО «МЗТА» - Коптар; Schneider Electric - Modicon 984, Modicon TSX Quantum, Momentum, TSX Nano, Zelio; SCADA-систем: AdAstra - Трейс Моуд, Schneider Electric - Monitor Pro, Vijeo Look и др. Разрабатываем методы и системы интеллектуального управле- ния для решения экологических задач. ПРИ ОБУЧЕНИИ НЕЧЕТКОМУ УПРАВЛЕНИЮ Слушатели: • знакомятся с основными положениями теории нечетких множеств, их свойствами и операциями над ними; • изучают различные логические операции, включая логиче- ские соединения и импликации; • описывают рассуждения (умозаключения) с нечеткой логи- кой для одного правила и множества нечетких правил; • постигают особенности нечеткого управления на нечетких правилах, которые напрямую соединяют вход регулятора с его вы- ходом; • проводят анализ работы нечеткого регулятора с отношением его для различных регулируемых параметров; • знакомятся с принципами адаптивного нечеткого управления; • получают навыки по созданию нечетких регуляторов, ис- пользуя пакеты Matlab, Concept, Трейс Моуд (в зависимости от курса). Наш адрес: 105005, Москва, 2-я Бауманская, 5, МГТУ им. Н. Э. Баумана, каф. ИУ-1. Тел.: (095) 263-67-27. http://iul.bmstu.ru/, E-mail: intelsyst@iul.bmstu.ru