智能排班方法、装置、电子设备、介质和计算机程序产品转让专利

申请号 : CN202211416952.2

文献号 : CN115700654A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张珂欣孟靖祥樊苗苏越

申请人 : 中国工商银行股份有限公司

摘要 :

本公开提供了一种智能排班方法、装置、电子设备、介质和计算机程序产品。上述方法和装置可用于人工智能技术领域。智能排班方法包括:根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数;获取排班约束规则和实际人数;根据所述所需人数、所述排班约束规则和所述实际人数,确定m个预排班结果,其中,m为大于等于1的整数;以及将所述m个预排班结果输入排班模型,所述排班模型对所述m个预排班结果进行迭代寻优计算,得到目标排班结果。

权利要求 :

1.一种智能排班方法,其特征在于,包括:

根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数;

获取排班约束规则和实际人数;

根据所述所需人数、所述排班约束规则和所述实际人数,确定m个预排班结果,其中,m为大于等于1的整数;以及将所述m个预排班结果输入排班模型,所述排班模型对所述m个预排班结果进行迭代寻优计算,得到目标排班结果。

2.根据权利要求1所述的方法,其特征在于,所述排班模型包括爬山算法、禁忌搜索算法、模拟退火算法、延迟接受算法和大洪水算法中的至少一个。

3.根据权利要求2所述的方法,其特征在于,所述排班模型对所述m个预排班结果进行迭代寻优计算,得到目标排班结果,包括:构建每个所述预排班结果的排班得分函数f(X);

将所述m个预排班结果组成解空间{X:Xi,i=1,2,3,......,m};

根据所述排班得分函数和所述解空间,利用所述爬山算法得到第一目标解Xr,其中,r为大于等于1且小于等于m的整数;

以所述第一目标解Xr为初始点,根据所述排班得分函数和所述解空间,利用所述禁忌搜索算法得到第二目标解Xk,其中,k为大于等于1且小于等于m的整数;

以所述第二目标解Xk为初始点,根据所述排班得分函数和所述解空间,利用所述模拟退火算法得到第三目标解Xj,其中,j为大于等于1且小于等于m的整数;

以所述第三目标解Xj为初始点,根据所述排班得分函数和所述解空间,利用所述延迟接受算法得到第四目标解Xz,其中,z为大于等于1且小于等于m的整数;

以所述第四目标解Xz为初始点,根据所述排班得分函数和所述解空间,利用所述大洪水算法得到第五目标解Xg,其中,g为大于等于1且小于等于m的整数;以及将所述第五目标解Xg对应的所述预排班结果作为目标排班结果。

4.根据权利要求3所述的方法,其特征在于,所述根据所述排班得分函数和所述解空间,利用所述爬山算法得到第一目标解Xr,包括:在所述解空间中随机选取一个可能解作为初始点;以及

迭代计算t1时间段后,若所述排班得分函数不再增大,将迭代计算的当前解作为第一目标解Xr。

5.根据权利要求3所述的方法,其特征在于,所述以所述第一目标解Xr为初始点,根据所述排班得分函数和所述解空间,利用所述禁忌搜索算法得到第二目标解Xk,包括:以所述第一目标解Xr为初始点,迭代计算t2时间段后,若所述排班得分函数不再增大,将迭代计算的当前解作为第二目标解Xk。

6.根据权利要求3所述的方法,其特征在于,所述以所述第二目标解Xk为初始点,根据所述排班得分函数和所述解空间,利用所述模拟退火算法得到第三目标解Xj,包括:以所述第二目标解Xk为初始点,迭代计算t3时间段后,若所述排班得分函数不再增大,将迭代计算的当前解作为第三目标解Xj。

7.根据权利要求3所述的方法,其特征在于,所述以所述第三目标解Xj为初始点,根据所述排班得分函数和所述解空间,利用所述延迟接受算法得到第四目标解Xz,包括:以所述第三目标解Xj为初始点,迭代计算t4时间段后,若所述排班得分函数不再增大,将迭代计算的当前解作为第四目标解Xz。

8.根据权利要求3所述的方法,其特征在于,所述以所述第四目标解Xz为初始点,根据所述排班得分函数和所述解空间,利用所述大洪水算法得到第五目标解Xg,包括:以所述第四目标解Xz为初始点,迭代计算t5时间段后,若所述排班得分函数不再增大,将迭代计算的当前解作为第五目标解Xg。

9.根据权利要求1所述的方法,其特征在于,所述排班约束规则包括硬规则、中规则和软规则,按照约束重要性排序,硬规则>中规则>软规则,所述根据所述所需人数、所述排班约束规则和所述实际人数,确定m个预排班结果,包括:根据所述所需人数、所述实际人数和所述硬规则,确定p个预排班结果;

在所述p个预排班结果中,加入一部分中规则,确定f个预排班结果;

在所述f个预排班结果中,加入另一部分中规则,确定h个预排班结果;以及在所述h个预排班结果中,加入软规则,确定m个预排班结果,其中,h为大于等于m的整数,f为大于等于h的整数,p为大于等于f的整数。

10.根据权利要求1所述的方法,其特征在于,所述历史业务数据包括呼入量、接听率、转接率、平均通话时长、事后处理时长和振铃时长,所述历史班表信息包括员工利用率和登录率,所述根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数,包括:根据所述呼入量预测固定时间段内的预测呼入量;以及

根据所述预测呼入量、所述接听率、所述转接率、所述平均通话时长、所述事后处理时长、所述振铃时长、所述员工利用率和所述登录率计算所述固定时间段内的所需人数。

11.一种智能排班装置,其特征在于,包括:

计算模块,所述计算模块用于执行根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数;

获取模块,所述获取模块用于执行获取排班约束规则和实际人数;

第一确定模块,所述第一确定模块用于执行根据所述所需人数、所述排班约束规则和所述实际人数,确定m个预排班结果,其中,m为大于等于1的整数;以及第二确定模块,所述第二确定模块用于执行将所述m个预排班结果输入排班模型,所述排班模型对所述m个预排班结果进行迭代寻优计算,得到目标排班结果。

12.一种电子设备,其特征在于,包括:

一个或多个处理器;

一个或多个存储器,用于存储可执行指令,所述可执行指令在被所述处理器执行时,实现根据权利要求1~10中任一项所述的方法。

13.一种计算机可读存储介质,其特征在于,所述存储介质上存储有可执行指令,该指令被处理器执行时实现根据权利要求1~10中任一项所述的方法。

14.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序包括一个或者多个可执行指令,所述可执行指令被处理器执行时实现根据权利要求1~10中任一项所述的方法。

说明书 :

智能排班方法、装置、电子设备、介质和计算机程序产品

技术领域

[0001] 本公开涉及人工智能技术领域,更具体地,涉及一种智能排班方法、装置、电子设备、介质和计算机程序产品。

背景技术

[0002] 目前大多数银行坐席人员的排班工作,主要依赖于人工排班。排班规则非常复杂,且极度依赖主观经验、费时费力,智能化水平较低。具体地,排班师首先会整理下个排班周期内所承载地区的整体业务规律、总预测业务量、每日15分钟业务数据及对应各时段的人员需求等基础数据;再依据最新人员情况,按现有人员规模遵从排班原则、出勤率等计算其日均理论接听能力;依据提供的人员情况设计班表。完成班表设计后发送至客服部进行意见征求。排班师根据客服部提出优化建议进行调整,同时再次测算调整后的班表是否能满足业务需求,若运营管理部对班表的业务审核通过,则发客服部进行班表发布。

发明内容

[0003] 有鉴于此,本公开提供了一种智能、高效、准确和省时省力的智能排班方法、装置、电子设备、计算机可读存储介质和计算机程序产品。
[0004] 本公开的一个方面提供了一种智能排班方法,包括:根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数;获取排班约束规则和实际人数;根据所述所需人数、所述排班约束规则和所述实际人数,确定m个预排班结果,其中,m为大于等于1的整数;以及将所述m个预排班结果输入排班模型,所述排班模型对所述m个预排班结果进行迭代寻优计算,得到目标排班结果。
[0005] 根据本公开实施例的智能排班方法,通过所需人数、排班约束规则和实际人数,可以确定出m个预排班结果,通过排班模型对m个预排班结果进行迭代寻优计算,可以得到目标排班结果,目标排班结果可以理解为最优的排班结果。通过本公开的方法使得无需依赖于人工排班,即使在排班规则复杂的情况下,也可以高效、准确地得到最优的排班结果,省时省力,智能化水平较高。
[0006] 在一些实施例中,所述排班模型包括爬山算法、禁忌搜索算法、模拟退火算法、延迟接受算法和大洪水算法中的至少一个。
[0007] 在一些实施例中,所述排班模型对所述m个预排班结果进行迭代寻优计算,得到目标排班结果,包括:构建每个所述预排班结果的排班得分函数f(X);将所述m个预排班结果组成解空间{X:Xi,i=1,2,3,......,m};根据所述排班得分函数和所述解空间,利用所述爬山算法得到第一目标解Xr,其中,r为大于等于1且小于等于m的整数;以所述第一目标解Xr为初始点,根据所述排班得分函数和所述解空间,利用所述禁忌搜索算法得到第二目标解Xk,其中,k为大于等于1且小于等于m的整数;以所述第二目标解Xk为初始点,根据所述排班得分函数和所述解空间,利用所述模拟退火算法得到第三目标解Xj,其中,j为大于等于1且小于等于m的整数;以所述第三目标解Xj为初始点,根据所述排班得分函数和所述解空间,利用所述延迟接受算法得到第四目标解Xz,其中,z为大于等于1且小于等于m的整数;以所述第四目标解Xz为初始点,根据所述排班得分函数和所述解空间,利用所述大洪水算法得到第五目标解Xg,其中,g为大于等于1且小于等于m的整数;以及将所述第五目标解Xg对应的所述预排班结果作为目标排班结果。
[0008] 在一些实施例中,所述根据所述排班得分函数和所述解空间,利用所述爬山算法得到第一目标解Xr,包括:在所述解空间中随机选取一个可能解作为初始点;以及迭代计算t1时间段后,若所述排班得分函数不再增大,将迭代计算的当前解作为第一目标解Xr。
[0009] 在一些实施例中,所述以所述第一目标解Xr为初始点,根据所述排班得分函数和所述解空间,利用所述禁忌搜索算法得到第二目标解Xk,包括:以所述第一目标解Xr为初始点,迭代计算t2时间段后,若所述排班得分函数不再增大,将迭代计算的当前解作为第二目标解Xk。
[0010] 在一些实施例中,所述以所述第二目标解Xk为初始点,根据所述排班得分函数和所述解空间,利用所述模拟退火算法得到第三目标解Xj,包括:以所述第二目标解Xk为初始点,迭代计算t3时间段后,若所述排班得分函数不再增大,将迭代计算的当前解作为第三目标解Xj。
[0011] 在一些实施例中,所述以所述第三目标解Xj为初始点,根据所述排班得分函数和所述解空间,利用所述延迟接受算法得到第四目标解Xz,包括:以所述第三目标解Xj为初始点,迭代计算t4时间段后,若所述排班得分函数不再增大,将迭代计算的当前解作为第四目标解Xz。
[0012] 在一些实施例中,所述以所述第四目标解Xz为初始点,根据所述排班得分函数和所述解空间,利用所述大洪水算法得到第五目标解Xg,包括:以所述第四目标解Xz为初始点,迭代计算t5时间段后,若所述排班得分函数不再增大,将迭代计算的当前解作为第五目标解Xg。
[0013] 在一些实施例中,所述排班约束规则包括硬规则、中规则和软规则,按照约束重要性排序,硬规则>中规则>软规则,所述根据所述所需人数、所述排班约束规则和所述实际人数,确定m个预排班结果,包括:根据所述所需人数、所述实际人数和所述硬规则,确定p个预排班结果;在所述p个预排班结果中,加入一部分中规则,确定f个预排班结果;在所述f个预排班结果中,加入另一部分中规则,确定h个预排班结果;以及在所述h个预排班结果中,加入软规则,确定m个预排班结果,其中,h为大于等于m的整数,f为大于等于h的整数,p为大于等于f的整数。
[0014] 在一些实施例中,所述历史业务数据包括呼入量、接听率、转接率、平均通话时长、事后处理时长和振铃时长,所述历史班表信息包括员工利用率和登录率,所述根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数,包括:根据所述呼入量预测固定时间段内的预测呼入量;以及根据所述预测呼入量、所述接听率、所述转接率、所述平均通话时长、所述事后处理时长、所述振铃时长、所述员工利用率和所述登录率计算所述固定时间段内的所需人数。
[0015] 本公开的另一个方面提供了一种智能排班装置,包括:计算模块,所述计算模块用于执行根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数;获取模块,所述获取模块用于执行获取排班约束规则和实际人数;第一确定模块,所述第一确定模块用于执行根据所述所需人数、所述排班约束规则和所述实际人数,确定m个预排班结果,其中,m为大于等于1的整数;以及第二确定模块,所述第二确定模块用于执行将所述m个预排班结果输入排班模型,所述排班模型对所述m个预排班结果进行迭代寻优计算,得到目标排班结果。
[0016] 本公开的另一方面提供了一种电子设备,包括一个或多个处理器以及一个或多个存储器,其中,所述存储器用于存储可执行指令,所述可执行指令在被所述处理器执行时,实现如上所述方法。
[0017] 本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
[0018] 本公开的另一方面提供了一种计算机程序产品,包括计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。

附图说明

[0019] 通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
[0020] 图1示意性示出了根据本公开实施例的可以应用方法、装置的示例性系统架构;
[0021] 图2示意性示出了根据本公开实施例的智能排班方法的流程图;
[0022] 图3示意性示出了根据本公开实施例的根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数的流程图;
[0023] 图4示意性示出了根据本公开实施例的根据所需人数、排班约束规则和实际人数,确定m个预排班结果的流程图;
[0024] 图5示意性示出了根据本公开实施例的排班模型对m个预排班结果进行迭代寻优计算,得到目标排班结果的流程图;
[0025] 图6示意性示出了根据本公开实施例的根据排班得分函数和解空间,利用爬山算法得到第一目标解Xr的流程图;
[0026] 图7示意性示出了根据本公开实施例的以第一目标解Xr为初始点,根据排班得分函数和解空间,利用禁忌搜索算法得到第二目标解Xk的流程图;
[0027] 图8示意性示出了根据本公开实施例的以第二目标解Xk为初始点,根据排班得分函数和解空间,利用模拟退火算法得到第三目标解Xj的流程图;
[0028] 图9示意性示出了根据本公开实施例的以第三目标解Xj为初始点,根据排班得分函数和解空间,利用延迟接受算法得到第四目标解Xz的流程图;
[0029] 图10示意性示出了根据本公开实施例的以第四目标解Xz为初始点,根据排班得分函数和解空间,利用大洪水算法得到第五目标解Xg的流程图;
[0030] 图11示意性示出了根据本公开实施例的智能排班装置的结构框图;
[0031] 图12示意性示出了根据本公开实施例的第二确定模块的结构框图;
[0032] 图13示意性示出了根据本公开实施例的第一求解单元的结构框图;
[0033] 图14示意性示出了根据本公开实施例的第二求解单元的结构框图;
[0034] 图15示意性示出了根据本公开实施例的第三求解单元的结构框图;
[0035] 图16示意性示出了根据本公开实施例的第四求解单元的结构框图;
[0036] 图17示意性示出了根据本公开实施例的第五求解单元的结构框图;
[0037] 图18示意性示出了根据本公开实施例的第一确定模块的结构框图;
[0038] 图19示意性示出了根据本公开实施例的计算模块的结构框图;
[0039] 图20示意性示出了根据本公开实施例的智能排班模型规划实体示意图;
[0040] 图21示意性示出了根据本公开实施例的算法设计示意图;
[0041] 图22示意性示出了根据本公开实施例的电子设备的方框图。

具体实施方式

