Интеллектуальная медицинская система дифференциальной диагностики на основе экспертных систем

УДК: 004.891

Н.В. Ле

ИНТЕЛЛЕКТУАЛЬНАЯ МЕДИЦИНСКАЯ СИСТЕМА ДИФФЕРЕНЦИАЛЬНОЙ ДИАГНОСТИКИ НА ОСНОВЕ ЭКСПЕРТНЫХ СИСТЕМ

Рассмотрен подход к проектированию интеллектуальной медицинской системы диагностики на основе теории экспертных систем. Предложена формальная модель медицинской экспертной системы дифференциальной диагностики. Приведены схема архитектуры данной системы.

Медицинская диагностика, экспертная система, фреймовая система, продукционная система, управление выводом

N.V. Le

AN INTELLIGENT MEDICAL DIFFERENTIAL DIAGNOSIS SYSTEM BASED ON EXPERT SYSTEMS

This paper presents an approach to designing an intelligent medical diagnosis system based on the theory of expert systems. A formal model for a medical expert system on differential diagnosis is proposed. The architecture of the system is also presented.

Medical diagnosis, expert system, frame system, product system, inference engine

Введение

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

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

цинские экспертные системы: PUFF - диагностирование легочных заболеваний; CADUCEUS - диагностирование заболеваний внутренних органов; MYCIN - диагностирование и лечение заболеваний, вызванных бактериальными инфекциями; GUIDON - подготовка инструктивных указаний по борьбе с бактериальными инфекциями и др.

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

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

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

Формальная модель медицинской экспертной системы дифференциальной диагностики.

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

Формальная модель системы может быть представлена в виде кортежа:

MESDD

где WM - рабочая память; KB - база медицинских знаний; UI - пользовательский интерфейс; IE -управление выводом диагностического решения; EM - объяснение результативной информации; KA - приобретение медицинских знаний.

На рис. 1 представлена схема медицинской экспертной системы диагностики.

Рис. 1. Схема медицинской экспертной системы диагностики

По данной схеме система работает в 2 следующих режимах [1-3]. В режиме приобретения знаний эксперты-врачи наполняют систему медицинскими знаниями, которые позволяют ей в режиме медицинской консультации самостоятельно решать задачи вывода диагностического решения. В режиме медицинской консультации в общении с системой участвует пользователь-пациент, которого интересует результативная информация диагностики и объяснительная информация полученного результата.

База медицинских знаний

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

Фреймовая база знаний

Формально база знаний может быть представлена в виде кортежа:

KB =

где FC - фрейм-класс; FSM - фрейм-прототип специальности; FSD - фрейм-прототип заболевания; FSS - фрейм-прототип симптома; FSC - фрейм-прототип симптомокомплекса; [FIMi} - множество фреймов-экземпляров специальностей; {fid } - множество фреймов-экземпляров заболева-

i; [FISk} - множество фреймов-экземпляров симптомов; {FSC} - множество фреймов-

ний;

симптомокомплексов.

Под фреймом-классом понимается фрейм верхнего уровня для представления совокупности фреймов-прототипов. Фрейм-класс определяется имением и совокупностью слотов. Формально фрейм-класс может быть представлен в виде кортежа:

FC=( NFC{ NSTSVSftM^frDS]

где NFC - имя фрейма-класса; NS- имя слота; TS - тип данных слота; VS - значение слота; [PMS - множество процедур-методов; [pds .} - множество процедур-демонов.

Под фреймом-прототипом понимается фрейм для описания абстрактных объектов области диагностики заболеваний. Используются 4 типа фрейма-прототипа для специальности, заболевания, симптома и симптомокомплекса. Под фреймом-экземпляром понимается фрейм для отображения реальных объектов области диагностики, например «простуда», «грипп», «кашель», «насморк» и т.д. Формально фрейм-прототип специальности может быть представлен в виде кортежа:

FSM=< NFSMAKQNM[CD }>,

где NFSM - имя фрейма-прототипа специальности; AKO - данный слот задает имя фрейма-класса; NM - данный слот задает имя специальности; [CDi} - данный слот задает набор контактов врачей по специальности.

Формально фрейм-прототип заболевания может быть представлен в виде кортежа:

FSD=

где NFSD - имя фрейма-прототипа заболевания; AKQ - данный слот задает имя фрейма-класса; LVQD - данный слот задает лингвистическую выходную переменную заболевания; CVQ - данный

слот задает значение выходной переменной заболевания; [CF,} - данный слот задает множество коэффициентов уверенности правдоподобия заболевания; SX - данный слот задает пол пациента, который возможно страдает заболеванием; AE - данный слот задает диапазон возраста пациента; NFIM - данный слот задает имя фрейма-экземпляра специальности.

Формально фрейм-прототип симптома может быть представлен в виде кортежа:

Ж =

где NFSS - имя фрейма-прототипа симптома; AKO - данный слот задает имя фрейма-класса; Ь УК -данный слот задает лингвистическую входную переменную симптома; СУ1 - данный слот задает

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

специфичности симптома в соответствующего симптомокомплексе; SG - данный слот имя групп симптомов.

Формально фрейм-прототип симптомокомплекса может быть представлен в виде кортежа:

FSC=

где NFSC - имя фрейма-симптомокомплекса конкретного заболевания; АКО - данный слот задает имя фрейма-класса; NFID - данный слот задает имя фрейма-экземпляра заболевания; \NFlS -данный слот задает множество имен фреймов-экземпляров симптомов в симптомокомплексе; {FR J} -

данный слот задает набор нечетких причинных правил заболевания; {SFIfc} - данный слот задает множество слотов фреймов-экземпляров заболевания NFID и симптомов, указанных во множестве

Нечеткая база знаний

Формально нечеткое правило может быть представлено в виде кортежа:

FR =

где NF1 - имя нечеткого правила; FSMS - нечеткое высказывание переменной симптома; SFi -коэффициент специфичности симптома в симптомокомплексе;

FSMD

- нечеткое высказывание переменной заболевания; CF - коэффициент уверенности правдоподобия заболевания.

Формально нечеткое высказывание одной переменной может быть представлено в виде кортежа:

FSM =

где ЬУ - лингвистическая переменная; ЬТ - лингвистический терм переменной; M - модификатор, которому соответствуют слова «очень», «более-менее», «нет» и др.

Формально лингвистическая переменная может быть представлена в виде кортежа:

ЬУ =

где ЖУ - имя лингвистической переменной; TSLУ - терм-множество лингвистической переменной; иЬУ - область определения каждого элемента TSLУ ; GLУ - синтаксические правила, часто в виде формальной грамматики, порождающие название лингвистических термов;

MLУ

- семантические правила, задающие функции принадлежности лингвистических термов, порожденных синтаксическими правилами GLУ ; ТЬУ - тип лингвистической переменной (симптома или заболевания). Формально лингвистический терм переменной может быть представлен в виде кортежа:

ьт=

где NLT - имя лингвистического терма; MF - функция принадлежности переменной лингвистическому терму. В качестве функции принадлежности используется функции следующего вида:

Мьт

1+(^

где Ь и с - параметры настройки: Ь - координата максимума функции тТЬ) =1; с - коэффициент концентрации-растяжения функции. Рабочая память

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

Под информацией пациента понимается 2 вида информации:

- персональная информация о пациенте: имя; электронная почта; пол; возраст и др.;

- количественные оценки поступающих симптомов.

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

Для оценки симптомов и заболеваний используется шкала, диапазону показаний которой соответствует окрестность [0, 1].

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

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

где NE - название элемента; IDE - идентификатор элемента; ATI- атрибут; TPE - тип атрибута элемента; VLE - значение атрибута элемента.

Формально рабочая память может быть представлена в виде кортежа:

Управление выводом диагностического решения

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

Управление выводом диагностического решения состоит из 4 основных шагов: сопоставление; разрешение конфликта; срабатывание; действие. Перед выводом решения необходимо ввести факты проявления симптомов в рабочую память. Поэтому управление выводом комбинировано осуществляется следующим образом [4]:

- применение обратного вывода осуществляет генерацию дополнительных вопросов по ведущим симптомам;

- вывод решения соответствует применению прямого вывода после каждого шага обратного вывода.

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

где КВ - база медицинских знаний; УСУ1 - вектор количественных оценок симптомов; УСУО -вектор количественных интегральных оценок заболеваний; ВС - стратегия обратного вывода; GQ

- генерация дополнительных вопросов; ЕС - стратегия прямого вывода; СЬ - сопоставление; БЬ

- разрешение конфликта; ОР - срабатывание; АТ - действие.

Стратегия обратного вывода. В [5] каждый из симптомокомплексов включает множество симптомов, причем некоторые симптомы могут одновременно включаться в несколько симптомокомплексов.

IE = {KB, VCVI, VCVQ, BC, GQ, FC, CL, SSL, QP, AT),

Как показано на рис. 2, симптом Ят одновременно включается в заболевания С и -С^, что приводит к пересечению эллипсоидов рассеяния. В эллипсоиде рассеяния С можно условно выделить область достоверного решения для С}, О}, и область недостоверного решения для С} при -С[, 0}2.

Рис. 2. Иллюстрация расположения эллипсоидов рассеяния заболеваний

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

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

выполняется по следующим формулам:

о г = I яе; ,

_ k

w=i;; i sf;,

SkeD, nDj

где W - область достоверного решения для D; W , - область недостоверного решения для D; SF; -коэффициент специфичности k-го симптома из симптомокомплекса D.

Для выделения окончательного диагноза для заболевания D из данного множества используется 3 основных критерия:

- наиболее минимальная область достоверного решения;

- наиболее максимальная текущая интегральная оценка заболевания;

- наиболее максимальная область недостоверного решения.

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

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

Стратегия прямого вывода. При буквальной реализации система проверяет применимость нечетко-продукционных правил каждого заболевания к каждому факту проявления симптомов в рабочей памяти, при необходимости выполняет их и переходит к следующему заболеванию, возвращаясь в начало при исчерпании всех заболеваний. Для обеспечения скорости при большой базе знаний и большого количества фактов в рабочей памяти применяется алгоритм Rete, предложенный Форджи в 1982 г. Данный алгоритм жертвует объемом памяти ради скорости. На рис. 3 представлена схема управления выводом диагностического решения.

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

На момент присваивания не все правила известны при условиях неопределенности. Поэтому нельзя строить единую сеть для всех правил. Такая модификация алгоритма Rete называется быстрыми алгоритма Rete, который был разработан в [4].

В модифицированной сети Rete должны храниться следующие компоненты:

- список активации, в котором хранятся родительские слоты, т.е. слоты фреймов-прототипов;

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

Рис. 3. Схема управления выводом диагностического решения

Рис. 4. Сеть процедур-демонов для фреймовой и нечетко-продукционной баз при использовании алгоритма Rete

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

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

- потенциальному заболеванию соответствует симптомокомплекс, в котором симптомы, совпадающие с поступающими в рабочую память симптомами;

- потенциальному заболеванию соответствуют возраст и пол пациента, который возможно страдает этим заболеванием.

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

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

Разрешение конфликта основано на принципе «первым пришел, первым обслужен», т.е. приоритет перед выбором первого из активных заболеваний для срабатывания. Кроме того, для выбора подходящих заболеваний используются следующие критерии:

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

- специфика. Активнее заболеванию соответствует симптомокомплекс с большим количеством фактов проявлений поступающих в рабочую память симптомов.

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

