Программные инструменты для автоматизации построения экспертных систем на основе динамически обновляемых баз знаний тема диссертации и автореферата по ВАК РФ 05.13.11, кандидат наук Бурнашев Рустам Арифович

  • Бурнашев Рустам Арифович
  • кандидат науккандидат наук
  • 2020, ФГАОУ ВО «Казанский (Приволжский) федеральный университет»
  • Специальность ВАК РФ05.13.11
  • Количество страниц 150
Бурнашев Рустам Арифович. Программные инструменты для автоматизации построения экспертных систем на основе динамически обновляемых баз знаний: дис. кандидат наук: 05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей. ФГАОУ ВО «Казанский (Приволжский) федеральный университет». 2020. 150 с.

Оглавление диссертации кандидат наук Бурнашев Рустам Арифович

ВВЕДЕНИЕ

ГЛАВА 1. АНАЛИЗ ПРОГРАММНЫХ ИНСТРУМЕНТОВ И ПРОБЛЕМ ПРИ ПОСТРОЕНИИ ЭКСПЕРТНЫХ СИСТЕМ

1.1. Обзор CASE-средств и технологий построения экспертных систем

1.2. Сравнительный анализ программных инструментов

1.3. Программные инструменты и средства построения экспертных систем

1.4. Проблемы построения экспертных систем

1.5. Модели представления знаний

1.5.1. Продукционная модель представления знаний

1.5.2. Модель на основе семантических сетей

1.5.3. Фреймовая модель

1.5.4. Логическая модель

1.6. Средства механизма логического вывода

1.7. Выводы по главе

ГЛАВА 2. ПРОЕКТИРОВАНИЕ ПРОГРАММНЫХ ИНСТРУМЕНТОВ ДЛЯ АВТОМАТИЗАЦИИ ПОСТРОЕНИЯ ЭКСПЕРТНЫХ СИСТЕМ

2.1. Процессы создания программных инструментов для автоматизации построения экспертных систем

2.2. Процессы формирования UML-диаграммы интегрированной среды разработки экспертных систем

2.3. Процессы взаимодействия интегрированной среды разработки с CASE -средством CA ERwin Data Modeler

2.3.1. Принципы работы CASE-средства CA Erwin Data Modeler

2.3.2. Создание ER-модели в CA ERwin Data Modeler

2.3.3. Создание и редактирование диаграмм

2.3.4. Генерация ER-модели интегрированной среды разработки

2.4. Обеспечение совместимости программных инструментов

2.4.1. Применение средств телеметрии

2.4.2. Применение алгоритм поиска ассоциативных правил

2.5. Выводы по главе

ГЛАВА 3. ПОСТРОЕНИЕ И ТЕСТИРОВАНИЕ ПРОТОТИПОВ ЭКСПЕРТНЫХ СИСТЕМ

3.1. Реализация прототипа экспертной системы на языке Prolog

3.2. Интегрированная среда разработки для построения экспертных систем

3.3. Тестирование взаимодействия компонентов интегрированной среды

3.4. Выводы по главе

ЗАКЛЮЧЕНИЕ

СПИСОК СОКРАЩЕНИЙ И УСЛОВНЫХ ОБОЗНАЧЕНИЙ

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ

ПРИЛОЖЕНИЕ А. ПРОГРАММНЫЙ КОД ИНТЕГРИРОВАННОЙ СРЕДЫ . 127 ПРИЛОЖЕНИЕ Б. СВИДЕТЕЛЬСТВО О РЕГИСТРАЦИИ ПРОГРАММЫ ДЛЯ

ЭВМ

ПРИЛОЖЕНИЕ В. СПРАВКИ О ВНЕДРЕНИИ

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

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

ВВЕДЕНИЕ

Актуальность. Современные программные инструменты для автоматизации построения экспертных систем (ЭС) значительно повышают эффективность применения вычислительной техники в различных сферах деятельности человека (здравоохранении, образовании, экономики, юриспруденции и др.), а именно за счёт расширения в них новых решений и задач, которые ранее решались традиционными подходами [61; 44].

В настоящее время результаты исследований по создания программных инструментов для построения экспертных систем востребованы в области программной инженерии, о чем свидетельствует широкий спектр их применения в самых различных областях науки и техники. Это подтверждают исследования учёных: Г.С. Осипова, В.Н. Вагина, Г.В. Рыбина, Л.Т. Кузина, Е.М. Бениаминова, Э.В. Попова, И.Б. Фоминых, М.Р. Романов, А.Н. Швецова, Д.В. Александрова, Е.В. Кисель, М.Д. Шапот, В.М. Лохина, В.Э. Вольфенгагена, М.Р. Квиллиана, М. Минского, Дж.А. Робинсона, С.Л. Гольдштейна, Н. Нильсона, М.Саймона и др.

Начиная с XX века, программные продукты в области искусственного интеллекта вносят существенный вклад в развитие современной науки, а количество разработанных программных приложений для автоматизации построения систем принятия решений невозможно определить, так как по мере развития компьютерных и информационных технологий существенно расширяется область их применения. Одними из таких современных программных приложений используемых в разработках являются CASE-средства (CA ERwin Modeling Suite, Rational Suite, ARIS ToolSet, Power Designer, BizAgi BPM Suit, ELMA BPM) и программные продукты обеспечивающие эффективность разработки экспертных систем (Nexpert Object, Exsys, XpertRule, Guru, Flex, Acquire, ReSolver).

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

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

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

1. Сложность структуризации входных данных, поступающих в режиме реального времени;

2. Сложность совместимости разнородных программных систем и систем управления базами данных (СУБД) в рамках единой интегрированной среды разработки экспертных систем (ИСРЭС);

3. Высокая стоимость программно-инструментальных средств построения экспертных систем и практическое отсутствие внедрения подобных отечественных разработок;

4. Недостаточная распространённость подобных программных инструментов с открытым исходным кодом (Open source).

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

На основе представленных проблем предлагаются следующие перспективные направления развития исследований в этой области:

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

2. Решение проблемы совместимости программных систем Prolog, JavaScript, Python, PHP, а также с СУБД PostgreSQL и MySQL, объединённых в рамках единой ИСРЭС;

3. Построение UML-диаграммы вариантов использования (use-case) для описания принципа работы ИСРЭС;

4. Генерация графической информационной модели базы знаний (БЗ), которая представляет структуру и семантику информационной части в ИСРЭС;

5. Разработка программного модуля, обеспечивающего тестирование взаимодействия программных компонентов ИСРЭС;

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

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

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

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

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

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

2. Решена проблема совместимости программных систем Prolog, JavaScript, Python, PHP с СУБД PostgreSQL и MySQL, объединённых в рамках единой интегрированной среды разработки ЭС (ИСРЭС);

3. Построена UML-диаграмма вариантов использования (use-case), описывающая принципы работы ИСРЭС на основе динамически обновляемых баз знаний;

4. Выполнена генерация графической информационной модели базы знаний (БЗ), которая представляет структуру и семантику информационной части в ИСРЭС;

5. Разработан программный модуль, обеспечивающий тестирование взаимодействия программных компонентов ИСРЭС;

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

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

Методологической базой диссертационной работы являются работы: Г.С. Осипова, В.Н. Вагина, Г.В. Рыбина, Л.Т. Кузина, Е.М. Бениаминова, Э.В. Попова, И.Б. Фоминых, М.Р. Романов, А.Н. Швецова, Д.В. Александрова, Е.В. Кисель, М.Д. Шапот, В.М. Лохина, В.Э. Вольфенгагена, М.Р. Квиллиана, М. Минского, Дж. А. Робинсона, С.Л. Гольдштейна, Н. Нильсона, М.Саймона и др.

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

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

Реализации результатов диссертации. Результаты работы были внедрены в НИР «САЗЕ-технологии для разработки экспертных систем» кафедры технологий программирования Казанского (Приволжского) федерального университета.

Также результаты подтверждены свидетельством о государственной регистрации программы для ЭВМ, справкой (актом) о внедрении и использовании программных инструментов в образовательном процессе Казанского (Приволжского) федерального университета и Российского университета дружбы народов.

Научная специальность, которой соответствует диссертация. Содержание работы соответствует паспорту научной специальности 05.13.11 - «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», пункты 2, 3, 4 и 7. Сопоставление приведено в таблице 1.

Таблица 1 - Сопоставление направлению и результаты исследований, предусмотренных специальностью 05.13.11

Направление Результат работы

2.Языки программирования и системы программирования, семантика программ Создана ИСРЭС, совмещающая в себе разные языки программирования (PHP, JavaScript, Python, Prolog)

З.Модели, методы, алгоритмы, языки и программные инструменты для организации взаимодействия программ и программных систем Выполнена генерация ER-модели БЗ ИСРЭС с помощью CASE-средства CA Erwin Data Modeler Разработан программный модуль обеспечивающий тестирование взаимодействия программных компонентов ИСРЭС

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

7.Человеко-машинные интерфейсы Создан программный компонент, обеспечивающий создание правил и фактов экспертом предметной области.

Научная новизна исследования заключается в следующем:

1. Создана новая ИСРЭС, включающая в себя разнородные программные системы, позволяющая автоматизировать процесс построения экспертных систем (ЭС);

2. Решена проблема совместимости программных систем Prolog, JavaScript, Python, PHP с СУБД PostgreSQL и MySQL, объединённых в рамках единой интегрированной среды разработки ЭС (ИСРЭС);

3. Построена UML-диаграмма вариантов использования (use-case), описывающая принципы работы ИСРЭС на основе динамически обновляемых баз знаний;

4. Выполнена генерация графической информационной модели базы знаний (БЗ), которая представляет структуру и семантику информационной части в ИСРЭС;

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

Практическая значимость результатов работы заключается в создании эффективных программных инструментов и средств построения экспертных систем на основе динамически обновляемых баз знаний. Также подтверждаются использованием разработанного ИСРЭС в составе CASE-средства CA Erwin Data Modeler и Prolog интерпретатора Tau Prolog.

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

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

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

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

Основные положения, выносимые на защиту:

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

2. Теоретические исследования по совершенствованию способов взаимодействия программных систем Prolog, JavaScript, Python, PHP, а также с СУБД PostgreSQL и MySQL;

3. Результаты исследований по сформированной UML-диаграммы для описания ИСРЭС на основе динамически обновляемых баз знаний;

4. Результаты создания ER-модели для БЗ ИСРЭС, спроектированной с помощью CASE-средства CA Erwin Data Modeler;

5. Результаты тестирования взаимодействия программных компонентов ИСРЭС на платформе Cypress.io.

Апробация работы. Основные положения работы были представлены и доложены на следующих конференциях и семинарах:

1. XVI Международная конференция имени А.Ф. Терпугова «Информационные технологии и математическое моделирование (ИТММ-2017)» (29 сентября -03 октября 2017 г., г. Казань);

2. XXII Всероссийская научно-техническая конференция студентов, молодых учёных и специалистов «Новые информационные технологии в научных исследованиях» (15-17 ноября 2017 г., г. Рязань);

3. IX студенческая конференция по математическому моделированию и информационным технологиям «SMIT 2017» (27-28 апреля 2017 г., г. Казань);

4. II Международная конференция по новым тенденциям и технологиям управления «NCETCMT-2017» (21-22 февраля 2017 г., г. Аллахабад (Индия));

5. VI Всемирная конференция по информационным системам и технологиям WorldCIST'18 «Trends and Advances in Information Systems and Technologies» (27 -29 марта 2018 г., г. Неаполь (Италия));

6. XXIII Всероссийская научно-техническая конференция студентов, молодых учёных и специалистов «Новые информационные технологии в научных исследованиях» (12-14 декабря 2018 г., г. Рязань);

7. IV Международный конгресс по информационно-коммуникационным технологиям «Fourth International Congress on Information and Communication Technology» (25-26 февраля 2019 г., г. Лондон (Великобритания));

8. Международная научно-практическая конференция по математическому моделированию, программированию и прикладной математике «International Scientific and Practical Conference on Mathematical Modeling, Programming and Applied Mathematics» (27-28 июля 2019 г., г. Великий Новгород, Россия);

9. Международная конференция по интеллектуальным тенденциям в системах, безопасности и устойчивости «World Conference on Smart Trends in Systems, Security and Sustainability (WS4 2019)» (30-31 июля 2019 г., г. Лондон (Великобритания));

10. 40-я юбилейная международная конференция по архитектуре информационных систем и технологий «40th Anniversary International Conference on Information Systems Architecture and Technology - ISAT 2019» (15-17 сентября 2019 г., г. Вроцлав (Польша));

11. На совместном симпозиуме «Computer Science and Applied Mathematics» между Казанским (Приволжским) федеральным университетом и Университетом Киндай (Япония), (6-7 февраля 2020 г.);

12. На ежегодных итоговых научно-практических конференциях и кафедральных семинарах Казанского (Приволжского) федерального университета (2015-2020 г.).

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

Публикации. Основные результаты по теме диссертации изложены в 26 печатных изданиях, 4 из которых изданы в журналах, рекомендованных ВАК, 15 - в периодических научных журналах, индексируемых Web of Science и Scopus,

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

Структура и объём работы. Диссертационная работа состоит из введения, трёх глав, выводов по каждым главам, заключения, списка сокращений и условных обозначений, списка использованной литературы и четырёх приложений. Основная часть диссертации изложена на 150 страницах машинописного текста, 14 таблицах, 49 рисунках и содержит список литературы, включающий в себя 130 наименований.

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

Первая глава. «Анализ программных инструментов и проблем при построении экспертных систем». В главе проведён обзор CASE-инструментов автоматизации создания программных продуктов: CA ERwin Modeling Suite, Rational Suite, ARIS ToolSet, Power Designer, BizAgi BPM Suit, ELMA BPM, а также приложений направленных на построение экспертных систем: Nexpert Object, Exsys, XpertRule, Guru, Flex, Acquire, ReSolver.

Рассмотренные CASE-средства были условно разделены на четыре группы:

1. Программные инструменты, охватывающие весь жизненный цикл создания программного обеспечения (IBM Rational, CA ERwin Modeling Suite);

2. Программные комплексы, автоматизирующие разработку программного продукта (Power Designer);

3. Технические средства анализа и имитационного моделирования БЗ (Aris Toolset);

4. Программные системы управления базой знаний (BizAgi, Elma, ERwin DM).

Поскольку в работе одной из поставленной задачи является автоматизация

построения экспертных систем на основе ИСРЭС, то наилучшим вариантом для управления БЗ представляется CASE-средство CA Erwin DM, обеспечивающее автоматическую генерацию ER-модели и управление БЗ.

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

1. Сложность структуризации входных данных, поступающих в режиме реального времени;

2. Сложность совместимости различных парадигм программирования и систем управления базами данных (СУБД) в рамках единой ИСРЭС;

3. Высокая стоимость зарубежных аналогов программно-инструментальных средств построения экспертных систем и практическое отсутствие внедрения подобных отечественных разработок;

4. Недостаточная распространенность подобных программных инструментов с открытым исходным кодом (Open source).

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

Одними из таких Prolog интерпретаторов являются системы, используемые в научных исследованиях: SWISH, Rextester, Execute Prolog Online (GNU Prolog v1.4.4), PRIMAT.ORG и Tau Prolog.

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

В работе автором был использован новый полноценный интерпретатор PrologX который выпускается под лицензией BSD 3-Clause (с открытым исходным кодом (Open source)) - Tau Prolog, реализованный на JavaScript и работающий прямо в веб браузере, обеспечивая тем самым гибкость модификации компонентов ЭС.

На основе рассмотренных методов автором работы были обозначены компоненты ИСРЭС (компонент редактирования экспертной системы, БЗ экспертной системы, компонент для внесения новых знаний), направленные на обеспечение совместимости разнородных программных систем и повышающие

эффективность построения экспертных систем за счет применения программных инструментов с открытым исходным кодом (Open Source).

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

Глава 2. «Проектирование программных инструментов для автоматизации построения экспертных систем». В главе подробно рассмотрены процессы применения программных инструментов для автоматизации построения экспертных систем.

На основе анализа этапов создания экспертных систем была построена UML-диаграмма вариантов использования (use-case), описывающая принципы работы интегрированной среды разработки экспертных систем (ИСРЭС) на основе динамически обновляемых баз знаний.

Для эффективности разработки экспертных систем было использовано CASE- средство CA Erwin Data Modeler. CASE-средство обеспечило возможность автоматической генерации ER-модели БЗ с прямым (Forward Engineering) и обратным (Reverse Engineering) проектированием ИСРЭС.

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

С целью повышения эффективности построения экспертных систем автором также были выделены ключевые этапы разработки ИСРЭС. Эти этапы были включены в жизненный цикл создания ИСРЭС.

Для повышения эффективности создания ЭС на основе ИСРЭС было использовано CASE-средство CA Erwin Data Modeler, предназначенное для проектирования ER-модели и модификации БЗ ИСРЭС. На основе сущностей,

атрибутов/полей была сформирована модель (логическая и физическая) БЗ ИСРЭС.

Для обеспечения совместимости функционирования программных инструментов был разработан программный инструмент на языке программирования Python c применением современных библиотек (pandas, seaborn, matplotlib) в области анализа данных и прогнозирования. Разработанный программный инструмент отвечает за формирование требований к программной среде. Одними из основных элементов программного инструмента являются применение средств телеметрии (Python библиотеки: os, platform,system, proc,wmi и др.), а также алгоритм поиска ассоциативных правил (Python библиотека: apyori, matplotlib и др.).

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

Глава 3. «Построение и тестирование прототипов экспертных систем». В главе представлены результаты исследования, связанные с построением и тестированием прототипов экспертных систем на основе ИСРЭС. На основе ИСРЭС была осуществлена разаработка экспериментальных экспертных систем в области образования и здравоохранения. Для проверки эффективности взаимодействия разнородных программных систем друг с другом было выполнено тестирование ИСРЭС в платформе Cypress.io. На основе проведённых исследований были запрограммированы программные скрипты (для создания ЭС(create.js), обновления (insert.js) и проверки Prolog правил (check.js)) на языке программирования JavaScript. Представлены примеры построения прототипов ЭС «Вакцинация» и «Разработка и анадиз требований».

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

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

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

ГЛАВА 1. АНАЛИЗ ПРОГРАММНЫХ ИНСТРУМЕНТОВ И ПРОБЛЕМ ПРИ ПОСТРОЕНИИ ЭКСПЕРТНЫХ СИСТЕМ

В первой главе проведён обзор CASE-инструментов автоматизации создания программных продуктов: CA ERwin Modeling Suite, Rational Suite, ARIS ToolSet, Power Designer, BizAgi BPM Suit, ELMA BPM, а также приложений направленных на построение экспертных систем: Nexpert Object, Exsys, XpertRule, Guru, Flex, Acquire, ReSolver.

Рассмотрены модели представления знаний в экспертных системах для последующей интеграции в ИСРЭС. Предложены способы и методы интеграции программных систем с реляционными СУБД на основе динамически обновляемых баз знаний исследуемой предметной области. В ходе рассмотренных проблем в предметной области, были поставлены соответствующие задачи, обеспечивающие достижение поставленных целей.

1.1. Обзор CASE-средств и технологий построения экспертных систем

В этой части диссертационной работы автором проведён обзор наиболее значимых работ по теме исследования.

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

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

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

Процедура сбора и анализа публикаций

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

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

2. Научные нововведения в исследованиях, предлагающие новые методы, подходы или развитие уже существующих программных инструментов;

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

В ходе поиска и сбора необходимой информации по теме исследования, автором были использованы популярные сервисы поиска научных работ в следующих баз данных: Google Scholar, ACM Digital Library, Scopus, Web of Science и IEEE Xplore Digital Library. В ходе поиска информации было обнаружено, что последний тип слишком широк, чтобы его охватить.

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

Из-за большого объёма информации было решено разбить содержательную часть работы по анализу на отдельные разделы: обзор программных средств (раздел 1.1), сравнение программных средств разработки программных приложений (раздел 1.2), а также наиболее значимые программные инструменты автоматизации построения экспертных систем (раздел 1.3).

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

Список литературы диссертационного исследования кандидат наук Бурнашев Рустам Арифович, 2020 год

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ

1. Андрейчиков А. В. Интеллектуальные информационные системы: Учебник для вузов/А.В. Андрейчиков, О.Н. Андрейчикова //М.: Финансы и статистика. - 2006.

2. Атаманов Ю. С. Обзор базовых возможностей ERwin Data Modeler/ Ю. С. Атаманов, В. С.Гончарук, С. Н. Гордеев //Молодой ученый. - 2017. - №. 9. - С. 26-28.

3. Батыршин И. З. и др. Нечеткие гибридные системы. Теория и практика/Под ред. НГ Ярушкиной //М.: ФИЗМАТЛИТ. - 2007. - Т. 208.

4. Баженов Р. И. О применении экспертных систем в различных областях/Р.И. Баженов, А.Н. Размахнина //Постулат. - 2017. - №. 1.

5. Бердова Ю. С. Использование CASE-технологий как основных средств разработки программных систем на предприятиях экономического профиля //Экономика и предпринимательство. - 2015. - №. 10-1. - С. 496-499.

6. Блюмин С.Л., Шуйкова И.А., Сараев П.В. "Нечеткая логика: алгебраические основы и приложения." - Липецк: ЛЭГИ, 2002. - 111 с.

7. Братко И. Алгоритмы искусственного интеллекта на языке Prolog, 3-е издание. : Пер. с англ. — М. : Издательский дом "Вильямс", 2004. — 640 с. : ил. — Парал. Тит. англ.

8. Брусакова И.А. Система управления базами измерительных знаний /И.А. Брусакова, С.О. Мамаева // Управление базами знаний. -2006. - № 5. - С.93-97.

9. Брусакова И. А. Имитационное моделирование в информационных системах. -СПбГИЭУ, 2004.

10. Бурнашев Р.А. Программа для автоматизации построения экспертных систем на основе динамически обновляемых баз знаний: свидетельство о государственной регистрации программы для ЭВМ № 2019618648 Российская Федерация, 03.07.2019; правообладатели Р.А. Бурнашев, А.И. Еникеев, И.С. Курасов, ФГАОУ ВО КФУ; заявка № 2019617582 от 24.06.2019. - 1 с.

11. Бурнашев Р.А. Применение экспертных систем в CASE-средствах разработки программных продуктов/Р.А. Бурнашев //XXI век: Итоги прошлого и проблемы настоящего плюс. - 2018. - Т. 7. - №. 4(44). - С. 85-91.

12. Бурнашев Р.А. Разработка cпециализированного CASE cредства «DBR» по подбору СУБД / Ф.О Амер Исмаил, Р.А. Бурнашев, А.И. Еникеев А. И.//ХХ1 век: Итоги прошлого и проблемы настоящего плюс. - 2018. -Т.7.- №. 2(42). - С. 22-25

13. Бурнашев Р. А. Решение проблемы совместимости между логическим языком программирования Prolog и СУБД PostgreSQL/ Р.А. Бурнашев, А. Губайдуллин// Новые информационные технологии в научных исследованиях: материалы XXII Всероссийской научно-технической конференции студентов, молодых учёных и специалистов. - Рязань: Рязанский государственный радиотехнический университет. - 2017. - С. 180-181

14. Вакин В. В., Корухова Л. С., Любимский Э. З., Малышко В. В. Ассоциативные методы планирования решений сложных задач. - М.: Препринт Института прикладной математики им. М. В. Келдыша РАН, № 81, 1997 г.

15. Вендров А.М. CASE-технологии. Современные методы и средства проектирования информационных систем //М.: Финансы и статистика. - 1998. - Т. 176. - С. 2000.

16. Вятченин Д.А. "Нечеткие методы автоматической классификации." Минск: Технопринт. - 2004. - 219 с.

17. Гаврилова З.А. Модернизация аппаратного обеспечения персональных компьютеров, серверов, периферийных устройств и оборудования. Учебник для студентов среднего профессионального образования; Академия (Academia) - М., 2016. - 829 c.

18. Горбань В.Д. Сравнительный обзор программных средств моделирования информационных систем/ В.Д. Горбань, О.Ф. Абрамова //Студенческий научный форум 2014: докл. VI междунар. студ. электрон. науч. конф., 15 февр.-31 марта 2014 г. Технические науки/РАЕ. - 2014. - С. 1.

19. Горбаченко В. И. Проектирование информационных систем с CA ERwin Modeling Suite 7.3 : учебное пособие / В. И. Горбаченко, Г. Ф. Убиенных, Г. В. Бобрышева -Пенза: Изд-во ПГУ, 2012. - 154 с.

20. Аксенов К. А. Мультиагентное имитационное моделирование бизнес-процессов и организационно-технических систем, среда BPSIM / К. А. Аксенов, Е. Ф. Смолий //ИММ0Д-2011». СПб.: ЦНИИТС. - 2011. - Т. 1. - С. 11-19.

21. Горин С.В., Тандоев А.Ю. Применение CASE-средства Erwin 2.0 для информационного моделирования в системах обработки данных. "СУБД", 1995, №3. - С. 1-11.

22. Грекул, В. И. Проектирование информационных систем / В. И. Грекул, Г. Н. Денищенко, Н. Л. Коровкина. - М.: Интернет-университет информационных технологий; БИНОМ. Лаборатория знаний, 2008. - 300 с.

23. Григорьев А.В. Анализ существующих способов создания интерфейса «языки формальных спецификаций — проблемно-ориентированные языки» / Григорьев А.В., Морозова О.В. // Сборник научных трудов донецкого национального технического университета. - Донецк, 2011. - № 14. - С. 270 - 275.

24. Григорьев А.В. Построение двухсторонних трансляторов в задаче создания интеллектуальных надстроек над проблемно-ориентированными САПР / Григорьев А.В., Морозова О.В. // Сборник трудов XI международной научной конференции им. Т.А. Таран. - Киев: Просвита, 2011. - С. 68-75.

25. Гущин А.Н.Экспертные системы: учеб. Пособие А. Н. Гущин, И. А. Радченко. -СПб.: БГТУ. - 2007. - 92 с.

26. Дейт К. Дж. Введение в системы баз данных. - М.: Издательский дом «Вильямс», 2001. - 1072 с.

27. Джексон П. Введение в экспертные системы //Вильямс, 2001. - Вильямс, 2001, 2015.

28. Дубейковский В. И. Практика функционального моделирования с AllFusion Process Modeler 4.1. - ДИАЛОГ-МИФИ, 2004.

29. Рыбина, Г. В. "Основы построения интеллектуальных систем." М.: Финансы и статистика (2010).

30. Рыбина Г. В. Экспертные системы и инструментальные средства для их разработки: некоторые итоги/ Г.А. Рыбина //Информационно-измерительные и управляющие системы. - 2013. - Т. 11. - №. 5. - С. 35-48.

31. Юрин А. Ю. Нотация для проектирования баз знаний продукционных экспертных систем/А.Ю. Юрин //Объектные системы. - 2016. - №. 12.

32. Камалов А.М. Разработка прототипа экспертной системы «Medexpert» дифференциальной диагностики заболеваний/ А.М. Камалов, Р.А. Бурнашев //Информационные технологии и математическое моделирование (ИТММ-2017):Материалы XVI Международной конференции имени А.Ф.Терпугова (29 сентября - 3 октября 2017 г.). - Томск: Изд-во НТЛ. - 2017. - Ч. 2. - С. 189-192.

33.Бурнашев Р.А. Разработка прототипа экспертной системы «DBEexpert» по подбору СУБД при разработке программного обеспечения/ Р.А. Бурнашев, М.Морозова, А.Мистриков, В.Георгиев//Информационные технологии и математическое моделирование (ИТММ-2017):Материалы XVI Международной конференции имени А.Ф.Терпугова (29 сентября - 3 октября 2017 г.). - Томск: Изд-во НТЛ. - 2017. - Ч. 2. - С. 158-163.

34. Кофман А. Введение в теорию нечетких множеств: Пер. с франц. - М.: Радио и связь, 1982. - 432 с. 48. Борисов В.В., Круглов В.В., Федулов А.С. "Нечеткие модели и сети." М.: Горячая линия - Телеком, 2007. - 284 с

35. Круглов В.В., Дли М.И. Интеллектуальные информационные системы: компьютерная поддержка систем нечеткой логики и нечеткого вывода. - М.: Физматлит, 2002.

36. Маклаков, С. В. Моделирование бизнес-процессов с AllFusion Process Modeler / С. В. Маклаков. - М.: Диалог - МИФИ, 2008. - 224 с.

37. Маклаков, С. В. Создание информационных систем с AllFusion Modeling Suite / С. В. Маклаков. - М.: Диалог - МИФИ, 2007. - 432 с.

38. Малышев Н. Г., Берштейн Л. С., Боженюк А. В. Нечеткие модели для экспертных систем в САПР. - Энергоатомиздат, 1991. - С. 136-136.

39. Малышев Н.Г., Берштейн Л.С., Боженюк А.В. Нечеткие модели для экспертных систем в САПР.-М.: Энергоатомиздат, 1991.-136 с.

40. Мальцева У. В. Информационные технологии в практике управления качеством/ У. В. Мальцева, В. В. Макаров //Инновации. - 2011. - №. 12. - С. 116-119.

41. Марка, Д. А. Методология структурного анализа и проектирования / Д. А. Марка, К. Мак Гоуэн. - М.: МетаТехнология, 1993. - 240 с.

42. Матрохин, А.Е. Проблемы процесса разработки программных систем [Электронный ресурс] / Матрохин А.Е., Абрамова О.Ф. // Студенческий научный форум 2014 : докл. VI междунар. студ. электрон. науч. конф., 15 февр. - 31 марта 2014 г.

43. Федоров Н. В. Проектирование информационных систем на основе современных CASE-технологий: учеб. пособие. - МГИУ, 2008.

44. Осипов Г.С. Методы искусственного интеллекта // М.: Физматлит, 2011. — 296 с.

45. Петров Ю.К. JAM - инструментальное средство разработки приложений в информационных системах архитектуры "клиент/сервер", построенных на базе РСУБД. "СУБД", 1995, №3.

46. Питер Джексон Введение в экспертные системы. - М.-СП.-Киев: Вильямс, 2001 -622 с.

47. Пожитнева В.В. Кейс-технологии для развития одаренности // Химия в школе. -2008. - №4. - С. 13-17.

48. Полат Е. С. Организация дистанционного обучения в Российской Федерации // Информатика и образование. - 2005. - № 4. - С. 25-33.

49. Полат Е.С. Современные педагогические и информационные технологии в системе образования : учеб. пособие для студ. вузов / Полат Е.С. ; Бухаркина М.Ю. - 2-е изд., стер. - М: Академия, 2008. - С. 368.

