Алгоритмы и программные средства идентификации нечетких систем на основе метода роящихся частиц тема диссертации и автореферата по ВАК РФ 05.13.18, кандидат наук Синьков, Дмитрий Сергеевич

  • Синьков, Дмитрий Сергеевич
  • кандидат науккандидат наук
  • 2013, Томск
  • Специальность ВАК РФ05.13.18
  • Количество страниц 163
Синьков, Дмитрий Сергеевич. Алгоритмы и программные средства идентификации нечетких систем на основе метода роящихся частиц: дис. кандидат наук: 05.13.18 - Математическое моделирование, численные методы и комплексы программ. Томск. 2013. 163 с.

Оглавление диссертации кандидат наук Синьков, Дмитрий Сергеевич

СОДЕРЖАНИЕ

Сокращения

Введение

Глава 1. Нечеткое моделирование. Идентификация нечетких систем. Обзор проблемы исследования

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

1.2 Настройка параметров нечетких систем

1.2.1 Алгоритм дифференциальной эволюции

1.2.2 Определение роя. Основная идея алгоритма роящихся частиц

1.2.3 Концепция алгоритма роящихся частиц

1.2.4 Классификация АРЧ

1.3 Постановка задачи

Выводы

Глава 2. Алгоритмическое обеспечение систем нечеткой идентификации

2.1 Методика двухкритериального анализа нечетких систем

2.2 Алгоритмы генерации структуры нечетких систем

2.2.1 Алгоритм генерации базы правил нечеткой системы равномерным разбиением и перебором

2.3 Алгоритмы параметрической идентификации нечетких систем

2.3.1 Алгоритм роящихся частиц

2.3.2 Модифицированная топологии обмена решением в АРЧ

2.3.3 Гибридный алгоритм роящихся частиц совместно с МНК

2.3.4 Квантовый алгоритм роящихся частиц

2.3.5 Гибридный алгоритм роящихся частиц и метода дифференциальной эволюции

2.4 АРЧ в задаче классификации

2.5 АРЧ для извлечения знаний

2.5.1 Бинарный алгоритм роящихся частиц

2.5.2 Описание алгоритма поиска ассоциативных правил

2.5.3 Бинарный алгоритм роящихся частиц с нечетким оцениванием

Глава 3. Программная реализация средств идентификации нечетких систем

3.1 Аналоги разрабатываемого программного обеспечения

3.2 Выбор средств реализации

3.3 Программный комплекс идентификации нечетких систем

3.3.1 Моделирование системы

3.3.2 Диаграмма последовательности

3.3.3 Диаграмма классов

3.3.4 Диаграмма деятельности

3.3.5 Описание комплекса «Fuzzy System»

Работа с «Fuzzy System»

3.4 Веб-ориентированная система настройки нечетких систем

V w

3.4.1 Описание сайта

3.4.2 Описание панели администратора сайта

3.4.3 Описание создания проекта на сайте

3.4.4 Описание взаимодействия программного комплекса «FuzzySystem» и сайта

3.5 Программный комплекс извлечения ассоциативных правил

3.5.1 Технологические требования к системе

3.5.2 Моделирование системы

3.5.3 Формат выгрузки ассоциативных правил

3.5.4 Программа извлечения ассоциативных правил

3.6 Унифицированное представление нечетких систем

3.6.1 Описание нечеткой системы

3.6.2 Описание лингвистических переменных

3.6.3 Описание базы правил нечеткой системы

3.6.4 Описание таблиц наблюдений

3.6.5 Описание значений целевых функций

Выводы

Глава 4. Исследование разработанных алгоритмов

4.1 Исследование алгоритма роящихся частиц

4.2 Апробация методики построения Парето оптимальных нечетких систем

4.2.1 Построение Парето оптимальных аппроксиматоров на наборе данных 1

4.2.2 Построение Парето оптимальных аппроксиматоров на наборе данных 2

4.2.3 Построение Парето оптимальных аппроксиматоров на наборе данных 3

4.2.4 Построение Парето оптимальных аппроксиматоров на наборе данных diabetes

4.2.5 Построение Парето оптимальных аппроксиматоров на наборе данных ele-2

4.3 Исследование алгоритма роящихся частиц а задаче классификации

4.4 Исследование алгоритма роящихся частив задаче поиска ассоциативных правил

Выводы

Глава 5. Описание внедрения разработанных программных комплексов

5.1 Анализ ретроспективных данных в НИИКФ

5.1.1 Методика анализа и предобработки ретроспективных данных

5.1.2 Исследование эффективности комплекса

5.2 Описание внедрения комплекса извлечения ассоциативных правил на сайт компании «Хочу Суши»

5.2.1 Модуль предложения товаров в интернет-магазине

5.2.2 Тестирование работоспобности системы

Выводы

ЗАКЛЮЧЕНИЕ

СПИСОК ЛИТЕРАТУРЫ

ПРИЛОЖЕНИЕ А

ПРИЛОЖЕНИЕ Б

ПРИЛОЖЕНИЕ В

ПРИЛОЖЕНИЕ Г

ПРИЛОЖЕНИЕ Д

Сокращения

АРЧ - алгоритм роящихся частиц

ААРЧ - адаптивный алгоритм роящихся частиц

АМК - алгоритм муравьиной колонии

ДАМК — дискретный алгоритм муравьиной колонии

НАМК - непрерывный алгоритм муравьиной колонии

ПАМК — прямой алгоритм муравьиной колонии

МНК - метод наименьших квадратов

ГМ — градиентный метод

ДЭ - дифференциальная эволюция

НС - нечеткая система

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

ЛП - лингвистическая переменная

ФПВ — функция плотности вероятности

СКО - среднеквадратичная ошибка

CAO - среднеабсолютная ошибка

MSE - mean square error

Рекомендованный список диссертаций по специальности «Математическое моделирование, численные методы и комплексы программ», 05.13.18 шифр ВАК

Введение диссертации (часть автореферата) на тему «Алгоритмы и программные средства идентификации нечетких систем на основе метода роящихся частиц»

Введение

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

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

Для оптимизации параметров НС в работе выбран активно исследуемый в последнее время метод роящихся частиц, так как он в классическом варианте описывается простыми математическими формулами и легко поддается гибридизации с другими алгоритмами и методами. Выбор метода роящихся частиц основан еще и на том, что данный метод относится к классу метаэвристик, хорошо себя зарекомендовавших в задачах многомерной оптимизации, к которым в частности и относится задача поиска оптимальных параметров НС. Построение алгоритмов на основе имитации поведения роя частиц основывалось на трудах Kennedy, J.; Eberhart, R.;

Zhang, J.; Li; Chung; Z. Ruiyou , W. Dingwei, Y. G. Pétalas, V. Kalivarapu, S. B. Akat, V. Gazi, I. Scriven, W. Во, Q. Liguo, T. Desell, K. T. Chaturvedi, P. Boonyaritdachochai, A. Chatterjee, P. Siarry, L. Yufeng, S. Xianjun, P. K. Tripathi, F. Shahzad, M. Ben Ghalia.

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

C.М. Ковалев, Л.Г. Комарцова, Ю.И. Кудинов, А.О. Недосекин, Ф.Ф. Пащенко, Пытьев Ю.П., В.Б.Тарасов, А.В. Язенин, Н.Г., Ярушкина, Р. Angelov, R. Babuska, A. Bastían, J.C. Bezdek, J. Casillas, J.L. Castro, O. Cordon,

D. Dubois, D. Filev, J. González, S. Guillaume, F.Herrera, H. Ishibuchi, U. Kaymak, B. Kosko, R. Krishnapuram, R. Kruse, Е.Ц. Mamdani, J. M. Mendel, S. Oh, W. Pedrycz, H. Prade, M. Sugeno, T.Takagi, H. Tanaka, I. B. Turksen, R.R. Yager, T.Yasukavva, L.-X.Wang, L.Zadeh.

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

Для достижения поставленной цели решены следующие основные задачи исследования:

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

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

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

4. Разработка унифицированного представления нечетких аппроксиматоров и нечетких классификаторов для решения задач имитационного моделирования.

5. Проведение исследований разработанных алгоритмов на типовых контрольных примерах.

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

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

Объектом исследований является процесс идентификации НС и процесс извлечения знаний.

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

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

программирования.

Научная новизна полученных результатов. В диссертации получены следующие новые научные результаты:

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

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

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

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

Разработанные алгоритмы и программные средства использованы при выполнении проектов:

— грант РФФИ 06-08-00248 «Основанное на данных нечеткое моделирование технических систем» 2006 -2007 г.;

— грант РФФИ 09-07-99008 «Исследование и разработка технологии идентификации нечетких моделей на базе метаэвристик и методов, основанных на производных» 2009-20Юг.;

— грант РФФИ 12-07-00055 «Методы построения Парето-оптимальных нечетких систем на основе гибридного подхода» 2012-2014г.;

— грант РГНФ 12-06-12008 «Программный комплекс для прогнозирования эффективности реабилитации лиц опасных профессий с наиболее распространенными социально значимыми неинфекционными заболеваниями» 2012-2014г.;

— проект УМНИК-2012 «Разработка облачного сервиса продвижения товаров и услуг на основе адаптивного алгоритма роящихся частиц».

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

— генерацию структуры НС, основанную на алгоритме генерации базы правил НС равномерным разбиением и перебором;

— оптимизацию параметров НС, основанную на алгоритмах

моделирующих поведение роя частиц и методе наименьших квадратов. Соответствует пункту 1 паспорта специальности: Разработка новых математических методов моделирования объектов а явлений.

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

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

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

Соответствует пункту 4 паспорта специальности: Реализация эффективных численных методов и алгоритмов в виде комплексов проблемно-ориентированных программ для проведения вычислительного эксперимента

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

Внедрение результатов диссертационного исследования.

Разработанный программный комплекс используются при выполнении НИР Научно-исследовательского института курортологии и физиотерапии ФМБА Российской Федерации «Немедикаментозное восстановительное лечение участников вооруженных конфликтов и чрезвычайных ситуаций» для назначения комплексов реабилитации пациентам с посттравматическими стрессовыми расстройствами.

Результаты используются при выполнении курсовых, дипломных и научно-исследовательских работ студентами кафедры комплексной информационной безопасности электронно-вычислительных систем Томского государственного университета систем управления и радиоэлектроники (КИБЭВС ТУСУР).

Разработанные программные комплексы используются для извлечения знаний из истории о продажах в томском ресторане доставки «Хочу суши» (ИП Муравский Е.В. ОГРНИП 311702423700051).

Апробация работы. Основные положения работы докладывались и обсуждались на: Всероссийской конференции с элементами научной школы для молодежи «Проведение научных исследований в области обработки, хранения, передачи и защиты информации» 2009г.; VII Всероссийской научно-практической конференции студентов, аспирантов и молодых ученых «Технологии Microsoft в теории и практике программирования» 2010г., г. Томск; Международной научной конференции (заочной) «Системный анализ в медицине» (САМ 2011) 25-26 мая 2011г., г. Благовещенск; Всероссийской научно-технической конференции студентов, аспирантов и молодых ученых «Научная сессия ТУСУР» г. Томск, 2008, 2009, 2010, 2011, 2012, 2013гг; Томском IEEE семинаре «Интеллектуальные системы моделирования, проектирования и управления» г. Томск, 2012, 2013гг; VII-ой Международной научно-практической конференции «Интегрированные модели и мягкие вычисления в искусственном интеллекте» 20-22 мая 2013г., Коломна;

Публикации по теме диссертации. По результатам исследований опубликовано 17 печатных работ, из которых в рекомендованных ВАК РФ периодических изданиях - 4. Были получены 2 свидетельства о государственной регистрации программ для ЭВМ (номера свидетельств: №2013611468, № 2013619210).

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

Структура и объем работы. Диссертационная работа состоит из введения, пяти глав и заключения. Объем работы составляет 163 страницы. Список литературы содержит 88 наименований.

Глава 1. Нечеткое моделирование. Идентификация нечетких систем. Обзор проблемы исследования

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

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

Термин нечеткая логика (fuzzy logic) был введен американским профессором Лотфи Заде в 1965 году в работе «Нечеткие множества» в журнале «Информатика и управление»[1].

Начиная с 80-ых годов прошлого века, начались активные внедрения нечеткой логики: в 1980 году была внедрена нечеткая система управления производством на цементном заводе в Дании. Нечеткая система управления, разработанная F. L. Smidth, основывалась на моделировании поведения человека-оператора при управлении печыо диаметром 5 м и длиной 165 м для производства цемента из известняка и глинозема. Нечеткие системы показали высокую эффективность в процессах управления сложными нелинейными динамическими объектами. В июле 1987 году в Японии в г. Сендай была внедрена нечеткая система управления движением поездов метрополитена линии Нанбоку. Система управления гарантировала точность останова поезда менее 7 см от заданной точки, высокую комфортабельность движения и снижение до 35% энергозатрат. Другим примером является система управления и контроля процессом хлорирования для очистки воды городской сети водоснабжения в г. Сагамихара (префектура Канаява, Япония). Нечеткая система использовала 47 логических лингвистических правил вывода, из которых 15 правил относятся непосредственно к выбору количества добавок хлора в биохимическом процессе очистки воды, а

остальные 32 правила учитывают сезонные условия года и влияние внешней среды [2].

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

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

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

составляет базу правил. Основой для описания предметной области является нечеткое высказывание вида [3-7]:

X/ есть А1 или х,- = А,-, где х,- — описываемая величина; А,- — элемент множества термов лингвистической переменной описываемой предметной области.

Нечеткая система (НС) выполняет отображение из входного пространства ^ с5Ят в выходное пространство В с . Такая система является системой типа «много входов — много выходов»[ 8-10]. Основными составляющими НС являются (рис. 1.1):

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

2) нечеткая база правил — функциональный блок, содержащий описание предметной области в виде «ЕСЛИ-ТО» правил, описывающих взаимосвязь между входными и выходными переменными;

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

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

Рис 1.1. Типовая структура системы нечеткого логического вывода Наибольшее практическое применение получили системы типа «много входов — один выход». Такие НС осуществляют отображение из входного пространства А с т в выходное пространство В с 9?.

Отображение вход/выход может быть представлено как множество нечетких правил типа «ЕСЛИ-ТО». Каждое правило состоит из двух частей: условной и заключительной. Антецедент или условная часть (ЕСЛИ-часть) содержит утверждение относительно значений входных переменных, в консеквенте или заключительной части (ТО-части) указывается значение, которое принимает выходная переменная. Таким образом, нечеткая система типа «много входов - один выход» может быть задана нечеткими правилами следующего вида [8]:

правило 1: ЕСЛИxj =АцИх2 = А21И... Ихт = Ат, TOyi = Rn И... И yr = Rrr, правило 2: ЕСПИх1 = А12 Их2 =А22 И... Ихт = Ат2 ТОу1 = Ri2 И... И yr = Rr2;

правило п: ECJIHxi =АыИх2 =А2„И... Ихт =Атп ТОу1 =Ri„M... И yr = Rnr; где X/, х2,..., х11г - входные переменные;

У и У2, —,Уг- выходные переменные;

Ар — нечеткие области определения входных переменных, которые определены на универсальных множествах Х\, Х2, ..., Хш;

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

МлуЫ-

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

Треугольная функция принадлежности (рис. 1.2) описывается тремя параметрами (а, Ъ, с) , степень принадлежности определяется по формуле:

ф) =

X -а

Ъ -а

X — с

, а<х<Ь , Ъ<х<с

Ь-с

О, в других случаях

(1.1)

Кх)1

Рис 1.2. Треугольная функция принадлежности Трапециевидная функция принадлежности (рис. 1.3) описывается четырьмя параметрами (а, Ь, с, степень принадлежности определяется по формуле:

М(х) =

х- а а<х<Ъ

Ь- а

1, Ъ< х<с

< х- й с<х<(1

Г

с-

о, в других случаях

(1.2)

а Ъ

Рис 1.3. Трапециевидная функция принадлежности

Параболическая функция принадлежности (рис. 1.4) описывается двумя параметрами (а, Ъ), степень принадлежности вычисляется по следующей формуле:

Л2

, (а-Ь)<х<(а + Ь)

(1.3)

М(х) =

1

х-а

Ъ J

О, в других случаях

Рис 1.4. Параболическая функция принадлежности Гауссова функция принадлежности (рис. 1.5) описывается двумя параметрами (то, <7о), степень принадлежности вычисляется по следующей формуле:

/л(х) - ехр

г ( \ 2 \

X -т0

V \ ао у )

(1.4)

/и0-£Т0 т0 от0 + «т{

Рис 1.5. Гауссова функция принадлежности Исследователи выделяют три основных типа нечетких систем «много входов - один выход» [2,7-17]:

1. Нечеткая система типа синглтон описывается правилами следующего вида [8]:

правило /: ЕСЛИ х\=А¡¿ И x2=A2¡ И... И xm=Ami ТО y = riy где Aß — лингвистический терм, которым оценивается переменная xj, а выход у оценивается действительным числом r¡.

Нечеткая система типа синглтон осуществляет отображение F: SRm —» 9?, заменяя оператор нечеткой конъюнкции произведением, а оператор агрегации нечетких правил - сложением. Отображение F вычисляется по следующей формуле:

¿ MAU (xI ) • Мац (х2) * -'■ МАШ О™ ) * ri П*) = --, (1.5)

I М Л 1Д ■) • Мл 2, (*2 ) ■ ■■ ■■ ■'■ М A mi (Хт ) (=1

где x = [x,,...,xjr еГ,

п — количество правил нечеткой системы; т — количество входных переменных в нечеткой системе; Maj~ функция принадлежности нечеткой области [8].

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

правило i: ЕСЛИ хх=Аи И x2=A2i И... И xm=Ami ТО у =fl(x\,... xm), где f¡ (x)=ao+a¡Xi+a2X2+ ...+апхп, ak, 0 < k < п- действительные числа. Отображение F для нечеткой системы типа Такаги-Сугено вычисляется по следующей формуле [8]:

tttAU(X\)' МлгЛХ2)- - • MAm,(Xm)-(a0, + йПХ1 + - + <*т-Хт ) 7Г(Х) = ---

i Иль (*i )-Млг, (*2 )•••■• Маш (*«)

1=1

3. Нечеткая система типа Мамдани описывается правилами следующего вида:

правило/': ЕСЛИ х\ =Аи И х2= Аъ И... И xm=Ami ТО y^Bi,

где B¡ - терм лингвистической переменной.

Для описания отображения входного вектора х в выходное значение у в системах типа Мамдани используются такие методы как, например, аппроксимация Мамдани или метод, основанный на формальном логическом доказательстве [8,18,19].

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

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

1) определение целевой функции;

2) структурная идентификация;

3) параметрическая идентификация на основе заданного критерия оптимальности.

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

При создании аппроксгшатора НС представляется системой типа синглтон, описываемой по формуле 1.5.

Нечеткий аппроксиматор может быть представлен как

y = F(x, в),

где у — скалярный выход аппроксиматора, 9 = ||ЭЬ..., 0дг|| - вектор

п

оптимизируемых параметров, N = а - число параметров,

i=i

описывающих одну функцию принадлежности, bt - число термов, описывающих /-тую входную переменную. Пусть дано множество обучающих данных (таблица наблюдений) {(хя; tp), р = 1 ,..., т], тогда среднеквадратическая функция ошибки (RMSE), являющаяся численным критерием адекватности модели, вычисляется по следующей формуле:

т=\1£(?,-р(х„о)?. (L6)

т V

При идентификации НС для создания нечеткого классификатора основной задачей является описание предполагаемого кластера нечетким прототипом, размерность которого определена размерностью пространства исследуемых данных[20]. Таким образом, /-й кластер определяется нечетким правилом следующего вида:

Ry: ЕСЛИ х\ =AuHx2=A2i M...Mxm=Ami ТО class = cJt w=CFh- (1.7) где, x = (jcj, x2, x3, ..xn) — вектор признаков классифицируемого объекта; Ay - нечеткий терм, характеризущий k-ът признак в /-том правиле (/е[1,/?]), R - число правил; Cj - идентификатор у'-того класса, j е[\,т]; CFj — вес правила или уровень доверия /-тому правилу, CF, е[0,1].

Задача традиционной классификации может быть описана функцией:

/:9Г ->{0,1}т

где Дх)=(с1, а, ..., Cm) причем а= 1, а с/= 0 (je [1, т\, / ф j), когда объект, заданный вектором х, принадлежит к классу а.

Нечеткая классификация описывается функцией /:9Г ->[0,1]т, которая относит классифицируемый объект к каждому классу с определенной степенью принадлежности, вычисленной по следующей формуле:

Выходом классификатора является класс, определяемый следующим образом:

ски^^у^а^тах^

1< }<т

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

с = /(х,е, С¥), где Э — база правил, содержащая правила типа (1.7).

Пусть дано множество обучающих данных (таблица наблюдений) {(хр;

= 1 ,..., г}, определим следующую единичную функцию:

г1, если ср =/(хр,е,СР),/? = 1..7 О, иначе

Тогда численный критерий адекватности системы классификации может

быть выражен следующим образом:

2

еИа(р,д,СЮ (1.8)

£(9) = -

2

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

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

с!ека(р,в,С¥) =

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

1.2 Настройка параметров нечетких систем

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

Выделяют два основных класса алгоритмов и методов для оптимизации параметров: методы и алгоритмы, основанные на производных и метаэвристические алгоритмы. К методам и алгоритмам, основанным на производных, относятся такие алгоритмы как: метод наименьших квадратов [21,22], Левенберга-Марквардта, фильтр Калмана [23-25], градиентный метод [26-28].

Похожие диссертационные работы по специальности «Математическое моделирование, численные методы и комплексы программ», 05.13.18 шифр ВАК

Список литературы диссертационного исследования кандидат наук Синьков, Дмитрий Сергеевич, 2013 год

Список

Добавить значение

■ •• - .

Ключ Удалить

Triangle

Значение

Треугольник

Ключ Удалить

Gauss

Значение

Гаусоида

Рис. 3.25 Форма добавления спискового параметра алгоритма

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

3.4.3 Описание создания проекта на сайте

Ниже представлена главная страница сайта (рис 3.26). На ней представлен список уже созданных проектов и их статус оптимизации. Для создания нового проекта, необходимо нажать на кнопку «Добавить проект». Для редактирования удаления или запуска оптимизации проекта в колонке «Опции» представлены соответствующие кнопки.

Проекты

Проекты

Л Главная > Т

Список проектов

+ Добавить проект

N8

16 ИнитАппроксимзция

18 Эволюционнзя аппроксимация

19 ИнитКлзссификация

23 Бактерия

24 РЗО

Статус

Оптимизация завершена

Оптимизация завершена

Опции

' X Оптиуилирмат*

5

Оптюлкзирсавть

Оптимизация завершена

Ошибка оптимизации

Оптимизация завершена

/ X Опткшклрзая-а

? X Огтгкшиирслать

' X Огтшмирсбати

Рис. 3.26 Страница создания проектов

В окне редактирования проекта представлены следующие вкладки (рисунок 3.27):

Параметры проекта Таблица наблюдений Алгоритмы настройки и оптимизации Результаты оптимизации

Рис 3.27 Вкладки панели редактирования проекта

Параметры проекта. Ниже на рисунке представлены основные параметры проекта, это название и описание проекта (рисунок 3.28):

Название проекта рео

Описание проекта Б 2 у х. а Т» хГ- Ш- Т, Т,- %

» ¿Ъ -г

(В ¿>)

Рис. 3.28 Основные параметры проекта

Таблицы наблюдения. Ниже на рисунке представлен интерфейс загрузки таблиц наблюдения в формате KEEL (рисунок 3.29):

Таблицы наблюдения

Обучающая таблица наблюдении

Тестовая таблица наблюдений

Обучающая таблица наблюдений

No file selected О

Тестовая таблица наблюдении

No fite selected □

Рис. 3.29 Интерфейс загрузки таблиц наблюдения На вкладке «Алгоритмы настройки и оптимизации» (рисунок 3.30) представлены 3 группы алгоритмов:

— алгоритмы генерации структуры НС

— алгоритмы настройки параметров НС

— алгоритмы классификации

Алгоритмы настройки параметров НС

j .-.---

Выбранные алгоритмы

№ Название Порядок

64 PSO

Выберете PS0 „ ф добавить

алгоритм :

Рис. 3.30 Интерфейс добавления алгоритмов в проект При нажатии на кнопке редактирования уже добавленного алгоритма откроется окно с заданием параметров выбранного алгоритма (рис 3.31).

Опции

✓ X

Редактирование параметров алгоритма

PSO

Коэффициент инерции (w): озо) *

Коэффициент с1 (с1}:

1 80

Коэффициент с2 fc2):

1.60

Число итераций (iter):

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

Для запуска проекта необходимо нажать на кнопку оптимизировать проект на главной странице проектов (рис. 3.32).

I

V X Оптимизировать

Рис. 3.32 Панель управления проектом

3.4.4 Описание взаимодействия программного комплекса «FuzzySystem» и сайта

Для реализации взаимодействия сайта с программными комплексами был реализован статический класс FuzzzLoader на С# для работы с API сайта. Ниже на рисунке 3.33 представлено описание методов и полей класса:

! FuzzzLoader I* |

I StaticClass

I 0 Fields I api_path

& server_file_dir I s/ site_url

I S Methods I V load_project

^ send_message | I send_result

V upload ufs I

у____________/

Рис. 3.33 Поля и методы класса FuzzzLoader Описание полей класса:

api_path - строка, в которой указывается URL, где расположен контроллер API сайта.

serverJile_dir - строка, указывающая директорию на сервере, в которую загружаются оптимизированные нечеткие системы. sitejurl — строка, в которой указывается адрес сайта, где находится система по оптимизации НС. Описание методов класса:

load_project - метод для загрузки проекта.

send message - вспомогательный метод для обмена сообщениями с сервером.

send result - метод для отправки результатов оптимизации на сервер. upload ufs - метод для загрузки файлов НС в формате ufs на сервер. Ниже приведена диаграмма последовательности (рисунок 3.34), описывающая взаимодействие объектов в программном комплексе.

Диаграмма последовательности процесса взаимодействия объектов программного комплекса

Рис 3.34 Диаграмма последовательности процесса настройки проекта в системе

3.5 Программный комплекс извлечения ассоциативных правил

3.5.1 Технологические требования к системе

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

3.5.2 Моделирование системы

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

Диаграмма последовательности использования ассоциативных правил

kJ

Пользователь интернет магазина

Смотреть товар Показать товар

Модуль предложения товаров

Положить товар в Козину

Анализировать покупку

Передать похожие товары

Предложить товар

Рис. 3.35 Диаграмма последовательности использования ассоцитивных правил на сайте

интернет-магазина

3.5.3 Формат выгрузки ассоциативных правил

Для представления сгенерированных правил будет использоваться формат JSON. Данный формат легко встраивается на сайт, легко обрабатывается javascript.

Основные минимальные данные, которые должны выгружаться представлены ниже.

Массив товары в JSON формате:

[{«idj»: «namei»},{«id2»: «name2»},...{«idN»:«nameN»},] ,где idu и nameN идентификатор и название продукта соответственно. Массив сгенерированных правила в JSON формате: [{«a»:[idn, id12, idlk], «c»:[id13,..,idln]},...{«a»:[idmI, id^, ..., idmk], «c»:[idm3,.. .idmn]},] , где a - антецедент правила, с - консеквент правила.

3.5.4 Программа извлечения ассоциативных правил

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

— модуль извлечения ассоциативных правил на основе алгоритма априори

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

— модуль извлечения ассоциативных правил на основе алгоритма роящихся частиц

— модуль выгрузки файлов ассоциативных правил в формате JSON

В ходе работы были спроектированы и разработаны следующие классы: MFunction - абстрактный класс функций принадлежности. PRBFunction - класс параболической функции принадлежности. TRNFunction - класс треугольной функции принадлежности. TRPFunction - класс трапециевидной функции принадлежности. GSSFunction - класс Гауссовой функции принадлежности. LV-класс лингвистической переменной. rule — класс ассоциативного правила.

BPSO — класс, реализующий бинарный алгоритм роящихся частиц. Tools — класс, реализующий вспомогательные методы приложения. Ниже приведены скриншоты (рисунок 3.36 и 3.37) разработанных модулей:

Настройки jj Результаты j Кодирование транзакций j PSO j

25 [засчитать

Минимальная поддержка:

Минимальная достоверность: ,50

.Si!

Расчитачь FUZZY

Выбрать DataSet

Создать JS с продуктами

Рис.3.36 Форма настройки алогитмов

Настройки Результаты j Кодирование транзакция j PSO

Правило Поддержка Достоверность

Karra Спайси-эби -> Каппа Слайси-сяка 29 70.73170731707

Каппа Спайси-сяке -> Каппа Спайси-эби 29 65.90909090909..

Мачо -> Пава 62 61,38613861386..

Калифорния, Филадельфия => Пава 47 58.02469135802...

Жареная Гейша, Калифорния -> Пава 26 55.31914893617..

Тэно -> Лава 95 Ь2.//////////7_.

Мизуи о Пава 58 51,32743362831...

Калифорния => Лава 224 50.33707855168...

Калифорния. Диего => Пава 26 50

Рис. 3.37 Результат работы программы

3.6 Унифицированное представление нечетких систем

В приложении А представлена модель XML документа формата ufs. Все вещественные числа следует представлять с точкой.

3.6.1 Описание нечеткой системы

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

FuzzySystem /FuzzySystem Type FuzzySystemType

Variables

Count int

Rules

Count int

Observations

Count int

Estimates

Count int

Рис. 3.38 Набор тегов, описывающих нечеткую систему

Таблица 3.1 Атрибуты тегов, описывающих нечеткую систему

Тег: FuzzySystem

Атрибут Описание

Type Риг2у8у$1етТуре - тип описываемой нечеткой системы, возможные значения: — ClassiflerPittsburgh - нечеткий классификатор Питтсбургского типа. — ClassiflerMichigcm - нечеткий классификатор Мичиганского типа. — АрргохтШог8^1е1оп - нечеткий аппроксиматор типа Синглтон. — ApproxiтnatorTakagiSugeno - нечеткий аппроксиматор типа Такиги-Сугено. — АрргохтШогМатс1ат - нечеткий аппроксиматор типа Мамдани. Описывается строковым типом данных.

Как видно на рисунке 3.38, нечеткая система описывается следующими тегами:

Variables - тег описывающий набор лингвистических переменных, в описываемой НС.

Rules - тег, описывающий набор правил логического вывода НС. Observations — тег описывающий набор таблиц наблюдений, по которым обучается и проверяется на адекватность НС.

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

Ниже представлены описания атрибутов вышеперечисленных тегов.

Таблица 3.2 Атрибуты тегов, описывающих лингвистическую переменную

Тег: Variables

Атрибут Описание

Count Количество лингвистических переменных НС. Описывается целочисленным типом данных.

Таблица 3.3 Атрибуты тегов, описывающих набор правил

Тег: Rules

Атрибут Описание

Count Количество правил в базе правил НС. Описывается целочисленным типом данных.

Таблица 3.4 Атрибуты тегов, набор значений функций принадлежности

Тег: Estimates

Атрибут Описание

Count Количество известных значений целевых функций НС. Описывается целочисленным типом данных.

3.6.2 Описание лингвистических переменных

Контейнером для описания лингвистических переменных является тег Variables, который содержит набор тегов Variable — тег, описывающий сам объект лингвистической переменной (рисунок 3.39).

Рис. 3.39 Набор тегов, описывающих лингвистическую переменную Ниже представлено описание атрибутов тега Variable.

Таблица 3.5 Атрибуты тегов, описывающих лингвистическую переменную

Тег: Variable

Атрибут Описание

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

Min Минимальное значение области определения лингвистической переменной. Описывается вещественным типом данных.

Max Максимальное значение области определения лингвистической переменной. Описывается вещественным типом данных.

Тег Variable содержит контейнер Terms для описания лингвистических

термов переменной.

Таблица 3.6 Атрибуты тегов, описывающих набор термов

Тег: Terms

Атрибут Описание

Count Количество термов лингвистической переменной. Описывается целочисленным типом данных.

На рисунках 3.40 и 3.41 показаны наборы тегов, описывающих объект терма

лингвистической переменной:

Term - тег, описывающий лингвистический терм.

Params — тег, описывающий набор параметров функции принадлежности. Рагат — тег, описывающий параметр функции принадлежности.

Рис. 3.40 Набор тегов, описывающих набор термов.

Рис 3.41 Набор тегов, описывающих объект и параметры функции принадлежности терма. Ниже представлено описание атрибутов тегов, описывающих терм.

Таблица 3.7 Атрибуты тегов, описывающих терм

Тег: Term

Атрибут Описание

Name Название терма. Описывается строковым типом данных.

Туре TermType - тип функции принадлежности, описывающей терм, возможные значения: — Triangle — треугольная функция принадлежности. — Gauss — Гауссова функция принадлежности. — Trapezoid - трапециевидная функция приналдожености. — Parabolic — параболическая функция принадлежности. Описывается строковым типом данных.

Таблица 3.8 Атрибуты тегов, описывающих параметры терма

Тег: Param

Атрибут Описание

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

Value Значение параметра функции принадлежности. Описывается вещественным типом данных.

Ниже приведены номера параметров функций принадлежности. Граница - это координата точки пересечения с осью ОХ; Вершина - это координата точки, где уровень принадлежности равен 1. Треугольник(Тпаг^1е):

Таблица 3.9 Параметры треугольной функции принадлежности

Параметр Номер параметра Описание

а 0 левая граница

b 1 вершина треугольника

с 2 правая граница

TpaneijHfl(Trapezoid):

Таблица 3.10 Параметры трапециевидной функции принадлежности

Параметр Номер параметра Описание

а 0 левая граница

b 1 левая вершина трапеции

с 2 правая вершина трапеции

d 3 правая граница

raycc(Gauss): Таблица 3.11 Параметры гауссовой функции принадлежности

Параметр Номер параметра Описание

а 0 центр функции Гаусса

g 1 коэффициент отклонения относительно центра

Парабола(РагаЬоНс): Таблица 3.12 Параметры параболической функции принадлежности

Параметр Номер параметра Описание

а 0 левая граница

b 1 правая граница

3.6.3 Описание базы правил нечеткой системы

База правил описывается следующими тегами (рис. 3.42, рис. 3.43):

Rules — тег, описывающий набор правил.

Rule — тег описывающий сам объект правила.

Antecedent - тег описывающий условную «ЕСЛИ» часть правила.

Pair — тег, указывающий какой терм какой переменной используется в

правиле.

Consequent — тег, описывающий заключительную «ТО» часть правила.

Рис 3.42 Набор тегов, описывающих набор правил

Рис 3.43Набор тегов, описывающих правило Ниже приведены описания атрибутов тегов описывающих базу правил.

Таблица 3.13 Атрибуты тегов, описывающих набор правил

Тег: Rules

Атрибут Описание

Count Количество правил в базе правил. Описывается целочисленным типом данных.

Таблица 3.14 Атрибуты тегов, описывающих антецеденты правила

Тег: Antecedent

Атрибут Описание

Count Количество пар «Лингвистическая переменная - Терм», содержащихся в правиле. Описывается целочисленным типом данных.

Таблица 3.15 Атрибуты тегов, описывающих значения антецедентов правила

Тег: Pair

Атрибут Описание

Variable Название лингвистической переменной. Описывается строковым типом данных.

Term Название терма. Описывается строковым типом данных.

В зависимости от типа нечеткой системы заполняются соответствующие атрибуты в теге Consequent. Если описывается классификатор, то заполняются атрибуты Class и CF. Если описывается

аппроксиматор, то указывается значение атрибута Value. Ниже приведено описание данных атрибутов.

Таблица 3.16 Атрибуты тегов, описывающих консеквент правила

Тег: Consequent

Атрибут Описание

Value Значение консеквента в правиле. Описывается вещественным типом данных.

Class Метка класса. Описывается строковым типом данных.

CF Параметр, указывающий вес правила. Описывается вещественным числом в интервале [0;1].

3.6.4 Описание таблиц наблюдений.

Таблицы наблюдений описываются следующими тегами (рис. 3.45-3.47).

Observations — тег, объединяющий все таблицы наблюдений.

Table — тег, описывающий объект таблицы наблюдений.

Attributes — тег, описывающий набор атрибутов таблицы.

Attribute - тег, описывающий атрибут таблицы. Каждый атрибут это название

переменной, описываемой в наблюдениях.

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

Elem — тег, описывающий элемент списка значений категориального атрибута.

Rows — тег, объединяющий набор строк таблицы наблюдения. Row — тег, описывающий строку в таблице наблюдений.

Column - тег, название которого соответствует описываемому атрибуту в таблице наблюдений. На рисунке 3.47 показано, что объект Row состоит из набора тегов с именами из атрибутов тега Attribute.

Observations Count int

Table

Name string Type TableType Output string

Attributes

Count int

Rows

Count int

Рис 3.44 Набор тегов, описывающих таблицы наблюдения

Рис. 3.45 Набор тегов, описывающих набор таблиц наблюдения

Рис. 3.46 Набор тегов, описывающий атрибуты таблицы наблюдения

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

Таблица 3.17 Атрибуты тегов, описывающих набор таблиц наблюдений

Тег: Observations

Атрибут Описание

Count Количество таблиц наблюдений, используемых в описываемой НС. Описывается целочисленным типом данных.

Таблица 3.18 Атрибуты тегов, описывающих таблицу наблюдений

Тег: Table

Атрибут Описание

Name Название таблицы наблюдений. Описывается строковым типом данных.

Туре TableType - тип таблицы наблюдений, возможные значения: — Testing — тестовая таблица наблюдений. — Training - обучающая таблица наблюдений. Описывается строковым типом данных.

Output Атрибут, указывающий на выходной параметр НС. Описывается строковым типом данных.

Таблица 3.19 Атрибуты тегов, описывающих набор атрибутов таблиц наблюдений

Тег: Attributes

Атрибут Описание

Count Количество атрибутов таблицы наблюдений. Описывается целочисленным типом данных.

Таблица 3.20 Атрибуты тегов, описывающих атрибуты таблиц наблюдений

Тег: Attribute

Атрибут Описание

Name Название атрибута (названия входных и выходных параметров системы). Описывается строковым типом данных.

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

Таблица 3.21 Атрибуты тегов, описывающих набор значений категориального параметра

Тег: Enum

Атрибут Описание

Count Количество значений категориального параметра. Описывается целочисленным типом данных.

Таблица 3.22 Атрибуты тегов, описывающих значение категориального параметра

Тег: Е1ет

Атрибут Описание

Value Значение категориального параметра. Описывается строковым типом данных.

Таблица 3.23 Атрибуты тегов, описывающих запись таблицы наблюдений

Тег: Rows

Атрибут Описание

Count Количество строк в таблице наблюдений. Описывается целочисленным типом данных.

3.6.5 Описание значений целевых функций

Значения целевых функций оптимизации НС описываются следующими тегами (рис. 3.48):

Estimates - тег, описывающий набор элементов представляющих значения

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

Estimate — тег, описывающий объект значения целевой функции.

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

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

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

Тег: Estimates

Атрибут Описание

Count Количество значений целевых функций. Описывается целочисленным типом данных.

Таблица 3.25 Атрибуты тегов, описывающих значение функции принадлежности

Тег: Estimate

Атрибут Описание

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

Туре ЕггогТуре — тип целевой функции: — ЯМБЕ — используется как критерий в задаче аппроксимации. (Арргох1таЦ)г8т§1е1оп, Арргох1таи)гТака§18и§епо, Арргох1таЦэгМатс1ат). Пусть дано множество обучающих данных (таблица наблюдений) {(хр; р = 1 ,..., ш}, тогда ^Е (/„-л*,.*»2 ШБЕ (в)= - т , где е- ||9Ь..., ЭыЦ — вектор параметров нечеткой системы (база правил). — МБЕ - используется как критерий в задаче аппроксимации. (Арргох1та1ог8т§1е1оп, ApproximatorTakagiSugeno, АрргохтаЬгМапнЗат). Пусть дано множество обучающих данных (таблица наблюдений) {(хр; 1р), р = 1 ,..., т}, тогда т I (1р~Пхр,в))2 М8Е(в)= ^- т , где е = ||9ь...,0ы|| —вектор параметров нечеткой системы (база правил). — РгеЫзюпРегсеМ — процент правильно классифицируемых объектов. Используется для оптимизации классификаторов на основе НС. Описывается строковым типом данных.

Value Значение целевой функции. Описывается вещественным типом данных.

Выводы

1. Разработан программный комплекс «FuzzySystem» позволяющий создавать, использовать и оптимизировать нечеткие системы, как на основе наблюдаемых данных, так и на основе знаний эксперта.

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

3. Разработан web-ориентированный программный комплекс создания и настройки нечетких систем на основе предложенной методики двухкритериального анализа НС.

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

Глава 4. Исследование разработанных алгоритмов

4.1 Исследование алгоритма роящихся частиц

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

1) Дхь х2) = xi*sin(x2), -nil < х\, х2 < п/2;

