自动排班方法、装置、设备及计算机存储介质转让专利

申请号 : CN201810972709.6

文献号 : CN110858506A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 胡宇琪邹雪皎

申请人 : 青岛海信医疗设备股份有限公司

摘要 :

本发明实施例提供一种自动排班方法、装置、设备及计算机存储介质。本发明的自动排班方法,包括:接收排班请求消息;获取当前排班周期的已有原始数据;根据所述已有原始数据生成剩余工作量矩阵;获取排班历史数据,所述排班历史数据为接收到所述排班请求消息的时刻之前预设时间段内的排班记录数据;根据所述排班历史数据生成排班频率转移矩阵;根据所述剩余工作量矩阵和所述排班频率转移矩阵生成排班权重矩阵;将所述排班权重矩阵转化为排班权重树;使用回溯算法确定所述排班权重树的最优解,根据所述排班权重树的最优解解析出各个手术间的护士排班结果。本发明实施例可以提高排班公平性、及工作效率,应用效果较好。

权利要求 :

1.一种自动排班方法,其特征在于,包括:接收排班请求消息;

获取当前排班周期的已有原始数据,所述当前排班周期为接收到所述排班请求消息的时刻所在的周期;

根据所述已有原始数据生成剩余工作量矩阵,所述剩余工作量矩阵包括各个护士的剩余工作时长;

获取排班历史数据,所述排班历史数据为接收到所述排班请求消息的时刻之前预设时间段内的排班记录数据;

根据所述排班历史数据生成排班频率转移矩阵,所述频率转移矩阵包括各个护士在各个手术间出现的频率;

根据所述剩余工作量矩阵和所述排班频率转移矩阵生成排班权重矩阵;

将所述排班权重矩阵转化为排班权重树;

使用回溯算法确定所述排班权重树的最优解,根据所述排班权重树的最优解解析出各个手术间的护士排班结果;

反馈所述各个手术间的护士排班结果。

2.根据权利要求1所述的方法,其特征在于,所述根据所述已有原始数据生成剩余工作量矩阵,包括:根据所述已有原始数据确定各个护士的已工作时长;

根据所述各个护士的已工作时长确定各个护士的剩余工作量;

根据所述各个护士的剩余工作量生成所述剩余工作量矩阵;

其中,所述剩余工作量矩阵为n*n阶矩阵,n为护士总人数,且所述剩余工作量矩阵为对角矩阵。

3.根据权利要求2所述的方法,其特征在于,L表示所述剩余工作量矩阵,L的主对角线上的数据分别对应一个护士的剩余工作量;

L=(lij)n*n,其中

其中,oi表示第i个护士的剩余工作量。

4.根据权利要求3所述的方法,其特征在于,所述根据所述排班历史数据生成排班频率转移矩阵,包括:根据所述排班历史数据,计算每个护士在每间手术间中出现的频率,根据所述频率生成排班频率转移矩阵;

其中,rij表示所述频率,R表示排班频率转移矩阵,手术间数量为m,R=(rij)n*m。

5.根据权利要求4所述的方法,其特征在于,所述根据所述剩余工作量矩阵和所述排班频率转移矩阵生成排班权重矩阵,包括:根据公式P=L*R*O=(lij)n*n*(rij)n*m*(oij)m*m=(pij)n*m计算所述排班权重矩阵;

其中,P表示所述排班权重矩阵,O表示修正矩阵,pij表示第i个护士在第j个手术间的权重。

6.根据权利要求1至5任一项所述的方法,其特征在于,所述排班权重树包括根节点和多级子节点,一个多级子节点表示一个护士,所述排班权重树的每个层分别对应一个手术间。

7.根据权利要求6所述的方法,其特征在于,所述使用回溯算法确定所述排班权重树的最优解,包括:从所述根节点开始,自顶向下,使用深度优先的方法对所述排班权重树进行搜索,确定每个子问题的最优解,所述每个子问题为每个手术间安排人员的问题;

所有子问题的最优解构成所述排班权重树的最优解。

8.一种自动排班装置,其特征在于,包括:接收模块,用于接收排班请求消息;

获取模块,用于获取当前排班周期的已有原始数据,所述当前排班周期为接收到所述排班请求消息的时刻所在的周期;

矩阵生成模块,用于根据所述已有原始数据生成剩余工作量矩阵,所述剩余工作量矩阵包括各个护士的剩余工作时长;

所述获取模块,还用于获取排班历史数据,所述排班历史数据为接收到所述排班请求消息的时刻之前预设时间段内的排班记录数据;

所述矩阵生成模块,还用于根据所述排班历史数据生成排班频率转移矩阵,所述频率转移矩阵包括各个护士在各个手术间出现的频率;

所述矩阵生成模块,还用于根据所述剩余工作量矩阵和所述排班频率转移矩阵生成排班权重矩阵;

转化模块,用于将所述排班权重矩阵转化为排班权重树;

最优解确定模块,用于使用回溯算法确定所述排班权重树的最优解,根据所述排班权重树的最优解解析出各个手术间的护士排班结果;

发送模块,用于反馈所述各个手术间的护士排班结果。

9.一种自动排班设备,其特征在于,包括:存储器和处理器;

所述存储器用于存储指令,以使所述处理器执行所述指令,以实现如权利要求1至7任一项所述的自动排班方法。

10.一种计算机存储介质,其特征在于,包括:所述计算机存储介质用于存储计算机程序,所述计算机程序执行时用于实现如权利要求1至7中任一项所述的方法。

说明书 :

自动排班方法、装置、设备及计算机存储介质

技术领域

[0001] 本发明实施例涉及辅助管理技术,尤其涉及一种自动排班方法、装置、设备及计算机存储介质。

背景技术

[0002] 排班是许多企业、医院的一项日常管理工作内容。公平、合理的排班不仅能调用员工积极性,也能够提高工作效率。
[0003] 其中,对于医院的手术间的排班是由护士长手动使用白板、磁铁进行人员排班的,这样不仅十分浪费时间,同时也不方便传阅。采用传统的手动排班已不能满足管理需求,基于此,自动化排班系统应运而生。例如,利用遗传算法实现的自动排班,具体的,使用遗传算法对原始排班数据进行调整,生成新的排班数据。
[0004] 然而,上述利用遗传实现的自动排班,仅仅根据时间进行排班,实际应用效果不好。

发明内容

[0005] 本发明实施例提供一种自动排班方法、装置、设备及计算机存储介质,以提高排班公平性、及工作效率,应用效果较好。
[0006] 第一方面,本发明实施例提供一种自动排班方法,包括:
[0007] 接收排班请求消息;
[0008] 获取当前排班周期的已有原始数据,所述当前排班周期为接收到所述排班请求消息的时刻所在的周期;
[0009] 根据所述已有原始数据生成剩余工作量矩阵,所述剩余工作量矩阵包括各个护士的剩余工作时长;
[0010] 获取排班历史数据,所述排班历史数据为接收到所述排班请求消息的时刻之前预设时间段内的排班记录数据;
[0011] 根据所述排班历史数据生成排班频率转移矩阵,所述频率转移矩阵包括各个护士在各个手术间出现的频率;
[0012] 根据所述剩余工作量矩阵和所述排班频率转移矩阵生成排班权重矩阵;
[0013] 将所述排班权重矩阵转化为排班权重树;
[0014] 使用回溯算法确定所述排班权重树的最优解,根据所述排班权重树的最优解解析出各个手术间的护士排班结果;
[0015] 反馈所述各个手术间的护士排班结果。
[0016] 第二方面,本发明实施例提供一种自动排班装置,包括:
[0017] 接收模块,用于接收排班请求消息;
[0018] 获取模块,用于获取当前排班周期的已有原始数据,所述当前排班周期为接收到所述排班请求消息的时刻所在的周期;
[0019] 矩阵生成模块,用于根据所述已有原始数据生成剩余工作量矩阵,所述剩余工作量矩阵包括各个护士的剩余工作时长;
[0020] 所述获取模块,还用于获取排班历史数据,所述排班历史数据为接收到所述排班请求消息的时刻之前预设时间段内的排班记录数据;
[0021] 所述矩阵生成模块,还用于根据所述排班历史数据生成排班频率转移矩阵,所述频率转移矩阵包括各个护士在各个手术间出现的频率;
[0022] 所述矩阵生成模块,还用于根据所述剩余工作量矩阵和所述排班频率转移矩阵生成排班权重矩阵;
[0023] 转化模块,用于将所述排班权重矩阵转化为排班权重树;
[0024] 最优解确定模块,用于使用回溯算法确定所述排班权重树的最优解,根据所述排班权重树的最优解解析出各个手术间的护士排班结果;
[0025] 发送模块,用于反馈所述各个手术间的护士排班结果。
[0026] 第三方面,本发明实施例提供一种自动排班设备,包括:
[0027] 存储器和处理器;
[0028] 所述存储器用于存储指令,以使所述处理器执行所述指令,以实现如第一方面所述的自动排班方法。
[0029] 第四方面,本发明实施例提供一种计算机存储介质,包括:所述计算机存储介质用于存储计算机程序,所述计算机程序执行时用于实现如第一方面所述的方法。
[0030] 本发明实施例的自动排班方法、装置、设备及计算机存储介质,通过接收排班请求消息,获取当前排班周期的已有原始数据,所述当前排班周期为接收到所述排班请求消息的时刻所在的周期,根据所述已有原始数据生成剩余工作量矩阵;获取排班历史数据,所述排班历史数据为接收到所述排班请求消息的时刻之前预设时间段内的排班记录数据,根据所述排班历史数据生成排班频率转移矩阵,根据所述剩余工作量矩阵和所述排班频率转移矩阵生成排班权重矩阵,将所述排班权重矩阵转化为排班权重树;使用回溯算法确定所述排班权重树的最优解,根据所述排班权重树的最优解解析出各个手术间的护士排班结果,反馈所述各个手术间的护士排班结果。其中通过对排班历史数据进行分析处理,生成排班频率转移矩阵,利用排班频率转移矩阵和剩余工作量矩阵确定护士排班结果,以实现自动生成排班结果,将原本复杂的人工排班转换为自动排班,减少人工工作量,而且可以提高排班公平性、及工作效率,应用效果较好。

附图说明

[0031] 下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍。
[0032] 图1为本发明实施例的自动排班方法的一种应用场景的示意图;
[0033] 图2为本发明实施例的一种自动排班方法的流程图;
[0034] 图3为本发明实施例的剩余工作量矩阵的生成方法的流程图;
[0035] 图4为本发明实施例的排班频率转移矩阵的生成方法的流程图;
[0036] 图5A为本发明实施例的排班权重树的生成方法的流程图;
[0037] 图5B为本发明实施例的一种排班权重树的示意图;
[0038] 图6为本发明实施例的排班权重树的最优解的确定方法的流程图;
[0039] 图7为本发明实施例的一种自动排班装置的结构示意图;
[0040] 图8为本发明实施例的一种自动排班设备的结构示意图。

具体实施方式

