公务员期刊网 论文中心 正文

医疗CPS协作网络控制策略优化浅析

医疗CPS协作网络控制策略优化浅析

摘要:医院的信息化建设已经进入了智能化时代,越来越多的医疗CPS(CyberPhysicalSystems)在医院实践并应用。然而,医学学科的细化和医院知识库的缺乏,会导致医疗CPS在多并发症疾病治疗应用上的可靠性不足。文中提出了一种医疗CPS协作架构,以提高医疗CPS的决策可靠性。CPS通过协作平台向网络上的智能单元发送协作任务,响应的智能单元共同辅助CPS进行医疗决策。由于患者的生理数据是连续动态的,且医疗CPS对响应的及时性要求较高,文中进一步优化了协作网络的控制策略来提高网络通信效率,分别提出了CCD算法和HCD算法用于高级控制器和低级控制器的部署。最后,实验模拟两种算法并与K-means算法进行了指标对比,结果表明HCD算法在牺牲较少平均通信时延的情况下,大幅度提升了低级控制器的负载均衡。CCD算法更适合聚类节点少的高级控制器部署,对目标函数的优化效果明显优于HCD算法和K-means算法。

关键词:信息物理系统;医疗;网络控制;聚类;协作;

1背景

医疗CPS是信息物理系统在医学上的应用延伸[1-2]。复杂的生命系统与信息系统紧密交互的同时,使医疗CPS面临更多的挑战[3]。可靠性是其中一项重要挑战,一方面,大多数医院的知识库建设不足[4];另一方面,医学学科的细化导致各类专科、亚专科的医生仅熟悉自己领域的专业知识,而无法应对多并发症疾病的治疗。因此,医疗CPS的可靠性不足,存在医疗安全隐患。在自然界中,协作使弱势物种能够在不同物种争夺有限资源的环境中生存,协作也可以让具有不同优势的物种交换资源得以协同进化。受大自然的启发,医疗CPS通过网络协作将优势资源进行最大化整合是提高决策可靠性的有效方法,但需要平台作为应用支撑。此外,医疗CPS对医疗决策的及时性要求较高,因此,提高协作网络的通信效率也是医疗CPS协作平台有效应用的重要保障之一。

2相关研究

人体是复杂的物理系统,医疗CPS按照医学的规律将计算、控制、交互有机结合,实现信息与人体的深度交互。在过去的十年里,越来越多的研究人员、工程师和医务人员参与了医疗CPS的研究工作。这些研究涉及智能医疗设备[5]、生理数据识别[6]、嵌入式医用软件设计[7-8]、网络服务[9-11]、异构系统交互[12]、患者隐私保护等诸多方面。其中,文献[13]开发了用于监测心率的医疗CPS平台。文献[14]设计了一个用于检测早期阵发性交感神经多动症的医疗CPS诊断平台。文献[15]开发了一个开源的医疗CPS平台,该平台包括用于医疗设备(包括麻醉机、呼吸机和患者监护仪)的软件设备适配器、标准中间件和构建在该平台上的应用程序,可实现智能报警、生理闭环控制算法、数据可视化和临床研究数据采集等功能。文献[16]提出了一种用于CPS与医疗设备通信的实时大数据计算平台。文献[17]强调了医疗CPS在机器人手术环境中的重要性,提出了一种用于机器人协作手术的CPS设计方法,旨在降低机器人手术系统的脆弱性。文献[18]提出了一个由集中式医疗CPS架构开发的数据分析模块,有助于最终实现患者健康监测和远程治疗自动化。文献[19]对医学领域中人类交互假设中的约束类别进行了分类,并开发了一个数学假设模型,使用医疗呼吸机作为案例研究,以显示数学假设模型提高呼吸机和医疗CPS安全性的原理。文献[20]研究了电子病历系统与CPS系统的接口设计。该接口主要用于生理数据的自动读取,避免了人为的错误,提高了系统CPS的安全性。文献[21]针对恶意入侵医疗CPS的行为会影响患者数据和系统可用性的问题,提出将法医学原理和概念集成到医疗CPS的设计和开发中,以增强组织的调查态势,并为进一步完善医疗CPS调查的具体解决方案奠定了基础。文献[22]讨论了远程调整医疗CPS医疗设备输出和驱动所必须解决的一些问题,例如验证问题。文献[23]绘制了医疗CPS的抽象体系结构,以演示各种威胁建模选项;还讨论了可能的安全技术及其在安全医疗CPS设计中的适用性和实用性。以上研究多从医疗CPS内部出发,通过优化医疗设备、系统交互接口、模型设计等方面提高医疗CPS的可靠性和安全性,并未考虑医疗CPS的网络化发展。内部的优化无法打破本地资源的局限性,只有开放、共享、协作才能更大限度地提高医疗CPS的可靠性。

3医疗CPS协作平台

在传统医疗模式下,医生面对多并发症疾病时,通常开展线上或线下的多学科联合会诊[24-25]。传统模式通过静态数据分享和语言沟通完成医疗决策,但人体是一个复杂的生理系统,静态数据的全面性不足,连续动态的生理数据才更有临床决策价值。医疗CPS的优势是对连续动态数据的采集和分析,因此,需要构建一个协作平台以支持医疗CPS的深度协作与共享,从而弥补本地知识库和专科医生知识的局限性,进一步提升医疗CPS的可靠性。

