- Экспертная система
- Материал из ПИЭ.Wiki
- Содержание
- Особенности экспертных систем
- Функции, выполняемые экспертной системой
- Структура экспертных систем
- Классы экспертных систем
- Наиболее известные/распространённые ЭС
- Этапы проектирования экспертной системы
- Представления знаний в интеллектуальных системах, экспертные системы
- Введение
- Экскурс в историю экспертных систем
- Структура экспертной системы
- Какие существуют модели представления знаний?
- Продукционная МПЗ
- Пример
- Среды разработки продукционных систем(CLIPS)
- Семантическая сеть МПЗ
- Пример
- Фреймовая МПЗ
- Пример
- Пример вырождающейся в сеть фреймов
- Языки разработки фреймовых моделей (Frame Representation Language)
- Формально логическая МПЗ
- Пример
- Важно
- Заключение
Экспертная система
Материал из ПИЭ.Wiki
Экспертная система — это система искусственного интеллекта, построенная на основе глубоких специальных знаний о некоторой предметной области (полученных от экспертов-специалистов этой области). Экспертные системы – один из немногих видов систем искусственного интеллекта, которые получили широкое распространение и нашли практическое применение. Существуют экспертные системы по военному делу, геологии, инженерному делу, информатике, космической технике, математике, медицине, метеорологии, промышленности, сельскому хозяйству, управлению, физике, химии, электронике, юриспруденции и т.д. И только то, что экспертные системы остаются весьма сложными, дорогими, а главное, узкоспециализированными программами, сдерживает их еще более широкое распространение.
Технология экспертных систем является одним из направлений новой области исследования, которая получила наименование искусственного интеллекта (Artificial Intelligence — AI). Исследования в этой области сконцентрированы на разработке и внедрении компьютерных программ, способных эмулировать (имитировать, воспроизводить) те области деятельности человека, которые требуют мышления, определенного мастерства и накопленного опыта. К ним относятся задачи принятия решений, распознавания образов и понимания человеческого языка. Эта технология уже успешно применяется в некоторых областях техники и жизни общества — органической химии, поиске полезных ископаемых, медицинской диагностике. Перечень типовых задач, решаемых экспертными системами, включает:
- извлечение информации из первичных данных (таких как сигналы, поступающие от гидролокатора);
- диагностика неисправностей (как в технических системах, так и в человеческом организме);
- структурный анализ сложных объектов (например, химических соединений);
- выбор конфигурации сложных многокомпонентных систем (например, распределенных компьютерных систем);
- планирование последовательности выполнения операций, приводящих к заданной цели (например, выполняемых промышленными роботами).
Категория | Решаемая проблема |
---|---|
Интерпретация | Описание ситуации по информации, поступающей от датчиков |
Прогноз | Определение вероятных последствий заданных ситуаций |
Диагностика | Выявление причин неправильного функционирования системы по наблюдениям |
Проектирование | Построение конфигурации объектов при заданных ограничениях |
Планирование | Определение последовательности действий |
Наблюдение | Сравнение результатов наблюдений с ожидаемыми результатами |
Отладка | Составление рецептов исправления неправильного функционирования системы |
Ремонт | Выполнение последовательности предписанных исправлений |
Обучение | Диагностика и исправление поведения обучаемого |
Управление | Управление поведением системы как целого |
Функции, выполняемые экспертной системой
Не всякую систему, основанную на знаниях, можно рассматривать как экспертную. Экспертная система должна также уметь каким-то образом объяснять свое поведение и свои решения пользователю, так же, как это делает эксперт-человек. Это особенно необходимо в областях, для которых характерна неопределенность, неточность информации (например, в медицинской диагностике). В этих случаях способность к объяснению нужна для того, чтобы повысить степень доверия пользователя к советам системы, а также для того, чтобы дать возможность пользователю обнаружить возможный дефект в рассуждениях системы. В связи с этим в экспертных системах следует предусматривать дружественное взаимодействие с пользователем, которое делает для пользователя процесс рассуждения системы «прозрачным».
Часто к экспертным системам предъявляют дополнительное требование — способность иметь дело с неопределенностью и неполнотой. Информация о поставленной задаче может быть неполной или ненадежной; отношения между объектами предметной области могут быть приближенными. Например, может не быть полной уверенности в наличии у пациента некоторого симптома или в том, что данные, полученные при измерении, верны; лекарство может стать причиной осложнения, хотя обычно этого не происходит. Во всех этих случаях необходимы рассуждения с использованием вероятностного подхода.
В самом общем случае для того, чтобы построить экспертную систему, мы должны разработать механизмы выполнения следующих функций системы:
- решение задач с использованием знаний о конкретной предметной области — возможно, при этом возникнет необходимость иметь дело с неопределенностью;
- взаимодействие с пользователем, включая объяснение намерений и решений системы во время и после окончания процесса решения задачи.
Каждая из этих функций может оказаться очень сложной и зависит от прикладной области, а также от различных практических требований. В процессе разработки и реализации могут возникать разнообразные трудные проблемы. Здесь мы ограничился наметками основных идей, подлежащих в дальнейшем детализации и усовершенствованию.
Структура экспертных систем
Рис.2. Архитектура экспертной системы
Классы экспертных систем
По степени сложности решаемых задач экспертные системы можно классифицировать следующим образом:
— По способу формирования решения экспертные системы разделяются на два класса: аналитические и синтетические. Аналитические системы предполагают выбор решений из множества известных альтернатив (определение характеристик объектов), а синтетические системы — генерацию неизвестных решений (формирование объектов).
— По способу учета временного признака экспертные системы могут быть статическими или динамическими. Статические системы решают задачи при неизменяемых в процессе решения данных и знаниях, динамические системы допускают такие изменения. Статические системы осуществляют монотонное непрерываемое решение задачи от ввода исходных данных до конечного результата, динамические системы предусматривают возможность пересмотра в процессе решения полученных ранее результатов и данных.
— По видам используемых данных и знаний экспертные системы классифицируются на системы с детерминированными (четко определенными) знаниями и неопределенными знаниями. Под неопределенностью знаний (данных) понимается их неполнота (отсутствие), недостоверность (неточность измерения), двусмысленность (многозначность понятий), нечеткость (качественная оценка вместо количественной).
— По числу используемых источников знаний экспертные системы могут быть построены с использованием одного или множества источников знаний. Источники знаний могут быть альтернативными (множество миров) или дополняющими друг друга (кооперирующими).
Наиболее известные/распространённые ЭС
- CLIPS — весьма популярная ЭС (public domain)
- OpenCyc — мощная динамическая ЭС с глобальной онтологической моделью и поддержкой независимых контекстов
- WolframAlpha — поисковая система, интеллектуальный «вычислительный движок знаний»
- MYCIN — наиболее известна диагностическая система, которая предназначена для диагностики и наблюдения за состоянием больного при менингите и бактериальных инфекциях.
- HASP/SIAP — интерпретирующая система, которая определяет местоположение и типы судов в тихом океане по данным
акустических систем слежения.
Этапы проектирования экспертной системы
В настоящее время сложилась определенная технология разработки ЭС, которая включает следующие шесть этапов:
Рис. 3. Методика (этапы) разработки ЭС
На всех этапах разработки инженер по знаниям играет активную роль, а эксперт — пассивную. По мере развития самообучающихся свойств экспертных систем роль инженера по знаниям уменьшается, а активное поведение заинтересованного в эффективной работе экспертной системы пользователя-эксперта возрастает. Описание приемов извлечения знаний инженерами знаний представлено в таблице 2.
Приемы | Описание |
---|---|
1. Наблюдение | Инженер наблюдает, не вмешиваясь, за тем, как эксперт решает реальную задачу |
2. Обсуждение задачи | Инженер на представительном множестве задач неформально обсуждает с экспертом данные, знания и процедуры решения |
3. Описание задачи | Эксперт описывает решение задач для типичных запросов |
4. Анализ решения | Эксперт комментирует получаемые результаты решения задачи, детализируя ход рассуждений |
5. Проверка системы | Эксперт предлагает инженеру перечень задач для решения (от простых до сложных),которые решаются разработанной системой |
6. Исследование системы | Эксперт исследует и критикует структуру базы знаний и работу механизма вывода |
7. Оценка системы | Инженер предлагает новым экспертам оценить решения разработанной системы |
Первые два этапа разработки экспертной системы составляют логическую стадию, не связанную с применением четко определенного инструментального средства. Последующие этапы реализуются в рамках физического создания проекта на базе выбранного инструментального средства. Вместе с тем, процесс создания экспертной системы, как сложного программного продукта, имеет смысл выполнять методом прототипного проектирования, сущность которого сводится к постоянному наращиванию базы знаний, начиная с логической стадии.
Источник
Представления знаний в интеллектуальных системах, экспертные системы
Введение
Экспертная система (далее по тексту — ЭС) — это информационная система, назначение которой частично или полностью заменить эксперта в той или иной предметной области. Подобные интеллектуальные системы эффективно применяются в таких областях, как логистика, управление воздушными полетами, управление театром военных действий. Основною направленной деятельностью предсказание, прогнозирование в рамках определенного аспекта в предметной области.
Экскурс в историю экспертных систем
История экспертных систем берет свое начало в 1965 году. Брюс Бучанан и Эдвард Фейгенбаум начали работу над созданием информационной системы для определения структуры химических соединений.
Результатом работы была система под названием Dendral. В основе системы формировалась последовательность правил подобных к «IF – THEN». Информационная система не перестала развиваться и получила множество наследников, таких как ONCOIN – информационная система для диагностики раковых заболеваний, MYCIN – информационная система для диагностики легочных инфекционных заболеваний.
Следующим этапом стали 70-е годы. Период не выделялся особыми разработками. Было создано множество разных прототипов системы Dendral. Примером служит система PROSPECTOR, областью деятельности которой являлась геологические ископаемые и их разведка.
В 80-ых годах появляются профессия – инженер по знаниям. Экспертные системы набирают популярность и выходят на новый этап эволюции интеллектуальных систем. Появились новые медицинские системы INTERNIS, CASNE.
С 90-ых годов развитие интеллектуальных систем приобретает новые и новые методы и особенности. Нововведением становится парадигма проектирования эффективных и перспективных систем. Гибкость, четкость решения поставленных задач дало новое название – мультиагентных систем. Агент – фоновый процесс который действует в целях пользователя. Каждый агент имеет свою цель, «разум» и отвечает за свою область деятельности. Все агенты в совокупности образуют некий интеллект. Агенты вступают в конкуренцию, настраивают отношения, кооперируются, все как у людей.
В 21 век, интеллектуальной системой уже не удивишь никого. Множество фирм внедряет экспертные системы в области своей деятельности.
Быстродействующая система OMEGAMON разрабатывается c 2004 года с IBM, цель которой отслеживание состояния корпоративной информационной сети. Служит для моментального принятия решений в критических или неблагоприятных ситуациях.
G2 – экспертная система от фирмы Gensym, направленная на работу с динамическими объектами. Особенность этой системы состоит в том, что в нее внедрили распараллеливание процессов мышления, что делает ее быстрее и эффективней.
Структура экспертной системы
1. База знаний
Знания — это правила, законы, закономерности получены в результате профессиональной деятельности в пределах предметной области.
База знаний — база данных содержащая правила вывода и информацию о человеческом опыте и знаниях в некоторой предметной области. Другими словами, это набор таких закономерностей, которые устанавливают связи между вводимой и выводимой информацией.
2. Данные
Данные — это совокупность фактов и идей представленных в формализованном виде.
Собственно на данных основываются закономерности для предсказания, прогнозирования. Продвинутые интеллектуальные системы способные учиться на основе этих данных, добавляя новые знания в базу знаний.
3. Модель представления данных
Самая интересная часть экспертной системы.
Модель представления знаний (далее по тексту — МПЗ) — это способ задания знаний для хранения, удобного доступа и взаимодействия с ними, который подходит под задачу интеллектуальной системы.
4. Механизм логического вывода данных(Подсистема вывода)
Механизм логического вывода(далее по тексту — МЛВ) данных выполняет анализ и проделывает работу по получению новых знаний исходя из сопоставления исходных данных из базы данных и правил из базы знаний. Механизм логического вывода в структуре интеллектуальной системы занимает наиболее важное место.
Механизм логического вывода данных концептуально можно представить в виде :
А — функция выбора из базы знаний и из базы данных закономерностей и фактов соответственно
B — функция проверки правил, результатом которой определяется множество фактов из базы данных к которым применимы правила
С — функция, которая определяет порядок применения правил, если в результате правила указаны одинаковые факты
D — функция, которая применяет действие.
Какие существуют модели представления знаний?
Распространены четыре основных МПЗ:
- Продукционная МПЗ
- Семантическая сеть МПЗ
- Фреймовая МПЗ
- Формально логическая МПЗ
Продукционная МПЗ
В основе продукционной модели представления знаний находится конструктивная часть, продукция(правило):
IF , THEN
Продукция состоит из двух частей: условие — антецендент, действие — консеквент. Условия можно сочетать с помощью логических функций AND, OR .
Антецеденты и консеквенты составленных правил формируются из атрибутов и значений. Пример: IF температура реактора подымается THEN добавить стержни в реактор
В базе данных продукционной системы хранятся правила, истинность которых установлена к за ранее при решении определенной задачи. Правило срабатывает, если при сопоставлении фактов, содержащихся в базе данных с антецедентом правила, которое подвергается проверке, имеет место совпадение. Результат работы правила заносится в базу данных.
Пример
Диагноз | Температура | Давление | Кашель |
---|---|---|---|
Грипп | 39 | 100-120 | Есть |
Бронхит | 40 | 110-130 | Есть |
Аллергия | 38 | 120-130 | Нет |
Пример продукции:
IF Температура = 39 AND Кашель = Есть AND Давление = 110-130 THEN Бронхит
Продукционная модель представления знаний нашла широкое применение в АСУТП
Среды разработки продукционных систем(CLIPS)
CLIPS (C Language Integrated Production System) — среда разработки продукционной модели разработана NASA в 1984 году. Среда реализована на языке С, именно потому является быстрой и эффективной.
Пример:
Подобное правило будет активировано только тогда, когда в базе данных появится факт симптома с подобными параметрами.
Семантическая сеть МПЗ
В основе продукционной модели лежит ориентированный граф. Вершины графа — понятия, дуги — отношения между понятиями.
Особенностью является наличие трех типов отношений:
- класс — подкласс
- свойство — значение
- пример элемента класса
По количеству типов отношений выделяют однородные и неоднородные семантические сети. Однородные имею один тип отношения между всеми понятиями, следовательно, не однородные имею множество типов отношений.
Все типы отношений:
- часть — целое
- класс — подкласс
- элемент — количество
- атрибутивный
- логический
- лингвистический
Пример
Недостатком МПЗ является сложность в извлечении знаний, особенно при большой сети, нужно обходить граф.
Фреймовая МПЗ
Предложил Марвин Мински в 1970 году. В основе фреймовой модели МПЗ лежит фрейм. Фрейм — это образ, рамка, шаблон, которая описывает объект предметной области, с помощью слотов. Слот — это атрибут объекта. Слот имеет имя, значение, тип хранимых данных, демон. Демон — процедура автоматически выполняющаяся при определенных условиях. Имя фрейма должно быть уникальным в пределах одной фреймовой модели. Имя слота должно быть уникальным в пределах одного фрейма.
Слот может хранить другой фрейм, тогда фреймовая модель вырождается в сеть фреймов.
Пример
Пример вырождающейся в сеть фреймов
На своей практике, мне доводилось встречать системы на основе фреймовой МПЗ. В университете в Финляндии была установлена система для управления электроэнергией во всем здании.
Языки разработки фреймовых моделей (Frame Representation Language)
FRL (Frame Representation Language) — технология создана для проектирования интеллектуальных систем на основе фреймовой модели представления знаний. В основном применяется для проектирования вырождающихся в сеть фреймовой модели.
Запись фрейма на языке FRL будет иметь вид:
Существуют и другие среды: KRL (Knowledge Representation Language), фреймовая оболочка Kappa, PILOT/2.
Формально логическая МПЗ
В основе формально логической МПЗ лежит предикат первого порядка. Подразумевается, что существует конечное, не пустое множество объектов предметной области. На этом множестве с помощью функций интерпретаторов установлены связи между объектами. В свою очередь на основе этих связей строятся все закономерности и правила предметной области. Важное замечание: если представление предметной области не правильное, то есть связи между объектами настроены не верно или не в полной мере, то правильная работоспособность системы будет под угрозой.
Пример
A1 = A2 = A3 = ; IF A1 AND A2 THEN
Банальней примера и не придумаешь.
Важно: Стоит заметить, что формально логическая МПЗ схожа с продукционной. Частично это так, но они имеют огромную разницу. Разница состоит в том, что в продукционной МПЗ не определены никакие связи между хранимыми объектами предметной области.
Важно
Любая экспертная система должна иметь вывод данных и последовательность «мышления» системы. Это нужно для того чтобы увидеть дефекты в проектировании системы. Хорошая интеллектуальная система должна иметь право ввода данных, которое реализуется через интеллектуальный редактор, право редактора на перекрестное «мышление» представлений при проектировании системы и полноту баз знаний(реализуется при проектировки закономерностей предметной области между инженером по знаниям и экспертом).
Заключение
Экспертные системы действительно имеют широкое применение в нашей жизни. Они позволяют экономить время реальных экспертов в определенной предметной области. Модели представления знаний это неотъемлемая часть интеллектуальных систем любого уровня. Поэтому, я считаю, что каждый уважающий себя IT-специалист, должен иметь даже поверхностные знания в этих областях.
Источник