Ермаков А.Е. (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]), то ДП pm Концепция построения ИО и его функциональные возможности ИО поддерживает работу с базами спецификаций ЭС ПФД, сформированными при помощи ИС, входящего в состав АТ [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-функции ОС Windows, а также функции работы с графическими объектами графической библиотеки 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. Создание учебного клипа по работе с ИО осуществлялось с помощью программы Screen2EXE. Скомпилированный исполняемый файл ИО имеет размер 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 |
|