APP下载

插件式智能麻醉系统

2014-07-03王灿灿赵逢禹

计算机与现代化 2014年7期
关键词:手麻插件病种

王灿灿,赵逢禹,王 勇

(1.上海理工大学光电信息与计算机工程学院,上海 200093;2.北京康瑞德医疗器械有限公司,北京 100102)

0 引言

随着外科手术及麻醉学的不断发展,麻醉的范畴已经从单纯的手术止痛发展成麻醉前后整个手术期的准备与治疗、麻醉过程中患者生理功能的变化监测、患者机体内环境的调控和稳定,以保障患者安全度过手术。

麻醉失误的种类分为:1)麻醉医生人为因素,如技术操作失误或者失败,麻醉方案选择不当;2)麻醉器械的因素;3)病人相关因素;4)现阶段麻醉理论与技术的局限及其它等因素[1]。澳大利亚的一项麻醉事故监测数据分析了2000例麻醉事故中的12种常见原因,其中80%与人为失误有关,各种研究资料基本一致认为人为失误占麻醉事故原因的70%~80%[2]。

计算机技术和网络技术不断发展和进步,手术麻醉管理信息系统也逐渐多样化:基于Web技术[3]、基于医院信息系统[4]、基于电子病历[5]等。基于 Web技术的系统主要采用了Web Service技术对手术过程中的数据进行传输,保存到医院的服务器上,同时使用XML技术。这种形式的系统降低了客户端的系统开销,但是它的缺点很明显,如果在手术过程中,医院的局域网出现故障,不能及时解决时,将会影响术中信息的保存。基于医院信息系统和电子病历的手术麻醉管理信息系统,实现了医院各系统之间信息交互,使医院各系统组成一个大型的局域网络,方便各科室使用,但是它没有从根本上保证麻醉的安全,仅仅是通过交换信息,减少了工作人员的工作量。

因此,本文提出增加智能麻醉系统,根据麻醉专家知识库的知识和规则,对麻醉医生制定的麻醉方案进行检查,并做出相应的提示,避免产生错误的麻醉方案。同时从病人角度出发,依据最优麻醉案例知识库,对麻醉医生的麻醉方案做出优化,提供最佳麻醉方案。扩展系统功能时,根据插件技术的原理,不必重新开发系统,只需在原有系统的基础上开发插件,以一定的规范和机制加载使用插件即可,有效地降低开发成本和缩短开发周期,提高了系统的利用率[6]。

1 手术麻醉管理信息系统

手术麻醉管理信息系统(简称手麻系统)主要在手术间用于记录病人手术的相关信息,形成电子文档,展示给病人及其家属,同时存入医院的医疗档案中,作为医学研究的重要依据。该系统将病人的基本生命体征、术前诊断结果、拟施手术等信息,通过医疗信息系统(Hospital Information System,HIS)提供的接口导入。医院利用计算机将病人的诊疗信息和临床信息收集、处理、存储到数据库中,形成HIS系统,供各科室使用。麻醉医生根据HIS系统的记录制定麻醉方案,录入麻醉记录单中[7]。

2 麻醉方案的制定、检查与优化

2.1 麻醉方案的制定

麻醉方案的制定包括麻醉方法的选择和麻醉药物的选择,它受到诸多因素的影响,主要概括为以下3 个方面[8]:

1)病人情况。主要包括年龄、拟手术治疗的疾病及其严重程度、重要脏器功能、情绪与合作程度、肥胖程度、病人意愿等。

2)手术方面。主要包括手术部位、手术方式、术者的特殊要求与技术水平等。

3)麻醉方面。主要包括麻醉医生的业务水平、经验或习惯,麻醉设备和药品等。

麻醉方案是由麻醉医生制定的,然后麻醉医生使用智能麻醉系统,将制定的麻醉方案输入系统中,系统给出相应的结论,供医生参考。

2.2 麻醉方案的检查

大型医院的手术量很大,麻醉医生工作压力很大,责任心强的医生更难免超负荷工作,长期处于疲惫不堪的状态,增加麻醉的安全隐患。因此,对麻醉方案进行检查是十分重要的环节。智能麻醉系统可以根据专家的经验知识结合麻醉规则,对麻醉医生制定的方案进行检查,发现错误,提示麻醉医生修改麻醉方案;对于符合规则的麻醉方案,系统做出相应的提示。

根据临床麻醉学的理论知识与麻醉医生的经验,总结出手术麻醉的常用规则。部分规则描述见表1。

表1 部分麻醉规则[9]

2.3 麻醉方案的优化

手麻系统已经在医院正常运行,记录了大量的病例,为系统提供丰富的实际数据。通过分析、处理、优化,将这些有价值的数据整理成最优麻醉案例,智能麻醉系统将麻醉医生的方案与最佳麻醉案例对比,提出优化建议[10]。HIS系统记录的部分麻醉病例如图1所示。

图1 部分麻醉案例

HIS系统长期不间断地运行,记录了大量的病例,为挖掘最优麻醉案例知识完成了数据的准备工作,接下就是对这些案例采用合适的算法进行挖掘,最后将结果以正确的方式进行表达。

挖掘算法如下:

1)将收集的成功案例按照病种进行分类:IN1,IN2,…,INm;

2)对同类病种的病人,根据不同的症状进行分类:S1,S2,…,Sn;

3)对某病种中出现的各种症状进行统计,计算出每个症状出现的频率fi(f1+f2+…+fn=1);

4)把各个症状按照频率大小从高到低进行排序;

5)设定症状出现频率的一个临界值f;

6)对步骤4)中已排好序的频率进行划分,将大于临界值的症状看作是经常出现的症状,此类症状所对应的麻醉方案当作基本麻醉案例B1,B2,…,Bk;将小于或等于临界值的症状看作是特殊麻醉案例D1,D2,…,Dl(k+l=n);

7)对每种病种重复步骤2)到步骤6)的操作;

8)对失败的案例重复步骤1)到步骤7)的操作,得出每个病种的每种症状不宜采用的麻醉方案,得到失败麻醉案例Ex(0≤x≤总的失败案例数)。

将挖掘的结果进行表示,采用(病种,(症状),(基本麻醉,特殊麻醉,失败麻醉))的表示方式进行表达。

2.4 知识库

1)麻醉专家知识库。

此知识库仅仅是麻醉专家的经验知识和常用麻醉规则的集合,这些知识都已经过麻醉专家分析处理,是他们多年实际工作中积累得到的,不需要挖掘,只需直接添加到知识库中即可。该知识库只需使用一张数据表AnesthesiologistBase来存储即可。表中字段有:

ID:经验规则知识的编号;

CONDITION:病种名称及特征;

CONCLUSION:麻醉方案;

YESORNO:是否采用该种麻醉方案。

由于麻醉专家给出的经验和规则中可能存在某种病种或症状,不适宜采用某种麻醉方案时,字段YESORNO实现了这种标记的功能。系统根据麻醉专家知识库的知识对麻醉医生制定的麻醉方案进行初步的检查,如不符合,及时提醒麻醉医生;如符合,则继续使用最优麻醉案例知识库对麻醉方案进行优化。

2)最优麻醉案例知识库。

该知识库的组织结构是针对每一类病种建立一个知识库,用一张数据库表来存储。其内容是该类病种可能出现的所有症状和采用的麻醉方案。表名为病种名称,表中主要字段有:

SYMPTOM_ID:症状的编号;

SYMPTOM_NAME:症状的名称;

ANESTHESIAMETHOD:对应症状采用的麻醉方案;

TYPE:该症状属于基础麻醉案例、特殊麻醉案例和失败麻醉案例中的哪一个;

YESORNO:标记该麻醉方案是被采用,还是被放弃。

2.5 知识库的查询

麻醉医生使用智能麻醉系统时,需要输入病种名称、症状和自己制定的麻醉方案,系统将根据病种名称找到该病种所属的知识库,然后根据病人的具体症状查找对应的麻醉方案,系统将此麻醉方案同麻醉医生的麻醉方案进行比对,如存在差异,系统及时提醒麻醉医生;如与失败的麻醉方案相同,系统提示麻醉医生重新制定麻醉方案。

3 系统的实现

3.1 开发环境的选择依据

1)宿主程序是手麻系统,它是利用C#语言在Visual Studio 2010中开发的,所以智能麻醉系统采用相同的开发环境。

2)医院需要长期保存病人的电子病历,病例数量较多,手术过程中需要采集病人的生命体征信息,间隔设置为5 s,数据量庞大,因此采用Oracle 11g数据库,方便存储和管理数据[11]。

3)在软件的设计和开发过程中,为了便于后期维护和功能扩展,将整个应用程序划分为宿主程序和插件对象2部分[12]。宿主程序使用插件式应用框架,能够识别并调用插件对象,使插件对象能够在宿主程序上实现自己的逻辑,接口是宿主程序和插件对象互相识别的通信机制[13]。插件的实现一般有3种技术:基于动态链接库DLL的插件;基于组件对象模型COM的插件;基于.NET反射技术的插件[14]。本文采用动态链接库DLL。

3.2 智能麻醉系统的基本结构

如图2所示,该系统的核心部分是2个知识库:麻醉专家知识库和最优麻醉案例知识库。其中麻醉专家知识库是由麻醉专家的经验知识,经过处理、统计、分析后整理出的专家知识,主要用于检查麻醉医生的麻醉方案;最优麻醉案例知识库是由HIS系统记录的大量成功病例,经过挖掘建成的知识库,主要用于优化麻醉方案。

图2 智能麻醉系统的基本结构

3.3 系统的设计

图3 系统的类图

由图3可知,根据插件技术的实现原理,本系统为了在SAMIS中使用,需要实现SAMIS.PluginEngine中的IMenu接口,重写接口中的方法,实现本系统与手麻系统的通信。SAMIS.PluginEngine是手麻系统的插件引擎模块,它负责解析插件程序集,提取插件类型并生成相应的插件对象,转交手麻系统的界面程序处理。它提供了手麻系统与其插件互相认可的标准,主要以接口的形式存在,这些接口涉及手麻系统的各个主要模块。

由于本系统是一个独立的模块,不隶属于手麻系统中的任何一个模块,所以只需实现IMenu接口,作为一个独立的菜单项来使用,而不必修改手麻系统各主要模块的显示模板。IMenu主要是非业务功能模块接口,映射在导航菜单项中。

在手麻系统中进行定义的对象主要是继承了IHost接口的Host对象,以及Host对象中的HostThing对象、插件集合对象和其他相关内容对象。在程序运行中,由手麻系统为Host对象及其中的各个对象赋值,在打开IMenu的窗体时会传递Host对象给插件,实现相关数据的传递。对于插件而言,Host对象可视之为全局变量,手麻系统将接口引擎所获取的插件集合保存在Host的Plugins对象集合中,然后根据权限和插件类型按需使用。

4 系统的应用

使用系统时会出现以下2种情况:

1)麻醉医生制定出正确的麻醉方案时,系统出现如图4的提示。

图4 正确麻醉方案的提示

该病人的术前诊断是贲门癌、胃癌,胃肠外科医生制定的手术方案是贲门癌、胃癌远端胃大部切除手术,麻醉医生根据病人信息和手术方式,制定出的麻醉方案是气管插管(单腔)全身麻醉。系统根据专家知识库中的相似手术采用的方案,对麻醉方案进行检查,发现结果一致,可以作为最佳麻醉方案,及时向医生做出相应的提示。

2)由于疏忽、经验不足等原因,麻醉医生也可能制定出错误的麻醉方案,此时系统做出如下提示,如图5所示。

图5 错误麻醉方案的提示

该患者的术前诊断是胆囊结石,医生决定采用的手术为开腹胆囊摘除术,但是麻醉医生制定的麻醉方案是腰硬联合麻醉。经过和麻醉专家知识库的相似手术采用的麻醉方案对比后,发现2者结果不一致,系统查找最佳麻醉案例知识库的知识,结果是在过往的成功案例中,采用的是气管插管(单腔)全身麻醉的方式,因此系统及时弹出窗口提示麻醉医生再仔细检查自己制定的麻醉方案。经过麻醉医生综合各种因素再次考虑后,如果系统建议的麻醉方案不合理,医生可以忽略系统的提示,继续后续操作。为了丰富、完善知识库,在医生保存麻醉记录单时,将本次手术的相关信息存到最优麻醉案例知识库中,作为对其的补充。

本系统的目的不是代替麻醉医生制定麻醉方案,而是检查并优化麻醉方案,及时发现麻醉医生的错误,切实保障病人的生命安全。由于知识库中保存的都是常见的病例,在遇到罕见手术时,不能产生准确的提示,只能建议麻醉医生再次检查,并提示“知识库中无此案例”。

5 结束语

本文提出了在手麻系统中增加智能麻醉系统,对麻醉医生制定的麻醉方案进行检查和优化,确保手术顺利安全地进行,介绍通过数据挖掘技术建立了2个知识库,用于完成检查和优化的任务。采用2个病例对系统进行使用,结果表明该系统能够完成期望的任务。智能麻醉系统不能完全替代麻醉医生的工作,但是它可以及时提醒麻醉医生改正错误的麻醉方案,切实保证病人的生命安全[15-16]。插件技术的使用,便于将智能麻醉系统整合到现有的手麻系统中,实现了系统功能的扩展[17]。

[1] 何铭,杨家伟.浅析麻醉风险的防范[J].中国卫生事业管理,2008(7):469-470.

[2] 尤新民.澳大利亚2000例麻醉事件分析[J].国外医学:麻醉学与复苏分册,1995,16(2):106.

[3] 宇新民,李宏斌,仝武宁.基于Web手术麻醉管理系统的设计与实现[J].中国医疗设备,2011,26(9):48-51.

[4] 严静东,陈昆,古妙宁.与医院信息系统集成的手术麻醉信息系统[J].中国医院管理,2007,27(9):41-43.

[5] 胡志坚.建设以电子病历为核心的手术麻醉管理系统[J].福建电脑,2013,29(8):160-162.

[6] 陈方明,陈奇.基于插件思想的可重用软件设计与实现[J].计算机工程与设计,2005,26(1):172-173.

[7] 王徐东,杨希武.我国HIS的发展及未来趋势[J].医疗卫生装备,2008,29(2):39-41.

[8] 米勒.米勒麻醉学[M].北京:北京大学医学出版社,2006.

[9] 徐启明.临床麻醉学[M].北京:人民卫生出版社,2006.

[10] 庄心良.现代麻醉学[M].北京:人民卫生出版社,2004.

[11] Wang Guicheng,Wang Xue,Ren Zhixin,et al.Study of fault diagnoses expert system of glutamic acid fermentation process[C]//Proceedings of the 24th IEEE Chinese Control and Decision Conference.2012:3742-3747.

[12] 刘晓林,李颖川,谭波.基于RFID的插件式仓储管理系统设计[J].计算机与现代化,2012(8):176-178.

[13] 朱诗生,王正超,周明明,等.基于插件技术的VWESA平台的研究与设计[J].计算机应用,2012,32(S1):88-90.

[14] 蒋波涛.插件式GIS应用框架的设计与实现:基于C#和ArcGIS Engine9.2[M].北京:电子工业出版社,2008.

[15] Azadeh A,Saberi M,Javanmardi L,et al.Developing expert system on decision making unit efficiency[C]//Proceedings of the 2008 IEEE International Symposium on Industrial Electronics.2008:809-816.

[16] Biagetti T,Sciubba E.Automatic diagnostics and prognostics of energy conversion processes via knowledge-based systems[J].Energy,2004,29(12-15):2553-2572.

[17] 蔡燕萍,凌捷,黄万民.网络安全扫描系统中插件技术的研究与实现[J].计算机工程与设计,2010,31(7):1437-1440.

猜你喜欢

手麻插件病种
中老年人手麻要警惕6种疾病
手麻就是脑梗吗
自编插件完善App Inventor与乐高机器人通信
晨起手麻是哪些疾病信号
晨起手麻是哪些疾病信号
“新病种”等十五则
按病种付费渐成主流?
基于jQUerY的自定义插件开发
MapWindowGIS插件机制及应用
基于Revit MEP的插件制作探讨