周天陽,杜 卿
(華南理工大學軟件學院,廣東廣州 510006)
電梯群控系統是由微機控制的多部電梯組成的智能控制系統。其任務是統一管理梯群的運行,針對用戶請求,做出最優派梯決策。電梯群控系統具有多目標性、非線性等特點。對于樓層較高、規模較大的樓宇,電梯是不可或缺的交通工具,因此開展電梯群控調度算法研究具有重要意義。
近年來,對于電梯群控系統的研究,主要集中在電梯客流建模和電梯群控算法兩個方面。在電梯客流建模方面,王遵彤等[1]提出了電梯群控系統的標準客流模型,謝巍等[2]基于移動最小二乘法開展電梯客流分析,王勝鵬等[3]利用圖像識別技術實時統計每層電梯客流,但研究多集中于對某一時段電梯客流的建模。在電梯群控算法研究方面,羅飛等[4]采用目的層預約的方法開展電梯群控系統建模與控制研究,許玉格等[5]基于細胞自動機構建電梯群控系統的調度模型,并采用面向對象的方法實現仿真平臺,宗群等[6]基于Agent技術研究電梯群控仿真系統建模,趙小翠等[7]開展了混合電梯群控系統建模及新型優化調度策略研究,李中華等[8]基于Matlab 的多速度模式對電梯群控系統進行建模仿真,阮道杰等[9]將蟻群算法用在電梯群控系統中,張繪敏等[10]采用模糊神經網絡算法來實現高層商務樓電梯群控調度,張健等[11]改進GA 優化BP神經網絡來構建電梯群控模型和控制策略,徐新仁等[12]基于最短距離調度原則來設計電梯群控算法,蔡奇志等[13]用粒子群優化神經網絡構建電梯群控算法,劉清等[14]采用多目標規劃算法來設計電梯群控系統。這些研究多集中于某一個特定的群控電梯控制算法的設計與優化。
電梯群控系統的核心設備是控制器。從上述已有的研究看,目前無論是電梯客流模型,還是電梯群控算法都日趨復雜,所需要的存貯空間和算力越來越大,對控制器的性能要求越來越高,由此不同程度地導致群控系統可靠性下降,不能有效確保較快的反應速度。實際上在很多電梯群控場景中,如公寓、住宅樓等,電梯客流是有規律的,無需采用復雜的通用型群控算法。本文借鑒平行控制思想,針對客流有規律的電梯群控場景,提出一種“虛-實”結合的電梯群控仿真和調度策略。針對特定場景,首先建立電梯客流模型;然后根據不同時段客流特點,采用不同群控算法進行仿真模擬;其次按照一定的準則對不同群控算法仿真模擬結果進行評估,優選出群控算法,生成能在實際電梯群控系統控制器中運行的控制規則和模型參數;最后將仿真模擬形成的控制規則和模型參數導入到實際的電梯群控系統控制器中,實現電梯群控。這種電梯群控仿真和調度策略具有以下優點:(1)針對性。不再追求復雜的通用型群控算法,而是根據不同場景選擇群控算法;(2)可靠性。將復雜的群控算法比選和評估放在仿真系統中完成,降低電梯群控系統對控制器的性能要求;(3)普適性。電梯群控系統的控制器無需匹配不同的群控算法,只需提供一套控制規則和模型參數接口就可以。
電梯群控系統的邏輯結構如圖1 所示,根據平行控制理論,由虛實兩大部分構成,本文重點敘述仿真模擬部分的設計與實現。
電梯群控制器內置兩種控制模式,一種是基于規則的控制模式,控制策略由一條條規則組成;另一種是模型控制模式,控制策略由神經網絡模型、模擬退火模型等模型根據模型參數實時計算得出。
仿真模擬子系統邏輯結構如圖2 所示,由客流生成模塊、群控計算模擬模塊、可視化模塊、統計分析模塊、算法比選與分析模塊、規則與模型參數生成模塊以及參數設置模塊等7個部分組成。
客流生成模塊根據不同的參數設置,采用客流仿真模型生成客流,模擬寫字樓、教學樓和樓層較高規模較大的住宅樓電梯群控場景。群控計算模擬模塊主要讀取當前電梯狀態數據,包括電梯所在樓層、轎廂內乘客人數、樓層待乘人數等,采用從算法庫中選擇算法進行仿真模擬計算并產生派梯命令,再根據派梯命令修改當前電梯狀態數據。電梯運行可視化模塊不斷讀取當前電梯狀態數據并圖形化地顯示出來,讓系統用戶可以直觀感受電梯群控系統的運行情況。統計分析模塊讀取電梯狀態歷史數據庫,并對客流分布、平均等待時長等進行統計分析,讓系統用戶了解和比較分析不同參數設置下仿真模擬效果。算法比選與分析模塊按照一定的準則對不同群控算法仿真模擬結果進行評估,一般準則是:在繁忙時段,能提升電梯的運行效率,降低乘客平均候梯時間和平均乘梯時間;在空閑時段,能保證乘客乘梯體驗,同時盡可能地節約電梯運行能耗。規則與模型參數生成模塊根據優選出群控算法,生成能在實際電梯群控系統控制器中運行的控制規則和模型參數。參數設置模塊是用戶根據實際的應用場景設置仿真模擬運行的基本參數。
仿真模擬子系統采用VC++計算機編程語言進行程序編寫,設計并實現了客流生成類、群控計算與模擬類、電梯運行可視化類、統計分析類、算法比選與分析類、規則與模型參數生成類以及參數設置類等。
寫字樓、教學樓和樓層較高規模較大的住宅樓的電梯使用場景,一個共同的特點是每層的人員數量相對固定,交通流隨時間變化有規律,在每日的固定時段相對穩定。
本文將這種場景的交通流細分為以下六種情況。
(1)上行高峰期,絕大多數人員乘坐電梯是從1 層上行前往各層;(2)下行高峰期,絕大多數人員從各層下行前往1 層;(3)所有樓層的多數人員“集體前往某層”、”集體前往某幾層”,是情況(2)的推廣;(4)所有樓層的多數人員“集體從某層出發前往各層”、“集體從某幾層出發前往各層”,是情況(1)的推廣;(5)上下隨機平衡高峰期,可認為該時段每層樓有25%~60% 的人會出行。其中50% 的乘客選擇上行,50% 的乘客選擇下行;(6)空閑時段,依然認為有50% 的乘客選擇上行,50% 的乘客選擇下行,但是每層只有1%~20% 的人員出行。
前四種情況都可歸為高峰交通流模式,后兩種可歸為平衡交通流模式。
根據概率論的相關知識,泊松分布可用于刻畫單位時間內隨機獨立事件的發生次數。指數分布可刻畫泊松過程中獨立隨機事件的時間間隔。在時間T內,乘客的到達是獨立隨機事件,服從泊松分布,旅客到達電梯前的時間間隔服從指數分布。
在時間T內,有k名乘客前來乘坐電梯的概率為