Срабатывание. При присваивании слоту значения выполняется срабатывание нечетко-продукционных правил, связанных с этим слотом, т.е. в левой части которых фигурирует значения этого слота. Применению таких правил соответствует изменение состояния области диагностики. Нечеткий вывод диагностического решения на модели Мамдани включает следующие шаги [6-8]:

Шаг 1. Фаззификация входных переменных, т.е. приведение количественных оценок симптомов к нечеткости.

Шаг 2. Агрегирование предпосылки. На основании набора нечетких правил определяются степени истинности предпосылки для каждого нечеткого правила.

Шаг 3. Активизация заключения. Определяется активизированная функция принадлежности оценки заболевания терму из заключения для каждого нечеткого правила.

Шаг 4. Аккумуляция заключений. В результате получается итоговое нечеткое множество каждой переменной заболевания.

Шаг 5. Дефаззификация выходных переменных, т.е. приведение нечетких значений переменных заболеваний к четкости.

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

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

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

Объяснение результативной информации

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

Формально запись журнала протоколирования вывода может быть представлено в виде кортежа:

HR = {NR, {SR}, {DHR}, {ARRk },

где HR - номер записи в журнале; {SR} - список предшествующих симптомов; {dhr } - список

активных диагностических гипотез; {ARR} - множество активизированных правил.

Формально объяснение может быть представлено в виде кортежа:

EM =

где {hr } - журнал протоколирования вывода; FELINF - выделение объяснительной информации из журнала на основании предшествующих симптомов.

Приобретение медицинских знаний

Модель приобретения медицинских знаний формально может быть представлена в виде кортежа:

KE =

где KB - база знаний; CRKB - построение базы знаний; RPSQ- извлечение знаний из отправленных анкет; LRKB - обучение нечетких баз знаний; TTKL - проверка базы знаний.

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

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

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

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

На этапе заполнения анкеты и отправления врачам все поля анкеты заполняются информацией медицинской диагностики. Затем анкета в письме отправляется врачам по возможной специальности.

На этапе получения письма и формирования ответов на вопросы врач решает принимать письмо и отвечать на вопросы. Отвеченное письмо отправляется пациенту на его электронную почту.

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

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

кодирования/декодирования нечетко-продукционной модели представления знаний, которая определяет некоторые параметры (параметры функции принадлежности; коэффициенты специфичности и уверенности), которые сводятся в единственный вектор. Значение одного параметра лежит в определенной окрестности, которую можно разбить на 2-16 интервалов. Затем для кодирования номера интервала можно использовать 16-битовое значение в коде Грея, при котором соседние числа отличаются меньшим количеством позиций.

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

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

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

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

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

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

Проверка базы знаний предназначена для оценки полноты и целостности базы знаний по тестирующей выборке [10].

Пользовательский интерфейс

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

UI={CDUSCDSlJ

где CDUS - преобразование входной информации пользователей в сообщения системы; CDSU -преобразование сообщений системы в выходную информацию пользователей; DCt - диалог между

i-м пользователем и системой; RUi - роль i-го пользователя; {PDj-} - множество возможных процедур i-го пользователя.

Информационные структуры медицинской экспертной системы дифференциальной диагностики

Схема архитектуры медицинской экспертной системы дифференциальной диагностики представлена на рис. 5.

Для сбора и отображения пользовательской информации используются браузеры (IE, Firefox, Safari, Opera, Chrome и др.). На этапе ввода информации реализуется диалог пациента с системой в режиме «вопрос-ответ».

Для обеспечения работы веб-приложений на основе веб-форм ASP.NET с использованием DotNetNuke требуется проприетарный набор серверов для нескольких служб интернета IIS, основным компонентом которой является веб-сервер, предоставляющий пользователю доступ к веб-страницам.

По умолчанию продукт поддерживает базу данных в DotNetNuke - система управления базами данных Microsoft SQL Server, которая относится к реляционным системам. В данной системе используется язык T-SQL для управления экземплярами компонента SQL Server Database Engine.

Рис. 5. Схема архитектуры системы

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

- уровень представления предназначен для взаимодействия с пользователем, отображения информации и элементов управления;

- уровень логики предназначен для реализации функциональности ядра системы;

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

Ядро системы реализовано в виде программных модулей. На рис. 6 представлена структурная схема ядра данной системы.

Заключение

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

Рис. 6. Структурная схема ядра системы

Предложены извлечение знаний из отправленных анкет, обучение нечетких баз знаний и тестирование полноты и целостности базы знаний. Управление выводом диагностического решения основано на комбинации прямого и обратного выводов. При обратном выводе дополнительные факты проявления симптомов получаются у пользователя-пациента, и сохраняются в рабочей памяти. В то время как прямой вывод позволяет вычислить на выходе количественные интегральные оценки каждого заболевания на основании поступающих в рабочую память симптомов. Для формирования стратегии прямого вывода рекомендовано использование быстрого алгоритма Rete. А также предложены модели объяснения результативной информации, рабочей памяти и пользовательского интерфейса. Предполагается разделение архитектуры медицинской экспертной системы дифференциальной диагностики на следующие уровни: уровень представления; уровень логики; уровень доступа к данным.

ЛИТЕРАТУРА

1. Искусственный интеллект. Базы знаний и экспертные системы: учеб. пособие / Дворянкин А.М., Кизим А.В., Жукова И.Г., Сипливая М.Б., ВолгГТУ. Волгоград, 2002. 140 с.

2. Джексон, Питер. Введение в экспертные системы. Пер. с англ.: уч. пос. М.: Издательский дом «Вильямс», 2001.

3. Джарратано, Джозеф, Райли, Гари Экспертные системы принципы разработки и программирование, 4-е издание. : Пер. с англ. М.: ООО «И.Д. Вильямс», 2007. 1152 с.: ил. Парл. тит. англ.

4. Сошников, Д.В. Методы и средства построения распределенных интеллектуальных систем на основе продукционно-фреймового представления знаний: дис. . канд. физ.-мат. наук: 05.13.11 / Сошников Дмитрий Валерьевич. М., 2002. 190 с.

5. Концептуальная модель объекта диагностики в компьютерных системах медицинской диагностики / А.И. Поворознюк // Системи оброб. шформацн. 2007. Вип. 9. С. 133-136. Библиогр.: 6 назв. рус.

6. Деменков Н.П. Нечеткое управление в технических системах: учеб. пособие. М: Изд-во МГГУ им. Н.Э. Баумана, 2005. 200 с: ил.

7. Лю Б. Теория и практика неопределенного программирования / Б. Лю, Пер. с англ. М.: БИНОМ. Лаборатория знаний, 2005. 416 с: ил.

8. Фоменков С.А. Математическое моделирование системных объектов: учеб. пособ.(гриф). Доп. УМО вузов по университетскому политехн. образованию / Фоменков С.А., Давыдов Д.А., Кама-ев В. А.; ВолгГТУ. Волгоград: РПК «Политехник», 2006. 180 с.

9. Катасёв А.С. Ахатова Ч.Ф. Нейронечеткая модель формирования баз знаний экспертных систем с генетическим алгоритмом обучения // Проблемы управления и моделирования в сложных системах: труды XII Межд. конференции. Самара: Самарский научный центр РАН, 2010. С. 615-621.

10. Статические и динамические экспертные системы: учеб. пособие / Э.В. Попов, И.Б. Фоминых, Е.Б. Кисель, М.Д. Шапот. М.: Финансы и статистика, 1996.

Ле Нгуен Виен -

аспирант кафедры «Системы автоматизированного проектирования и поискового конструирования», Волгоградского государственного технического университета

Vien N. Le -

Postgraduate

Department of CAD/CAE Systems, Volgograd State Technical University

Статья поступила в редакцию 15.03.14, принята к опубликованию 15.05.14