ISSN 0236-235X (P)
ISSN 2311-2735 (E)
3

13 Сентября 2024

Интерпретатор описаний экспертных систем психофизиологической диагностики


Ермаков А.Е. (alerma@rambler.ru) - Военно-медицинская академия им. С.М. Кирова, г. Санкт-Петербург, г. Санкт-Петербург, Россия, кандидат технических наук, Найденова К.А. (ksennaidd@gmail.com) - Военно-медицинская академия им. С.М. Кирова, г. Санкт-Петербург,, г. Санкт-Петербург, Россия, кандидат технических наук
Ключевые слова: психофизиологическая диагностика, база знаний, модель вывода диагностического заключения, формализованная модель знаний, автоматизированное создание экспертных систем, экспертная система, интерпретатор описаний экспертных систем
Keywords: psycho-physiological diagnostics, knowledge base, model of inference of diagnostic conclusion, formalized model of knowledge, the automated creation of expert systems, expert system, the interpreter descriptions of expert systems


     

В настоящее время для создания экспертных систем (ЭС) различного назначения используются автоматизированные технологии (АТ-ТЕХНОЛО­ГИЯ [1, 2], LEVEL5 OBJECT, TestGold и др.), инструментальные средства (ЭКО, G2 Gensym Copr., АСТest и др.), оболочки (EMYCIN, GURU, S.1, M.4, FLEX ToolKit, ACQUIRE и др.), CASE-сред­ства (UFO-ToolKit [3], ERWin [4], Rational Rose [5] и др.), среды программирования, поддерживающие несколько парадигм представления знаний (LOOPS, KEE, ART, CLIPS [6, 7] и др.), а также специализированные объектно-ориентированные языки программирования высокого уровня (UML [5, 8], OPS5, LISP, SmallTalk, CLOS, COOL, РЕ­ФАЛ [9], FRL, FLAVORS, Ruby, PROLOG и др.) и web-ориентированные языки (Exsys Corvid, JESS). При этом программные средства создания ЭС функционально могут быть объединены с программными средствами, обеспечивающими их практическое применение, либо они могут быть в значительной степени автономны друг от друга.

В статье рассматривается разработанный авторами проблемно-ориентированный интерпретатор описаний (ИО) ЭС, являющийся составной частью автоматизированной технологии (АТ) создания и практического применения ЭС для психологической и физиологической диагностики (ПФД) [10].

ИО предназначен для использования психологами, физиологами, врачами и предоставляет им возможность практического применения ЭС для исследования различных аспектов психического и физиологического состояний (ПФС) обследуемых – как больных, так и здоровых людей.

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

Автоматизированная технология создания ЭС ПФД

В состав автоматизированной технологии входит следующее:

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

–      проблемно-ориентированный ИО ЭС, сфор­мированных разработчиком при помощи ИС, – программная система, обеспечивающая практическую реализацию созданных ЭС ПФД: ведение БД обследуемых, реализацию диагностических процедур (ДИП), описанных в базе знаний ЭС, вывод на экран запросов к пользователю от диагностических средств (ДС) и информационных сообщений, пошаговую обработку полученных данных, управление ходом обследования (структурой ДИП), вывод диагностического заключения (ДИЗ), отображение на экране монитора и устройстве печати результатов обследования в форме таблиц и диаграмм, их хранение в БД и защиту от доступа посторонних лиц;

–      программа привязки ИС и ИО к аппаратным характеристикам конкретных компьютеров (BIOS, процессору и ряду других) для защиты этих программных систем от пиратского копирования, осуществляющая также формирование файлов, необходимых для работы ИС и ИО;

–      базы спецификаций ЭС ПФД, унифицированные по структуре, предназначенные для использования совместно с ИО и образующие вместе с ним ЭС ПФД, готовые к практическому применению;

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

Два последних компонента являются продуктом АТ и ее неотъемлемой составной частью.

При создании ЭС ПФД с помощью ИС и практической реализации этих ЭС средствами ИО использовалась расширенная формализованная модель класса решаемых диагностических задач [11], описывающая их структурные и функциональные параметры, а также семейство моделей вывода ДИЗ [12].

ИО позволяет использовать в ЭС ПФД вычислительные процедуры различных типов:

–      взвешенные математические функции: взве­шенная степенная функция p2=w´p1m, где p1, p2 – значения различных ДП; взвешенная экспоненциальная функция p2=w´ep1, где e=2,7182… – экспонента; взвешенная показательная функция p2=w´mp1; взвешенная функция натурального логарифма p2=w´ln(p1); взвешенная функция десятичного логарифма p2=w´lg(p1); взвешенная функция логарифма p2=w´logm(p1) с произвольным основанием m, где w, m – вещественные числа;

–      обобщенные арифметические процедуры (ОАП): взвешенное сложение и вычитание pi=w1´ ´p1±w2´p2± … ±wn´pn, взвешенное умножение pi=w´p1´p2´ … ´pn и взвешенное деление pi=w´pn/pk операндов, где w, {wk} – числовые весовые коэффициенты;

–      традиционные арифметические операции: сложение, вычитание, умножение и деление;

–      логические операции: конъюнкция операндов (формирующих ДП), дизъюнкция операндов и логическое отрицание значений операндов;

–      дополнительные вычислительные процедуры: взятие модуля значения ДП; взвешенное и простое суммирование числа совпадений значений формирующих ДП с ключами – априори задаваемыми значениями ДП; сравнение значений ДП с заданной для них функциональной нормой;

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

ОАП и взвешенные математические функции используются для уменьшения числа шагов вычислений, что обеспечивает упрощение структуры базы знаний (БЗ) и повышает скорость вывода в ЭС ПФД.

В ЭС ПФД, реализуемых посредством ИО, для организации вычислений могут использоваться четкие и нечеткие продукционные утверждающие правила. Четкие правила имеют вид: «если ДП pi=i1 или piÎ[i1, i2] & pn=n1 (pnÎ[n1, n2]) & ... & pk=k1 (pkÎ[k1, k2]), то вычисляемый ДП pm=m1», а нечеткие правила – вид: «если pi=i1 (piÎ[i1, i2]) & ... & pk=k1 (pkÎ[k1, k2]), то pm=m1 с коэффициентом истинности кипр=α, 0<α£1». Коэффициенты истинности кипр правил являются количественной мерой достоверности описываемых ими закономерностей в контексте решаемой задачи ПФД. Они могут напрямую задаваться экспертом или алгоритмически вычисляться в ходе вывода. Наряду с утверждающими правилами в ЭС ПФД могут использоваться четкие правила, отвергающие некоторые значения ДП. Отвергающие правила имеют вид: «если pi=i1 (piÎ[i1, i2]) & ...& pk= k1 (pkÎ[k1, k2]), то ДП pmm1 (pm[m1, m2] или pm{m1, …, m2}), где {} означает множество элементов».

Концепция построения ИО и его функциональные возможности

ИО поддерживает работу с базами спецификаций ЭС ПФД, сформированными при помощи ИС, входящего в состав АТ [10], имеющими структуру и формат, совместимые с требованиями ИО.

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

–      одно- и многозадачных ЭС, реализующих одну или несколько автономных интерактивных процедур ПФД;

–      ЭС ПФД, реализующих ДИП с линейной и нелинейной структурой;

–      ЭС ПФД, учитывающих при реализации ДИП особенности обработки данных для различных поло-возрастных групп обследуемых, что нередко требуется в психологической и физиологической диагностике, поскольку для одной и той же ДИП поло-возрастные нормы могут существенно отличаться;

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

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

–      ДС с различными видами стимульного материала, предъявляемого обследуемым, – с текстовыми запросами, HTML-, RTF- и SWF-файла­ми, различными типами изображений (JPEG, BMP, PNG, EMF, WMF, GIF и др.) и различными формами ответов на диагностические вопросы – фиксированными вариантами ответов и произвольными числовыми значениями;

–      ДС различной структуры и уровня обработки данных, начиная от обычных вопросников, передающих в ЭС только ответы на запросы, до мини-ЭС, самостоятельно выполняющих многоэтапную свертку исходных данных и их достаточно сложную обработку, как это делается в многоуровневых психологических личностных опросниках СМИЛ, 16 ФЛО Р. Кеттела, Адаптивность и др.;

–      ДС, представляющие собой исполняемые файлы сторонних производителей, совместимые с базами описания ЭС ПФД на уровне выходных данных.

В ИО имеются возможности:

–      хранения в БД ЭС для респондентов значений ДП, полученных в ходе диагностических обследований, однократно или многократно проведенных по одной или нескольким задачам ПФД;

–      поиска обследуемых и результатов диагностического обследования в БД по Ф.И.О., полу, возрасту, дате рождения, дате проведения обследования, а также сортировки обследуемых при отображении на экране монитора по тем же критериям;

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

–      отображения на диаграммах с диагностическими результатами названий и значений ДП, а также границ их функциональной нормы;

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

–      защиты персональных данных обследуемых и диагностической информации от несанкционированного доступа путем шифрования базы результатов обследования, для чего используются два алгоритма шифрования – быстрый CRC32-ал­горитм и более мощный 40-битный RSA-алго­ритм;

–      защиты от несанкционированного использования ИО посторонними лицами с помощью пароля.

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

Структура ИО

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

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

–      подсистема работы с базой результатов диагностического обследования, обеспечивающая регистрацию и удаление пользователей из БД, поиск в ней результатов обследования по различным критериям, включая дату и время его проведения, а также привязку результатов диагностики к обследуемым;

–      мультимедийная подсистема помощи и обучения пользователей работе с ИО;

–      подсистема настройки параметров интерфейса ИО под конкретного пользователя (типа, цвета, размера и начертания шрифта в таблицах и окнах ввода данных);

–      подсистема поиска на информационных носителях требуемых баз описаний ЭС ПФД и их подключения к ИО для обеспечения работы пользователей с этой ЭС;

–      подсистема диагностического обследования, обеспечивающая реализацию ДИП ЭС ПФД;

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

–      подсистема печати выходных таблиц, настройки параметров этих таблиц и устройств печати;

–      подсистема контроля вводимых данных и защиты от ошибок;

–      подсистема метазнаний об особенностях ДИП в классе решаемых задач ПФД, семантике и взаимосвязях спецификаций различных объектов ДИП;

–      подсистема информирования пользователя о разработчиках ЭС ПФД, а также предъявления ему инструкций и аннотаций к используемым в качестве ДС психологическим тестам;

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

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

Особенности программной реализации ИО

ИО имеет регистрационные свидетельства Роспатента №№ 2002610065 (от 22.01.2002), 2006610213 (от 10.01.2006), 2006610214 (от 10.01.2006) и 2006611891 (от 31.05.2006).

Разработка ПО первых версий ИО осуществлялась в среде ОС Windows 98 Second Edition на языке программирования Microsoft Visual Basic версий 3 и 4, а затем в рамках ОС Windows XP (Service Pack 1–3) в среде программирования Microsoft Visual Basic 6.0 Service Pack 4–6.

При создании ИО были использованы модули fast2001.ocx и fast2005.ocx из freeware версии 1.5a, библиотека Fast.lib 2000 for Windows, а также графическая библиотека libgfl254.dll версии 2.52, входящая в состав gfl SDK (www.xnview.com).

В состав ПО ИО входят 7 540 операторов программного кода, 232 локальные и глобальные подпрограммы – процедуры и функции, 1 модуль, 1 класс, 13 экранных форм, отчасти, но не всегда соответствующих функциональным подсистемам ИО, более 200 программ – обработчиков событий экранных форм и их структурных элементов – кнопок, сеточных форм, списков, объектов данных, объектов для работы с различными типами изображений, графиками, звуком, переключателей, окон ввода данных, рамок и др. К обработчикам событий относятся программы, связанные со стандартными событиями, присущими форме в целом и ее отдельным элементам.

В ИО используются API-функции ОС Win­dows, а также функции работы с графическими объектами графической библиотеки libgfl254.dll. Наряду с массивами и переменными в ИО используются стандартные структуры ОС Windows XP, структуры графической библиотеки libgfl254.dll, а также программные структуры, такие как Poc с элементами Value (значение ДП), Indic (индикатор вычисленности значения ДП: 1 – ДП означен, 0 – еще не означен), Type (тип ДП: 1 – измеряемый, 2 – вычисляемый), PokCode (двухзначный код ДП), NGrNorm (нижняя граница нормы для ДП), VGrNorm (верхняя граница нормы ДП), Numb (номер выбранного ответа); FC с элементами Red, Green, Blue – RGB-компонентами цвета надписей на диаграммах используемого объекта Microsoft Chart Control – комплекса программных средств построения графиков и диаграмм и др.

В ПО ИО также используются стандартные объекты файловой системы ОС Windows, методы работы с этими объектами, а также свойства этих объектов. При работе с файлами форматов dBase, используемыми для хранения спецификаций ЭС ПФД, формируются запросы на языке SQL, такие как «поле записи = значение», «поле записи содержит похожее (LIKE) значение», связанные для различных полей записи логическими операциями AND и OR. На некоторые файлы с помощью оператора SQL Where программно устанавливаются фильтры, позволяющие отбирать записи, относящиеся к определенной диагностической задаче и к определенному обследуемому. В ИО также используются программные средства работы с ключами системного реестра ОС и реализован, как отмечалось ранее, программный интерфейс с объектами Microsoft Excel, что позволяет ИО при наличии данного пакета программ на компьютере пользователя использовать его средства для построения лепестковых диаграмм. При этом используются объекты OLE, Object, Worksheets, Cells и др., методы работы с ними CreateEmbed и др. и свойства этих объектов Count, Name и др. В ИО широко используются программные обработчики ошибок On Error GoTo метка и On Error Resume Next (переход к оператору, следующему за оператором, вызвавшим ошибку).

При разработке ПО ИО авторами использовались freeware-справочники API-функций Windows API-Guide и ApiViewer. Для анализа и оптимизации программного кода ИО применялись freeware версии Aivosto Project Analyzer и программные модули Code Analyzer, Designer Analyzer и String Review из состава пакета программ AxTools Code Smart 2007 for VB6. При создании подсистемы помощи на базе HTML- и PNG-файлов использовались редакторы Microsoft Paint и WordPad, а также оптимизатор изображений FastStone Photo Resizer. Создание учебного клипа по работе с ИО осуществлялось с помощью программы Screen­2EXE.

Скомпилированный исполняемый файл ИО имеет размер 602 112 байт, однако при помощи компрессора исполняемых файлов UPX удалось уменьшить его размер до 150 528 байт.

ИО тщательно тестировалось в средах ОС Windows 98SE и Windows XP Service Pack 1, 2 и 3.

На основании изложенного можно сделать следующие выводы. В статье рассмотрены основные принципы построения, функциональные возможности и особенности разработанного авторами ИО, являющегося составной частью АТ [10] и используемого для практического применения ЭС ПФД, базы спецификаций которых были сформированы с помощью входящего в состав этой АТ ИС. ЭС ПФД, реализуемые ИО, предназначены для исследования различных аспектов психического и физиологического состояний обследуемых, а также для обучения студентов вузов и повышения профессиональной квалификации медицинских специалистов. ИО прошел практическую апробацию при реализации ряда прикладных ЭС, обеспечивающих решение различных задач ПФД, – дифференциальной диагностики нарушений водно-солевого обмена, кислотно-щелочного равновесия в организме, оценки профессиональной психофизиологической пригодности кандидатов и ряда других.

ПО ИО разработано в среде Visual Basic 6 Service Pack 6, предназначено для использования в ОС Microsoft Windows XP Service Pack 3 и более ранних версий, совместимо с Internet Explorer версий 5–8. БЗ и БД ЭС ПФД организованы в виде файлов формата dBase. В настоящее время ИО оснащается дополнительными моделями вывода диагностического заключения, рассмотренными в [12], ведется работа по тестированию ПО ИО в среде ОС Windows Vista и Windows 7.

Литература

1.     Рыбина Г.В. Задачно-ориентированная методология автоматизированного построения интегрированных экспертных систем для статических проблемных областей // Изв. РАН. Теория и системы управления. 1997. № 5.

2.     Рыбина Г.В., Пышагин С.В., Смирнов В.В., Чаба- ев А.В. Программные средства и технология автоматизированного построения интегрированных экспертных систем // Программные продукты и системы. 1997. № 4. С. 37–45.

3.     Маторин В.С., Маторин С.И., Полунин Р.А., По- пов А.С. Знаниеориентированный CASE-инструментарий автоматизации UFO-анализа // Проблемы программирования. 2002. № 1–2. С. 469–476.

4.     Кинжалин А. Моделирование баз данных при помощи ERwin // Компьютер-информ. 1998. № 12 (36).