其中,λ是到達率,即單位時間內平均到達的乘客人數。即為兩個乘客之間的平均到達間隔。
由指數分布,得

記第i位乘客到達的時間為,該乘客的到達時間為

其中,r是[ 0,1]內服從均勻分布的隨機數。
上述公式刻畫了乘客的到達人數與到達時間,通過修改λ的大小,就能模擬六種不同時段的電梯客流情況。再利用各層常駐人數與總人數的百分比,通過蒙特卡洛方法,可以得到乘客的起始樓層和目的樓層信息。
電梯群控有兩個問題值得研究:一是每個電梯的默認停靠位置,二是如何分配每臺電梯的任務。高峰時段每臺電梯的默認停靠位置是顯而易見的,因此重點討論任務的分配。在電梯運行的高峰時段,如果不采取一定的策略,隨機分配每臺電梯的任務,運行效率會很低,原因在于電梯停靠的次數過多。容易想到的解決方法是對樓層進行劃分,每臺電梯負責一部分樓層,使得前往同一樓層的人乘坐同一臺電梯的概率盡可能地大。浙江大學的馬瀟等[15]證明了每臺電梯負責的區域連續時的電梯運行效率最優。本文采用動態規劃方法優化非平衡交通流模式下的電梯運行效率。
則電梯一個運行周期的期望花費時間為

T1與電梯的搭載人數r和電梯的期望停靠次數X有關,即

其中,td是電梯廂開門與關門的時間,E(Xi)是電梯的期望停靠次數,r是電梯的搭載人數,tP是每人進出電梯的平均時間。
考慮每個乘客選擇的目標樓層是獨立事件,故

T2與本周期內電梯到達的最高樓層有關,即

其中,v是電梯上行或下行一層所花費的時間,X是電梯到達的最高層數。
至此,可用一個二維數組RTT[i][j]表示電梯從一層往返第i層至第j層的這個區域所需要的時間。則問題轉化為將N層樓劃分為i個區域,求出i及其具體劃分,使得系統可以在最短的時間內將所有人送上樓。
全球現有兒童特發性血小板減少性紫癜指南的循證評價…………………………………………………… 歸 舸等(4):541
采用動態規劃方法建模,狀態轉移方程如下:

其中,f[i][j]表示樓層數為i、電梯數為j時將所有人送上樓所需最短時間。sum [i]是每層人數的前綴和,x表示將i-x+ 1 至i層分為一組,y表示該組分配的電梯數量。最后的答案為f[N][S],然后遞歸找出每臺電梯負責的區間。
對于模式三和模式四,可以以目的樓層或起始樓層為界,將樓層分為兩部分。枚舉上半部分和下半部分的電梯數量,對于每一部分可視為模式一或模式二的問題,因此采用分治思想分別處理即可。
平衡交通流模式下,綜合候梯時間、乘梯時間和能耗等因素,建立如下目標函數:

其中,α1、α2、α3是權重系數,α1+α2+α3= 1。T1表示電梯完成所分配的任務時,乘客總的候梯時間。T2表示電梯完成所分配的任務時,乘客總的乘梯時間。P是電梯的能耗函數,由于電梯的能耗主要發生在制動和啟動階段,所以這里用電梯總的停靠次數表示。
由此,問題轉化為根據乘客的請求,分別給S臺電梯分配任務,使得Ji的均方差最小,即為最優派梯方案。采用模擬退火方法,可以較快地求出近似最優路徑,理論上算法具有概率的全局優化性能。算法流程如圖3。

圖3 基于模擬退火方法的K請求下S臺電梯分配算法流程圖Fig.3 Flow chart of allocation algorithm of S elevators and K request based on Simulated Annealing Method
為驗證電梯群控系統功能,以某寫字樓的實測數據為例,優選出群控算法,生成能在實際電梯群控系統控制器中運行的控制規則和模型參數。該實例的基本情況是:14 部電梯,樓層50 層,電梯轎廂最大載人13人,電梯運行的平均速度是2 秒/層,電梯自動開門、關門的時間是4秒,早上8點到9點、中午11點45分到12點15 分、下午5 點30 分到6 點30 分是電梯運行的繁忙時段。其中早高峰可認為是上行高峰期,晚高峰為下行高峰期。午餐時間為平衡高峰期。其他時間是平衡空閑期。
在早高峰和晚高峰,客流處于非平衡交通流模式,以晚高峰時段為例,用2. 1 節的客流模型生成仿真交通流,分別選擇2. 2 節的動態規劃方法、平均分區方法和不分區三種群控策略,對電梯群控系統進行仿真模擬,模擬運行結果如表1所示。

表1 不同算法的模擬結果Tab.1 Simulation results of difference algorithm
從表1 可看出,與不分區、平均分區兩種方法對比,在非平衡交通流模式下,基于動態規劃的分區策略是一種行之有效的優化方法,有效提高了效率。于是選擇動態規劃法,生成如圖4 的群控電梯下行控制規則。
在空閑時段,客流處于平衡交通流模式,用2. 1 節的客流模型生成仿真交通流,選擇2. 3 節的模擬退火算法作為調度算法,選擇午餐時段作為平衡高峰期,將樸素的隨機分配任務法作為對比,對電梯群控系統進行仿真模擬,模擬運行結果如表2所示。

表2 平衡高峰期的仿真模擬結果Tab.2 Simulation results of balance peak period
從表2 中數據對比可知,經過優化后的模擬退火算法有效減少了乘客的候梯時間,運行效果良好。于是在平衡交通流模式下選擇模擬退火算法,并根據模擬運行得到的α1、α2、α3,生成群控電梯模型控制所需要的模型參數。
最后,將上述控制規則和模型參數加載到電梯群控制器中,則實現了不同時段的電梯優化運行,繁忙時段采用規則控制模式,空閑時段采用模型控制模式。在同樣的優化效果下,由于仿真模擬和模型比選是在控制器之外進行,有效降低了控制器存貯和算力的要求。
針對電梯客流有一定規律的場景,本文提出了一種“虛-實”結合的電梯群控仿真和調度策略,在仿真模擬子系統中按照一定的準則對不同群控算法仿真模擬結果進行評估,優選出群控算法,生成控制規則和模型參數,在實際的電梯群控系統控制器中,導入仿真模擬形成的控制規則和模型參數,實現電梯群控。電梯群控系統模型結構簡單,運用面向對象的程序設計思想,采用VC++編程實現,支持軟件復用,可擴展性強。下一步,一方面將通過更多場景的實際應用來不斷豐富和完善仿真模型,增加模型庫中模型的種類,如神經網絡模型、遺傳算法模型等;另一方面,進一步完善群控電梯系統控制器中運行的基于規則控制和基于模型控制子系統的功能。