Упражнения

1. Что понимается под прототипом в системе CENTAUR? Какие функции возлагаются на прототипы?

2. В чем преимущества смешанного способа представления знаний в системе CENTAUR?

3. Что представляет собой модель заболевания в системе INTERNIST? Объясните смысл концепции доминантности применительно к модели заболеваний в системе INTERNIST.

4. Какие проблемы обнаружились при работе над системой INTERNIST и как они соотносятся с проведенным Кленси анализом различных видов знаний?

5. Выполнение этого упражнения потребует некоторых познаний в медицине — знаний о физическом смысле некоторых параметров, измеряемых при лабораторных анализах органов дыхания. (Лично я узнал о них от д-ра Джереми Уатта (Jeremy Wyatt) и д-ра Патриции Твидейл (Patricia Tweedale). Любые фактические ошибки в приведенном ниже описании прошу отнести на мой счет, но думаю, они не повлияют на смысл самого упражнения.)

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

  • Index0.htm FEV1 (Forced Expiratory Volume). Объем форсированного выдоха за 1 секунду, измеренный в литрах. Измеряется количество воздуха, выдыхаемого пациентом в течение 1 секунды. Этот параметр является показателем эластичности легочных тканей (а следовательно, и их здоровья).
  • Index0.htm IFV1. Показатель изменения FEV1 после курса лечения с применением бронхолитиков.
  • Index0.htm FVC (Forced Vital Capacity). Жизненная емкость легких - объем вдыхаемого воздуха при максимальном наполнении легких.
  • Index0.htm IFVC. Показатель изменения FVC после курса лечения с применением бронхолитиков.
  • Index0.htm TLC (Total Lung Capacity). Общая емкость легких.
  • Index0.htm RV (Residual Volume). Остаточный объем легких - объем воздуха, который остается в легких после максимального выдоха.
  • Index0.htm RATI01 = FEV1/FVC.
  • Index0.htm RATI02 = FEV1/FVC после курса лечения с применением бронхолитиков.
  • Ниже в постановке задачи переменная PRED означает ожидаемое значение любого из перечисленных выше параметров. (Ожидаемое значение медицинского параметра зависит главным образом от пола пациента.) Выражения вида

    80% < RATI01 < 100% (PRED-2SD)

    означают, что параметр RATI01 имеет значение между 80 и 100 процентами от ожидаемого значения, уменьшенного на удвоенное стандартное отклонение в соответствующей популяции.

    Аббревиатура RTB означает Response To Bronchodilation (реакция на прием бронхолитиков).

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

    AIRWAIS OBSTRUCTION

    существует, если:

    RATI01 < PRED-2SD отсутствует RTB, если:

    RATI02 < PRED-2SD хороший показатель RTB, если:

    RATI02 > PRED-2SD

    SLIGHT AIRWAIS OBSTRUCTION

    существует, если:

    801 < RATI01 < 100% (PRED-2SD) отсутствует RTB, если:

    IFV1 < FEV1/10

    IFVC < FVC/10 хороший показатель RTB, если:

    FEV1 > (PRED-2SD)/4

    FEV1/3 < IFEV1

    MODERATE AIRWAIS OBSTRUCTION

    существует, если:

    55% < RATI01 < 80% (PRED-2SD)

    SEVERE AIRWAIS OBSTRUCTION

    существует, если:

    RATI01 <= 55% (PRED-2SD)

    RESTRICTIVE DEFECT

    существует, если: RV < PRED+2SD TLC <= 80% (PRED-2SD)

    RATI01 > 80% (PRED-2SD)

    EARLY RESTRICTIVE DEFECT существует,

    если: TLC < (PRED-2SD) RATI01 > (PRED-2SD)

    MILD RESTRICTIVE DEFECT

    существует, если:

    RATI01 > (.PRED-2SD) 80% < TLC < 100% (PRED-2SD)

    MODERATE RESTRICTIVE DEFECT

    существует, если:

    RATI01 > (PRED-2SD)

    60% < TLC < 80 (PRED-2SD)

    SEVERE RESTRICTIVE DEFECT существует, если:

    RATI01 > (PRED-2SD) TLC < 60 (PRED-2SD)

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

    В каждом фрейме нужно предусмотреть слоты для хранения ожидаемых среднестатистических значений и стандартных отклонений. Так, слот PRED-RATI01 будет хранить ожидаемое значение параметра RATI01, а слот SD-RATI01 — стандартное отклонение этого параметра. Конечно, для этого упражнения можно подставить любые значения в эти слоты, поскольку главное, что от вас требуется, — правильно организовать связи между слотами.

    Например, фрейм-объект SEVERE-RESTRICTIVE-DEFECT может включать метод (процедуру LISP) PRESENT, который определен следующим образом:

    SEVERE-RESTRICTIVE-DEFECT.PRESENT

    (and( > RATI01 (- PRED-RATI01 ( SD-RATI01 2)))

    (< TLC (/ ( 6 (- PRED-TLC (*SD-TLC 2))) 10)))

    Эта процедура возвращает значение Т, если соблюдаются специфицированные в ней условия.

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

    6. Разработайте и реализуйте простую программу извлечения знаний, которая позволила бы пользователю передать сведения о неисправностях в некотором устройстве и перечислить их возможные причины. Например, если вас привлекает предметная область обслуживания автомобиля, то программа должна принимать сведения о таких видах отказов (в терминологии TDE), как "двигатель не заводится", уточнять причину отказа, например "подается ли ток на электродвигатель стартера?", и связывать возможные причины с каждым таким уточнением.

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

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