夏正洪,潘衛(wèi)軍
(中國(guó)民用航空飛行學(xué)院 空中交通管理學(xué)院,四川 廣漢618307)
科學(xué)地預(yù)測(cè)排班周期內(nèi)的話務(wù)量水平和所需坐席數(shù)、合理地制定話務(wù)員的班次對(duì)于充分利用呼叫中心[1]現(xiàn)有資源,提高呼叫中心的服務(wù)水平和質(zhì)量有重要意義。國(guó)內(nèi)外話務(wù)量預(yù)測(cè)的基本方法有基于神經(jīng)網(wǎng)絡(luò)[2,3]和基于支持向量機(jī)[4]的算法,坐席數(shù)預(yù)測(cè)通常采用Erlang_C 公式[1]。牟穎等[5]對(duì)比了神經(jīng)網(wǎng)絡(luò)算法和支持向量機(jī)算法用于大型呼叫中心話務(wù)量預(yù)測(cè)的有效性,謝傳柳等[1]在牟穎預(yù)測(cè)的話務(wù)量數(shù)據(jù)的基礎(chǔ)上,使用Erlang-C 公式預(yù)測(cè)所需坐席數(shù),并選用粒子群算法[6]對(duì)坐席數(shù)曲線進(jìn)行擬合,最后采用隊(duì)列輪循法生成了總班表和個(gè)人班表,基于J2EE開發(fā)了基于B/S模式的大型呼叫中心排班系統(tǒng)并得到了驗(yàn)證和推廣[7]。曾?。?]建立了話務(wù)量預(yù)測(cè)模型并進(jìn)行了仿真分析;韓銳等[9]采用微分進(jìn)化策略更好地預(yù)測(cè)了話務(wù)量;姚世紅[10]基于微正則算法和支持向量機(jī)的方法完成了對(duì)呼叫中心話務(wù)量預(yù)測(cè)??梢?,話務(wù)量預(yù)測(cè)的準(zhǔn)確性直接關(guān)系到后續(xù)坐席數(shù)預(yù)測(cè)的準(zhǔn)確性,影響典型班次對(duì)應(yīng)的人數(shù)預(yù)測(cè)結(jié)果的可靠性。個(gè)人每月上班總時(shí)間應(yīng)體現(xiàn)高規(guī)律性和高公平性,總班表和個(gè)人班表的合理性是衡量智能排班系統(tǒng)是否有效的唯一標(biāo)準(zhǔn)。
呼叫中心智能排班系統(tǒng)通過對(duì)歷史話務(wù)量數(shù)據(jù)的分析,科學(xué)預(yù)測(cè)未來一段時(shí)間內(nèi)的話務(wù)量水平及所需坐席數(shù),結(jié)合呼叫中心的可用資源進(jìn)行班次人數(shù)的制定,排班過程實(shí)質(zhì)為將話務(wù)員進(jìn)行合理分配的問題。本文闡述了呼叫中心智能排班系統(tǒng)的實(shí)現(xiàn)流程,分析了學(xué)習(xí)率和訓(xùn)練精度對(duì)BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練最大次數(shù)、收斂時(shí)間和話務(wù)量預(yù)測(cè)精度的影響。根據(jù)呼叫中心數(shù)據(jù)日變化特點(diǎn),提出并驗(yàn)證了分時(shí)間段多次采用神經(jīng)網(wǎng)絡(luò)比整體預(yù)測(cè)所得話務(wù)量結(jié)果更加準(zhǔn)確。基于話務(wù)量預(yù)測(cè)結(jié)果使用Erlang-C 公式進(jìn)行了坐席數(shù)的預(yù)測(cè),定義典型班次后使用粒子群算法進(jìn)行了班次人數(shù)的擬合。基于J2EE開發(fā)了呼叫中心智能排班系統(tǒng),并完成對(duì)某呼叫中心可用資源的合理配置,實(shí)現(xiàn)了成本最小化和利潤(rùn)最大化。
科學(xué)準(zhǔn)確預(yù)測(cè)話務(wù)量是合理進(jìn)行呼叫中心智能排班的前提,根據(jù)話務(wù)量預(yù)測(cè)結(jié)果進(jìn)行所需坐席數(shù)的預(yù)測(cè),再根據(jù)話務(wù)員數(shù)量、可用坐席數(shù)、班次等約束條件進(jìn)行人員的分配和班表的生成??梢?,話務(wù)量預(yù)測(cè)結(jié)果的精度直接影響坐席數(shù)預(yù)測(cè)的準(zhǔn)確性和班表的可用性,是呼叫中心智能排班系統(tǒng)的核心基礎(chǔ)。根據(jù)呼叫中心歷史話務(wù)量的周期性特點(diǎn),本文選用BP神經(jīng)網(wǎng)絡(luò)來進(jìn)行話務(wù)量的預(yù)測(cè)[4]。影響神經(jīng)網(wǎng)絡(luò)模型預(yù)測(cè)精度的因素通常有樣本數(shù)據(jù)是否豐富、模型輸入?yún)?shù)的選擇、隱層層數(shù)和節(jié)點(diǎn)數(shù)的選取、學(xué)習(xí)率、最大循環(huán)次數(shù)、訓(xùn)練精度等。其中,BP神經(jīng)網(wǎng)絡(luò)隱層層數(shù)和節(jié)點(diǎn)數(shù)直接關(guān)系到網(wǎng)絡(luò)的收斂速度,最大循環(huán)次數(shù)和精度決定網(wǎng)絡(luò)模型的訓(xùn)練時(shí)間,學(xué)習(xí)率決定神經(jīng)網(wǎng)絡(luò)是否收斂以及收斂速度。因此,合理選擇BP神經(jīng)網(wǎng)絡(luò)模型及其相關(guān)參數(shù),提高話務(wù)量預(yù)測(cè)的精度是系統(tǒng)實(shí)現(xiàn)中的關(guān)鍵問題。
本文使用某呼叫中心系統(tǒng)2010 年9 月到11 月的話務(wù)量作為訓(xùn)練樣本,以 (00:01-00:29,00:30-00:59,……)半小時(shí)為單位的話務(wù)總量作為研究對(duì)象,得到話務(wù)量曲線的變化如圖1所示,其中X 軸是某月以半小時(shí)為間隔的時(shí)間段個(gè)數(shù),如9月數(shù)據(jù)段個(gè)數(shù)為2*24*30=1440,Y 軸是X 軸上每半小時(shí)的話務(wù)總量??梢姡? 個(gè)月話務(wù)量曲線變化幾乎相同,呈現(xiàn)明顯的月周期性和日周期性。同時(shí),每天的話務(wù)量數(shù)據(jù)在早晨10點(diǎn)到11點(diǎn)和晚上19點(diǎn)到20點(diǎn)間出現(xiàn)兩次峰值,且早峰值略大于晚峰值,在凌晨3點(diǎn)到5點(diǎn)話務(wù)量達(dá)到最低,與人的生理活動(dòng)特征極為相符。因此,筆者使用BP神經(jīng)網(wǎng)絡(luò)對(duì)歷史話務(wù)量進(jìn)行訓(xùn)練,輸入層、隱層、輸出層節(jié)點(diǎn)數(shù)分別為6、6、1;待神經(jīng)網(wǎng)絡(luò)訓(xùn)練完畢后記錄網(wǎng)絡(luò)中各層權(quán)重和偏倚值,并重現(xiàn)該網(wǎng)絡(luò)對(duì)12月的話務(wù)量數(shù)據(jù)進(jìn)行預(yù)測(cè)。并將預(yù)測(cè)的話務(wù)量數(shù)據(jù)與12月份真實(shí)話務(wù)量數(shù)據(jù)進(jìn)行比較,統(tǒng)計(jì)其預(yù)測(cè)精度的平均值,從而驗(yàn)證BP神經(jīng)網(wǎng)絡(luò)模型用于話務(wù)量的預(yù)測(cè)的有效性。
圖1 歷史話務(wù)量數(shù)據(jù)的月、日周期性
本文通過統(tǒng)計(jì)神經(jīng)網(wǎng)絡(luò)的實(shí)際循環(huán)次數(shù)、收斂時(shí)間來描述訓(xùn)練精度、學(xué)習(xí)率對(duì)神經(jīng)網(wǎng)絡(luò)訓(xùn)練收斂情況的影響見表1??梢?,學(xué)習(xí)率大小直接影響神經(jīng)網(wǎng)絡(luò)的實(shí)際循環(huán)次數(shù)和收斂時(shí)間,學(xué)習(xí)率越小,網(wǎng)絡(luò)循環(huán)次數(shù)越大,收斂所需時(shí)間越長(zhǎng)。當(dāng)學(xué)習(xí)率不變而訓(xùn)練精度變小時(shí),實(shí)際循環(huán)次數(shù)不再發(fā)生變化,收斂所需時(shí)間幾乎不變;而訓(xùn)練精度不變的情況下,學(xué)習(xí)率變小會(huì)導(dǎo)致實(shí)際循環(huán)次數(shù)顯著增大,收斂時(shí)間顯著增長(zhǎng)。從表中可以看出,話務(wù)量預(yù)測(cè)精度跟神經(jīng)網(wǎng)絡(luò)的訓(xùn)練精度直接相關(guān),而學(xué)習(xí)率主要影響網(wǎng)絡(luò)的訓(xùn)練次數(shù)和收斂時(shí)間。為了保證訓(xùn)練精度的前提下盡量縮短網(wǎng)絡(luò)的收斂時(shí)間,本文選取BP 神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)率為0.01,訓(xùn)練精度為0.0001。
表1 學(xué)習(xí)率和訓(xùn)練精度對(duì)神經(jīng)網(wǎng)絡(luò)收斂的影響
根據(jù)呼叫中心話務(wù)量數(shù)據(jù)日變化特點(diǎn),筆者提出了將2010年9月至11月的歷史話務(wù)量數(shù)據(jù)按時(shí)間段劃分,分別采用BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練和預(yù)測(cè)。時(shí)間段分別為0點(diǎn)到5點(diǎn)、5點(diǎn)到10點(diǎn)、10點(diǎn)到20點(diǎn)、20點(diǎn)到24點(diǎn)。當(dāng)神經(jīng)網(wǎng)絡(luò)模型達(dá)到穩(wěn)定狀態(tài)的時(shí)候,分別記錄下各模型中各層權(quán)重和偏倚值;然后再按時(shí)間段的不同分別重現(xiàn)神經(jīng)網(wǎng)絡(luò)并預(yù)測(cè)12月第一周 (12月1日到7日)的話務(wù)量進(jìn)行預(yù)測(cè),將分段預(yù)測(cè)結(jié)果分別與原始數(shù)據(jù)和整體預(yù)測(cè)結(jié)果對(duì)比如圖2所示。其中,橫軸為12月第一周半小時(shí)為間隔的時(shí)間段數(shù)目即7*24*2=336 個(gè),縱軸為每半小時(shí)的話務(wù)量總數(shù),數(shù)據(jù)系列1表示12月原始話務(wù)量變化曲線,數(shù)據(jù)系列2和3分別表示是整體采用神經(jīng)網(wǎng)絡(luò)和分段采用神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)的話務(wù)量結(jié)果。
為了比較兩種方法的預(yù)測(cè)精度,將每半小時(shí)話務(wù)量預(yù)測(cè)結(jié)果分別減去真實(shí)話務(wù)量,并除以真實(shí)話務(wù)量得到每個(gè)
圖2 分段預(yù)測(cè)結(jié)果與整體預(yù)測(cè)、原始數(shù)據(jù)對(duì)比
數(shù)據(jù)的誤差errori,再將所有的誤差相加除以數(shù)據(jù)點(diǎn)個(gè)數(shù)得到平均誤差A(yù)verageError,從而論證分段預(yù)測(cè)結(jié)果和整體預(yù)測(cè)結(jié)果的優(yōu)劣。其中,i的取值為 (1,2……,336),xi表示第i個(gè)時(shí)間段的話務(wù)量預(yù)測(cè)結(jié)果,而xi0表示該時(shí)間點(diǎn)的真實(shí)話務(wù)量。將單個(gè)數(shù)據(jù)點(diǎn)誤差進(jìn)行對(duì)比如圖3所示,用數(shù)據(jù)系列1表示的分段預(yù)測(cè)結(jié)果較用數(shù)據(jù)系列2所表示的整體預(yù)測(cè)結(jié)果偏差小。利用公式 (2)得到整體預(yù)測(cè)和分段預(yù)測(cè)結(jié)果的平均誤差的絕對(duì)值分別為0.299907 和0.206771,即分時(shí)間段多次使用神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)結(jié)果精度提高了9.3%
圖3 分段預(yù)測(cè)和整體預(yù)測(cè)結(jié)果誤差分析
呼叫中心班次人數(shù)預(yù)測(cè)是基于所預(yù)測(cè)的話務(wù)量數(shù)據(jù),使用Erlang-C公式預(yù)測(cè)坐席數(shù)[1,4],并基于所定義的典型班次、規(guī)定的服務(wù)水平等參數(shù)進(jìn)行坐席數(shù)曲線擬合,得到每個(gè)典型班次所對(duì)應(yīng)的話務(wù)員數(shù)量。
假設(shè)以每半小時(shí)為單位的話務(wù)量的平均客戶呼入率為λ,平均話務(wù)持續(xù)時(shí)間為Ts,呼叫中心可用客服總?cè)藬?shù)為m,則半小時(shí)的話務(wù)流量數(shù)據(jù)為μ,座席占用率為ρ,Ec(m,μ)表示話務(wù)不能馬上被處理而必須等待的概率,話務(wù)在目標(biāo)等待時(shí)間內(nèi)被處理的概率為Wt。根據(jù)歷史話務(wù)量數(shù)據(jù)日變化特征,基于分時(shí)間段神經(jīng)網(wǎng)絡(luò)模型預(yù)測(cè)的結(jié)果,本文假設(shè)呼叫中心可用話務(wù)員人數(shù)為650,可用坐席數(shù)為450,各時(shí)間段滿意服務(wù)水平分別為0.75,0.8,0.8,0.75;且目標(biāo)等待時(shí)間為20s,每個(gè)話務(wù)量平均持續(xù)時(shí)間為160s,坐席占用率均為80%。根據(jù)Erlang-C 公式,在最大客服人數(shù)范圍內(nèi)找到第一個(gè)滿足該時(shí)間段服務(wù)水平的坐席數(shù)值,即半個(gè)小時(shí)內(nèi)所需的話務(wù)員數(shù)量如圖4中的預(yù)測(cè)所需坐席數(shù)據(jù)系列所示
圖4 坐席數(shù)曲線擬合
坐席數(shù)曲線擬合的原則是保證全局的服務(wù)水平達(dá)到給定的值,坐席數(shù)曲線擬合的實(shí)質(zhì)是一個(gè)多約束最優(yōu)化問題,必須考慮呼叫中心的話務(wù)員數(shù)量、坐席數(shù),此外還必須考慮員工的休息,上班時(shí)長(zhǎng)等因素。要對(duì)呼叫中心人力資源進(jìn)行合理配置,單獨(dú)考慮坐席數(shù)點(diǎn)是沒有任何意義的,因?yàn)榘啻沃贫ú豢赡芤园胄r(shí)作為員工的工作時(shí)長(zhǎng)。因此,制定呼叫中心的合理典型班次是進(jìn)行坐席數(shù)曲線的前提根據(jù)文獻(xiàn) [1]所制定的典型班次,基于坐席數(shù)預(yù)測(cè)結(jié)果使用粒子群算法進(jìn)行坐席數(shù)擬合即可得到各典型班次時(shí)間段內(nèi)滿足平均服務(wù)水平所需的話務(wù)員數(shù)量如圖4 所示。其中,數(shù)據(jù)系列1為預(yù)測(cè)的所需坐席數(shù),數(shù)據(jù)系列2為實(shí)際分配的坐席數(shù),X 軸為十二月第一周以半小時(shí)為間隔的時(shí)間段個(gè)數(shù),Y 軸為所需的坐席數(shù),擬合之后的坐席數(shù)在該排班周期內(nèi)的平均服務(wù)水平位0.805。值得注意的是,如果一個(gè)班次的工作時(shí)間由兩個(gè)及以上的不同時(shí)間段組成 (即一個(gè)班次中間有間斷的情況),其工作時(shí)長(zhǎng)不等于結(jié)束時(shí)間與開始時(shí)間之差;若直接運(yùn)用于粒子群算法中,將導(dǎo)致在班次時(shí)間間隔內(nèi)的服務(wù)水平達(dá)不到預(yù)期的值。同時(shí),雖然這種班次的工作時(shí)間不連續(xù),但是上班的人數(shù)以及上班人員是不會(huì)發(fā)生變化的。因此,可以將不同時(shí)間段的小班視為獨(dú)立的班次帶入粒子群算法中,并且通過標(biāo)志位來確定相同班次,運(yùn)算過程中保證班次相同的班有相同的人數(shù)和人員,這樣才可能在達(dá)到滿意的服務(wù)水平的前提下生產(chǎn)合理可用的班表。
呼叫中心排班系統(tǒng)通過科學(xué)地預(yù)測(cè)排班周期內(nèi)的話務(wù)量和所需坐席數(shù),合理安排話務(wù)員的數(shù)量和班次,實(shí)現(xiàn)保障客戶服務(wù)水平前提下的完成呼叫中心資源的合理配置[10]。為了保證呼叫中心話務(wù)員上班的高規(guī)律性和高公平性,本文通過引入 “休息班”到智能排班算法中;考慮到話務(wù)員以班組為單位來進(jìn)行排班安排的,本文采用隊(duì)列輪循法來實(shí)現(xiàn)總班表和個(gè)人班表的生成,將一個(gè)班組的員工裝入隊(duì)列中,定義N 個(gè)班次和隊(duì)列,將隊(duì)列進(jìn)行首尾串聯(lián),然后以天為單位將隊(duì)列中的員工作一次循環(huán),最終得到排班周期內(nèi)的總班表和個(gè)人班表。如圖5所示,呼叫中心智能排班系統(tǒng)實(shí)現(xiàn)流程:根據(jù)呼叫中心歷史話務(wù)量數(shù)據(jù)的周期性特點(diǎn),選用BP神經(jīng)網(wǎng)絡(luò)對(duì)歷史話務(wù)量進(jìn)行分時(shí)間段多次訓(xùn)練,待網(wǎng)絡(luò)自主學(xué)習(xí)完畢后保存網(wǎng)絡(luò)的權(quán)重和偏倚值,并對(duì)排班周期內(nèi)的話務(wù)量數(shù)據(jù)進(jìn)行預(yù)測(cè);結(jié)合所設(shè)置的項(xiàng)目組服務(wù)水平參數(shù),使用Er_langC 公式進(jìn)行所需坐席數(shù)預(yù)測(cè),并計(jì)算所求話務(wù)量和坐席數(shù)對(duì)應(yīng)的平均服務(wù)水平、平均通話時(shí)長(zhǎng)、員工利用率等。通過制定項(xiàng)目組典型班次,結(jié)合項(xiàng)目組客服總數(shù)、坐席總數(shù)等信息采用粒子群算法預(yù)測(cè)班次所需人數(shù)。最后,由于話務(wù)員是上班或休息是以班組為單位,因此必須將班次人數(shù)預(yù)測(cè)結(jié)果轉(zhuǎn)換為每個(gè)班次所需的班組數(shù),并提供對(duì)班組、班組成員關(guān)系的管理,最終生成排班周期內(nèi)的總班表和個(gè)人班表分別如圖6 和圖7所示。
圖5 呼叫中心智能排班系統(tǒng)的實(shí)現(xiàn)流程
圖6 排班周期內(nèi)的總班
圖7 排班周期內(nèi)的個(gè)人班
本文提出了大型呼叫中心智能排班系統(tǒng)設(shè)計(jì)的關(guān)鍵技術(shù)問題,著重討論如何提高話務(wù)量預(yù)測(cè)結(jié)果的精度和進(jìn)行坐席數(shù)曲線的擬合。根據(jù)話務(wù)量數(shù)據(jù)的日周期性和日變化性特點(diǎn),提出并驗(yàn)證了分時(shí)間段分別采用多次神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練和預(yù)測(cè)的可行性和合理性。基于話務(wù)量預(yù)測(cè)結(jié)果使用Erlang-C公式得到需求的坐席數(shù),定義了呼叫中心的典型班次并使用粒子群算法進(jìn)行了班次人數(shù)曲線的擬合;開發(fā)了呼叫中心智能排班系統(tǒng),結(jié)合呼叫中心可用資源進(jìn)行了合理的排班,在保證服務(wù)水平和質(zhì)量的前提下完成了呼叫中心資源的合理配置。
[1]XIE Chuanliu,WANG Junfeng,XIA Zhenghong.Research on crew rostering algorithm of large-scale call center [J].Computer Engineering and Design,2010,31 (23):5108-5113 (in Chinese).[謝傳柳,王俊峰,夏正洪.大型呼叫中心排班算法的研究 [J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31 (23):5108-5113.]
[2]MA Man.Application and research of neural network in traffic prediction [D].Changchun:Jilin University of China,2009(in Chinese). [馬曼.神經(jīng)網(wǎng)絡(luò)在話務(wù)量預(yù)測(cè)中的應(yīng)用研究[D].長(zhǎng)春:吉林大學(xué),2009.]
[3]YAO Yuehua,NIU Yuanyuan.Consumer price index prediction based on RBF neural network [J].Computer Applications and Software,2010,27 (10):92-94 (in Chinese).[姚躍華,牛園園.基于RBF神經(jīng)網(wǎng)絡(luò)的CPI預(yù)測(cè) [J].計(jì)算機(jī)應(yīng)用與軟件,2010,27 (10):92-94.]
[4]CHEN Dianbo.Traffic forecasting methods of support vector machines [D].Changsha:Central South University,2008(in Chinese).[陳電波.基于支持向量機(jī)的電信話務(wù)量預(yù)測(cè)方法 [D].長(zhǎng)沙:中南大學(xué),2008.]
[5]MOU Ying,XIE Chuanliu,XIA Zhenghong.Forecast on traffic of large call center[J].Computer Engineering and Design,2010,31 (21):4686-4690 (in Chinese).[牟穎,謝傳柳,夏正洪.大型呼叫中心話務(wù)量預(yù)測(cè) [J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31 (21):4686-4690.]
[6]YE Chunming,PAN Deng,PAN Fengshan.Critical chain project management based on chaos particle swam optimization[J].Application Research of Computers,2011,28 (3):889-891 (in Chinese).[葉春明,潘登,潘逢山.基于混沌粒子群算法的關(guān)鍵鏈項(xiàng)目進(jìn)度管理研究 [J].計(jì)算機(jī)應(yīng)用研究,2011,28 (3):889-891.]
[7]Xie Chuanliu,Wang Junfeng,Mou Ying.The design and implementation of large-scale call center management system [C]//3rd International Conference on Computational Intelligence and Industrial Application,2010:116-119.
[8]ZENG Jun.Modeling and simulation on communication traffic forecasting model[J].Computer Simulation,2012,29 (2):116-119 (in Chinese).[曾俊.話務(wù)量預(yù)測(cè)模型的建立和仿真研究 [J].計(jì)算機(jī)仿真,2012,29 (2):116-119.]
[9]HAN Rui,JIA Zhenhong.Telephone traffic load prediction based on SVR with DE-strategy [J].Computer Engineering,2011,37 (2):178-180 (in Chinese). [韓銳,賈振紅.基于SVR 與微分進(jìn)化策略的話務(wù)量預(yù)測(cè) [J].計(jì)算機(jī)工程,2011,37 (2):178-180.]
[10]YAO Shihong,WANG Tao,JIA Zhenhong.Algorithm of microcanonical-SVM based for forecasting traffic load [J].Computer Engineering and Applications,2012,48 (3):105-107 (in Chinese).[姚世紅,王濤,賈振紅.基于微正則算法和支持向量機(jī)的話務(wù)量預(yù)測(cè) [J].計(jì)算機(jī)工程與應(yīng)用,2012,48 (3):105-107.]