许 丹,刘洪伟,齐二石
(天津大学管理与经济学部,天津300072)
护士是医院服务体系的重要组成部分,科学合理地安排护士工作时间不仅可以有效提高其工作满意度,而且还能提高护理服务质量与服务效率,降低医院的人力资源运营成本[1,2].近年来,随着护士短缺问题的不断凸显[3],护士排班问题越来越受到国内外学者的广泛关注[4,5].
护士排班问题是指针对护士群体,整体考虑护理工作的任务、内容、程序和时间等因素,编制出系统科学的排班方案.现有护士排班研究主要包括以下三个方面:1)以人力成本最小化为目标,确定最优人员结构、层次和数量的能力配置问题;2)人员配置已知情况下,根据法律法规和医院规定,考虑护士个人偏好的排班问题;3)排班计划已知,针对如请假等突发情况的排班计划二次调整问题[6,7].本文研究问题是基于第二个方面,探究现有人员配置无法满足护理需求情况下的护士排班问题.当这种情况发生时,医院常通过安排护士加班来解决这一问题[8].1975年,Ahuja等[9]在护士排班问题中首次将加班作为护士人力资源补偿机制,把加班与否和加班时间纳为决策变量,在提高服务效率的同时有效地降低了护士加班时间.后来,学者们在建立排班模型时分别引入了不同的加班方式,主要包括延时加班[10,11](安排非本班次护士至本班次加班)和临时加班[12,13](安排前一班次护士延时至本班次加班)两种.加班虽然在一定程度上缓解了护士短缺这一现状,但是也给医院带来了巨大的成本压力[14],而且不合理的加班安排不仅会增大护士的工作负荷,降低护士的工作满意度,还会严重影响护理服务质量,给医院带来不可估量的损失[15].因此,做好护士资源短缺下的科学排班和加班安排就显得更为重要.
护士排班问题的情境依赖性较高,而我国在这方面的研究尚处于起步阶段,量化分析较少.已有研究主要集中在三个方面:1)构建护士弹性排班决策支持系统结构[16,17];2)建立符合我国劳动法规约束和医院运营特点的护士排班模型[18,19];3)提出了如变邻域搜索算法和可变邻域搜索遗传算法等解决护士排班问题的算法[20,21].研究中尚未涉及我国医院普遍面临的护士加班问题,这直接影响了排班结果的实用性.本文在以上文献的基础上提出了考虑加班策略的护士排班问题.结合我国医院在实际运营中应对护士短缺的方式方法[22,23],模型同时考虑了文献中提到的两种加班方式.针对该问题提出了两阶段求解法,量化分析了临时加班、延时加班和组合加班这三种加班策略对医院人力成本的影响及规律,探究了组合加班策略的优势.
在预设排班周期D内,根据护理服务需求量,将现有I名护士安排至各天的三个班次中,可以得到常规排班计划,若该常规排班计划无法满足护理需求量,则选择合适护士人选进行加班安排.排班周期一般为一至四周不等[4,5],根据护理连续性需求,护士日常工作中的一天一般是指从早8:00至次日早8:00,医院通常将每天24 h划分为三个班次,分别为早班(8:00∼16:00),晚班(16:00∼0:00)和夜班(0:00∼8:00).每名护士在该排班周期内各天班次如下表所示,括号内容为加班项,若该天无班次安排时则为休息.最终得到排班加班综合计划,如表1所示.
表1 护士排班加班计划Table 1 The scheduling of overtime for nurses
在安排常规排班计划时要严格遵循法律法规和医院规定:1)各班次护士配置总量不低于实际需求量;2)排班周期D内,护士工作总天数在规定上下限之内,且连续工作天数和连续夜班数量不能超过规定上限;3)连续24 h内,护士工作班次不超过一个.与此同时,也要尽可能满足不同护士的班次偏好与要求,如连续工作Zd后可以休息一天,或者尽量保持前后两天工作班次类型一致等.当必须通过加班方式弥补护理人力不足时,医院应按照法律标准支付护士加班工资.
本文考虑了医院中最常用的两种加班方式,即临时加班和延时加班.这两种加班方式各有利弊,临时加班规定加班班次的相邻两个班次不能为加班护士安排任何常规工作和加班任务,所以加班护士精力较为充沛,护理效率和质量较高,但是这种方式会占用护士倒休时间,且护士在加班途中需付出相应的交通成本和时间成本.延时加班护士由于是前一班次延时至本班次加班,所以护士工作的班次是连续的,省去了加班途中的交通和时间成本,但是护士长时间处于高强度的工作状态中,疲劳感增强,在一定程度上影响护理效率和质量.
本文构建了考虑加班策略的护士排班模型,模型中考虑了三种护士加班策略:临时加班、延时加班和组合加班,其中组合加班策略为同时采用临时加班方式和延时加班方式的组合策略.模型中相关参数说明如表2所示,决策变量说明如表3所示.
表2 参数说明Table 2 The description of parameters
表3 决策变量说明Table 3 The description of decision variables
模型的优化目标为总护理人力成本最小.该护理人力成本由两个部分组成:护士的常规工作工资和加班工资.其中加班工资分为临时加班工资和延时加班工资,以及由临时加班而产生的固定额外费用.因为临时加班护士需要在加班途中付出相应的交通成本和时间成本,所以医院通常会给予一些经济补偿.虽然护士居所距离医院的距离不同、护士选择乘坐的交通方式也不尽相同,但是医院通常会给每位临时加班护士每加班班次以固定金额补偿,在模型中体现为医院的固定额外成本.
具体模型表示如下
在该模型中,式(1)表示模型的目标函数;式(2)表示每天各班次护士配置量(含加班护士)不低于实际需求量;式(3)表示每名护士在任意班次只能处于“常规工作”,“临时加班”,“延时加班”和“休息”这四种状态之一;式(4)∼式(6)表示连续三个班次内(连续24 h内),常规工作和临时加班不能同时出现;式(7)∼式(9)表示连续3个班次内(连续24 h内),临时加班和延时加班不能同时出现;式(10)和式(11)表示若护士被安排了常规工作,其下一班次才可以被安排延时加班;式(12)和式(13)表示加班时间不能超过规定上限;式(14)∼式(16)表示排班周期内,每名护士常规工作总天数、连续常规工作天数和夜班数量应在规定范围内;式(17)记录任意护士前后两天常规工作班次类型不一致的次数;式(18)记录排班周期内任意护士连续常规工作超过Zd的次数;式(19)表示违反式(12)和式(13)的总次数不能超过规定上限;式(20)和式(21)表示变量取值范围.模型中的d0为排班周期内任意一天.
对上述模型进行两阶段求解,第一阶段生成可行班型再选出可用班型;第二阶段利用遗传算法对模型进行求解,利用多点并行的搜索机制达到高效搜索的目的.
设定排班周期,从排班周期内的第一天开始,护士每天可以被安排早班、晚班、夜班和休息四种状态,生成所有可能状态组合的班型,直至排班周期结束.然后,依据法律法规和医院对常规工作的相关规定,依次检验所生成班型是否符合式(4)∼式(6)和式(14)∼式(16),以式(5)和式(6)的检验为例,若某天安排了晚班,则转天不能安排早班,即可行班型中不能出现“晚班–早班”的情况.以此类推,舍去所有不满足上述约束的班型,最终生成排班周期内可行班型集合.
对已得到的可行班型集合进一步筛选,计算各可行班型违反护士对班次偏好的总次数,即统计各可行班型违反式(17)和式(18)的总次数,总次数越小说明护士对该班型的满意度越高.当总次数小于Wmax时该可行班型记为可用班型,否则舍去.以某一可行班型“早–早–晚–夜–休–晚–晚”为例,根据式(17)计算前后两天班次类型不一致的次数为2;设定式(18)中Z=3d,则违反该约束的次数记为1.该可行班型违反式(17)和式(18)的总次数为3.Wmax一般由管理者视具体情况而定,若Wmax=4,则可将该可行班型记为可用班型.最后,按照可用班型的生成次序对其依次编号.
本文研究的问题要实现护士在排班周期内的班次安排,包括常规班次安排和加班安排.染色体编码中仅实现对常规班次的安排,采用整数编码方式,染色体长度由护士人数决定,染色体中基因位置从左至右依次与护士的编号相对应,基因位上的数字代表任意一可用班型,班型可重复使用,随机为每位护士安排一种可用班型,至全部护士安排完毕为止.
设置种群规模,通过随机初始化生成初始种群.令个体适应度函数可以定义为Fit(f(x))=f(x),其中f(x)为数学模型的目标函数,即
根据解码过程计算适应度值.算法步骤如下:
步骤1设定排班周期,将可用班型集合中各班型从1,2,...加以编号,基于可用班型集合,生成初始种群.染色体上各基因位上的基因是任一班型的编号;
步骤2转化染色体形式,将染色体各基因位对应的可用班型序号转化为各天的排班计划.
以排班周期为7 d时的某一条染色体为例进行说明,假设该染色体第一个基因位上的基因为5,其对应的可用班型为“早–早–晚–夜–休–晚–晚”,则意味着第一位护士在排班周期内选用可用班型5,班次安排为“早–早–晚–夜–休–晚–晚”,可将此班次安排记作[1 1 2 3 0 2 2].同理将班型9所代表的班次[2 2 2 1 1 0 1]安排给第二位护士,其他基因位依次类推,直到最后一位基因转化完毕,如图1所示.
步骤3依次对排班计划中的各天各班次进行检验,判断该班次护士人数是否满足护理需求,若满足则得到可行解并计算此时的护士人力成本;若不满足则安排护士加班后再判断是否可以满足护理需求,满足则得到可行解并计算此时的护士人力成本,不满足则未得到可行解.
图1 可用班型转化图Fig.1 Available shift type conversion chart
解码过程中,当待检验班次护士数量不能满足护理需求时,通过三种加班策略予以人力补充:临时加班策略,延时加班策略和组合加班策略.三种策略解码流程如下
加班策略1临时加班,服从式(4)∼式(6)和式(13).
步骤1根据式(4)∼式(6)规定,选取一名24 h内未常规工作,且未加班的护士;
步骤2判断该护士总加班时间是否达到式(13)规定的上限,若未达到转步骤3,否则转步骤1;
步骤3安排该护士在该班次临时加班;
步骤4判断该班次所有护士是否满足护理需求,若满足则得到可行解,否则转步骤5;
步骤5判断所有符合加班条件的护士是否均已安排完毕,若均已安排完毕则无可行解,否则转步骤1.
加班策略2延时加班,服从式(10)∼式(13).
情况1排班周期内,首天首班次加班安排.由于该班次无上一班次,所以该班次若出现护士供给不足的情况则无法为其安排加班工作.
情况2排班周期内,其他班次加班安排.
步骤1根据式(10)和式(11)规定,选取一名上一班次常规工作的护士;
步骤2判断该护士总加班时间是否达到式(13)规定的上限,若未达到转步骤3,否则转步骤1;步骤3安排该护士在该班次延时加班,并根据式(12)限定加班时间;
步骤4判断该班次所有护士是否满足护理需求,若满足则得到可行解,否则转步骤5;
步骤5判断所有符合加班条件的护士是否均已安排完毕,若均已安排完毕则无可行解,否则转步骤1.
加班策略3组合加班,服从式(4)∼式(6)和式(10)∼式(13).
步骤1根据式(4)∼式(6)和式(13)选出可临时加班的所有护士,同时根据式(10)∼式(13)选出可延时加班的所有护士;
步骤2对所有可加班护士进行加班组合,判断每种加班组合是否满足该班次的护理需求,若存在满足护理需求的加班组合转步骤3,否则未得到可行解;
步骤3选取所有加班组合中成本最小的方式安排该班次加班,得到可行解.
1)选择操作 为将适应度最好的个体尽量保留到下一代群体中,本文采用最优保存策略和轮盘赌选择相结合的方式对种群中的染色体执行选择操作.
2)交叉操作 该操作在遗传算法中起核心作用,决定遗传算法的全局搜索能力.本文采用单点交叉方式,随机选择两个染色体,选取交叉位置,将两条染色体分别从该交叉位置截为两段,交换染色体的后半段,得到新染色体.
3)变异操作 该操作在遗传算法中属于辅助性的搜索操作,目的是保持种群多样性.本文采用单点变异方式,随机选择染色体上的一个基因位,随机生成一个新可用班型,若该班型不同于现有班型,则将其插入所选位置;若与现有班型相同,则再次生成新班型,重复该过程.
为了验证该模型的有效性,对某医院某科室的护士排班情况进行分析.该科室的排班周期为一周,护士常规工作安排应遵循下列规定:每名护士最多工作6个班次,最少工作5个班次;每名护士连续工作最长时间为5 d;每名护士夜班次数最多为2次;护士普遍期望连续上4天班可以有休息日;临时加班引起的固定额外费用为10元/次.将排班计划可违反护士偏好的次数上限设定为2次.排班周期内,护士加班总时间不超过8 h,即临时加班不超过1个班次,或者延时加班的总时间不超过8 h,且单次加班时间不超过3 h.该科室常规工资为120元/班.如遇护理需求量大需安排护士加班时,应根据劳动法规定:在正常工作时间以外延长工作时间的,应按照不低于小时工资基数的150%支付加班工资;在休息日工作的,按照不低于日或者小时工资基数的200%支付加班工资.根据该医院某科室的护理工时,核算出各班次护士需求数量如表4所示.分析中,排班方式1采用的是加班策略1(临时加班策略),排班方式2采用的是加班策略2(延时加班策略),排班方式3采用的是加班策略3(组合加班策略).设定程序在MATLAB(R2014a)平台下编程运行,实验参数设置如下,种群规模为200,代沟为0.85,交叉率为0.85,变异率为0.1,最大进化代数为100.
表4 护士需求表(单位:人)Table 4 The demand of nurse(Unit:person)
首先,从最小化人力成本的角度对比分析排班方式1和排班方式2,两种排班方式在不同护士数量下的人力成本对比情况如图2所示.
图2 两种加班策略人力成本(C)对比图,(N为加班人数)Fig.2 The comparison of the cost(C)of the two overtime strategies,(N is the number of working overtime)
分析中将临时加班工资设置为劳动法规最低标准,即小时工资基数的200%(240元/班次).将延时加班工资从劳动法规最低标准开始,按照小时工资基数的150%,200%,250%和300%逐步增加.当护士数量小于25名时,两种排班方式均无法满足表2中的护士需求;当护士数量大于30名时,由于护士数量充足故不需要加班工作,此时两种排班方式下的人力成本保持一致;当护士数量在25名至30名之间时,两种排班方式的人力成本存在差异.成本差异是因为在相同护士配置条件下,当需要护士加班时,延时加班较临时加班更加灵活,尤其当护理需求量小于1名护士1个班次工作量时,采用延时加班可以安排护士以0∼3 h中任意一时间方式加班,加班安排的柔性度高,可尽量避免护士人力的浪费,更加节省人力成本.由于排班方式2是由上一班次护士延时至本班次加班,所以护士的加班时间集中度高,管理者需要根据本班次内护理需求的具体分布合理安排护士工作,以保障良好的护理质量.进一步分析可得,当临时加班工资取小时工资基数的200%,延时加班取150%和200%时,在护士数量由25名增长至30名的过程中,排班方式1的人力成本始终高于排班方式2的人力成本.当模型首次得到可行解时(25名护士)两者差距最大,此时排班方式1的人力成本为18 960元,高出排班方式2(150%)人力成本的10.37%.随着护士人数的增加人力成本之间的差距逐渐由10.37%缩小至0.17%.所以,当科室护士配置数量较少时,为了达到节省人力成本的目的,建议管理者采用延时加班策略安排护士加班.随着护士数量的增加,两种排班方式的人力成本差距也逐渐缩小,在人力成本可接受的范围内,管理者可以针对不同时间段护士工作的疲劳感和精神集中度,以及对不同班次的偏好等,采用适合的加班策略.当延时加班工资增长至小时工资基数的250%和300%时,两种排班方式的人力成本相近,差异的绝对值在0.17%∼2.76%之间.利用排班方式2在人力成本上的这一优势,管理者可在考虑到护士个体差异的前提下,采用延时加班策略安排护士加班,并通过逐步提高加班工资,达到激励并提高护士工作热情的目的.
进而,综合分析3种排班方式.将三种加班策略的工资均设置为劳动法规最低标准,即临时加班工资为小时工资基数的200%(240元/班次),延时加班工资为小时工资基数的150%(22.5元/h),组合加班策略中这两种加班方式工资也设置为同样标准.三种排班方式在不同护士数量下的人力成本对比情况如图3所示.
图3 三种加班策略人力成本对比图Fig.3 The comparison of the cost of the three overtime strategies
在护士数量逐渐增加的过程中,排班方式3比排班方式1和排班方式2先达到可行解.这是由于当任意一班次需要安排护士加班时,该班次都有两种加班方式可供选择,与单独采用一种加班方式相比,每一班次的可加班时数变多了,而且,当护士可加班时数足够多时,就可以通过加班替代部分常规工作,从而减少对护士配置数量的需求.当护士数量在25名到30名之间时,三种排班方式的人力成本存在差异,组合加班策略的人力成本始终低于单独使用任意一种加班方式的人力成本.排班方式3的人力成本与排班方式1的最大差距为13.18%,与方式2的最大差距为4.15%.这是由于每一班次可加班时数变多后,护士排班问题的可行解空间也随之变大,可以搜索出比单独采用一种加班方式更好的排班计划.当护士数量大于30时,三种排班方式下的人力成本亦保持一致.组合加班策略的优点在于加班形式更加多样化,面对不同需求的护士可以更加全面地顾及其偏好,对于离家远、交通不方便的护士可以更加侧重于延时加班,对于易疲惫、易倦怠的护士尽量采用临时加班.同时,组合加班也可以在一定程度上达到组织少人化的目的.综合使用两种加班方式可以有效避免使用单一加班策略的不足,达到优势互补的效果.
本文从最小化人力成本的角度考虑,建立了同时考虑延时加班策略和临时加班策略的护士排班模型,运用两阶段求解法对模型进行求解.分析结果显示,延时加班策略比临时加班策略的柔性度更高,可以有效避免护士人力资源的浪费,更加节省人力成本.与单独使用两种加班策略相比,组合加班策略可在护士资源较少的情况下满足护理需求,不仅在成本上更具优势,而且可以更好的满足护士个人偏好,弥补单独使用两种加班策略的缺点和不足.医院管理者在实际排班中,可以根据各科室的具体情况,在考虑人力成本的前提下,从保障护士工作满意度和护理质量两方面综合考虑,选择不同的加班策略.
[1]于 淼,宫 俊,雒兴刚,等.考虑顾客耐心的呼叫中心人力资源配置模型.系统工程学报,2013,28(5):686–693.Yu M,Gong J,Luo X G,et al.Staffing model for call center with customer patience variation.Journal of Systems Engineering,2013,28(5):686–693.(in Chinese)
[2]冯 灵,陈 红,杨 蓉,等.我国护理人力资源配置现状分析.中国医院管理,2013,33(8):69–71.Feng L,Chen H,Yang R,et al.Analysis of the current allocation of nursing human resource in China.Chinese Hospital Management,2013,33(8):69–71.(in Chinese)
[3]Nardi D A,Gyurko C C.The global nursing faculty shortage:Status and solutions for change.Journal of Nursing Scholarship,2013,45(3):317–326.
[4]Cheang B,Li H,Lim A,et al.Nurse rostering problems:A bibliographic survey.European Journal of Operational Research,2003,151(3):447–460.
[5]Burke E K,De Causmaecker P,Berghe G V,et al.The state of the art of nurse rostering.Journal of Scheduling,2004,7(6):441–499.
[6]刘 梅,廖少玲,文若兰.护士排班的研究现状.广东医学院学报,2011,29(2):210–211.Liu M,Liao S L,Wen R L.The research status of nurse scheduling.Journal of Guangdong Medical College,2011,29(2):210–211.(in Chinese)
[7]Bradley D J,Martin J B.Continuous personnel scheduling algorithms:A literature review.Journal of the Society for Health Systems,1990,2(2):8–23.
[8]Bae S H.Nursing overtime:Why,how much,and under what working conditions.Nursing Economics,2012,30(2):60–71.
[9]Ahuja H,Sheppard R.Computerized nurse scheduling.Industrial Engineering,1975,7(10):24–29.
[10]Di Martinelly C, Baptiste P, Maknoon MY. An assessment of the integration of nurse timetable changes with operating room planning and scheduling.International Journal of Production Research,2014,52(24):7239–7250.
[11]Guo M,Wu S,Li B,et al.Maximizing the efficiency of use of nurses under uncertain surgery durations:A case study.Computers&Industrial Engineering,2014,78:313–319.
[12]Azaiez M N,Al Sharif S S.A 0-1 goal programming model for nurse scheduling.Computers&Operations Research,2005,32(3):491–507.
[13]Leksakul K,Phetsawat S.Nurse scheduling using genetic algorithm.Mathematical Problems in Engineering,2014,2014:1–16.
[14]Wright P D,Mahar S.Centralized nurse scheduling to simultaneously improve schedule cost and nurse satisfaction.Omega:International Journal of Management Science,2013,41(6):1042–1052.
[15]王 晓,韩玉梅.我国护士离职意愿的现状与对策.总装备部医学学报,2014,16(4):237–239.Wang X,Han Y M.Current situation and measures of the nurse turnover intention in China.Medical Journal of General Equipment Headquarters,2014,16(4):237–239.(in Chinese)
[16]刘晓荣,顾仁萍,袁长蓉,等.护士排班决策支持系统.解放军护理杂志,2006,23(1):67–69.Liu X R,Gu R P,Yuan C R,et al.The decision support system of nurse scheduling.Nursing Journal of Chinese People’s Liberation Army,2006,23(1):67–69.(in Chinese)
[17]刘晓荣,陈国良,顾仁萍,等.护士排班决策支持系统模型的研究.解放军护理杂志,2006,23(2):7–9.Liu X R,Chen G L,Gu R P,et al.Study on nurse scheduling decision support system model.Nursing Journal of Chinese People’s Liberation Army,2006,23(2):7–9.(in Chinese)
[18]沈吟东,苏光辉.带约束的护士排班模型和基于变换规则的优化算法.计算机工程与科学,2010,32(7):99–103.Shen Y D,Su G H.Models and solutions based on switch rules for nurse scheduling with constraints.Computer Engineering&Science,2010,32(7):99–103.(in Chinese)
[19]彭黄莉,牛占文.基于目标规划的连续性排班问题研究.武汉理工大学学报(信息与管理工程版),2013,35(5):718–722.Peng H L,Niu Z W.Nurse continuous scheduling problem based on goal programming.Journal of Wuhan University of Technology(Information&Management Engineering),2013,35(5):718–722.(in Chinese)
[20]王 超,董兴业.求解护士排班问题的变邻域搜索算法.计算机应用,2013,33(2):338–352.Wang C,Dong Y X.Variable neighborhood search algorithm for nurse rostering problem.Journal of Computer Applications,2013,33(2):338–352.(in Chinese)
[21]胡廉民,张九华,常永耘,等.求解护士排班问题的可变邻域搜索遗传算法.计算机工程与科学,2013,35(5):149–153.Hu L M,Zhang J H,Chang Y Y,et al.Genetic algorithm with variable neighborhood search to solve nurse rostering problem.Computer Engineering&Science,2013,35(5):149–153.(in Chinese)
[22]张敬珍.基层护理队伍现状分析及对策.中国社区医师,2015,31(2):158–162.Zhang J Z.Analysis on current situation and countermeasures of nursing team of basic level.Chinese Community Doctors,2015,31(2):158–162.(in Chinese)
[23]姜博文,唐加福,阎崇钧.可加班门诊预约能力分配问题的期望方差模型.系统工程学报,2015,30(2):259–268.Jiang B W,Tang J F,Yan C J.Expectation and variance model of capacity allocation in outpatient appointment considering overtime.Journal of Systems Engineering,2015,30(2):259–268.(in Chinese)