50. Полковникова Н. А. Разработка модели экспертной системы на основе нечёткой логики/ Н.А. Полковникова, В. М. Курейчик //Известия Южного федерального университета. Технические науки. - 2014. - №. 1 (150).

51. Полковникова Н. А. Проектирование гибридной экспертной системы поддержки принятия решений //В сб. тез. докл. II Всероссийского конгресса молодых учёных (9-12 апреля 2013 г.).-СПб.: НИУ ИТМО. - 2013. - С. 46-48.

52. Полковникова Н. А. Об интеллектуальном анализе баз данных для экспертной системы /Н.А. Полковникова, В.М. Курейчик //Информатика, вычислительная техника и инженерное образование. - 2013. - №. 2. - С. 13.

53. Бурнашев Р.А. CASE средства автоматизации приобретения знаний для эффективного построения экспертных систем/ Р.А. Бурнашев// Новые информационные технологии в научных исследованиях: материалы XXIII Всероссийской научно-технической конференции студентов, молодых учёных и специалистов. - Т.1. - Рязань: Рязанский государственный радиотехнический университет. - 2018. - С. 222-224.

54. Редмонд Э. Семь баз данных за семь недель. Введение в современные базы данных и идеологию NoSQL. / Редмонд Э., Уилсон Дж. Р.; под ред. Картер. Ж.; пер. с англ. Слинкин А. А. - М.: ДМК Пресс, 2013. - 384с.: ил.

55. Ризаев И. С. Применение case-технологии в процессе обучения / И.С. Ризаев, А. Л. Осипова //Образовательные технологии и общество. - 2011. - Т. 14. - №. 3.

56. Рокотян И.С. Разработка баз знаний на основе экспертной системы EXSYS / Рокотян И.С., Хачатурова Е.А. - М.: Издательство МЭИ, 1998. - 28 с.

57. Ротштейн А.П. Влияние методов дефаззификации на скорость настройки нечеткой модели/А.П. Ротштейн, С.Д. Штовба // Кибернетика и системный анализ.- 2002.- №1.

58. Сидихменова Е.И. Применение CASE-технологий при проектировании информационных систем/ Е.И. Сидихменова, С.А. Ланец //Научно-техническое и экономическое сотрудничество стран АТР в XXI веке. - 2013. - Т. 1. - С. 288-294.

59. Спицина И.А. Метод поддержки принятия решений при разработке информационных систем на основе мультиагентного подхода: дис. канд. техн. наук: 05.13.01. - ФГАОУ ВО «УрФУ имени первого Президента России Б.Н. Ельцина», Новосибирск, 2015 - 166 с.

60. Старков В. В. Архитектура персонального компьютера. Организация, устройство, работа; Горячая линия - Телеком - М., 2018. - 538 c.

61. Попов Э. В. и др. Статические и динамические экспертные системы // М.: Финансы и статистика. - 1996. - Т. 320.

62. Тельнов Ю.Ф. Интеллектуальные информационные системы /Ю.Ф. Тельнов// Московский международный институт эконометрики, информатики, финансов и права. - М., 2004. - C. 11.

63. Остроух А.В. Системы искусственного интеллекта в промышленности, робототехнике и транспортном комплексе: монография / А.В. Остроух -Красноярск: Научно-инновационный центр, 2013. - 326 с.

64. Титенко Е. А. и др. Проектирование экспертных систем на основе продукционного подхода //Информационно-измерительные и управляющие системы. - 2015. - Т. 13. - №. 6. - С. 15-19.

65. Тоискин В.С. Интеллектуальные информационные системы: учебное пособие. -Ставрополь: Изд-во СГПИ, 2009. - Часть 1. - С. 3.

66. Трофимов С. Методика создания программного обеспечения для систем управления предприятиями с использованием типовых программных компонентов //Режим доступу: http://www. caseclub. ru/articles/metodpo.html (дата обращения: 28.03.2020).

67. Хабаров С. П. Интеллектуальные информационные системы. PROLOG-язык разработки интеллектуальных и экспертных систем: учебное пособие/ С.П. Хабаров //СПб.: СПбГЛТУ. - 2013. - С. 140.

68. Хабаров С. П. Экспертные системы [Електронний ресурс] /С.П. Хабаров //Режим доступу: http://www. habarov. spb. ru/new_es/index. htm (дата обращения: 10.03.2020).

69. Хорошевский В.Г. Архитектура вычислительных систем: Учеб. пособие. - 2-е изд., перераб. и доп. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2008. - 520 с.

70. Частиков, А. П. Разработка экспертных систем. Среда CLIPS / Частиков А.П., Гаврилова Т.А., Белов Д.Л. - СПб.: БХВ-Петербург, 2003. - 608 с.

71. Чернов В. Г. Модели поддержки принятия решений в инвестиционной деятельности на основе аппарата нечетких множеств/В.Г. Чернов//М.: Горячая линия—Телеком. - 2007. - С. 312.

72. Сальников О. Н. ^ор и анализ телеметрических данных/ О. Н. Сальников, Н.П. Сидорова //Инновационные аспекты социально-экономического развития региона. - 2017. - С. 485-495.

73. Ялкаев Н.С. Практическое применение результатов исследования структуризации и первичной обработки документов MS Word/ Н.С. Ялкаев, Р.А. Бурнашев// В книге: SMIT 2017 IX студенческая конференция по математическому моделированию и информационным технологиям.- Казань: TGT Oilfield Services. -2017. С. 17.

74. Agrawal R., Imielinski T., Swami A. Database Mining: A Performance Perspective // IEEE Transactions on Knowledge and Data Engineering. - December 1993. - P. 914925.

75. Agrawal R., Imielinski T., Swami A. Mining association rules between sets of items in large databases // Proceedings of ACM SIGMOD Conference on Management of Data (SIGMOD'93). - May 1993. - P. 207-216.

76. Agrawal R., Srikant R. Fast Algorithms for Mining Association Rules // Proc. 20th Int. Conf. Very Large Data Bases, 1994. - P. 487-499.

77. B. Tomic, J. Jovanovic, and V. Devedzic, "JavaDON: an open-source expert system shell" Expert Systems with Applications, vol. 31 no. 3, 2006, pp. 595-606.

78. Burnashev R. A. et al. Research on the Development of Expert Systems Using Artificial Intelligence //International Conference on Information Systems Architecture and Technology. - Springer, Cham, 2019. - С. 233-242.

79.Burnashev R.A. Data Structuring and Data Processing for the Information Intellectual Applications/R.A. Burnashev, N.S. Yalkaev, A.I. Enikeev, V.O. Georgiev //Journal Of Fundamental And Applied Sciences. - 2017. - Vol.9, Spec. Is.. - P.1403-1416.

80. Burnashev R. A. Expert system building tools based on dynamically updated knowledge/ R.A. Burnashev, Ismail Amer, A.I. Enikeev //Journal of Physics: Conference Series. - 2019. - Vol. 1352. - №. 1. - P. 012008.

81. Burnashev R.A On the case tools in the software development life cycle/ R.A. Burnashev, A.I. Enikeev //Journal of Advanced Research in Dynamical and Control Systems. - 2018. - Vol.10, Is.10 Special Issue. - P.1729-1734.

82. Burnashev R.A. Specialized case tools for the development of expert systems/ R.A. Burnashev, A.V. Gubajdullin, A.I. Enikeev //Advances in Intellegent Systems and Computing. - 2018. - Vol.745. - P. 599-605.

83. Burnashev R.A. Illustration of experimental version of the expert system/ R.A. Burnashev,A.I. Enikeev // International Journal of Pharmaceutical Research. -2020. - Vol.12, Is.1. - P.775-780.

84. Burnashev R.A. Structuring of Textual Data and its Processing with Database Management Systems in the Development of Computer Assisted Testing Systems for Students/R.A.Burnashev, A.I. Enikeev//International Journal of Soft Computing. -2016. - Vol. 11. Issue 7 - P. 444-447.

