Экспертные системы. Применение экспертных систем в экономике
Экспертная система содержит три существенных компонента: базу знаний, процедуру вывода и интерфейс между пользователем и системой. Ядром экспертной системы служит база знаний и процедура вывода. Их следует рассматривать вместе, ибо знания, на основе которых нельзя сделать выводы, не имеют смысла. В экспертных системах обычно проводится работа с небольшой частью знаний человека, ограниченной областью профессиональных знаний. Однако при этом возникает множество вопросов, а именно:
1. Как получить знания от экспертов, понятные программисту?
2. Как представить их в структурированном виде?
3. Как реализовать выбранные виды представления знаний на компьютере?
4. Как обеспечить доступ к знаниям внутри системы?
5. Каким образом модифицировать знания по мере накопления опыта?
Процесс извлечения знаний, которыми обладает эксперт, еще недостаточно разработан. Обычно это происходит различными способами и определяется экспертом и инженером по знаниям. Наиболее популярная методика включает следующие этапы:
1) структурирование предметной области путем построения «простой» модели знаний и извлечение из нее ответов;
2) создание на основе «простой» модели знаний уже работающей модели – прототипа экспертной системы с целью ее
усовершенствования;
3) следование циклу «усовершенствования» и «отладки» до тех пор, пока система не станет работать удовлетворительно.
Эта методика исходит из тезиса: экспертам легче критиковать, чем более четко сформулировать цель, а инженеры заинтересованы в быстрейшем доведении до работоспособного состояния существующего прототипа.
Как было отмечено в п. 3.1, одним из основных направлений развития искусственного интеллекта (ИИ) сегодня стало представление знаний. Системы, ядром которых служит модель знаний предметной области, описанная на языке сверхвысокого уровня, приближенном к естественному языку, называют интеллектуальными системами (или системами искусственного интеллекта). А сам такой язык носит название языка представления знаний (ЯПЗ). Интеллектуальные системы применяются для решения сложных задач, связанных с использованием слабо-формализованных знаний специалистов-практиков. В ходе решения задач такого класса логическая (смысловая) обработка информации превалирует над вычислительной обработкой, основанной на традиционных математических методах и моделях. Системы искусственного интеллекта позволяют пользователю при помощи компьютерных технологий не только получать сведения на основе обработки данных, но и использовать по интересующей его проблеме накопленный опыт и знания профессионалов.
На сегодняшний день интеллектуальные системы используются для решения таких задач, как задача анализа визуальной информации и понимания естественного языка; постановка диагноза и формирование рекомендаций по методам лечения; управление диспетчерскими пультами и поддержка принятия управленческих решений (см. п. 3.1.3). Фактически сейчас прикладные интеллектуальные системы используются в десятках тысяч приложений, а годовой доход от продаж программных и аппаратных средств ИИ неуклонно растет. Так, если еще в 1989г. в США он составлял 870 млн. долларов, то в 1990г. он был уже равен 1,1 млрд. долларов, и в последующие 10 лет с каждым годом происходило плавное наращивание дохода. Рост доли систем ИИ в информатике (программном обеспечении) представлен на рис. 3.2 [3.1].
Наиболее распространенным видом систем ИИ являются экспертные системы, первые коммерческие экземпляры которых появились в США (см. п. 3.1).
Экспертная система (ЭС) – это сложный программный комплекс, аккумулирующий и тиражирующий знания специалистов в конкретной предметной области и выполняющий функции эксперта при решении задач из этой области, консультируя менее квалифицированных пользователей.
Каталог ЭС и инструментальных программных средств для их разработки, опубликованный в США в 1987 году, содержал более 1000 систем; в тот же период ежегодный доход от продаж таких инструментальных средств в США составлял 300-400 млн. долларов. Сегодня сотни фирм в развитых зарубежных странах занимаются разработкой и внедрением ЭС. Ежегодно крупными фирмами разрабатываются десятки систем типа “in-house” (для внутреннего пользования). Эти системы интегрируют опыт специалистов компании по ключевым и стратегически важным технологиям. В начале 1990-х годов появилась новая наука – «менеджмент знаний» (knowledge management), исследующая методы обработки и управления корпоративными знаниями [3.1].
Причиной повышенного интереса, который ЭС вызывают к себе на протяжении всего своего существования, является возможность их применения к решению задач из самых различных областей человеческой деятельности. Например, медицина, юриспруденция, геология, экономика, военное дело. В последнее десятилетие ЭС получили распространение в страховании, банковском деле и других областях. В экономике с помощью ЭС решаются задачи анализа инвестиций, планирования рекламной кампании и прогнозирования рынка. ЭС применимы в тех областях, где качество принятия решений традиционно зависит от уровня экспертизы, и позволяют получать качественные, а не количественные результаты решения задачи. ЭС помогают накапливать опыт, повышать качество принимаемых решений и справиться с потоками информации: они выдают советы, проводят анализ, выполняют классификацию, дают консультации и ставят диагноз. Практическое применение ЭС на предприятиях способствует обеспечению эффективной работы и повышению квалификации специалистов.
Современное состояние отечественных разработок в области ЭС можно охарактеризовать как стадию все возрастающего интереса к ним среди специалистов, принадлежащих к разным областям, - финансистов, руководителей высшего звена, преподавателей, инженеров, медиков, психологов, лингвистов, программистов. Пока этот интерес имеет достаточно слабое материальное подкрепление: существует явная нехватка специальной литературы, аппаратных и программных средств, финансирование исследований в этой области ограничено. Процесс создания ЭС требует, прежде всего, участия высококвалифицированных специалистов в области ИИ, которых пока выпускает небольшое количество учебных заведений нашей страны. На этом фоне появляется возможность распространения «подделок» под ЭС в виде многочисленных диалоговых систем и интерактивных пакетов прикладных программ, которые дискредитируют в глазах пользователей это перспективное направление. Тем не менее, отечественные разработки в области ЭС существуют, в том числе, нашедшие промышленное применение (см. п. 3.2.4).
Из истории развития экспертных систем.
Наиболее известные ЭС, разработанные в 60-70-х годах, стали в своих областях уже классическими. По происхождению, предметным областям и по преемственности применяемых идей, методов и инструментальных программных средств их можно разделить на несколько семейств:
1. META-DENDRAL. Система DENDRAL позволяет определить наиболее вероятную структуру химического соединения по экспериментальным данным (масс-спектрографии, данным ядерного магнитного резонанса и др.). META-DENDRAL автоматизирует процесс приобретения знаний для DENDRAL. Она генерирует правила построения фрагментов химических структур.
2. MYCIN-EMYCIN-TEIREIAS-PUFF-NEOMYCIN. Это семейство медицинских ЭС и сервисных программных средств для их построения. Диагностическая система MYCIN предназначена для диагностики и наблюдения за состоянием больного при менингите и бактериальных инфекциях. Ее первая версия была разработана в Станфордском университете в середине 70-х годов. В настоящее время эта система ставит диагноз на уровне врача-специалиста. Она имеет расширенную базу знаний, благодаря чему может применяться и в других областях медицины.
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, так же как и ее предшественница, остановилась в своем развитии, достигнув предела, определенного ее разработчиком.
В отличие от машинных программ, использующий процедурный анализ, ЭС решают задачи в узкой предметной области (конкретной области экспертизы) на основе дедуктивных рассуждений. Такие системы часто оказываются способными найти решение задач, которые неструктурированны и плохо определены, за счет привлечения эвристик – вновь вводимых правил, что может быть полезным в тех системах, где недостаток необходимых знаний или времени исключает возможность проведения полного анализа.
Главным достоинством экспертных систем является возможность накопления, обновления знаний и сохранения их в течение длительного времени. Благодаря тому, что ЭС позволяют хранить и обрабатывать большие объемы знаний, возможность возникновения ошибки при переборе очень мала, а качество проводимой с помощью ЭС экспертизы достаточно высоко. При этом ЭС обеспечивает относительную независимость конкретной организации от наличия в ней квалифицированных специалистов и позволяет повышать квалификацию специалистов, работающих на предприятии, используя наилучшие проверенные решения.
Преимущества ЭС перед человеком-экспертом состоят в том, что у систем, основанных на знаниях, «нет предубеждений», они не делают поспешных выводов. Эти системы работают последовательно, при этом анализируются все детали и часто выбирается наилучшая альтернатива из всех возможных. Знания, будучи введены в систему, сохраняются в полном объеме. Человек же обладает ограниченными знаниями, и если они долгое время не используются, то забываются и теряются навсегда. Кроме того, системы, основанные на знаниях, «помехоустойчивы»: эксперт пользуется побочными знаниями и легко поддается влиянию внешних факторов, которые непосредственно не связаны с решаемой задачей, в то время как ЭС, не содержащие знания из других областей, по своей природе менее подвержены «шумам».
Однако даже лучшие из существующих ЭС, которые эффективно функционируют как на больших, так и на мини-ЭВМ, имеют определенные ограничения по сравнению с человеком-экспертом. Во-первых, большинство ЭС не вполне пригодны для применения конечным пользователем, если у него нет некоторого опыта работы с такими системами. Многие системы оказываются доступными только тем экспертам, которые создавали их базы знаний. Во-вторых, вопросно-ответный режим, обычно принятый в таких системах, замедляет получение решений. Например, без системы MYCIN врач может (а часто и должен) принять решение значительно быстрее, чем с ее помощью. Кроме того, ЭС не способны обучаться, не обладают «здравым смыслом»: навыки системы не возрастают после сеанса экспертизы.
Со временем системы, основанные на знаниях, могут рассматриваться пользователями как разновидность тиражирования, а это новый способ записи и распространения знаний. Подобно другим видам компьютерных программ они не могут заменить человека в решении задач, а скорее напоминают орудия труда, которые дают ему возможность решать задачи быстрее и эффективнее.
При создании ЭС возникает ряд сложностей. Прежде всего, это связано стем, что заказчик не всегда может точно сформулировать свои требования к разрабатываемой системе. Поэтому наиболее целесообразно (особенно при попытке создания ЭС в области, для которой у разработчиков еще нет опыта создания подобных систем) ограничиться для начала не слишком сложной обозримой задачей в рассматриваемой области, для решения которой нет простого алгоритмического способа. Кроме того, важно, чтобы уже существовала сложившаяся методика решения этой задачи «вручную» или какими-либо расчетными методами.
Как было отмечено выше, не все виды задач пригодны для решения с привлечением ЭС. С другой стороны, существует ряд прикладных задач, которые решаются с помощью систем, основанных на знаниях, более успешно, чем любыми другими средствами. При определении целесообразности применения таких систем нужно руководствоваться следующими критериями:
§ данные и знания должны быть надежными и мало меняться с течением времени;
§ решаемые задачи должны являться узкоспециализированными и пространство возможных решений должно быть относительно невелико. Так, программа, предназначенная для определения конфигурации систем ЭВМ, не может ставить медицинские диагнозы;
§ задачи не должны зависеть в значительной степени от общечеловеческих знаний или соображений здравого смысла;
§ должен быть, по крайней мере, один эксперт, способный явно сформулировать свои знания и объяснить свои методы применения этих знаний для решения задач;
§ задачи не должны являться для экспертов ни слишком легкими, ни слишком сложными (время, необходимое эксперту для решения проблемы, может составлять от трех часов до трех недель);
§ в процессе решения задачи должны использоваться формальные рассуждения: традиционные компьютерные программы оказываются эффективнее систем, основанных на знаниях, в тех случаях, когда решение задачи связано с применением процедурного анализа. Системы, основанные на знаниях, более подходят для решения задач, где требуются формальные рассуждения. Кроме того, ЭС пока плохо пригодны для решения задач методами аналогий и абстрагирования: человеческий мозг справляется с ними лучше;
§ имеет смысл привлекать ЭС только для решения когнитивных задач. Теннис, езда на велосипеде не могут являться предметной областью для ЭС, однако такие системы можно использовать при формировании футбольных команд;
§ системы, основанные на знаниях, оказываются неэффективными при необходимости проведения скрупулезного анализа, когда число «решений» зависит от тысяч различных возможностей и многих переменных, которые изменяются во времени. В таких случаях лучше использовать базы данных с интерфейсом на естественном языке.
ЭС не рекомендуется применять для решения следующих типов задач:
§ математических, решаемых обычным путем формальных преобразований и процедурного анализа;
§ задач распознавания, поскольку в общем случае они решаются численными методами;
§ задач, методы решения которых отсутствуют (невозможно построить базу знаний).
Таким образом, главное ограничение, связанное с применением ЭС, состоит в том, что такие системы неприменимы в больших предметных областях и в тех областях, где отсутствуют эксперты (например, в астрологии).
В целом можно выделить ряд условий, свидетельствующих о необходимости разработки и внедрения ЭС [3.1]:
§ нехватка специалистов, имеющих возможность затратить значительное время для оказания помощи другим;
§ необходимость привлечения коллектива специалистов для решения небольшой задачи, поскольку ни один из них не обладает достаточными знаниями для решения ее самостоятельно;
§ снижение производительности из-за того, что полный анализ сложного набора условий задачи требует от специалиста значительных затрат времени;
§ большое расхождение между решениями самых хороших и самых плохих исполнителей;
§ наличие конкурентов, имеющих преимущество в силу того, что они лучше справляются с поставленной задачей.
Серьезная трудность, связанная с созданием ЭС, заключается в очень большой трудоемкости. Для коммерческих ЭС время разработки занимает, как правило, от нескольких месяцев до десятков лет. Объем программирования столь велик, а программы настолько сложны и нетрадиционны, что имеет смысл, как это принято сейчас при разработке больших ИС, на первом этапе создать демонстрационный прототип системы, другими словами, предварительный вариант, в котором в упрощенном виде реализованы лишь ее основные планируемые возможности. Далее демонстрационная версия будет служить для заказчика подтверждением того, что разработка ЭС для решения данной задачи принципиально возможна, а для разработчиков – основой для последующего улучшения и развития системы.
Еще один способ решения этой проблемы – частичное использование при проектировании новых ЭС уже существующих систем. Для этого желательно организовать знания таким образом, чтобы они были максимально независимы от механизма вывода. Тогда возможно создание новой ЭС путем частичной замены знаний. Часть системы, которая остается неизменной, называется оболочкой ЭС. Сегодня оболочки становятся все более популярными продуктами на рынке коммерческих систем ИИ. Оболочки ЭС – это готовые средства, предоставляющие пользователю готовые структуры для заполнения их знаниями и данными. Как правило, оболочки ориентированы на непрофессионалов в области программирования и позволяют создавать прототипы ЭС при наименьших трудозатратах. Вот некоторые примеры оболочек ЭС, позволяющих создавать системы для консультаций в различных областях: Ist Class (Programs in Motion Inc., 1987), EXSYS (Exsys Inc., 1985), Xi Plus (EXPERTECH Ltd., 1985), SAVOIR (ISI Ltd., 1985), ИНТЕР-ЭКСПЕРТ (оболочка, ориентированная на решение экономических задач).
Однако наибольшие трудности в процессе разработки ЭС сейчас связаны не с процессом машинной реализации систем, а с предварительным (домашинным) этапом анализа знаний и проектированием базы знаний. Этим занимается специальная наука – инженерия знаний. О некоторых проблемах, сопряженных с созданием баз знаний, рассказывается в следующей части данной главы.