Аннотация и ключевые слова
Аннотация (русский):
Рассмотрена разработка экспертных систем на примерах магистерской диссертации и лабораторной работы. Экспертные системы созданы на языках программирования C# и Python

Ключевые слова:
экспертная система, язык программирования C#, язык программирования Python
Текст
Текст произведения (PDF): Читать Скачать

Экспертная система – вычислительная система, в которую включены знания специалистов о некоторой конкретной проблемной области и которая в пределах этой области способна принимать экспертные решения [1]. В рамках экспертных систем к настоящему моменту достигнуты успехи в таких областях, как медицинская диагностика, геологическая разведка, органическая химия и обнаружение неисправностей в электронном оборудовании [2].

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

Целью магистерской диссертации Фам А.З. была [Ик1] реализация экспертной системы поддержки принятия решений в процессе ремонта вычислительной техники.

Экспертная система разработана на языке программирования [Ик2] С#, который позволяет создавать разные типы безопасных и надежных приложений, выполняющихся на платформе .NET [3]. Для создания приложения на языке С# использовалась интегрированная среда Visual Studio Community 2022, так как она является бесплатной и имеет необходимый функционал для разработки[Ик3] : встроенный текстовый редактор, компилятор, фреймворк .NET, необходимый для компиляции и выполнения программы, модуль тестирования и отладки программного кода.

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

В данном случае, для каждой группы вычислительной техники разработана отдельная база знаний. Так как техника разбита на группы с похожим строением, то  причины поломок и методы их устранения могут быть похожи. Для удобного восприятия базы знаний использовалась геометрическая схема, которую можно применять для наглядного отображения отношений между множествами – круги Эйлера (или диаграммы Венна). На рисунке 1 представлена схема базы знаний для устройств ввода-вывода.

Рисунок 1 – Схема базы знаний для устройств ввода-вывода

Как видно на схеме, для каждого устройства есть свое множество вопросов[Ик4] . Некоторые вопросы встречаются в других множествах, то есть множества пересекаются. Рассмотрим пересечение трех множеств (римская цифра I). Данное множество содержит следующие вопросы:

  • Устройство включается?
  • Устройство отображается на компьютере?
  • На панели устройства высвечивается ошибка или ее код?

 Аналогичная схема базы знаний для ЭВМ, представлена на рисунке 2.

 

Рисунок 2 – Схема базы знаний для ЭВМ

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

 

Рисунок 3 – Главная форма после создания/открытия базы знаний

В рамках магистерской диссертации была проанализирована предметная область, св[Ик5] язанная с вычислительной техникой и ее ремонтом. Были изучены существующие экспертные системы и программы для их создания. После чего был разработан проект экспертной системы поддержки принятия решений в процессе ремонта вычислительной техники, реализованный на языке программирования C# в среде разработки Visual Studio. Для данного проекта были реализованы две базы знаний – для ЭВМ и устройств ввода-вывода информации.

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

В курсе «Автоматизированные системы управления и обработки информации» студенты создают небольшие экспертные системы на произвольные темы на языке программирования Python [4].

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

В качестве примера рассмотрим лабораторную работy Прядко Данила[Ик6] . Она посвящена выбору ноутбука.

Целесообразно представить иерархическую модель экспертной системы в виде блок-схемы (рисунок 4):

 

 

Рисунок 4 – Блок-схема экспертной системы

Экспертная система задает пользователю серию вопросов, анализирует ответы и сравнивает с имеющимися в ней факторами. При этом производится логический вывод и формируется ответ на интересующий пользователя вопрос (рисунки 5-7).

 

Рисунок 5 – Начальное окно программы

 

Рисунок 6 – Переход на ветку «нет»

Рисунок 7 – Вывод ответа после перехода на ветку «да»

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


 [Ик1]Нужна ли фамилия

 [Ик2]Тире убрать

 [Ик3]Поменять местами

 [Ик4]Что это вопросы нигде не раскрыто

 [Ик5]Корректно ли

Список литературы

1. Левин Р., Дранг Д., Эделсон Б. Практическое введение в технологию искусственного интеллекта и экспертных систем с иллюстрациями на Бейсике – М.: Финансы и статистика, 1990. – 242 с.

2. Нейлор К. Как построить свою экспертную систему – М.: Энергоатом-издат, 1991. – 289с.

3. Краткий обзор языка C# [Электронный ресурс] https://docs.microsoft.com/ru-ru/dotnet/csharp/tour-of-csharp/ (Дата обращения 11.12.2021г.).

4. Руководство по Python [Электронный ресурс] https://metanit.com/python/ (Дата обращения 12.04.2023 г.).

5. Угринович Н.Д. Информатика и информационные технологии. Учебник для 10-11 классов. – М.: БИНОМ. Лаборатория знаний, 2016, – 96 с.

Войти или Создать
* Забыли пароль?