85. Burnashev R.A. Building a Desktop App with Borland Delphi 7 to Data Structuring/ R.A. Burnashev, A.I. Enikeev, R.E. Aliev// 2nd National Conference on Emerging Trends and Management Technologies(NCETCMT). - 2017. - P. 20-23.

86. Burnashev R.A. Data Structuring Using Web Technologies in the Development of Information Systems/R.A. Burnashev,T.E. Makarov,G.Z. Nigmatzyanova, V.O. Georgiev, A.I. Enikeev// 2nd National Conference on Emerging Trends and Management Technologies(NCETCMT). - 2017.- P. 4-8.

87. Burnashev R.A. Research on the Development of Expert Systems Using Artificial Intelligence/ R.A. Burnashev, R.G Gabdrahmanov, I.F.Amer, G.Z. Vakhitov, A.I. Enikeev // Advances in Intelligent Systems and Computing. - 2020. -Vol.1051. -P. 233-242.

88. Burnashev R.A. Data structuring and data processing for the information intellectual applications/ R.Burnashev, N.Yalkaev, V.Georgiev //Информационные технологии и математическое моделирование (ИТММ-2017):Материалы XVI Международной конференции имени А.Ф.Терпугова (29 сентября - 3 октября 2017 г.). - Томск: Изд-во НТЛ. - 2017. - Ч. 2. - С. 145-150.

89. Burnashev Rustam, Gubaydullin Albert, Enikeev Arslan, On The Development Of Expert Systems//National Academy Of Managerial Staff Of Culture And Arts Herald. -2018. - Vol., Is.2. - P.80-84.

90. Cholewa W. Multimodal statements networks for diagnostic applications. In: Sas P., Bergen B. (Eds.) Proceedings of the International Conference on Noise and Virbation Engineering ISMA 2010, September 20-22, Katholique Universiteit Lueven, Lueven, Belgium, pp. 817- 830, 2010.

91. Cholewa, W., Amarowicz M., Chrzanowski P.,Rogala T.: 5th International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management. IC3K 2013, Vilamoura, Portugal, 2013 Proceedings of the International Conference on Knowledge Engineering and Ontology Development KEOD 2013. Eds.: J. Filipe, J. Dietz. [B.m.] : SciTePress - Science and Technology Publications, 2013

92. Clancey, B. C. and Shortliffe E. H. (1984) "Medical Artificial Intelligence: The First Decade", Addison-Wesley.

93. Cohen E., Datar M., Fujiwara S., Gionis A., Indyk P., Motwani R., Ullman J.D., Yang C. Finding interesting associations without support pruning // IEEE Transactions on Knowledge and Data Engineering. - January 2001. - P. 64-78.

94. Lin D. The Problems of Creating Expert Systems Using Artificial Neural Networks and Their Use in Medicine//D. Lin, R.A. Burnashev, A.I. Enikeev //IIOAB Journal. - 2018.

- Vol.9, Is.2. - P.136-142.

95. Duman E., Ozcelik M. H. Detecting credit card fraud by genetic algorithm and scatter search //Expert Systems with Applications. - 2011. - T. 38. - №. 10. - C. 13057-13063.

96. Durkin J. 4 Expert System //The Handbook of Applied Expert Systems. - 1997. - T. 4.

- C. 15..

97. Eining M. M., Dorr P. B. The impact of expert system usage on experiential learning in an auditing setting //Journal of Information Systems. - 1991. - T. 5. - №. 1. - C. 1-16.

98. Resnick, Paul, and Hal R. Varian. "Recommender systems." Communications of the ACM 40.3 (1997): 56-58.

99. Enikeev A. I. Transformational Technique of Interactive Systems Development/

A. I. Enikeev, Victor O. Georgiev, Rustam A. Burnashev // HELIX. - 2018. - Vol.8, Is.1. - P. 2295-2300.

100. Eriksson H. Expert systems as knowledge servers //Ieee Expert. - 1996. - T. 11. - №. 3.

- C. 14-19.

101. Nakai K., Kanehisa M. Expert system for predicting protein localization sites in gramnegative bacteria //Proteins: Structure, Function, and Bioinformatics. - 1991. - T. 11. -№. 2. - C. 95-110.

102. Gabdrahmanov R.T. Formulation of the Task of Constructing an Expert System for the Diagnosis of Leukemia / R.T. Gabdrahmanov, A.H. Hussein, R.A. Burnashev, A.I. Enikeev // Proceedings of the 3rd World Conference on Smart Trends in Systems, Security and Sustainability, WorldS4. - 2019. - P. 7-11.

103. Burnashev R. A Construction of specialized Computer Aided Software Engineering (CASE) tools for the development of expert systems//R.A.Burnashev, A.V. Gubaydullin, A.I.Enikeev// 3C Tecnología. Glosas de innovación aplicadas a la pyme. - 2020. - Vol. 9(1). - P.61-77.

104. Kamalov A.M. Development of the expert system prototype «MedExpert» for differential disease diagnostics/A.M. Kamalov, R.A. Burnashev //Astra Salvensis. -2017. - Vol.2017, Is.. - P.55-64.

105. Abu-Nasser B. Medical expert systems survey //International Journal of Engineering and Information Systems (IJEAIS). - 2017. - T. 1. - №. 7. - C. 218-224.

106. Teer F. P. The Expert Systems Course in AACSB Accredited Business Schools //Journal of Information Systems Education. - 2020. - T. 8. - №. 2. - C. 5.

107. Hussein A. H. System of Diagnosis of Acute Nazhopharingitis Using Artificial Neural Networks/A.H. Hussein, M. H. Salman, R. A. Burnashev //Proceedings of the 3rd World Conference on Smart Trends in Systems, Security and Sustainability, WorldS4. -2019. - P. 344-348.

108. Li S., Li J. Z. WebInternational: Combining Web-based knowledge automation, fuzzy rules and on-line databases for international marketing planning //Expert Systems with Applications. - 2010. - T. 37. - №. 10. - C. 7094-7100.

109. Luzar M. et al. Sensor-Based Weightlifting Workout Assisting System Design and Its Practical Implementation //Journal of Sensors. - 2019. - T. 2019.

110. L.V. Naykhanova, and I.V. Naykhanova, "Conceptual model of knowledge base system" Journal of Physics: Conference Series. vol. 1015. no. 3. IOP Publishing, 2018, pp. 1-4.

111. M. Salem, M. Roushdy, and R. A. HodHod, "A Rule-Based Expert System for Diagnosis of Heart Diseases" Egyptian Computer Science Journal vol. 23 no. 1, 2001.

112. Maletic J., Marcus A. Data Cleansing: Beyond Integ-rity Analysis // Proceedings of The Conference on Information Quality (IQ2000). - Massachusetts Institute of Technology, Boston, MA, USA. - 2000. - P. 200-209.

113. Martin Strauss Jess The Java Expert System Shell / Martin Strauss // Seminar «AI Tools» - 2007. - 33c.

114. Son L. H. HU-FCF: a hybrid user-based fuzzy collaborative filtering method in recommender systems //Expert Systems with Applications: An International Journal. -2014. - T. 41. - №. 15. - C. 6861-6870.

115. Elsharif A. A. et al. Hepatitis Expert System Diagnosis Using Sl5 Object. - 2019.

116. Park J.S., Chen M.S., Yu P.S. An effective hash-based algorithm for mining association rules // New York: SIGMOD ACM Press, 1995. - P. 175-186.

117. Al-Shawwa M., Abu-Naser S. S. Knowledge Based System for Apple Problems Using CLIPS //International Journal of Academic Engineering Research (IJAER). - 2019. - T. 3. - №. 3. - C. 1-11.

