徐迅羽,楊根科
呼叫中心是企業與客戶交流的重要環節,它能使企業降低成本,提高效率,根據McKinsey公司([1],2006)的報告顯示,在某些行業中,呼叫中心甚至可以給企業帶來25%的收入,而排班問題是呼叫中心的核心問題。Aksin ([2],2007)對排班問題近年來的研究進行了全面的回顧,內容包括了排隊論,模型的仿真以及優化算法。排班問題的輸入一般由話務量和話務員服務時間的預測結果得到[3],Mandelbaum([4],2006)對呼叫中心排隊模型的分析表明最常規的排隊模型仍然是ErlangC模型。對于話務員人性化管理,Fukunaga([5],2002)的研究考慮了話務員指派問題中將話務員的意愿作為目標函數的一部分。Koole([6],2003)研究了在全局服務水平滿意約束下排班問題多目標算法設計。Gans([7],2003)在其研究中討論了以服務質量和排班效率作為指導的排班體制。Atlason([8],2004)研究了降低話務員上班成本與滿足服務水平的多目標問題。Thomas([9],2010) 研究了排班問題的隨機模型,將排班成本以及服務能力不足造成的經濟損失同時作為優化目標函數的排班問題。對于排班問題算法,Cezik([10],2006)用線性規劃模型對其求解.Saltzman([11],2005)([12],2007)將線性規劃和禁忌算法相結合來對目標函數進行求解。Athanassions([13],2009)應用了隨機化方法與整數規劃相結合的算法。
由于客服的行業特征,排班方案會涉及到許多因素,影響到顧客,管理者和話務員的三方利益。在仿真模型中充分考慮到影響因素,并將模型分成班次設計和班組指派兩個子模型,使排班問題更具有層次性和實際操作性。
1.1.1 班次種類及其喜好度的描述
T1,T2,T3——早中晚班最早開始時間。早班:起始時間∈[T1,T2);中班:起始時間∈[T2,T3); 晚班:起始時間∈[T3,T1);λ1,λ2,λ3,0——分別表示早班、中班、晚班和休息班產生的喜好度;
1.1.2 疲勞度參數
D(s,t)—— 話務員的精力狀態與服務質量有著密切的關系,在任何時間段上提供一個相對穩定的服務質量是考核呼叫中心服務水平的重要指標之一。而和話務員精力密切相關的是話務員在每個時間段上的疲勞度。
根據對話務員疲勞度的研究顯示,話務員的疲勞度主要和兩個因素有關:班次的種類s和當天累積上班的時間t。本文中,假定話務員班次種類分成早班,中班,晚班和休息班,它們各自對應的累積疲勞度D(s,t),如表1所示[15]:

表1 累積疲勞度值D(s,t)的統計量
1.1.3 班組意愿約束(硬條件,軟條件)
為了更好的體現呼叫中心排班策略的人性化,排班策略將話務員的意愿納入了排班考慮因素。話務的意愿分為硬條件(H,H′)和軟條件(S,S′),硬條件表示一定要滿足的意愿,軟條件表示盡量要滿足的意愿。
H——表示i天,k班組意愿的硬約束和軟約束;

1.1.4 輪換規則
呼叫中心為了更人性化的進行排班計劃,除了對具有硬條件意愿的班組進行特別排班外,其他班組需要遵循輪換規則
R——輪換規則的集合(當前班與后續班),考慮到勞動法等因素,得到所有可行的當前與后續班次的輪換規則:

1表示早班,2表示中班,3表示晚班,0表示休息
1.2.1 有關班次設計的變量描述
此部分對班次進行設計,未和實際班組進行配對,其主要涉及到服務水平和排班成本等相關因素

前3個約束表示4個決策變量必須在正確的時間段中;后四個約束分別表示班次覆蓋時間長度,表示連續工作時間長度和中間休息時間長度必須在規定的上下限中。
考慮到影響因素和表示方便,引入以下計算變量:
f1(i,j,l)——表示在i天,j班次,l時段是否在上班
f2(i,j)——表示在i天,j班次覆蓋的上班時間長度
f3(i,j)——表示在i天,j班次所上班的類型
f4(i,j,l)——表示在i天,j班次,l時段已經上了多少時間的班
f5(i,j)——表示在i天,j班次的種類產生的喜好度
f6(i,l)——表示在i天,l時段設計有多少班次上班
f7(i,j,l)——表示i天,j班次,l時間段上產生的疲勞度
f8(i,l)——表示在第i天第l個時間段上話務員的平均疲勞度值
由以上變量可以建立相關的計算關系如下:

其中1表示早班,2表示中班,3表示晚班,0表示休息


1.2.2 有關班組指派的變量描述
此部分將設計好的班次與實際班組進行配對指派,其主要涉及到話務員的利益因素。
Yk,i,j——表示i天,k班組是否被指派上j班次的班取值約束:

此約束表示一個班組每天只能被指派到一個班次上考慮到影響因素和表示方便,引入以下計算變量:
g1(k,i)——表示i天,k班組所上班的類型
g2(k,i)——表示i天,k班組的軟條件是否被滿足
g3(k)——表示班組k喜好度的總和
g4(k)——表示班組k總工作時長
rk——表示班組k當前與后續兩個班次的輪換安排
由以上變量可以建立相關的計算關系:

在這個環節中的約束條件有三部分組成,客觀條件約束,班組意愿約束和輪班規則約束
1.3.1 客觀條件約束

以上第一個約束表示各個時間段的班組數量必須小于呼叫中心容量上限。第二個約束表示總工時必須在總工時的上下限之間;
1.3.2 班組意愿約束

前兩個約束表班組每天只能提出一個意愿;后兩個約束表示班組提出的硬條件意愿必須被滿足;
1.3.3 輪班規則約束

這個約束表示沒有硬條件意愿時必須滿足輪換規則;
在此部分,我們考慮客戶服務滿意指標、經濟指標和服務質量指標在分別滿足客觀約束條件下的最優:

2.1.1 客戶服務滿意指標
當設計的班次數量小于預測班次數量的時候,會導致實際服務水平達不到期望值,直接影響到客戶接受服務時候的滿意程度。單位時段上班次平均短缺程度描述如下:

2.1.2 經濟指標
當預測班次數量小于設計班次的時候,產生多余的人力成本,企業利益受損,單位時段上班次平均冗余程度描述如下:

2.1.3 服務質量指標
呼叫中心希望每個時間段上話務員的平均疲勞度值保持平衡,以呈現一個平穩的服務質量,平均疲勞度值的方差如下:

2.2.1 PSO算法的介紹
該算法模擬鳥集群飛行覓食的行為, 通過鳥之間的集體協作使群體達到最優目的,基本原理為:
一個由q個粒子組成的群體在D維搜索空間中運動,第i個粒子的位置與速度表示為(xi,vi),1≤i≤q. 第i個粒子經歷過的最好點表示為pi,群體內所有粒子所經過的最好點表示為pg,粒子的位置和速度根據如下方程進行變化[16]:

w是慣性因子,使粒子保持慣性和搜索趨勢;c1和c2是非負常數,稱為學習因子;r1,r2~U(0,1)的隨機數[17]
2.2.2 粒子的設計
一個班次的確定由兩部分組成,班次起始時間和班次的作休類型(比如工作3小時休息1小時再工作4小時都歸為一種作休類型)。假設根據約束條件,共有M種可行的班次作休類型,對一個粒子設計如下:
一個粒子為K維,每一維取值Z,Z∈[1,M*L]。每一維數值Z就可以提供2個信息,班次起始時間Xi,j,1和班次類型m。起始時間取值為(Z/M)的余數,班次類型取值為(Z/M)向上取整,以此確定一個班次。
2.2.3 改進點
由于此問題的峰值較多,變化率較快,在原有的PSO算法上進行了一些改進:
(1) 由于此問題中K種班次有很多種組合可以逼近最優解,在整個可行域上有許多峰值,所以所有粒子向全局最優gbest進行學習后,會導致粒子都向gbest收斂,形成局部最優,不利于全局搜索,在此,本文借鑒了“CLPSO”[18],粒子將不學習Pg的值,而是會有一定概率Pc去學習其他粒子的最優值Pi,這樣增大了此算法的全局搜索能力。
(2) 由于此問題是一個高維問題,考慮到在一些適應度較差的粒子中,存在著部分優質維數信息,但是卻因為其適應度較差而沒有被學習到。為了避免這種情況,在本文借鑒了“A-CLPSO”[20]算法中讓一定數量的粒子去學習適應度較差的粒子(數量為n1),以此跳出局部最優來尋找全局最優。
(3) 由于開始的時候是隨機成成粒子,此問題的峰值較多,會容易形成一些適應度很差的班次組合,這些粒子容易出現在較差的局部最優,甚至在互相學習中有害于其他粒子。為了避免這種情況,在本文借鑒了“A-CLPSO”[20],算法中設置最差的一些數量的粒子進行自身變異(數量為n2),從而獲得更好適應度的粒子。
班次指派階段是將企業中具體的工作班組指派進前一部分設計好的班次中。前一部分中,企業管理者對于客戶滿意指標、經濟指標、服務質量指標等指標進行了討論,而這些指標通常在排班問題中具有較高的優先級。而在本環節中,班組指派的指標考慮了話務員排班喜好度的平衡性,總工時的公平性以及話務員排班意愿的滿足度得到最優。

