基于AnyLogic的医院就诊流程分析及一种自适应优化算法
0 引言
时下,医疗制度的改革正在如火如荼地进行,如何解决我国医疗领域中“看病难, 看病贵”、 药品价格虚高、医院补偿机制不合理、潜在医疗资源转换等问题,一直作为我国改善和保障民生的重点。很多学者对医疗服务领域分别从宏观和微观两个层次进行了研究,目前,对医疗领域中存在问题的原因解释和医疗政策分析常用的方法包括决策树方法、M arkov 方法、仿真建模和统计学方法,但是关于就医流程的分析和优化尚为不足。
采用仿真的方法来研究解决医疗服务中的问题是最近医疗服务领域研究的热点之一,在仿真工具中,AnyLogic是一款应用广泛,对离散、连续和混合系统建模和仿真的工具。它是第一个将UML语言引入模型仿真领域的工具,是唯一可以创建真实动态模型的可视化工具,同时也是唯一支持混合状态机这种能有效描述离散和连续行为的语言的商业化软件。
因此,本文基于AnyLogic和随机时间Petri网来,首先着重在微观层次基于对医院就诊流程进行了仿真和优化,其次根据构建的指标含义,在宏观层次对于政府政策和医院策略进行了建设性地讨论。
1 研究背景及国内外研究现状
我们以一家医院为研究实例,希望通过仿真和可视化的方法刻画出患者就医流程,这对研究就医方面的问题提供一个良好的研究环境。
同时,我们所关注的是如何把握好医院公益性和盈利性之间的关系,即在保障公益性、降低患者不满意度的同时,做到盈利最大化。医院的公益性和服务效率升高会赢得竞争优势,使得就诊人数增加,因为较高的医疗服务价格会使就医人数减少,反而会影响利润。医院最为担心的是价格过低会使得投资力差,也会失去竞争优势。
大众所关注的是在医院中是否能够减少等待时间、提高服务质量同时降低医疗服务价格。如果病人的对服务的满意度增加,往往对价格的适度上涨不那么敏感,这就为医院的赢利创造了可能。上述说明在医院和病人之间,存在着依赖和反馈关系,本文研究的重点就是如何为医院找到一种最优的策略问题。
目前,国内外对医疗问题研究的领域十分广泛,取得了一些积极的成果,但是缺乏考虑病人这类特殊的主体对医院的“苛刻”态度,因为特别是在中国,就医是关系切身利益的大事,就医流程的分析和优化具有特别的意义。本文提出的算法是基于对这类问题的思考所提出的,更加强调医疗的福利性去研究医院的运作和竞争,希望能够抛砖引玉,引起人们对患者合法权益和特殊心理状态的思考和关注。
2 模型构造
2.1 基于随机Petri网的就诊流程建模
医院的部门种类繁多,根据问题我们需要做出必要简化,我们构造的医院模型共有内科、外科、儿科、五官科、妇科5个常规科室和一个急诊室共6个科室,一个住院部,一个挂号处和一个买药处。常规科室为日8小时工作,急诊室为日24小时工作。
模型的基本假设:
1、一天最多去一次医院,去一次医院只去一个科室,无病不来医院。急诊不需要挂号,住院后出院不需要到买药处买药。
2、我们以各个科室为讨论的单元,各个科室的诊断时间和费用独立,将住院费、药费按照科室划分,将诊断费、挂号费计入药费或住院费。这样费用只需考虑住院费或买药费。
治疗分为住院和买药两类,住院费包括手术费、常规费和住院期间药费等等。买药费只考虑不住院的情况。
3、急诊的诊断结果不分科室,其时间和费用独立考虑。
4、挂号时间、各科室诊断时间、住院时间、买药时间均服从负指数分布。各科室类住院费用和买药费用服从Pareto分布。
5、患者对时间和费用的预期服从正态分布,预期细分到挂号,各个科室及各个科室类的买药和住院情况。
我们根据患者的患病种类,映射到去各个科室的比例,将就医比例加入到随机时间Petri网中,即考虑概率因素。如下图:
住院单住院买药住院买药住院买药住院买药住院买药排队买药排队买药排队买药排队买药排队买药内科诊断药单住院单外科诊断药单挂号住院单五官科诊断药单住院单出院儿科诊断药单住院单妇科就诊医院诊断药单住院单急诊急诊室诊断药单住院买药排队买药患者
2.2 变量分析
为更清晰地分析模型,我们首先对模型中的变量和指标进行介绍。时间变量单位为小时。费用单位为元。利润单位为元/天。投资额单位为元/天。 2.1.1 患者方变量说明
针对每个患者Xi,变量包医疗服务时间Ti ,医疗服务费用Fi。患者的挂号时间RTi,买药时间BTi。RTi,BTi可以为0(急诊和住院情况)。患者的买药费用为BFi(住院时为0)。
患者对每个科室的开药收费有一个心理承受价格SA1?[sa1,sa2,sa3,sa4,sa5,sa6]。患者对每个科室类的住院有一个心理承受价格SA2?[sa7,sa8,sa9,sa10,sa11,sa12]。
患者对每个科室的诊断时间有一个心理承受时间TL1?[tl1,tl2,tl3,tl4,tl5,tl6]。患者对每个科室类的住院时间有一个心理承受时间TL2?[tl7,tl8,tl9,tl10,tl11,tl12]。患者对挂号时间和买药时间的承受力为TRTi,TBTi。
2.1.2 医院方变量说明
医院总利润为G。统计医院中各科室日均就医人数,得向量H?[h1,h2,h3,h4,h5,h6]。
HB??i?1hi。
各科室的就医比例和住院率都不相同,统计估计,各科室科室就医比例向量为
6SS?[ss]HS?[hs1,hs2,hs3,hs4,hs5,hs6]。 1,ss2,ss3,ss4,ss5,ss6,各科室住院率向量分别
根据统计估计,各科室开药收费价格为PM1?[pm1,pm2,pm3,pm4,pm5,pm6]科室类住院收费价格为PM2?[pm7,pm8,pm9,pm10,pm11,pm12]
。
。各
医院利润按各个科室划分,各科室利润率为PV?[pv1,pv2,pv3,pv4,pv5,pv6] 。 各常规科室的诊断时间向量为DT1?[dt1,dt2,dt3,dt4,dt5,dt6],各科室类住院时间的向量为DT2?[dt7,dt8,dt9,dt10,dt11,dt12]。
医院投资记为变量EE, EE可理解为引进设备和专家,改善环境、广告宣传等因素。
2.3 指标构建
(1)对于患者Xi而言,有时间影响指标Timi和费用影响指标FEi。
时间影响指标Timi的含义是:医疗用时少于期望会给医院带来正面效应,如带来口碑增加就医人数,但是患者对医疗用时超过预期更加敏感,会带来更大的惩罚效应,体现在就医人数上。
费用影响指标Fei的含义是:医疗费用低于期望会给医院带来正面效应,但是患者对医疗超过预期更加敏感,会带来更大的惩罚效应,同样体现在就医人数上。
(2)对于医院来说,模型参数中的利润率是相对于价格而言,体现了除去成本之后的赢利性,但是盈利额过高会导致医院的福利性下降,这时国家的政策补助会控制这一趋势。我们的模型需要反映这一规律。
医院投资变量EE和投资占总利润比重影响着医疗服务质量。较高的医疗服务质量会使得:如果医疗时间或费用超出患者预期,那么会减小惩罚力度,如果医疗时间或费用低于患者预期,那么会加大奖励力度,但是也不会超过惩罚力度。
医疗服务质量系数??1?eEE?GG?e?1。 公式(1)
它不仅反映出了投资比例的影响,还反映了投资数目的大小。
(2??)3?医院运作总体满意度OP作为医院策略指标,OP?G?[1?]?G?。公式(2)
3e??1它主要由总利润构成,但是却受着医疗服务质量系数的影响,意义是:投资过大会造成医院工作人员相对福利性下降,资金链不稳等影响,会对总利润造成影响,而且投资比重越大,这种影响产生的利润惩罚效应越大。
2.4 模型计算与自动优化
2.4.1 变量关系
模型的指标计算,诸多变量和指标的关系如下:
记HB??6i?1ih。新就医人数为HB_new。
医疗服务时间Ti?RTi?dtj?BTi,j?1,...,12 医疗服务费用Fi?pmj?BFi,j?1,...,12
Timi?TRTi?RTi?|(TRTi?RTi)??|?(tlk?dtk)?|(tlk?dtk)??|?TBTi?BTi?|(TBTi?BTi)??|Ti(公式3)
Fei?(pmk?sak)?|(pmk?sak)??|
Fi (公式4)
HB易知总利润G为所有患者的交费带来的利润之和。
G??i?1(pmj?pvk)i,j?1,...,12,k?1,...6,j?k或j?k?6
2.4.2 分布参数
(1)医院时间参数方面,挂号时间、各科室诊断时间、住院时间、买药时间服从参数分别为
?_RT,??_RT(i?1,...,12),??_BT?_RT,?_RTi(i?1,...,12),?_BT的负指数分布。?i??X(各组数据的均值),可作为在已有数据基础上对的极大似然估计量可表示为为:?参数的估计,作为参数初始值。
(2)医院费用参数方面,科室类住院费用和科室类买药费用服从参数为
?_IHi?(?1,i,?2,i),(i?1,...,12)的Pareto分布。Pareto分布的密度函数为:
?2,i?(1??2,i)?????x,x??1,i1,i2,i?f(x;?1,i,?2,i)??,
,other??0?1,i?min{X},?1,?2的极大似然估计量分别为:??2,i??n?nj?1ln(Xj)?n?ln(min{X}),(n个样本点),可作为在已有数据基础上对参数的
估计,作为参数初始值。
(3)病人参数方面
患者的期望时间和费用服从参数为?_ET,?_EF的正态分布。?_ET?(?1,?1),
2?2?S2,其??X,??_EF?(?2,?22)。?j,?j2(j?1,2)的极大似然估计量分别为:?jj 21n??k?1(Xi?X),(n个样本点),可作为在已有数据基础上对参数的估计,中S?n?12作为参数初始值。
2.4.2 迭代优化
(1)根据公式(3)和公式(4),首先计算出挂号处的Tim指标,记为Tim_R。
Tim_Ri?TRTi?RTi?|(TRTi?RTi)??|
Tin1i?1得到挂号处的时间参数更新值为:
?RT的参数?_RT_new??_RT?(1?Tim_Rin1),n1为前来挂号的人数(非急
诊)。
(2)计算每个科室诊断和各科室住院的Tim指标,科室类住院和科室类买药的Fe指标,分别记为Tim_D,Fe_DB。
Tim_Di?(tlk?dtk)?|(tlk?dtk)??|,k?1,...,12(前六个是科室类诊断的Tim指标,
Ti后六个是科室类住院的Tim指标)
Fe_DBi?(pmk?sak)?|(pmk?sak)??|,k?1,...,12(前六个是科室类买药的Fe指
Fi标,后六个是科室类住院的Fe指标)
得到参数更新值为:
?_SC_newj??_SCj?(1??n2,ji?1Tim_Din2,j),j?1,...,12
?_IH_newj??_IHj??(1?n3,ji?1Fe_Din3,j),j?1,...,12
得到由各个科室诊断时间和各科室类住院时间参数构成的向量:
?_SC_new?[?_SC_newj]1?12,j?1,...12。
得到由各个科室买药费用和各科室类住院费用参数构成的向量:
?_IH_new?[?_IH_newj]1?6,j?1,...12。
(3)计算出买药处的Tim指标,记为Tim_U。
Tim_Ui?TBTi?BTi?|(TBTi?BTi)??|
Ti得到买药处的时间参数新值为: