Глава 7. ЭКСПЕРТНЫЕ СИСТЕМЫ
Введение
Со временем доля работ на ЭВМ, связанных с обработкой чисто числовой информации, будет постоянно уменьшаться. Уже в настоящее время большая часть программного обеспечения предназначена для работы с информацией более общего вида.
В этой главе речь пойдет об одном семействе программ, предназначенных для оказания помощи специалистам в конкретных областях знаний, а именно об экспертных системах. К их основным свойствам относятся возможность обработки символьной информации, использование неполных данных для построения логических выводов, взаимодействие с человеком с помощью естественного языка.
Первая часть главы содержит формальную концепцию построения систем и описание их некоторых конкретных вариантов. Во второй части рассмотрены свойства систем, различные способы подготовки информации по специальной тематике, а также современное состояние и перспективы развития подобного подхода к программированному взаимодействию человека и ЭВМ.
В первых исследованиях в области искусственного интеллекта часто ставились слишком грандиозные цели, такие, как автоматический перевод на другой язык, доказательство теорем в произвольных областях знаний. Но следует заметить, что человечество в течение веков накопило громадный объем конкретных знаний и совершенно очевидно, что традиции, сформировавшиеся в одной области знаний, не обязательно автоматически переносимы на все остальные.
В последние годы системы искусственного интеллекта развивались с учетом именно этого обстоятельства. Сегодня ясно, что для разработки качественных интеллектуальных программ необходима их ориентация на определенные узкие области человеческой деятельности, в которых они должны уметь обучаться своей специальности, структурировать полученные знания и правильно их применять.
В этой главе рассматриваются системы, работающие с большими объемами знаний. Их целью является достижение результатов, получаемых лучшими специалистами в своих областях, поэтому такие системы и получили название экспертных. Важной особенностью этих систем является то, что они задуманы для использования человеком и оказания ему эффективной
помощи. Необходимым средством для этого является возможность диалога на естественном, языке программы со специалистом.
Кроме того, необходимо, чтобы специалист понимал систему и в случае необходимости мог сообщить ей свои рассуждения и убедить ее в их справедливости. Для этого нужно, чтобы декларативные знания, используемые системой, были отделены от обслуживающих их программных средств и в то же время были доступны непосредственно самой системе. Необходимо также, чтобы выводы системы были простыми и устойчивыми и их можно было легко объяснить.
Наконец, самое главное состоит в том, чтобы специалисты и эксперты могли легко передавать системе свои знания, обогащать ее. Для этого нужно иметь возможность вводить в систему знания в произвольном порядке, чисто описательным способом (не ориентируясь на их будущее использование, в отличие от классических жестко алгоритмических процедур). Сама система должна уметь упорядочивать и структурировать эти знания, сравнивать их с уже имеющимся и строить свою собственную модель знаний.
Для примера рассмотрим два реальных диалога с одной экспертной медицинской программой MYCIN:
• постановка диагноза;
• объяснение системой хода своих собственных рассуждений.
Кроме того, в разд. 7.2 дан пример корректировки базы знаний в режиме диалога.