[0041] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
[0042] 图1为本发明实施例的自动排班方法的一种应用场景的示意图,如图1所示,本发明实施例的应用场景包括自动排班客户端、服务器和数据库,该自动排班客户端,用于接收用户触发的排班请求操作,该自动排班客户端向服务器发送排班请求消息,服务器执行相应指令,以对数据库中的数据进行操作,得到护士排班结果,并反馈给自动排班客户端,该数据库中存储有手术间信息表、护士信息表、已有排班信息表等,其中,该已有排班信息表包括手术间护士排班历史数据,具体的,该服务器可以执行本发明实施例的自动排班方法,对该数据库中的数据进行处理,以实现自动化排班,而且可以提高排班公平性、及工作效率,应用效果较好。
[0043] 本发明实施例所涉及的自动排班装置可以是如图1所示的服务器,其可以根据需求进行灵活设置,本发明实施例的自动排班方法的具体实施方式可以参见下述实施例的解释说明。
[0044] 图2为本发明实施例的一种自动排班方法的流程图,本实施例的执行主体可以是上述自动排班装置或自动排班装置中的芯片,如图2所示,本实施例的方法可以包括:
[0045] 步骤101、接收排班请求消息。
[0046] 在需要进行排班时,用户可以通过相应操作以向该自动排班装置或其内部芯片发送该排班请求消息,以使其可以通过下述步骤实现自动化排班,向用户反馈排班结果。
[0047] 步骤102、获取当前排班周期的已有原始数据,所述当前排班周期为接收到所述排班请求消息的时刻所在的周期。
[0048] 其中,排班周期的具体设置可以根据需求进行灵活设置,例如1个月、15天等。
[0049] 具体的,可以从上述数据库中读取手术间信息表、护士信息表、已有排班信息表等数据,将数据按护士、手术间进行分类整理,获取当前排班周期的已有原始数据,举例而言,该当前排班周期的已有原始数据可以是在当前排班周期内各个护士的工作记录数据,例如,该当前排班周期为7月份,接收到上述排班请求消息的时刻是7月15日,则该当前排班周期的已有原始数据是7月1日至7月15日各个护士的工作记录数据。
[0050] 步骤103、根据所述已有原始数据生成剩余工作量矩阵。
[0051] 其中,所述剩余工作量矩阵包括各个护士的剩余工作时长,所述剩余工作量矩阵为n*n阶矩阵,n为护士总人数,且所述剩余工作量矩阵为对角矩阵。
[0052] 步骤104、获取排班历史数据,所述排班历史数据为接收到所述排班请求消息的时刻之前预设时间段内的排班记录数据。
[0053] 其中,该预设时间段可以是一个较长时间段,例如,大于一个排班周期的时间段等。
[0054] 以上述接收到上述排班请求消息的时刻是7月15日为例做进一步举例说明,该排班历史数据为7月15日之前数据库中所有的历史排班记录数据。
[0055] 步骤105、根据所述排班历史数据生成排班频率转移矩阵。
[0056] 其中,所述频率转移矩阵包括各个护士在各个手术间出现的频率,该排班频率转移矩阵为n*m阶矩阵,m为手术间数量。
[0057] 步骤106、根据所述剩余工作量矩阵和所述排班频率转移矩阵生成排班权重矩阵。
[0058] 其中,该排班权重矩阵为n*m阶矩阵,该排班权重矩阵的一个元素用于指示一个护士在一个手术间工作的权重。
[0059] 步骤107、将所述排班权重矩阵转化为排班权重树。
[0060] 其中,该排班权重树包括根节点和多级子节点,一个多级子节点表示一个护士,所述排班权重树的每个层分别对应一个手术间。该多级子节点指该排班权重树的非根节点。
[0061] 步骤108、使用回溯算法确定所述排班权重树的最优解,根据所述排班权重树的最优解解析出各个手术间的护士排班结果。
[0062] 具体的,可以使用回溯算法对该排班权重树进行处理,以确定该排班权重树的最优解,该最优解即可解析出各个手术间的护士排班结果。
[0063] 步骤109、反馈所述各个手术间的护士排班结果。
[0064] 本实施例,通过接收排班请求消息,获取当前排班周期的已有原始数据,所述当前排班周期为接收到所述排班请求消息的时刻所在的周期,根据所述已有原始数据生成剩余工作量矩阵;获取排班历史数据,所述排班历史数据为接收到所述排班请求消息的时刻之前预设时间段内的排班记录数据,根据所述排班历史数据生成排班频率转移矩阵,根据所述剩余工作量矩阵和所述排班频率转移矩阵生成排班权重矩阵,将所述排班权重矩阵转化为排班权重树;使用回溯算法确定所述排班权重树的最优解,根据所述排班权重树的最优解解析出各个手术间的护士排班结果,反馈所述各个手术间的护士排班结果。其中通过对排班历史数据进行分析处理,生成排班频率转移矩阵,利用排班频率转移矩阵和剩余工作量矩阵确定护士排班结果,以实现自动生成排班结果,将原本复杂的人工排班转换为自动排班,减少人工工作量,而且可以提高排班公平性、及工作效率,应用效果较好。
[0065] 下面采用几个具体的实施例,对图2所示方法实施例的技术方案进行详细说明。
[0066] 图3为本发明实施例的剩余工作量矩阵的生成方法的流程图,本实施例在图2所示实施例的基础上,对上述步骤103进行具体解释说明,如图3所示,本实施例的方法可以包括:
[0067] 步骤201、根据所述已有原始数据确定各个护士的已工作时长。
[0068] 具体的,根据已有原始数据,计算出n位护士的分别已工作时长wi,i分别取1至n,n为护士总人数。
[0069] 步骤202、根据所述各个护士的已工作时长确定各个护士的剩余工作量。
[0070] 根据每位护士的已工作时长,计算每位护士的剩余工作量oi,具体可以根据公式(1)计算每位护士的剩余工作量oi。
[0071]
[0072] 其中p和q为系数,t和m为指数,其均可以取任意数值。例如,q、p、t、m均取1。其也可以通过历史数据进行训练优化。
[0073] 以H医院有5间手术间,有6位手术间护士,需要为每间手术间安排一位护士值班,剩下的一位护士则休假,为例进行举例说明。假设排班周期为6天,接收到该请求消息的时刻为已工作4天,仍需工作2天。
[0074] 其中当前排班周期的已有原始数据如下表所示:
[0075]日期 手术间1 手术间2 手术间3 手术间4 手术间5
第一天 护士A 护士B 护士C 护士D 护士E
第二天 护士A 护士C 护士D 护士E 护士F
第三天 护士A 护士B 护士D 护士E 护士F
第四天 护士A 护士B 护士C 护士E 护士F
[0076] 即第一天护士F休假,第二天护士B休假,第三天护士C休假,第四天护士D休假。
[0077] 根据如上表的已有原始数据可以计算出,这6位护士的已工作时长为{4,3,3,3,4,3},此时的剩余工作量分别为{1,2,2,2,1,2}。
[0078] 需要说明的是,本实施例以各个护士的总工时相同为例进行举例说明,其也可以设置为不同的总工时,即可以根据需求进行灵活设置。
[0079] 步骤203、根据所述各个护士的剩余工作量生成所述剩余工作量矩阵。
[0080] 其中,所述剩余工作量矩阵为n*n阶矩阵,n为护士总人数,且所述剩余工作量矩阵为对角矩阵。
[0081] 具体的,根据计算出的n位护士的剩余工作量oi(或 )生成n*n阶的剩余工作量矩阵L,该剩余工作量矩阵L中的主对角线数据为每位护士的剩余工作量,其他位置则赋0,即矩阵可表示为:
[0082] 其中
[0083] 其中,OI表示第i个护士的剩余工作量,i取1至n。
[0084] 以上述6位护士的剩余工作量分别为{1,2,2,2,1,2}为例做进一步举例说明,该剩余工作量矩阵为:
[0085]
[0086] 图4为本发明实施例的排班频率转移矩阵的生成方法的流程图,本实施例在图2所示实施例的基础上,对上述步骤105进行具体解释说明,如图4所示,本实施例的方法可以包括:
[0087] 步骤301、根据所述排班历史数据,计算每个护士在每间手术间中出现的频率。
[0088] 具体的,通过对排班历史数据的分析,计算出每个护士在每间手术间中出现的频率。rij表示所述频率,i取1至n,j取1至m。m为手术间数量。
[0089] 步骤302、根据所述频率生成排班频率转移矩阵。
[0090] 其中,R表示排班频率转移矩阵,R=(rij)n*m。
[0091] 以上述6位护士5个手术间为例做进一步举例说明,该排班频率转移矩阵如下:
[0092]
[0093] 本发明实施例还提供一种排班权重矩阵的生成方法,本实施例在图2所示实施例的基础上,对上述步骤106进行具体解释说明,本实施例的方法可以包括:
[0094] 根据公式(2)计算排班权重矩阵。
[0095] P=L*R*O=(lij)n*n*(rij)n*m*(oij)m*m=(pij)n*m  (2)
[0096] 其中,P表示所述排班权重矩阵,O表示修正矩阵,pij表示第i个护士在第j个手术间的权重。
[0097] 具体的,将剩余工作量矩阵L与排班频率转移矩阵R相乘,计算出排班权重矩阵P,另一种可实现方式,可再与修正矩阵O相乘,可根据实际情况或数据训练等方式进行灵活设置。排班权重矩阵P是一个表示选择护士顺序的邻接矩阵。
[0098] 以上述6位护士5个手术间为例做进一步举例说明,根据上述L和R计算出排班权重矩阵P(本实施例以不需要修正矩阵O为例进行举例说明),得出P为:
[0099]
[0100] 需要说明的是,可以提供用户接口对排班权重矩阵P进行修改或调整。
[0101] 图5A为本发明实施例的排班权重树的生成方法的流程图,本实施例在图2所示实施例的基础上,对上述步骤107进行具体解释说明,该排班权重树包括根节点和多级子节点,一个多级子节点表示一个护士,下文也称其为护士节点,该排班权重树的每个层分别对应一个手术间,如图5A所示,本实施例的方法可以包括:
[0102] 步骤501、设置树的根节点。
[0103] 步骤502、由根节点出发,列出所有可能选择的护士节点即为树的第一层节点,并根据排班权重矩阵中对应位置的权重标注根节点到此护士节点的路径的权重。
[0104] 步骤503、对第i层每个护士节点,分别列出所有可能选择的护士节点即为树的第i+1层护士节点,并根据排班权重矩阵为对应路径标注对应权重。
[0105] 其中,i分别取1至m,即为每一层(对应手术间)的每一个护士节点(对应护士)重复步骤503,直到完成树的绘制,即得到排班权重树。
[0106] 图5B为本发明实施例的一种排班权重树的示意图,以上述3位护士3个手术间为例做举例说明,对于第一层,即对应手术间1,护士A、护士B和护士C均可以安排,对于第二层,即对应手术间2,与第一层的护士A连接的护士节点可以是护士B和护士C,与第一层的护士B连接的护士节点可以是护士A和护士C,与第一层的护士C连接的节点可以是护士A和护士B,对于第三层,即对应手术间3,从左至右,与第二层的第一个护士B连接的护士节点只能是护士C,与第二层的第一个护士C连接的护士节点只能是护士B,与第二层的第一个护士A连接的护士节点只能是护士C,与第二层的第二个护士C连接的护士节点只能是护士A,与第二层的第二个护士A连接的护士节点只能是护士B,与第二层的第二个护士B连接的护士节点只能是护士A,得到的排班权重树如图5B所示,节点之间的连线用于设置相应护士在相应手术间的权重。
[0107] 图6为本发明实施例的排班权重树的最优解的确定方法的流程图,本实施例在图2所示实施例的基础上,对上述步骤108进行具体解释说明,如图6所示,本实施例的方法可以包括:
[0108] 步骤601、划分为每间手术间安排人员的子问题。
[0109] 步骤602、查找子问题的最优解。
[0110] 具体的,从根节点开始,自顶向下,使用深度优先的方法进行搜索,寻找每个子问题的最优解。例如,选取权重最大的路径。
[0111] 步骤603、判断子问题的最优解是否满足约束条件,若满足,则执行步骤604,若不满足,则执行步骤606。
[0112] 其中,约束条件可以根据需求进行灵活设置,即可将问题转化为多约束条件的最优解问题。例如,可以根据排班的特性,设定约束条件为:最大连续工作日期DWmax,最大连续休息日期DHmax,请求休假人员集合H等约束条件。
[0113] 举例而言,以H医院为例做进一步举例说明,约束条件可以为:DWmax=5,DHmax=1,H={},即可以连续工作5天,每次只能休息1天,无人请求休假。
[0114] 步骤604、确认子问题的最优解。
[0115] 步骤605、判断是否所有手术间均已安排,若是,则结束,若否,则执行步骤602。
[0116] 直到所有手术间都已安排人员,则所有子问题的最优解即可构造为排班问题最优解。
[0117] 步骤606、使用剪枝函数后进行回溯,并执行步骤602。
[0118] 以上述H医院为例做进一步举例说明,根据H医院的排班权重树,使用回溯算法求最优解的具体求解过程如下:将问题划分为每间手术间安排人员的子问题,即为每间手术间安排一位护士。从手术间1开始,寻找每个手术间的最优解。判断最优解是否满足设定的约束条件,否则使用剪枝函数后进行回溯,直到5间手术间都已安排护士,则所有子问题的最优解即可构造为问题最优解,此时排班结果如下:
[0119]日期 手术间1 手术间2 手术间3 手术间4 手术间5
第五天 护士B 护士C 护士D 护士E 护士F
[0120] 图7为本发明实施例的一种自动排班装置的结构示意图,如图7所示,本实施例的装置可以包括:接收模块11、获取模块12、矩阵生成模块13、转化模块14、最优解确定模块15和发送模块16,其中,接收模块11用于接收排班请求消息;获取模块12用于获取当前排班周期的已有原始数据,所述当前排班周期为接收到所述排班请求消息的时刻所在的周期;矩阵生成模块13用于根据所述已有原始数据生成剩余工作量矩阵,所述剩余工作量矩阵包括各个护士的剩余工作时长;所述获取模块12还用于获取排班历史数据,所述排班历史数据为接收到所述排班请求消息的时刻之前预设时间段内的排班记录数据;所述矩阵生成模块13还用于根据所述排班历史数据生成排班频率转移矩阵,所述频率转移矩阵包括各个护士在各个手术间出现的频率;所述矩阵生成模块13还用于根据所述剩余工作量矩阵和所述排班频率转移矩阵生成排班权重矩阵;转化模块14用于将所述排班权重矩阵转化为排班权重树;最优解确定模块15用于使用回溯算法确定所述排班权重树的最优解,根据所述排班权重树的最优解解析出各个手术间的护士排班结果;发送模块16用于反馈所述各个手术间的护士排班结果。
[0121] 可选的,矩阵生成模块13用于根据所述已有原始数据确定各个护士的已工作时长;根据所述各个护士的已工作时长确定各个护士的剩余工作量;根据所述各个护士的剩余工作量生成所述剩余工作量矩阵;其中,所述剩余工作量矩阵为n*n阶矩阵,n为护士总人数,且所述剩余工作量矩阵为对角矩阵。
[0122] 可选的,L表示所述剩余工作量矩阵,L的主对角线上的数据分别对应一个护士的剩余工作量;
[0123] 其中
[0124] 其中,oI表示第i个护士的剩余工作量。
[0125] 可选的,所述矩阵生成模块13用于:根据所述排班历史数据,计算每个护士在每间手术间中出现的频率,根据所述频率生成排班频率转移矩阵;其中,rij表示所述频率,R表示排班频率转移矩阵,手术间数量为m,R=(rij)n*m。
[0126] 可选的,所述矩阵生成模块13用于:根据公式P=L*R*O=(lij)n*n*(rij)n*m*(oij)m*m=(pij)n*m计算所述排班权重矩阵。
[0127] 其中,P表示所述排班权重矩阵,O表示修正矩阵,pij表示第i个护士在第j个手术间的权重。
[0128] 可选的,所述排班权重树包括根节点和多级子节点,一个多级子节点表示一个护士,所述排班权重树的每个层分别对应一个手术间。
[0129] 可选的,所述最优解确定模块15用于:从所述根节点开始,自顶向下,使用深度优先的方法对所述排班权重树进行搜索,确定每个子问题的最优解,所述每个子问题为每个手术间安排人员的问题;所有子问题的最优解构成所述排班权重树的最优解。
[0130] 本实施例的装置,可以用于执行上述任一方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
[0131] 图8为本发明实施例的一种自动排班设备的结构示意图,如图8所示,本实施例的装置可以包括:存储器21和处理器22,其中,存储器21用于存储计算机程序,处理器22用于执行所述计算机程序,以实现上述各个实施例所述的方法。
[0132] 本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
[0133] 本发明实施例还提供一种计算机存储介质,所述计算机存储介质用于存储计算机程序,所述计算机程序执行时用于实现如上述任一实施例所述的方法。其实现原理和技术效果类似,此处不再赘述。
[0134] 本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0135] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。