3.1.1 班組排班喜好度的平衡性
喜好度指班組在被指派到不同種類的班次的時候產生的對此類班次的喜好程度,在指派過程中,我們希望班組之間被安排到的班次的總喜好度盡量接近,減少班組對排班結果的不滿情緒。喜好度總和的方差如下

3.1.2 總工時的公平性
總工時公平性表示話務員之間被安排到的班次的總工時數應當盡量接近。總工時的方差如下

3.1.3 班組排班意愿的滿足度
在班組指派中,企業都會考慮班組的意愿,本文中將話務員的意愿分成兩種:硬約束和軟約束。硬約束表示一定要滿足的條件,軟約束是可滿足可不滿足的條件。作為企業的管理者,盡可能滿足意愿是排班評估的重要指標之一,累計如下:

在此階段,約束條件有班組意愿(硬約束),勞動法限制,輪換規則等,指標有總工時公平性,喜好度公平性,意愿滿足程度。旋轉排班法在滿足約束條件的情況下,根據3個指標不同優先級來進行班組指派活動。一天的旋轉規則如下:
第一步,將擁有硬約束意愿的班組首先指派,滿足硬約束意愿。
第二步,檢查是否有班組達到連續工作日的上限,發現則指派休息班組。
第三步,根據總工時公平性,總喜好度公平性,班組意愿滿足程度的優先級條件對未指派班組進行排序,依次根據輪班規則進行指派,盡可能滿足話務員軟條件的意愿。發現沒有滿足輪班規則的班次時,此班組指派為休息班。
第四步,未被安排到的班組指派為休息班。
第五步,統計總工時,總喜好度,連續工作日長等參數。
利用旋轉排班法,我們最終可以得到排班表。
由于排班結果不能一次達到理想效果,本文中將對規劃調度參數的調整引入反饋回路中,通過修正規劃調度參數,獲得最終排班表。而能夠被調整的參數和作用如下:
Ptsf, TAW——調整預測統計部分的指標值,改變排班部分輸入參數,影響排班結果整體的服務質量指標;
ub,lb——調整班次設計部分的約束條件,改變班次的多樣性,影響班次設計部分的指標E1,E2,E3;
優先級pr——調整班組指派指標(喜好度的平衡性,總工時的公平性和意愿的滿足度)的優先級pr,影響E4,E5,E6的優化程度;
[wi]——調整指標值的權重系數,改變各個指標被重視的程度,影響整個排班指標的輸出;
5.1.1 仿真參數確定
基本參數:{I,L,Q,K,N}={7,24,150,100,5};時間節點{T1,T2,T3}={4,12,20};喜好度{λ1,λ2,λ3}={3,5,8};
5.1.2 預測部分
根據某電信中心的話務數據與管理情況,確定預測部分的參數[19]:
平滑常數α1=0.3,α2=1,β=0.2,平均服務時長u=240s,服務水平Taw=20s內接通率需要達到Ptsf,根據行業要求和黃金感官理論[14],每個時段上設置的最低撥通率取值在70%~85%,如表2所示:

表2 話務量以及班組數預測數據表[19]
根據話務數據和預測模型,此部分我們得到本期各時段的預測話務量和滿足服務水平所需的最小預測班組數量Fi,l,如圖2所示:

圖2 預測話務量與預測班組數量曲線圖
5.1.3 班次設計部分
班次設計的取值約束參數如下:

根據約束條件,得到班次作休類型的數量M=13(包括休息班),如表3所示:

表3 班次作休類型生成表
然后利用PSO算法進行求解,PSO的參數定義,粒子數為30個,循環次數1000次。假設3個目標函數權重各占1/3,可以得到每天班次設計的結果(如表4班次行所示,詳細數據見附錄2),并由此得到每個時段上的實際撥通率與平均疲勞度值,如圖3所示:

圖3 實際撥通率與平均疲勞度曲線圖
由圖3可見實際撥通率與設置的最低撥通率有較好的擬合,平均每個時段上的差值在1%左右。而平均疲勞度值每天有周期性的變化,其主要維持在[1.7,2.2]區間內,不同時段的疲勞度值差值較小,以此體現呼叫中心在任何時段都擁有平穩的服務質量。
此時,得到班次設計部分的指標值為:E1=0.27,E2=0.31,E3=1.8。
5.1.4 班組指派部分

表4 班組一周排班表(前八組)

?
然后根據總工時公平性,總喜好度公平性,話務員意愿滿足程度優先級排序(此處假設從高到低),將設計部分得到的班次結果與班組進行配對,得到最終排班。前八組班組的排班表如表4所示,其中參數對應如下:班組編號k,作休類型m,起始時間Xi,j,1,意愿類型(H,S),意愿描述(全體班組數據詳見附錄2)。
此處得到指派部分的指標值:E4=8.564,E5=13.091,E6=6。
每一組班組只需要根據排班表中有關他們的那一列進行上班即可。
5.1.5 仿真結果統計與評價
此次排班結果的全體班組統計數據:
各天上班班組數量:{76,69,64,63,74,70,79};一周各個班組種類數量:早班240組,中班180組,晚班93組,休息班187組(休息班比例為26.7%);一周硬條件意愿52個,軟條件意愿27個;話務員平均一周工時數38.24小時;
相關指標經過計算可以得到,為了得到更直觀的表示并且與其他文章比較,對各個指標設置最大值以及進行歸一化和取反處理,得到優化百分比如下:
1) 客戶滿意度(平均短缺度):E1=0.81,平均每個時段上短缺0.81個班組,最大值取5,優化百分比為83.8%。
2) 經濟成本(平均冗余度):E2=0.93,平均每個時段上冗余0.93個班組, 最大值取5,優化百分比為81.4%。
3) 疲勞度平衡性:E3=1.8,每個時段上平均疲勞度值的方差為1.8,最大值取10,優化百分比為82%。
4) 喜好度公平性:E4=8.564,班組總喜好度的方差為8.564,最大值取50,優化百分比為82.7%。
5) 總工時公平性:E5=13.091,班組總工時的方差為13.091,最大值取50,優化百分比為73.8%。
6) 班組意愿滿足度:E6=6,共有6個班組軟條件意愿沒有被
滿足,最大值取軟意愿總數27,優化百分比為78%。
由排班結果可以看出,此排班方法在較大程度上擬合預測班組數量,保證顧客滿意和成本控制的同時,兼顧到了話務員的感受因素,在博弈中得到預期的結果。
排班結束之后,可以得到最終排班表,和相關參數。管理可以根據得到的數值對排班結果進行評估,調整排班時候的策略,進行再次排班,直至得到滿意結果。
上述實例分析驗證了仿真模型的可行性,此部分根據以上實例數據,改變部分參數來驗證本文仿真模型實際應用的可行性和適應性。
5.2.1 搜索最優班組數量
呼叫中心班組數量主要影響到班次設計部分的3個指標,如圖4所示:

圖4 優化指標與班組數量關系圖
班組數量超過100時,3個指標隨著班組數量上升有明顯提高,但是休息班比例也有顯著上升,說明此時排班結果的改善伴隨著班組利用率降低的負面影響。當班組數量低于90時,3個指標隨著班組數量減少而快速下降,經濟成本即班組短缺率下降明顯,而休息班比例上升的原因是排班約束保證班組必須的休息安排而班組總數下降導致比例上升。可見在以上實例中的呼叫中心的規模下,90組到100組班組是最適合的。由此驗證此仿真模型搜索最優班組數量的可行性。
5.2.2 各方利益博弈選擇
在呼叫中心規模一定的情況下,不同行業或不同的管理者對于各種指標有著不同的側重性。以下對于本文仿真模型進行權重側重性的改變來驗證其對管理者排班要求的適應性,如表5所示:

表5 不同權重下優化指標參數表
根據上表數據,顯示本文仿真模型在改變指標權重的情況下,根據各方利益的博弈選擇,得到不同效果的排班結果來滿足不同的期望需求,驗證了此仿真模型的普遍性和可行性。
根據與以前的研究進行比較[7][9],以前的研究主要考慮服務質量,排班效率和排班成本作為排班指標。而本文考慮更多的指標因素,包括班組意愿和疲勞度等,增加了問題復雜性,無法用以前研究中的線性規劃和整數規劃來求解,而本文的排班模型對現代呼叫中心排班問題也有更廣泛的適應性。Thomas([9],2010)在對排班問題建模時考慮了服務水平與排班成本之間的博弈,將上述數據利用Thomas的排班問題進行求解,并且與以上實例比較,如圖5所示:

圖5 優化百分比對比圖
Thomas對于客戶滿意度和成本控制有較好的效果,但在兼顧疲勞度,喜好度公平性與總工時公平性效果不佳。通過比較,說明本文的排班模型兼顧了更多的考慮因素,在博弈中尋找滿足要求的排班結果,具有更廣泛的普遍性和適應性。
本文通過對呼叫中心排班問題的研究,引入了話務員的服務水平,呼叫中心成本的控制,話務員疲勞度,排班結果的公平性(總工時數等),話務員對排班結果的喜好(軟約束,硬約束)等多樣化的目標因素,建立排班問題的優化決策模型和相關的約束條件。在服務參數預測模型中引入話務到達時間隨機變量、服務時間隨機變量和最低撥通率隨機變量等隨機變量得到滿足服務水平的班組數量。又由于客服需求曲線的隨機性,話務員精力狀態與服務質量模糊相關性,服務水平和話務員權利或者值班滿意度的矛盾約束等的復雜性,依據對外的規劃經營和對內的管理調度的不同,將排班問題分為班次設計與班組指派兩個子模型,分別利用PSO算法與旋轉排班法求解,得到排班表與相關參數。本文最后提出進一步采用反饋控制的理念,把管理者置于多目標決策問題的反饋回路中,通過修正各種規劃調度參數,獲得最終排班表誠然,這篇文章還有很多可以改進的地方,在文中假設班組都是單一技能,單一話務類型,實際呼叫中心可能有多種話務人員,這將是下一步可以研究的方向。之后,還可以找尋更大規模的實例,來測試在大規模需求中排班方法的性能。
[1]Eichfeld, A., T. D. Morse, K. W. Scott. Using call centers to boost revenue[R]. The McKinsey Quarterly. 2006.2
[2]Aksin, Z. The modern call-center: A multi-disciplinary perspective on operations management research[J]. Production and Operations Management .2007.16 (6):665–668.
[3]Weinberg. J. Bayesian forecasting of an inhomogeneous poisson process with applications to call center data[J]Journal of the American Statistical Association, 2007.102,1185–1199.
[4]Mandelbaum, A. Service-engineering of call centers:Research, teaching, practice[B].IBM Business Optimization and Operations Research Workshop, Haifa, Israel.2006.3
[5]Fukunaga, A. Staff scheduling for inbound call centers and customer contact centers[J].Eighteenth National Conference on Artificial Intelligence, 2002.822–829.
[6]Koole, G. Optimal shift scheduling with a global service level constraint[J]. IIE Transactions 2003. 35 1049–1055.
[7]Gans, N. A call-routing problem with service-level constraints[J]. Operations Research 2003.51(2) 255–271.
[8]Atlason, J. Call center staffing with simulation and cutting plane methods[J]. Annals of Operations Research.2004. 127(1– 4) 333–358.
[9]Thomas R. Robbins . A stochastic programming model for scheduling call centers with global Service Level Agreements[J]. European Journal of Operational Research. 2010.207(3).1608-1619
[10]Cezik, T. Staffing multiskill call centers via linear programming and simulation[J]. Management Science,forthcoming. 2006.1
[11]Saltzman, R. A hybrid approach to minimizing the cost of staffing a call center[J]. International Journal of Operations and Quantitative Management 2005. 11(1) 1–14.