3.1平台架构设计

在医疗CPS内部,患者的生理数据通过传感设备实时采集,并存储在临床信息系统中。辅助决策系统读取并判断是否需要进行多学科联合治疗。需要联合治疗的医疗CPS向协作平台发送协作申请,并通过平台与1个或多个目标医疗CPS开展网络协作。如图1所示,平台提供异构系统对接、生理数据识别、网络控制、消息管理和存储等服务。医疗CPS通过平台协作将网络优质医疗资源加入到疾病的治疗闭环中,提高了决策单元的可靠性。

3.2网络架构设计

医疗CPS协作是为完成多学科联合治疗任务而在网络上进行分布式计算的过程。网络架构设计与协作效率密切相关。平台网络中存在大量的异构医疗CPS,且分布不均。新接入网络的医疗CPS通常与拥有优质医疗资源的医疗CPS建立连接。随着时间的推移,平台网络的拓扑结构与无标度网络的拓扑结构一致。这样大规模的复杂系统需要合理的网络架构来优化网络资源管理。软件定义网络(SoftwareDefinedNetwork,SDN)架构具有控制灵活、资源分配灵活的优点,但无法满足大规模网络控制需求。协作平台网络架构在SDN三层网络架构的基础上,将控制层进行分级处理,如图2所示,控制层分为低级控制区和高级控制区。低级控制区的控制器控制聚类内的连续动态数据传输。高级控制区的控制器控制跨聚类连续动态数据传输。应用层是用户需求和协作平台之间的交互。物理层由支撑平台运行的硬件设备组成。

4网络控制策略优化

网络控制指标通常包括控制器负载、平均通信时延和孤立节点数。控制器负载是控制器控制范围内的节点数量,优化的目标是使控制器之间的负载差异最小化,避免资源浪费。平均通信时延是节点和控制器之间的平均通信时间,孤立节点数是需要跨聚类通信的节点数量,两者值越小,通信的代价越小。

4.1低级控制器部署

4.1.1问题模型。假设网络拓扑建模为关系图Gswitch=〈S,E〉,S是网络内医疗CPS的集合,E是医疗CPS间链路的集合。如果网络被划分为k个聚类,每个聚类由一个低级控制器控制,则低级控制器的数量为k。假设网络内包含n个医疗CPS,则医疗CPS的集合表示为S={s1,s2,…,sn},低级控制器的集合表示C={c1,c2,…,ck},低级控制器与医疗CPS之间的通信时延表示为τ,τ=1v∑ni=1d(C(si),si),其中d(C(si),si)表示第i个医疗CPS与聚类内低级控制器的通信距离,v是速度参数,i=1,2,…,n。低级控制器j的负载表示为Γj,是其控制聚类内医疗CPS的数量之和,所有低级控制器的平均负载表示为Γaverage。孤立节点的数量为m,σ表示低级控制器负载的均衡度。低级控制器部署是一个多目标优化问题,目标函数表示为:Fmin=(τ,σ,m)=P+Q+min(m)(1)P=min∑ki=11v×ni∑nij=1d(C(si),si)()()(2)Q=min1k∑kj=1(∑Γj-Γaverage)2()(3)4.1.2HCD算法。网络具有无标度网络特性,医疗CPS分布符合幂律分布,即医疗CPS越密集,需要部署的低级控制器数量越多。HCD(HoneyCombDerivation)算法是在网络拓扑上进行蜂窝衍生。蜂窝衍生的方法是采用正六边形的蜂窝网格作为衍生单位。网络内选择一个医疗CPS节点,并以该节点为初始点,边长为r的正六边形作为初始蜂窝网格,以初始蜂窝网格为中心,向6个方向分别衍生6个蜂窝网格,直到所有的医疗CPS被蜂窝网格覆盖。蜂窝网络被广泛采用源于一个数学结论,即以相同半径的圆形覆盖平面,当圆心处于蜂窝网格的格点时所用圆的数量最少,即使用最少的控制器可以覆盖最大面积的图形。虽然在通信中使用圆形来表述实践要求通常是合理的,但出于节约设备构建成本的考虑,蜂窝网格是最好的选择。蜂窝衍生完成后,记录每个蜂窝网格内医疗CPS的总数并将其记为该蜂窝网格的度数,再根据度数进行优化组合,形成医疗CPS聚类。每个医疗CPS聚类的中心网格部署低级控制器。图3显示了HCD算法的4个主要步骤,分别为蜂窝衍生、蜂窝标记、节点聚类和聚类优化。

4.2高级控制器部署

4.2.1问题模型。高级控制器部署在低级控制器部署完成的基础上进行。低级控制器部署为高级控制器部署提供了基础的网格分布图,但CCD算法重新进行网格度数计算,仅考虑低级控制器数量及其负载。假设蜂窝的度数表示为L={l1,l2,…,ln},如果一个蜂窝网格仅包含医疗CPS,则l1=0,否则l1=Γj=∑Lj,Lj是低级控制器j所在聚类内医疗CPS数量。σ是高级控制器负载的均衡度,σ=1k∑kj=1,Γaverage是高级控制器的平均负载,m是孤立节点的数量,τ是各高级控制器与其聚类内低级控制器的通信时延总和,τ=1v∑ki=1d(C(ci),ci)。高级控制器部署的目标函数表示为:Fmin(τ,σ,m)=A+B+min(m)(4)A=min∑ki=11v×ni∑nij=1d(C(sj),sj)()()(5)B=min1k∑ki=1(∑Γj-Γaverage)2()(6)4.2.2CCD算法。CCD(CooperativeControllerDeployment)算法根据蜂窝距离来对低级控制器进行聚类,由于低级控制器较医疗CPS数量少,位置更为分散,过多强调负载的优化会导致平均通信时延的增加。因此,CCD算法在优化平均通信时延的基础上兼顾负载均衡。算法首先根据低级控制器的部署对蜂窝网格进行重新标记。如果蜂窝网格中没有部署低级控制器,则li=0,否则li不为0。选取k个距离分散的网格作为初始中心网格,计算每个网格与k个中心网格的距离,并与距离最近的中心网格聚为一类。所有网格完成聚类后,计算每个聚类负载,将大于负载阈值的网格重新分配至与负载聚类中最近的聚类,直到所有聚类负载均小于负载阈值。各聚类中心点所在的网格部署高级控制器。

5仿真实验

5.1HCD算法仿真

实验旨在对比K-means算法和HCD算法在低级控制器部署过程中对平均通信时延、控制器负载和孤立节点数量3个指标的优化情况。假设实验拓扑是一个由20个节点组成的BA网络。采用Python工具进行仿真,仿真结果如图4和图5所示。以k=3为例,HCD算法将节点2,6,8,10,13聚为一类;节点1,3,4,5,7,9,11聚为一类;节点12,14,15,16,17,18,19,20聚为一类。K-means算法将节点1,2,3,4,5,6,7,8,9,10,13聚为一类;节点11为一类;节点12,14,15,16,17,18,19,20聚为一类。根据HCD算法的聚类结果,低级控制器分别部署在节点6,7,15。根据K-means算法的聚类结果,低级控制器分别部署在节点2,11,15。表1分别对比了k=3和k=4时低级控制器部署的各类指标,结果显示K-means算法作为经典的聚类算法,局限于优化平均通信时延和孤立节点两个指标,忽略了控制器负载均衡问题;HCD算法在牺牲较少平均通信时延的情况下,大幅度提升了低级控制器的负载均衡,且通过聚类的优化剔除了孤立通信节点。在低级控制器部署(k=3)完成基础上,均采用K-means算法对低级控制器进行聚类,如图6所示。表2列出了部署2台高级控制器的指标对比情况,显然HCD算法也间接优化了高级控制器部署的指标。

5.2CCD算法仿真

实验旨在对比K-means算法、HCD算法和CCD算法在高级控制器部署过程中对平均通信时延、控制器负载和孤立节点数量3个指标的优化情况。假设实验拓扑是一个由20个节点组成的BA网络,低级控制器数量k=8,分别部署在HCD算法的聚类结果显示,部署在节点5,6,8的低级控制器聚为一类,部署在节点11,12,14的低级控制器聚为一类,部署在节点15,16的低级控制器聚为一类。CCD算法的聚类结果显示,部署在节点5,6,8的低级控制器聚为一类,部署在节点11,14的低级控制器聚为一类,部署在节点12,15,16的低级控制器聚为一类。K-means算法的聚类结果中,部署在节点5,6,8的低级控制器聚为一类,部署在节点11的低级控制器聚为一类,部署在节点12,14,15,16的低级控制器聚为一类。根据3种算法的聚类结果,高级控制器分别部署在节点2,9,17。CCD算法在聚类节点较少的情况下,较HCD算法和K-means算法在指标的优化上效果最好,具体指标对比见表3。6结束语医疗CPS是医院应用的重要系统之一。但医学学科的细化和知识库的局限性,使医疗CPS应对多并发症疾病治疗存在可靠性不足问题。文中提出了医疗CPS协作架构设计,并考虑到生理数据的连续动态性和医疗CPS对决策及时性要求较高,设计了协作网络的控制架构,提出了HCD算法和CCD算法对网络节点进行聚类以辅助两级控制器的部署,从而提升协作效率。实验对比了HCD算法、CCD算法和K-means算法对目标函数的优化情况,结果表明HCD算法和CCD算法对两级控制器的部署均优于K-means算法。医疗CPS网络化、协同化发展是大数据时代医院信息化发展的趋势,提高医疗决策可靠性也契合了国家精准医疗战略的需求。医疗CPS协作平台设计和协作网络控制策略优化,为医疗CPS整合优质医疗资源,提升决策可靠性提供了实践方案。异构系统之间的协同问题与协作同步问题,将是后续的研究工作。

作者:刘丽 李仁发 单位:中南大学湘雅三医院 湖南大学信息科学与工程学院