Содержание к диссертации
Введение
Глава 1. Автоматизированные системы проектирования в диагностике
1.1 Логика принятия решений 11
1.1.1 Принципы системной диагностики 11
1.1.2 Нечеткие представления 15
1.1.3 Консилиум и диспут 17
1.1.4 Обработка нечетких знаний 18
1.2 АПК для рефлексотерапии, содержащие подсистемы АП 21
1.2.1 Комплекс врача традиционной медицины «АРМ ПЕРЕСВЕТ»
1.2.2 РИСТА-ЭПД 27
Выводы 29
Глава 2. Автоматизированное проектирование в нечетких системах ...33
2.1 Нечеткие системы 33
2.1.1 Нечеткие множества 33
2.1.2 Операции над нечеткими множествами 34
2.1.3 Нечеткая логика и системы нечеткого вывода 38
2.2 Экспертная деятельность в САПР 45
2.2.1 Содержание экспертной деятельности в САПР 45
2.2.2 Анализ и синтез при автоматизированном проектировании. Определение экспертной деятельности 50
2.2.3. Этапы экспертной деятельности при автоматизированном проектировании 52
2.2.4 Формализация этапов экспертной деятельности
2.3 Математическая модель ЭАФ как тестирование сложной нечеткой системы 62
Выводы 69
Глава 3. Разработка автоматизированной системы проектирования 70
3.1 Разработка ядра экспертной системы 70
3.2 Модель коррекции для метода электронейростимуляции 19
3.2.1. Общие сведения о биоуправляемой электронейростимуляции
3.2.2. Концептуальная модель биоуправляемой электронейростимуляции 81
3.3. Автоматическое создание шаблона методики коррекции по результатам обследования методом ЭАФ 84
3.3.1. Понятие о рефлексогенных зонах и зонах Захарьина-Геда... 84
3.3.2. Процесс генерации шаблона методики коррекции 86
3.3.3 Применение ядра экспертной системы для проектирования методики коррекции 87
3.4 Аппроксимация параметров коррекции к режиму работы аппарата 94
Выводы 102
Глава 4 Информационно-аналитическая система «Бинарус» 104
4.1 Структура и архитектура системы 104
4.2 Реализация ядра ЭС 108
4.3 Обеспечение автоматизированного проектирования в «Бинарус» 111
4.3. Поддержка нескольких пользователей 112
4.5. Экспорт и импорт базы пациентов 113
4.6. Диагностический модуль 114
4.7. Терапевтический модуль 118
4.8. Автоматическое создание методики коррекции из результата оценки состояния 122
4.8. Аппроксимация параметров воздействия 124
Выводы 125
Заключение 126
Литература
- Нечеткие представления
- Операции над нечеткими множествами
- Общие сведения о биоуправляемой электронейростимуляции
- Поддержка нескольких пользователей
Нечеткие представления
Диагностический процесс, построенный на рассуждениях о признаках и их сочетаниях, обосновывающих или отвергающих определенную гипотезу, фактически опирается на логику аргументации, включающую и отношения порядка на множестве аргументов. Определенный параллелизм в достижении цели посредством рассуждения существует у врачей и в интеллектуальных системах. Моделирование медицинского консилиума может осуществляться с помощью теории диспутов [1].
Часто предметная область представляет собой слабо структурированную область знания, что создает серьезные трудности при построении систем процесса принятия решений. В то же время, в практической деятельности эксперт выстраивает последовательность умозаключений, опирающихся на представлениях о связи наблюдаемых признаков с определенным явлением.
Последовательность диагностических исследований может подвергаться коррекции, а иногда и коренной трансформации, в зависимости от получаемых в процессе обследования результатов.
В процессе диагностики наблюдаемые признаки оцениваются как факт за или против определенной гипотезы, как симптомы или антисимптомы (признаки-отрицания [2]) конкретного нарушения.
Целью дифференциальной диагностики, как выразил это Г. Эвербек [3], является определение кратчайшего пути от самого яркого нарушения к диагнозу. В процессе диагностики осуществляется, прямо или косвенно, учет как непосредственных, так и опосредованных отношений между признаками и болезнями [4].
Процесс диагностического рассуждения может возвращаться к предыдущим шагам и состояниям, удаляя некоторые допущения и аргументы из соответствующих множеств и рассуждая заново с учетом новых фактов (аргументов) и принятия новых допущений. В этих случаях проблема управления выбором правил вывода превращается в проблему реализации рефлексивного поведения системы [5].
Синтезом познавательных процедур, объединяющим правила правдоподобного вывода, порождающие гипотезы о причинах, правила вывода по аналогии, абдуктивный вывод и индуктивные обобщения, является JSM-рассуждение. Как и в логике аргументации, в JSM-рассуждении высказывания оцениваются посредством сопоставления аргументов «за» и «против» [6]. На расширенной логике аргументации реализованы такие JSM-рассуждения, что [7]: 1) условия их применимости могут быть точно определены (и даже аксиоматизированы); 2) состоят из последовательной рекуррентной реализации двух типов правил правдоподобного вывода, которые применяются к начальному состоянию данных и к последующим состояниям данных, порожденных применением этих правил; 3) подразделяются на правила порождения гипотез о причинах эффектов (множеств свойств объектов) и на правила прогнозирования наличия или отсутствия свойств у объектов (правила вывода по аналогии); 4) множество порожденных гипотез принимается лишь в силу выполнимости критерия достаточного основания, формулируемого как специальная аксиома, регулирующая и принятие гипотез и расширение исходной выборки (начального состояния базы данных - БД); 5) заключительным этапом является порождение индуктивных обобщений. При проведении консилиума аргументы отражают частные мнения специалистов и могут иметь различную истинностную оценку для его участников. Поэтому формализм для построения логического вывода на основе аргументации должен учитывать структуру множества аргументов, в частности, возможность существования отношения порядка на множествах аргументов [5], что определяется диагностической значимостью привлекаемых в качестве аргументов признаков.
Относительно четкие зависимости в системе отношений «следствие -результат» или «наблюдаемые признаки - идентификация состояния» справедливы для определенных, более или менее стандартных ситуаций, в которых аргументация строится на поиске хорошо изученных проявлений и использовании хорошо известных дифференцирующих признаков.
Диагностический процесс у врача высокой квалификации основывается на личностных представлениях, являющихся сплавом опыта (памяти о наблюдавшихся больных) и накопленных знаний, сочетающихся с преобразованными («пропущенными через себя») данными медицинской литературы. Этому соответствуют требования к решателям интеллектуальных партнерских систем [8], которые используют логики объективного и субъективного (экспертного) знания.
Операции над нечеткими множествами
Пусть А и В - произвольные нечеткие множества на одном и том же универсуме X. Пересечение двух нечетких множеств А и В некоторое третье нечеткое множество С, заданное на том же универсуме X, функция принадлежности которого определяется по формуле цс(х) = min(uA(x), цв( )), (V Є X) (2.4) Обозначается С = А П В [32] Операцию пересечения нечетких множеств иногда называют min-пересечением или Л-пересечением. Последнее обозначение связано с определением логической операции «И», которая в математической логике обозначается «Л». Соответственно функцию принадлежности пересечения цс(х) в этом случае записывается в виде: ИС00 = ИА( )ЛИВ00 (2-5) При этом знак Л используется как синоним операции нахождения минимума. Объединение двух нечетких множеств А и В некоторое третье нечеткое множество D, заданное на том же универсуме X, функция принадлежности которого определяется по формуле ц0(х) = тах(цА(х), цв( )), (ух є X) (2.6) Обозначается D = A U В [32]
Операцию объединение нечетких множеств иногда называют тах-объединением или V- объединением. Последнее обозначение связано с определением логической операции «ИЛИ», которая в математической логике обозначается «V». Соответственно функцию принадлежности пересечения Цо(х) в этом случае записывается в виде: HD(X) = UA(X)VUB(X) (2.7) При этом знак V используется как синоним операции нахождения максимума. Разность двух нечетких множеств А и В некоторое третье нечеткое множество Е, заданное на том же универсуме X, функция принадлежности которого определяется по формуле цЕ(х) = тах(цА(х) - цв(х), 0), (V Є X) (2.8) ОбозначаетсяЕ = А\В [32] Симметрическая разность двух нечетких множеств А и В некоторое третье нечеткое множество, заданное на том же универсуме X, функция принадлежности которого определяется по формуле Цлев(х) = І ІІАОО - ів( ) І. (Ух Є X) (2.9) Обозначается А 0 В А 0 В = (А\В) U (В\Л) (2.10) Дополнение нечеткого множества А, обозначается А и определяется как нечеткое множество А = [Х\ЦА(Х)}, функция принадлежности которого ( определяется по формуле: цА(х) = 1 - цА(х) (2.11) Выше были определены операции объединения и пересечения двух нечетких множеств. Фактически эти определения - специальные случаи использования общего понятия Т-норм и S-конорм. Т-нормы и S-конормы обладают двумя важными свойствами. Т(х, у) и S(x, у) - это функции двух действительных переменных, определенных на интервале [0, 1]. Значения функций Т и S также находится в интервале [0, 1]. Используя любые Т-нормы и S-конормы можно обобщить операции над нечеткими множествами. АпВ = {Ь\Т(цА,цв)} (2.12) A U В = {Ъ \S(fiA,fiB)} (2.13) Существует множество формул для подсчета Т-норм и парных им S-конорм. Т-нормы и S-конормы обладают общими свойствами. Область определения и область значений 0 1,0 у 1 (2.14) 0 7Y ,y) l,0 5(x,y) l (2.15) Коммутативность Т(х,у) = T(y,x),S0c,y) = S(y,x) (2.16) Ассоциативность T(T{x,y),z) = r(x,r(y,z)),5(5(xfy),z) = S{x,S(y,z)) (2.17) Монотонность Специальные значения ПО, у) = 0,5(0, у) = у (2.18) Г(1,у) = У,5(1,у) = 1(2.19) Для каждой пары справедливы следующие уравнения: Т(х,у) = 1 - 5(1 - х, 1 - y),S(x,y) = 1-Щ-х,1-у) (2.20) Для любых двух Т-норм и S-конорм справедлива следующая последовательность: 0 Цх,у) Г(1,у) у 5(0,у) S(x,y) 1 (2.21) Помимо рассмотренных существуют и другие операции над нечеткими множествами [33,34].
Нечетким k-арным отношением Q, заданным на множествах (универсумах) Х1,Х2,-,Хк, называется некоторое фиксированное нечеткое подмножество декартова произведения этих универсумов [35]. Q ={(x1,x2,...,xk)fnQ(x1,x2,...,xk),} (2.22) xt E Xit і = 1... к tiQ:X1xX2x... Xk - [0Д] (2.23) HQ - функция принадлежности нечеткого отношения. На практике широко применяются бинарные нечеткие отношения, особенно заданные на одном универсуме. Существует несколько способов задания нечетких отношений [30]: В форме списка с явным перечислением всех кортежей нечеткого отношения и соответствующих им значений функции принадлежности. Аналитически в форме некоторого математического выражения для соответствующей функции принадлежности этого нечеткого отношения. Графически в форме некоторой поверхности или совокупности отдельных точек в трехмерном пространстве. В форме матрицы нечеткого отношения В форме нечеткого графа. Над нечеткими отношениями можно производить множество операций, как и над нечеткими множествами, так и сугубо специфичные для отношений [33,34]. Пусть Р uQ - бинарные нечеткие отношения. Q = {( t. Xj), HQ fa, XJ)}, ХІХЬ XJ Є Х2 (2.24) Р = {(xj,xk),nP(xj,xk)},Xj Є Х2,хк Є Х3 (2.25) Нечеткое бинарное отношение, заданное на декартовом произведении XtxX3 и обозначаемое XXXZ, называется композицией бинарных нечетких отношений Р и Q, а его функция принадлежности определяется следующим выражением: VQp(Xi,xk) = ma XjEx2 (min (/ (хрХ;),/ ( ;,хк))) (2.26)
Общие сведения о биоуправляемой электронейростимуляции
Для решения задачи генерации лингвистических оценок используются самые различные шкалы. Предполагается следующее решение задачи с помощью MB. Для каждой переменной х, определенной на подмножествах целых или рациональных чисел, строятся нечеткие интервалы цх/(а) Функция принадлежности задается экспертом как одномодальная и квазивогнутая для большинства базовых переменных. Интервал [0, 1] градуируется с помощью линейной или нелинейной шкалы согласно стадиям качества. В результате получаем функцию г1(со) для решения задачи
генерации лингвистических оценок. Означенная задача приводит к преобразованию или фазификации ВР дгДО к ВР Зсу(/). Результатом этапа фа-зификации и моделью данных в ходе дальнейшего анализа является нечеткий временной ряд. Введем его определение.
Нечетким временным рядом (НВР) будем называть упорядоченную последовательность наблюдений над некоторым явлением, характер которого изменяется во времени, если значение некоторой величины в момент / выражено с помощью нечеткой метки. Нечеткая метка представляется лингвистическим термом и функцией принадлежности цятгмам( ) где СО — носитель нечеткого множества. Анализ тренда выполняется экспертом после фазификации, т. е. анализируется нечеткий ВР (НВР) ,(/). Для каждого НВР может быть выбрана аппроксимирующая функция с непрерывной областью определения — подмножеством рациональных чисел (целых) и дискретным множеством значений Xj. Экспертная деятельность в силу принципа конструктивной неопределенности усиливает субъективную нечеткость и нуждается в новом понятии тренда по сравнению с традиционным — «знак производной».
Оценка тенденции динамики переменной заключается в соотнесении графика ВР и понятий «рост», «падение», «стабилизация», «колебания», «хаос», которые являются более широкими, чем классические математические определения изменений монотонных функций. Таким образом, решение задачи анализа тренда выражается функционалом Тг/=Тгепс1({5?,Ю}) (25?) Тг/ - наименования тренда («рост», «падение», «стабилизация», «колебания», «хаос»,...,); Trend - функционал; {Xj(t)} - дискретно-значный ВР. Множество ВР %{t) является бесконечным. Конструктивным уточнением функционала Trend может служить набор процедур идентификации типа тренда для значений ВР, полученных в результате измерений. Алгоритм процедуры можно представить в виде продукций. Таким образом, характеристика тренда получается с помощью эмпирических правил. Например, для группы «стабилизация» правило может быть следующим: значения переменной находятся на двух смежных уровнях оценок; значения переменной находятся в одном интервале оценок. Эмпирические правила позволяют определить тенденцию, пренебрегая локальными экстремумами, а также провести сравнительный анализ графиков с выделением общей и противоположной тенденций. Традиционное решение математической статистики, состоящее в поиске авторегрессии, затруднено из-за малого объема выборки. Оценка тренда ВР может служить основой для решения задач аппроксимации, интерполяции, экстраполяции (прогнозирования) ВР. Для обобщения предложенной точки зрения на анализ тенденций НВР введем определение его тенденции.
Тенденцией нечеткого временного ряда будем называть нечеткую метку, выражающую динамику (систематическое движение) НВР. К значимым наименованиям тенденции отнесем следующие нечеткие метки: рост падение; стабилизации; колебания; хаос. Разумеется, для нечетких термов, обозначающих тенденцию, возможно применение модификаторов «очень», «более-менее» и т. д. До настоящего этапа рассматривались аспекты анализа отдельных параметров объекта. Очевидно, что последний является многомерным, и, разобравшись с оценками и тенденциями отдельных параметров, необходимо разобраться с состоянием объекта в целом. Задача распадается на две подзадачи: выделения множества базовых переменных, зависимых переменных и зависимостей между ними, определяющими правила поведения объектов и генерации интегральной оценки состояния объекта. Первая из подзадач решается традиционными методами регрессионного анализа, для второй эффективно использование мягких вычислений. Формализуем задачу построения интегральной оценки.
Интегральная оценка представляет собой дискретное конечное множество характеристик состояний многомерного объекта I меньшей мощности, чем множество состояний объекта, составленное комбинаторикой оценок отдельных параметров, т, е. интегральная оценка всегда является группировкой, обобщением состояний и строится экспертом на основе сопоставления множества преобразованных ВР ,(/) Следовательно, задача интегральной оценки — это поиск функционала Estimate: Г = Estimatedx t)},..., ),...,? )) П.5$)
Функционал Estimate может быть определен феноменологически для различных объектов. Уточним понятие интегральной оценки состояния с помощью следующего определения. Интегральным оцениванием состояния объекта будем называть диагностирование, т. е. выбор релевантного наименования состояния из всех состояний, известных для проблемной области. Характерными примерами являются списки возможных дефектов устройства, режимов эксплуатации системы, степеней износа и т. д.
Задача прогнозирования может рассматриваться в узком и широком смысле. В узком смысле прогнозирование связано с построением для отдельной переменной х,(0 преобразованного ряда оценок 5с.(/) тренда 7 /, значения Зс,(/л+1), где п — точка ряда Т, для которого известно последнее фактическое значение. Прогнозирование — это вычисление аппроксимирующей функции, заданной нечетким временным рядом, т. е. прогнозирование в узком смысле связано с построением функционала hprognosi ) = ForecastdXiitlTr/}) такого, чтобы ошибка прогноза стремилась к минимуму: l 0 ( +i)- ( +i)- min Прогнозирование в широком смысле — это построение интегральной оценки /т(/„+1)по известным ряду интегральных оценок I(i)) и множеству трендов {Trt(t)}: Im(t„+i) = Forecast{{I{t)} I / = 0,...,O _ (2 60) При прогнозировании эксперты пользуются различными подходами. На практике при решении задачи прогнозирования в узком смысле можно пользоваться методами прогнозирования стационарного ряда: методом средней и экспоненциально взвешенной средней. Результативным решением задачи поиска интегральной оценки представляется и метод анализа иерархий Саати [41]. В этом случае функционал Forecast представляет собой итерацию процедур построения иерархий, попарных сравнений (шкалирования) и процедуры многокритериального выбора. Представляется уместным использование MB как при шкалировании, так и при многокритериальном выборе.
Поддержка нескольких пользователей
В реализации трехуровневой архитектуры в качестве сервлет-контейнера используется Apache Tomcat, web-сервисы реализованы на Apache Axis.
Взаимодействие с аппаратом осуществляется по порту RS-232 (СОМ) с помощью стандартного расширения Java JavaComm реализованной в библиотеке RXTX (httpiZ/rxtx-org). Для связи через USB в связи с некоторыми сложностями коммуникации ПО и аппаратуры [86] предлагается использовать специальное переходное устройство.
В госпитальных информационных системах принято, что интеллектуальная система ведет диалог с персоналом «на равных» и управляет поиском решений [87, 88].
Решающие правила содержат необходимую информацию для логического вывода. Иногда задачу решают несколькими способами и проводят сравнение решений [89].
В разработанной системе есть только ядро для одной специализированной ЭС, но как было отмечено во второй главе, операции нечеткой логики могут быть выполнены различными способами по различным расчетным формулам. Выбор этих формул является достаточно произвольным и определяется характером модели. Проблеме подбора формул посвящены работы [33,34]. Так как эти четыре операции являются бинарными, логично создать интерфейс, получающий на входе два значения и выдающий на выходе третье.
Представление логической операции Набор операций объединен в соответствующий интерфейс. Каждый конкретный экземпляр ЭС использует определенный набор операций нечеткой логики. analysis Freq ) Кластер ЭС 1 «interface» ОперацииЭС + названиеО: void + конъюнкиия void + дизъюнкция!): void + импликация!): void + композиция!): void «interfece» ЭС Ф я1 t 1 01 1t ЭС1 ЭС2 ! «interlace» Формула + названиеО: void+ вычислить(Л иЫе, double): double Рис. 4.8. Интерфейс операций для ЭС.
Экземпляры ЭС объединены в кластер и работают параллельно и независимо друг от друга. После каждого этапа логического вывода происходит синхронизация входных данных. По окончании работы каждой ЭС, результаты их работы могут комбинироваться различными способами, начиная от простого пересечения или объединения и заканчивая более сложными алгоритмами.
В среде «Бинарус» реализована возможность параллельной работы ядер ЭС. По умолчанию диспетчер работает в один поток, но пользователь может указать и большее количество потоков. Особенно это актуально на современных многоядерных процессорах.
Набор операций нечеткой логики представляет собой директорию, в файловой системе хранящую файлы в которых содержатся фрагменты кода на языке Groovy, реализующие интерфейс формулы.
База знаний ЭС хранится в СУБД и описывает взаимосвязи нарушений и действий при этих нарушениях.
Сценарии проектирования методик представляет собой директорию, в файловой системе хранящую файлы в которых содержатся фрагменты кода на языке Groovy, реализующие интерфейсы для точек расширения алгоритма проектирования методики.
Описания аппаратов хранятся в XML-файлах, в которых указаны все возможные режимы работы аппарата.
Набор функций оценок представляет собой директорию, в файловой системе хранящую файлы в которых содержатся фрагменты кода на языке Groovy, реализующие интерфейс формулы оценки. Среда Бинарус является многопользовательской. Для начала работы необходимо пройти идентификацию и аутентификацию. У пользователи отличаются по своим ролям. Существует два типа пользователей врач и медсестра. Медсестре разрешено только проводить терапевтические сеансы.
База пациентов для врачей является общей. Но каждое действие, выполненное в системе, протоколируется и связывается с выполнившим его пользователем. Действие это в основном сеансы диагностик.
Из-за наличия протокола действий становится невозможным удалить пользователя с историей (протоколом) действий. Его можно только заблокировать для доступа в систему. Что в рамках предметной области является полностью логичным решением, так как в медицине существует персональная ответственность за свои действия.
Поддержка нескольких пользователей реализована во всех трех архитектурах. Но наиболее полно представлена в трехуровневой архитектуре.
Иногда необходимо осуществить перенос информации об одном пациенте или всю базу пациентов с одного рабочего места на другое. В рамках системы введено понятие персональной электронной карты пациента. ПЭКП - это файл с информацией о пациенте, всех его обращениях, проведенных обследований и выполненных терапевтических курсах. Пользователь системы может экспортировать ПЭКП, а затем выполнять с ней операции как с обычным файлом. Например, сохранять на носителях информации или пересылать по электронной почте. В любой момент ПЭКП можно импортировать в систему. И на рабочем месте появится полная информация о пациенте.