Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Курсовая работа - Логический вывод в экспертных системах - файл 1.doc


Курсовая работа - Логический вывод в экспертных системах
скачать (470 kb.)

Доступные файлы (1):

1.doc470kb.09.12.2011 03:11скачать

содержание
Загрузка...

1.doc

  1   2   3
Реклама MarketGid:
Загрузка...
Содержание


Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 

3

Глава 1




Экспертные системы, их особенности. Применение экспертных систем . . .

5

1.1 Определение и назначение экспертных систем . . . . . . . . . . . . . . . . . . .

5

1.2 Отличие ЭС от других программных продуктов. Строение и функционирование экспертной системы . . . . . . . . . . . . . . . . . . . . . . . . . . . 

6

1.3 Главное достоинство экспертных систем. Преимущества ЭС перед человеком - экспертом . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 

8

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

9

1.5 Критерий использования ЭС для решения задач . . . . . . . . . . . . . . . . . 

12

Глава 2




^ Структура систем, основанных на знаниях . . . . . . . . . . . . . . . . . . . . . . . . . . . 

14

2.1 Категории пользователей ЭС. Подсистема приобретения знаний . . .

14

2.2 База знаний . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 

15

2.3 Подсистема вывода. Прямой и обратный порядок вывода . . . . . . . . . 

17

2.4 Диалог с ЭС. Подсистема объяснения . . . . . . . . . . . . . . . . . . . . . . . . . . 

20

Глава 3




^ Стратегии управления выводом . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 

23

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

23

3.2 Повышение эффективности поиска . . . . . . . . . . . . . . . . . . . . . . . . . . . . 

23

3.3 Представление задач в пространстве состояний . . . . . . . . . . . . . . . . . .

26

Глава 4




^ Методы поиска в пространстве состояний . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

4.1 Процессы поиска на графе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

4.2 Методы полного перебора . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30

4.3 Метод перебора в глубину . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

34

Глава 5




^ Пример построения и работы экспертной системы . . . . . . . . . . . . . . . . . . . . .

36

Заключение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 

39

Список использованных источников . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

40

Приложение

41

Введение

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

Область ИИ имеет более чем сорокалетнюю историю развития. С момента возникновения в ней рассматривался ряд весьма сложных задач, которые, наряду с другими, до сих пор являются предметом исследований: автоматические доказательства теорем, машинный перевод (автоматический перевод с одного естественного языка на другой), распознавание изображений и анализ сцен, планирование действий роботов, алгоритмы и стратегии игр [2].

Экспертные системы обычно определяют как программы ЭВМ, моделирующие действия эксперта-человека при решении задач в узкой предметной области на основе накопленных знаний, составляющих базу знаний. ЭС выдают советы, проводят анализ, дают консультации, выполняют классификацию и ставят диагноз [3]. Практическое применение ЭС на предприятиях способствует эффективности работы и повышению квалификации специалистов.

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

При создании ЭС возникает ряд затруднений. Это, прежде всего, связано с тем, что заказчик не всегда может точно сформулировать свои требования к разрабатываемой системе. Также возможно возникновение трудностей чисто психологического порядка: при создании базы знаний системы эксперт может препятствовать передаче своих знаний, опасаясь, что впоследствии его заменят “машиной”. Но эти страхи не обоснованы, т. к. ЭС не способны обучаться, они не обладают здравым смыслом, интуицией [1]. Но в настоящее время ведутся разработки экспертных систем, реализующих идею самообучения. Также ЭС неприменимы в больших предметных областях и в тех областях, где отсутствуют эксперты.

Экспертная система состоит из базы знаний (части системы, в которой содержатся факты), подсистемы вывода (множества правил, по которым осуществляется решение задачи), подсистемы объяснения, подсистемы приобретения знаний и диалогового процессора [2], [3].

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

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

Глава 1

Экспертные системы, их особенности.

Применение экспертных систем.
1.1 Определение и назначение экспертных систем

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

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