[0042] 以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
[0043] 在本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。在本公开的技术方案中,对数据的获取、收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
[0044] 在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
[0045] 在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。
[0046] 目前大多数银行坐席人员的排班工作,主要依赖于人工排班。排班规则非常复杂,且极度依赖主观经验、费时费力,智能化水平较低。具体地,排班师首先会整理下个排班周期内所承载地区的整体业务规律、总预测业务量、每日15分钟业务数据及对应各时段的人员需求等基础数据;再依据最新人员情况,按现有人员规模遵从排班原则、出勤率等计算其日均理论接听能力;依据提供的人员情况设计班表。完成班表设计后发送至客服部进行意见征求。排班师根据客服部提出优化建议进行调整,同时再次测算调整后的班表是否能满足业务需求,若运营管理部对班表的业务审核通过,则发客服部进行班表发布。
[0047] 本公开的实施例提供了一种智能排班方法、装置、电子设备、计算机可读存储介质和计算机程序产品。智能排班方法包括:根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数;获取排班约束规则和实际人数;根据所需人数、排班约束规则和实际人数,确定m个预排班结果,其中,m为大于等于1的整数;以及将m个预排班结果输入排班模型,排班模型对m个预排班结果进行迭代寻优计算,得到目标排班结果。
[0048] 需要说明的是,本公开的智能排班方法、装置、电子设备、计算机可读存储介质和计算机程序产品可用于人工智能技术领域,也可用于除人工智能技术领域之外的任意领域,例如金融领域,这里对本公开的领域不做限定。
[0049] 图1示意性示出了根据本公开实施例的可以应用智能排班方法、装置、电子设备、计算机可读存储介质和计算机程序产品的示例性系统架构100。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
[0050] 如图1所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
[0051] 用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
[0052] 终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
[0053] 服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
[0054] 需要说明的是,本公开实施例所提供的智能排班方法一般可以由服务器105执行。相应地,本公开实施例所提供的智能排班装置一般可以设置于服务器105中。本公开实施例所提供的智能排班方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的智能排班装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。
[0055] 应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
[0056] 以下将基于图1描述的场景,通过图2~图10对本公开实施例的智能排班方法进行详细描述。
[0057] 图2示意性示出了根据本公开实施例的智能排班方法的流程图。
[0058] 如图2所示,该实施例的智能排班方法包括操作S210~操作S240。
[0059] 在操作S210,根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数。
[0060] 作为一种可能实施的方式,历史业务数据可以包括呼入量、接听率、转接率、平均通话时长、事后处理时长和振铃时长,历史班表信息可以包括员工利用率和登录率,如图3所示,操作S210根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数,包括操作S211和操作S212。
[0061] 在操作S211,根据呼入量预测固定时间段内的预测呼入量。
[0062] 在操作S212,根据预测呼入量、接听率、转接率、平均通话时长、事后处理时长、振铃时长、员工利用率和登录率计算固定时间段内的所需人数。
[0063] 例如,固定时间段可以为t分钟,固定时间段内的所需人数R可以通过公式(1)得到。
[0064]
[0065] 由此,通过操作S211和操作S212可以便于实现根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数。
[0066] 在操作S220,获取排班约束规则和实际人数。
[0067] 在操作S230,根据所需人数、排班约束规则和实际人数,确定m个预排班结果,其中,m为大于等于1的整数。
[0068] 作为一种可能实施的方式,排班约束规则可以包括硬规则、中规则和软规则,按照约束重要性排序,硬规则>中规则>软规则,如图4所示,操作S230根据所需人数、排班约束规则和实际人数,确定m个预排班结果,包括操作S231~操作S234。
[0069] 在操作S231,根据所需人数、实际人数和硬规则,确定p个预排班结果。例如,硬规则可以为“每个班组每天最多上一个班次”、“白班、中班、晚班每天必须有班次”、“每个班组每日工时上限不超过8.5小时”、“上白班的班组必须包含午饭、上中班的班组必须包含晚饭、上晚班的班组必须包含晚饭;其他班次都没有午饭或晚饭”、“晚班必须按照提前规划好的固定班表执行”、“每月所有班组的工时达到预设值”、“若班组被安排上晚班,其前一个周六日必须安排休息,且后一天也必须安排休息”和“中秋国庆/春节长假安排在固定的长假休假范围内,连续5天,且每个班组有且只有一次安排长假”等等,上述仅为举例说明,硬规则并不限于此,硬规则可以根据实际需要进行调整。根据所需人数、实际人数和硬规则,即可确定出p个预排班结果。
[0070] 在操作S232,在p个预排班结果中,加入一部分中规则,确定f个预排班结果。例如,中规则可以为“除了晚班外,每个班组在其他日期不能连续上班超过6天”、“所有班组相同班次的上班次数之间差异不超过1”、“对于每个班组,天地班每两个月被安排次数不超过1次”、“第一天上12:00~21:00、12:30~21:30、13:00~22:00中班的小组,隔天必须被安排为9:00以后的白班”、“第一天上13:30~22:30、14:00~23:00、14:30~23:30晚班的小组,隔天必须被安排为8:00~17:00的白班”、“每个班组在整个排班周期最少连续上3天班”和“每个班组在整个排班周期最多连续休息3天,且连休3天出现次数最多为1”等等,上述仅为举例说明,中规则并不限于此,中规则可以根据实际需要进行调整。在操作S231中得到的p个预排班结果中,加入一部分中规则,即可确定f个预排班结果。
[0071] 在操作S233,在f个预排班结果中,加入另一部分中规则,确定h个预排班结果。其中,在操作S232中得到的f个预排班结果中,加入另一部分中规则,即可确定h个预排班结果。
[0072] 在操作S234,在h个预排班结果中,加入软规则,确定m个预排班结果,其中,h为大于等于m的整数,f为大于等于h的整数,p为大于等于f的整数。例如,软规则可以为“实际排班人数越接近计划排班人数越好”。在操作S233中得到的h个预排班结果中,加入软规则,即可确定m个预排班结果。
[0073] 由此,通过操作S231~操作S234可以便于实现根据所需人数、排班约束规则和实际人数,确定m个预排班结果。
[0074] 在操作S240,将m个预排班结果输入排班模型,排班模型对m个预排班结果进行迭代寻优计算,得到目标排班结果。
[0075] 在一些具体的示例中,排班模型可以包括爬山算法、禁忌搜索算法、模拟退火算法、延迟接受算法和大洪水算法中的至少一个。
[0076] 作为一种可能实现的方式,如图5所示,操作S240排班模型对m个预排班结果进行迭代寻优计算,得到目标排班结果,包括操作S241~操作S248。
[0077] 在操作S241,构建每个预排班结果的排班得分函数f(X)。
[0078] 在操作S242,将m个预排班结果组成解空间{X:Xi,i=1,2,3,......,m}。
[0079] 在操作S243,根据排班得分函数和解空间,利用爬山算法得到第一目标解Xr,其中,r为大于等于1且小于等于m的整数。
[0080] 在操作S244,以第一目标解Xr为初始点,根据排班得分函数和解空间,利用禁忌搜索算法得到第二目标解Xk,其中,k为大于等于1且小于等于m的整数。
[0081] 在操作S245,以第二目标解Xk为初始点,根据排班得分函数和解空间,利用模拟退火算法得到第三目标解Xj,其中,j为大于等于1且小于等于m的整数。
[0082] 在操作S246,以第三目标解Xj为初始点,根据排班得分函数和解空间,利用延迟接受算法得到第四目标解Xz,其中,z为大于等于1且小于等于m的整数。
[0083] 在操作S247,以第四目标解Xz为初始点,根据排班得分函数和解空间,利用大洪水算法得到第五目标解Xg,其中,g为大于等于1且小于等于m的整数。
[0084] 在操作S248,将第五目标解Xg对应的预排班结果作为目标排班结果。通过S241~操作S248可以便于实现排班模型对m个预排班结果进行迭代寻优计算,得到目标排班结果。
[0085] 在一些具体的示例中,如图6所示,操作S243根据排班得分函数和解空间,利用爬山算法得到第一目标解Xr,包括操作S2431和操作S2432。
[0086] 在操作S2431,在解空间中随机选取一个可能解作为初始点。
[0087] 在操作S2432,迭代计算t1时间段后,若排班得分函数不再增大,将迭代计算的当前解作为第一目标解Xr。
[0088] 可以理解的是,爬山算法是一种简单的贪心搜索算法,爬山算法首次计算时,需要随机选择一个可能解Xi作为当前位置,此后每次从当前位置的临近空间中选择一个排班得分函数f(x)取值最高的解(即最优解)作为当前解,直到达到一个局部范围内的最优解,也即第一目标解,记为Xr。
[0089] 但是爬山算法可能会陷入局部最优解,而不一定能搜索到全局最优解。所以爬山算法执行t1时间段后,就跳出执行。由此,通过操作S2431和操作S2432可以便于实现根据排班得分函数和解空间,利用爬山算法得到第一目标解Xr,同时在迭代计算t1时间段后,若排班得分函数不再增大就跳出执行可以便于找到全局最优解,而尽可能避免陷入局部最优解,从而为后续计算提供可靠的输入数据,使得最终的排班结果,也即目标排班结果更准确。
[0090] 在一些具体的示例中,如图7所示,操作S244以第一目标解Xr为初始点,根据排班得分函数和解空间,利用禁忌搜索算法得到第二目标解Xk,包括操作S2441。
[0091] 在操作S2441,以第一目标解Xr为初始点,迭代计算t2时间段后,若排班得分函数不再增大,将迭代计算的当前解作为第二目标解Xk。可以理解的是,以上一步爬山算法的第一目标解Xr作为初始点,搭配禁忌搜索算法来进行优化搜索。禁忌搜索算法是对局部邻域搜索的一种扩展,是一种全局逐步寻求最优算法。禁忌搜索算法的主要思想是标记邻域中已经搜索过的解的某些元素,在下一步的迭代中这些元素便不予考虑。若排班得分函数f(x)在t2时间段内没有进步,此时得到的最优解,也即第二目标解,记为Xk。
[0092] 由此,通过操作S2441可以便于实现以第一目标解Xr为初始点,根据排班得分函数和解空间,利用禁忌搜索算法得到第二目标解Xk,同时在迭代计算t2时间段后,若排班得分函数不再增大就跳出执行可以便于找到全局最优解,从而为后续计算提供可靠的输入数据,使得最终的排班结果,也即目标排班结果更准确。
[0093] 在一些具体的示例中,如图8所示,操作S245以第二目标解Xk为初始点,根据排班得分函数和解空间,利用模拟退火算法得到第三目标解Xj,包括操作S2451。
[0094] 在操作S2451,以第二目标解Xk为初始点,迭代计算t3时间段后,若排班得分函数不再增大,将迭代计算的当前解作为第三目标解Xj。可以理解的是,以上一步禁忌搜索算法的第二目标解Xk作为初始点,继续搭配模拟退火算法来进行优化搜索。模拟退火法在其搜索过程引入了随机因素。在迭代更新时,以一定的概率来接受一个比当前解要差的解,因此有可能会跳出这个局部的最优解,达到全局的最优解。结合实际试验结果,若排班得分函数f(x)在t3时间段内没有进步,此时得到的最优解,也即第三目标解,记为Xj。
[0095] 由此,通过操作S2451可以便于实现以第二目标解Xk为初始点,根据排班得分函数和解空间,利用模拟退火算法得到第三目标解Xj,同时在迭代计算t3时间段后,若排班得分函数不再增大就跳出执行可以便于找到全局最优解,从而为后续计算提供可靠的输入数据,使得最终的排班结果,也即目标排班结果更准确。
[0096] 在一些具体的示例中,如图9所示,操作S246以第三目标解Xj为初始点,根据排班得分函数和解空间,利用延迟接受算法得到第四目标解Xz,包括操作S2461。
[0097] 在操作S2461,以第三目标解Xj为初始点,迭代计算t4时间段后,若排班得分函数不再增大,将迭代计算的当前解作为第四目标解Xz。可以理解的是,以上一步模拟退火算法的第三目标解Xj作为初始点,继续搭配延迟接受算法来进行优化搜索。若排班得分函数f(x)在t4时间段内没有进步,此时得到的最优解,也即第四目标解,记为Xz。
[0098] 由此,通过操作S2461可以便于实现以第三目标解Xj为初始点,根据排班得分函数和解空间,利用延迟接受算法得到第四目标解Xz,同时在迭代计算t4时间段后,若排班得分函数不再增大就跳出执行可以便于找到全局最优解,从而为后续计算提供可靠的输入数据,使得最终的排班结果,也即目标排班结果更准确。
[0099] 在一些具体的示例中,如图10所示,操作S247以第四目标解Xz为初始点,根据排班得分函数和解空间,利用大洪水算法得到第五目标解Xg,包括操作S2471。
[0100] 在操作S2471,以第四目标解Xz为初始点,迭代计算t5时间段后,若排班得分函数不再增大,将迭代计算的当前解作为第五目标解Xg。可以理解的是,以上一步延迟接受算法的第四目标解Xz作为初始点,继续搭配大洪水算法来进行优化搜索。若排班得分函数f(x)在t5时间段内没有进步,此时得到的最优解,也即第五目标解,记为Xg。
[0101] 由此,通过操作S2471可以便于实现以第四目标解Xz为初始点,根据排班得分函数和解空间,利用大洪水算法得到第五目标解Xg,同时在迭代计算t5时间段后,若排班得分函数不再增大就跳出执行可以便于找到全局最优解,从而得到最优的排班结果的解,也即使得目标排班结果更准确。
[0102] 根据本公开实施例的智能排班方法,通过所需人数、排班约束规则和实际人数,可以确定出m个预排班结果,通过排班模型对m个预排班结果进行迭代寻优计算,可以得到目标排班结果,目标排班结果可以理解为最优的排班结果。通过本公开的方法使得无需依赖于人工排班,即使在排班规则复杂的情况下,也可以高效、准确地得到最优的排班结果,省时省力,智能化水平较高。
[0103] 在本公开的一些实施例中,智能排班方法还包括:根据目标排班结果的固定时间段内的计划排班人数、固定时间段内的实际排班人数和每日实际排班人数计算日拟合度。
[0104] 根据日拟合度和每月实际天数计算月拟合度。
[0105] 展示日拟合度和/或月拟合度。
[0106] 由此使得目标排班结果的排班效果可以很好地体现,展示日拟合度和/或月拟合度使得工作人员可以做到心中有数,更好地促进日常工作。
[0107] 基于上述智能排班方法,本公开还提供了一种智能排班装置10。以下将结合图11‑图19对智能排班装置10进行详细描述。
[0108] 图11示意性示出了根据本公开实施例的智能排班装置10的结构框图。
[0109] 智能排班装置10包括计算模块1、获取模块2、第一确定模块3和第二确定模块4。
[0110] 计算模块1,计算模块1用于执行操作S210:根据获取的历史业务数据和历史班表信息,计算固定时间段内的所需人数。
[0111] 获取模块2,获取模块2用于执行操作S220:获取排班约束规则和实际人数。
[0112] 第一确定模块3,第一确定模块3用于执行操作S230:根据所需人数、排班约束规则和实际人数,确定m个预排班结果,其中,m为大于等于1的整数。
[0113] 第二确定模块4,第二确定模块4用于执行操作S240:将m个预排班结果输入排班模型,排班模型对m个预排班结果进行迭代寻优计算,得到目标排班结果。
[0114] 图12示意性示出了根据本公开实施例的第二确定模块4的结构框图。第二确定模块4包括第一构建单元41、第二构建单元42、第一求解单元43、第二求解单元44、第三求解单元45、第四求解单元46、第五求解单元47和第一确定单元48。
[0115] 第一构建单元41,第一构建单元41用于构建每个预排班结果的排班得分函数f(X)。
[0116] 第二构建单元42,第二构建单元42用于将m个预排班结果组成解空间{X:Xi,i=1,2,3,......,m}。
[0117] 第一求解单元43,第一求解单元43用于根据排班得分函数和解空间,利用爬山算法得到第一目标解Xr,其中,r为大于等于1且小于等于m的整数。
[0118] 第二求解单元44,第二求解单元44用于以第一目标解Xr为初始点,根据排班得分函数和解空间,利用禁忌搜索算法得到第二目标解Xk,其中,k为大于等于1且小于等于m的整数。
[0119] 第三求解单元45,第三求解单元45用于以第二目标解Xk为初始点,根据排班得分函数和解空间,利用模拟退火算法得到第三目标解Xj,其中,j为大于等于1且小于等于m的整数。
[0120] 第四求解单元46,第四求解单元46用于以第三目标解Xj为初始点,根据排班得分函数和解空间,利用延迟接受算法得到第四目标解Xz,其中,z为大于等于1且小于等于m的整数。
[0121] 第五求解单元47,第五求解单元47用于以第四目标解Xz为初始点,根据排班得分函数和解空间,利用大洪水算法得到第五目标解Xg,其中,g为大于等于1且小于等于m的整数。
[0122] 第一确定单元48,第一确定单元48用于将第五目标解Xg对应的预排班结果作为目标排班结果。
[0123] 图13示意性示出了根据本公开实施例的第一求解单元43的结构框图。第一求解单元43包括选取元件431和第一确定元件432。
[0124] 选取元件431,选取元件431用于在解空间中随机选取一个可能解作为初始点。
[0125] 第一确定元件432,第一确定元件432用于迭代计算t1时间段后,若排班得分函数不再增大,将迭代计算的当前解作为第一目标解Xr。
[0126] 图14示意性示出了根据本公开实施例的第二求解单元44的结构框图。第二求解单元44包括第二确定元件441。
[0127] 第二确定元件441,第二确定元件441用于以第一目标解Xr为初始点,迭代计算t2时间段后,若排班得分函数不再增大,将迭代计算的当前解作为第二目标解Xk。
[0128] 图15示意性示出了根据本公开实施例的第三求解单元45的结构框图。第三求解单元45包括第三确定元件451。
[0129] 第三确定元件451,第三确定元件451用于以第二目标解Xk为初始点,迭代计算t3时间段后,若排班得分函数不再增大,将迭代计算的当前解作为第三目标解Xj。
[0130] 图16示意性示出了根据本公开实施例的第四求解单元46的结构框图。第四求解单元46包括第四确定元件461。
[0131] 第四确定元件461,第四确定元件461用于以第三目标解Xj为初始点,迭代计算t4时间段后,若排班得分函数不再增大,将迭代计算的当前解作为第四目标解Xz。
[0132] 图17示意性示出了根据本公开实施例的第五求解单元47的结构框图。第五求解单元47包括第五确定元件471。
[0133] 第五确定元件471,第五确定元件471用于以第四目标解Xz为初始点,迭代计算t5时间段后,若排班得分函数不再增大,将迭代计算的当前解作为第五目标解Xg。
[0134] 图18示意性示出了根据本公开实施例的第一确定模块3的结构框图。排班约束规则包括硬规则、中规则和软规则,按照约束重要性排序,硬规则>中规则>软规则,第一确定模块3包括第二确定单元31、第三确定单元32、第四确定单元33和第五确定单元34。
[0135] 第二确定单元31,第二确定单元31用于根据所需人数、实际人数和硬规则,确定p个预排班结果。
[0136] 第三确定单元32,第三确定单元32用于在p个预排班结果中,加入一部分中规则,确定f个预排班结果。
[0137] 第四确定单元33,第四确定单元33用于在f个预排班结果中,加入另一部分中规则,确定h个预排班结果。
[0138] 第五确定单元34,第五确定单元34用于在h个预排班结果中,加入软规则,确定m个预排班结果,其中,h为大于等于m的整数,f为大于等于h的整数,p为大于等于f的整数。
[0139] 图19示意性示出了根据本公开实施例的计算模块1的结构框图。历史业务数据包括呼入量、接听率、转接率、平均通话时长、事后处理时长和振铃时长,历史班表信息包括员工利用率和登录率,计算模块1包括预测单元11和计算单元12。
[0140] 预测单元11,预测单元11用于根据呼入量预测固定时间段内的预测呼入量。
[0141] 计算单元12,计算单元12用于根据预测呼入量、接听率、转接率、平均通话时长、事后处理时长、振铃时长、员工利用率和登录率计算固定时间段内的所需人数。
[0142] 根据本公开实施例的智能排班装置10,通过所需人数、排班约束规则和实际人数,可以确定出m个预排班结果,通过排班模型对m个预排班结果进行迭代寻优计算,可以得到目标排班结果,目标排班结果可以理解为最优的排班结果。通过本公开的方法使得无需依赖于人工排班,即使在排班规则复杂的情况下,也可以高效、准确地得到最优的排班结果,省时省力,智能化水平较高。
[0143] 另外,根据本公开的实施例,计算模块1、获取模块2、第一确定模块3和第二确定模块4中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。
[0144] 根据本公开的实施例,计算模块1、获取模块2、第一确定模块3和第二确定模块4中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。
[0145] 或者,计算模块1、获取模块2、第一确定模块3和第二确定模块4中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
[0146] 下面参照图20和图21详细描述根据本公开实施例的智能排班装置。值得理解的是,下述描述仅是示例性说明,而不是对本公开的具体限制。
[0147] 针对排班场景,本公开提供了一个智能排班装置,通过人工智能的方法,利用运筹学,结合优化算法建模,自动化客服排班过程,提高排班质量,最终提升客服工作的效率和满意度。
[0148] 本公开的智能排班装置,主要包括数据获取模块、规则约束构造模块、班表设计模块、班表效果分析模块。各模块的详细内容将在下文描述。
[0149] 数据获取模块,数据获取模块主要是获取用于排班规划的各种业务数据。主要包含表1中的内容。
[0150] 表1
[0151]
[0152] 此外,结合接听率等指标,将业务预测量转化为所需坐席人员数R。
[0153]
[0154] 本例使用远程银行中心信用卡业务2021年8月至2021年12月的呼入量信息,坐席人员情况信息,历史班表信息等作为智能排班模型的基础数据。
[0155] 规则约束构造模块,调研业务排班规则以及相关管理制度要求,梳理出16条约束条件,并按照重要程度划分为硬规则,中规则,软规则。
[0156] 硬规则:必须都要达成,目标是分数为0,如表2所示。
[0157] 表2
[0158]
[0159] 中规则:班型类规则,尽量都要达成,目标是分数尽量接近0,如表3所示。
[0160] 表3
[0161]
[0162] 软规则:通常指规划问题的目标函数,越高越好,如表4所示。
[0163] 表4
[0164]
[0165] 在智能排班装置中,可对上述规则进行筛选组合,制定个性化的排班规则要求。
[0166] 班表设计模块,用于规划实体构造,结合实际情况,构造规划实体。图20为智能排班模型规划实体示意图。
[0167] 【排班】类,包含了当前班表的所有信息,如班组x在某月某日某时段是否有班次,以及班次的种类等。在规划问题中被定义为规划解空间。
[0168] 【班次】类,包含了该班次的所有详细信息,如班次类型,起止时间,参与的班组,班次时长等。每个实例代表了一个具体的班次(如2020年8月1日8:00到17:00的一个白班)。在规划问题中被定义为规划实体,模型就是通过改变规划实体的值来进行优化,即在迭代中是不断变化的。
[0169] 【班次类型】类,包含了所有可能的班次种类,本研究中涉及白班、中班、晚班、天地班、长假。在初始化时会生成所有可能的班次类型实例,固定的实例在模型的寻优求解过程中不可改变。
[0170] 表5为班次情况说明。
[0171] 表5
[0172]
[0173] 【午晚饭】类,白、中、晚班有固定时段的午饭或晚饭时间安排,以变量形式进行存储。
[0174] 表6为午晚饭情况说明。
[0175] 表6
[0176]
[0177] 【班次日期】类,包含了时间、年、月、日、星期数、天数、小时数、分钟数、当天排序、是否是假期、该时段期望排班人数等。初始化时会生成所有的班次日期,且其作为信息类不会在模型的寻优求解中被改变。
[0178] 【班组】类,班组类信息,包含组名、组人数、组类型、目标月工作天数上下限等。在规划问题中被定义为规划变量(P1anning Variable);在寻优中每个班次是否有班组,具体是哪个班组参与这一点是不断变化的。
[0179] 【班组类型】类,包括类名(全职/合同工)、公司名称、是否受三薪日影响、目标月最小/大工时等。在模型优化迭代中保持不变,属于班组的延伸辅助信息类,避免单个类中所定义的变量过多产生混乱。
[0180] 【班组可行性】类,该类的每个实例包含了班组在某个时段的是否必须/禁止上某个班次。该类包含的变量有班组、起止时间、类型、禁止/必须上。主要用于解决小夜班固定的问题。
[0181] 求解空间拆分,本公开涉及的求解变量十分庞大,解空间极大,此外结合约束规则,给排班规划运算带来很大的挑战。因此将规划问题总空间拆分为多个阶段,串联起来分别求解。
[0182] 将整个解空间拆解为多个阶段来求解。在第一阶段,将规则约束放宽,先满足比较重要的硬规则条件要求,同时忽略其他规则要求和午晚饭变量,以缩小解空间大小,寻找到初始的满足条件的解。
[0183] 第二阶段,适当加入部分中规则约束条件,再次运行;放开部分条件,计算当前规则约束条件下的较优解。
[0184] 第三阶段,加入其余中规则,增加午晚饭变量;增加解空间,计算当前规则约束条件下的较优解。
[0185] 第四阶段,增加拟合度考虑,寻找所有规则都考虑的情况下的较优解。
[0186] 对每个阶段结合实际运算情况,设置最大求解时间,超过最大求解时间,则直接进入下一阶段或者输出当前结果。如表7所示。
[0187] 表7
[0188]
[0189] 求解算法设计,启发式学习算法对于高维度解空间及大量变量的问题有较高的适应性,再通过参数调优能够在合理的时间范围内求解出最优解。Optaplanner的默认算法会无限卡在很低的分数,而单一使用爬山法或者禁忌搜索都无法在期望时间内下降到合理的分数。因此算法的组合是十分必要的。
[0190] 结合常用的寻优迭代算法,通过不同的搭配和调参才能使规划问题更快更好地收敛到期望值附近,排班模型的算法构建思路是利用初始化班组取值范围作为起点(采用首次适应First Fit的算法思想),再由局部寻优算法‑爬山法加速下降,随后由禁忌搜索法和模拟退火法定位最优解,并用爬山法和模拟退火的变种算法作为兜底算法。最终在预设时间内求得合理的排班结果。
[0191] 图21为算法设计示意图,根据班次、班组的设计,所有的可能排班结果Xi组成一个解空间{X:Xi,i=1,2,…,n}。排班得分函数计算定义为f(x)。
[0192] 爬山算法是一种简单的贪心搜索算法,该算法首次计算时,随机选择一个可能解X1作为当前位置,此后每次从当前位置的临近空间中选择一个排班得分函数f(x)取值最高的解(即最优解)作为当前解,直到达到一个局部范围内的最优解,记为Xi。
[0193] 但是爬山算法可能会陷入局部最优解,而不一定能搜索到全局最优解。所以爬山算法执行一段固定的时间后,就跳出执行。
[0194] 以上一步爬山算法的局部最优解Xi作为初始点,搭配禁忌搜索法来进行优化搜索。禁忌搜索(Tabu Search)是对局部邻域搜索的一种扩展,是一种全局逐步寻求最优算法。禁忌搜索的主要思想是标记邻域中已经搜索过的解的某些元素,在下一步的迭代中这些元素便不予考虑。若排班得分f(x)在3分钟内没有进步,此时得到的最优解记为Xj。
[0195] 以上一步禁忌搜索算法的局部最优解Xj作为初始点,继续搭配模拟退火法来进行优化搜索。模拟退火法在其搜索过程引入了随机因素。在迭代更新可行解时,以一定的概率来接受一个比当前解要差的解,因此有可能会跳出这个局部的最优解,达到全局的最优解。结合实际试验结果,若排班得分f(x)在3分钟内没有进步,此时得到的最优解记为Xk。
[0196] 以此类推,进行Late Acceptance和Greate Deluge两种算法的持续优化求解。得到当前搜索情况下的最优解Xfinal。
[0197] 班表效果分析模块,用于排班效果的效果评估,引入排班拟合度指标,并进行展示。
[0198]
[0199]
[0200] 其中“每15分钟计划排班人数”是根据业务量预测的数据以及转化公式计算而来的每15分钟最优人数;“每15分钟实际排班人数”是指排班完成后该时间段被安排的人数,与当天实际业务量无关。
[0201] 以下,对比模型排班和人工排班的效果:
[0202] 排班时长比较:智能排班方法大幅降低了排班耗费时间,如表8所示。
[0203] 表8
[0204] 耗费时间 普通月份排班人工排班 15天
智能排班 40分钟
[0205] 排班拟合度比较:智能排班方法拟合度略优于人工排班,如表9所示。
[0206] 表9
[0207]   2021年10月 2021年11月 2021年12月人工排班 80.0% 79.4% 79.6%
智能排班 84.1% 85.7% 88.0%
[0208] 班表得分比较,如表10所示。
[0209] 表10
[0210]
[0211] 从上述三个方面对比,智能排班整体上优于人工排班。
[0212] 本公开的智能排班装置使用了运筹学方法,建立运筹模型以及相应约束和目标方程,利用人工智能算法(包括首次适应算法、爬山算法、禁忌搜索算法等)求解出排班结果。智能排班模型从计算时间、排班规则掌握、排班规则灵活度、排班拟合度方面整体上优于人工排班。相较于人工排班,智能排班可大量释放人力,且排班拟合度更优。
[0213] 图22示意性示出了根据本公开实施例的适于实现上述方法的电子设备的方框图。
[0214] 如图22所示,根据本公开实施例的电子设备900包括处理器901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储部分908加载到随机访问存储器(RAM)903中的程序而执行各种适当的动作和处理。处理器901例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器901还可以包括用于缓存用途的板载存储器。处理器901可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
[0215] 在RAM 903中,存储有电子设备900操作所需的各种程序和数据。处理器901、ROM 902以及RAM 903通过总线904彼此相连。处理器901通过执行ROM 902和/或RAM 903中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 902和RAM 903以外的一个或多个存储器中。处理器901也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
[0216] 根据本公开的实施例,电子设备900还可以包括输入/输出(I/O)接口905,输入/输出(I/O)接口905也连接至总线904。电子设备900还可以包括连接至I/O接口905的以下部件中的一项或多项:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至输入/输出(I/O)接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。
[0217] 本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
[0218] 根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD‑ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 902和/或RAM 903和/或ROM 902和RAM 903以外的一个或多个存储器。
[0219] 本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例的方法。
[0220] 在该计算机程序被处理器901执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
[0221] 在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分909被下载和安装,和/或从可拆卸介质911被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0222] 在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被处理器901执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
[0223] 根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0224] 附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0225] 本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
[0226] 以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。