118. Psiuk K. Knowledge editor for the diagnostic expert system Diadyn. 4th International Congress on Technical Diagnostics. Diagnostics'2008, Olsztyn, Poland, 09-12 September 2008. Olsztyn, 2008, p. 147.

119. R. M. Wygant "CLIPS — A powerful development and delivery expert system tool" Computers & Industrial Engineering, vo.17 no (1-4), 1989, pp. 546-549.

120. Rafea, "Web-Based Domain Specific Tool for Building Plant Protection Expert Systems" Expert Systems, Petrica Vizureanu (Ed.), ISBN: 978-953-307-032-2, InTech, 2010, pp. 193-202.

121. Hall M. et al. The WEKA data mining software: an update //ACM SIGKDD explorations newsletter. - 2009. - T. 11. - №. 1. - C. 10-18.

122. Russell S. J., Norvig P. Artificial intelligence: a modern approach. - Malaysia; Pearson Education Limited, 2016.

123. Burnashev R.A. The using CASE tools in the software development life cycle / R.A.Burnashev, A.I. Enikeev // International Journal of Engineering & Technology. -2018. - Vol. 7. No 3.27 - P. 631-634.

124. Enikeev A.I. Software tools and techniques for the expert systems building/ A.I. Enikeev, R.A. Burnashev,G.Z. Vakhitov //Advances in Intelligent Systems and Computing. - 2020. - Vol.1041. - P.191-199.

125. Mace, Jonathan, Ryan Roelke, and Rodrigo Fonseca. "Pivot tracing: Dynamic causal monitoring for distributed systems." ACM Transactions on Computer Systems (TOCS) 35.4 (2018): 1-28.

126. Yin X., Han J. CPAR: Classification based on predictive association rules //Proceedings of the 2003 SIAM International Conference on Data Mining. - Society for Industrial and Applied Mathematics, 2003. - C. 331-335.

127. Zaki M. J. Mining non-redundant association rules //Data mining and knowledge discovery. - 2004. - T. 9. - №. 3. - C. 223-248.

128. Wulandari R., Jonas D., Alwarits N. F. Design of Expert System Application for Android-Based DSLR Camera Damage Diagnosis //IAIC Transactions on Sustainable Digital Innovation (ITSDI). - 2020. - T. 1. - №. 2. - C. 99-107.

129. Z. Abdul-Hadi, et al, "Rapid Generation of Plant Protection Expert Systems" Computers in Agriculture and Natural Resources - Proc.of the 4th World Congress (Orlando, Florida USA), 2006, pp. 282-287.

130. Zainullina A. R. Development of the Prototype Expert System "Data Base Recommender"/ A. R. Zainullina, G. V.Larionov, R. A. Burnashev //Journal of Fundamental and Applied Sciences. - 2017. - Vol. 9. - P.1417-1429.

ПРИЛОЖЕНИЕ А. ПРОГРАММНЫЙ КОД ИНТЕГРИРОВАННОЙ

СРЕДЫ

На А.1, А.2, А.3, А.4 и А.5 представлен программный код программного инструмента автоматизации создания экспертных систем Листинг А.1 Компоненты программных инструментов

<?php

require_once("data/db_connect.php");

testConnection();

session_start();

if (!isset($_SESSION["currentUser"])) { header("location: index.php"); } else {

$currentUser = $_SESSION["currentUser"]; }

?>

<!DOCTYPE html> <html lang="ru"> <head>

<meta charset="UTF-8">

<script src="lib/jquery-3.4.1.min.js"></script> <script src="lib/tau-prolog.js"></script> <script src="js/prolog/prolog-helper.js"></script> <script src="js/prolog/main.js"></script> </head> <body>

<header><button onclick="window.location = ,index.php,">Назад</button></header> <div id="container"> <div id="prolog-names"> ^1>Факты и правила</h1>

<div id="data-container"> ^3>Правила из шаблона<^3> <div id="prolog-dataM> </div>

<Ь3>Дополнительные правила<^3> <textarea id = "prolog-db" <?=$currentUser["is_admin"] == 1? "": "readonly"?» </textarea>

<button <?=$currentUser["is_admin"] == 1? "": "style =

'display: none'"?> class="normal-button" onclick =

"saveCustomProlog()">

Сохранить изменения

</button>

</div>

</div>

<div id="prolog-worker"> <Ь1>Работа с Prolog</h1> <div id="prolog-input">

<input id="prolog-command" placeholder=мВведите команду на Прологе..."><button

onclick=IIrunPrologQueryLocal()II>Выполнить</button> </div>

<div id="prolog-output">

<textarea id="prolog-text">

</textarea>

</div>

</div>

</div>

<div class="flex-filler"></div> </body>

Листинг А.2 Компонент построения экспертных систем

<?рЬр

require_once(мdata/db_connect.phpм);

testConnection();

session_start();

if (!isset($_SESSION[McurrentUserM])) {

header(Mlocation: index.phpм); }

$id = -1;

if (isset($_GET[мidM])) {

$id = $_GET[IIidII]; }

?>

<!БОСТУРЕ htm1> <htm1 1ang=мruм> <head>

<tit1e>Редактор оболочки</tit1e> <meta charset=мutf-8м> <!--JQuery-->

<script src=мlib/jquery-3.4.1.min.jsм></script> <!--JQuery a1ert-->

<script src=мlib/jquery-confirm/jquery-confirm.min.jsм></script>

<1^к re1 = мsty1esheetм href=мlib/jquery-confirm/jquery-

confirm.min.cssм>

<!—JQuery и1—>

<script src=мjs/report-temp1ate-editor/report-temp1ate-tab1e.jsм></script>

<script src="js/prolog/prolog-helper.js"></script>

<script src="js/editor-common.js"></script>

<script src = "js/report-template-

editor/main.js"></script>

</head>

<body>

<header>

<button onclick ="exitWarning('menu.php')" id="back-

button">Назад</button>

<button onclick = "<?=($id > 0)?

,tryUpdate()':,insertTemplate()';

?>">Сохранить</button>

</header>

<div id="container">

<input hidden id ="templateId" value="<?=$id?>"> <div id="name-input">

<label for="template-name">Название шаблона:</label> <input type="text" id="template-name" placeholder="Название формы (команда: reportName)"> </div> <hr>

<table id="items-table">

<thead>

<tr>

<th>Название элемента</th>

<^>Факт Prolog</th>

<th>Тип поля</th>

<th class="td-delete"></th>

</tr>

</thead>

<tbody id="table-data">

</tbody>

</table>

<hr>

<div id="add-new-item">

<input type="text" id="new-item-name"

placeholder="Название элемента шаблона">

<input type="text" id="new-item-prolog-name"

placeholder="Название факта Prolog">

<select id ="new-item-type"></select>

<button class="normal-button"

onclick="addNewItem()">Добавить</button>

</div>

</div>

<div class="flex-filler">

</div>

</body>

</html>

Листинг А.3 БЗ ИСРЭС

<?php

require_once "db_connect.php"; makeConnection(); if (isset($_POST["action"])) { if($_POST["action"] == "update-by-template-id") { $templateProlog = json_decode($_POST["data"], true); $templateId = $templateProlog["templateId"]; $data = mysqli_real_escape_string($connect,

$templateProlog["data"]);

$sql = "UPDATE template_prolog SET data = '$data'

WHERE template_id = $templateId"; $connect->query($sql); if (mysqli_error($connect) != "") { echo mysqli_error ($connect); $connect->close();

header('HTTP/1.1 500 Ошибка'); }

//echo mysqli_affected_rows($connect);

echo $data; }

} else if (isset($_GET["action"])) { if($_GET["action"] == "get-by-template-id") { $templateId = $_GET["id"];

$sql = "SELECT * FROM template_prolog WHERE template_id

= $templateId LIMIT 1";

$result = $connect->query($sql);

if (mysqli_error($connect) != "") {

echo mysqli_error ($connect);

$connect->close();

header('HTTP/1.1 500 Ошибка'); }

if($result->num_rows > 0) {

$data = $result->fetch_assoc()["data"];

echo $data;

} else {

echo ""; }

} }

$connect->close();

?>

Листинг А.4 Компонент редактирования БЗ ИСРЭС

<?php

require_once "db_connect.php"; makeConnection(); if (isset($_POST["action"])) { if ($_POST["action"] == "insert") { $data = json_decode($_POST["data"], true); $reportName = $data["reportName"]; $templateId = $data["templateId"]; $reportBody = $data["reportBody"];

$sql = "INSERT INTO report (report_name, template_id) VALUES ('$reportName', $templateId);"; $reportId = null;

if ($connect->query($sql) == TRUE) { if (mysqli_error ($connect) == "") {

reportId = mysqli_insert_id($connect); }

}

if (!$reportId) {

echo mysqli_error ($connect);

$connect->close();

header('HTTP/1.1 500 Ошибка'); }

foreach($reportBody as $index => $templateItem) { $elementValue = $templateItem["value"];

$templateElementId = $templateItem["templateElementId"]; $sql = "INSERT INTO report_element (element_value, template_element_id, report_id) VALUES '$elementValue',

$templateElementId, $reportId);"; if ($connect->query($sql) == TRUE) { if (mysqli_error ($connect) == "") { } else {

echo mysqli_error ($connect); $connect->close();

header('HTTP/1.1 500 Ошибка'); }

} else {

echo mysqli_error ($connect); $connect->close();

header('HTTP/1.1 500 Ошибка'); }

echo $reportId;

} else if ($_POST["action"] == "update") { $data = json_decode($_POST["data"], true); $reportId = $data["reportId"]; $reportName = $data["reportName"]; $reportBody = $data["reportBody"];

$sql = "UPDATE report SET report_name = '$reportName' WHERE id = $reportId"; $connect->query($sql); if (mysqli_error($connect) != "") { echo mysqli_error ($connect); $connect->close(); header('HTTP/1.1 500 Ошибка');

}

$connect->query("DELETE FROM report_element WHERE report_id = $reportId");

foreach($reportBody as $index => $templateItem) {

$elementValue = $templateItem["value"];

$templateElementId = $templateItem["templateElementId"];

$sql = "INSERT INTO report_element (element_value,

template_element_id, report_id) VALUES '$elementValue',

$templateElementId, $reportId)";

$connect->query($sql);

if (mysqli_error($connect) != "") {

echo mysqli_error ($connect);

$connect->close();

header('HTTP/1.1 500 Ошибка'); }

}

echo 1; }

else if (isset($_GET["action"])) { if ($_GET["action"] == "get-by-id") { $reportId = $_GET['id'];

$sql = "SELECT * FROM report WHERE id = $reportId LIMIT

i . " .

-W r

$result = $connect->query($sql); if($result->num_rows > 0) { $report = $result->fetch_assoc(); $reportName = $report["report_name"]; $templateId = $report["template_id"]; else { echo "{}"; $connect->close();

exit(); }

$sql = "SELECT * FROM report_element WHERE report_id =

$reportId";

$result = $connect->query($sql); $reportBody = array(); if($result->num_rows > 0) { while($row = $result->fetch_assoc()) {

$reportBody[] = $row; }

}

$response = array("id" => $reportId, "report_name" => $reportName, "template_id" => $templateId, "report_body" => $reportBody); echo json_encode($response);

} else if($_GET["action"] == "get-by-template-id") { $templateId = $_GET["id"];

$sql = "SELECT * FROM report WHERE template_id = $templateId";

$result = $connect->query($sql); $reportList = array(); if ($result->num_rows > 0) {

while($report_raw = $result->fetch_assoc()) { $tempReport = array();

$tempReport["id"] = $report_raw["id"];

$tempReport["report_name"] = $report_raw["report_name"];

$tempReport["template_id"] = $report_raw["template_id"];

$sql = "SELECT * FROM report_element WHERE report_id =

{$tempReport['id']}";

$result2 = $connect->query($sql);

$reportBody = array();

if ($result2->num rows > 0) {

while($row = $result2->fetch_assoc()) {

$reportBody[] = $row; }

}

$tempReport["report_body"] = $reportBody;

$reportList[] = $tempReport; }

}

echo json_encode($reportList); }

else if($_GET["action"] == "get-all") { $sql = "SELECT * FROM report"; $result = $connect->query($sql); $reportList = array(); if ($result->num_rows > 0) {

while($report_raw = $result->fetch_assoc()) { $tempReport = array();

$tempReport["id"] = $report_raw["id"];

$tempReport["report_name"] = $report_raw["report_name"];

$tempReport["template_id"] = $report_raw["template_id"];

$sql = "SELECT * FROM report_element WHERE report_id =

{$tempReport['id']}";

$result2 = $connect->query($sql);

$reportBody = array();

if ($result2->num_rows > 0) {

while($row = $result2->fetch_assoc()) {

$reportBody[] = $row; }

}

$tempReport["report_body"] = $reportBody;

$reportList[] = $tempReport; }

}

cho json_encode($reportList); } else if($_GET["action"] == "delete-by-id") { $reportId = $_GET["id"];

$sql = "DELETE FROM report WHERE id = $reportId"; $connect->query($sql); if (mysqli_error($connect) == "") { echo 1; } else {

echo mysqli_error ($connect); $connect->close();

header('HTTP/1.1 500 Ошибка'); }

} else if($_GET["action"] == "delete-by-template-id") { $templateId = $_GET["id"];

$sql = "DELETE FROM report WHERE template_id =

$templateId";

$connect->query($sql);

if (mysqli_error($connect) == "") {

echo 1;

} else {

echo mysqli_error ($connect); $connect->close();

header('HTTP/1.1 500 Ошибка'); }

}

$connect->close(); ?>

Листинг А.5 Компонент для приобритения новых знаний

<?php

require_once "db_connect.php";

makeConnection();

if (isset($_POST["action"])) {

if($_POST["action"] == "insert") {

$data = json_decode($_POST["data"], true);

$templateName = e($data["templateName"]);

$templateBody = $data["templateBody"];

$sql = "INSERT INTO report_template (template_name)

VALUES ('{$templateName}');";

$templateId = null;

if ($connect->query($sql) == TRUE) { if (mysqli_error ($connect) == "") { /*echo mysqli_insert_id($connect); exit();*/

$templateId = mysqli_insert_id($connect); }

}

if (!$templateId) {

echo mysqli_error ($connect);

$connect->close();

exit(); }

foreach($templateBody as $index => $templateItem) {

$itemOrder = $index;

$itemName = $templateItem["name"];

$itemType = $templateItem["type"];

$prologName = $templateItem["prologName"]; $itemData = "";

if ($itemType == "tableFixed" || $itemType == "tableFree") {

$itemData = json_encode ($templateItem["tableData"],

JSON_UNESCAPED_UNICODE);

} else if ($itemType == "aggr") {

$itemData = $templateItem["prologRule"]; }

$sql = "INSERT INTO template_element (item_order,

element_name, element_type, prolog_name, data,

template_id) VALUES ($itemOrder, '$itemName',

'$itemType', '$prologName', '$itemData',

$templateId);";

$connect->query($sql);

if (mysqli_error ($connect) == "") {

$sql = "INSERT INTO template_prolog (template_id)

VALUES ($templateId)";

$connect->query($sql); }

if (mysqli_error($connect)) { echo mysqli_error ($connect); $connect->close();

header('HTTP/1.1 500 Ошибка'); }

}

echo $templateId; } else if ($_POST["action"] == "update") { $data = json_decode($_POST["data"], true); $templateId = $data["templateId"];

$templateName = $data["templateName"];

$templateBody = $data["templateBody"];

$sql = "UPDATE report_template SET template_name =

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