М.В. БУРЦЕВ, асп НТУ "ХПИ" (г. Харьков
AM ПОВОРОЗНЮК канд техн наук, проф НТУ "ХПИ" (г. Харьков
ПРОГРАММНАЯ РЕАЛИЗАЦИЯ КОМБИНИРОВАННОГО
РЕШАЮЩЕГО ПРАВИЛА ДЛЯ ЗАДШ МЕДИЦИНСКОЙ
ДИАГНОСТИКИ
Рассмотрены современныетехнологии и средства разработки программного обеспечения выполнен анализах достоинстеи недостатков Предложенподходк программной реализации комбинированногсрешающегоправилэ включающеговероятностныйметод Вальдам описание структурысимптом оком плексо^Л л.: 2.Библиогр: 11 назв
Ключевые слова технологии и средства разработки программного обеспечения комбинированнорешающее) равилдшетодВальдэсимптомокомплекс
Постановка проблемы! анализ литературы Динамичноер азвитие информационных технологий не только затрагивает совершенствование аппаратнойчасти но и порождаетновые подходык программированной также новую методологию разработки и проектирования программных компонентов* комплексов Процесс созданиясовременногопрограммного продукта шагнулдалексвпередюсравнениксовременаммгонсолии первых оконных приложений Разработкавсейс истемы" с нугЫ' давно сменилась использованиебиблиотеотэтовых структур данныхи типовыхалгоритмов1х обработки (Standard Template ИЬгагдля C++ [1], .NET Frameworkflnfl языковых средстр входящих в состав Microsoft Visual Studio [2], Java Development Kit [3]).B отношении процессапроекгированияп рограммного обеспечения(ПО) также произошли существенныеизменения связис появлением11М1_ [4], который позволяетабстрагироватьсял конкретного языка (в рамках объекгнеориентированноюарадигм^ и сосредоточится^ создании необходимых для разрабатываемого ПО сущностей В метедологическомпланеакгивноразвиваетсяредложеннаЖ. Беком техн и ка экстремального программирования [5]. В связи с многообразием существующих средств разработки ПО, возникает проблема выбора оптимальногсмнструментарияп методикццля реализациюистемьподцержки принятия решений в медицине в целом и диагностической подсистему основаннойна комбинированнолрешающем1равиле в частности
Целью статьи является обзор современных средств разработки и проектирования! рограммногообеспечения ц елью обоснования методики реализациодиагностическойп од систему основаннойна комбинированном решающемправиле включающемвероятностныйметодВальдаи описание структуры симптомокомплексав
ОбзорсредстфазработккПО. Сегоднясуществуетболыиое<оличество языков программирования^ диалектор а также сред разработки Наиболее
привлекательнымиявляются те из них, которые позволяют создавать приложения являющиесжроссплатформеннымнв уровнезапуска Лидерами в данной области являются платформы.NET (Microsoft) и Java (Oracle Corporation £анее Sun Microsystems))npn э toni п оследниеверсии .NET FrameworkflOcrynHbi только для ОС Windows £ отличиеот Java: Oracle/Sun предоставляереализациюіауа Runtime Environment (JR^k для Windows, так и для NlX-cncreiv) a Apple -для Mac OS Х).Для NIX-системна момент написания статьи в рамках проекта Mono реализованаподдержка .NET Framework 2.(fe то времжак готовитсяк выходуверсия4.0для Windows.
К томуже, коммерчески йгарактерПО от Microsoft в рядеслучаевделает его менеепривлекательнылбюджет отечественныжледицинскихучреждений в большинствесвоем не в состоянии обеспечить требуемую сумму для приобретенижсегонеобходимогспицензионногспрограммногообеспечения Java лишена этого недостатку являясь свободно распространяемым инструментом
Учитывая экономическую составляющую! наличиеп оследнихверсий средвыполненияцля бoльшинcтвacoвpeмeнны>глaтфop^<Windows, UINIX, Linux, Mac OS Х)в качествесредствфазработкіеьібраниауа [6].
В качестве IDE выбран Eclipse [7] -свободная/інтегрированнаяреда разработки модульных кроссплатформенныхлриложений Развиваетсяи поддерживается Eclipse Foundation. ПривлекательностьЕсНрэе Platform состоите том, что существуетмножестводополненийпозволяющиэснизить временныезатратына разработк/10. Так, компания Зоуаіеспредоставляет проекгеиМІ_2.0,дополняющийЕсІір5Єинструментоі\/иМІ_-моделирования
Обзор средств проектирования ПО. На стадии проектирования использованы возможности UML - языка графического описания для объекгногомоделированив областиразработкшрограммногообеспечения UML является языком широкого профил? это открытый стандарт использующийграфическиеобозначениэдля созданияабстракгноймодели систему называемойUML моделью UML был создан для определения визуализаци^проектированияг документирования основномпрограммных систем UML не является языком программирования но на основании разработаннонюделквозможнакодогенерация
Язык UML является достаточно строгим и мощным средством моделированияютороеможетбытьэффективнюспользованодляпостроения концептуальны* логических и графических моделей сложных систем различногсцелевогсназначенияЭтотязык вобрагв себянаилучшиекачества и опыт методовпрограммнойинженериі$ которыес успехом использовались на гротяженитоследнихпетпри моделированиболыиихи сложныхсистем
Реализация комбинированного решающего правила При
реализации комбинированного решающего правила (РП) [8] необходимо созданиеклассовдля реализациюущностейпредметнойобластиа именно
признак диагно? интервал нормд последовательностшнтервалдв решающееправило Эта задача решается с помощью иерархии классов изображенные диаграммфис 1).
Interva
#hiBound: double #loBound: double #left: IntervalBound #right: IntervalBound
+lnterval()
+contains()
+histogramAmplitude()
+width()
------------If-------------
N
\
N
\
<import> \
Norm Node
#hiAge: short #anc: Node
#loAge: short #desc: List<Node>
User, booleai #dat<: Objec
+Norm() +Node()
+isMale() +...
+isFemale() +isRoot()
<import> k—
BinaryTre<
#root: Node
+BinaryTree()
+traversal(
<import>
Diagnos<
#id: Int
#name: String ШЫ: Strinc
+Diagnose()
+toString()
«import»/'
DiagnoseTre
+DiagnoseTree()
<import>
1 \ : к CombinedSolveRu
Sign / 1 N IntervalSe
t #tree: DlagnoseTree #a: double #b: double #exam: List<Object>
#name: String #norm: Norm #data: List #diagnose: Diagnose 1 1 <import> #slgn: Sign #lset: Llst<lnterval> #d0: List<Diagnose> #d1:List<Diagnose
+ComblnedSolveRule() +diagnostics()
+Sign() +variationRange() +lntervalSet() +integralError()
+optimize()
Рис 1.Диаграммаслассов
Основными сущностями являются признаки диагноз реализованные классами Sign и Diagnose соответственно Sign обеспечиваетвозможность представление системшыбранногспризнакас учетом группы диагнозовдля подмножестваобъектовобучающеРвыборки хранящихся базеданных(БД). Остальныесущности импортируют Sign и Diagnose ^апрямук? или через другие сущности(классь), осуществляумх обработку Interval и IntervalSet выполняютразбивкупризнакана диагностическизначимыеинтервалы[9] с минимизациейинтегральною шибки аппроксимациитеоретическогозакона распределенюистограммой a CombinedSolveRule нредставляереал изацию алгоритма комбинированного решающего правила CombinedSolveRule
реализует интерфейс Diagnostics, который порождает семейство классов осуществляющихдиагностику возможна реализациядетерминистическрй информационжвероятностноРгюгики, или методовраспознавания)бразор что вместес подходомпозднегосвязывани^применяемог® Java,позволяет использоватьполиморфноесозданиедиагностирующихобъектов во в ремя выполнения!рограммы
Данные обучающейвыборки хранятсж MySQL-базе данных [10] (для проектирования использовался MySQL Workbench), структура которой приведенашрис 2.
Таблицд5!дпхранитописани€признаков(тип, названиашипсевдони^ и совместна: ЕхаггппайопСог^ег^используетсщля построенияновых таблиц различныхобследованийпюбой структуры Измеренныезначения1 ризнаков для объектов диагностики (представленныхтаблицами Person и Patient) хранятся отдельныхгаблицауименакоторыхуказаныв полеТаЫетаблицы ExaminationContent. SignDiagnose - представляет структуру симптомокомплексавполе Sign Weight указываетна вес признака idSign в симптомокомплексе заболевания idDiagnose; FuzzyFunction -описание л ингвистической1еременнойсимптомд атакжефункцийпринадлежност^11 ] на языке Fuzzy Control Ьапдиадврпользуемыйиблиотеко^иггуЬодю.
Данные полученные^ таблиц представляющивбследованияшляются основойдля объекгивнойсоставляющекРП (вероятностногслодходЗ, а его субъективная составляющая основывается на данных из таблицы SignDiagn0se06pa60TK0fe™x CBefleHMieaHHMaeTCwiaccCombinedSolveRule, осуществляющийюследовательныаналиэнаборапризнако? находящихся узлахдвоичногсдеревадиагнозорпредставленногвпассом01адпо5еТгее.
Разработаннаяподсистемапостановкцци агноза обучаласьна данных выборки npeflCTaBneHHoma6nMMetdinicalBlood (<линическийаналиэ<рови), содержащей34 записи включающейЭ признаков Юдиагнозов
Связьуровняданных(БД, рис 2) и уровнялогики системы(иауаклассц рис 1) осуществляетсяс помощью технологии объекгнереляционного проецирования Для этого использована библиотека Hibernate [7], предоставляющаяёгкий в и спользовании<аркасдля отображенияэбъекгн© ориентированнойиоделццанныхв традиционныфеляционныёоазыданных Н1Ьеп^енетолькорешаетзадач\связиклассх^ауастаблицам1базьщанных (и типовflaHHbixJavacTMnaMHflaHHbixSQL), но также предоставляесгредства для автоматическойгенерации и обновления набора таблиц построения запросов* о бработкт олученныхданныхи можетз начительноуменьшить время разработки которое обычно тратится на ручное написание SQL- и JDBC-кода
Выводы Проведен анализ существующих средств разработки и проектирования! рограммногообеспечения Предложенвариант реализации комбинированного решающего правилу основанного на объединении вероятностногоподхода (метода Вальдф и описания симптомокомплексов (нечеткаялогика). Приведенадиаграммжлассое участвующихв реализации РП, а также структура базы данные используемой разработанной диагностической! одсистемой
Списокл итературы 1. ШилдтГ. Полный справочникпо C++: Пер с англ /Г. Шилдт - М.:
ООО " И . ДВильямС, 2004. - 800с. 2. Пауэрс/1. Microsoft Visual Studio 2008Пер с англ / Л.Пауэрд М. Снелл- СПб.: БХВ-Петербург2009. - 120Gb. 3. ШилдтГ. Полный справочникпо Java, 7е издание Перс англ / Г. Шилдт - М.: ООО "И ..ДЗильямй, 2009. - 1040с.
4. РамбоДж. UML 2.0. Объектнэориентированноалоделированив разработка 2-е издание 1Дж. РамбрМ. Блаха-СПб.: Питер 2007. - 544;. 5. Бек К. Экстремальноерограммирование разработкаюреэтестирование^ К. Бек - СПб.: Питер 2003. - 224;. 6. ЭккельБ. Философияіауа,
4-е издание Пер с. англ / Б Эккель - СПб.: Питер 2009. - 640з. 7. ХемраджаниА. Гибкая разработка приложений на Java с помощью Spring, Hibernate и Eclipse: Пер с англ IА Хемраджани - М.: ООО "ИД. ВильямС, 2008. - 352 с. 8. Бурцев М.В. Синтез комбинированного решающего правила в задаче медицинской диагностики / М.В. Бурцев А.И. ПоворознюкІІ Вісник Національноготехнічного університету "Харківський політехнічний інститут”. Збірникиаукових праць Тематични^випуск: Інформатика моделювання-Харків:
НТУ "ХПІ". - 2009. -№43. -С. 27 - 33.9. ПоворознкяА.И. Формированиедиагностических интерваловшсленныхпризнаковпри дифференциальнедиагностикє/ А.И. ПоворознюііІ Вісник Хмельницькогонаціональногсуніверситету- Хмельницький ХНУ, 2007. -T. 1. -№3. -С. 106—
109.10. КузнецоеМ.В. СамоучительМувОІ. 5 І М.В. Кузнецов И. В. Симдянов- СПб.: БХВ-Петербург2007. - 56Gb. 11. РутковскаїД. Нейронныесети, генетическиеалгоритмьи нечеткие системы Пер с польск И.Д. Рудинского ІД. РутковскарМ. ПилиньскирЛ.Рутковский- М.: Горячаяпиния-Телеком 2006. - 452;.
СтатьяіредставленАт.н проф НТУ "ХПИ" СерковыыА.А
УДК 681.3
Програмна реалізація комбінованоговирішального правила для задач медичної діагностики/ БурцевМ.В ., ПоворознюіА.І. // Вісник НТУ "ХПІ". Тематични^вип уск Інформатика моделювання-Харків: НТУ "ХПІ". -2010. -№21. -С. 12-17.
Розглянутосучасні технології та засоби розробки програмного забезпеченнявиконаний аналізїх перевагта недоліків Запропонована ідхід до програмної реалізації комбінованого вирішального правила що включає імовірнісний метод Вальда та опис структури симптомокомплексівіл.: 2. Библиогр: 11 назв
Ключові слова технології та засоби розробки програмного забезпечення комбіноване вирішальнеіравилометодВальдзсимптомокомплекс
UDC 681.3
Software implementation of combined solving rule for medical diagnostics tasks /Burtsev M.V., Povoroznuk А.І/ Herald of the National Technical University "KhPI". Subject issue: Information Science and Modelling. - Kharkov: NTU "KhPI". - 201BIS-21. - P. 12 - 17.
The modern technology and software development tools are reviewed, and analysis of their merits and demerits is made. The software implementation of the combined solving rule, including a probabilistic Wald's method and complex of symptoms structure description is offered.
Key words:technology and software development technology, combined solving rule, Wald’s method, complex of symptoms.
Поступилт редакцию10.04.2010