I i->~

15

Рис. 4.1 График первой тестовой функции

2) f[x\,x2) = sin(2x]/Tt) * sin(2x2/7t), -5< хи х2 <5;

5

Рис. 4.2 График второй тестовой функции

3 )/(*) = (1 + 10 ехр(-100(х - 0,7)2 )

( ( 5Ш

125

х + 1,5.

л:+ 0,1

,0 < х < 1;

«X)

Рис. 4.3 График третьей тестовой функции

4) дх],х2) = (\ + х]2+х2^)2, хьх2&[1,5]

Рис. 4.4 График четвертой тестовой функции

5) /(*], х2 ) = 1 + х®'5 + х21 + 1,5 , х}, х2, х3 е [1,5]

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

Таблица 4.1 Параметры элементов НС для тестовых функций

№ функции Число входных переменных Число точек в таблице наблюдений Число термов

1 2 81 5

2 2 121 5

3 1 100 12

4 2 121 5

5 3 216 5

В исследовании использовалась адаптивный АРЧ, в котором динамически корректируется коэффициент инерции. Консеквенты правил настраивались методом наименьших квадратов. Последовательное выполнение алгоритма роящихся частиц и метода наименьших квадратов - один цикл оптимизации. Была исследована зависимость среднеквадратичной ошибки вывода нечеткой системы от количества итераций, числа частиц, циклов оптимизации, параметров с\ и с2.

На рисунках 4.5-4.10 приведены распределения среднеквадратической ошибки от числа итераций и числа частиц в рое (число испытаний — 4). Эксперимент показал, что точность решения зависит от числа итераций и числа частиц в рое. Так, например, при аппроксимации первой тестовой функции, когда частиц в рое 10, лучшие решения появляются при числе итераций близком к тысяче, а при числе частиц равном 50 лучшие решения появляются при числе итераций равном 200. Менее явно зависимость ошибки от числа итераций и числа частиц в рое выражена для четвертой тестовой функции.

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

1Е-3-

1 1Е-4

1Е-5-Г 0

V

V

9 Ч

V 9 7

7

200

V 7 7 7 ч 7 ^ % 7 у 7 7

7 7 7 7 7 7 „ 7 7 У

7 7 7 7 7

V

V ? V

9 V

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