面向在线客服系统的调度算法研究*
2021-01-05嵇友浪邹云峰周子馨
嵇友浪,朱 君,邹云峰,周子馨,陈 兴
(1.国网江苏省电力有限公司营销服务中心,江苏 南京 210019;2.河海大学计算机与信息学院,江苏 南京 211100)
1 引言
传统的客户服务系统,又称呼叫公司系统,是一种基于计算机与电话集成CTI(Computer Telecommunication Integration)、通信、网络和数据库等技术为基础的综合信息系统[1],是企业为了客户服务、市场营销、技术支持等建立的一个接收和发出呼叫的实体。其目的是快速应答客户的电话、E-mail、Web等多种现代化媒体的呼叫,处理客户的咨询、报修和投诉等服务业务[2]。传统的客户服务系统采用一对一服务模式,即一位客服人员在某一时刻只能服务一位客户,在请求服务的客户较多时客户等待时间较长,客服响应度低,影响客户体验[3]。
随着科学技术的发展,各行各业为其客户提供服务的方式不仅仅局限于电话呼叫,还包括依托信息检索与互联网技术的在线客服系统[2]。在线客服系统通常采用一对多的服务模式,并引入智能机器人交互功能[4],提升系统工作效率,大幅减少客户等待时间,降低企业成本。然而,随着在线服务量的增大和客户对服务质量要求的提升,在线客服系统仍然面临着合理分配、客服团队管理等难题[5]。所以,面向在线客服系统的调度算法已经成为各个公司实现服务优质化的迫切需求之一。
目前,客服系统中常用的调度算法主要有先到先服务算法、最短服务时间优先算法、最长等待时间优先算法、基于单一技能分配算法、黑名单算法和技能组算法等[6]。
在调度策略研究方面,丁振国等人[7]针对Web呼叫中心的排队问题,提出了一种适应Web呼叫中心的新客户优先、上次服务和最近最闲分配相结合的策略,以及与平均通话时长、通话次数、等待时间相关的动态优先级排队策略。在调度算法研究方面,Servi等人[8]提出了一种负载均衡和最小化传输成本的优化伯努利调度算法,解决了在离散时间瞬间分配概率的问题。Wallace等人[9]提出了一种基于客服技能的调度算法,实现了将客户分配给具备不同技能的非通用技能型客服。Gurvich等人[10]提出了一种面向客服中心的服务级别差异调度算法,基于服务质量的等级划分解决客服与客户之间的匹配问题,实现了人员配置成本的最优化。在模型构建与评估研究方面,Chen等人[11]提出了一种动态优先级客服中心的扰动分析方法,验证了具有确定性阈值的动态优先客服中心流体模型的准确性。
概括起来,目前已有工作大都基于传统呼叫中心人工接线的服务方式,主要针对调度策略、调度算法和模型评估进行研究。针对这一研究现状,本文在分析在线客服基本特征的基础上,提出了一种面向在线客服系统的调度模型及其调度算法,主要工作如下所示:
(1)根据客户相关特征构建多优先级客户队列,综合在线客服负荷与客户队列状态特征划分调度系统状态并构建状态之间的转换关系。
(2)建立调度策略与调度系统状态之间的对应关系,构建调度模型。
(3)在调度模型基础上,根据系统状态及其之间转换关系,设计对应的在线客服系统调度算法。
(4)通过实验验证了调度模型的合理性与调度算法的有效性。
一方面,调度算法在实现相关调度策略为客户提供高质量服务的前提下,确保了客户平均等待时间在可接受范围内,符合预期;另一方面,实现了客服坐席的合理分配,达到了客服负载均衡的目标。
2 在线客服系统分析
在线客服系统能够实时处理客户发起的对话和客服的应答对话,整合企业资源,实现高效的服务调度。从客服的角度来看,大大缩短了服务响应时间,工作量的安排比传统呼叫公司时代更加科学、公平,提高了服务质量和客户满意度。从客户的角度来看,极大地缩短了等待时间,诉求得到快速响应,用户体验得到很大的提升。
在线客服系统由3个部分组成,即客服、客户和在线客服系统。这3个部分的特征对调度算法的设计至关重要。
2.1 客服特征分析
对客服选取技能组别、客服等级、最大接线数、阶段性总服务量和满意度5个特征进行分析。
(1)技能组别。结合业务内容将技能划分为故障报修、营业业务、电能计量、电价政策、电费管理、供用电管理和电子渠道,具体情况视客服能力而定。
(2)客服等级。根据各客服的业务水平,客服等级分为初级、中级和高级。
(3)最大接线数。即客服可同时服务客户的最大数量。每位客服依据能力强弱设定最大接线数,在服务过程中,客服同时提供服务的数量不能大于最大接线数。
(4)阶段性总服务量。即某位客服在一段工作周期内接待的总客户数量。为客服设置阶段性总服务量,对工作量的公平分配提供参考依据。
(5)满意度。客服在完成一次服务后,客户对其服务过程和服务结果进行满意度评价,有利于找出客服服务短板,提高服务质量。
2.2 客户特征分析
客户有如下几个特征:
(1)等待时间。客户从请求服务开始计算等待时间,遵循先来先服务原则,在仅有等待时间差异的条件下,客户等待时间越长,服务的优先级理应越高。
(2)客户等级。针对所有绑定户号的客户预先设置其级别,级别划分为VIP、普通客户和游客。游客是指尚未绑定户号的请求服务的客户。
(3)历史访问。单次历史访问特征包括客户的诉求信息、服务该客户的客服信息、服务时长和访问频率,为合理分配客服提供参考。
(4)诉求类别。不同的诉求类别在实际调度中有优先次序关系,例如故障报修业务可视为紧急业务,相比较咨询类业务应优先调度,根据诉求的紧迫程度进行诉求分类。
2.3 在线客服系统特征分析
在线客服系统与传统客服系统相比有如下几个特征:阶段性、并行性、弱连接性、多渠道接入和多形式交互。
Figure 1 Multi-queue scheduling model图1 多队列调度模型
(1)阶段性。在线客服系统存在明显的阶段性特征,不同的客服人员业务能力水平存在差异,因此处理业务的时长存在差距,针对不同的客户群体,同一客服在处理业务时也会有明显的时间开销差异。同时客户访问量具有阶段性特征,例如某一紧急突发事件会导致某一时段客户的集体性访问,而随着该事件的解决,客户访问量也会迅速下降。
(2)并行性。在某一时间段内,一个客服需要面对的不仅仅是一个客户,为了提高效率,在线客服服务通常采用并行服务形式,即一个客服同时保持对多个客户的服务。
(3)弱连接性。区别于传统客服系统,弱连接性是指客服不需要实时响应客户提出的服务请求,允许有一定的延时,这也是客服可以并行服务的原因所在。
(4)多渠道接入。传统客服系统中,客户只能通过拨打热线电话对客服人员提出诉求,而在线客服系统大大拓展了沟通渠道,一套系统的接入通道往往不止一个,通常包含Web端、移动端、PC客户端和微信公众号等。
(5)多形式交互。与传统客服系统相比,在线客服系统的交互方式不仅仅局限于语音沟通,还包括图片、视频和文字等形式。
3 调度模型构建与算法设计
面向在线客服系统的调度算法模型由3个部分组成,分别为:基于客户多特征偏序关系生成具备优先级的多队列,不同系统状态下的调度策略选择,基于调度策略的客户筛选与客服分配。
3.1 模型框架
图1展示了在线客户系统的多队列调度模型,任意客户在进入客服系统发起服务请求时,按照客户的请求服务时间顺序进入客户时序队列,等待分派客服。
(1)基于客户多特征偏序关系生成具备优先级的多队列。依据客户的静态特征将时序队列中的客户分派至多队列中。如结合某公司的实际业务,分派客户产生的多队列可依据被分派的客户等级和诉求业务紧迫性来设定。假设客户等级有x级,业务紧急程度有y级,那么有x×y级客户多队列。其二元偏序关系如图2a所示。
Figure 2 Diagram of binary partial order relation图2 二元偏序关系示意图
图2b为二元2×2级偏序关系图,诉求业务的紧急程度级别参数设置为uB1,uB2,其中uB1>uB2,即B1类业务紧急程度高于B2类业务。以某公司业务为例,抢修类业务属于B1类业务集合,其紧急程度级别为uB1;咨询电费等不紧急业务可设置为B2类业务集合,其紧急程度级别为uB2;客户级别即客户重要性参数设置为uG1,uG2,uG1>uG2,即G1类客户重要性高于G2类客户。以某公司业务为例,VIP客户属于G1类客户,普通客户和游客属于G2类客户。所以,以uB1uG1为例,其表示客户c为VIP且诉求业务最为紧急,其他组合以此类推。图2b中,uB1uG1队列的优先级高于uB2uG1,uB2uG1队列的优先级高于uB1uG2,uB2uG2队列的优先级最低,在系统中参数uB1,uB2,uG1,uG2结合实际业务进行赋值,多队列的优先级划分策略比较灵活,根据不同业务可采取不同策略,但总体需要遵循如图2a所示的偏序关系。
(2) 基于对应系统状态的调度策略选择。系统状态由客服服务状态与客户排队状态共同决定。基于不同的状态选择不同的调度策略,以保证系统良好运行,避免资源浪费。
(3) 基于调度策略的客户筛选与客服分配。客户进入多队列后,队列内遵循时间次序,先来先服务;而队列外遵循队列优先级次序。所以,在多队列调度中,有如下规则:①同一个队列中,排队靠前的客户先于排队靠后的客户;②不同队列中,优先级高的队列调度优先于优先级低的队列。
在多队列的客户筛选过程中,仅考虑每队队首的客户,依据当前系统状态映射的调度策略选取当前最应该被调度的客户,并为其分配客服。
3.1.1 特征形式化定义
(1)客服。
定义1任意一个客服s=(i,D,l,m1,m2),其中,i为数值串,表示客服s的工号,是s的唯一标识符;D为客服s的业务集合,D⊆B,B为所有客服业务的集合;l为客服等级;l⊆L,L为所有客服等级的集合;m1表示客服s正在接线人数,m1∈N,m2表示客服s最大接线人数,m2∈N且m1 (2)客户。 定义2任意一个客户c=(j,g,b,t,W),其中,j为数值串,表示客户c的ID,是客户c的唯一标识符,绑定c的其他特征;g为客户等级,g∈G,G为所有客户等级的集合;b为客户的诉求业务,b∈B;t为客户c进入客服系统请求服务到接入客服的等待时长;W为客户c服务记录集合,所有客户的集合记为C。 (3)在线客服系统。 定义3客服系统Q可表示为Q=(S,C,A,P),其中,S为客服集合,C为客户集合,A为条件状态转换自动机,P为策略集合。 3.1.2 条件状态转换自动机 定义4条件状态转换自动机A是一个5元组,A=(F,R,δ,IF,TF),其中,F是一个有限状态集合,R为布尔表达式的集合;δ:F×R→F,δ(Fi,Rk)=Fj,Fi,Fj∈F,Rk∈R表示状态Fi在满足条件Rk时,转换为状态Fj;IF为初始状态集合,IF⊆F;TF为终止状态集合,TF⊆F。 根据某中心实际业务,综合考虑客服负荷状态与客户排队等待状态2个影响因素,将系统状态划分为5个状态。 (1)起始状态F0:所有客服接线数为0的一种状态。此状态为系统开启或结束瞬间。 (2)接线填充状态F1:客服中有部分接线数未被占用,客户排队人数较多的一种状态。此状态一般对应初始状态后,系统向有空闲接线数的客服接入客户并且有客户尚未被调度仍在等待队列中的情况。 (3)低负荷状态F2:客服中有部分接线数未被占用,客户排队人数较少的一种状态。关键特征为客服接线数大部分未被占用,且等待队列中的排队人数未超过客服的空闲接线量。 (4)正常负荷状态F3:客服的接线绝大多数或全部被占用,客户排队人数与系统总容量之间的比率未超出平均排队等待时间与客服平均服务时间之间的比率范围。此状态为系统常态,一般对应接线填充状态后仍然有客户进入系统排队且平均等待时长稳定或有下降趋势的情况。 (5)超负荷状态F4:客服的接线绝大多数或全部被占用,客户排队人数与系统总容量之间的比率超出平均排队等待时间与客服平均服务时间之间的比率范围。此状态一般对应接线填充状态后仍然有客户进入系统排队且平均等待时长上升的情况。 结合某中心实际业务流程,给出定义该5种状态的数学表达式如表1所示。 Table 1 Definition of system states表1 系统状态定义 状态转换图如图3所示。结合实际业务场景状态之间的转换条件共包含7种,如表2所示。 Figure 3 System states transition diagram图3 系统状态转换图 Table 2 State transition conditions 表2 状态转换条件 3.1.3 调度策略 3.1.2节详细描述了面向在线客服系统的状态转换关系和转换条件,这样区分的好处在于条件状态转换自动机A在不同的系统状态下可以采取不同的调度策略,有效地完成调度任务,提高服务质量。 根据业务需求建立调度策略集,并构造状态集到策略集幂集的映射;根据业务需求创建调度策略,包括先来先服务、负载均衡、技能优先、熟客优先和随机等策略,调度策略集可不限于这5种策略,还可以是包含上述5种策略中一部分的策略子集或以上述5种策略为关键策略的超集。5种调度策略如表3所示。 Table 3 Scheduling strategies表3 调度策略 算法1为构造多队列的算法,构造出的多队列是一种系统设置不同客户类别以区分其服务优先级的数据结构。系统中预设客户等级级数与客户诉求业务类别数,并且客户等级和客户诉求业务类别之间存在优先级,各队列之间存在优先级偏序关系,偏序关系如图2a所示。实际业务中的客户等级c.g和客户诉求业务c.b的取值决定了队列数量。 算法1构建具备优先级的多队列 输入:x:number of defined values inc.g;y:number of defined values inc.b;priority[x:y]:two-dimensional array of sizex×y。 输出:multiQueue:a set of queues。 1.multiQueue←{}; 2.fori←1 toxdo; 3.forj←1 toydo/*create queues based onpriority[i,j]*/ 4.q←CreateQueue(priority[i,j]); 5.multiQueue←multiQueue∪{q}; 6.endfor 7.endfor 6.returnmultiQueue; 算法2为将时序队列中元素分派至多队列的算法,是对多优先级队列的初始化操作。此算法在算法1运行完成后调度。客户c在进入系统请求服务时,系统将其分配至时序队列temporalQueue,并根据客户c的客户等级和诉求业务将其从时序队列temporalQueue中分派至对应的优先级队列中,队列内元素均是按照到达时间先后顺序排队。 算法2从时序队列分配元素到多队列。 输入:x:number of defined values inc.g;y:number of defined values inc.b;priority[x:y]:two-dimensional array of sizex×y;temporalQueue:one queue based on time series;multiQueue:queues initialized from 算法1。 输出:multiQueue:a set of queues。 1.whiletemporalQueue≠∅do 2.c←DeQueue(temporalQueue); 3.l1←GetLevel(c.g); /*get the corresponding level ofc.g*/ 4.l2←GetLevel(c.b); /*get the corresponding level ofc.b*/ 5.q←FindQueue(multiQueue,l1,l2); 6.EnQueue(q,c); 7.endwhile 8.returnmultiQueue; 算法3为多队列中选择调度元素的算法,实际业务中元素对象为系统中的客户,该算法为调度客户操作。在已初始化的多队列中,系统从各队列中选出各队首元素,综合考虑各队首元素所在队列的优先级和客户当前的等待时间来判定调度次序,队列优先级越高,客户当前等待时间越长,其被优先调度的概率越大。 算法3从多队列中选择调度元素 输入:multiQueue:a set of queues。 输出:c:an element from a set of customersC。 1.AssumeHto be ax×ytwo-dimensional array; 2.AssumeVto be ax×ytwo-dimensional array; 3.z←0; 4.fori←1 toxdo 5.forj←1 toydo 6.q←FindQueue(multiQueue,i,j); /*obtain queueqwith subscripts [i,j] inmultiqueue*/ 7.H[i,j]←FrontQueue(q);/*The head element of queueq*/ 8.x←Normalization(C[i,j].t,MAXTIME);/*normalizeH[i,j].t(waiting time ofH[i,j])*/ 9.y←GetPriority(q); 10.V[i,j]←μ×x+(1-μ)×y; 11.ifV[i,j]>z 12.z←V[i,j]; 13.q′←q; 14.endfor 15.endfor 16.c←DeQueue(q′); 17.returnc; 算法 4为选取客服的算法,根据系统所处的状态采用最为恰当的路由策略,选择为客户c服务的客服人员s,其中的路由策略如表3所示。S为客服集合;若客服s的业务集合s.D包含客户c的诉求业务c.b,即c.b∈s.D,那么s进入集合S′,S′中的任一客服可为客户c提供服务。在非超负荷状态下,优先从S′选择能为客户c服务且技能匹配的客服s。在超负荷状态下从S中筛选客服,存在所选客服业务类型、级别与客户匹配度不高的可能性,但有助于提升总体调度效率。 算法4选取客服。 输入:c:an element from a set of customers’ features;S:a set of customer service;status:states of system。 输出:s:an element from a set of customer service。 1.forsinSdo 2.ifc.bins.D 3.S′←S′∪{s}; 4.endfor 5.switch(status) 6.case{0,1,2}: 7. FindsfromS′ according to strategyP2; 8. returns; 9.case{3}: 10.ifc.g=“VIP” 11. FindsfromS′ according to strategyP3; 12.ifs= ∅ 13. FindsfromS′ according to strategyP4; 14.ifs=∅ 15. FindsfromS′ according to strategyP5; 16.ifc.g≠“VIP” 17. FindsfromS′ according to strategyP4; 18.ifs= ∅ 19. FindsfromSaccording to strategyP5; 20.returns; 21.case{4}: 22. FindsfromSaccording to strategyP5; 23.returns; 算法 5为系统状态判定算法,根据客服当前正在服务的人数、系统中客服负荷状态与客户排队等待状态判定当前系统所处的状态。具体的状态判定条件如表1所示。 算法5判定系统状态。 输入:n:number of people being served in the system;m:number of people waiting in queues;N:maximum number of people can be served;TN:average service time;TC:expected queueing time。 输出:status。 1.switch(n,m) 2.case{(n=0)∧(m≥0)}:status←0; 3.case{(n≤μ×Ν)∧(m>(1-μ)×Ν)}:status←1; 4.case{(n≤μ×Ν)∧(m≤(1-μ)×N)}:status←2; 5.case{(n>μ×Ν)∧(0≤m 6.case{(n>μ×Ν)∧(m≥w1×TC×N/TN)∧(d(t)>m(t))}:status←4; 7.returnstatus; 算法6为系统并行总算法,调度算法1构造多队列,当temporalQueue≠∅时,调度算法2将客户分派至构造完成的多队列multiQueue。同时,只要出现服务请求,调度算法5判断系统状态,调度算法3从各队列的队首中选择客户c,算法4根据系统状态调度对应的路由策略选择客服s,最后分配客服s为客户c服务完成一次调度。 算法6并行调度算法 1.execute 算法 1; 2.Parallelforeach 3.whiletemporalQueue≠∅do 4. execute 算法2; 5.whiletruedo 6. execute 算法5; 7. execute 算法3; 8. execute 算法4; 9. Assignctos; 设客户队列长度为len,多队列中的队列个数为Count,则调度算法的基本执行步数为count*len。其中,Count值只和客户属性相关,与客户排队人数无关。例如,在本文设计的系统中,预设客户等级与客户诉求业务类别,且均存在优先级,其中客户等级分为3级:VIP、普通用户和游客,客户诉求业务分为2级:紧急业务和非紧急业务,因此Count的值为6。所以,算法时间复杂度为O(Len)。 实验数据来源于某电力客服中心2017年7月至2018年7月共计348 439条客服服务数据。采用基于线程的模拟实验方法验证本文设计的在线客服系统调度算法的有效性。 为充分利用数据,以上午或下午工作时间4小时为基本时长,对2017年7月到2018年7月间的数据作了划分,进行了多次模拟实验,一次实验模拟4小时工作时长。同时,为进一步加快模拟实验效率,对现实时长做了放缩处理。将现实时间持续4小时的工作时长映射为400 s的模拟时长,即模拟时长中1 s对应现实时间36 s,将模拟时长放大36倍后可得到该模拟时长对应的现实时长,即图4所示的现实时间与模拟时间具有一一对应映射关系。 Figure 4 Simulation experiment based on thread图4 基于线程的模拟实验 如图4所示,以客服系统从8:00到12:00的调度情况为例,详细说明了基于线程的模拟实验流程。假定在8:00到12:00共计到达E位客户,在模拟时间0 s分别为E位客户开启线程CustomerArrivalThread,当模拟时间分别到达E位客户的到达时刻时,关闭线程CustomerArrivalThread,客户请求服务,并开启线程CustomerWaitThread,表示该客户处在等待客服系统分配客服服务状态,当客服系统为该客户分配客服服务后,等待线程CustomerWaitThread停止,记录等待时长,开启线程CustomerServiceThread,模拟客服服务线程,服务结束后CustomerServiceThread线程关闭。待模拟时间到达400 s模拟实验结束。 模拟实验共设计7位客服,其中2位高级客服,3位中级客服,2位初级客服。对应客服级别的客服最大接线数分别设为1,2,4。 Figure 5 Number of people being served in real time and number of people waiting on line图5 实时服务人数与等待人数 Figure 6 Relationship between system state and time 图6 系统状态与时间关系 如图5所示,上方折线表示当前时刻的实时服务人数,下方折线表示当前时刻的实时等待人数。图6表示系统所处的状态与时间的关系曲线,以及各个状态所持续的时长。可见超负荷持续时长最短,正常负荷持续时长最长,低负荷次之,所占比重详细数据如图7a所示。 图7b所示为系统分别在不同负荷下的客户平均等待时长,可见低负荷下等待时间最短,超负荷下等待时间最长。多次实验的客户平均等待机器模拟时长为0.410 19 s,等比例放大36倍后可得实验中客户平均等待时长为14.767 s。 Figure 7 Proportion and average waiting time of each state 图7 各状态下占比和平均等待时长 如图8所示,灰色条形表示7位客服在模拟实验中服务总数,白色条形表示每一个接线坐席在模拟时间内的接线服务量。其中,10001,10004为高级客服,10002,10005,10007为中级客服,10003,10006为初级客服。7位客服的均衡指数(坐席的平均接待人数)稳定在96~120,客服服务量符合预期,客服系统调度满足客服公平性考量。 Figure 8 Number of people served by customer service staff图8 客服服务人数 从整个实验过程看,调度模型一直处于正常的工作状态中。其中,正常负荷状态与低负荷状态共占据99%以上时长,且以正常负荷状态为主,为64%;而由于客户访问的随机性,低负荷状态也会占据一部分时长。由此可见,调度模型能合理利用客服资源而不会造成客服资源的浪费。因此,调度模型的设计较为合理。 在调度模型正常工作情况下,调度算法有效地实现了客服角度与客户角度的两方面调度目标。首先,在整个调度过程中,客服均衡指数较为接近,特别是相同类别客服之间均衡指数非常一致,客服之间相差基本不超过5%,这表示不同客服服务客户数量之间保持了高度的均衡性,不会出现有些客服长时间空闲而另一些长时间忙碌。因此,调度算法在相同类型客服之间或不同类型客服之间根据接线数差别实现了客户分配的公平性与合理性。其次,与某省电力营销服务中心正在运营的客服系统相比,调度算法在客户服务质量和服务效率上均有较为明显的提升。在服务质量上,调度算法先通过多队列对客户进行细致划分,并在多种状态下实施了技能优先、熟客优先等调度策略,与客服系统采用的随机分配策略相比,一定程度上实现了服务质量的提升;在服务效率上,客服系统的实际平均等待时长为29.858 s,而在调度算法下(实验参数设置与客服系统实际配置基本一致)客户平均等待时长为14.767 s,较大地提升了客户服务效率。 实验结果表明,面向在线客服的调度模型设计合理,调度算法可灵活、高效、公平地实现多客户与在线客服之间的调度任务,在实现较高质量服务的情况下,既较大幅度地降低了客户的平均等待时间,又确保了客服之间的负载均衡。 本文提出了一种面向在线客服系统的调度模型及其调度算法。调度模型由3个部分构成:一是根据客户相关特征构建的多优先级客户队列;二是综合在线客服系统与客户队列状态特征所划分出的调度系统状态,包括状态特征及状态之间的转换关系;三是调度策略与调度系统状态之间的对应关系。在调度模型基础上,进一步设计了相应的在线客服系统调度算法。通过模拟实验,一方面验证了调度模型的可用性与合理性,另一方面验证了调度算法可以有效地实现调度目标。从客户角度看,在实现较高质量的客户服务情况下,客户平均等待时间较大幅度减少;从客服角度看,客户分配合理,客服之间负荷均衡。在将调度模型与算法应用于具体的在线调度问题时,可根据问题特征对模型与算法中的相关参数如客户队列、客服特征与数量等进行相应调整,以适应特定的应用场景。因此,本文提出的面向在线客服的调度模型与调度算法可灵活、高效、公平地实现多客户与在线客服之间的调度任务。3.2 算法设计
4 实验及结果分析
4.1 实验方法
4.2 实验结果
4.3 结果分析
5 结束语