Содержание к диссертации
Введение
Глава 1. Анализ различных подходов к разработке интеллекту альных информационных систем 7
1.L Свойство интеллектуальности информационных систем 7
1-2. Методика нечеткого моделирования как способ формализации неопре деленности в описашш сложных систем 11
1,3. Цель и задачи исследования 20
Выводы по первой главе ., 21
Глава 2. Модели и методы аппроксимации неизвестной функции на основе продукционных правил 23
2.1. Варианты постановки задачи аппроксимации неизвестной функции 23
2.2. Лингвистическая модель представления информации 26
2.3. Типы нечетких моделей 40
2.4. Методы идентификации, основанные на нечеткой кластеризации 4S Выводы по второй главе 53
Глава 3- Построение методов нечеткого логического вывода . 54
3.1. Формализации нечеткого логического вывода 54
3.2. Свойства некоторых схем приближенных рассуждении 60
3.3. Функциональное представление нечетких логических связок . 6С
Выводы по третьей главе 89
Глава 4, Организация вычислительного эксперимента и анализ результатов 90
4.1.. Информационная среда экперпмента 90
4.2. Формирование моделей нечеткого логического вывода 93
4.3. Анализ результатов вычислительного экперпмента 103
Выводы по четвертой главе 128
Заключение
- Методика нечеткого моделирования как способ формализации неопре деленности в описашш сложных систем
- Лингвистическая модель представления информации
- Свойства некоторых схем приближенных рассуждении
- Формирование моделей нечеткого логического вывода
Введение к работе
Актуальность темы, В последние годы не только за рубежом, но п в нашей стране повысился интерес к исследованию проблем разработки интеллектуальных информационных систем (ИИС) и их внедрению в промышленную и непромышленную сферы. «Интеллектуальность» проявляется в таких аспектах, как управление неопределенностью, способность к обучению, прогнозированию и адаптации. Для обеспечения этих свойств применяются новые информационные технологии (мягкие вычисления, обработка нечеткой информации, нейросетевые методы, эволюционное моделирование), ориентированные на работу со знаниями. Важнейшим классом ИИС являются нечеткие системы — системы, для описания структуры и/или параметров которых используются аппарат теории нечетких множеств и нечеткая логика. В этом классе можно выделить системы, построенные на «сслп-то»-правилах, которые в дальнейшем будем называть нечеткими продукционными системами (НПС). Особенностью этих систем является то, что для описания поведенческих характеристик моделируемой системы используется лингвистическая аппроксимация, основанная на знаниях экспертов — высококвалифицированных специалистов предметной области. На вычислительном уровне НПС можно рассматривать как гибкую математическую структуру, которая способна аппроксимировать сложные (в том числе нелинейные) системы с высокой степенью точности. По сравнению с другими способами аппроксимации, такими как нейронные сети, НПС обеспечивает «прозрачное^* представление за счет использования естественного языка в форме продукционных правил с соответствующими механизмами (методами) нечеткого логического вывода, Являясь универсальным аппроксиматором, НПС входит в состав многих прикладных экспертных систем — управлении, прогнозирования, диагностики, принятия решения и др. Системы управления со встроенной НПС называются нечеткими системолш управления. Капиталовложения нромышлсшю развитых стран в исследования и разработку опытных образцов таких систем (в частности, нечетких контроллеров) исчисляются миллиардами долларов, при этом лидирующие позиции занимают японские фирмы.
Известно, что любую сложную систему можно аппроксимировать с любой заданной точностью, если подходящим образом подобрать функциональное представление нечетких логических связок, которые участвуют в модели НПС. В диссертационном исследовании центральной является именно проблема повышения точности аппроксимации за счет усовершенствования механизма нечеткого логического вывода, который является ядром НПС. Это обусловливает актуальность диссертационного исследования и полученных в его рамках результатов.
Работа выполнена в соответствии с научным направлением Воронежского государственного технического университета «Вычислительные системы и про-
граымно-аппаратные комплексы».
Цель и задачи исследования. Целью диссертационной работы является разработка специального математического и программного обеспечения механизма нечеткого логического вывода за счет выбора оптимальных комбинаций компонент для повышения качества проекта НПС. Для достижения указанной цели в диссертационной работе решаются следующие основные задачи.
Исследование возможностей формализации свойства интеллектуальности информационных систем на основе лингвистической модели,
Анализ подходов к проектированию и разработке НПС и представлению знаний, поддерживающих формат продукционных правил.
3- Выявление особенностей структуры и параметров модели НПС, влияющих па эффективность обработки информации. Исследование схем приближенных рассуждений, лежащих в основе механизма нечеткого логического вывода, для определения зависимости между его компонентами.
Генерация методов нечеткого логического вывода на основе различных подходов к реализации нечетких логических операций; организация вычислительного эксперимента и разработка рекомендаций для выбора оптимальных компонент.
Разработка специального математического и программного обеспечения НПСТ реализующего улучшенные методы нечеткого логического вывода.
Методы исследования основаны па основных положениях искусственного интеллекта, теории нечетких множеств и нечеткой логике, теории приближенных рассуждений, дискретной математики, теории принятия решений. Для представления экспертных знаний используется лингвистическая модель, в качестве основы исследования выступает методология нечеткого моделирования.
Научная новизна. В диссертации получены следующие результаты, характеризующиеся научной новизной:
множество механизмов (методов) нечеткого вывода, учитывающих функциональное представление нечетких логических связок, операций и схем агрегирования, методов дефазнфикации и позволяющих за счет этого учесть семантический аспект нечетких систем, а следовательно, повысить «прозрачностью и интерпретируемость модели ППС;
комплекс взаимосвязей между компонентами нечеткого логического вывода, полученных на основе теоретического исследования и анализа результатов вычислительного эксперимента и позволяющих определить наилучшие и запрещенные комбинации компонент для повышения степени обоснованности выбора параметров модели НПС;
система количественных характеристик для оценки нечетких импликации и методов дефазнфикации, позволяющая разработать рекомендации по конструированию методов нечеткого логического вывода при проектировании и разработке НПС;
- процедуры и схемы агрегирования иродукцпоных правил, отличающие
ся использованием принципа «нечеткого большинства» для определения весо
вых коэффициентов и позволяющие применять компромиссные стратегии при
управлении выводом;
- специальное математическое и программное обеспечение НПС, отличающе
еся улучшенными механизмами нечеткого логического вывода (выбор парамет
ров нечетких импликаций, модификация метода дефазификации, взвешенное
агрегирование продукционных правил, корректировка базы знаний на основе
ее визуального представления), позволяющее существенным образом повысить
качество проекта НПС.
Практическая значимость, В рамках диссертационного исследования разработаны рекомендации для конструирования механизмов нечеткого логического вывода и разработки специального математического и программного обеспечения, которые позволят повысить качество проекта нечетких систем различного назначения (в том числе нечетких контроллеров). Параметризация некоторых компонент нечеткого логического вывода придает НПС универсальный характер и наделяет гибкостью, что позволяет настраиваться на конкретную информационную среду, учитывающую специфику приложения.
Результаты внедрения. Результаты диссертационной работы используются в учебном процессе Воронежского государственного университета для студентов специальности «Прикладная математика и информатика» и Воронежского государственного технического университета для студентов специальности * Вычислительные машины, системы, комплексы и сети», а также в программном обеспечении устройств выпускаемых на предприятии ОАО «Автоматика» г, Воронеж,
Программное обеспечение ІШС для решения задачи нечеткого управления зарегистрировано в Государственном фонде алгоритмов ц программ.
Апробация работы. Материалы диссертации, ее основные положения и результаты доложены и обсуждены на международных и всероссийских конференциях: «Современные проблемы механики и прикладной математики» (Воронеж — 2004 г.); «Экономическое прогнозирование: модели и методы» (Воронеж — 2004-2007 гг.); «Современные сложные системы управления» (Воронеж — 2003 г); «.Интеллектуализация управления в социальных и экономических системах» (Воронеж — 2003 г.), а также на научных семинарах Воронежского государственного университета и Воронежского государственного технического университета.
Публикации- Основные результаты диссертационной работы опубликованы в 11 печатных работах, в том числе 2 — из списка изданий, рекомендованных ВАК РФ. В работах, опубликованных в соавторстве, лично соискателю принадлежат следующие результаты: [8] — методика расчета параметров функции принадлежности на основе эллипса, описывающего кластер; [б] — теоремы о вза-
имосвязи некоторых компонент нечеткого логического вывода, обзор основных моделей НПС; [7] — алгоритм решения задачи прогнозирования на основе логической модели НПС; [2] — генерация методов нечеткого логического вывода; [5] — новые схемы агрегирования правил в НПС; [9] — лабораторные работы: методы нечеткого логического вывода Mamdani и Sugeno; [10] — структура базы знаний для эллипсоидальных правил; [II] — технология программирования, алгоритмы, реализация; [1] — анализ результатов вычислительного эксперимента и методы улучшения механизмов нечеткого логического вывода.
Объем и структура работы. Диссертация состоит из введения, четырех глав, заключения, списка литературы, приложении. Работа содержит 153 страницы текста, включает 65 рисунков и 19 таблиц. Список используемой литературы включает 100 наименований.
Методика нечеткого моделирования как способ формализации неопре деленности в описашш сложных систем
Под нечеткой системой будем понимать сисісму, для описания которой используется аппарат нечетких множеств и нечеткая логика, при этом различают следующие способы такого описания:
1) нечеткая спецификация параметров системы (функционирование системы может быть описано алгебраическим или дифференциальным уравнением, в котором параметры являются нечеткими числами);
2) нечеткое (лингвистическое) описание входных и выходных переменных системы, которое обусловлено неточной информацией, получаемой от ненадежных датчиков, или качественной информацией, получаемой от эксперта;
3) нечеткое описание системы в виде совокупности «ссли-то» правил, отражающих особенности функционирования на качественном уровне.
Нечеткая система может обладать одновременно всеми перечисленными атрибутами.
Наиболее распространены нечеткие системы заданные посредством «сслп-то» правил т.е. нечеткие продукционные системы (НПС) (rule-based fuzzy systems). Далее будем рассматривать только эти системы, и для простоты, будем называть продукционные нечеткие системы — нечеткими моделями, независимо от их возможного применения.
Актуальность таких систм обусловлена следующими обстоятельствами. Для некоторых систем, таких как электромеханические системы, возможно получить математическую модель благодаря тому что физические законы, действующие в подобных системах хорошо изучены. Однако для большого количества практических задач получение знаний, необходимых для моделирования является трудоемкой и даже невыполнимой задачей. Это означает что четкие математические модели в таком случае построить невозможно или они слишком сложны для использования. Примеры подобных систем можно найти в химической, пищевой промышленности, биотехнологии, экологии, финансах, социологии и т.д. [17]. Заметим, что значительная часть информации об этих системах существует в виде знаний людей-экспертов, операторов, разработчиков. Эти знания слишком неполные и неконкретные для того, чтобы быть выраженными математически. Но для описания функционирования системы можно использовать естественный язык в форме «ссли-то правил. Продукционные нечеткие системы являются моделями, основанными па знаннях экспертов в данной области. С этой точки зрения нечеткие системы похожи на экспертные системы. Заметим, что точные вычисления с традиционными математическими моделями можно применить лишь, когда параметры и входные данные точно известны. Но это довольно нетипичный случай, поэтому аппарат моделирования должен уметь обрабатывать не только данные, но связанную с ними неопределенность. Интерпретация неопределенности может быть различна. Однако выяснилось, что далеко не все неточности можно обойти, используя стохастический аппарат. Для решения этих задач предложены различные подходы, в оеное которых лежат нечеткая логика и теория нечетких множеств.
По сравнению с другими интеллектуальными системами, нечеткие системы имеют следующие преимущества:
1) при одинаковых объемах входной и выходной информации, центральный блок принятия решений нечеткой системы становится компактнее и проще для восприятия человеком;
2) нечеткая логика может быть использована в системах, которые сложно математически смоделировать, т.е. в сильно нелинейных системах;
3) подход, основанный па правилах, позволяет эффективно представить знания эксперта;
4) непрерывные переменные могут быть представлены лингвистически, что облегчает понимание взаимосвязей системных переменных, упрощает разработку;
5) нечеткие системы могут быть менее восприимчивы к помехам и изменениям параметров, чю делает их более надежными;
(і) часто для управления сложными процессами, достаточно относительно небольшого количества продукционных правил, что приводит к упрощению разработки и повышению скорости выполнения в приложениях реального времени;
7) методология нечеткого моделирования реализована в пакетах Matlab, Fuzzy Tech (приложение В), поэтому даже неподготовленный специалист может разработать достаточно качественную систему.
Двумя основными источниками информации для построения нечетких моделей являются изначальные знания и измеряемые данные. Априорные знания могут быть скорее аппроксимирующие (качественные знания и эвристика), которые обычно приобретаются при помощи опроса экспертов, т.е. разработчиков процесса, операторов и т.д. Б этом свете, нечеткие модели могут быть рассмотрены как простые нечёткие экспертные системы.
Различают два подхода интеграции знании и данных в нечеткую модель,
L Знания экспертов, выраженные в вербальной форме, транслируются в набор «ссли-то» правил. В этом случае создаётся определенная структура модели, параметры в этой структуре (функции принадлежности, сингле-тоны заключений или параметры) могут быть подобранны, используя наборы данных вход-выход. Конкретный алгоритм подбора использует тот факт, что на вычислительном уровне нечёткая модель может рассматриваться как слоёная структура (ость), похожая па искусственные нейронные сети, к которым можно применить стандартные алгоритмы обучении. Этот подход обычно называют лейро-ивчёткое моделирование [18-20].
2. В процессе обучения для формирования правил никаких априорных знаний о системе не используется, а нечеткая модель строится из полученных эксперипентальных данных. В этом случае построенные правила и функции принадлежности могут отразить апостериорные интерпретации сущности системы. Эксперт, сталкпувшисть с повой информацией может изменить правила по своему усмотрению или создать новые. Кроме того, экперт может разработать дополнительные опыты для получения более полезных данных. Этот подход может быть назван получение правил. При данном подходе, нечеткая кластеризация является наиболее часто используемой техникой.
Эти два подхода могут быть комбинируются в зависимости от конкретной ситуации.
При разработке нечётких моделей .можно выделить два понятия: структура и параметры модели. Структура определяет гибкость модели в аппроксимации отображений. Параметры затем подбираются, чтобы система соответствовала полученным данным. Модель со сложной структурой возможно аппроксимировать более сложными функциями, но в тоже время она имеет менее общие признаки. Универсальность системы означает, что модель, пригодная для одного набора данных, будет пригодна и для другого набора, полученного с того же процесса. В нечетких моделях выбор структуры стоит в следующем выборе.
Лингвистическая модель представления информации
Рассмотрим случай, когда для восстановления зависимости у = f{x) используется совокупность пар нечетких множеств {№,У )} /=,, при этом Xf С F(X)} Yi С F{Y). В предположении, что У; при отображении / есть образ ХІ для любого г, можно использовать принцип обобщения [27], положив Vz( №(!/)= max {fiXi(x)}\ , что соответствует высказывании} чем в большей степени х принадлежит Х тем в большей степени у принадлеоісит Y\. Отсюда следует, что для любого х Є X выполняется неравенство которое эквивалентно включению Xj С 1 , Чтобы найти /$. ограничимся носителями S(Xi) и S(Yi) нечетких множеств Х{ и Yi соответственно. Тогда каж дая пара множеств (А , Yj) будет порождать только часть fi интсрссующсіі нас функции /. Таким образом, для каждого у 6 5(У ) необходимо решить уравнение
Заметим, что решением этого уравнения будут такие х S(Xi), что у = fi(x) и №хХх) — ІЇУІІУ) Нужно сказать, что fi не обязательно существует на S(Xi) л, кроме того, эта функция может определяться неоднозначно. Для получения / необходимо синтезировать все fi, при этом необходимо осуществлять проверку согласованности fi п /у, т.е. множества возможных значений f и fj не должны пересекаться для всех х S(Xj П -Y7).
В качестве альтернативы четкому определению / можно рассмотреть случай, когда f(x) есть нечеткое множество, описывающее возможные значения у. Эта ситуация может быть обусловлена различной степенью неточности или нечеткости данных, а также неясной природой отображения /. В этом случае задача сводится к нахождению нечеткого отношения R на А х Y, построенного из нечетких отношений ПІ, таких, чти для любого у jiYi{y) = maxmin {/1Х ),ЫХ У)) или в компактной форме Yi - ХІ о Я, где символ о — означает максмииную композицию.
Одним из решений данного уравнения будет прямое произведение Xi Х Y не заключающее идею причинной связи между ХІ и Y Здесь предполагается, что возможно одновременное появление ХІ п Yit п производится оценка истинности высказывания х принадлежит Х{ и у принадлежит YJ. Предполагая направленную интерпретацию, которая устанавливает причинную связь между Х-ь и Yi, можно рассматривать другие высказывания: если х принадлежит Х?у то у принадлежит Yi\ х принадлежит ХІ ттда и только тогда, когда у прииадлв-oicumYi. В первом случае Ri определяется с помощью нечеткой импликации, во втором — с помощью нечеткой эквнвапешщп. Каждое из трех рассмотренных выше высказываний Xf х Yit Xi — Yiy Xj Y( называется нечеткой гранулой. При этом нечеткая гранула Xi Х Yi выражает локальную информацию без какого-либо предварительного предположения о природе отображения /. При использовании - —» Yj заранее предполагается, что нечеткое отображение / рассматривается как «грубое» отображение, обратное к «грубому инъективно-му», поскольку, когда х Q Х{ исключается любое другое значение, отличное от Yf. Гранула Xi «- Yi используется в предположении, что / является однозначным отображением.
После определения Щ возникает проблема построения обобщенного отношения R. В случае определения нечетких гранул в виде Х х Yi обобщенное п отношение В ищется в виде R = (J Hi, если используются гранулы Xj — Yi и 7 = 1 і J. Х{ «- Yj, то R = f) R{ (здесь [j соответствует объединению нечетких отноше ний, f] — пересечению).
Таким образом, в этом случае задача аппроксимации неизвестной функции заключается в поиске нечеткого отношения R по гранулированной информации, определяемой нарами {{Хи Yi)Yl=v Если R определено то задача заключается в оценке нечеткого множества Y . соответствующего нечеткому множеству Xі по правилу Y = Ro Xі.
Важнейшая проблема — функциональное представление нечетких гранул. поскольку существует значительный арсенал нечетких операторов (включая параметрические формы), формализующих объединение и пересечение нечетких множеств. Кроме того, наряду с максминной композицией можно рассматривать и другие типы (max—)-композиций, где — невозрастающая на [0,1] и ассоциативная операция.
Неопределенность является неотъемлемой принадлежностью процессов принятия решений, управления, прогнозирования. Ее уровень обусловливает степень структурированности прикладной задачи. Интерпретация неопределенности может быть различной (рис. 2.2) [28].
В ситуации неизвестности информация о задаче практически отсутствует — это может быть связано с начальной стадией изучения проблемы. Недостоверность обусловливается, например, недостатком ресурсов, выделенных для сбора информации. Причинами возможной неоднозначности в различных случаях являются влияние внешней среды (физическая неопределенность) пли используемый экспертами профессиональный язык (лингвистическая неопределенность). Физическая неопределенность может быть связана как с наличием во внешней среде нескольких возможностей, каждая из которых случайным образом становится действительностью (ситуация случайности или стохастической неопределенности), так и неточностью измерений, выполняемых приборами (неточность). Для формализации неточности используется теория измерений, случайности — теория вероятностей.
Свойства некоторых схем приближенных рассуждении
Основной вопрос теории нечетких множеств и нечеткой логики связан с определением основных нечетких операций. Для семантических связок и и или, как п для их теоретико-множественного эквивалента — операций объединения и пересечения -- Л.Заде предложил использовать операторы взятия максимума и минимума. Необходимо заметить, что и в современных разработках по нечетким прикладным системам они играют значительную роль по той причине, что их физический смысл вполне очевиден, а система ([0,1], min, max) с математической точки зрения имеет хорошие характеристики. Позднее были введены другие операторы — в их числе алгебраическое произведение и сумма, ограниченное произведение и сумма [53]. Важнейшим достижением является создание параметризованного семейства определений [54], которые в случае необходимости допускают нестандартный выбор операторов, отражающих характерные особенности конкретного приложения. Как отмечается в [55], экспериментальные исследования того, какие же из предложенных математических операторов наиболее соответствуют понятию семантической связки, не позволяют прийти к определенным решениям, В связи с этим исследование свойств нечетких операций и определение возможности их использования при нечетком моделировании являются актуальными проблемами.
Целенаправленный подход к формированию различных математических операторов, использующихся для представления семантических связок, стал возможным благодаря введению треугольных (триапгулярных ) норм — Т-норм и S-конорм [56], причем Т-нормы определяют операции пересечения («ш , конъюнкция, Л), а S-конормы — объединения («или», дизъюнкция, V). Определение ЗЛ Треугольной нормой (Т-нормой) позиваєшся операция Т : [0,1] х [0.1] — [0,1] , удовлетворяющая следующим условиям: а) Т(х,у) — Т(у,х) — коммутативность; б) T(T(x,y),z) — T(x,T(yyz)) — ассоциативность; в) Т(0, 0)-0, Т(х,1) = Т(1,х) = х — ограниченность; г) (x t)A(y z) =Ф Т(х,у) T(t,z) — монотонность.
Треугольный нормы используются для моделирования конъюнкции или пересечения нечетких множеств. Двойственным понятием к Т-пормс является треугольная S-конорма, которая моделирует дизъюнкцию или объединение нечетких множеств, S-конорма также является коммутативной, ассоциативной, монотонной, но ограниченность задается в виде 5(1,1) = 1, S{xtQ) = S{Q,x) = x.
Требование ограниченности необходимо для того, чтобы результат операции находился в пределах выбранной шкалы.
Монотонность означает, что если аргумент изменяется в определенном направлении, то результат операции изменяется в том же или в противоположном направлении, что крайне важно при работе с неопределенностью. В практических задачах более естественным является условие строгой монотонности, которое особенно желательно при увеличении числа аргументов. Треугольная норма, удовлетворяющая свойству строгой монотонности, называется строгой. При этом от Т(х) требуется строгое возрастание по обоим аргументам, а от S[x) — строгое убывание.
Операция коммутативна (симметрична), если ее результат не изменяется при перемене мест аргументов. При агрегировании нечеткой информации, представленной иерархической структурой, это свойство характеризует нечеткие оценки как равноценные, при этом изменение аргумента на некоторую величину изменяет результат операции на ту же самую величину. Принятие гипотезы о коммутативности операции соответствует ситуации, когда результат операции зависит только от множества значений аргументов и не зависит от их порядка. Другое свойство — ассоциативность - также соответствует интуитивно предполагаемой семантике связок и и или. Под ассоциативностью понимается отсутствие иерархии среди аргументов или, иными словами, их одноуровпевость - при наличии иерархической структуры агрегирования нечеткой информации следует осуществлять по уровням. Для многоместных операторов свойство ассоциативности непринципиально. Заметим, что для моделирования соотношений между логическими связками % или, ие необходимо ввести такие операции, которые в определенной мерс были бы согласованными между собой. Законы дс Моргана - один из принципов такого согласования. Исследуемые Т-нормы представлены в табл. 4,5, S-копормы — в табл, 3,2
Более общие представления основных нечетких операций можно получить с помощью обобщенной нормированной разности [57] С (х,у) = x + yxy будем называть обобщенной алгебраической суммой. Считая, что п(х) = 1 — х и выполняются законы дс Моргана, можно определить обобщенное алгебраическое произведение, которое будет иметь вид F\x, у) = (1- t)(x + у) + txy -(1-1). От него можно перейти к обобщенному делению (1 - t) Л- iy При t — 1 обобщенные операции превращаются в обычные, так что С\х,у) = хфу, F1(xty) =ху, R1(x,y) = y-x. Dl(x,y) Будем рассматривать операции Gl(x,y) и Fl(x,y) в качестве базовых. На рис. 2.5 представлено поведение поверхностей (?(х, у) и Fl(x. у) .
Рассмотрим Gl{x}y) = х + у - txy при t 0 , Если Є (0,1) , то для обеспечения свойств операции объединения к Сг{х,у) необходимо применить оператор проектирования, тогда получим операцию G[(x, у) = min(l, х + у- txy), график которой лежит в единичном кубе. При t = 1, Gl[xty) — Gp(xyy). Если ( Є [1,2] , то всегда поверхность, соответствующая Gl(x y) , находится в пределах единичного куба, однако она имеет сложную форму и се трудно идентифицировать как операцию объединения или пересечения- не накладывая дополнительных ограничений. При дальнейшем увеличении t поверхность Gf(x: у) выходит за пределы единичного куба, поэтому чтобы ее ограничить необходимо перейти к операции вида &Ї (Х)У) — max(0,# +у - ixy).
Формирование моделей нечеткого логического вывода
Всего в табл, 4.8 будет М — \func\ х \imp\ х \адд\ х fnorm х \dcfuzz\ строк, где [func\ — количество аппроксимируемых функций, \гтр\ — количество операций импликации, \адд\ — количество операций агрегирования, гсоп?г — количество операций Т-нормы, de/wzz — количество операций дефазифпкации. В нашем случае М = 3024 .
Структура программы
Структура программы реализующего вышеописанный метод нечеткого логического вывода показана на рис. 4,4, Программа написана на языке C++ с использованием библиотек Standard Template Library (STL) и Boost (кроссплат-формспная свободно распространяемая библиотека для C++), Программа является независимым от платформы консольным приложением, способна работать в операционных системах Windows (среда разработки MS Visual C++), Linux (gec) к пр. Для визуализации результатов работы программы используется широко применяемая в научной среде программа GNUplot. Для управления GNUplot используются командные файлы на языке интерпретатора bash.
Назначение программы
Разработанная программа предназначена для проведения вычислительного эксперимента, цель которого заключалась в исследовании лингвистических моделей нечеткого логического вывода в следующих аспектах:
Условия применения программы Для функционирования программы необходимо располагать следующими инструментальными программными и техническими средствами: - ГОМ-совместимыН ПК — Pentium Ш 150 Mhz и выше; - оперативная память — 16Мб и более; - место на жестком диске — 350 Мб; - GNUplot; - Ghostscript; - операционная система — Windows, Linux; - компилятор MS Visual CH--I или усе; - библиотека Boost. Входные и выходные данные
Во время работы программы, взаимодействия с пользователем не осуществляется, все входные данные задаются в исходном тексте программы. Выходные данные представляют собоїі графические изображения агрегированных правил, результатов дефазификащш полученных по выбранному методу, а также данные об используемой импликации, композиции, схеме и операции агрегирования, методе дефазификащш. Структура взаимодействия с GNUplot показана па рис. 4,5. Внешний вид окна программы показан на рис, 4,6 Нечеткий логический вывод для ХІ Є {0, 0-2, 0.4, 0.6, 0.8, 1} показан на рис, 4.7, аппроксимирующая кривая полученная при помощи нечеткой системы показала па рис. 4.8. Описание модулей программы приведено в прилож. Г, Отличительные особенности программы
Методика нечеткого моделирования систем реализована в пакетах MatLab и FuzzyTech. Однако они позволяют использовать лишь простейшие модели НПС, Разработанная программа решает прежде всего исследовательские задачи, хотя, благодаря функциональной законченности составляющих: ее модулей, части программы могут быть использовапы для построения улучшенных методов нечеткого логического вывода в прикладных системах. Программа распространяется свободно с открытым исходным кодом и без каких-либо ограничений и гарантий. лений, наиболее часто выполняемые функции реализованы как инлайповыс (с использованием модификатора inline), а для поиска терма по его названию при-мсется хэширование. Для экономии памяти, в программе предусмотрен режим вычисления при котором матрицы правил предварительно не рассчитываются, & следовательно не занимают место в памяти, однако это приводит к значительному росту времени вычислений в случае анализа нескольких похожих методов нечеткого логического вывода. В общем случае, программа использует память только для хранения матриц и кривой аппроксимации, поэтому объем необходимой памяти зависит в основном от шага, дискретизации и количества правил. Для пяти правил и тага дискретизации 0.025 необходим объем памяти менее 123кБ.
Одна и та же комбинация параметров функции FS в формуле (4.3) будет давать немного различные значения ошибок для разных аппроксимируемых функций. Т.к. нас интересуют только те комбинации, которые дают хорошие результаты, независимо от того, какую функцию мы аппроксимируем, объединим комбинации отличающиеся только кодом func и усредним ошибки. Получится таблица 4.9. Если отсортировать табл. 4.9 по возрастанию столбца «Ошибка» и построить график, можно выделить три группы комбинаций (рис. 4.9а.)).