孫 科
(中國電子科技集團公司第三十研究所,四川成都610041)
基于Repast平臺銀行網(wǎng)點布局優(yōu)化仿真的實現(xiàn)*
孫 科
(中國電子科技集團公司第三十研究所,四川成都610041)
針對現(xiàn)在銀行網(wǎng)點內部布局的不合理而出現(xiàn)長龍排隊現(xiàn)象,采用基于Agent的仿真建模方法,為研究人員提供了對銀行網(wǎng)點內部布局中客戶辦理各種業(yè)務過程跟蹤模擬的新思路。將銀行網(wǎng)點內部布局設計圖網(wǎng)格化和離散化,然后把離散化的銀行網(wǎng)點內服務臺、等候區(qū)、障礙物等抽象為相應的agent與辦理不同銀行業(yè)務的顧客agent生成基于Repast平臺的仿真銀行模擬。實驗和分析表明,模型可以真實地模擬客戶在銀行網(wǎng)點之間的業(yè)務辦理和排隊,對優(yōu)化銀行業(yè)務布局、提高銀行服務效率有借鑒作用。
智能代理仿真 布局圖網(wǎng)格化 有限狀態(tài)機 Repast
銀行網(wǎng)點的長龍排隊現(xiàn)象已成為當前公眾所關注的焦點,社會上對銀行的指責和怨聲不斷。造成銀行排長隊是多方面的,歸納起來有[1]:營業(yè)廳和柜面管理不夠科學、電子銀行及自助機分流作用未有效發(fā)揮、大型銀行責任重、銀行服務意識和能力還不夠強。文獻[1]提出了主要的解決方案就有加強分類服務和分段分區(qū)管理,比如說根據(jù)業(yè)務的繁簡和耗時情況分類和根據(jù)柜臺業(yè)務的流程進行分段分區(qū)服務。然而,就具體的一個銀行網(wǎng)點來說怎么來判斷網(wǎng)點內部的布局是否合理,是否需要加強某一種類的服務或如何分區(qū)分段,這就需要一個針對本銀行網(wǎng)點中內所有業(yè)務的仿真模擬。
銀行排隊問題[2]是一個包含多種隨機因素的復雜系統(tǒng),通過簡單的數(shù)學模型或解析方法難以精確描述和求解,只能采用基于agent的建模與仿真(ABMS,Agent-Based Modeling and Simulaition)方法。Agent[3]的一個顯著特點就是它的社會性;Agent
的應用主要是以多個Agent協(xié)作的形式出現(xiàn)。文獻[2]雖將銀行業(yè)務建立基于agent的業(yè)務模型,但對于具體的某個銀行網(wǎng)點來說缺乏操作性和直觀性。本文將提供一套從對具體銀行網(wǎng)點布局圖網(wǎng)格化和離散化到基于Repast平臺建立布局圖服務設施和客戶智能體仿真模型及提出客戶智能體基于網(wǎng)格的最短路動態(tài)規(guī)劃算法的方法。最后,通過實驗分析和調整相應的參數(shù),并根據(jù)直觀和數(shù)據(jù)分析來優(yōu)化銀行網(wǎng)點內部布局和改善業(yè)務分配,從而可以對現(xiàn)有銀行網(wǎng)點提高服務時間、減少客戶的排隊時間具有指導和借鑒作用。
REPAST(REurisive Porus Agent Simulation Toolkit)是由美國芝加哥大學的社會科學計算研究所開發(fā)的設計的仿真工具包。Repast不僅為多Agent仿真提供了大量的基礎性功能,還為仿真提供了一個編程框架[5]。Repast提供了由各種“類”組成的已經(jīng)封裝了基于Agent仿真的一些基本方法。用戶可以直接使用各“類”進行程序編譯。要用Repast創(chuàng)建一個仿真模型,主要過程為:創(chuàng)建各主體類→創(chuàng)建空間類→創(chuàng)建總調度類。
1)創(chuàng)建主體類。在仿真系統(tǒng)中,根據(jù)各種主體屬性定義主體類,在Repast中,沒有提供明確的主體類,可以從Repast的Object類繼承生成自己的主機類。
2)創(chuàng)建空間類。在Repast平臺中,提供了一個空間類來創(chuàng)建各主體對象。在空間類中,根據(jù)前面定義的主體類,創(chuàng)建不同數(shù)目的主體對象。
3)創(chuàng)建總調度類。利用Repast平臺,選擇合適的仿真程序調度類,來控制程序的總體執(zhí)行,一般可選用了Repast中SimpleModel類,調用了其中的方法有:getInitParam方法——獲取初始參數(shù)值;begin方法——創(chuàng)建空間對象;buildDisplay和buildGraphs方法——創(chuàng)建顯示圖表;Setup方法——清除掉上次運行進創(chuàng)建的主體對象;preStep、step、postStep方法——運行節(jié)拍的方法,即每節(jié)拍分三步,在執(zhí)行每一步分拍時,同時執(zhí)行了包括所有主體對象的分步節(jié)拍方法里的函數(shù)。
當然,也可使用其實現(xiàn)類SimpleModelImp類。
基于Agent的銀行網(wǎng)點模型主要由二部分組成:銀行網(wǎng)點內所有布局場景(除人外)的agent、顧客agent。因此,本章將分別介紹基于銀行網(wǎng)點布局圖網(wǎng)格化和離散化和基于銀行中顧客的agent模型。
2.1 基于銀行網(wǎng)點布局圖網(wǎng)格化和離散化
布局網(wǎng)格化和離散化就對本銀行網(wǎng)點的布局圖中所有場景物體進行離散和抽取,為建立相應的銀行布局中相應的agent打下基礎。主要需要抽取的物體有銀行網(wǎng)點內各服務設施(高柜、理財機、自助銀行、書架、等候區(qū)等)和障礙物(如墻、綠化帶等)。
具體的步驟:
1)確定離散化的精度。對于布局圖的離散化可以以一個顧客為單位,也可以一個具體的服務設施(如高柜)來為單位。如以一個具體的服務設施為單位,就可以將整個布局圖網(wǎng)格化在一個M行·N列的表格中。
2)抽取布局圖中的元素。對于離散化后的布局圖可以將布局圖中的所有元素固化在一個以N為橫坐標(X坐標)和以M為縱坐標(Y坐標)的二維空間。那么很容易將布局圖中的各種服務設施和障礙物所有離散化網(wǎng)格出取出以(x1,y1),(x2,y2)形式的格子坐標。
3)實現(xiàn)方式。對于步驟1)和2)可以通過化圖工具或者用Excel、PowerPoint中的表格都可以實現(xiàn)。為了抽取坐標的自動化和準確性,當然也可以編寫一個適合自己的銀行網(wǎng)點布局圖網(wǎng)格化工具。
2.2 基于顧客agent模型
網(wǎng)點內所布局場景的agent已可以由上述對銀行布局的網(wǎng)格化和離散化完成,那么在建立此模型時只需提供對場景中各種抽象的服務設施及障礙物的顯示功能接口即可,具體實現(xiàn)詳見后面的實現(xiàn)部分。這里主要討論根據(jù)銀行中客戶的實際場景來建立顧客agent的模型。其系統(tǒng)結構如圖1所示。
圖1 基于agent的銀行網(wǎng)點系統(tǒng)結構Fig.1 Agent-based banking network system
其中銀行網(wǎng)點中顧客agent的產(chǎn)生可以由圖2中三種方式產(chǎn)生,而本文則使用顧客模擬器產(chǎn)生。為了構造模擬器,首先,根據(jù)本銀行中能為客戶辦理的業(yè)務類型來確定所有客戶的業(yè)務類型(如:個人存款、個人取款、個人理財、個人貸款、VIP業(yè)務等),然后根據(jù)銀行某個時間段(如某天上班到下班)來構造一個以當前時間為變量,μ=某時間端的平均值,σ2=(時間段均值-開始時間)/2的正態(tài)分布N(μ,σ2),當在此時間段的正態(tài)分布區(qū)區(qū)間中確定在何時產(chǎn)生一個顧客后,就可根據(jù)本銀行中的客戶類型來構造以當前客戶所辦的業(yè)務類型為變量,以[0,業(yè)務類型總個數(shù)]為區(qū)間的連續(xù)均勻分布U[0,業(yè)務類型總個數(shù)]。
圖2 顧客agent辦理業(yè)務模型Fig.2 Model of customer agent to deal with transaction
顧客agent辦理業(yè)務模型是基于agent的銀行網(wǎng)點系統(tǒng)結構的核心。由于顧客辦理業(yè)務的類型已由上述的客戶模擬器產(chǎn)生,那么就可確定某個顧客要去不同的服務設施辦理自己的任務鏈表(TaskList)。然后再根據(jù)任務鏈表來模擬和控制在某一時刻和某一地點從事什么的業(yè)務。其模型流程如圖2所示。
對于顧客根據(jù)自己的任務鏈表TaskList來辦理每個業(yè)務(執(zhí)行每一個任務)時,要考慮每個顧客agent對要去的銀行網(wǎng)點設施(服務點)agent的訪問規(guī)則,還要考慮客戶在某個具體銀行網(wǎng)點設施平均辦理時間(如辦理存款業(yè)務時高柜的平均服務時間和展區(qū)的客戶平均體驗時間等)。為了實現(xiàn)上模型,在仿真某一具體客戶agent在辦理每個業(yè)務時需要引入顧客等候隊列agent和對客戶agent辦理具體某個業(yè)務的細分。其中,顧客等候隊列agent主要用于記錄某一顧客agent在去辦理下一個業(yè)務中找不到辦理此業(yè)務的銀行網(wǎng)點設施的顧客(即此時顧客要去辦理的業(yè)務的所有服務點全都處于忙碌中),此時應將此顧客agent的TaskList動態(tài)加入去等候區(qū)的任務,并執(zhí)行去等候區(qū)任務,然后將此顧客agent加入等候隊列agent,并記錄此顧客要去服務區(qū)的服務類型,直到此顧客要去的服務設施空閑并且此顧客agent前面沒有要去此類型服務設施的顧客agent(即此顧客agent為隊頭)時出隊,再執(zhí)行下一個任務。
此外,為了使顧客在辦理某一具體業(yè)務時更有智能化和真實性,需要將顧客agent執(zhí)行某一具體任務的過程分為如下過程:
…---被服臺呼叫---去服務(移動過程)---到達服務點---接受服務---服務完成---…
通過將此任務的細分就可以用來統(tǒng)計此客戶agent的屬性信息,如:顧客agent完成某一項業(yè)務的時間、辦完所有任務的時間、退出時間。還能根據(jù)顧客agent的網(wǎng)點最大停留時間及等待時間和某業(yè)務的服務時間來給顧客agent一些智能化動作(如當顧客agent在辦理業(yè)務中超過了其在網(wǎng)點最大停留時間后就會自動推出,或當顧客agent發(fā)現(xiàn)等候區(qū)的其他顧客agent已占滿了所有座位,此顧客agent就不進銀行網(wǎng)點大廳來辦理業(yè)務了等)。
動態(tài)監(jiān)控顧客agent和服務設施agent就是更在某個時間段中監(jiān)控銀行網(wǎng)點中所有服務設施agent的利用情況和統(tǒng)計在等待隊列agent中所有顧客agent要的所有不同類型的服務施設的等待情況。從而,可以直觀地發(fā)現(xiàn)本銀行網(wǎng)點中哪些業(yè)務設施利用率不足或哪些服務設施要需新增,從而為科學合理地布局本銀行網(wǎng)點提供依據(jù),并最小化的減少顧客的等待時間。
本仿真模型是基于Repast平臺上用Java語言來實現(xiàn)的,Repast平臺是目前使用較多的基于Agent建模仿真平臺之一[4]。在Repast平臺上可以進行可控制和可重現(xiàn)的仿真試驗,通過觀察仿真過程中的表格、圖表和圖形顯示的輸出結果,能夠深入地研究復雜系統(tǒng)的行為[5]。
首先,確定系統(tǒng)中的主機類。可以很清晰的分析中銀行網(wǎng)點中有兩個主體類:顧客agent類和網(wǎng)點設施agent類,可分別定義為:ClientAgent和Desk-
Agent類。另外,為了生成顧客也必須定義模擬器類ClientGenerator。
其中ClientAgent類主要是封閉顧客的基本屬性信息和相應的行為及執(zhí)行規(guī)則。其抽象數(shù)據(jù)類型為:DSP{
ClientAent對象:D={CAi∈ClientSet,i=1, 2,...t, t<=ClientGenerator中產(chǎn)生客戶總數(shù)}; ClientSet=<clientId,typeServer,age,sex,xPosition, yPosition maxTolerateTime,taskList,stepinterval,freeF-acNum…>
主要基本操作P:
createTaskList():為顧客Agent分配和初始化任務鏈表,從而完成客戶Agent所要辦業(yè)務流程的初始化。實現(xiàn)在網(wǎng)點內部的各種客戶可行路線,如填單區(qū)到低柜、等候區(qū)到高柜、體驗區(qū)瀏覽路線等等
moveToSpace():為顧客Agent進入銀行網(wǎng)點作初始化,從而啟動觸發(fā)其他的事件與動作。
getNumberAction():實現(xiàn)顧客Agent到達取號機并進行取號過程。
getCalledAction():當有空閑座位時實現(xiàn)對等候區(qū)的客戶進行呼叫功能。
moveToWattingAction():實現(xiàn)顧客Agent移動到等候區(qū)并進入等待隊列的功能。
toServerAction():實現(xiàn)顧客Agent去接受服務的過程功能。
arriveServerAction():描述顧客Agent到達服務點的過程。
isServeringAction():描述顧客Agent正在接受服務的過程。
finishServerAction():描述顧客Agent完成服務的過程。
goNextTaskAction():實現(xiàn)顧客Agent執(zhí)行下一個任務(去下一服務點)的過程。
quiteAction():描實現(xiàn)顧客Agent退出的過程。
clientMove(int destX,int destY):實現(xiàn)顧客A向坐標為(destX,destY)目的地移動。其目的地一般指銀行網(wǎng)點中服務點(設施)的坐標,由對銀行網(wǎng)點布局圖的離散化和網(wǎng)格化得到。 }
需要注意的是,對于動作的實現(xiàn)為了使Repast中的時鐘機制應繼承BasicAction類,另外,由于顧客Agent在銀行網(wǎng)點辦理業(yè)務時并不能具體確定某一時刻進行什么操作,并且減少動作之間的耦合度,可以引入有限狀態(tài)機理論來解決。
此外,還要解決的一個重要問題就是顧客Agent在銀行網(wǎng)點的移動動作。即clientMove(int destX, int destY)方法的實現(xiàn),因為對于銀行網(wǎng)點內所有場景都進行了離散化和網(wǎng)格化,所以此方法就是解決一個物體在一個M行.N列的網(wǎng)格中移動,并且每一步移動一個格子的問題。此方法可以利用經(jīng)典動態(tài)規(guī)劃路徑解決,但是注意其動態(tài)規(guī)劃下一個應去網(wǎng)格中的位置,應考慮下一個位置不是障礙物并且不能讓顧客Agent出現(xiàn)走閉路的現(xiàn)象及其不能出現(xiàn)顧客Agent的下一個位置已被其他Agent占用情況等。
其中DeskAgent類用于抽象銀行網(wǎng)點中所有服務設施(服務點)及障礙物。其抽象數(shù)據(jù)類型為DSP{
DeskAgent對象:D={DAi∈DeskSet,i=1,2,…t, t<=銀行網(wǎng)點中所有設施總數(shù)};DeskSet=<xPosition,yPosition,typeServer,isAvailble, shapeArea,serverPoint…>
主要基本操作P:
draw(SimGraphics g) :主要用于實現(xiàn)Repast中Drawable的方法,從而實現(xiàn)將銀行網(wǎng)點布局圖中所設施和障礙物的顯示功能。}
ClientGenerator類用于是產(chǎn)生銀行網(wǎng)點顧客A-gent的模擬產(chǎn)生器。其抽象數(shù)據(jù)類型為:DSP{
ClientGenerator對象:D= {GAi∈CGSet,i= 1,2,…t, t>=1};CGSet=<Φ>}
主要操作P:
List GenData(double scale):生成以scale為比率的客戶agent。
String randomType():按均勻分布成返回某時刻顧客agent的業(yè)務類型。
double normalDistribution(double x,double u, double theta):構造某時刻的顧客產(chǎn)生正態(tài)分布模型。}
接著,開始創(chuàng)建空間類BankSpace,此類用于抽象和描述銀行網(wǎng)點中所有agent對象。其抽象數(shù)據(jù)類型為:DSP{
BankSpace對象:D={BAi∈bankSpaceSet,i =1,2,…t, t>=1};bankSpaceSet=<backGround ,agentSpace,backGroupAllItem,waitQuen…> //其中backGround和agentSpace都是Repast中Ob-
ject2DGrid類型,分別用于存儲銀行網(wǎng)點內所服務設施agent和顧客agent
主要操作P:
BankSpace(int xPosition,int yPosition):用于初始化銀行網(wǎng)點布局,加將所有設施及顧客agent加載到銀行網(wǎng)點中。
enWaitQuen(ClientAgent clientAgent):用于將在等候區(qū)的等待顧客agent加入等待隊列。
isEmptyQuen(String waitServerType):判斷要去某類型的服務點的顧客是否為空。
getFirstWaittingCs(String waitServerType):獲得最先等待某類型的顧客agent。
delQuen():將等候隊列中的當前顧客agent出隊。}
最后,創(chuàng)建總調度類SimpleBankModel,并使此類繼承Repast中的SimpleModelImp類,并實現(xiàn)其對應抽象方法等。
另一方面,按照狀態(tài)表機制對動作的觸發(fā)。具體思想是根據(jù)顧客Agent當前執(zhí)行狀態(tài)和事件查詢狀態(tài)按照以上建模方法和具體的實現(xiàn),結合國內某大型銀行網(wǎng)點的內部布局圖為題材要素,成功的建立了基于Repast平臺的銀行網(wǎng)點顧客辦理各種業(yè)務的模型。則本模擬仿真參數(shù)如下:
1)ServerTypeCount=10,即在此銀行網(wǎng)點中可以辦理10種不同的銀行業(yè)務(如:個人存款、個人取款、個人貸款、個人理財…)。
2)SelfService_AVGServerTime=10、Financing-Desk_AVGServerTime=10、HighDesk_AVGServer-Time=100…,即用于定義在本銀行網(wǎng)點中自助銀行平均服務時間、理財機服務時間、高柜服務時間等。
3)Step Interval=1用于定義顧客產(chǎn)生移動速度
4)Scale=0.5用于設置顧客模擬器產(chǎn)生顧客的比率。
通過上述參數(shù),仿真此銀行網(wǎng)點從8:00-18:00共產(chǎn)生3 584個顧客,Repast控制臺輸出模擬結果(部分)如下所示:
1)顧客256正在往等待區(qū)第3個座位移動,坐標為(121,17)。
2)顧客256將從當前坐標(119,19)出發(fā),移動到(121,17)。
3)顧客256按照3.2節(jié)clientMove()算法經(jīng)過
(121,21),(121,20),(121,19),(121,18), (120,17),(119,16),(119,17),(119,18),(118, 17),(118,18)坐標等到(121,17)。
4)顧客256按照3.2節(jié)event()算法得知下個狀態(tài)是10(將觸發(fā)“自動ATM機取款“動作)。
5)顧客275正在往等待區(qū)第11個座位移動,坐標為(71,113)。
6)顧客275其他動作同上。
如上面模擬顧客256為例,清楚顯示了顧客在銀行中的移動軌跡坐標和辦理各類銀行業(yè)務,從而實現(xiàn)顧客Agent動作有序真實的模擬。另外,通過Repast控制輸出模擬結果中發(fā)現(xiàn)顧客Agent的業(yè)務動作完全是無序的,如是256顧客Agent移動,然后是275顧客Agent移動,然后是195顧客Agent移動…
這些數(shù)據(jù)更能真實地反映了顧客Agent在辦理高柜業(yè)務(如金融服務、自助服務、取號服務、ATM服務、存取錢助服務、VIP服務等)。
直觀地用數(shù)據(jù)和圖表反映了銀行網(wǎng)點內某一時間段內所有顧客Agent辦理業(yè)務的所有情況,通過設置不同的參數(shù)值可以為不同規(guī)模的銀行網(wǎng)點進行業(yè)務仿真,如改變ServerTypeCount值就可以定義不同種類的業(yè)務個數(shù),根據(jù)專家意見或者行業(yè)值可
修改取款時間ATM_AVGServerTime等。只有通過不斷的調整仿真程序的參數(shù),最終才能使得仿真的結果更為真實,為決策提供準確的數(shù)據(jù)支撐,為業(yè)務流程優(yōu)化提供保障。此外,為了統(tǒng)計在銀行辦理各種業(yè)務的人數(shù),利用Repast平臺建立生成了圖3所示的銀行各業(yè)務辦理中顧客Agent等待比率線性圖。
圖3 銀行各業(yè)務辦理中顧客Agent等待比率線性圖Fig.3 Linearmap of customer Agentwaiting ratioin banking business process
圖3線性圖方便地統(tǒng)計某時間段內辦理各種業(yè)務的顧客在等候區(qū)的等待比率圖,其中(agent等待比率=某種業(yè)務等待人數(shù)/當前所有辦理各種業(yè)務總人數(shù))。圖3中線條1為在等候區(qū)將去高柜辦理存取業(yè)務的等候比特率,線條2表示在等候區(qū)將去金融理財柜臺辦理業(yè)務的等候比特率,在0.0-0.2時間段內是平穩(wěn)的,并且去辦理存取業(yè)務的人比金融業(yè)務的人多;但是,在0.4以后發(fā)現(xiàn)辦理存取業(yè)務人和金融業(yè)務的都在遞增,但是線條1明細粗于線條2,得知辦理金融業(yè)務人比存取業(yè)務的人少。這使銀行的管理人員可觀察到本銀行網(wǎng)點內的顧客行為特征來了解決本銀行網(wǎng)點中各服務點的服務情況,并通過數(shù)據(jù)分析圖來得到客戶的等待各項服務信息,從而可以使得銀行的管理人員方便地調整和優(yōu)化銀行網(wǎng)點布局,減少顧客的長龍排隊現(xiàn)象,提高服務點的利用率。
本文基本agent的相關方法論,提出了一套基于agent的銀行網(wǎng)點內顧客辦理業(yè)務的仿真模型,通過對銀行網(wǎng)點布局圖的離散化和網(wǎng)格化,并在基于Repast平臺建立顧客agent的業(yè)務仿真,提出以有限狀態(tài)機方式來實現(xiàn)顧客agent的業(yè)務仿真,并提出了動態(tài)規(guī)劃顧客移動算法等,最終通過實驗的結果可以發(fā)現(xiàn)國內某大型銀行網(wǎng)點中顧客在某時間段辦理各種業(yè)務的情況,并方便管理者優(yōu)化網(wǎng)點布局打下基礎。
[1] 許良.對銀行客戶排隊現(xiàn)象的深層思考[J].商業(yè)現(xiàn)代化,2007(523):340-341.
XU Liang.Deep Thoughts on the banks of queues[J]. Business Modernization,2007,(523):340-341.
[2] 李成杰,楊公平,尹義龍.基于agent的銀行排隊系統(tǒng)仿真[J].計算機仿真,2008,25(12):277-280.
LI Jie-cheng,YANG Gong-ping,YIN Yi-long,Simulation-based Agent Bank Queuing System[J].Computer Simulation,2008,25(12):277-280.
[3] 許新華,龔雄濤,唐勝群.一種基于Agent的通訊模型設計及其應用[J].通信技術,2010,43(02):204-206.
XU xin-hua,GONG Xiong-tao,TANG Sheng-xun.REPAST-A multi-agent Simulation Platform[J].Communications Technology,2010,43(2):204-206.
[4] 姜昌華,韓偉,胡幼華.REPAST——一Agent仿真平臺[J].系統(tǒng)仿真學報,2006,18(08):2319-2322.
JIANG Chang-hua,HANWei,HU You-hua.REPASTA multi-agent Simulation Platform[J].Journal of System Simulation,2006,18(8):2319-2322.
[5] 陳禹.復雜適應系統(tǒng)(CAS)理論及其應用——由來、內容與啟示[J].系統(tǒng)辯證學學報,2001,9(04):35-39.
CHEN Yu.Theory and Application of CAS——The Origin,Content and Inspiration[J].Journal of Systemic Dialectics,2001,9(4):35-39.
孫 科(1983—),男,碩士,工程師,主要研究方向為數(shù)據(jù)檢索、仿真模擬等。
SUN Ke(1983-),male,M.Sci.,engineer,majoring in data retrieval and emulating simulation.
Simulation Realiztion of Banking Outlets Layout Optim ization based on Repast
SUN Ke
(No.30 Institute of CETC,Chengdu Sichuan 610041,China)
Aiming at the unreasonable internal layout of banking outlets and long queuing phenomenon, and by applying simulation modeling approach based on Agent,a new idea is proposed serchers to track and simulate the business process of clients in banking outlets.Firstly,the internal layout of banking outlets is gridded and discretized,then the discretized sevice counter,watting area,and obstacles are abstracted as corresponding agents,and with custormer agents dealing differentbanking business,the emulating bank simulation based on Repast platform is generated.Experimentand analysis indicate that the system could veritably simulate customers to dealbusiness and quene in banking outlets,and thismay provide some reference for upgrading banking layout and optimizing banking service efficiency.
agent-based simulation;gridding layout;finite-statemachine;Repast
TP391.9
A
1002-0802(2014)12-1409-06
10.3969/j.issn.1002-0802.2014.12.013
2014-04-29;
2014-11-11 Received date:2014-04-29;Revised date:2014-11-11