Задача Экспертные системы 3
Работа добавлена на сайт bukvasha.net: 2015-10-29Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
от 25%
договор
СОДЕРЖАНИЕ.
Введение…………………………………………………………………………...3
Глава 1. Экспертные системы, их особенности. Применение экспертных систем. …………………………………………………………………………….5
1.1. Определение экспертных систем. Главное достоинство и назначение
экспертных систем……………………………………………………………..5
1.2. Отличие экспертных систем от других программных продуктов……….6
1.3. Отличительные особенности. Экспертные системы первого и второго поколения………………………………………………………………………….8
1.4. Критерии использования экспертных систем для решения задач……...10
1.5. Ограничения в применении экспертных систем………………………...11
1.6. Преимущества экспертных систем перед человеком-экспертом………12
Глава 2. Классификация экспертных систем.................……………………….14
2.1. Схема классификации……………………………………………………..14
2.2. Области применения……………………………………………………....18
Глава 3. Структура систем, основанных на знаниях…………………………..23
3.1. Категории пользователей экспертных систем…………………………...23
3.2. Подсистема приобретения знаний………………………………………..24
3.3. База знаний…………………………………………………………………24
3.4. Подсистема вывода………………………………………………………..27
3.4.1. Подсистема вывода, способы логического вывода…………….……...27
3.4.2. Компонента вывода……………………………………………………...30
3.4.3. Управляющий компонент……………………………………………….32
3.5. Диалог с экспертной системой. Объяснение…………………………….35
Глава 4. Задача…………………………………………………………………...41
4.1. Постановка задачи…………………………………………………………41
4.2. Контрольный пример……………………………………………………...41
4.3. Блок-схема алгоритма решения задачи…………………………………..42
4.4. Текст программы на языке Pascal………………………………………...43
4.5. Результат выполнения программы на контрольном примере…………..44
Заключение……………………………………………………………………….45
Список использованной литературы…………………………………………...48
ВВЕДЕНИЕ.
Экспертные системы (ЭС) возникли как значительный практический результат в применении и развитии методов искусственного интеллекта (ИИ)- совокупности научных дисциплин, изучающих методы решения задач интеллектуального (творческого) характера с использованием ЭВМ.
Область ИИ имеет более чем сорокалетнюю историю развития. С самого начала в ней рассматривался ряд весьма сложных задач, которые, наряду с другими, и до сих пор являются предметом исследований: автоматические доказательства теорем, машинный перевод (автоматический перевод с одного естественного языка на другой), распознавание изображений и анализ сцен, планирование действий роботов, алгоритмы и стратегии игр.
ЭС - это набор программ, выполняющий функции эксперта при решении задач из некоторой предметной области. ЭС выдают советы, проводят анализ, дают консультации, ставят диагноз. Практическое применение ЭС на предприятиях способствует эффективности работы и повышению квалификации специалистов.
Главным достоинством экспертных систем является возможность накопления знаний и сохранение их длительное время. В отличии от человека к любой информации экспертные системы подходят объективно, что улучшает качество проводимой экспертизы. При решении задач, требующих обработки большого объема знаний, возможность возникновения ошибки при переборе очень мала.
При создании ЭС возникает ряд затруднений. Это, прежде всего, связано стем, что заказчик не всегда может точно сформулировать свои требования к разрабатываемой системе. Также возможно возникновение трудностей чисто психологического порядка: при создании базы знаний системы эксперт может препятствовать передаче своих знаний, опасаясь, что впоследствии его заменят “машиной”. Но эти страхи не обоснованы, т. к. ЭС не способны обучаться, они не обладают здравым смыслом, интуицией. Но в настоящее время ведутся разработки экспертных систем, реализующих идею самообучения. Также ЭС неприменимы в больших предметных областях и в тех областях, где отсутствуют эксперты.
При построении подсистем вывода используют методы решения задач искусственного интеллекта.
Целью данного курсового проекта является выявить особенности построения экспертных систем, области их применения, особенности их работы.
ГЛАВА 1. ЭПЕРТНЫЕСИСТЕМЫ, ИХ ОСОБЕННОСТИ. ПРИМЕНЕНИЕЭКСПЕРТНЫХ СИСТЕМ.
1.1. Определение экспертных систем. Главное достоинство и назначение экспертных систем.
Экспертные системы (ЭС)- это яркое и быстро прогрессирующее направление в области искусственного интеллекта (ИИ). Причиной повышенного интереса, который ЭС вызывают к себе на протяжении всего своего существования, является возможность их применения к решению задач из самых различных областей человеческой деятельности. Пожалуй, не найдется такой проблемной области, в которой не было бы создано ни одной ЭС или, по крайней мере, такие попытки не предпринимались бы.
ЭС - это набор программ или программное обеспечение, которое выполняет функции эксперта при решении какой-либо задачи в области его компетенции. ЭС, как и эксперт-человек, в процессе своей работы оперирует со знаниями. Знания о предметной области, необходимые для работы ЭС, определенным образом формализованы и представлены в памяти ЭВМ в виде базы знаний, которая может изменяться и дополняться в процессе развития системы.
ЭС выдают советы, проводят анализ, выполняют классификацию, дают консультации и ставят диагноз. Они ориентированы на решение задач, обычно требующих проведения экспертизы человеком-специалистом. В отличие от машинных программ, использующий процедурный анализ, ЭС решают задачи в узкой предметной области (конкретной области экспертизы) на основе дедуктивных рассуждений. Такие системы часто оказываются способными найти решение задач, которые неструктурированны и плохо определены. Они справляются с отсутствием структурированности путем привлечения эвристик, т. е. правил, взятых “с потолка”, что может быть полезным в тех системах, когда недостаток необходимых знаний или времени исключает возможность проведения полного анализа.
Главное достоинство ЭС - возможность накапливать знания, сохранять их длительное время, обновлять и тем самым обеспечивать относительную независимость конкретной организации от наличия в ней квалифицированных специалистов. Накопление знаний позволяет повышать квалификацию специалистов, работающих на предприятии, используя наилучшие, проверенные решения.
Практическое применение искусственного интеллекта на машиностроительных предприятиях и в экономике основано на ЭС, позволяющих повысить качество и сохранить время принятия решений, а также способствующих росту эффективности работы и повышению квалификации специалистов.
1.2.
Отличие ЭС от других программных продуктов
.
Основными отличиями ЭС от других программных продуктов являются использование не только данных, но и знаний, а также специального механизма вывода решений и новых знаний на основе имеющихся. Знания в ЭС представляются в такой форме, которая может быть легко обработана на ЭВМ. В ЭС известен алгоритм обработки знаний, а не алгоритм решения задачи. Поэтому применение алгоритма обработки знаний может привести к получению такого результата при решении конкретной задачи, который не был предусмотрен. Более того, алгоритм обработки знаний заранее неизвестен и строится по ходу решения задачи на основании эвристических правил. Решение задачи в ЭС сопровождается понятными пользователю объяснениями, качество получаемых решений обычно не хуже, а иногда и лучше достигаемого специалистами. В системах, основанных на знаниях, правила (или эвристики), по которым решаются проблемы в конкретной предметной области, хранятся в базе знаний. Проблемы ставятся перед системой в виде совокупности фактов, описывающих некоторую ситуацию, и система с помощью базы знаний пытается вывести заключение из этих фактов:
|
база знаний
| |||
Качество ЭС определяется размером и качеством базы знаний (правил или эвристик). Система функционирует в следующем циклическом режиме: выбор (запрос) данных или результатов анализов, наблюдения, интерпретация результатов, усвоение новой информации, выдвижении с помощью правил временных гипотез и затем выбор следующей порции данных или результатов анализов. Такой процесс продолжается до тех пор, пока не поступит информация, достаточная для окончательного заключения.
В любой момент времени в системе существуют три типа знаний:
- Структурированные знания- статические знания о предметной области. После того как эти знания выявлены, они уже не изменяются.
- Структурированные динамические знания - изменяемые знания о предметной области. Они обновляются по мере выявления новой информации.
- Рабочие знания- знания, применяемые для решения конкретной задачи или проведения консультации.
Все перечисленные выше знания хранятся в базе знаний. Для ее построения требуется провести опрос специалистов, являющихся экспертами в конкретной предметной области, а затем систематизировать, организовать и снабдить эти знания указателями, чтобы впоследствии их можно было легко извлечь из базы знаний.
|
и входные данные
|
исходных данных
|
|
наблюдения пользователи
|
|
интерпретация правила
|
|
|
|
заключения
Схема работы ЭС.
1.3.
Отличительные особенности. Экспертные системы первого и второго поколения.
1. Экспертиза может проводиться только в одной конкретной области. Так, программа, предназначенная для определения конфигурации систем ЭВМ, не может ставить медицинские диагнозы.
2. База знаний и механизм вывода являются различными компонентами. Действительно, часто оказывается возможным сочетать механизм вывода с другими базами знаний для создания новых ЭС. Например, программа анализа инфекции в крови может быть применена в пульмонологии путем замены базы знаний, используемой с тем же самым механизмом вывода.
3. Наиболее подходящая область применения - решение задач дедуктивным методом. Например, правила или эвристики выражаются в виде пар посылок и заключений типа “если-то”.
4. Эти системы могут объяснять ход решения задачи понятным пользователю способом. Обычно мы не принимаем ответ эксперта, если на вопрос “Почему?” не можем получить логичный ответ. Точно так же мы должны иметь возможность спросить систему, основанную на знаниях, как было получено конкретное заключение.
5. Выходные результаты являются качественными (а не количественными).
6. Системы, основанные на знаниях, строятся по модульному принципу, что позволяет постепенно наращивать их базы знаний.
Компьютерные системы, которые могут лишь повторить логический вывод эксперта, принято относить к ЭС первого поколения. Однако специалисту, решающему интеллектуально сложную задачу, явно недостаточно возможностей системы, которая лишь имитирует деятельность человека. Ему нужно, чтобы ЭС выступала в роли полноценного помощника и советчика, способного проводить анализ нечисловых данных, выдвигать и отбрасывать гипотезы, оценивать достоверность фактов, самостоятельно пополнять свои знания, контролировать их непротиворечивость, делать заключения на основе прецедентов и, может быть, даже порождать решение новых, ранее не рассматривавшихся задач. Наличие таких возможностей является характерным для ЭС второго поколения, концепция которых начала разрабатываться 9-10 лет назад. Экспертные системы, относящиеся ко второму поколению, называют партнерскими, или усилителями интеллектуальных способностей человека. Их общими отличительными чертами является умение обучаться и развиваться, т.е. эволюционировать.
В экспертных системах первого поколения знания представлены следующим образом:
1) знаниями системы являются только знания эксперта, опыт накопления знаний не предусматривается.
2) методы представления знаний позволяли описывать лишь статические предметные области.
3) модели представления знаний ориентированы на простые области.
Представление знаний в экспертных системах второго поколения следующее:
1) используются не поверхностные знания, а более глубинные. Возможно дополнение предметной области.
2) ЭС может решать задачи динамической базы данных предметной области.
1.4.
Критерий использования ЭС для решения задач.
Существует ряд прикладных задач, которые решаются с помощью систем, основанных на знаниях, более успешно, чем любыми другими средствами. При определении целесообразности применения таких систем нужно руководствоваться следующими критериями.
1. Данные и знания надежны и не меняются со временем.
2. Пространство возможных решений относительно невелико.
3. В процессе решения задачи должны использоваться формальные рассуждения. Существуют системы, основанные на знаниях, пока еще не пригодные для решения задач методами проведения аналогий или абстрагирования (человеческий мозг справляется с этим лучше). В свою очередь традиционные компьютерные программы оказываются эффективнее систем, основанных на знаниях, в тех случаях, когда решение задачи связано с применением процедурного анализа. Системы, основанные на знаниях, более подходят для решения задач, где требуются формальные рассуждения.
4. Должен быть, по крайней мере один эксперт, который способен явно сформулировать свои знания и объяснить свои методы применения этих знаний для решения задач.
В таблице один приведены сравнительные свойства прикладных задач, по наличию которых можно судить о целесообразности использования для их решения ЭС.
Таблица. Критерий применимости ЭС.
применимы | неприменимы |
Не могут быть построены строгие алгоритмы или процедуры, но существуют эвристические методы решения. | Имеются эффективные алгоритмические методы. |
Есть эксперты, которые способны решить задачу. | Отсутствуют эксперты или их число недостаточно. |
По своему характеру задачи относятся к области диагностики, интерпретации или прогнозирования. | Задачи носят вычислительный характер. |
Доступные данные “зашумлены”. | Известны точные факты и строгие процедуры. |
Задачи решаются методом формальных рассуждений. | Задачи решаются процедурными методами, с помощью аналогии или интуитивно. |
Знания статичны (неизменны). | Знания динамичны (меняются со временем). |
В целом ЭС не рекомендуется применять для решения следующих типов задач:
- математических, решаемых обычным путем формальных преобразований и процедурного анализа;
- задач распознавания, поскольку в общем случае они решаются численными методами;
- задач, знания о методах решения которых отсутствуют (невозможно построить базу знаний).
1.5.
Ограничения в применение экспертных систем.
Даже лучшие из существующих ЭС, которые эффективно функционируют как на больших, так и на мини-ЭВМ, имеют определенные ограничения по сравнению с человеком-экспертом.
1. Большинство ЭС не вполне пригодны для применения конечным пользователем. Если вы не имеете некоторого опыта работы с такими системами, то у вас могут возникнуть серьезные трудности. Многие системы оказываются доступными только тем экспертам, которые создавали из базы знаний.
2. Вопросно-ответный режим, обычно принятый в таких системах, замедляет получение решений. Например, без системы MYCIN врач может (а часто и должен) принять решение значительно быстрее, чем с ее помощью.
3. Навыки системы не возрастают после сеанса экспертизы.
4. Все еще остается проблемой приведение знаний, полученных от эксперта, к виду, обеспечивающему их эффективную машинную реализацию.
5. ЭС не способны обучаться, не обладают здравым смыслом. Домашние кошки способны обучаться даже без специальной дрессировки, ребенок в состоянии легко уяснить, что он станет мокрым, если опрокинет на себя стакан с водой, однако если начать выливать кофе на клавиатуру компьютера, у него не хватит “ума” отодвинуть ее.
6. ЭС неприменимы в больших предметных областях. Их использование ограничивается предметными областями, в которых эксперт может принять решение за время от нескольких минут до нескольких часов.
7. В тех областях, где отсутствуют эксперты (например, в астрологии), применение ЭС оказывается невозможным.
8. Имеет смысл привлекать ЭС только для решения когнитивных задач. Теннис, езда на велосипеде не могут являться предметной областью для ЭС, однако такие системы можно использовать при формировании футбольных команд.
9. Человек-эксперт при решении задач обычно обращается к своей интуиции или здравому смыслу, если отсутствуют формальные методы решения или аналоги таких задач.
Системы, основанные на знаниях, оказываются неэффективными при необходимости проведения скрупулезного анализа, когда число “решений” зависит от тысяч различных возможностей и многих переменных, которые изменяются во времени. В таких случаях лучше использовать базы данных с интерфейсом на естественном языке.
1.6.
Преимущества ЭС перед человеком - экспертом.
Системы, основанные на знаниях, имеют определенные преимущества перед человеком-экспертом.
1. У них нет предубеждений.
2. Они не делают поспешных выводов.
3. Эти системы работают, систематизировано, рассматривая все детали, часто выбирая наилучшую альтернативу из всех возможных.
4. База знаний может быть очень и очень большой. Будучи введены в машину один раз, знания сохраняются навсегда. Человек же имеет ограниченную базу знаний, и если данные долгое время не используются, то они забываются и навсегда теряются.
5. Системы, основанные на знаниях, устойчивы к “помехам”. Эксперт пользуется побочными знаниями и легко поддается влиянию внешних факторов, которые непосредственно не связаны с решаемой задачей. ЭС, не обремененные знаниями из других областей, по своей природе менее подвержены “шумам”. Со временем системы, основанные на знаниях, могут рассматриваться пользователями как разновидность тиражирования - новый способ записи и распространения знаний. Подобно другим видам компьютерных программ они не могут заменить человека в решении задач, а скорее напоминают орудия труда, которые дают ему возможность решать задачи быстрее и эффективнее.
6. Эти системы не заменяют специалиста, а являются инструментом в его руках.
ГЛАВА 2. КЛАССИФИКАЦИЯ ЭКСПЕРТНЫХ СИСТЕМ.
2.1. Схема классификации.
Класс "экспертные системы" сегодня объединяет несколько тысяч различных программных комплексов, которые можно классифицировать по различным критериям. Полезными могут оказаться следующие классификации:
1. Классификация по решаемой задаче.
1) Интерпретация данных. Это одна из традиционных задач для экспертных систем. Под интерпретацией понимается определение смысла данных, результаты которого должны быть согласованными и корректными. Обычно предусматривается многовариантный анализ данных.
Пример:
• обнаружение и идентификация различных типов океанских судов — SIAP;
• определение основных свойств личности по результатам психодиагностического тестирования в системах АВТАНТЕСТ и МИКРОЛЮШЕР и др.
2) Диагностика. Под диагностикой понимается обнаружение неисправности в некоторой системе. Неисправность — это отклонение от нормы. Такая трактовка позволяет с единых теоретических позиций рассматривать и неисправность оборудования в технических системах, и заболевания живых организмов, и всевозможные природные аномалии. Важной спецификой является необходимость понимания функциональной структуры ("анатомии") диагностирующей системы.
Пример:
• диагностика и терапия сужения коронарных сосудов — ANGY;
• диагностика ошибок в аппаратуре и математическом обеспечении ЭВМ — система CRIB и др.
3) Мониторинг. Основная задача мониторинга — непрерывная интерпретация данных в реальном масштабе времени и сигнализация о выходе тех или иных параметров за допустимые пределы. Главные проблемы — "пропуск" тревожной ситуации и инверсная задача "ложного" срабатывания. Сложность этих проблем в размытости симптомов тревожных ситуаций и необходимость учета временного контекста.
Пример:
• контроль за работой электростанций СПРИНТ, помощь диспетчерам атомного реактора—REACTOR;
• контроль аварийных датчиков на химическом заводе — FALCON и др.
4) Проектирование. Проектирование состоит в подготовке спецификаций на создание "объектов" с заранее определенными свойствами. Под спецификацией понимается весь набор необходимых документов — чертеж, пояснительная записка и т.д. Основные проблемы здесь — получение четкого структурного описания знаний об объекте и проблема "следа". Для организации эффективного проектирования и, в еще большей степени, перепроектирования необходимо формировать не только сами проектные решения, но и мотивы их принятия. Таким образом, в задачах проектирования тесно связываются два основных процесса, выполняемых в рамках соответствующей ЭС: процесс вывода решения и процесс объяснения.
Пример:
• проектирование конфигураций ЭВМ VAX — 11/780 в системе XCON (или R1), проектирование БИС — CADHELP;
• синтез электрических цепей — SYN и др.
5) Прогнозирование. Прогнозирующие системы логически выводят вероятные следствия из заданных ситуаций. В прогнозирующей системе обычно используется параметрическая динамическая модель, в которой значения параметров "подгоняются" под заданную ситуацию. Выводимые из этой модели следствия составляют основу для прогнозов с вероятностными оценками.
Пример:
• предсказание погоды — система WILLARD;
• оценки будущего урожая — PLANT;
• прогнозы в экономике — ECON и др.
6) Планирование. Под планированием понимается нахождение планов действий, относящихся к объектам, способным выполнять некоторые функции. В таких ЭС используются модели поведения реальных объектов с тем, чтобы логически вывести последствия планируемой деятельности.
Пример:
• планирование поведения робота — STRIPS;
• планирование промышленных заказов — ISIS;
• планирование эксперимента — MOLGFN и др.
Обучение. Системы обучения диагностируют ошибки при изучении какой-либо дисциплины с помощью ЭВМ и подсказывают правильные решения. Они аккумулируют знания о гипотетическом "ученике" и его характерных ошибках, затем в работе способны диагностировать слабости в знаниях обучаемых и находить соответствующие средства для их ликвидации. Кроме того, они планируют акт общения с учеником в зависимости от успехов ученика с целью передачи знаний.
Пример:
• обучение языку программирования Лисп в системе "Учитель Лиспа";
• система PROUST — обучение языку Паскаль и др.
В общем случае все системы, основанные на знаниях, можно подразделить на системы, решающие задачи анализа, и на системы, решающие задачи синтеза. Основное отличие задач анализа от задач синтеза заключается в следующем: если в задачах анализа множество решений может быть перечислено и включено в систему, то в задачах синтеза множество решений потенциально строится из решений компонентов или подпроблем. Задача анализа — это интерпретация данных, диагностика; к задачам синтеза относятся проектирование, планирование. Комбинированные задачи: обучение, мониторинг, прогнозирование.
2. Классификация по связи с реальным временем.
1) Статические ЭС. Разрабатываются в предметных областях, в которых база знаний и интерпретируемые данные не меняются во времени. Они стабильны.
Пример: Диагностика неисправностей в автомобиле.
2) Квазидинамические ЭС. Интерпретируют ситуацию, которая меняется с некоторым фиксированным интервалом времени.
Пример: Микробиологические ЭС, в которых снимаются лабораторные измерения с технологического процесса один раз в 4 - 5 ч (производство лизина, например) и анализируется динамика полученных показателей по отношению к предыдущему измерению.
3) Динамические ЭС. Работают в сопряжении с датчиками объектов в режиме реального времени с непрерывной интерпретацией поступаемых данных.
Пример: Управление гибкими производственными комплексами, мониторинг в реанимационных палатах и т.д. Пример инструментария для разработки динамических систем — G2.
3. Классификация по типу ЭВМ
На сегодняшний день существуют:
• ЭС для уникальных стратегически важных задач на суперЭВМ (Эльбрус, CRAY, CONVEX и др.);
• ЭС на ЭВМ средней производительности (типа ЕС ЭВМ, mainframe);
• ЭС на символьных процессорах и рабочих станциях (SUN, APOLLO);
• ЭС на мини- и супермини-ЭВМ (VAX, micro-VAX и др.);
• ЭС на персональных компьютерах (IBM PC, MAC II и подобные).
4. Классификация по степени интеграции с другими программами.
1) Автономные ЭС. Работают непосредственно в режиме консультаций с пользователем для специфически "экспертных" задач, для решения которых не требуется привлекать традиционные методы обработки данных (расчеты, моделирование и т.д.).
2) Гибридные ЭС. Представляют программный комплекс, агрегирующий стандартные пакеты прикладных программ (например, математическую статистику, линейное программирование или системы управления базами данных) и средства манипулирования знаниями. Это может быть интеллектуальная надстройка над ППП или интегрированная среда для решения сложной задачи с элементами экспертных знаний.
Несмотря на внешнюю привлекательность гибридного подхода, следует отметить, что разработка таких систем являет собой задачу, на порядок более сложную, чем разработка автономной ЭС. Стыковка не просто разных пакетов, а разных методологий (что происходит в гибридных системах) порождает целый комплекс теоретических и практических трудностей.
2.2.
Области применения экспертных систем.
Так же можно классифицировать ЭС по области их применения: медицинская диагностика, контроль и управление, диагностика неисправностей в механических и электрических устройствах, обучение.
а) Медицинская диагностика.
Диагностические системы используются для установления связи между нарушениями деятельности организма и их возможными причинами. Наиболее известна диагностическая система MYCIN, которая предназначена для диагностики и наблюдения за состоянием больного при менингите и бактериальных инфекциях. Ее первая версия была разработана в Стенфордском университете в середине 70-х годов. В настоящее время эта система ставит диагноз на уровне врача-специалиста. Она имеет расширенную базу знаний, благодаря чему может применяться и в других областях медицины.
б) Прогнозирование.
Прогнозирующие системы предсказывают возможные результаты или события на основе данных о текущем состоянии объекта. Программная система “Завоевание Уолл-стрита” может проанализировать конъюнктуру рынка и с помощью статистических методов алгоритмов разработать для вас план капиталовложений на перспективу. Она не относится к числу систем, основанных на знаниях, поскольку использует процедуры и алгоритмы традиционного программирования. Хотя пока еще отсутствуют ЭС, которые способны за счет своей информации о конъюнктуре рынка помочь вам увеличить капитал, прогнозирующие системы уже сегодня могут предсказывать погоду, урожайность и поток пассажиров. Даже на персональном компьютере, установив простую систему, основанную на знаниях, вы можете получить местный прогноз погоды.
в) Планирование.
Планирующие системы предназначены для достижения конкретных целей при решении задач с большим числом переменных. Дамасская фирма Informat впервые в торговой практике предоставляет в распоряжении покупателей 13 рабочих станций, установленных в холле своего офиса, на которых проводятся бесплатные 15-минутные консультации с целью помочь покупателям выбрать компьютер, в наибольшей степени отвечающий их потребностям и бюджету. Кроме того, компания Boeing применяет ЭС для проектирования космических станций, а также для выявления причин отказов самолетных двигателей и ремонта вертолетов. Экспертная система XCON, созданная фирмой DEC, служит для определения или изменения конфигурации компьютерных систем типа VAX и в соответствии с требованиями покупателя. Фирма DEC разрабатывает более мощную систему XSEL, включающую базу знаний системы XCON, с целью оказания помощи покупателям при выборе вычислительных систем с нужной конфигурацией. В отличие от XCON система XSEL является интерактивной.
г) Интерпретация.
Интерпретирующие системы обладают способностью получать определенные заключения на основе результатов наблюдения. Система PROSPECTOR, одна из наиболее известных систем интерпретирующего типа, объединяет знания девяти экспертов. Используя сочетания девяти методов экспертизы, системе удалось обнаружить залежи руды стоимостью в миллион долларов, причем наличие этих залежей не предполагал ни один из девяти экспертов. Другая интерпретирующая система- HASP/SIAP. Она определяет местоположение и типы судов в тихом океане по данным акустических систем слежения.
д) Контроль и управление.
Системы, основанные на знаниях, могут применяться в качестве интеллектуальных систем контроля и принимать решения, анализируя данные, поступающие от нескольких источников. Такие системы уже работают на атомных электростанциях, управляют воздушным движением и осуществляют медицинский контроль. Они могут быть также полезны при регулировании финансовой деятельности предприятия и оказывать помощь при выработке решений в критических ситуациях.
е) Диагностика неисправностей в механических и электрических устройствах.
В этой сфере системы, основанные на знаниях, незаменимы как при ремонте механических и электрических машин (автомобилей, дизельных локомотивов и т.д.), так и при устранении неисправностей и ошибок в аппаратном и программном обеспечении компьютеров.
ж) Обучение.
Системы, основанные на знаниях, могут входить составной частью в компьютерные системы обучения. Система получает информацию о деятельности некоторого объекта (например, студента) и анализирует его поведение. База знаний изменяется в соответствии с поведением объекта. Примером этого обучения может служить компьютерная игра, сложность которой увеличивается по мере возрастания степени квалификации играющего. Одной из наиболее интересных обучающих ЭС является разработанная Д. Ленатом система EURISCO, которая использует простые эвристики. Эта система была опробована в игре Т. Тревевеллера, имитирующая боевые действия. Суть игры состоит в том, чтобы определить состав флотилии, способной нанести поражение в условиях неизменяемого множества правил. Система EURISCO включила в состав флотилии небольшие, способные провести быструю атаку корабли и одно очень маленькое скоростное судно и постоянно выигрывала в течение трех лет, несмотря на то, что в стремлении воспрепятствовать этому правила игры меняли каждый год.
Большинство ЭС включают знания, по содержанию которых их можно отнести одновременно к нескольким типам. Например, обучающая система может также обладать знаниями, позволяющими выполнять диагностику и планирование. Она определяет способности обучаемого по основным направлениям курса, а затем с учетом полученных данных составляет учебный план. Управляющая система может применяться для целей контроля, диагностики, прогнозирования и планирования. Система, обеспечивающая сохранность жилища, может следить за окружающей обстановкой, распознавать происходящие события (например, открылось окно), выдавать прогноз (вор-взломщик намеревается проникнуть в дом) и составлять план действий (вызвать полицию).
ГЛАВА 3. СТРУКТУРА СИСТЕМ, ОСНОВАННЫХ НА ЗНАНИЯХ.
3.1. Критерий пользователя ЭС.
Структура ЭС изображена на схеме:
пользователь
эксперт + диалоговый
инженер знаний процессор
подсистема подсистема
приобретения база знаний вывода
знаний
подсистема
объяснения
Экспертные системы имеют две категории пользователей и два отдельных “входа”, соответствующих различным целям взаимодействия пользователей с ЭС:
1)обычный пользователь (эксперт), которому требуется консультация ЭС- диалоговый сеанс работы с ней, в процессе которой она решает некоторую экспертную задачу. Диалог с ЭС осуществляется через диалоговый процессор- специальную компоненту ЭС. Существуют две основные формы диалога с ЭС- диалог на ограниченном подмножестве естественного языка ( с использованием словаря- меню (при котором на каждом шаге диалога система предлагает выбор профессионального лексикона экспертов) и диалог на основе из нескольких возможных действий);
экспертная группа инженерии знаний, состоящая из экспертов в предметной области и инженеров знаний. В функции этой группы входит заполнение базы знаний, осуществляемое с помощью специализированной диалоговой компоненты ЭС - подсистемы приобретения знаний, которая позволяет частично автоматизировать этот процесс.
3.2. Подсистема приобретения знаний.
Подсистема приобретения знаний предназначена для добавления в базу знаний новых правил и модификации имеющихся. В ее задачу входит приведение правила к виду, позволяющему подсистеме вывода применять это правило в процессе работы. В более сложных системах предусмотрены еще и средства для проверки вводимых или модифицируемых правил на непротиворечивость с имеющимися правилами.
3.3.
База знаний.
База знаний- наиболее важная компонента экспертной системы, на которой основаны ее «интеллектуальные способности». В отличие от всех остальных компонент ЭС, база знаний- «переменная » часть системы, которая может пополняться и модифицироваться инженерами знаний и опыта использование ЭС, между консультациями (а в некоторых системах и в процессе консультации). Существует несколько способов представления знаний в ЭС, однако общим для всех них является то, что знания представлены в символьной форме (элементарными компонентами представления знаний являются тексты, списки и другие символьные структуры). Тем самым, в ЭС реализуется принцип символьной природы рассуждений, который заключается в том, что процесс рассуждения представляется как последовательность символьных преобразований.
Наиболее распространенный способ представления знаний - в виде конкретных фактов и правил, по которым из имеющихся фактов могут быть выведены новые. Факты представлены, например, в виде троек:
(АТРИБУТ ОБЪЕКТ ЗНАЧЕНИЕ).
Такой факт означает, что заданный объект имеет заданный атрибут (свойства) с заданным значением. Например, тройка (ТЕМПЕРАТУРА ПАЦИЕНТ1 37.5) представляет факт «температура больного, обозначаемого ПАЦИЕНТ1, равна 37.5». В более простых случаях факт выражается неконкретным значением атрибута, а каким либо простым утверждением, которое может быть истинным или ложным, например: «Небо покрыто тучами». В таких случаях факт можно обозначить каким-либо кратким именем (например, ТУЧИ) или использовать для представления факта сам текст соответствующей фразы.
Правила в базе знаний имеют вид:
ЕСЛИ А ТО S, где А- условие; S- действие. Действие S исполняется, если А истинно. Наиболее часто действие S, так же, как и условие, представляет собой утверждение, которое может быть выведено системой (то есть становится ей известной), если истинно условие правила А.
Правила в базе знаний служат для представления эвристических знаний (эвристик), т.е. неформальных правил рассуждения, вырабатываемых экспертом на основе опыта его деятельности.
Простой пример правила из повседневной жизни:
ЕСЛИ небо покрыто тучами
ТО скоро пойдет дождь.
В качестве условия A может выступать либо факт(как в данном примере), либо несколько фактов A1,...,AN, соединенные логической операцией и:
A1 и A2 и ... и AN.
В математической логике такое выражение называется конъюнкцией. Оно считается истинным в том случае, если истинны все его компоненты. Пример предыдущего правила с более сложным условием:
ЕСЛИ
небо покрыто тучами и барометр падает
ТО
скоро пойдет дождь. (Правило 1).
Действия, входящие в состав правил, могут содержать новые факты. При применении таких правил эти факты становятся известны системе, т.е. включаются в множество фактов, которое называется рабочим множеством. Например, если факты «Небо покрыто тучами» и «Барометр падает» уже имеются в рабочем множестве, то после применения приведенного выше правила в него также включается факт «Скоро пойдет дождь».
Если система не может вывести некоторый факт, истинность или ложность которого требуется установить, то система спрашивает о нем пользователя. Например:
ВЕРНО ЛИ, ЧТО небо покрыто тучами?
При получении положительного ответа от пользователя факт «Небо покрыто тучами» включается в рабочем множество.
Существуют динамические и статические базы знаний. Динамическая база знаний изменяется со временем. Ее содержимое зависит и от состояния окружающей. Новые факты, добавляемые в базу знаний, являются результатом вывода, который состоит в применении правил к имеющимся фактам.
В системах с монотонным выводом факты, хранимые в базе знаний, статичны, то есть не изменяются в процессе решения задачи. В системах с немонотонным выводом допускается изменение или удаление фактов из базы знаний. В качестве примера системы с немонотонным выводом можно привести ЭС, предназначенную для составления перспективного плана капиталовложения компании. В такой системе по вашему желанию могут быть изменены даже те данные, которые после вывода уже вызвали срабатывание каких-либо правил. Иными словами имеется возможность модифицировать значения атрибутов в составе фактов, находящихся в рабочей памяти. Изменение фактов в свою очередь приводит к необходимости удаления из базы знаний заключений, полученных с помощью упомянутых правил. Тем самым вывод выполняется повторно для того, чтобы пересмотреть те решения, которые были получены на основе подвергшихся изменению фактов.
3.4
. Подсистема вывода.
3.4.1
Подсистема вывода, способы логического вывода.
Подсистема вывода - программная компонента экспертных систем, реализующая процесс ее рассуждений на основе базы знаний и рабочего множества. Она выполняет две функции: во-первых, просмотр существующих фактов из рабочего множества и правил из базы знаний и добавление (по мере возможности) в рабочее множество новых фактов и, во-вторых, определение порядка просмотра и применения правил. Эта подсистема управляет процессом консультации, сохраняет для пользователя информацию о полученных заключениях, и запрашивает у него информацию, когда для срабатывания очередного правила в рабочем множестве оказывается недостаточно данных.
Цель ЭС - вывести некоторый заданный факт, который называется целевым утверждением (то есть в результате применения правил добиться того, чтобы этот факт был включен в рабочее множество), либо опровергнуть этот факт (то есть убедиться, что его вывести невозможно, следовательно, при данном уровне знаний системы он является ложным). Целевое утверждение может быть либо «заложено» заранее в базу знаний системы, либо извлекается системой из диалога с пользователем.
Работа системы представляет собой последовательность шагов, на каждом из которых из базы выбирается некоторое правило, которое применяется к текущему содержимому рабочего множества. Цикл заканчивается, когда выведено либо опровергнуто целевое утверждение. Цикл работы экспертной системы иначе называется логическим выводом, Логический вывод может происходить многими способами, из которых наиболее распространенные - прямой порядок вывода и обратный порядок вывода.
Прямой порядок вывода - от фактов, которые находятся в рабочем множестве, к заключению. Если такое заключение удается найти, то оно заносится в рабочее множество. Прямой вывод часто называют выводом, управляемым данными.
Для иллюстрации добавим к нашему примеру базы знаний о погоде еще одно правило:
ЕСЛИ скоро пойдет дождь
ТО нужно взять с собой зонтик. (правило 2)
Предположим также, что факты «Небо покрыто тучами» и «Барометр падает» имеются в рабочем множестве, а целью системы является ответ на вопрос пользователя:
«Нужно взять с собой зонтик?»
При прямом выводе работа системы будет протекать следующим образом:
Шаг 1. Рассматривается правило 1. Его условие истинно, так как оба элемента конъюнкции имеются в рабочем множестве. Применяем правило 1; добавляем к рабочему множеству факт ”Скоро пойдет дождь”.
Шаг 2. Рассматривается правило 2. Его условие истинно, т.к. утверждение из условия имеется в рабочем множестве. Примеряем, правило 2; добавляем к рабочему множеству факт “Нужно взять с собой зонтик”. Целевое утверждение выведено.
Обратный порядок вывода: заключения просматриваются до тех пор, пока не будет обнаружены в рабочей памяти или получены от пользователя факты, подтверждающие одно из них. В системах с обратным выводом вначале выдвигается некоторая гипотеза, а затем механизм вывода в процессе работы, как бы возвращается назад, переходя от нее к фактам, и пытается найти среди них те, которые подтверждают эту гипотезу. Если она оказалась правильной, то выбирается следующая гипотеза, детализирующая первую являющаяся по отношению к ней подцелью. Далее отыскиваются факты, подтверждающие истинность подчиненной гипотезы. Вывод такого типа называется управляемым целями. Обратный поиск применяется в тех случаях, когда цели известны и их сравнительно немного.
В рассматриваемом примере вывод целевого утверждения “Нужно взять с собой зонтик” обратной цепочкой рассуждений выполняется следующим образом:
Шаг 1. Рассматривается правило 1. Оно не содержит цели в правой части. Переходим к правилу 2.
Шаг 2. Рассматривается правило 2. Оно содержит цель в правой части правила. Переходим к правой части правила и рассматриваем в качестве текущей цели утверждения “Скоро пойдет дождь”.
Шаг 3. Текущей цели нет в рабочем множестве. Рассмотрим правило 1, которое содержит цель в правой части. Обе компоненты его условия имеются в рабочем множестве, так что условие истинно. Применяем, привило 1; в результате выводим утверждение “Скоро пойдет дождь”; которое было нашей предыдущей целью.
Шаг 4. Применяем правило 2, условием которого является данное утверждение. Получаем вывод исходного утверждения.
Заметим, что для упрощения ситуации мы предположили, что в обоих случаях факты “Небо покрыто тучами” и “Барометр падает” уже известны системе. На самом деле система выясняет истинность или ложность факта, входящего в условие некоторого правила, спрашивая об этом пользователя в тот момент, когда она пытается применить правило.
Приведенный пример сознательно выбран очень простым и не отражающим многих проблем, связанных с организацией вывода в экспертной системе. В частности, из примера может создаться впечатление, что прямая цепочка рассуждений эффективнее, чем обратная, что на самом деле, вообще говоря, не так. Эффективность той или иной стратегии вывода зависит от характера задачи и содержимого базы знаний. В системах диагностики чаще применяется прямой вывод, в то время как в планирующих системах более эффективным оказывается обратный вывод. В некоторых системах вывод основывается на сочетании обратного и ограниченно- прямого. Такой комбинированный метод получил название циклического.
Стратегия вывода.
Поиск в глубину
Обратный вывод Прямой вывод
4 Начало 1
3 поиска 2
5 2 Начало 3
7 6 1 поиска 4
Заключения
Заключения
Поиск в ширину
Начало
8 Начало поиска 1
поиска 12
7 2 13
1 11
6 3
2 10
5 4
3 9
4 5
8
6 Заключения
7
Выше уже отмечалось, что механизм вывода включает в себя два компонента- один из них реализует собственно вывод, другой управляет этим процессом. Компонент вывода выполняет первую задачу, рассматривая имеющиеся правила и факты из рабочего множества и добавляя в него новые факты при срабатывании какого-нибудь правила. Управляющий компонент определяет порядок применения правил. Рассмотрим каждый из этих компонентов более подробно.
2.4.2.
Компонент вывода.
Его действия основаны на применении правила вывода, обычно называемого модус поненс, суть которого состоит в следующем: пусть известно, что истинно утверждение А и существует правило вида «Если А, то В», тогда утверждение В так же истинно. Правила срабатывают, когда находятся факты, удовлетворяющие их левой части: если истинна посылка, то должно быть истинно и заключение.
Хотя в принципе на первый взгляд, кажется, что такой вывод легко может быть реализован на компьютере, тем не менее, на практике человеческий мозг все равно оказывается более эффективным при решении задач. Рассмотрим, например, простое предложение:
Мэри искала ключ.
Здесь для слова «ключ» допустимы как минимум два значения «родник» и «ключ от квартиры». В следующих же двух предложениях одно и то же слово имеет совершенно разные значения:
Мы заблудились в чаще.
Нужно чаще ходить в театр.
Понять факты становиться еще сложнее, если они являются составными частями продукций, которые используют правило модус поненс для вывода заключения. Приведем такой пример:
ЕСЛИ Белый автомобиль легко заметить ночью
И Автомобиль Джека белый
ТО Автомобиль Джека легко заметить ночью
Это заключение легко выведет даже ребенок, но оно оказывается не под силу ни одной из современных ЭС.
Компонент вывода должен обладать способностью функционировать при любых условиях. Механизм вывода должен быть способен продолжить рассуждение и со временем найти решение даже при недостатке информации. Это решение может и не быть точным, однако система ни в коем случае не должна останавливаться из-за того, что отсутствует какая-либо часть входной информации.
3.4.3.
Управляющий компонент
.
Этот компонент определяет порядок применения правил, а также устанавливает, имеются ли еще факты, которые могут быть изменены в случае продолжения консультации. Управляющий компонент выполняет четыре функции:
1. Сопоставление- образец правила сопоставляется с имеющимися фактами;
2. Выбор- если в конкретной ситуации могут быть применены сразу несколько правил, то из них выбирается одно, наиболее подходящее к заданному критерию (разрешение конфликта).
3. Срабатывание - если образец правила при сопоставлении, совпал с какими- либо фактами из рабочего множества, то правило срабатывает.
4. Действие - рабочее множество подвергается изменению путем добавления в него заключения сработавшего правила. Если в правой части правила содержится указание, на какое- либо действие, то оно выполняется (как, например, в системах обеспечения безопасности информации).
Интерпретатор правил работает циклически. В каждом цикле он просматривает все правила, чтобы выявить среди них те посылки, которые совпадают с известными на данный момент фактами из рабочего множества. Интерпретатор определяет также порядок применения правил. После выбора правило срабатывает, его заключение заносится в рабочее множество, и затем цикл повторяется сначала.
В одном цикле может сработать только одно правило. Если несколько правил успешно сопоставлены с фактами, то интерпретатор производит выбор по определенному критерию единственного правила, которое и срабатывает в данном цикле. Цикл работы интерпретатора схематически представлен
|
|
|
сопоставление конфликтное критерий
множество выбора правил
|
разрешение
|
|
рабочее база
множество правил
|
|
правило
Информация из рабочего множества последовательно сопоставляется с посылками правил для выявления успешного сопоставления. Совокупность отобранных правил составляет так называемое конфликтное множество. Для разрешения конфликта интерпретатор имеет критерий, с помощью которого он выбирает единственное правило, после чего оно срабатывает. Это выражается в занесении фактов, образующих заключение правила, в рабочее множество или в изменении критерия выбора конфликтующих правил. Если же в заключение правила входит название какого-нибудь действия, то оно выполняется (например, подается звуковой сигнал, начинает выполняться процедура и т.д.).
Новые данные, введенные в систему сработавшим правилом, в свою очередь могут изменить критерий выбора правила. В том случае, если, например, компьютерная система, предназначенная для игры в шахматы, разыгрывает партию за двух игроков, то она может принять решение придерживаться атакующей стратегии через ход, т.е. атаковать будет один из партнеров. Если вы сами играете с этой системой, то в какой- то момент она может перейти к использованию оборонительной стратегии (по крайней мере, временно), а затем опять вернуться к наступательной игре. Изменение
критерия основывается на заключениях, полученных после анализа положения на доске, которое представлено в рабочем множестве системы, а также правил игры (статических структурных знаний) и структурных динамических знаниях (эвристиках).
В действительности ЭС не располагают процедурами, которые могли бы построить в пространстве состояний сразу весь путь решения задачи. Более того, зачастую даже не удается определить, имеется ли вообще какое- нибудь решение задачи. Тем ни менее поиск решения выполняется, поскольку движением в пространстве состояний управляют скрытые или виртуальные процедуры. Они получили название демонов, поскольку во время работы системы находятся в “засаде” и активизируются только тогда, когда их просят о помощи, т.е. на самом деле ведут себя как добрые демоны.
Свое название демоны получили от “демона Максвелла”- действующего лица одного из мысленных экспериментов, предложенного его автором для критики законов термодинамики. Другим их прообразом является Пандемониум Оливера Селфриджа- первой модели человека, в котором деятельность биологической системы представлялась как работа вызываемых по образцу демонов. Если же воспользоваться научной терминологией, то такие управляющие процедуры получили название недетерминированных. Это означает, что траектория поиска решения в пространстве состояний полностью определяется данными.
При разработке управляющего компонента механизма (подсистемы) вывода необходимо решить вопрос о том, по какому критерию следует выбирать правило, которое будет применено в конкретном цикле.
Уже на ранней стадии разработки ЭС необходимо знать, что будет вводить конечный пользователь. Это нужно для того, чтобы убедиться, будет ли система достаточно практична и сможет ли она вжиться в среду, в которой ей предстоит работать.
Участие пользователя выражается в следующем:
- конкретные задачи. Пользователь, сталкиваясь с конкретными проблемами, может объяснить возникновение проблем и предложить возможные варианты их решения;
- общение. Интерфейс пользователя должен соответствовать словарю пользователя и уровню его подготовки;
- установление связей. Знакомство пользователя с причинами и последствиями, вызывающими то или иное действие в процессе функционирования системы, неоценимо в определении взаимосвязей фактов в базе знаний;
- обратная связь. Отличительной особенностью удобной в использовании ЭС является ее способность объяснить конечному пользователю ход своих рассуждений.
3.5
. Диалог с ЭС. Объяснение.
Поскольку системы, основанные на знаниях, реализуются на компьютерах, то и входная информация воспринимается или в виде, понятном компьютеру, т.е. в битах и байтах. Однако для того чтобы мог взаимодействовать неподготовленный пользователь, в нее требуется включить средства общения на естественном языке. Подавляющее большинство систем, основанных на знаниях, обладают достаточно примитивным интерфейсом на естественном языке- допустимые входные сообщения пользователя ограничены набором понятий, содержащихся в базе знаний.
Итак, на примере простой ЭС и базы знаний диалог пользователя с системой можно представить себе следующим образом:
Система: Вы хотите узнать, нужно ли взять с собой зонтик?
Пользователь: Да.
Система: Верно ли, что небо покрыто тучами?
Пользователь: Да.
Система: Верно ли, что барометр падает?
Пользователь: Да.
Система: (после некоторого “размышления”) Нужно взять с собой зонтик.
Как видно из этого примера, в ходе консультации инициатива диалога принадлежит системе, а сама консультация у ЭС выглядит так же, как и консультация у эксперта- человека: задается ряд вопросов и на основании их анализа выдается экспертное заключение. Однако в отличие от беседы со специалистом, диалог с ЭС имеет свои психологические особенности: большинство пользователей (по вполне понятным причинам, таким, как отсутствие опыта работы на компьютерах, лаконичность диалога с ЭС, отсутствие пояснений в ходе консультации и другим) склонны меньше доверять “мнению” ЭС, чем мнению “живого” эксперта.
Чтобы удостовериться в “разумности” и “компетентности” ЭС, пользователь может обратиться к ее подсистеме объяснения.
Для того, чтобы понять как она работает, нам необходимо рассмотреть вопрос о том в какой форме ЭС хранить информацию о процессе своих рассуждений.
В ЭС принято представлять процесс логического вывода в виде схемы, которая называется деревом вывода. В нашем примере дерево вывода будет иметь вид:
|
Нужно взять с собой зонтик.
правило 2
Скоро пойдет дождь.
правило 1
Небо покрыто тучами. Барометр падает.
Здесь в простых рамках приведены узлы дерево вывода, соответствующие фактам, в двойных- узлы, соответствующие названием правил. Сверху от узла- правила изображен факт, находящийся в его правой части (в принятой терминологии- предок узла- правила). Листья дерева (узлы, образующие его нижний “ярус”), соответствуют фактам, истинностные значения которых запрашиваются у пользователя, или первоначально известным фактам из базы знаний, корень дерева (самый верхний узел)- целевому утверждению.
В процессе консультации ЭС строит дерево вывода и хранит его в памяти в некоторой внутренней форме. Успешному применению правила соответствует добавление узла с его именем, потомками которого являются узлы, соответствующие некоторым из уже выведенных фактов, а предком- новый узел, соответствующий факту, содержащемуся в правой части правила.
Рассмотрим теперь работу подсистемы объяснения. Для получения объяснения в процессе консультации пользователь может “перехватить инициативу” диалога в тот момент, когда система задает очередной вопрос, “переспросив” в ответ систему, почему она его задала. Таким образом, вместо ответа на вопрос системы, пользователь может задать ей встречный вопрос:
ПОЧЕМУ?
(“ Почему система задала такой вопрос?”). Система интерпретирует вопрос “Почему?” в “понятных” ей терминах дерева вывода, поднимаясь по нему на один ярус выше и находя правило, для применения которого система задает этот вопрос. Пользователю выдается информация об этом правиле, о состоянии вычисления его условиям о заключении данного правила (текущей цели).
Пусть в нашем примере диалога с ЭС пользователь вместо ответа на вопрос системы: “Верно ли, что барометр падает?” задает ей встречный вопрос: ”ПОЧЕМУ?”. ЭС обращается к подсистеме объяснения, которая выдает пользователю следующее сообщение:
[1.0] Эта информация необходима, чтобы установить, что скоро пойдет дождь.
Ранее было установлено, что :
[1.1] Небо покрыто тучами.
Следовательно, если:
[1.2] Барометр падает, то скоро пойдет дождь.
(Правило 1).
Двойные номера в квадратных скобках имеют следующий смысл. Для облегчения работы пользователя подсистема объяснения нумерует свои ответы (номер ответа, в данном случае- 1. является первой цифрой номера), а в каждом ответе- нумерует также утверждения, о которых в нем идет речь. Пользователь может использовать двойные номера для ссылок на утверждения, не выписывая их явно. Например, номер 1.1 обозначает утверждение “Небо покрыто тучами”.
Допустим, что пользователь хочет еще дальше проследить логику рассуждений системы и узнать, почему ей необходимо установить, скоро ли пойдет дождь. Для этого он может повторно задать ей вопрос:
ПОЧЕМУ?
(“Почему необходимо установить, что скоро пойдет дождь?”). Второй ответ системы аналогичен первому; в нем указывается, что это необходимо для применения правила 2 с целью установить, что нужно взять с собой зонтик:
[2.0] Эта информация необходима, чтобы установить, что нужно взять с собой зонтик. Если:
[2.1] Скоро пойдет дождь, то нужно взять с собой зонтик.
(Правило 2).
Утверждение [2.0] является исходным целевым утверждением системы. Таким образом, теперь ход рассуждений системы пользователю полностью понятен. Вопрос “ПОЧЕМУ?” позволяет проследить ход рассуждений системы от посылок к заключениям. Однако для более детального осмысления процесса вывода удобно было бы иметь возможность изучать его и в противоположном порядке- от заключений к посылкам. Для этого служит другой вопрос, который также “понимает” подсистема объяснений:
КАК N?
где N- номер утверждения, выданный подсистемой объяснения на одном из предыдущих шагов диалога. Например, в ответ на вопрос:
КАК 2.0?
“Как получен утверждение 2.0?” подсистема объяснения выдает информацию в правиле, которое было применено для его получения:
[3.1] Используется правило 2, заключением которого является, что нужно взять с собой зонтик.
Чтобы получить более подробную информацию о том, как было использовано правило 2, следует повторно задать вопрос “КАК?”:
КАК 3.1?
“Как было использовано правило 2?”. Ответ системы:
Ранее установлено, что:
[4.1] Скоро пойдет дождь.
Следовательно, нужно взять с собой зонтик.
Выясним теперь, как получено утверждение 4.1:
КАК 4.1?
Ответ системы:
[5.1] Используется правило 1, заключением которого является, что скоро пойдет дождь. Наконец, выясним. как использовано правило 1:
КАК 5.1?
Ответ системы:
Ранее установлено, что:
[6.1] Небо покрыто тучами.
[6.2] Барометр падает.
Следовательно скоро пойдет дождь.
Как были получены утверждения 6.1 и 6.2 пользователь помнит, поскольку он отвечал на вопросы системы относительно этих утверждений. Если все же он задаст системе вопрос КАК 6.1? или КАК 6.2?, то система напомнит ему об этом.
Описанная модель объяснения используется в системе MYCIN. Достоинством ее является возможность получения объяснения любого шага работы системы, недостатком- жесткая привязка к дереву вывода. Для пользователя- непрограммиста такой способ объяснения может показаться излишне детализованным и слишком формальным, а нужно было бы объяснение на “более высоком уровне”- с точки зрения здравого смысла и без углубления в детали. Подобные модели объяснения только начинают появляться в ЭС и требуют более сложной организации знаний.
ГЛАВА 4. ЗАДАЧА.
4.1. Постановка задачи.
Составить блок-схему и написать программу на языке Pascal.
4.
2
. Контрольный пример.
Определить резервы увеличения валового сбора N видов продукции растениеводства (озимая пшеница, кукуруза, рис, свекла и т. д.) в анализируемом хозяйстве путем:
1 – повышение урожайности с 1га ( за счет применения семян лучших сортов, рационального использования удобрений, проведения посевных в оптимальные сроки). Определить общую прибавку урожая.
2 – увеличение валового сбора культур ( за счет рационального использования земельных угодий).
Определить общее увеличение валовых сборов в результате использования всех резервов:
А) в натуре, ц
В) в денежном выражении, в тыс. руб.
4.3. Блок-схема алгоритма решения задачи.
4.4. Текст программы на языке
Pascal
.
Program Rezerv;
Var
P, S, y, x, z, k,
D: Char;
Centner, Money: Real;
Begin
S:=200; {площадь урожая в га}
P:=100; {урожайность в ц на 1га}
y:=P+10;
x:=P+30;
z:=P+20;
Po:=P+10+30+20;
WriteLn('выберете резеpв ');
ReadLn(D);
Case D of
'1':
WriteLn('повышение урожайности с 1го га на 10 ц за счет применения семян лучших сортов ', y);
'2':
WriteLn('повышение урожайности с 1го га на 30 ц за счет рационального использования удобрений ', x);
'3':
WriteLn('повышение урожайности с 1го га на 20 ц за счет проведения посевных в оптимальные сроки ', z);
'=':
WriteLn('общая прибавка урожая ',Po);
Else WriteLn(‘нет такого резерва ’);
end;
Pv:=S*P;
k:=0;
While k<90 do
k:=k+10;
Pv:=Pv+k;
WriteLn('увеличение валого сбора культур за счет использования земельных угодий ', Pv);
Pov:=
While k<90 do
k:=K+10;
Pov:=Pov+k;
WriteLn('общее увеличение валовых сборов в результате использования всех резервов ', Pov);
begin
Write('Введите величину в ц ');
ReadLn(Centner);
Money:=Centner*5.100;
Write(Money:4:6,'денежное выражение, в тыс. руб. ');
end;
End.
4.5. Результат выполнения программы на контрольном примере.
Выберете резерв
=
Общая прибавка урожая 160
Увеличение валового сбора культур за счет использования земельных угодий 20090
Общее увеличение валовых сборов в результате использования всех резервов 32090
163659.000000 денежное выражение в, тыс.
ЗАКЛЮЧЕНИЕ.
В результате выполнения данного курсового проекта, посвященного проблемам построения экспертных систем, были получены следующие выводы.
Экспертные системы обладают следующими основными характеристиками:
экспертная система ограничена определенной сферой экспертизы;
она способна рассуждать при сомнительных данных;
она способна объяснить цепочку рассуждений понятным способом;
она строится так, чтобы имелась возможность постепенного наращивания системы;
чаще всего она основана на использовании правил;
на выходе она выдает совет - не таблицы из цифр, не красивые картинки на экране, а четкий совет;
экспертная система обладает способностью самообучаться.
Написание экспертных систем требует сравнительно больших трудозатрат и материальных ресурсов. Чтобы избежать дорогостоящих и безуспешных попыток необходимо определить, является ли проблема подходящей для решения с помощью экспертной системы:
• Потребность в решении должна соответствовать затратам на ее разработку. Суммы затрат и полученная выгода должны быть реалистическими.
• Невозможно использовать знания человека - эксперта там, где это необходимо. Если экспертные знания широко распространены, то маловероятно, что стоит разрабатывать экспертную систему. Однако, в таких областях, как разведка нефти и медицина, могут быть редкие специализированные знания, которыми можно недорого снабдить экспертную систему, и не использовать очень высоко оплачиваемого эксперта.
• Проблема может быть решена с использованием символических методов рассуждения.
• Проблема хорошо структурирована и не требует применения знаний, основанных на здравом смысле. Знания, основанные на здравом смысле, хорошо известны, поэтому их незачем фиксировать и представлять.
• Проблема не может быть легко решена с использованием более традиционных вычислительных методов. Если имеется хорошее алгоритмическое решение проблемы, не следует использовать экспертную систему.
• Существуют ли эксперты в данной проблемной области. Поскольку экспертная система проектируется для успешной работы, весьма существенно, чтобы эксперты желали помогать при ее проектировании. Кроме того, необходима поддержка администрации и потенциальных пользователей.
• Проблема имеет подходящий размер и область применения. Как правило, проблема требует применения знаний высоко специализированных экспертов, но человек-эксперт должен тратить на ее решение короткое время, (максимум час).
Должно быть ясно, что только малый диапазон проблем соответствует технологии экспертных системы. Однако при использовании для подходящих проблем, экспертные системы могут приносить огромные прибыли. Например, были разработаны экспертные системы, помогающие анализировать данные, полученные при разведке нефти, и для помощи в конфигурировании компьютерных систем. Обе эти системы активно используются, экономя большое количество средств.
Экспертная система, пусть даже с элементами искусственного интеллекта, останется лишь инструментом грамотного пользователя: инженера, изобретателя, учёного, способным многократно повысить эффективность их работы.
Перспективы использования WWW-технологии, автоматизированного проектирования информационно-управляющих систем, системного моделирования предметной области, инжиниринга информационных и обучающих процессов в представляются в виде широчайшего и перспективного поля деятельности.
Обращение к этим технологиям неизбежно, поскольку они призваны привести в соответствие уровень подготовки современного инженера и требований нарастающего прогресса наукоёмких технологий различных отраслях промышленности.
Реализация подобных проектов представляется возможной даже в сложных условиях современной российской экономики.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ:
1. И. Братко. Программирование на языке Пролог для искусственного интеллекта.- М.: Мир, 1990.
2. Г. Долин. Что такое ЭС.- Компьютер Пресс, 1992/2.
3. Д. Р. Малпасс. Реляционный язык Пролог и его применение.
4. Д. Н. Марселлус. Программирование экспертных систем на Турбо Прологе.- М.: Финансы и статистика, 1994.
5. К. Нейлор. Как построить свою экспертную систему.- М.: Энергоатомиздат, 1991.
6. Н. Д. Нильсон. Искусственный интеллект. Методы поиска решений.- М.: Мир, 1973.
7. В. О. Сафонов. Экспертные системы - интеллектуальные помощники специалистов.- С.-Пб: Санкт-Петербургская организация общества “Знания” России, 1992.
8. К. Таунсенд, Д. Фохт. Проектирование и программная реализация экспертных систем на персональных ЭВМ.- М.: Финансы и статистика, 1990.
9. В. Н. Убейко. Экспертные системы.- М.: МАИ, 1992.
10. Д. Уотермен. Руководство по экспертным системам.- М.: Мир, 1980.
11. Д. Элти, М. Кумбс. Экспертные системы: концепции и примеры.- М.: Финансы и статистика, 1987.