3.4. Экспертные информационные системы
Экспертные информационные системы позволяют получить определенные рекомендации на запрос пользователя. Для реализации таких систем требуется перевести «знания» в форму пригодную для обработки на ЭВМ из определенной предметной области.
В общем виде экспертная система состоит из следующих подсистем:
пользователи и специалисты – эксперты в данной предметной области;
интерфейс системы. Определяет правила взаимодействия системы с пользователями и правила предоставления результатов работы;
подсистема логического вывода результатов по запросам пользователей;
база знаний системы;
подсистема объяснения полученных результатов.
Классифицировать экспертные системы можно по двум основным типам:
эвристические;
общеконцептуальные.
Эвристические системы ориентированны на определенный тип задач. При их создании используются личный опыт, интуиция и знания разработчиков системы. Для таких систем не существует единого формализованного подхода к их разработке.
Общеконцептуальные системы базируются на определенные базовые принципы представления знаний к виду пригодному для хранения в формализованном виде.
Процесс разработки экспертных систем сводится к выполнению этапов, которые показаны в таблице 3.1.
Таблица.3.1. Этапы разработки экспертных систем.
Наименование этапа | Содержание работ |
Идентификация | Выявление цели разработки системы, ее функций, формирование коллектива разработчиков |
Концептуализация
| Формирование модели предметной области, выявление фактов, взаимосвязей между фактами. Определение правил получения заключений из фактов. Анализ методов представления знаний, и получения результатов |
Формализация
| Описание фактов, взаимосвязей и правил получения заключений на определенном формальном языке. Проектирование базы знаний системы |
Выполнение
| Создание рабочего прототипа экспертной системы |
Тестирование
| Подбор и выполнение контрольных примеров, выявление недостатков созданной системы |
Опытная эксплуатация | Передача системы заказчику. Проверка пригодности системы для решения потребностей заказчика |
Последовательность работ заканчивается опытной эксплуатацией системы. После завершения этого этапа делается вывод о пригодности дальнейшего использования системы. В качестве критериев оценки результата выступают:
возможность взаимодействия с системой на естественном языке;
возможность адаптации – приспособления системы под конкретного пользователя;
устойчивость системы к ошибкам со стороны пользователей.
В процессе рабочей эксплуатации системы производят ее последующую модификацию. При модификации экспертных систем вносят изменения в структуру базы знаний. База знаний дополняется новыми фактами, правилами.
Обработка запросов пользователей выполняет логический процессор. Поиск решения может осуществляться двумя путями:
по запросу системы вводится определенный набор данных, система выполняет анализ введенного набора и предоставляет пользователю заключение;
по запросу систему пользователь вводит определенное утверждение, система выполняет поиск фактов – данных, которые соответствуют этому утверждению.
База знаний является основным элементом системы. Для ее создания могут быть использованы различные подходы. Одним из удачных методов формализации знаний является продукционная модель.
Продукционная модель предусматривает выделение фактов в предметной области и связей между ними по правилу «ЕСЛИ ТО». Правила позволяют выявить причинно – следственную связь между фактами.
Продукционная модель была реализована в языке логического программирования ПРОЛОГ. Основными понятиями языка ПРОЛОГ являются факты и правила.
Факт фиксирует некоторую связь между объектами, событиями в предметной области. Оформляется факт в виде предиката. В общем виде предикат имеет вид:
НаименованиеСвязи(А1,А2).
где A1,A2 – аргументы предиката.
Предикат должен заканчиваться точкой. Читается предикат по схеме:
A1 НаименованиеСвязи A2
Пример факта: АОИСТРА выполнило поставку 10ед товара.
На языке ПРОЛОГ факт будет записан в виде:
Поставлено(“АОИСТРА”,10).
Символьные данные берутся в предикате в кавычки.
Совокупность фактов образует модель связей в предметной области. Для работы с фактами используется механизм переменных. Переменные должны начинаться с большой буквы. Каждой переменной сопоставляется определенной значения аргумента предиката.
Например, имеется описание поставок:
Поставлено(“АОИСТРА”,10).
Поставлено(“АОВОСТОК”,20).
Поставлено(“АОИВОЛГА”,100).
Для обращения к описанию предметной области нужно составить запрос. Запрос начинается с символа ? и представляет собой предикат с переменными. Для получения списка всех поставщиков требует использование предиката:
? Поставлено(Поставщик,_).
Символ «_» означает игнорировать значение при поиске информации.
В результате выполнения запроса будет получен результат:
Поставщик = АОИСТРА
Поставщик = АОВОСТОК.
Поставщик = АОИВОЛГА.
При выполнении запроса допустимо ставить условия на отбор информации. Для составления условий используются условные обозначения операций отношения <(меньше),>(больше),<=(меньше или равно),>=(больше или равно),<>(не равно), =(равно). В качестве связки в запросах используются символы «,» (связка И), «;» (связка ИЛИ).
Пример:
? Поставлено(Постащик,Количество),Количество<100.
В результате будет выведена информация о двух первых поставщиках.
Для получения «знаний» о предметной области недостаточно зафиксировать факты, требуется зафиксировать правила обработки фактов.
В языке ПРОЛОГ правила создаются путем объединения предикатов с помощью связки :- «ЕСЛИ»
Предикат1(<аргументы>):- Предикат2(<аргументы>).
Пример. Дан список поставщиков и фирм потребителей, показанный в таблице 3.3.
Таблица 3.2. Поставщики–потребители
Поставщик | Фирма потребитель |
ЗАО Волга | АО Пульсар |
ЗАО Иволга | АО Квазар |
ЗАО Волга | АО Сапфир |
Составим описание связей таблицы:
Поставщик("ЗАО Волга","АО Пульсар").
Поставщик("ЗАО Иволга","АО Квазар").
Поставщик(X,"АО Сапфир"):-
Поставщик(X,"АО Пульсар").
Описание содержит правило. Которое можно прочитать так: Если некоторый поставщик обслуживает АО Пульсар, то этот же поставщик обслуживает АО Сапфир. Заканчивается правило точкой как и факт.
Процессор логического вывода выполняет обработку правила с правой части, если обработка дает результата «ИСТИНА» выполняется обработка левой части правила. Левая часть называется головной, а правая часть хвостовой.
- Основы построения автоматизированных информационных систем
- Глава 1. Системный подход при разработке автоматизированных информационных систем
- 1.1. Общие положения
- 1.2. Автоматизированные информационные системы
- 1.3. Автоматизированные системы в управлении
- 1.4. Методы анализа автоматизированных информационных систем
- 1.5. Структура автоматизированной информационной системы
- Глава 2. Методы проектирования информационных систем
- 2.1. Обобщенная модель информационной системы и методы проектирования
- 2.2. Каноническое проектирование информационных систем
- 2.3. Управление требованиями, спецификация rup
- 2.4. Модели жизненного цикла информационной системы
- 2.5. Использование case технологий при разработке информационных систем
- 2.6. Методологии case проектирования
- 2.6.1. Методология datarun
- 2.6.2. Методология rad
- 2.6.3. Графические нотации
- 2.7. Системные методологии анализа
- 2.7.1. Методология aris
- 2.7.2. Методология baan
- 2.7.3. Методология Oracle
- 2.7.4. Методология Betec (©)
- Глава 3. Особенности современных информационных систем
- 3.1. Корпоративные информационные системы
- 3.2. Системы обработки транзакций
- 3.3. Системы поддержки принятия решения
- 3.4. Экспертные информационные системы
- 3.4.1. Основы создания информационных систем в Visual Prolog
- 3.4.2. Управления поиском решения в vip
- 3.4.3 Использование рекурсии
- 3.4.4. Управление потоком ввода–вывода
- 3.4.5. Особенности составления описания предметной области
- 3.4.6. Особенности работы с базой фактов
- 3.5. Объектно–ориентированные системы
- 3.6. Документальные системы
- 3.6.1. Информационно-поисковый язык
- 3.6.2. Структра поисковой системы
- 3.7. Гипертекстовые информационные системы
- 4. Управление процессом проектирования автоматизированной информационной системы
- 4.1. Методы управления качеством разработки аис
- 4.2. Оценка эффективности функционирования автоматизированных информационных систем
- 4.2.1. Экономическая эффективность
- 4.2.2. Производительность вычислительной системы
- 4.2.3. Оценка качества работы пользователя системы
- Приложения Приложение №1. Базовые сведения о языке программирования Visual Prolog
- Приложение №.2. Компилирование программ в Visual Prolog ver 5.2.
- Приложение №.3. Программа «Внутренняя база данных фактов»
- Приложение №.4. Программа «Внешняя база данных»
- Приложение №5.Некоторые стилевые параметры
- Список литературы