5.     Кватрани Т. Визуальное моделирование с помощью Rational Rose 2002 и UML; [пер. с англ.]. М.: Вильямс, 2003.

6.     Джарратано Дж., Райли Г. Экспертные системы: принципы разработки и программирование. М.: Вильямс, 2007. 1152 с.

7.     Частиков А.П., Гаврилова Т.А., Белов Д.Л. Разработка экспертных систем. Среда CLIPS. СПб: БХВ–Петербург, 2003. 608 с.

8.     Буч Г., Рамбо Дж., Джекобсон А. Язык UML. Руководство пользователя; [пер. с англ.]. М.: ДМК, 2000.

9.     Гурин Р.Ф., Романенко С.А. Язык программирования РЕФАЛ Плюс. Переславль: Изд-во Переславльского ун-та, 2006.

10.  Найденова К.А., Ермаков А.Е. Технология автоматизированной разработки адаптивных компьютерных систем психологической и физиологической диагностики // Автоматизация проектирования дискретных систем: матер. 3-й Междунар. конф. Минск. 1999. Т. 3. C. 72–79.

11.  Найденова К.А., Ермаков А.Е., Боченков A.A., Булы- ко В.И., Маклаков A.Г. Модель знаний для автоматизиро- ванного проектирования экспертных психодиагностических систем // Искусственный интеллект-96: сб. науч. тр. 5-й национальн. конф. с междунар. участием. Казань. 1996. Т. 2. С. 275–279.

12.  Ермаков А.Е. Модели вывода в экспертных системах психофизиологической диагностики // Программные продукты и системы. 2012. № 2. С. 103–109.

References

1.     Rybina G.V. Izvestiya Rossiyskoy Akademii Nauk. Teoriya i systemy upravleniya [Journ. of Computer and Systems Sciences International]. 1997, no. 5.

2.     Rybina G.V., Pyshagin S.V., Smirnov V.V., Chabaev A.V. Programmnye produkty i sistemy [Software & Systems]. 1997, no. 4, pp. 37–45.

3.     Matorin V.S., Matorin S.I., Polunin R.A., Popov A.S. Problemy programmirovaniya [Programming problems]. 2002, no. 1–2, pp. 469–476.

4.     Kinzhalin A. Kompyuter–inform [Computer-inform]. 1998, no. 12 (36).

5.     Quatrani T. Visual Modeling with Rational Rose 2002 and UML. 3rd ed., Addison-Wesley Professional, 2003.

6.     Giarratano J.C., Riley G.D. Expert Systems: Principles and Programming. 4th ed., Course Technology, 2004.

7.     Chastikov A.P., Gavrilova T.A., Belov D.L. Razrabotka ekspertnykh sistem. Sreda CLIPS [Expert systems developing. CLIPS public domain software]. St. Petersburg, BHV–Peterburg Publ., 2003 (in Russ.).

8.     Booch G., Rumbaugh J., Jacobson I. The Unified Modeling Language User Guide. Pearson Education, 1999.

9.     Gurin R.F., Romanenko S.A., Yazyk programmirovaniya Refal Plyus [Refal Plus Programming Language]. Pereslavl, Univ. of Pereslavl Publ., 2006 (in Russ.).

10.  Ermakov A.E., Naidеnova K.A., Materialy 3 mezhdunar. konf. “Avtomatizatsiya proektirovaniya diskretnykh system” [Proc. of 3 int. conf. “Automated design of discrete systems”]. Minsk, 1999, vol. 3, pp. 72–79 (in Russ.).

11.  Naidеnova K.A., Ermakov A.E., Bochenkov A.A., Buly- ko V.I., Maklakov A.G. Sbornik nauchnyh trudov 5 natsional. konf. s mezhd. uchastiem “Isskusstvenny intellekt-96” [Proc. of 5 national conf. with int. participation “Artificial intelligence-96”]. Kazan, 1996, vol. 2, pp. 275–279 (in Russ.).

12.  Ermakov A.E. Programmnye produkty i sistemy [Software & Systems]. 2012, no. 2, pp. 103–109.



http://swsys.ru/index.php?id=3707&lang=%E2%8C%A9%3Den&like=1&page=article


Perhaps, you might be interested in the following articles of similar topics: