劉 宇,張 聰,李 濤
(1.武漢大學(xué) 計(jì)算機(jī)學(xué)院,湖北 武漢 430000;2. 武漢輕工大學(xué) 數(shù)學(xué)與計(jì)算機(jī)學(xué)院, 湖北 武漢 430000;3.國(guó)網(wǎng)湖北省電力有限公司荊州供電公司 發(fā)展策劃部,湖北 荊州 434000)
樓宇電梯調(diào)度[1]是一個(gè)復(fù)雜的過(guò)程,調(diào)度算法的設(shè)計(jì)復(fù)雜性一般取決于調(diào)度環(huán)境的復(fù)雜性,當(dāng)調(diào)度電梯數(shù)量越多樓宇樓層越高時(shí),從眾多調(diào)度策略中選擇最優(yōu)調(diào)度策略這本質(zhì)上類似一個(gè)NP完全問(wèn)題。當(dāng)前隨著認(rèn)知智能技術(shù)的發(fā)展,探索更加智能的調(diào)度算法,讓調(diào)度算法更具多環(huán)境適應(yīng)性、調(diào)度高效性和低能耗性成為新的研究熱點(diǎn)。
目前電梯調(diào)度算法往往基于特定需求方面進(jìn)行建模,例如基于最短等待時(shí)間的算法(先來(lái)先服務(wù)算法、掃描算法和LOOK算法等),這類算法往往以滿足各樓層用戶需求為目的,但在多梯復(fù)雜環(huán)境下建模往往困難且缺乏適應(yīng)性,特別是在人流高峰階段的復(fù)雜環(huán)境之下,整個(gè)電梯群控效率較低[1]。同時(shí)基于算法進(jìn)行最優(yōu)解搜索也是研究點(diǎn)之一,如劉桂雄等通過(guò)引入統(tǒng)計(jì)方法提出了以節(jié)能優(yōu)先的電梯調(diào)度算法[2],仲惠琳根據(jù)客流量變化同時(shí)引入啟發(fā)式算法提出了基于神經(jīng)網(wǎng)絡(luò)的電梯調(diào)度重規(guī)劃算法[3],郎曼等基于現(xiàn)有算法控制參數(shù)多和計(jì)算較復(fù)雜特性提出了采用人工蜂群算法的電梯群控系統(tǒng)[4]。劉清等針對(duì)傳統(tǒng)的電梯群控系統(tǒng)的問(wèn)題,提出一種模糊控制結(jié)合神經(jīng)網(wǎng)絡(luò)算法的電梯群控系統(tǒng)來(lái)進(jìn)行優(yōu)化調(diào)度[5]。劉劍等提出了基于Fast R-CNN的多轎廂電梯調(diào)度算法[6]。
電梯調(diào)度算法設(shè)計(jì)需要考慮用戶體驗(yàn)、電梯能耗和空載情況等多個(gè)目標(biāo),上述文獻(xiàn)的調(diào)度算法往往基于特定環(huán)境建模,存在很難平衡多個(gè)調(diào)度目標(biāo)的問(wèn)題。因此,本文提出了基于A3C的電梯調(diào)度算法,利用強(qiáng)化學(xué)習(xí)自主智能學(xué)習(xí)的優(yōu)點(diǎn),讓調(diào)度算法在電梯和環(huán)境地不斷交互中學(xué)習(xí)得到使調(diào)度目標(biāo)收益最大化的調(diào)度策略[7]。同時(shí)對(duì)調(diào)度環(huán)境、電梯行為和調(diào)度目標(biāo)3個(gè)方面進(jìn)行統(tǒng)一建模,這極大方便模型在新調(diào)度環(huán)境和新目標(biāo)下的低成本部署。本文基于開(kāi)源LiftSim電梯調(diào)度仿真環(huán)境[8]進(jìn)行了相關(guān)實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明A3C算法運(yùn)用于群組電梯環(huán)境下進(jìn)行電梯調(diào)度具有建模便捷、多環(huán)境移植適應(yīng)性強(qiáng)、調(diào)度效率高和有效平衡多個(gè)調(diào)度目標(biāo)的優(yōu)勢(shì)。
基于強(qiáng)化學(xué)習(xí)的電梯調(diào)度算法建模需要將不同的電梯調(diào)度環(huán)境歸納為統(tǒng)一的表達(dá)形式。近年來(lái)相關(guān)研究者針對(duì)電梯調(diào)度環(huán)境進(jìn)行研究,開(kāi)發(fā)了眾多的電梯運(yùn)行環(huán)境實(shí)例[8,9],電梯調(diào)度環(huán)境可用圖1進(jìn)行表示。本文將電梯調(diào)度環(huán)境分為樓宇環(huán)境和電梯環(huán)境,樓宇環(huán)境主要反映樓宇基本信息和樓宇各樓層用戶乘梯需求信息,其中樓宇信息包括樓層和電梯橋箱數(shù)等信息,電梯調(diào)度同一時(shí)間內(nèi)乘梯需求主要包含上下行需求和用戶所在樓層。樓宇環(huán)境作為電梯調(diào)度算法需要考慮的主要環(huán)境,是當(dāng)前調(diào)度算法的主要考慮因素。電梯環(huán)境主要指具體電梯橋箱內(nèi)環(huán)境,這往往包括電梯橋箱內(nèi)用戶的意圖樓層、載重量、橋箱所在樓層和橋箱開(kāi)關(guān)門情況等信息。
圖1 電梯調(diào)度環(huán)境
高層樓宇的發(fā)展讓電梯調(diào)度算法面對(duì)的調(diào)度環(huán)境越來(lái)越復(fù)雜多樣[10],越來(lái)越多的樓宇具備更高樓層的同時(shí)也具備了更多的電梯數(shù)量,同時(shí)不同樓層不同時(shí)段的人流往往呈現(xiàn)較大波動(dòng)。將電梯調(diào)度環(huán)境以樓宇環(huán)境和電梯環(huán)境進(jìn)行表示,一方面能較完整反映瞬時(shí)電梯調(diào)度環(huán)境,另一方面為強(qiáng)化學(xué)習(xí)中環(huán)境狀態(tài)建模提供依據(jù)。
強(qiáng)化學(xué)習(xí)(reinforcement learning,RL)學(xué)習(xí)方式類似人類的學(xué)習(xí)模式,通過(guò)在實(shí)踐環(huán)境中執(zhí)行相應(yīng)動(dòng)作以期望獲得環(huán)境給予的最大獎(jiǎng)勵(lì)值,從而依據(jù)獎(jiǎng)勵(lì)不斷地進(jìn)行試錯(cuò)學(xué)習(xí)來(lái)不斷地修正自己在具體環(huán)境中的動(dòng)作策略。強(qiáng)化學(xué)習(xí)典型學(xué)習(xí)模式如圖2所示,圖示中智能體在和環(huán)境交互過(guò)程中會(huì)根據(jù)環(huán)境狀態(tài)St選擇執(zhí)行相應(yīng)的動(dòng)作策略At,執(zhí)行動(dòng)作At后環(huán)境的狀態(tài)值St會(huì)變?yōu)樾碌臓顟B(tài)St+1,同時(shí)會(huì)得到在環(huán)境St下執(zhí)行動(dòng)作At的獎(jiǎng)勵(lì)Rt,然后智能體對(duì)于新的狀態(tài)St+1又會(huì)選擇執(zhí)行相應(yīng)的動(dòng)作策略At+1,以此往復(fù)不斷地在和環(huán)境交互過(guò)程中進(jìn)行學(xué)習(xí)以期獲得更多獎(jiǎng)勵(lì)[11,12]。
圖2 強(qiáng)化學(xué)習(xí)框架
強(qiáng)化學(xué)習(xí)模式和電梯調(diào)度模式二者建模之間存在一定的相似性,基于強(qiáng)化學(xué)習(xí)的電梯調(diào)度算法建模中可將電梯調(diào)度環(huán)境和電梯分別視為強(qiáng)化學(xué)習(xí)中環(huán)境狀態(tài)(State)和智能體(Agent),同時(shí)電梯調(diào)度目標(biāo)和電梯上下行動(dòng)作可視為強(qiáng)化學(xué)習(xí)中的獎(jiǎng)勵(lì)函數(shù)(Reward)和動(dòng)作策略(Action)。電梯調(diào)度算法中引入強(qiáng)化學(xué)習(xí)方法,讓電梯智能體在不斷地和環(huán)境交互中自主學(xué)會(huì)最優(yōu)調(diào)度策略,這對(duì)目前設(shè)計(jì)電梯調(diào)度算法具有一定的實(shí)用價(jià)值。近年隨著強(qiáng)化學(xué)習(xí)的發(fā)展也逐漸涌現(xiàn)出眾多的強(qiáng)化學(xué)習(xí)算法[13,14],例如DQN和MADDPG算法,探索強(qiáng)化學(xué)習(xí)算法在電梯調(diào)度領(lǐng)域的運(yùn)用潛力具有一定研究意義。
基于強(qiáng)化學(xué)習(xí)的電梯調(diào)度模型通過(guò)強(qiáng)化學(xué)習(xí)實(shí)現(xiàn)電梯的自主調(diào)度策略學(xué)習(xí),這大大減少了不同調(diào)度環(huán)境目標(biāo)下的建模成本,實(shí)現(xiàn)了電梯的智能高效調(diào)度。本文基于強(qiáng)化學(xué)習(xí)A3C的電梯調(diào)度算法建模如圖3所示,圖示中首先需要對(duì)調(diào)度環(huán)境、獎(jiǎng)勵(lì)函數(shù)和電梯動(dòng)作行為3個(gè)方面進(jìn)行定義并進(jìn)行編碼,然后基于Actor和Critic角色構(gòu)建融合網(wǎng)絡(luò)實(shí)現(xiàn)A3C算法的自主策略輸出以及模型參數(shù)更新,最后通過(guò)多線程異步訓(xùn)練的方式對(duì)模型進(jìn)行訓(xùn)練直至收斂。
圖3 基于強(qiáng)化學(xué)習(xí)A3C的電梯調(diào)度算法模型框架
基于強(qiáng)化學(xué)習(xí)算法的電梯調(diào)度算法建模依賴馬爾科夫決策過(guò)程,需要對(duì)其四元組 進(jìn)行定義,其分別是狀態(tài)S、動(dòng)作A和獎(jiǎng)勵(lì)值R,而狀態(tài)轉(zhuǎn)移函數(shù)f則由強(qiáng)化學(xué)習(xí)中深度神經(jīng)網(wǎng)絡(luò)進(jìn)行表現(xiàn)。實(shí)際中電梯調(diào)度環(huán)境可以視作樓宇環(huán)境和電梯自身環(huán)境兩者的組合,本文所提強(qiáng)化學(xué)習(xí)算法中電梯自身環(huán)境建模狀態(tài)S所需定義參數(shù)項(xiàng)見(jiàn)表1,其中針對(duì)多電梯情況,只需要將多部單電梯自身環(huán)境進(jìn)行順序排列組合。強(qiáng)化學(xué)習(xí)運(yùn)用于電梯調(diào)度算法中的智能體可視整體電梯為一個(gè)智能體,也可針對(duì)每個(gè)電梯橋箱進(jìn)行多智能體建模,即每個(gè)調(diào)度電梯作為一個(gè)智能體進(jìn)行強(qiáng)化學(xué)習(xí)建模,如強(qiáng)化學(xué)習(xí)中MADDPG算法就是多個(gè)智能體在同一環(huán)境下進(jìn)行策略學(xué)習(xí)[15]。
復(fù)雜環(huán)境下電梯調(diào)度算法的調(diào)度目標(biāo)是在提升用戶體驗(yàn)的情況下,使電梯的能耗盡可能低,因此建模過(guò)程中獎(jiǎng)勵(lì)函數(shù)的設(shè)計(jì)需要充分考慮用戶體驗(yàn)和電梯能耗兩方面。本文強(qiáng)化學(xué)習(xí)的獎(jiǎng)勵(lì)函數(shù)R設(shè)計(jì)如式(1)所示,式子中time表示所有乘客在一個(gè)時(shí)間周期內(nèi)的等待時(shí)長(zhǎng)總和,energy表示一個(gè)時(shí)間周期內(nèi)電梯消耗的電力,person表示一個(gè)時(shí)間內(nèi)放棄的人數(shù),實(shí)驗(yàn)仿真環(huán)境中默認(rèn)排隊(duì)等待一定時(shí)間后自動(dòng)放棄等待。式子中調(diào)節(jié)參數(shù)α、β和γ分別調(diào)節(jié)各自比例,本文α、β和γ調(diào)節(jié)因子取值分別為0、0.01和100
R=α×time+β×energy+γ×person
(1)
表1 電梯調(diào)度環(huán)境建模參數(shù)項(xiàng)
電梯調(diào)度算法中電梯作為智能體,需要在強(qiáng)化學(xué)習(xí)中定義其動(dòng)作空間A,電梯實(shí)際調(diào)度過(guò)程調(diào)度動(dòng)作由目標(biāo)樓層和方向構(gòu)成,則其動(dòng)作空間A可由二元組
強(qiáng)化學(xué)習(xí)A3C算法來(lái)源于Actor-Critic算法,經(jīng)典A3C算法基于Actor-Critic算法在網(wǎng)絡(luò)結(jié)構(gòu)、Critic評(píng)估點(diǎn)和異步訓(xùn)練框架3個(gè)方面進(jìn)行了優(yōu)化,這一定程度上克服了Actor-Critic算法收斂性問(wèn)題[16]。但在實(shí)際建模訓(xùn)練過(guò)程中很多時(shí)候依然存在收斂慢和調(diào)參困難的問(wèn)題,基于A3C算法依然存在性能提升的可能性,本文基于經(jīng)典A3C算法引入貝葉斯優(yōu)化算法對(duì)超參數(shù)進(jìn)行學(xué)習(xí),同時(shí)借鑒著名算法Alpha Zero中使用的融合網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)Actor和Critic網(wǎng)絡(luò)結(jié)構(gòu)對(duì)整個(gè)A3C算法進(jìn)行建模。
A3C是Actor-Critic算法的改進(jìn)升級(jí),Actor-Critic算法[16]是一種策略(Policy Based)和價(jià)值(Value Based)相結(jié)合的強(qiáng)化學(xué)習(xí)方法。如圖3所示A3C算法建模主體亦包括演員(Actor)和評(píng)論家(Critic)兩部分,A3C算法中Actor負(fù)責(zé)生成動(dòng)作和環(huán)境進(jìn)行交互,Critic則對(duì)Actor的行動(dòng)進(jìn)行評(píng)估,指導(dǎo)Actor的動(dòng)作。Actor網(wǎng)絡(luò)輸入環(huán)境狀態(tài)S,輸出為當(dāng)前環(huán)境下的動(dòng)作策略π(S), Critic網(wǎng)絡(luò)輸入環(huán)境的狀態(tài)S,輸出為對(duì)狀態(tài)S的評(píng)估值v(S), v(S) 表示狀態(tài)下S的平均期望價(jià)值[17]。A3C算法中采用優(yōu)勢(shì)函數(shù)(動(dòng)作價(jià)值函數(shù)和狀態(tài)價(jià)值函數(shù)的差值)作為Critic評(píng)估標(biāo)準(zhǔn),同時(shí)結(jié)合N步采樣加速收斂,A3C中優(yōu)勢(shì)函數(shù)表達(dá)式如式(2)所示,式中A(S,t) 是優(yōu)勢(shì)函數(shù),其表當(dāng)前狀態(tài)S的價(jià)值,γ是衰減因子
A(S,t)=Rt+γRt+1+…γn-1Rt+n-1+γnv(S′)-v(S)
(2)
Critic網(wǎng)絡(luò)的評(píng)估值直接作用于Actor網(wǎng)絡(luò)的參數(shù)更新,由于策略函數(shù)損失函數(shù)中加入了策略的熵項(xiàng),Actor網(wǎng)絡(luò)參數(shù)θ更新公式如式(3)所示
(3)
A3C算法中Critic網(wǎng)絡(luò)則通過(guò)計(jì)算TD誤差值δ,使用均方差作為損失函數(shù)對(duì)自身網(wǎng)絡(luò)參數(shù)w進(jìn)行參數(shù)更新,相關(guān)計(jì)算式如式(4)所示
δ=R+γv(S′)-v(S)loss=∑(R+γv(S′)-v(S,w))2
(4)
強(qiáng)化學(xué)習(xí)中超參數(shù)的設(shè)置對(duì)于結(jié)果收斂性起到一定程度的作用,A3C算法建模過(guò)程中需要設(shè)置部分的參數(shù)項(xiàng),例如需要設(shè)置全局共享迭代輪數(shù)T、相應(yīng)網(wǎng)絡(luò)參數(shù)更新步長(zhǎng)、熵系數(shù)值和衰減因子等,本文為了A3C算法性能有效提升引入經(jīng)典貝葉斯優(yōu)化方法對(duì)部分超參數(shù)進(jìn)行搜尋,貝葉斯優(yōu)化作為最受歡迎的方法,其充分利用相關(guān)歷史信息來(lái)指導(dǎo)進(jìn)行最優(yōu)解的搜索。貝葉斯優(yōu)化中假設(shè)待優(yōu)化參數(shù)為X=(x1,x2,…,xn), 同時(shí)存在一個(gè)與X相關(guān)的損失函數(shù)f(x),貝葉斯優(yōu)化目標(biāo)函數(shù)即是尋找X得到最小損失函數(shù)f(x)。本文基于A3C算法的電梯調(diào)度算法建模中采用Hyperopt工具來(lái)實(shí)現(xiàn)貝葉斯優(yōu)化算法。
A3C算法中Actor網(wǎng)絡(luò)和Critic網(wǎng)絡(luò)一般針對(duì)實(shí)際任務(wù)可采取融合網(wǎng)絡(luò)和分離網(wǎng)絡(luò)兩種網(wǎng)絡(luò)形式,本文基于強(qiáng)化學(xué)習(xí)A3C算法的電梯調(diào)度算法建模中Actor網(wǎng)絡(luò)和Critic網(wǎng)絡(luò)采用融合網(wǎng)絡(luò),融合網(wǎng)絡(luò)即是讓Actor網(wǎng)絡(luò)和Critic網(wǎng)絡(luò)為同一個(gè)神經(jīng)網(wǎng)絡(luò),融合網(wǎng)絡(luò)的輸入狀態(tài)為S,輸出為狀態(tài)的價(jià)值V和對(duì)應(yīng)的策略,強(qiáng)化學(xué)習(xí)著名算法Alpha Zero中也使用融合網(wǎng)絡(luò)結(jié)構(gòu)[18]。
A3C算法相比較Actor-Critic算法更容易收斂,同時(shí)A3C強(qiáng)化學(xué)習(xí)算法借用DQN經(jīng)驗(yàn)回放的技巧,利用多線程訓(xùn)練的方法。本文A3C算法多線程異步訓(xùn)練部署框架如圖4所示,訓(xùn)練過(guò)程中多個(gè)線程分別和環(huán)境進(jìn)行交互學(xué)習(xí),同時(shí)將結(jié)果匯總保存到一個(gè)全局線程中進(jìn)行智能體學(xué)習(xí)和參數(shù)更新,而各個(gè)線程智能體則定期從全局線程獲取參數(shù)指導(dǎo)后面和環(huán)境的交互。通過(guò)多線程交互A3C算法避免了經(jīng)驗(yàn)回放相關(guān)性強(qiáng)的問(wèn)題,同時(shí)多線程訓(xùn)練能夠確保電梯智能體能在最短時(shí)間學(xué)習(xí)得到最優(yōu)調(diào)度策略。
圖4 A3C算法多線程訓(xùn)練部署框架
為了充分驗(yàn)證強(qiáng)化學(xué)習(xí)A3C算法運(yùn)用于樓宇電梯調(diào)度的可行性,本文進(jìn)行了相關(guān)的仿真實(shí)驗(yàn),實(shí)驗(yàn)環(huán)境基于百度飛槳和百度 AI Studio平臺(tái)進(jìn)行,實(shí)驗(yàn)GPU采用英偉達(dá)Tesla V100。電梯仿真環(huán)境采用LiftSim進(jìn)行,LiftSim是一款類似gym的仿真環(huán)境[8],同時(shí)基于LiftSim開(kāi)源代碼能夠方便進(jìn)行環(huán)境的自定義。本文通過(guò)在單電梯環(huán)境和多電梯復(fù)雜環(huán)境下對(duì)強(qiáng)化學(xué)習(xí)A3C調(diào)度算法和部分常用的傳統(tǒng)電梯調(diào)度算法進(jìn)行了對(duì)比實(shí)驗(yàn),同時(shí)在多電梯且具有分時(shí)人流的復(fù)雜環(huán)境下引入多種強(qiáng)化學(xué)習(xí)算法和A3C算法進(jìn)行對(duì)比實(shí)驗(yàn)。
單電梯調(diào)度環(huán)境下假設(shè)整棟樓宇只存在一部電梯,為了驗(yàn)證在單電梯調(diào)度環(huán)境下強(qiáng)化學(xué)習(xí)A3C算法和傳統(tǒng)調(diào)度算法的有效性,本文基于LiftSim進(jìn)行了仿真實(shí)驗(yàn),傳統(tǒng)調(diào)度算法中選用FCFS、SCAN、SCAN-EDF和LOOK算法作為對(duì)比算法。其中FCFS算法是一種先來(lái)先服務(wù)算法,它根據(jù)用戶樓層的請(qǐng)求電梯先后次序進(jìn)行依次調(diào)度。SCAN算法即掃描算法,是一種按照樓層順序依次服務(wù)請(qǐng)求,它讓電梯在最底層至最高層之間往返運(yùn)行。SCAN-EDF算法是一種實(shí)時(shí)調(diào)度算法,結(jié)合了調(diào)度算法SCAN和EDF的優(yōu)勢(shì),SCAN-EDF首先按照EDF算法選擇請(qǐng)求隊(duì)列中下一個(gè)服務(wù)對(duì)象,而對(duì)于相同時(shí)限的請(qǐng)求,則按照SCAN算法選擇下一個(gè)服務(wù)對(duì)象。LOOK算法調(diào)度電梯在最底層和最頂層之間運(yùn)行,當(dāng)電梯前進(jìn)方向未有用戶請(qǐng)求時(shí)則立即改變運(yùn)行方向運(yùn)行。
本實(shí)驗(yàn)設(shè)計(jì)強(qiáng)化學(xué)習(xí)A3C算法和傳統(tǒng)算法得分評(píng)價(jià)標(biāo)準(zhǔn)為對(duì)10層大樓的4小時(shí)人流進(jìn)行調(diào)度,綜合得分計(jì)算公式如式(3)所示,所得得分值為負(fù),分值越大代表電梯能耗和用戶等待時(shí)長(zhǎng)越短,電梯調(diào)度效率越高。調(diào)度環(huán)境大樓人流產(chǎn)生是一個(gè)均勻隨機(jī)過(guò)程,與時(shí)間無(wú)關(guān)。強(qiáng)化學(xué)習(xí)A3C算法超參數(shù)學(xué)習(xí)率設(shè)置為0.001,訓(xùn)練線程數(shù)設(shè)置25線程,A3C訓(xùn)練過(guò)程每一萬(wàn)次迭代進(jìn)行評(píng)測(cè)一次。整個(gè)A3C算法訓(xùn)練過(guò)程情況如圖5所示,圖示為A3C算法60萬(wàn)次迭代訓(xùn)練過(guò)程圖。
圖5 單梯環(huán)境A3C算法訓(xùn)練過(guò)程
由圖5強(qiáng)化學(xué)習(xí)A3C算法在不斷地和環(huán)境進(jìn)行交互過(guò)程中,可以明顯看出A3C算法獲得的獎(jiǎng)勵(lì)值逐漸增加,調(diào)度綜合得分逐漸增大這說(shuō)明電梯的能耗和人員等待時(shí)間逐漸降低,智能體逐步學(xué)到了最優(yōu)調(diào)度策略。圖5中大約在50萬(wàn)次迭代后得分達(dá)到-22分左右,大約60萬(wàn)次迭代后得分達(dá)到-21分左右。利用收斂后的算法和傳統(tǒng)相關(guān)算法進(jìn)行對(duì)比實(shí)驗(yàn),對(duì)比實(shí)驗(yàn)調(diào)度得分如圖6所示,圖示中A3C_50算法采用約50萬(wàn)次迭代訓(xùn)練后的模型,A3C_60算法采用約60萬(wàn)次迭代后的模型。
圖6 單梯環(huán)境下各調(diào)度算法性能對(duì)比
由圖6可知A3C強(qiáng)化學(xué)習(xí)算法60萬(wàn)次迭代后調(diào)度效果最好達(dá)到-21.06分,調(diào)度效果超過(guò)其它傳統(tǒng)電梯調(diào)度算法,傳統(tǒng)調(diào)度算法中SCAN-EDF算法具有較好調(diào)度效率,最終得分為-21.88分。A3C算法50萬(wàn)次迭代后調(diào)度得分-22.36分,相比較SCAN-EDF算法存在不足。在單電梯環(huán)境中A3C調(diào)度算法隨著迭代數(shù)上升相比較傳統(tǒng)算法存在一定優(yōu)勢(shì),但迭代數(shù)的增加一定程度上也將消耗一定的GPU資源。綜合來(lái)說(shuō)單電梯環(huán)境中傳統(tǒng)調(diào)度算法具備一定的運(yùn)用價(jià)值,但強(qiáng)化學(xué)習(xí)A3C算法在一定的迭代訓(xùn)練之后相比較傳統(tǒng)調(diào)度算法也存在一定優(yōu)勢(shì)。
多梯復(fù)雜環(huán)境下電梯調(diào)度算法建模更加復(fù)雜,需要考慮調(diào)度電梯的運(yùn)行情況和其它電梯的調(diào)度情況,而強(qiáng)化學(xué)習(xí)中,通過(guò)在多電梯環(huán)境下增加環(huán)境狀態(tài)S維度就容易達(dá)到算法建模的要求。為了驗(yàn)證本文所提調(diào)度算法的有效性,本文針對(duì)A3C算法和傳統(tǒng)SCAN-EDF算法進(jìn)行了對(duì)比實(shí)驗(yàn),基于SCAN-EDF算法在多部電梯情況之下采用最近派遣法則,即電梯距離需求樓層最近則派遣此電梯。同時(shí)本文為了驗(yàn)證不同強(qiáng)化學(xué)習(xí)算法的性能,引入了調(diào)度算法DDQN和MADDPG進(jìn)行了相關(guān)對(duì)比實(shí)驗(yàn),DDQN是經(jīng)典的強(qiáng)化學(xué)習(xí)算法[19],而MADDPG則是DDPG算法運(yùn)用于多智能體的升級(jí)版算法。對(duì)比實(shí)驗(yàn)是在固定4小時(shí)時(shí)長(zhǎng)情況下對(duì)大樓4部電梯進(jìn)行聯(lián)合調(diào)度,同時(shí)設(shè)定4小時(shí)人流分布呈現(xiàn)一定非隨機(jī)性,在初期1小時(shí)左右引入早高峰上行,在后期3小時(shí)左右引入晚高峰下行,通過(guò)引入早晚高峰上下行人流可以模擬當(dāng)前高層樓宇寫字樓的調(diào)度環(huán)境。
由圖7可知在模型訓(xùn)練初期MADDPG算法能夠比較好的到達(dá)分值區(qū)間(-50,-60),但是隨后在訓(xùn)練過(guò)程中MADDPG卻沒(méi)有表現(xiàn)出更高的分值區(qū)間,相反針對(duì)DDQN算法和A3C算法在訓(xùn)練初期階段其得分情況波動(dòng)較大,大約在60萬(wàn)次訓(xùn)練之后A3C算法表現(xiàn)出了綜合得分逐步上升的趨勢(shì),最終抵達(dá)得分區(qū)間大約為(-30,-35),而DDQN算法則達(dá)到了得分區(qū)間(-45,-55),這說(shuō)明A3C算法運(yùn)用多梯電梯調(diào)度環(huán)境具有一定的優(yōu)勢(shì)。同時(shí)本實(shí)驗(yàn)待強(qiáng)化學(xué)習(xí)模型訓(xùn)練較收斂后和傳統(tǒng)調(diào)度算法SCAN-EDF算法進(jìn)行了對(duì)比實(shí)驗(yàn),最終實(shí)驗(yàn)調(diào)度得分情況如圖8所示。
圖7 多梯復(fù)雜環(huán)境下強(qiáng)化學(xué)習(xí)算法訓(xùn)練過(guò)程
圖8 多梯復(fù)雜環(huán)境下各調(diào)度算法性能對(duì)比
由圖8各調(diào)度算法調(diào)度綜合得分可知,在復(fù)雜多電梯環(huán)境下由于傳統(tǒng)電梯調(diào)度算法建模困難,很難做到用戶體驗(yàn)和電梯能耗的平衡,而強(qiáng)化學(xué)習(xí)算法中建模相對(duì)簡(jiǎn)單,由于長(zhǎng)時(shí)間的模型訓(xùn)練讓模型逐漸從和環(huán)境的交互過(guò)程中學(xué)習(xí)得到了最佳的調(diào)度策略,這說(shuō)明強(qiáng)化學(xué)習(xí)運(yùn)用于復(fù)雜環(huán)境下電梯調(diào)度算法具有可行性,同時(shí)對(duì)比相關(guān)強(qiáng)化學(xué)習(xí)算法調(diào)度分值發(fā)現(xiàn)其中A3C算法運(yùn)用于電梯電梯調(diào)度具有一定的優(yōu)勢(shì),更容易收斂。
本文基于強(qiáng)化學(xué)習(xí)A3C算法構(gòu)建電梯調(diào)度算法,通過(guò)對(duì)調(diào)度環(huán)境、電梯行為和調(diào)度目標(biāo)3個(gè)方面進(jìn)行統(tǒng)一建模,讓電梯在不斷地和調(diào)度環(huán)境進(jìn)行交互過(guò)程中學(xué)習(xí)最優(yōu)調(diào)度策略,一方面克服了傳統(tǒng)調(diào)度算法的建模復(fù)雜性,讓調(diào)度算法在新環(huán)境下的也能方便移植,另一方面利用強(qiáng)化學(xué)習(xí)設(shè)計(jì)滿足用戶需求和能耗的獎(jiǎng)勵(lì)函數(shù)能有效平衡用戶體驗(yàn)和電梯能耗等多方面調(diào)度目標(biāo)。通過(guò)進(jìn)行單電梯和多電梯復(fù)雜環(huán)境下電梯調(diào)度對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明強(qiáng)化學(xué)習(xí)A3C算法經(jīng)過(guò)一定迭代次數(shù)的訓(xùn)練之后相比較傳統(tǒng)調(diào)度算法具有一定的優(yōu)勢(shì),能有效平衡用戶用梯和電梯節(jié)能需求。同時(shí)本文通過(guò)對(duì)比A3C、DDQN和MADDPG強(qiáng)化學(xué)習(xí)算法運(yùn)用于復(fù)雜環(huán)境電梯調(diào)度中的效果,實(shí)驗(yàn)結(jié)果表明A3C算法具有更好的調(diào)度性能,更易收斂。本文所提基于強(qiáng)化學(xué)習(xí)的調(diào)度方法同時(shí)也在國(guó)網(wǎng)湖北省電力公司科技項(xiàng)目的湖北電網(wǎng)運(yùn)營(yíng)監(jiān)控實(shí)用化關(guān)鍵技術(shù)研究項(xiàng)目中有進(jìn)行相關(guān)研究,強(qiáng)化學(xué)習(xí)在諸多調(diào)度領(lǐng)域存在運(yùn)用可能。在以后的進(jìn)一步研究中,可以結(jié)合強(qiáng)化學(xué)習(xí)和相關(guān)深度學(xué)習(xí)方法進(jìn)行電梯調(diào)度的建模和算法優(yōu)化,讓電梯調(diào)度模型更快收斂。