Экспертные системы

Экспертные системы.

Статьи по теме
Искать по теме

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

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

С этой целью был создан электронный эксперт – экспертная система.

Экспертные системы начали разрабатываться исследователями искусственного интеллекта в 1970х годах, а в 1980х получили коммерческое подкрепление.

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

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

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

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

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

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

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

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

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

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

Преимущества экспертных систем перед человеком-экспертом:

- у них нет предубеждений и они устойчивы к различным помехам;

- они не делают поспешных выводов;

- эти системы выдают не первое нашедшееся, а оптимальное (по определенным критериям) решение;

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

Первые работы, посвященные экспертным оценкам, появились в бывшем СССР в конце 60-х гг. Одним из первых, осознавших перспективность и значимость технологий экспертного оценивания, был В.М. Глушков – известный ученый в области кибернетики.

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

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

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

2. Основные элементы экспертных систем

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

Таким образом, у полностью оформленной экспертной системы присутствуют четыре основных блока:

1. База знаний.

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

Распространенным методом отображения неформальных знаний являются правила продукций. При этом правила имеют вид ЕСЛИ – ТО, например: ЕСЛИ на улице дождь, ТО вероятность того, что прохожий имеет зонт, следует умножить на 5. Кроме правила продукций используются деревья решений, семантические сети и исчисление предикатов, одна из форм которого встроена в язык Пролог.

Пролог (PROLOG, от PROgramming in LOGic, – программирование в логике) был разработан в 1972 году Аланом Колмари и может служить примером непроцедурного языка. При работе с ним программистам не требуется расписывать шаг за шагом процедуры – достаточно просто определить множество фактов и установить отношения между ними, например, что "телега" и "автомобиль", квалифицируются как нечто, называемое "средство Передвижения", и что это "средство Передвижения" имеет что-то, что называется "колеса". С помощью этих соотношений процедуры, уже встроенные в язык, получают логический вывод о том, что, скажем, "автомобиль" имеет "колеса". Эта особенность делает Пролог очень удобным для написания "экспертных систем".

2. Машина вывода.

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

3. Модуль извлечения знаний.

Извлечение знаний является трудоемким процессом. Знания – редкий и дорогой ресурс, причем их сложно представить в приемлемой для использования в компьютере форме. Человеку часто трудно объяснить, каким образом он принимает решение.

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

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

4. Система объяснения принятых решений.

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

Хотя система, основанная на знаниях, может обойтись без блоков 3 и 4, истинно экспертная система обязана иметь их все.

Гаврилова Т.А. предлагает следующую структуру экспертных систем:

1. База знаний (БЗ) – ядро ЭС, совокупность знаний предметной области, записанная на машинный носитель в форме, понятной эксперту и пользователю (обычно на некотором языке, приближенном к естественному). Параллельно такому "человеческому" представлению существует БЗ во внутреннем "машинном" представлении.

2. Интерфейс пользователя – комплекс программ, реализующих диалог пользователя с ЭС как на стадии ввода информации, так и получения результатов.

3. Решатель – программа, моделирующая ход рассуждении эксперта на основании знаний, имеющихся в БЗ. Синонимы: дедуктивная машина, блок логического вывода.

4. Подсистема объяснений – программа, позволяющая пользователю получить ответы на вопросы; "Как была получена та или иная рекомендация?" и "Почему система приняла такое решение?" Ответ на вопрос "как" – это трассировка всего процесса получения решения с указанием использованных фрагментов БЗ, т.е. всех шагов цепи умозаключений. Ответ на вопрос "почему"- ссылка на умозаключение, непосредственно предшествовавшее полученному решению, т.е. отход на один шаг назад.

5. Интеллектуальный редактор базы знаний – программа, представляющая инженеру по знаниям возможность создавать БЗ в диалоговом режиме- Включает в себя систему вложенных меню, шаблонов языка представления знаний, подсказок и других сервисных средств, облегчающих работу с базой.

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

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

8. Инженер по знаниям – специалист по искусственному интеллекту, выступающий в роли промежуточного буфера между экспертом и базой знаний.

Графически эту структуру можно представить следующим образом:

экспертные системы

Рис. 1. Структура экспертной системы

Фактически, состав экспертных систем не различается в обоих случаях, но в структуре, предлагаемой Гавриловой Т.А., составляющие компоненты указаны более подробно.

Любая экспертная система создается при помощи 2х групп людей:

1. инженеров по знаниям, которые разрабатывают ядро ЭС и, зная организацию базы знаний, заполняют ее при помощи программистов;

2. экспертов (эксперта) по специальности.

Возглавляет коллектив инженер по знаниям, это ключевая фигура при разработке систем, основанных на знаниях.

3. Функции экспертных систем

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

Чтобы построить экспертную систему, необходимо создать механизмы, обеспечивающие выполнение следующих функций:

- решение задач,

- взаимодействие с пользователем;

- работа в условиях неопределенности.

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

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

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

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

- решение задач с использованием знаний о конкретной предметной области – возможно, при этом возникнет необходимость иметь дело с неопределенностью

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

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

4. Примеры первых крупномасштабных экспертных систем

Рассмотрим примеры наиболее известных классических экспертных систем, с которых началось создание и развитие этого типа программных средств.

MYCIN – это экспертная система, разработанная для медицинской диагностики. В частности, она предназначена для работы в области диагностики и лечения заражения крови и медицинских инфекций.

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

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

Система MYCIN справляется с задачей путем назначения показателя определенности каждому из своих 450 правил. Поэтому можно представлять MYCIN как систему, содержащую набор правил вида "ЕСЛИ..., ТО" с определенностью Р. Правила были записаны на естественном Английском языке. Вот пример одного из правил Mycin'а:

IF инфекция – первичная бактерия

AND материал для посева культуры был отобран из стерильного источника

AND предполагаемый путь внедрения микроорганизма – кишечный тракт

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

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

Допустим, чтобы получить исход Z, требуется определить предпосылки Х и Y, дающие возможность вывести Z. Но правила для определения Х и Y могут иметь связанные с ними Показатели определенности Р и О. Если значения Р и Q были равны 1,0, то исход Z не вызывает сомнения. Если Р и Q меньше 1,0 (как это обычно бывает), то исход Z не последует наверняка. Он может получиться лишь с некоторой степенью определенности.

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

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

В некотором роде это имеет нечто общее с системой DENDRAL, в которой применяется графический язык, приспособленный к специфической деятельности химиков.

DENDRAL – это старейшая, самая разработанная экспертная система в мире. Или, по крайней мере, старейшая система, названная экспертной.

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

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

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

На выходе первой системы имеется не один простой ответ. Обычно это серия возможных структур – программа не в состоянии точно сказать, какая из них верна. Затем DENDRAL "берет" каждую из этих структур по очереди и использует вторую экспертную систему, чтобы определить для каждой из них, каковы были бы результаты спектрального анализа, если бы это вещество существовало и было на самом деле исследовано на спектрограмме. Процесс, часто именуемый "генерация и проверка", позволяет постоянно сокращать число возможных рассматриваемых вариантов, чтобы в любой момент оно было как можно меньше. В отличие от некоторых экспертных систем DENDRAL задумана не как "игрушка". Она используется не только для проверки теоретических основ экспертных систем, но и реально применяется для определения химических структур.

PROSPECTOR – это экспертная система, применяемая при поиске коммерчески оправданных месторождений полезных ископаемых.

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

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

Самый простой случай – правила, выражающие логические отношения.

Это правила типа "ЕСЛИ X, ТО Z", где событие Z непосредственно вытекает из X. Они остаются такими же простыми, если сопоставить Х некоторую вероятность. Если у Х всего один аргумент, то это правило существенно упрощается. Обычно вместо Х мы представляем более сложное логическое выражение, например (X И Y) или (X ИЛИ Y).

Если элементы отношения связаны с помощью логического "И" и отдельным элементам этого отношения сопоставлены определенные вероятности, то система PROSPECTOR выбирает минимальное из этих значений и присваивает эту минимальную вероятность рассматриваемому возможному исходу. Поэтому когда вероятность наступления события X равна 0,1 и вероятность наступления события Y равна 0,2, то вероятность исхода Z равна 0,1. Легко видеть, почему выбран такой метод: чтобы Z было истинным, и X, и Y должны быть истинными. Это является "жестким" ограничением, поэтому следует брать минимальное значение.

Система PROSPECTOR пользуется методом, основанным на применении формулы Байеса с целью оценки априорной и апостериорной вероятностей какого-либо события. В целом правила в системе PROSPECTOR записываются в виде ЕСЛИ..., ТО (LS, LN), причем каждое правило устанавливается с отношением правдоподобия как для положительного, так и для отрицательного ответа.

"Система PROSPECTOR предлагает пользователю шкалу ответов в диапазоне от -5 до + 5. Нижний предел – это определенно "Да", верхний – определенно "Нет". Обычно ответ пользователя находится где-то между крайними значениями, и PROSPECTOR корректирует Р(Н), учитывая LS и LN с помощью линейной интерполяции. Это легко представить себе в виде линейной шкалы, где LN – крайнее левое, а LS – крайнее правое значения".

На базе многих ЭС возможна разработка новой ЭС с другими правилами. Это осуществимо благодаря созданию оболочек экспертных системы. Под "оболочками: понимают "пустые" версии существующих экспертных систем, т.е. готовые экспертные системы без базы знаний. Примером такой оболочки может служить EMYCIN (Empty MYCIN – пустой MYCIN), которая представляет собой незаполненную экспертную систему MYCIN. Достоинство оболочек в том, что они вообще не требуют работы программистов для создания готовой экспертной системы. Требуется только специалисты) в предметной области для заполнения базы знаний.

PUFF диагностирует наличие и степень тяжести заболевания легких у пациента, интерпретируя измерения параметров дыхания, выполненные в лаборатории функций легких. Интерпретируемые данные включают результаты проб (например, общую емкость легких, остаточный объем) и историю болезни. Решения системы основаны на знаниях о результатах проб, наблюдаемых при различных нарушениях. PUFF – это основанная на правилах система с обратной цепочкой рассуждений, реализованная на языке EMYCIN. Она разработана в Станфордском университете и протестирована в Тихоокеанском медицинском центре в Сан-Франциско. PUFF доведена до уровня промышленной эксплуатации.

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

Первоначально PUFF имела набор около 50 правил, касающихся легочных заболеваний, которые будучи заложенными в EMYCIN, послужили основой для создания новой экспертной системы. Как и в MYCIN, правила PUFF являются правилами типа "ЕСЛИ..., ТО...", поэтому принималась такая формулировка (абсолютно не на медицинском языке): "ЕСЛИ (пациент тяжело дышит) и (выкуривает 200 сигарет в день) И (беспрестанно кашляет), ТО (у него кашель курильщика)".

Выводы

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

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

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

Экспертные системы создаются в узких предметных областях. Первые модели были созданы в середине 70-х годов: система MYCIN использовалась в медицине для диагностики заболеваний, система PUFF применялась конкретно для диагностики заболеваний легких, DENDRAL – в разведке месторождений полезных ископаемых для анализа химического состава почв, а PROSPECTOR – в поиске и оценке коммерчески оправданных месторождений полезных ископаемых.

Литература

1. Джозеф Джарратано, Гари Райли Экспертные системы: принципы разработки и программирование. – М.: Издательский дом "Вильямс", 2006.

2. Джексон П. Введение в экспертные системы. – М.: "Вильямс", 2001.

3. Вендеров А.М. Проектирование программного обеспечения экономических информационных систем. – М.: Финансы и статистика, 2000.

4. Литвак Б.Г. Экспертные технологии в управлении. – М.: Дело, 2004 г.

5. Братко И. Программирование на языке Пролог для искусственного интеллекта: Пер. с англ. – М.: Мир, 1990.

6. Гаврилова Т.А. Базы знаний интеллектуальных систем. Учебник. – СПб.: Питер, 2004.