ЭС выдают советы, проводят анализ, выполняют классификацию, дают консультации и ставят диагноз. Они ориентированы на решение задач, обычно требующих проведения экспертизы человеком-специалистом. В отличие от машинных программ, использующий процедурный анализ, ЭС решают задачи в узкой предметной области (конкретной области экспертизы) на основе дедуктивных рассуждений. Такие системы часто оказываются способными найти решение задач, которые неструктурированны и плохо определены. Они справляются с отсутствием структурированности путем привлечения эвристик, т. е. правил, взятых “с потолка”, что может быть полезным в тех системах, когда недостаток необходимых знаний или времени исключает возможность проведения полного анализа.
1.2 Отличие ЭС от других программных продуктов. Строение и функционирование экспертной системы

К основным отличиям ЭС от других программных продуктов относится использование не только данных, но и знаний, а также специального механизма вывода решений и новых знаний на основе имеющихся. Форма представления знаний в ЭС выбрана таким образом, что они могут быть легко обработаны на ЭВМ. В ЭС применяется алгоритм обработки знаний, а не алгоритм решения задачи. Поэтому применение алгоритма обработки знаний при решении конкретной задачи может привести к получению такого результата, который не был предусмотрен. Более того, алгоритм обработки знаний заранее неизвестен и строится по ходу решения задачи на основании эвристических правил. Решение задачи в ЭС сопровождается понятными пользователю объяснениями, качество получаемых решений обычно не хуже, а иногда и лучше достигаемого специалистами. В системах, основанных на знаниях, правила (или эвристики), по которым решаются проблемы в конкретной предметной области, хранятся в базе знаний. Проблемы ставятся перед системой в виде совокупности фактов, описывающих некоторую ситуацию, и система с помощью базы знаний пытается вывести заключение из этих фактов (см. рис.1) [3].




рис.1

Качество ЭС определяется размером и качеством базы знаний (правил или эвристик). Система функционирует в следующем циклическом режиме: выбор (запрос) данных или результатов анализов → наблюдения → интерпретация результатов → усвоение новой информации → выдвижении с помощью правил временных гипотез → выбор следующей порции данных или результатов анализов (рис.2). Такой процесс продолжается до тех пор, пока не поступит информация, достаточная для окончательного заключения.

В любой момент времени в системе существуют три типа знаний:

  • ^ Структурированные знания - статические знания о предметной области. После того как эти знания выявлены, они уже не изменяются.

  • Структурированные динамические знания - изменяемые знания о предметной области. Они обновляются по мере выявления новой информации.

  • Рабочие знания - знания, применяемые для решения конкретной задачи или проведения консультации.

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

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

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

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

  3. Наиболее подходящая область применения - решение задач дедуктивным методом. Например, правила или эвристики выражаются в виде пар посылок и заключений типа “если - то”.

  4. Эти системы могут объяснять ход решения задачи понятным пользователю способом. Обычно мы не принимаем ответ эксперта, если на вопрос “Почему?” не можем получить логичный ответ. Точно так же мы должны иметь возможность спросить систему, основанную на знаниях, как было получено конкретное заключение.

  5. Выходные результаты являются качественными (а не количественными).

  6. Системы, основанные на знаниях, строятся по модульному принципу, что позволяет постепенно наращивать их базы знаний.

1.3 Главное достоинство экспертных систем. Преимущества ЭС перед человеком - экспертом.

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

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

  1. У них нет предубеждений

  2. Они не делают поспешных выводов

  3. Эти системы работают систематически, рассматривая все детали, часто выбирая наилучший вариант из всех возможных

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

  5. Системы, основанные на знаниях, устойчивы к “помехам”. Эксперт пользуется побочными знаниями и легко поддается влиянию внешних факторов, которые непосредственно не связаны с решаемой задачей. ЭС, не обремененные знаниями из других областей, по своей природе менее подвержены “шумам”.

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

1.4 Области применения экспертных систем

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

а) Медицинская диагностика

Диагностические системы используются для установления связи между нарушениями деятельности организма и их возможными причинами. Наиболее известна диагностическая система MYCIN, которая предназначена для диагностики и наблюдения за состоянием больного при менингите и бактериальных инфекциях. Ее первая версия была разработана в Стенфордском университете в середине 70-х годов. В настоящее время эта система ставит диагноз на уровне врача-специалиста. Она имеет расширенную базу знаний, благодаря чему может применяться и в других областях медицины.

б) Прогнозирование

Прогнозирующие системы предсказывают возможные результаты или события на основе данных о текущем состоянии объекта. Программная система “Завоевание Уолл-стрита” может проанализировать конъюнктуру рынка и с помощью статистических методов алгоритмов разработать для вас план капиталовложений на перспективу. Она не относится к числу систем, основанных на знаниях, поскольку использует процедуры и алгоритмы традиционного программирования. Хотя пока еще отсутствуют ЭС, которые способны за счет своей информации о конъюнктуре рынка помочь вам увеличить капитал, прогнозирующие системы уже сегодня могут предсказывать погоду, урожайность и поток пассажиров. Даже на персональном компьютере, установив простую систему, основанную на знаниях, вы можете получить местный прогноз погоды.

в) Планирование

Планирующие системы предназначены для достижения конкретных целей при решении задач с большим числом переменных. Дамасская фирма Informat впервые в торговой практике предоставляет в распоряжении покупателей 13 рабочих станций, установленных в холле своего офиса, на которых проводятся бесплатные 15-минутные консультации с целью помочь покупателям выбрать компьютер, в наибольшей степени отвечающий их потребностям и бюджету. Кроме того, компания Boeing применяет ЭС для проектирования космических станций, а также для выявления причин отказов самолетных двигателей и ремонта вертолетов. Экспертная система XCON, созданная фирмой DEC, служит для определения или изменения конфигурации компьютерных систем типа VAX в соответствии с требованиями покупателя. Фирма DEC разрабатывает более мощную систему XSEL, включающую базу знаний системы XCON, с целью оказания помощи покупателям при выборе вычислительных систем с нужной конфигурацией. В отличие от XCON система XSEL является интерактивной.

г) Интерпретация

Интерпретирующие системы обладают способностью получать определенные заключения на основе результатов наблюдения. Система PROSPECTOR, одна из наиболее известных систем интерпретирующего типа, объединяет знания девяти экспертов. Системе удалось обнаружить залежи молибдена, наличие которых не предполагал ни один из девяти экспертов, участвовавших в построении базы знаний. Другая интерпретирующая система - HASP/SIAP. Она определяет местоположение и типы судов в тихом океане по данным акустических систем слежения.

д) Контроль и управление

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

е) Диагностика неисправностей в механических и электрических устройствах

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

ж) Обучение

Системы, основанные на знаниях, могут входить составной частью в компьютерные системы обучения. Система получает информацию о деятельности некоторого объекта (например, студента) и анализирует его поведение. База знаний изменяется в соответствии с поведением объекта. Примером этого обучения может служить компьютерная игра, сложность которой увеличивается по мере возрастания степени квалификации играющего. Одной из наиболее интересных обучающих ЭС является разработанная Д. Ленатом система EURISCO, которая использует простые эвристики. Эта система была опробована в игре Т. Тревевеллера, имитирующей боевые действия. Суть игры состоит в том, чтобы определить состав флотилии, способной нанести поражение в условиях неизменяемого множества правил. Система EURISCO включила в состав флотилии небольшие, способные провести быструю атаку корабли и одно очень маленькое скоростное судно и постоянно выигрывала в течение трех лет, несмотря на то, что в стремлении воспрепятствовать этому правила игры меняли каждый год.

Большинство ЭС включают знания, по содержанию которых их можно отнести одновременно к нескольким типам. Например, обучающая система может также обладать знаниями, позволяющими выполнять диагностику и планирование. Она определяет способности обучаемого по основным направлениям курса, а затем с учетом полученных данных составляет учебный план. Управляющая система может применяться для целей контроля, диагностики, прогнозирования и планирования. Система, обеспечивающая сохранность жилища, может следить за окружающей обстановкой, распознавать происходящие события (например, открылось окно), выдавать прогноз (вор-взломщик намеревается проникнуть в дом) и составлять план действий (вызвать полицию) [1], [2], [3].

1.5 Критерий использования ЭС для решения задач

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

  1. Данные и знания надежны и не меняются со временем.

  2. Пространство возможных решений относительно невелико.

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

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

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

Применимы

Неприменимы

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

Имеются эффективные алгоритмические методы.

Есть эксперты, которые способны решить задачу.

Отсутствуют эксперты или их число недостаточно.

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

Задачи носят вычислительный характер.

Доступные данные “зашумлены”.

Известны точные факты и строгие процедуры.

Задачи решаются методом формальных рассуждений.

Задачи решаются процедурными методами, с помощью аналогии или интуитивно.

Знания статичны (неизменны).

Знания динамичны (меняются со временем).

В целом ЭС не рекомендуется применять для решения следующих типов задач:

  • математических, решаемых обычным путем формальных преобразований и процедурного анализа;

  • задач распознавания, поскольку в общем случае они решаются численными методами;

  • задач, знания о методах решения которых отсутствуют (невозможно построить базу знаний) [3].

Глава 2

Структура систем, основанных на знаниях.
2.1 Категории пользователей ЭС. Подсистема приобретения знаний

Структура ЭС изображена на схеме:




рис.3

Экспертные системы имеют две категории пользователей и два отдельных “входа”, соответствующих различным целям взаимодействия пользователей с ЭС:

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

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

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

2.2 База знаний

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

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

(АТРИБУТ  ОБЪЕКТ  ЗНАЧЕНИЕ).

Такой факт означает, что заданный объект имеет заданный атрибут (свойство) с заданным значением. Например, тройка (ТЕМПЕРАТУРА  ПАЦИЕНТ1  37.5) представляет факт «температура больного, обозначенного ПАЦИЕНТ1, равна 37.5». В более простых случаях факт выражается не конкретным значением атрибута, а каким либо простым утверждением, которое может быть истинным или ложным, например: «Небо покрыто тучами». В таких случаях факт можно обозначить каким-либо кратким именем (например, ТУЧИ) или использовать для представления факта сам текст соответствующей фразы.

^ Правила в базе знаний имеют вид:

ЕСЛИ  А,  ТО  S, где Аусловие, S - действие. Действие S исполняется, если А истинно. Наиболее часто действие S, так же, как и условие, представляет собой утверждение, которое может быть выведено системой (то есть становится ей известной), если истинно условие правила А.

Правила в базе знаний служат для представления эвристических знаний (эвристик), т. е. неформальных правил рассуждения, вырабатываемых экспертом на основе опыта его деятельности [1].

Пример правила:

ЕСЛИ  небо покрыто тучами,

ТО  скоро пойдет дождь.

В качестве условия ^ A может выступать либо факт (как в данном примере), либо несколько фактов A1,...,AN, соединенные логической операцией и:

A1 и A2 и ... и AN.

Пример предыдущего правила с усложнённым условием:

ЕСЛИ  Небо покрыто тучами и Барометр падает

ТО  Скоро пойдет дождь.

(Правило 1)

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

Если система не может вывести некоторый факт, истинность или ложность которого требуется установить, то система спрашивает о нем пользователя. Например:

ВЕРНО ЛИ, ЧТО небо покрыто тучами?

При получении положительного ответа от пользователя факт «Небо покрыто тучами» включается в рабочем множество.

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

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

2.3 Подсистема вывода. Прямой и обратный порядок вывода.

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

Цель ЭС - вывести некоторый заданный факт, который называется целевым утверждением (то есть в результате применения правил добиться того, чтобы этот факт был включен в рабочее множество), либо опровергнуть этот факт (то есть убедиться, что его вывести невозможно, следовательно, при данном уровне знаний системы он является ложным). Целевое утверждение может быть либо «заложено» заранее в базу знаний системы, либо извлекается системой из диалога с пользователем.

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

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

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

ЕСЛИ  скоро пойдет дождь,

ТО  нужно взять с собой зонтик.

(Правило 2)

Предположим также, что факты «Небо покрыто тучами» и «Барометр падает» имеются в рабочем множестве, а целью системы является ответ на вопрос пользователя:

«Нужно взять с собой зонтик?»

При прямом выводе работа системы будет протекать следующим образом:

Шаг 1. Рассматривается правило 1. Его условие истинно, т. к. оба элемента конъюнкции имеются в рабочем множестве. Применяем правило 1; добавляем к рабочему множеству факт ”Скоро пойдет дождь”.

Шаг 2. Рассматривается правило 2. Его условие истинно, т. к. утверждение из условия имеется в рабочем множестве. Применяем правило 2; добавляем к рабочему множеству факт “Нужно взять с собой зонтик”. Целевое утверждение выведено.

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

В рассматриваемом примере вывод целевого утверждения “Нужно взять с собой зонтик” обратной цепочкой рассуждений выполняется следующим образом:

Шаг 1. Рассматривается правило 1. Оно не содержит цели в правой части. Переходим к правилу 2.

Шаг 2. Рассматривается правило 2. Оно содержит цель в правой части правила. Переходим к правой части правила и рассматриваем в качестве текущей цели утверждения “Скоро пойдет дождь”.

Шаг 3. Текущей цели нет в рабочем множестве. Рассмотрим правило 1, которое содержит цель в правой части. Обе компоненты его условия имеются в рабочем множестве, так что условие истинно. Применяем правило 1; в результате выводим утверждение: “Скоро пойдет дождь”, которое было нашей предыдущей целью.

Шаг 4. Применяем правило 2, условием которого является данное утверждение. Получаем вывод исходного утверждения.

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

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

2.4 Диалог с ЭС. Подсистема объяснения.

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

Пример диалога пользователя с системой:

^ Система: Вы хотите узнать, нужно ли взять с собой зонтик?

Пользователь: Да.

Система: Верно ли, что небо покрыто тучами?

Пользователь: Да.

Система: Верно ли, что барометр падает?

Пользователь: Да.

Система: (после некоторого “размышления”) Нужно взять с собой зонтик.

Как видно из этого примера, в ходе консультации инициатива диалога принадлежит системе, а сама консультация у ЭС выглядит так же, как и консультация у эксперта-человека: задается ряд вопросов и на основании их анализа выдается экспертное заключение. Однако в отличие от беседы со специалистом, диалог с ЭС имеет свои психологические особенности: большинство пользователей (по вполне понятным причинам, таким, как отсутствие опыта работы на компьютерах, лаконичность диалога с ЭС, отсутствие пояснений в ходе консультации и другим) склонны меньше доверять “мнению” ЭС, чем мнению “живого” эксперта.

Чтобы удостовериться в “разумности” и “компетентности” ЭС, пользователь может обратиться к ее подсистеме объяснения.

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




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

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

Рассмотрим теперь работу подсистемы объяснения. Для получения объяснения в процессе консультации пользователь может “перехватить инициативу” диалога в тот момент, когда система задает очередной вопрос, “переспросив” в ответ систему, почему она его задала. Таким образом, вместо ответа на вопрос системы, пользователь может задать ей встречный вопрос:

ПОЧЕМУ? (“Почему система задала такой вопрос?”).

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

Пусть в примере диалога с ЭС пользователь вместо ответа на вопрос системы: “Верно ли, что барометр падает?” задает ей встречный вопрос: ”ПОЧЕМУ?”. ЭС обращается к подсистеме объяснения, которая выдает пользователю следующее сообщение:

(1.0) Эта информация необходима, чтобы установить, что скоро пойдет дождь.

Ранее было установлено, что:

(1.1) Небо покрыто тучами.

Следовательно, если:

(1.2) Барометр падает, то скоро пойдет дождь.

(Правило 1).

Двойные номера в скобках имеют следующий смысл. Для облегчения работы пользователя подсистема объяснения нумерует свои ответы (номер ответа, в данном случае - 1. является первой цифрой номера), а в каждом ответе - нумерует также утверждения, о которых в нем идет речь. Пользователь может использовать двойные номера для ссылок на утверждения, не выписывая их явно. Например, номер 1.1 обозначает утверждение “Небо покрыто тучами”.

  1   2   3



Скачать файл (470 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации