Скачать .docx |
Реферат: Экспертные системы 9
СОДЕРЖАНИЕ
1 ОПРЕДЕЛЕНИЕ ЭКСПЕРТНЫХ СИСТЕМ.. 4
1.1 История развития экспертных систем.4
1.2 Назначение экспертных систем.4
1.3 Структура экспертной системы.. 4
2 ФУНКЦИИ, ВЫПОЛНЯЕМЫЕ ЭКСПЕРТНОЙ СИСТЕМОЙ.. 4
2.1Области применения экспертных систем. 4
2.2 Отличие экспертных систем от других программных продуктов. 4
2.4 Критерий использования ЭС для решения задач.4
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ.. 4
Экспертные системы (ЭС)- это набор программ, выполняющий функции эксперта при решении задач из некоторой предметной области. Они возникли как значительный практический результат в применении и развитии методов искусственного интеллекта (ИИ)- совокупности научных дисциплин, изучающих методы решения задач интеллектуального (творческого) характера с использованием ЭВМ. ЭС выдают советы, проводят анализ, дают консультации, ставят диагноз. Практическое применение ЭС на предприятиях способствует эффективности работы и повышению квалификации специалистов.
Область ИИ имеет более чем сорокалетнюю историю развития. С самого начала в ней рассматривался ряд весьма сложных задач, которые, наряду с другими, и до сих пор являются предметом исследований: автоматические доказательства теорем, машинный перевод (автоматический перевод с одного естественного языка на другой), распознавание изображений и анализ сцен, планирование действий роботов, алгоритмы и стратегии игр.
ЭС выдают советы, проводят анализ, дают консультации, ставят диагноз. Практическое применение ЭС на предприятиях способствует эффективности работы и повышению квалификации специалистов.
Главным достоинством экспертных систем является возможность накопления знаний – формализованной информации, на которую ссылаются или используют в процессе логического вывода, и сохранение их длительное время. В отличие от человека к любой информации экспертные системы подходят объективно, что улучшает качество проводимой экспертизы. При решении задач, требующих обработки большого объема знаний, возможность возникновения ошибки при переборе очень мала.
Экспертная система состоит из базы знаний (части системы, в которой содержатся факты), подсистемы вывода (множества правил, по которым осуществляется решение задачи), подсистемы объяснения, подсистемы приобретения знаний и диалогового процессора.
При построении подсистем вывода используют методы решения задач искусственного интеллекта.
Экспертные системы (ЭС) возникли как значительный практический результат в применении и развитии методов искусственного интеллекта (ИИ)- совокупности научных дисциплин, изучающих методы решения задач интеллектуального (творческого) характера с использованием ЭВМ.
Область ИИ имеет более чем сорокалетнюю историю развития. С самого начала в ней рассматривался ряд весьма сложных задач, которые, наряду с другими, и до сих пор являются предметом исследований: автоматические доказательства теорем, машинный перевод (автоматический перевод с одного естественного языка на другой), распознавание изображений и анализ сцен, планирование действий роботов, алгоритмы и стратегии игр.
ЭС- это набор программ, выполняющий функции эксперта при решении задач из некоторой предметной области. ЭС выдают советы, проводят анализ, дают консультации, ставят диагноз. Практическое применение ЭС на предприятиях способствует эффективности работы и повышению квалификации специалистов.
Главным достоинством экспертных систем является возможность накопления знаний и сохранение их длительное время. В отличии от человека к любой информации экспертные системы подходят объективно, что улучшает качество проводимой экспертизы. При решении задач, требующих обработки большого объема знаний, возможность возникновения ошибки при переборе очень мала.
При создании ЭС возникает ряд затруднений. Это прежде всего связано стем, что заказчик не всегда может точно сформулировать свои требования к разрабатываемой системе. Также возможно возникникновение трудностей чисто психологического порядка: при создании базы знаний системы эксперт может препятствовать передаче своих знаний, опасаясь, что впоследствии его заменят “машиной”. Но эти страхи не обоснованы, т. к. ЭС не способны обучаться, они не обладают здравым смыслом, интуицией. Но в настоящее время ведутся разработки экспертных систем, реализующих идею самообучения. Также ЭС неприменимы в больших предметных областях и в тех областях, где отсутствуют эксперты.
Экспертная система состоит из базы знаний (части системы, в которой содержатся факты), подсистемы вывода (множества правил, по которым осуществляется решение задачи), подсистемы объяснения, подсистемы приобретения знаний и диалогового процессора .
При построении подсистем вывода используют методы решения задач искусственного интеллекта.
1 ОПРЕДЕЛЕНИЕ ЭКСПЕРТНЫХ СИСТЕМ
1.1 История развития экспертных систем.
1. Основные линии развития ЭС.
2. Проблемы, возникающие при создании экспертных систем. Перспективы развития.
Наиболее известные ЭС, разработанные в 60-70-х годах, стали в своих областях уже классическими. По происхождению, предметным областям и по преемственности применяемых идей, методов и инструментальных программных средств их можно разделить на несколько семейств.
1. META-DENDRAL.Система DENDRAL позволяет определить наиболее вероятную структуру химического соединения по экспериментальным данным (масс- спектрографии, данным ядерном магнитного резонанса и др.).M-D автоматизирует процесс приобретения знаний для DENDRAL. Она генерирует правила построения фрагментов химических структур.
2. MYCIN-EMYCIN-TEIREIAS-PUFF-NEOMYCIN. Это семейство медицинских ЭС и сервисных программных средств для их построения.
3. PROSPECTOR-KAS. PROSPECTOR- предназначена для поиска (предсказания) месторождений на основе геологических анализов. KAS- система приобретения знаний для PROSPECTOR.
4. CASNET-EXPERT. Система CASNET- медицинская ЭС для диагностики выдачи рекомендаций по лечению глазных заболеваний. На ее основе разработан язык инженерии знаний EXPERT, с помощью которой создан ряд других медицинских диагностических систем.
5. HEARSAY-HEARSAY-2-HEARSAY-3-AGE. Первые две системы этого ряда являются развитием интеллектуальной системы распознавания слитной человеческой речи, слова которой берутся из заданного словаря. Эти системы отличаются оригинальной структурой, основанной на использовании доски объявлений- глобальной базы данных, содержащей текущие результаты работы системы. В дальнейшем на основе этих систем были созданы инструментальные системы HEARSAY-3 и AGE (Attempt to Generalize- попытка общения) для построения ЭС.
6. Системы AM (Artifical Mathematician- искусственный математик) и EURISCO были разработаны в Станфордском университете доктором Д. Ленатом для исследовательских и учебных целей. Ленат считает, что эффективность любой ЭС определяется закладываемыми в нее знаниями. По его мнению, чтобы система была способна к обучению, в нее должно быть введено около миллиона сведений общего характера. Это примерно соответствует объему информации, каким располагает четырехлетний ребенок со средними способностями. Ленат также считает, что путь создания узкоспециализированных ЭС с уменьшенным объемом знаний ведет к тупику.
В систему AM первоначально было заложено около 100 правил вывода и более 200 эвристических алгоритмов обучения, позволяющих строить произвольные математические теории и представления. Сначала результаты работы системы были весьма многообещающими. Она могла сформулировать понятия натурального ряда и простых чисел. Кроме того, она синтезировала вариант гипотезы Гольдбаха о том, что каждое четное число, большее двух, можно представить в виде суммы двух простых чисел. До сих пор не удалось ни найти доказательства данной гипотезы, ни опровергнуть ее. Дальнейшее развитие системы замедлилось и было отмечено, что несмотря на проявленные на первых порах “математические способности”, система не может синтезировать новых эвристических правил, т.е. ее возможности определяются только теми эвристиками, что были в нее изначально заложены.
При разработке системы EURISCO была предпринята попытка преодолеть указанные недостатки системы AM. Как и в начале эксплуатации AM, первые результаты, полученные с помощью EURISCO, были эффективными. Сообщалось, что система EURISCO может успешно участвовать в очень сложных играх. С ее помощью в военно-стратегической игре, проводимой ВМФ США, была разработана стратегия, содержащая ряд оригинальных тактических ходов. Согласно одному из них, например предлагалось взрывать свои корабли, получившие повреждения. При этом корабли, оставшиеся неповрежденными, получает необходимое пространство для выполнения маневра.
Однако через некоторое время обнаружилось, что система не всегда корректно переопределяет первоначально заложенные в нее правила. Так, например, она стала нарушать строгое предписание обращаться к программистам с вопросами только в определенное время суток. Т.о., система EURISCO, так же как и ее предшественница, остановилась в своем развитии, достигнув предела, определенного в конечном счете ее разработчиком.
С 1990 года доктор Ленат во главе исследовательской группы занят кодированием и вводом нескольких сот тысяч элементов знаний, необходимых, по его мнению, для создания “интеллектуальной” системы. Этот проект назван Cyc (“Цик”, от английского слова enciklopaedia).
1.2 Назначение экспертных систем
Экспертные системы (ЭС)- это яркое и быстро прогрессирующее направление в области искусственного интеллекта(ИИ). Причиной повышенного интереса, который ЭС вызывают к себе на протяжении всего своего существования является возможность их применения к решению задач из самых различных областей человеческой деятельности. Пожалуй, не найдется такой проблемной области, в которой не было бы создано ни одной ЭС или по крайней мере, такие попытки не предпринимались бы.
ЭС- это набор программ или программное обеспечение, которое выполняет функции эксперта при решении какой-либо задачи в области его компетенции. ЭС, как и эксперт-человек, в процессе своей работы оперирует со знаниями. Знания о предметной области, необходимые для работы ЭС, определенным образом формализованы и представлены в памяти ЭВМ в виде базы знаний, которая может изменяться и дополняться в процессе развития системы.
ЭС выдают советы, проводят анализ, выполняют классификацию, дают консультации и ставят диагноз. Они ориентированы на решение задач, обычно требующих проведения экспертизы человеком-специалистом. В отличие от машинных программ, использующий процедурный анализ, ЭС решают задачи в узкой предметной области (конкретной области экспертизы)на основе дедуктивных рассуждений. Такие системы часто оказываются способными найти решение задач, которые неструктурированны и плохо определены. Они справляются с отсутствием структурированности путем привлечения эвристик, т. е. правил, взятых “с потолка”, что может быть полезным в тех системах, когда недостаток необходимых знаний или времени исключает возможность проведения полного анализа.
Главное достоинство ЭС- возможность накапливать знания, сохранять их длительное время, обновлять и тем самым обеспечивать относительную независимость конкретной организации от наличия в ней квалифицированных специалистов. Накопление знаний позволяет повышать квалификацию специалистов, работающих на предприятии, используя наилучшие, проверенные решения.
Практическое применение искусственного интеллекта на машиностроительных предприятиях и в экономике основано на ЭС, позволяющих повысить качество и сохранить время принятия решений, а также способствующих росту эффективности работы и повышению квалификации специалистов.
1.3 Структура экспертной системы
При разработке экспертной системы принято делить ее на три основных модуля:
- база знаний;
- машина логического вывода;
- интерфейс с пользователем.
База знаний содержит знания, относящиеся к конкретной прикладной области, в том числе отдельные факты, правила, описывающие отношения или явления, а также, возможно, методы, эвристики и различные идеи, относящиеся к решению задач в этой прикладной области.
Машина логического вывода умеет активно использовать информацию, содержащуюся в базе знаний.
Интерфейс с пользователем отвечает за бесперебойный обмен информацией между пользователем и системой; он также дает пользователю возможность наблюдать за процессом решения задач, протекающим в машине логического вывода.
Принято рассматривать машину вывода и интерфейс как один крупный модуль, обычно называемый оболочкой экспертной системы, или, для краткости, просто оболочкой.
В описанной выше структуре собственно знания отделены от алгоритмов, использующих эти знания. Такое разделение удобно по следующим соображениям. База знаний, очевидно, зависит от конкретного приложения. С другой стороны, оболочка, по крайней мере в принципе, независима от приложений. Таким образом, разумный способ разработки экспертной системы для нескольких приложений сводится к созданию универсальной оболочки, после чего для каждого приложения достаточно подключить к системе новую базу знаний. Разумеется, все эти базы знаний должны удовлетворять одному и тому же формализму, который оболочка "понимает". Практический опыт показывает, что для сложных экспертных систем сценарий с одной оболочкой и многими базами знаний работает, не так гладко, как бы этого хотелось, за исключением тех случаев, когда прикладные области очень близки. Тем не менее, даже если переход от одной прикладной области к другой требует модификации оболочки то, по крайней мере основные принципы ее построения обычно удается сохранить.
Для создания оболочки, при помощи которой можно проиллюстрировать основные идеи и методы в области экспертных систем, можно придерживаться следующего плана:
- выбрать формальный аппарат для представления знаний.
- разработать механизм логического вывода, соответствующий этому формализму.
- добавить средства взаимодействия с пользователем.
- обеспечить возможность работы в условиях неопределенности.
- структура экспертной системы представлена следующими структурными элементами:
1) База знаний – механизм представления знаний в конкретной предметной области и управления ими;
2) Механизм логических выводов – делает логические выводы на основании знаний, имеющихся в базе знаний;
3) Пользовательский интерфейс – используется для правильной передачи ответов пользователю;
4) Модуль приобретения знаний – служит для получения знаний от эксперта, поддержки базы знаний и дополнения ее при необходимости;
5) Модуль советов и объяснений – механизм, способный не только давать заключение, но и представлять различные комментарии, прилагаемые к этому заключению, и объяснять его мотивы. В противном случае пользователю будет трудно понять заключение. Такое понимание необходимо, если заключение используется для консультации или оказании помощи при решении каких-либо вопросов. Кроме того, с его помощью эксперт определяет, как работает система, и позволяет точно выяснить, как используются знания, предоставленные им.
Схема1
Структура экспертной системы
2 ФУНКЦИИ, ВЫПОЛНЯЕМЫЕ ЭКСПЕРТНОЙ СИСТЕМОЙ
2.1Области применения экспертных систем
Экспертная система - это программа, которая ведет себя подобно эксперту в некоторой, обычно узкой прикладной области. Типичные применения экспертных систем включают в себя такие задачи, как медицинская диагностика, локализация неисправностей в оборудовании и интерпретация результатов измерений. Экспертные системы должны решать задачи, требующие для своего решения экспертных знаний в некоторой конкретной области. В той или иной форме экспертные системы должны обладать этими знаниями. Поэтому их также называют системами, основанными на знаниях. Однако не всякую систему, основанную на знаниях, можно рассматривать как экспертную. Экспертная система должна также уметь каким-то образом объяснять свое поведение и свои решения пользователю, так же, как это делает эксперт-человек. Это особенно необходимо в областях, для которых характерна неопределенность, неточность информации (например, в медицинской диагностике). В этих случаях способность к объяснению нужна для того, чтобы повысить степень доверия пользователя к советам системы, а также для того, чтобы дать возможность пользователю обнаружить возможный дефект в рассуждениях системы. В связи с этим в экспертных системах следует предусматривать дружественное взаимодействие с пользователем, которое делает для пользователя процесс рассуждения системы "прозрачным".
Часто к экспертным системам предъявляют дополнительное требование - способность иметь дело с неопределенностью и неполнотой. Информация о поставленной задаче может быть неполной или ненадежной; отношения между объектами предметной области могут быть приближенными. Например, может не быть полной уверенности в наличии у пациента некоторого симптома или в том, что данные, полученные при измерении, верны; лекарство может стать причиной осложнения, хотя обычно этого не происходит. Во всех этих случаях необходимы рассуждения с использованием вероятностного подхода.
В самом общем случае для того, чтобы построить экспертную систему, мы должны разработать механизмы выполнения следующих функций системы:
- решение задач с использованием знаний о конкретной предметной области возможно, при этом возникнет необходимости иметь дело с неопределенностью;
- взаимодействие с пользователем, включая объяснение намерений и решений системы во время и после окончания процесса решения задачи.
Каждая из этих функций может оказаться очень сложной и зависит от прикладной области, а также от различных практических требований. В процессе разработки и реализации могут возникать разнообразные трудные проблемы.
Области применения систем, основанных на знаниях, могут быть сгруппированы в несколько основных классов: медицинская диагностика, контроль и управление, диагностика неисправностей в механических и электрических устройствах, обучение.
Медицинская диагностика. Диагностические системы используются для установления связи между нарушениями деятельности организма и их возможными причинами. Наиболее известна диагностическая система MYCIN, которая предназначена для диагностики и наблюдения за состоянием больного при менингите и бактериальных инфекциях. Ее первая версия была разработана в Стенфордском университете в середине 70-х годов. В настоящее время эта система ставит диагноз на уровне врача-специалиста. Она имеет расширенную базу знаний, благодаря чему может применяться и в других областях медицины.
Прогнозирование. Прогнозирующие системы предсказывают возможные результаты или события на основе данных о текущем состоянии объекта. Программная система “Завоевание Уолл-стрита” может проанализировать конъюнктуру рынка и с помощью статистических методов алгоритмов разработать для вас план капиталовложений на перспективу. Она не относится к числу систем, основанных на знаниях, поскольку использует процедуры и алгоритмы традиционного программирования. Хотя пока еще отсутствуют ЭС, которые способны за счет своей информации о конъюнктуре рынка помочь вам увеличить капитал, прогнозирующие системы уже сегодня могут предсказывать погоду, урожайность и поток пассажиров. Даже на персональном компьютере, установив простую систему, основанную на знаниях, вы можете получить местный прогноз погоды.
Планирование. Планирующие системы предназначены для достижения конкретных целей при решении задач с большим числом переменных. Дамасская фирма Informat впервые в торговой практике предоставляет в распоряжении покупателей 13 рабочих станций, установленных в холле своего офиса, на которых проводятся бесплатные 15-минутные консультации с целью помочь покупателям выбрать компьютер, в наибольшей степени отвечающий их потребностям и бюджету. Кроме того, компания Boeing применяет ЭС для проектирования космических станций, а также для выявления причин отказов самолетных двигателей и ремонта вертолетов. Экспертная система XCON, созданная фирмой DEC, служит для определения или изменения конфигурации компьютерных систем типа VAX и в соответствии с требованиями покупателя. Фирма DEC разрабатывает более мощную систему XSEL, включающую базу знаний системы XCON, с целью оказания помощи покупателям при выборе вычислительных систем с нужной конфигурацией. В отличие от XCON система XSEL является интерактивной.
Интерпретация. Интерпретирующие системы обладают способностью получать определенные заключения на основе результатов наблюдения. Система PROSPECTOR, одна из наиболее известных систем интерпретирующего типа, объединяет знания девяти экспертов. Используя сочетания девяти методов экспертизы, системе удалось обнаружить залежи руды стоимостью в миллион долларов, причем наличие этих залежей не предполагал ни один из девяти экспертов. Другая интерпретирующая система- HASP/SIAP. Она определяет местоположение и типы судов в тихом океане по данным акустических систем слежения.
Контроль и управление. Системы, основанные на знаниях, могут применятся в качестве интеллектуальных систем контроля и принимать решения, анализируя данные, поступающие от нескольких источников. Такие системы уже работают на атомных электростанциях, управляют воздушным движением и осуществляют медицинский контроль. Они могут быть также полезны при регулировании финансовой деятельности предприятия и оказывать помощь при выработке решений в критических ситуациях.
Диагностика неисправностей в механических и электрических устройствах. В этой сфере системы, основанные на знаниях, незаменимы как при ремонте механических и электрических машин (автомобилей, дизельных локомотивов и т.д.), так и при устранении неисправностей и ошибок в аппаратном и программном обеспечении компьютеров.
Обучение. Системы, основанные на знаниях, могут входить составной частью в компьютерные системы обучения. Система получает информацию о деятельности некоторого объекта (например, студента) и анализирует его поведение. База знаний изменяется в соответствии с поведением объекта. Примером этого обучения может служить компьютерная игра, сложность которой увеличивается по мере возрастания степени квалификации играющего. Одной из наиболее интересных обучающих ЭС является разработанная Д.Ленатом система EURISCO, которая использует простые эвристики. Эта система была опробована в игре Т.Тревевеллера, имитирующая боевые действия. Суть игры состоит в том, чтобы определить состав флотилии, способной нанести поражение в условиях неизменяемого множества правил. Система EURISCO включила в состав флотилии небольшие, способные провести быструю атаку корабли и одно очень маленькое скоростное судно и постоянно выигрывала в течение трех лет, несмотря на то, что в стремлении воспрепятствовать этому правила игры меняли каждый год.
Большинство ЭС включают знания, по содержанию которых их можно отнести одновременно к нескольким типам. Например, обучающая система может также обладать знаниями, позволяющими выполнять диагностику и планирование. Она определяет способности обучаемого по основным направлениям курса, а затем с учетом полученных данных составляет учебный план. Управляющая система может применяться для целей контроля, диагностики, прогнозирования и планирования. Система, обеспечивающая сохранность жилища, может следить за окружающей обстановкой, распознавать происходящие события (например, открылось окно), выдавать прогноз (вор-взломщик намеревается проникнуть в дом) и составлять план действий (вызвать полицию).
2.2 Отличие экспертных систем от других программных продуктов
Основными отличиями ЭС от других программных продуктов являются использование не только данных, но и знаний, а также специального механизма вывода решений и новых знаний на основе имеющихся. Знания в ЭС представляются в такой форме, которая может быть легко обработана на ЭВМ. В ЭС известен алгоритм обработки знаний, а не алгоритм решения задачи. Поэтому применение алгоритма обработки знаний может привести к получению такого результата при решении конкретной задачи, который не был предусмотрен. Более того, алгоритм обработки знаний заранее неизвестен и строится по ходу решения задачи на основании эвристических правил. Решение задачи в ЭС сопровождается понятными пользователю объяснениями, качество получаемых решений обычно не хуже, а иногда и лучше достигаемого специалистами. В системах, основанных на знаниях, правила (или эвристики), по которым решаются проблемы в конкретной предметной области, хранятся в базе знаний. Проблемы ставятся перед системой в виде совокупности фактов, описывающих некоторую ситуацию, и система с помощью базы знаний пытается вывести заключение из этих фактов.
Качество ЭС определяется размером и качеством базы знаний (правил или эвристик). Система функционирует в следующем циклическом режиме: выбор (запрос) данных или результатов анализов, наблюдения, интерпретация результатов, усвоение новой информации, выдвижении с помощью правил временных гипотез и затем выбор следующей порции данных или результатов анализов (рис.2). Такой процесс продолжается до тех пор, пока не поступит информация, достаточная для окончательного заключения.
В любой момент времени в системе существуют три типа знаний:
- Структурированные знания- статические знания о предметной области. После того как эти знания выявлены, они уже не изменяются.
- Структурированные динамические знания- изменяемые знания о предметной области. Они обновляются по мере выявления новой информации.
- Рабочие знания- знания, применяемые для решения конкретной задачи или проведения консультации.
Все перечисленные выше знания хранятся в базе знаний. Для ее построения требуется провести опрос специалистов, являющихся экспертами в конкретной предметной области, а затем систематизировать, организовать и снабдить эти знания указателями, чтобы впоследствии их можно было легко извлечь из базы знаний.
Экспертиза может проводиться только в одной конкретной области. Так, программа, предназначенная для определения конфигурации систем ЭВМ, не может ставить медицинские диагнозы.
База знаний и механизм вывода являются различными компонентами. Действительно, часто оказывается возможным сочетать механизм вывода с другими базами знаний для создания новых ЭС. Например, программа анализа инфекции в крови может быть применена в пульманологии путем замены базы знаний, используемой с тем же самым механизмом вывода.
Наиболее подходящая область применения- решение задач дедуктивным методом. Например, правила или эвристики выражаются в виде пар посылок и заключений типа “если-то”.
Эти системы могут объяснять ход решения задачи понятным пользователю способом. Обычно мы не принимаем ответ эксперта, если на вопрос “Почему ?” не можем получить логичный ответ. Точно так же мы должны иметь возможность спросить систему, основанную на знаниях, как было получено конкретное заключение.
Выходные результаты являются качественными (а не количественными).
Системы, основанные на знаниях, строятся по модульному принципу, что позволяет постепенно наращивать их базы знаний.
Компьютерные системы, которые могут лишь повторить логический вывод эксперта, принято относить к ЭС первого поколения. Однако специалисту, решающему интеллектуально сложную задачу, явно недостаточно возможностей системы, которая лишь имитирует деятельность человека. Ему нужно, чтобы ЭС выступала в роли полноценного помощника и советчика, способного проводить анализ нечисловых данных, выдвигать и отбрасывать гипотезы, оценивать достоверность фактов, самостоятельно пополнять свои знания, контролировать их непротиворечивость, делать заключения на основе прецедентов и, может быть, даже порождать решение новых, ранее не рассматривавшихся задач. Наличие таких возможностей является характерным для ЭС второго поколения, концепция которых начала разрабатываться 9-10 лет назад. Экспертные системы, относящиеся ко второму поколению, называют партнерскими, или усилителями интеллектуальных способностей человека. Их общими отличительными чертами является умение обучаться и развиваться, т.е. эволюционировать.
В экспертных системах первого поколения знания представлены следующим образом:
- знаниями системы являются только знания эксперта, опыт накопления знаний не предусматривается.
- методы представления знаний позволяли описывать лишь статические предметные области.
- модели представления знаний ориентированы на простые области.
Представление знаний в экспертных системах второго поколения следующее:
- используются не поверхностные знания, а более глубинные. Возможно дополнение предметной области.
- ЭС может решать задачи динамической базы данных предметной области.
Теория фреймов - это парадигма для представления знаний с целью использования этих знаний компьютером. Впервые была представлена Минским, как попытка построить фреймовую сеть, или парадигму с целью достижения большего эффекта понимания. С одной стороны Минский пытался сконструировать базу данных, содержащую энциклопедические знания, но с другой стороны, он хотел создать наиболее описывающую базу, содержащую информацию в структурированной и упорядоченной форме. Эта структура позволила бы компьютеру вводить информацию в более гибкой форме, имея доступ к тому разделу, который требуется в данный момент. Минский разработал такую схему, в которой информация содержится в специальных ячейках, называемых фреймами, объединенными в сеть, называемую системой фреймов. Новый фрейм активизируется с наступлением новой ситуации. Отличительной его чертой является то, что он одновременно содержит большой объем знаний и в то же время является достаточно гибким для того, чтобы быть использованным как отдельный элемент БД. Термин «фрейм» был наиболее популярен в середине семидесятых годов, когда существовало много его толкований, отличных от интерпретации Минского.
Итак, как было сказано выше фреймы – это фрагменты знания, предназначенные для представления стандартных ситуаций. Термин «фрейм» (Frame– рамка) был предложен Минским. Фреймы имеют вид структурированных компонентов ситуаций, называемых слотами. Слот может указывать на другой фрейм, устанавливая, таким образом, связь между двумя фреймами. Могут устанавливаться общие связи типа связи по общению. С каждым фреймом ассоциируется разнообразная информация ( в том числе и процедуры), например ожидаемые процедуры ситуации, способы получения информации о слотах, значение принимаемые по умолчанию, правила вывода.
Формальная структура фрейма имеет вид:
f[<N1, V1>, <N2, V2>, …, <Nk,Vk>],
где f – имя фрейма; пара <Ni, Vi> - i-ый слот, Ni– имя слота и Vi – его значение.
Значение слота может быть представлено последовательностью
<K1><Li>;...; <Kn><Ln>; <R1>; …; <Rm>,
где Ki– имена атрибутов, характерных для данного слота; Li – значение этих атрибутов, характерных для данного слота; Rj – различные ссылки на другие слоты.
Каждый фрейм, как структура хранит знания о предметной области (фрейм–прототип), а при заполнении слотов знаниями превращается в конкретный фрейм события или явления.
Фреймы можно разделить на две группы: фреймы-описания; ролевые фреймы.
Рассмотрим пример.
Фрейм описание: [<программное обеспечение>, <программа 1С бухгалтерия, версия 7.5>, <программа 1С торговля, версия 7.5>, <правовая программа «Консультант +» проф.>].
Ролевой фрейм: [<заявка на продажу>, <что, установка и покупка программы 1С торговля, версия 7.5>, <откуда, фирма ВМИ>, <куда, фирма «Лукойл»>, <кто, курьер Иванова>, <когда, 27 октября 1998г.>].
Во фрейме-описании в качестве имен слотов задан вид программного обеспечения, а значение слота характеризует массу и производителя конкретного вида продукции. В ролевом фрейме в качестве имен слотов выступают вопросительные слова, ответы на которые являются значениями слотов. Для данного примера представлены уже описания конкретных фреймов, которые могут называться либо фреймами – примерами, либо фреймами – экземплярами. Если в приведенном примере убрать значения слотов, оставив только имена, то получим так называемый фрейм – прототип.
Достоинство фрейма – представления во многом основываются на включении в него предположений и ожиданий. Это достигается за счет присвоения по умолчанию слотам фрейма стандартных ситуаций. В процессе поиска решений эти значения могут быть заменены более достоверными. Некоторые переменные выделены таким образом, что об их значениях система должна спросить пользователя. Часть переменных определяется посредством встроенных процедур, называемых внутренними. По мере присвоения переменным определенных значений осуществляется вызов других процедур. Этот тип представления комбинирует декларативные и процедурные знания.
Фреймовые модели обеспечивают требования структурированности и связанности. Это достигается за счет свойств наследования и вложенности, которыми обладают фреймы, т.е. в качестве слотов может выступать система имен слотов более низкого уровня, а также слоты могут быть использованы как вызовы каких-либо процедур для выполнения.
Для многих предметных областей фреймовые модели являются основным способом формализации знаний.
Чтобы лучше понять эту теорию, рассмотрим один из примеров Минского, основанный на связи между ожиданием, ощущением и чувством человека, когда он открывает дверь и входит в комнату. Предположим, что вы собираетесь открыть дверь и зайти в комнату незнакомого вам дома. Находясь в доме, перед тем как открыть дверь, у вас имеются определенные представления о том, что вы увидите, войдя в комнату. Например, если вы увидите какой-либо пейзаж или морской берег, поначалу вы с трудом узнаете их. Затем вы будете удивлены, и в конце концов дезориентированы, так как вы не сможете объяснить поступившую информацию и связать ее с теми представлениями, которые у вас имелись до того. Также у вас возникнут затруднения с тем, чтобы предсказать дальнейший ход событий. С аналитической точки зрения это можно объяснить как активизацию фрейма комнаты в момент открывания двери и его ведущую роль в интерпретации, поступающей информации. Если бы вы увидели за дверью кровать, то фрейм комнаты приобрел бы более узкую форму, и превратился бы во фрейм кровати. Другими словами, вы бы имели доступ к наиболее специфичному фрейму из всех доступных. Возможно, что вы используете информацию, содержащуюся в вашем фрейме комнаты для того чтобы распознать мебель, что называется процессом сверху вниз, или в контексте теории фреймов фреймодвижущим распознаванием . Если бы вы увидели пожарный гидрант, то ваши ощущения были бы аналогичны первому случаю. Психологи подметили, что распознавание объектов легче проходит в обычном контексте, чем в нестандартной обстановке. Из этого примера мы видим, что фрейм - это модель знаний, которая активизируется в определенной ситуации и служит для ее объяснения и предсказания. У Минского имелись достаточно расплывчатые идеи о самой структуре такой БД, которая могла бы выполнять подобные вещи. Он предложил систему, состоящую из связанных между собой фреймов, многие из которых состоят из одинаковых подкомпонентов, объединенных в сеть. Таким образом, в случае, когда кто-либо входит в дом, его ожидания контролируются операциями, входящими в сеть системы фреймов. В рассмотренном выше случае мы имеем дело с фреймовой системой для дома, и с подсистемами для двери и комнаты. Активизированные фреймы с дополнительной информацией в БД о том, что вы открываете дверь, будут служить переходом от активизированного фрейма двери к фрейму комнаты. При этом фреймы двери и комнаты будут иметь одинаковую подструктуру. Минский назвал это явление разделом терминалов и считал его важной частью теории фреймов.
Минский также ввел терминологию, которая могла бы использоваться при изучении этой теории (фреймы, слоты, терминалы и т.д.). Хотя примеры этой теории были разделены на языковые и перцептуальные, и Минский рассматривал их как имеющих общую природу, в языке имеется более широкая сфера ее применения. В основном большинство исследований было сделано в контексте общеупотребительной лексики и литературного языка.
Как наиболее доступную иллюстрацию распознаванию, интерпретации и предположению можно рассмотреть две последовательности предложений, взятых из книг Шранка и Абельсона. На глобальном уровне последовательность А явно отличается от В.
A. John went to a restaurant
He asked the waitress for a hamburger
He paid the tip & left
B. John went to a park
He asked the midget for a mouse
He picked up the box & left
Хотя все эти предложения имеют одинаковую синтаксическую структуру и тип семантической информации, понимание их кардинально различается. Последовательность А имеет доступ к некоторому виду структуры знаний высшего уровня, а В не имеет. Если бы А не имело такой доступ, то ее понимание сводилось бы к уровню В и характеризовалось бы как дезориентированное. Этот контраст является наглядным примером мгновенной работы высшего уровня структуры знаний.
Была предложена программа под названием SAM, которая отвечает на вопросы и выдает содержание таких рассказов. Например, SAMможет ответить на следующие вопросы, ответы на которые не даны в тексте, с помощью доступа к записи предполагаемых событий, предшествующих обеду в ресторане.
Did John sit down in the restaurant?
Did John eat the hamburger?
Таким образом, SAMможет распознать описанную ситуацию как обед в ресторане и затем предсказать оптимальное развитие событий. В нашем случае распознавание не представляло трудностей, но в большинстве случаев оно довольно непростое и является самой важной частью теории.
Рассмотрим другой пример:
C. He plunked down $5 at the window.
She tried to give him $ 2.50, but he wouldn’t take it.
So when they got inside, she bought him a large bag of popcorn.
Он интересен тем, что у большинства людей он вызывает цикл повторяющихся неправильных или незаконченных распознаваний и реинтерпретаций.
В случаях с многозначными словами многозначность разрешается с помощью активизированного ранее фрейма . Для этих целей необходимо создать лексикон к каждому фрейму. Когда фрейм активизируется, соответствующему лексикону отдается предпочтение при поиске соответствующего значения слова. В контексте ТФ это распознавание процессов, контролируемых фреймами, которые, в свою очередь, контролируют распознавание входящей информации. Иногда это называется процессом сверху - вниз фреймодвижущего распознавания.
Применение этих процессов нашло свое отражение в программе FRAMP, которая может суммировать газетные сводки и классифицировать их в соответствие с классом событий, например терроризм или землетрясения.
Эта программа хранит набор объектов , которые должны быть описаны в каждой разновидности текстов, и этот набор помогает процессу распознавания описываемых событий .
Манипуляция фреймами
Детали спецификации фреймов и их репрезентации могут быть опущены, так же как и алгоритмы, их манипуляции, потому что они не играют большой роли в ТФ.
Такие вопросы, как размер фрейма или доступ к нему, связаны с организацией памяти и не требуют специального рассмотрения.
Распознавание
В литературе имеется много рассуждений по поводу процессов, касающихся распознавания фреймов и доступа к структуре знаний высшего уровня. Несмотря на то, что люди могут распознать фрейм без особых усилий, для компьютера в большинстве случаев это довольно сложная задача. Поэтому вопросы распознавания фреймов остаются открытыми и трудными для решения с помощью ИИ.
Размер фрейма
Размер фрейма гораздо более тесно связан с организацией памяти, чем это кажется на первый взгляд. Это происходит потому, что в понимании человека размер фрейма определяется не столько семантическим контекстом, но и многими другими факторами. Рассмотрим фрейм визита к доктору , который складывается из подфреймов, одним из которых является комната ожидания. Таким образом, мы можем сказать, что размер фрейма не зависит от семантического содержания представленного фрейма (такого, как, например, визит к врачу), но зависит от того, какие компоненты описывающей информации во фрейме (таком, как комната ожидания) используются в памяти. Это означает, что когда определенный набор знаний используется памятью более чем в одной ситуации, система памяти определяет это, затем модифицирует эту информацию во фрейм, и реструктурирует исходный фрейм так, чтобы новый фрейм использовался как его подкомпонент.
Вышеперечисленные операции также остаются открытыми вопросами в ТФ.
Инициализационные категории
Рош предложил три уровня категорий представления знаний: базовую, субординатную и суперординационную. Например, в сфере меблировки концепция кресла является примером категории основного уровня, а концепция мебели - это пример суперординационной категории. Язык представления знаний подвержен влиянию этой таксономии и включает их как различные типы данных. В сфере человеческого общения категории основного уровня являются первейшими категориями, которые узнают человек, другие же категории вытекают из них. То есть суперординационная категория - это обобщение базовой, а субординатная - это подраздел базовой категории.
пример
суперординатная идеи события
базовая события действия
субординатная действия прогулка
Каждый фрейм имеет свой определенный так называемый слот. Так, для фрейма действие слот может быть заполнен только каким-либо исполнителем этого действия, а соседние фреймы могут наследовать этот слот.
Некоторые исследователи предположили, что случаи грамматики падежей совпадают со слотами в ТФ, и эта теория была названа теорией идентичности слота и падежа. Было предложено число таких падежей, от 8 до 20, но точное число не определено. Но если агентив полностью совпадает со своим слотом, то остальные падежи вызвали споры. И до сих пор точно не установлено, сколько всего существует падежей.
Также вызвал трудность тот факт, что слоты не всегда могут быть переходными. Например, в соответствие с ТФ можно сказать, что фрейм одушевленный предмет может иметь слот живой, фрейм человек может иметь слот честный, а фрейм блоха не может иметь такой слот, и он к нему никогда не перейдет.
Другими словами, связи между слотами в ТФ не являются исследованными до конца. Слоты могут передаваться, могут быть многофункциональны, но в то же время не рассматриваются как функции.
СФ иногда адаптируются для построения описаний или определений. Был создан смешанный язык, названный KRYPTON, состоящий из фреймовых компонентов и компонентов предикатных исчислений, помогающих делать какие-либо выводы с помощью терминов и предикатов. Когда активизируется фрейм, факты становятся доступными пользователю. Также существует язык Loops, который объединяет объекты, логическое программирование и процедуры.
Существуют также фреймоподобные языки, которые за исходную позицию принимают один тип данных в памяти, какую-либо концепцию, а не две (например, фрейм и слот), и представление этой концепции в памяти должно быть цельным.
Объектно-ориентированные языки
Параллельно с языками фреймов существуют объектно-ориентированные программные языки, которые используются для составления программ, но имеют некоторые свойства языков фреймов, такие, как использование слотов для детальной, доскональной классификации объектов. Отличие их от языков фреймов в том, что фреймовые языки направлены на более обобщенное представление информации об объекте.
Одной из трудностей представления знаний и языка фреймов является отсутствие формальной семантики. Это затрудняет сравнение свойств представления знаний различных языков фреймов, а также полное логическое объяснение языка фреймов.
2.4 Критерий использования ЭС для решения задач.
Существует ряд прикладных задач, которые решаются с помощью систем, основанных на знаниях, более успешно, чем любыми другими средствами. При определении целесообразности применения таких систем нужно руководствоваться следующими критериями.
1. Данные и знания надежны и не меняются со временем.
2. Пространство возможных решений относительно невелико.
3. В процессе решения задачи должны использоваться формальные рассуждения. Существуют системы, основанные на знаниях, пока еще не пригодные для решения задач методами проведения аналогий или абстрагирования (человеческий мозг справляется с этим лучше). В свою очередь традиционные компьютерные программы оказываются эффективнее систем, основанных на знаниях, в тех случаях, когда решение задачи связано с применением процедурного анализа. Системы, основанные на знаниях, более подходят для решения задач, где требуются формальные рассуждения.
4. Должен быть по крайней мере один эксперт, который способен явно сформулировать свои знания и объяснить свои методы применения этих знаний для решения задач.
В таблице один приведены сравнительные свойства прикладных задач, по наличию которых можно судить о целесообразности использования для их решения ЭС.
Таблица 1 - Критерий применимости ЭС
Применимы | неприменимы |
Не могут быть построены строгие алгоритмы или процедуры, но существуют эвристические методы решения | Имеются эффективные алгоритмические методы. |
Есть эксперты, которые способны решить задачу. | Отсутствуют эксперты или их число недостаточно. |
По своему характеру задачи относятся к области диагностики, интерпретации или прогнозирования. | Задачи носят вычислительный характер. |
Доступные данные “зашумленны”. | Известны точные факты и строгие процедуры. |
Задачи решаются методом формальных рассуждений. | Задачи решаются прецедурными методами, с помощью аналогии или интуитивно. |
Знания статичны (неизменны). | Знания динамичны (меняются со временем). |
В целом ЭС не рекомендуется применять для решения следующих типов задач:
- математических, решаемых обычным путем формальных преобразований и процедурного анализа;
- задач распознавания, поскольку в общем случае они решаются численными методами;
- задач, знания о методах решения которых отсутствуют (невозможно построить базу знаний).
Даже лучшие из существующих ЭС, которые эффективно функционируют как на больших, так и на мини-ЭВМ, имеют определенные ограничения по сравнению с человеком-экспертом.
Большинство ЭС не вполне пригодны для применения конечным пользователем. Если вы не имеете некоторого опыта работы с такими системами, то у вас могут возникнуть серьезные трудности. Многие системы оказываются доступными только тем экспертам, которые создавали из базы знаний.
Вопросно-ответный режим, обычно принятый в таких системах, замедляет получение решений. Например, без системы MYCIN врач может (а часто и должен) принять решение значительно быстрее, чем с ее помощью.
Навыки системы не возрастают после сеанса экспертизы.
Все еще остается проблемой приведение знаний, полученных от эксперта, к виду, обеспечивающему их эффективную машинную реализацию.
ЭС не способны обучаться, не обладают здравым смыслом. Домашние кошки способны обучаться даже без специальной дрессировки, ребенок в состоянии легко уяснить, что он станет мокрым, если опрокинет на себя стакан с водой, однако если начать выливать кофе на клавиатуру компьютера, у него не хватит “ума” отодвинуть ее.
ЭС неприменимы в больших предметных областях. Их использование ограничивается предметными областями, в которых эксперт может принять решение за время от нескольких минут до нескольких часов.
В тех областях, где отсутствуют эксперты (например, в астрологии), применение ЭС оказывается невозможным.
Имеет смысл привлекать ЭС только для решения когнитивных задач. Теннис, езда на велосипеде не могут являться предметной областью для ЭС, однако такие системы можно использовать при формировании футбольных команд.
Человек-эксперт при решении задач обычно обращается к своей интуиции или здравому смыслу, если отсутствуют формальные методы решения или аналоги таких задач.
Системы, основанные на знаниях, оказываются неэффективными при необходимости проведения скрупулезного анализа, когда число “решений” зависит от тысяч различных возможностей и многих переменных, которые изменяются во времени. В таких случаях лучше использовать базы данных с интерфейсом на естественном языке.
Системы, основанные на знаниях, имеют определенные преимущества перед человеком-экспертом.
1. У них нет предубеждений.
2. Они не делают поспешных выводов.
3. Эти системы работают систематизировано, рассматривая все детали, часто выбирая наилучшую альтернативу из всех возможных.
4. База знаний может быть очень и очень большой. Будучи введены в машину один раз, знания сохраняются навсегда. Человек же имеет ограниченную базу знаний, и если данные долгое время не используются, то они забываются и навсегда теряются.
5. Системы, основанные на знаниях, устойчивы к “помехам”. Эксперт пользуется побочными знаниями и легко поддается влиянию внешних факторов, которые непосредственно не связаны с решаемой задачей. ЭС, не обремененные знаниями из других областей, по своей природе менее подвержены “шумам”. Со временем системы, основанные на знаниях, могут рассматриваться пользователями как разновидность тиражирования- новый способ записи и распространения знаний. Подобно другим видам компьютерных программ они не могут заменить человека в решении задач, а скорее напоминают орудия труда, которые дают ему возможность решат задачи быстрее и эффективнее.
6. Эти системы не заменяют специалиста, а являются инструментом в его руках.
С 70-х годов ЭС стали ведущим направлением в области искусственного интеллекта. При их разработке нашли применение методы ИИ, разработанные ранее: методы представления знаний, логического вывода, эвристического поиска, распознавания предложений на естественном языке и др. Можно утверждать, что именно ЭС позволили получить очень большой коммерческий эффект от применения таких мощных методов. В этом - их особая роль.
Каталог ЭС и инструментальных программных средств для их разработки, опубликованный в США в 1987 году, содержит более 1000 систем (сейчас их уже значительно больше). В развитых зарубежных странах сотни фирм занимаются их разработкой и внедрением. Имеются и отечественные разработки ЭС, в том числе - нашедший промышленное применение.
Однако уже на начальных этапах выявились серьезные принципиальные трудности, препятствующие более широкому распространению ЭС и серьезно замедляющие и осложняющие их разработку. Они вполне естественных и вытекают из самих принципов разработки ЭС.
Первая трудность возникает в связи с постановкой задач. Большинство заказчиков, планируя разработку ЭС, в следствие недостаточной компетентности в вопросах применения методов ИИ, склонна значительно преувеличивать ожидаемые возможности системы. Заказчик желает увидеть в ней самостоятельно мыслящего эксперта в исследуемой области, способного решать широкий круг задач. Отсюда и типичные первоначальные постановки задачи по созданию ЭС: “Разработать ЭС по обработке изображения”; “Создать медицинские ЭС по лечению заболеваний опорно-двигательного аппарата у детей”. Однако, как уже отмечалось, мощность эвристических методов решения задач при увеличении общности их постановки резко уменьшается. Поэтому наиболее целесообразно (особенно при попытке создания ЭС в области, для которой у разработчиков еще нет опыта создания подобных систем) ограничиться для начала не слишком сложной обозримой задачей в рассматриваемой области, для решения которой нет простого алгоритмического способа (то есть неочевидно, как написать программу для решения этой задачи, не используя методы обработки знаний). Кроме того, важно, чтобы уже существовала сложившаяся методика решения этой задачи “вручную” или какими-либо расчетными методами. Для успешной разработки ЭС необходимы не только четкая и конкретная постановка задач, но и разработка подробного (хотя бы словесного) описания “ручного” (или расчетного) метода ее решения. Если это сделать затруднительно, дальнейшая работа по построению ЭС теряет смысл.
Вторая и основная трудность - проблема приобретения (усвоения) знаний. Эта проблема возникает при “передаче” знаний, которыми обладают эксперты-люди, ЭС. Разумеется для того, чтобы “обучить” им компьютерную систему, прежде всего требуется сформулировать, систематизировать и формализовать эти знания “на бумаге”. Это может показаться парадоксальным, но большинство экспертов (за исключением, может быть, математиков), успешно используя в повседневной деятельности свои обширные знания, испытывают большие затруднения при попытке сформулировать и представить в системном виде хотя бы основную часть этих знаний: иерархию используемых понятий, эвристики, алгоритмы, связи между ними. Оказывается, что для подобной формализации знаний необходим определенный систематический стиль мышления, более близкий математикам и программистам, чем, например, юристам и медикам. Кроме того, необходимы, с одной стороны, знания в области математической логики и методов представления знаний, с другой - знания возможности ЭВМ, из программного обеспечения, в частности, языков и систем программирования.
Таким образом, выясняется, что для разработки ЭС необходимо участие в ней особого рода специалистов, обладающих указанной совокупностью знаний и выполняющих функции “посредников” между экспертами в предметной области и компьютерными (экспертными) системами. Они получили название инженеры знаний (в оригинале - knowledge engineers), а сам процесс разработки ЭС и других интеллектуальных программ, основанных на представлении и обработке знаний - инженерией знаний (knowledge engineering).
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Представление и использование знаний: Пер. с япон./Под ред. Х. Уэно, М. Исидзука.- М.: Мир, 1989.
2. Долин Г. Что такое ЭС// Компьютер Пресс. – 1992. – №2
3. Сафонов В.О. Экспертные системы - интеллектуальные помощники специалистов.- С.-Пб: Санкт-Петербургская организация общества “Знание” России, 1992.
4. Шалютин С.М. “Искусственный интеллект”. – М.: Мысль, 1985.
5. В. Н. Убейко. Экспертные системы.- М.: МАИ, 1992.
6. Д. Элти, М. Кумбс. Экспертные системы: концепции и примеры.- М.: Финансы и статистика, 1987.
7. Экспертные системы: концепции и примеры/ Д. Элти, М. Кумбс.-М.: Финансы и статистика, 1987.
8. И. Братко. Программирование на языке Пролог для искусст-
9. венного интеллекта.- М.: Мир, 1990.
10. Г. Долин. Что такое ЭС.- Компьютер Пресс, 1992/2.
11. Д. Р. Малпасс. Реляционный язык Пролог и его применение.
12. Д. Н. Марселлус. Программирование экспертных систем на Турбо Прологе.- М.: Финансы и статистика, 1994.
13. К. Нейлор. Как построить свою экспертную систему.- М.: Энергоатомиздат, 1991.
14. Н. Д. Нильсон. Искусственный интеллект. Методы поиска решений.- М.: Мир, 1973.
15. В. О. Сафонов. Экспертные системы- интеллектуальные помощники специалистов.- С.-Пб: Санкт-Петербургская организация общества “Знания” России, 1992.
16. К. Таунсенд, Д. Фохт. Проектирование и программная реализация экспертных систем на персональных ЭВМ.- М.: Финансы и статистика, 1990.
17. В. Н. Убейко. Экспертные системы.- М.: МАИ, 1992.
18. Д. Уотермен. Руководство по экспертным системам.- М.: Мир, 1980.
19. Д. Элти, М. Кумбс. Экспертные системы: концепции и примеры.- М.: Финансы и статистика, 1987.