MYCIN была ранней экспертной системой разработанной за 5 или 6 лет в начале 1970-х годов в Стэнфордском университете. Она была написана на Лиспе как докторская диссертация Эдварда Шортлайфа (англ. Edward Shortliffe) под руководством Брюса Бучанан (англ. Bruce Buchanan), Стэнли Н. Коэна (англ. Stanley N. Cohen) и других. В этой же лаборатории была ранее создана экспертная система Dendral, но на этот раз внимание было акцентировано на использовании решающих правил с элементами неопределенности. MYCIN было спроектировано для диагностирования бактерий, вызывающих сложные инфекции, такие как бактеремии и менингит, а также для рекомендации необходимого количества антибиотиков, в зависимости от массы тела пациента. Название системы происходит от суффикса «-мицин», который часто встречается в названиях антибиотиков. Также Mycin использовался для диагностики заболеваний свертываемости крови.

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

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

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

Метод

MYCIN оперировала на основе довольно простой машины вывода, и базы знаний с ~ 600 правил. После запуска, программа задавала пользователю (врачу) длинный ряд простых «да / нет» или текстовых вопросов. В результате, система предоставляла перечень подозреваемых бактерий, который был отсортировано по вероятности, указывала доверительный интервал для вероятностей диагнозов и их обоснование (то есть MYCIN предоставляла перечень вопросов и правил, привели ее к именно такому ранжирование диагнозов), а также рекомендовала курс лечения.

Несмотря на успех MYCIN, она вызвала дебаты по поводу правомерности ее машины вывода. Исследования, проведенные разработчиками, показали, что эффективность системы минимально зависит от конкретных числовых особенностей реализаций правил вывода. Они предположили, что эффективность гораздо больше зависит от способа представления знаний и способа виведенння. Этот вопрос был рассмотрен (Shortliffe EH and Buchanan BG. A model of inexact reasoning in medicine. Mathematical Biosciences 23: 351-379, 1975) и затем в их подробной книге о MYCIN и связанных с ней экспериментах (Rule Based Expert Systems: The MYCIN Experiments of the Stanford Heuristic Programming Project, EH Shortliffe, eds. Reading, MA: Addison-Wesley, 1984).

База знаний системы

База знаний системы MYCIN организована в виде множества правил в форме «если Умова_1 …, Умова_m выполняются, то прийти к Висновок_1 …, Висновок_n». Эти правила преобразованы в операторы языка LISP.

Вот как выглядит перевод на обычный язык типичного правила MYCIN: если

  1. организм обладает пятнистым окрасом, и
  2. организм имеет форму палочки, и
  3. организм аэробный,

ТО есть основания предполагать, с вероятностью (например, 0.8), что этот микроорганизм относится к классу enterobacteriaceae. Такого рода правила названы оргправиламы (ORGRULES) и в них сконцентрированы знания о таких организмах, как streptococcus, pseudonomas и enterobacteriaceae.

Это правило говорит о том, что если организм имеет форму палочки, пятнистую окраску и активно развивается в среде, насыщенной кислородом, то с большой вероятностью его можно отнести к классу enterobacteriaceae. Число 0.8 называется уровнем соответствия (tally) правила, то есть мерой правдоподобия вывода, сделанного на основании сформулированных условий. Каждое правило такого вида можно рассматривать как представление в машинном форме некоторого элемента знаний эксперта. Возможность применить правило определяется тем, выполняются в конкретной ситуации условия, сформулированные в первой части. Сформулированные условия также носят нечеткий характер и могут довольствоваться с разной степенью истинности. Поэтому в результате импорта правил базы знаний по конкретной ситуации формируется более общее правило, что включает и оценки уровня истинности соблюдение следующих условий:

  Если Умова_1 выполняется с истинностью Х1, ..., Умова_m выполняется с истинностью Хм, ТО прийти к Висновку_1 со степенью уверенности У1, ..., к выводу n со степенью уверенности Уn. 

Здесь степень уверенности, связанная с каждым выводом, является функцией от оценок истинности соблюдения условий и уровня соответствия, отражает степень уверенности эксперта при формулировке первичных оргправил. Фактически правило является парой "предпосылка-действие"; такое правило иногда традиционно называют "продукцией". Предпосылка — это совокупность условий, а уверенность в достоверности предпосылки зависит от того, насколько достоверной является оценка условий. Условия — это предположение о наличии некоторых свойств, которые принимают значения истина или ложь с определенной степенью достоверности. Примером может служить условие в приведенном выше правиле: "Организм имеет форму палочки".

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

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

Значительная часть знаний хранится не в виде правил, а в виде свойств, ассоциированных с 65 клиническими параметрами, известными системе MYCIN. Например, форма — это атрибут микроорганизма, который может принимать самые разнообразные значения, например, "палочка" или "кокон". Система также присваивает значения параметров и для собственных нужд — или для упрощения мониторинга взаимодействия с пользователем, или для индексации при определении порядка применения правил. Информация о пациенте хранится в структуре, которая называется контекстным деревом. В это дерево включены трех культуры организмов (например, полученные из анализа крови пациента) и текущие назначения, которые нужно учитывать при анализе, поскольку они связаны с приемом определенных лекарственных средств. С культурами связанные микроорганизмы, присутствие которых предполагается на основании данных, полученных в лаборатории, а с микроорганизмами — лекарственные средства, влияющие на них.

Структуры управления в MYCIN

Целевое правило самого верхнего уровня в системе MYCIN можно сформулировать примерно так:

ЕСЛИ:

  Существует микроорганизм, который требует проведения курса терапии и заданные соображения по любым других микроорганизмов, которые требуют проведения курса терапии, 

ТО:

  Сформировать список возможных курсов терапии и выделить лучший из них. 

В ходе консультации выполняется простая двухэтапная процедура:

  • Формируется контекст пациента в форме самого верхнего узла контекстного дерева;
  • Делается попытка применить целевое правило к этому контексту пациента.

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

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

Для работы программы очень удобно представить процесс порождения подцелей с помощью особого вида структуры, названной И / ИЛИ-графом. Основная идея заключается в том, что корневой узел дерева представляет главную цель, а терминальные узлы — примитивные операции, которые может выполнить программа. Нетерминальные (промежуточные) узлы представляют подцель, в отношении которых допустимо выполнить дальнейший анализ. Существует достаточно простая соответствие между анализом таких структур и анализом множества правил.

Структура управления правилами в MYCIN использует И / ИЛИ-граф и по сравнению с программами искусственного интеллекта достаточно проста — в ней использована методика исчерпывающего поиска в которую внесены только незначительные изменения.

  1. Формулировка каждой подцели всегда представляет собой обобщенную форму исходной цели. Так, если подцель заключается в том, чтобы доказать справедливость суждения "организм — это E.Coli", то формулировка такой подцели, определение типа организма. Этим инициируется исчерпывающий поиск, в который вовлекаются все возможные сведения об организмах.
  2. В множества правил, пригодных для сформулированной цели, изыскиваются такое, которое удовлетворяется по определению. Если для заключения об определенном параметр, например о природе организма, подходит несколько правил, то их результаты объединяются. Если коэффициент уверенности какой-либо из выдвинутых гипотез оказывается в диапазоне от -0,2 до 0,2, то гипотеза отвергается.
  3. Если текущая подцель представляет собой лист на графе (терминальный узел), то данные запрашиваются у пользователя. В противном случае устанавливается очередная подцель и выполняется переход на шаг (1).

По завершении процесса диагностики выбирается рекомендованный курс лечения. Выбор включает две стадии: отбор рекомендованных медикаментов и лучшего варианта или комбинации медикаментов из полученного списка.

Комбинация гипотез

