摘 要: 呼叫中心技術(shù)涉及計算機電話集成、數(shù)據(jù)庫技術(shù)和交換技術(shù)等多種技術(shù),已成為向客戶提供服務(wù)的重要方式。研究如何將呼叫中心技術(shù)內(nèi)嵌到社區(qū)衛(wèi)生信息系統(tǒng)中,并給出了一種基于線性加權(quán)優(yōu)先級算法的排隊模型。
關(guān)鍵詞: 呼叫中心;有限狀態(tài)機;計算機電話集成;排隊模型
呼叫中心(Call Center)也叫客戶服務(wù)中心,它利用計算機電話集成(CTI)技術(shù),將基于語音的電信網(wǎng)絡(luò)(PSTN)與基于后臺數(shù)據(jù)庫的計算機處理網(wǎng)絡(luò)有機結(jié)合起來,實現(xiàn)客戶和系統(tǒng)的溝通互動。社區(qū)衛(wèi)生信息管理系統(tǒng)是衛(wèi)生管理決策數(shù)據(jù)的重要來源,社區(qū)信息管理人員如何快速準(zhǔn)確地為管理決策者提供相關(guān)信息資料,是社區(qū)信息管理人員的一個重要任務(wù),因此迫切需要適應(yīng)現(xiàn)代社區(qū)信息管理運行模式的社區(qū)衛(wèi)生信息管理系統(tǒng)。本文研究了如何將呼叫中心技術(shù)在社區(qū)衛(wèi)生信息管理系統(tǒng)中的應(yīng)用,分析了基于呼叫中心的社區(qū)衛(wèi)生信息客戶服務(wù)系統(tǒng)的具體實現(xiàn)方案,并給出了一種基于線性加權(quán)優(yōu)先級算法的排隊模型。
1 系統(tǒng)架構(gòu)分析與建模
呼叫中心有兩種典型實現(xiàn)方案,即基于交換機的實現(xiàn)和基于語音板卡的實現(xiàn)[1]。這兩種方案適用于不同場合的呼叫中心構(gòu)建。其中,基于語音板卡的方案其基本思想是在計算機平臺上集成各種功能的語音處理卡,完成通信接口、語音處理、傳真處理、座席轉(zhuǎn)接等功能,結(jié)合外部的計算機網(wǎng)絡(luò)實現(xiàn)各種應(yīng)用系統(tǒng)的具體需求;如果呼叫中心規(guī)模小于20個座席,則適合采用基于語音板卡的實現(xiàn)方案。而當(dāng)應(yīng)用系統(tǒng)規(guī)模大于20個座席時,采用基于交換機的方案能夠獲得更好的經(jīng)濟效益。本文所涉及的衛(wèi)生信息管理系統(tǒng)對呼叫中心的需求屬于較小規(guī)模,因此適合采用基于語音板卡的實現(xiàn)方案。
1.1 系統(tǒng)總體架構(gòu)
分析本系統(tǒng)中呼叫中心子系統(tǒng)的功能,可按主要業(yè)務(wù)模塊劃分,如圖1所示。
具體實現(xiàn)中,可以預(yù)留相關(guān)接口,便于系統(tǒng)業(yè)務(wù)功能模塊的擴展和變更。
1.2 系統(tǒng)的分層設(shè)計
構(gòu)建呼叫中心子系統(tǒng)時需要考慮到系統(tǒng)的整體穩(wěn)定性、引入新業(yè)務(wù)的靈活性及系統(tǒng)功能的可擴展性。為達到這些需求,本文在實現(xiàn)中采用分層設(shè)計的思想,如圖2所示。將呼叫中心子系統(tǒng)模型分為業(yè)務(wù)交換層、業(yè)務(wù)支撐層和業(yè)務(wù)實現(xiàn)層。相對于業(yè)務(wù)層面,呼叫接入處于最低層,業(yè)務(wù)應(yīng)用處于最高層。業(yè)務(wù)交換層完成網(wǎng)絡(luò)的接入及業(yè)務(wù)支撐層的業(yè)務(wù)控制任務(wù);業(yè)務(wù)支撐層是交換與具體業(yè)務(wù)之間的支撐系統(tǒng);業(yè)務(wù)實現(xiàn)層通過API接口按照話務(wù)需求向業(yè)務(wù)支撐層提出需求,結(jié)合計算機網(wǎng)絡(luò)技術(shù)實現(xiàn)具體的應(yīng)用。
在分層設(shè)計思想的基礎(chǔ)上,系統(tǒng)實現(xiàn)中的通用程序架構(gòu)設(shè)計可以對呼叫流程控制進行動態(tài)配置,進而僅需通過增減或修改業(yè)務(wù)受理層上的業(yè)務(wù)模塊,以及對系統(tǒng)資源層上的語音文件進行編輯,即可以實現(xiàn)不同社區(qū)的呼叫中心或同一社區(qū)呼叫中心動態(tài)擴展業(yè)務(wù)。
1.3 系統(tǒng)狀態(tài)變遷描述
系統(tǒng)中同時存在多個呼叫,每個呼叫從發(fā)起到結(jié)束的整個過程要經(jīng)歷多個狀態(tài)的變遷,多個呼叫的處理流程相互交織在一起異步進行。為保證相應(yīng)控制軟件有清晰的控制結(jié)構(gòu)和簡捷的程序代碼,有必要對系統(tǒng)狀態(tài)的轉(zhuǎn)換進行形式化描述和建模。
有限狀態(tài)機FSM(Finite State Machine)是一種常見的基本形式化技術(shù)[2]。若把一次呼叫定義為一個進程,呼叫的接入最終應(yīng)答在接入過程中將經(jīng)歷若干狀態(tài)的變遷。把進程的整個生命周期劃分成若干個不同狀態(tài),每個狀態(tài)都在等待一條或幾條指定的事件;事件消息到達后,進程處理這些消息從而進入另一個狀態(tài)。
狀態(tài)集合。在事件集合中各事件的驅(qū)動下,線路將在各工作狀態(tài)之間轉(zhuǎn)換,這種變遷關(guān)系由映射函數(shù)f定義。由于呼叫中心啟動后各條線路始終連續(xù)運轉(zhuǎn),沒有終止?fàn)顟B(tài),因此有限狀態(tài)機的終態(tài)集為空。系統(tǒng)支持多條外線同時呼叫,各條線路的呼叫處理過程都是異步進行的,因此系統(tǒng)需要維護多個有限狀態(tài)機,且每個有限狀態(tài)機對應(yīng)一條線路。
1.4 系統(tǒng)具體實現(xiàn)
系統(tǒng)由一臺服務(wù)器和一塊8路模擬語音卡構(gòu)成。語音板卡安裝在服務(wù)器內(nèi)擴展槽中,板卡提供8個內(nèi)/外線話機接口,可對8路語音進行同時處理。在軟件的設(shè)計過程中,系統(tǒng)采用模塊化的設(shè)計方法,充分考慮軟件與語音卡型號的無關(guān)性,以C++ Builder6.0為軟件開發(fā)工具。根據(jù)系統(tǒng)要求多路并行的特點,將系統(tǒng)功能細分為不可分割的原子動作,放入Timer控件的Ontimer事件中;將語音板卡初始化、信號音檢測、收碼處理、節(jié)點處理、掛機處理和語音流程維護等功能封裝成獨立模塊供系統(tǒng)調(diào)用,從而提高了系統(tǒng)可靠性。系統(tǒng)數(shù)據(jù)庫選用Microsoft SQL Server 2005,但考慮到應(yīng)用該系統(tǒng)的各社區(qū)原有的數(shù)據(jù)庫系統(tǒng)差異,特提供了一種通用的數(shù)據(jù)庫接口。將接口系統(tǒng)分為相互獨立的接口生成子系統(tǒng)和接口運行子系統(tǒng),通過接口參數(shù)描述表將兩部分有機聯(lián)系成為一個整體。注冊表是聯(lián)系接口生成子系統(tǒng)與接口運行子系統(tǒng)的數(shù)據(jù)基,接口生成子系統(tǒng)向注冊表中寫入接口描述;接口運行子系統(tǒng)則依據(jù)注冊表中的接口描述,裝配實際的運行接口。圖3為系統(tǒng)中呼叫的具體處理流程。
2 呼叫排隊的數(shù)學(xué)模型
呼叫排隊系統(tǒng)又稱為呼叫隨機服務(wù)系統(tǒng),該系統(tǒng)中呼叫到達時間和服務(wù)所需時間都是隨機的,會出現(xiàn)“排隊等待”現(xiàn)象。因此必須首先考慮解決社區(qū)用戶呼入的排隊等待問題。通過建立呼叫中心的排隊模型實現(xiàn)對系統(tǒng)性能的分析,并通過預(yù)測呼叫的排隊等待時間,可以平衡呼入的各隊列等待時間,從而提高呼叫中心的實際工作效率。
2.1 通用排隊模型
呼叫中心的基本排隊模型包括以下參數(shù):連接到呼叫中心的m條通信線路,w(w≤m)個服務(wù)臺(座席的最大數(shù)目),N(N≤w)個可以提供服務(wù)的座席[3]。其基本處理流程為:一個呼叫到達后,若所有線路都忙則呼叫被直接丟棄;若忙的座席數(shù)小于N則呼叫立即得到服務(wù);若忙的座席數(shù)等于N則呼叫進入隊列排隊,并按先到先服務(wù)(FCFS)的算法處理。在呼叫中心的實際應(yīng)用中,通常有Erlang-C、Erlang-B和Erlang-A三種排隊模型。其中,Erlang-B模型主要考慮了呼叫的阻塞問題;而Erlang-A模型不僅考慮了呼叫阻塞,還要考慮呼叫排隊過程中用戶主動放棄等待的問題;Erlang-C模型在呼叫中心理論分析中應(yīng)用最為普遍。
2.2 Erlang-C模型應(yīng)用分析
圖4所示為一個單隊列多座席的排隊系統(tǒng)模型。若座席數(shù)N=3,則3個座席向用戶提供服務(wù),但是隊列只有一列。用戶呼叫到達后先判斷隊列情況,隊列為“空”則選擇某個座席接受服務(wù);否則排隊等待。當(dāng)某座席完成服務(wù)后,如果隊列處于“非空”狀態(tài),則立即開始新服務(wù);否則進入“空閑”狀態(tài)。
定義1 在Erlang-C模型中,若呼入次數(shù)無限,設(shè)λ為單位時間呼叫到達率,μ為呼叫服務(wù)率,N為座席數(shù)目。假定:(1)時間T內(nèi)有k個呼叫到達的概率滿足固定速率λ的Poisson分布;(2)對呼叫的服從服務(wù)率μ的指數(shù)分布,則Erlang-C對應(yīng)的排隊模型為M/M/N/∞,且系統(tǒng)的負載為α=λ/μ。
顯然,若α≥N,即呼叫超過了可提供服務(wù)的座席數(shù)目,則系統(tǒng)承受的負載超過了系統(tǒng)的處理能力,此時將會出現(xiàn)無窮排隊的情況,用戶的呼叫等待時間將趨向于無窮大[4]。因此下面主要分析α<N的情況。
這里假定座席數(shù)N=1(這是社區(qū)呼叫中心座席數(shù)的通常情況),則對應(yīng)的排隊模型為M/M/1,此時考慮系統(tǒng)負載α<1,即在單位時間內(nèi)到達的呼叫平均數(shù)小于被服務(wù)完的呼叫平均數(shù)時,隊長才能避免無限增長而達到平衡。由概率統(tǒng)計可知:
當(dāng)座席數(shù)N≥2時,假定每個座席的平均服務(wù)率相同(即都是μ),此時整個系統(tǒng)的平均服務(wù)率為Nμ,則服務(wù)強度為λ/Nμ。此時可參照參考文獻[4]的介紹對系統(tǒng)進行分析。
由以上可知,只要知道呼叫的平均到達速率λ和平均服務(wù)速率μ,就可以計算出系統(tǒng)中呼叫排隊的平均等待時間,并由計算出的系統(tǒng)排隊平均等待時間對實際應(yīng)用系統(tǒng)的性能進行定量分析,從而做出相應(yīng)的決策提高服務(wù)質(zhì)量,使服務(wù)系統(tǒng)達到最佳的平衡狀態(tài)。
2.3 改進的排隊模型
當(dāng)把Erlang-C模型投入到社區(qū)衛(wèi)生信息系統(tǒng)的實際應(yīng)用時,該模型基本滿足使用要求。但若將該系統(tǒng)作進一步推廣,發(fā)現(xiàn)當(dāng)應(yīng)用的兩個假設(shè)條件不滿足時,預(yù)測結(jié)果與實際應(yīng)用結(jié)果相差較遠,為此需要對原有排隊模型進行修正和改進。
在Erlang-C模型中,假定呼叫到達滿足固定速率λ的Poisson分布,實際上可將呼叫到達的情況λ看作是根據(jù)呼叫時間和呼叫類型而變化的函數(shù),這種變化是相對平穩(wěn)的,即對參數(shù)固定的呼叫到X都存在唯一的平穩(wěn)分布[5]。采用此模型進行排隊分析能更好地逼近實際系統(tǒng)的真實情況。
下面給出呼叫中心系統(tǒng)排隊的改進方式??梢詫⑴抨犼犃蟹譃槲锢黻犃泻瓦壿嬯犃?,其中物理隊列在CTI(Computer Telephony Integration)側(cè),邏輯隊列位于坐席側(cè);排隊采用線性加權(quán)優(yōu)先級算法,充分考慮呼叫的緊急程度I以及該呼叫在隊列中已等待時間Twaited,從而有以下關(guān)于呼叫排隊優(yōu)先級的公式:
實際應(yīng)用中,可根據(jù)具體情況動態(tài)設(shè)定這兩個系數(shù)。由式(5)計算得到的呼叫優(yōu)先級值越大,該呼叫在隊列中位置越靠前。一次新的呼叫進入排隊隊列時,可以從隊首開始逐一比對,直到找到其合適位置則完成一次排隊。當(dāng)用戶電話呼入時,排隊模塊將電話轉(zhuǎn)接消息發(fā)給所有在線座席,座席收到消息后將呼入號碼信息插入本機等待隊列,并用聲音提示座席有新的等待轉(zhuǎn)接電話。當(dāng)一個座席響應(yīng)呼叫后,該座席排隊模塊向所有座席發(fā)出該等待轉(zhuǎn)接電話出隊列消息,各座席會將該電話消息從邏輯隊列中刪除,從而避免出現(xiàn)兩個座席競爭轉(zhuǎn)接電話的情況。式(5)中的線性加權(quán)優(yōu)先級算法僅考慮了呼叫的緊急程度和呼叫的已等待時間,在運用該公式搭建實際系統(tǒng)時還可以進一步考慮更多的其他因素[6](如該呼叫的歷史記錄情況等),從而使得優(yōu)先級的確定算法更為精確和合理。
本文設(shè)計的社區(qū)衛(wèi)生信息系統(tǒng)采用分層化和模塊化的設(shè)計思路,按照衛(wèi)生部信息統(tǒng)計管理規(guī)范,選用四川省衛(wèi)生信息中心組織開發(fā)的ICD—10數(shù)據(jù)庫字典實現(xiàn),可隨時為各級衛(wèi)生管理人員提供所需的各種信息。該社區(qū)衛(wèi)生信息系統(tǒng)于2008年7月在綿陽市36個社區(qū)中心(站)投入使用以來,通過不斷地完善,實現(xiàn)了社區(qū)衛(wèi)生管理的信息化和自動化,為社區(qū)管理及衛(wèi)生行政部門提供了先進的管理決策工具。文中所提出的改進排隊模型對社區(qū)衛(wèi)生信息系統(tǒng)中的呼叫中心子系統(tǒng)服務(wù)質(zhì)量與效率權(quán)衡問題的解決具有重要意義,同時對其他行業(yè)領(lǐng)域的呼叫中心應(yīng)用也極具參考價值。
參考文獻
[1] 胡延平.基于J2EE的保險呼叫中心系統(tǒng)設(shè)計與實現(xiàn)[J].微計算機信息,2010,26(3):46-48.
[2] 姜春英.基于有限狀態(tài)機與Petri網(wǎng)的系統(tǒng)分析與設(shè)計[J].計算機工程,2007(18):246-248.
[3] 孫榮恒.排隊論基礎(chǔ)[M].北京:科學(xué)出版社,2002.
[4] KOOLE G, MANDELBAUM A. Q ueueing models of call centers: an introduction[J]. A nnals of Operations Research, 2002, 113: 41~59.
[5] JONGBLOED G, KOOLE G. Managing uncertainty in call centers using poisson mixtures[J]. Applied Stochastic Medels in Business and Industry, 2001,117(3).
[6] 吳非.自適應(yīng)性呼叫中心[J].計算機工程與設(shè)計,2010,31(5):1144-1148.