В системе MYCIN может оказаться, что для суждения об определенном параметр подойдет не одно правило, а несколько. Применение каждого из них — отдельная гипотеза, что характеризуется некоторым значением коэффициента уверенности. Например, с одной правила следует, что данный микроорганизм, это E.coli, причем коэффициент уверенности этой гипотезы равна 0,8. Другое правило, принимая во внимание другие свойства анализируемого объекта, приходит к выводу, что этот микроорганизм — E.coli, но эта гипотеза характеризуется коэффициентом уверенности 0.5. Отрицательное значение коэффициента уверенности указывает, что данное правило опровергает сформулировано заключение.

Пусть Х и У, коэффициенты уверенности одинаковым выводам, полученные при применении различных правил. В таком случае в системе MYCIN используется следующая формула определения результирующего коэффициента уверенности:

  {X + Y-XY при X, Y> 0 CF (X, Y) = {X + Y + XY при X, Y <0 {(X + Y) / (1-min (X, у)) при ( X> 0 и Y <0) или (X <0 и Y> 0) 

Здесь Х означает абсолютное значение X.

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

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

Отдельное правило применяется по отношению к главной цели, представленной корневым узлом на I / ИЛИ-графе. Если удовлетворяются все, связанные с ним предпосылки, то это правило, вместо того чтобы формировать суждения, возбуждает определенное действие. Здесь в системе MYCIN на сцену выходят правила формулирования рекомендаций о курсе лечения. Эти правила включают информацию о чувствительности различных организмов, известных системе, к тем или иным медикаментов. Ниже приведены простое правило выдачи рекомендаций о лечении.

Если микроорганизм идентифицирован как Pseudomonas, ТО рекомендуется выбрать такие медикаменты:

  1. — COLISTIN (0.98)
  2. — POLYMIXIN (0.96)
  3. — GENTAMICIN (0.96)
  4. — CARBENICILLIN (0.65)
  5. — SULFISOXAZOLE (0.64)

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

Результаты

Исследования, проведенные в Стэнфордский медицинской школе, обнаружили, что MYCIN предлагает приемлемую терапию примерно в 69% случаев, что лучше, чем у экспертов по инфекционным болезням, которых оценивали по тем же критериям. Это исследование часто цитируют, чтобы продемонстрировать возможную степень несогласия между решениями врачей, даже если они эксперты, когда нет «золотого стандарта» для правильного лечения (Yu VL, et al. Antimicrobial selection by a computer — a blinded evaluation by infectious disease experts. Journal of the American Medical Association 242: 1279-1282, 1979).

Практическое использование

Фактически, MYCIN никогда не использовалась на практике. И не в силу ее низкой эффективности. Как уже упоминалось, в тестах она превосходила профессоров Стэнфордской медицинской школы. Некоторые исследователи поднимали этические и правовые вопросы, связанные с использованием компьютеров в медицине — если программа дает неправильный прогноз предлагает неправильное лечение, кто должен отвечать за это? Однако, самой большой проблемой и настоящей причиной, почему MYCIN не используется в повседневной практике, было состояние технологий системной интеграции, особенно во времена ее создания. MYCIN была автономной системой, требует от пользователя набора всей необходимой информации. Программа запускалась на сервере с разделением времени, доступном с раннего Интернета (ARPANet), когда еще не было персональных компьютеров. В наше время, подобная система была бы интегрирована с системой медицинских записей, получала бы ответы на свои вопросы из базы данных о пациентах, и была бы значительно менее зависима от ввода информации врачом. В 1970-х, сеанс работы с MYCIN мог легко занять 30 минут и более — составляет недопустимы потери времени для занятого врача клиники.

Достижением MYCIN была демонстрация мощи ее подхода к представлению знаний и построению выводов. Позже было разработано множество экспертных систем, основанные на правилах. В 1980-х появились «оболочки» для экспертных систем (в том числе основанных на MYCIN, известная как E-MYCIN (разрабатывается KEE)), что способствовало разработке экспертных систем в различных прикладных областях.

Главной трудностью, с которой столкнулись при разработке MYCIN и последующих экспертных систем, было «извлечение» знаний и опыта людей-экспертов для формирования базы правил. Сейчас этими вопросами занимается инженерия знаний.