梁裕卿,吉久茂,楊佳蕾,張東升,王 珂,王凌宇
基于人工智能的BIM疏散設(shè)計(jì)自動化方法
梁裕卿1,2,吉久茂1,2,楊佳蕾3,張東升1,2,王 珂4,王凌宇1,2
(1. 同濟(jì)大學(xué)建筑設(shè)計(jì)研究院(集團(tuán))有限公司,上海 200092; 2. 上海建筑數(shù)字建造工程技術(shù)研究中心,上海 200092; 3. 普華永道信息技術(shù)(上海)有限公司數(shù)字方案部,上海 200021; 4. 同濟(jì)大學(xué)建筑與城市規(guī)劃學(xué)院,上海 200092)
針對目前建筑信息模型(BIM)消防疏散路徑人工繪制的耗時(shí)問題,從提高設(shè)計(jì)效率出發(fā),提出了一種基于深度Q學(xué)習(xí)(DQN)與A*結(jié)合的混合算法,并以此開發(fā)了一種基于該算法的BIM疏散自動設(shè)計(jì)工具。首先,房間疏散路徑使用A*算法進(jìn)行繪制;然后使用改進(jìn)的DQN算法確定樓層疏散中疏散門至安全出口的路徑再以A*算法繪制。在DQN算法的基礎(chǔ)上重新設(shè)計(jì)了獎勵矩陣賦值及增加了獎勵矩陣驗(yàn)證機(jī)制提高了繪制正確性;最后,使用以該算法為基礎(chǔ)的疏散設(shè)計(jì)自動化工具對實(shí)際項(xiàng)目進(jìn)行了實(shí)驗(yàn)。結(jié)果表明,該算法不僅能正確繪制路線并且比手工繪制效率提高2~3倍。通過服務(wù)器部署及硬件的升級為該算法效率進(jìn)一步提升提供了可能。目前基于該算法的自動設(shè)計(jì)工具已在同濟(jì)設(shè)計(jì)院上海建筑數(shù)字中心的多項(xiàng)實(shí)際項(xiàng)目中使用。
人工智能;建筑信息模型;疏散;設(shè)計(jì)自動化;深度Q學(xué)習(xí)
近年來,建筑信息模型(building information modeling,BIM)在設(shè)計(jì)階段的應(yīng)用已從最初的二維翻模向正向設(shè)計(jì)逐步過渡。BIM設(shè)計(jì)不僅僅只停留在原始的繪圖出圖,而是更多的為建筑設(shè)計(jì)提供數(shù)據(jù)化的建議與指導(dǎo),幫助設(shè)計(jì)師及時(shí)查找紕漏,做出合理的優(yōu)化。消防疏散路徑繪制是驗(yàn)證設(shè)計(jì)是否符合建筑消防規(guī)范的重要環(huán)節(jié)[1]。BIM建模人員在繪制消防疏散施工圖時(shí)需要花費(fèi)大量時(shí)間在BIM軟件中勾勒出房間和樓層的疏散路徑及疏散方向。所以,自動繪制路徑的需求應(yīng)運(yùn)而生。經(jīng)典的自動繪制路徑算法有Dijkstra算法[2],A*算法[3-5]等。Dijkstra算法是典型的最短路徑算法,其通過離出發(fā)點(diǎn)距離最近的點(diǎn)向外層擴(kuò)展,至終點(diǎn)。該算法在每次經(jīng)過下一個節(jié)點(diǎn)時(shí)需要遍歷Open集合的所有點(diǎn),效率較低。而且,距離最近的點(diǎn)是針對出發(fā)點(diǎn)而言的,不能保證最短路徑的搜索方向始終指向終點(diǎn),這樣會導(dǎo)致搜索方向產(chǎn)生偏差不能得到最優(yōu)解。針對Dijkstra算法的不足,A*算法引入了估價(jià)函數(shù),通過約束Dijkstra算法的搜索方向,從而減少搜索空間,提升搜索效率。A*算法搜索性能依賴于估價(jià)函數(shù)的定義,由于其依托于Dijkstra算法,仍需要維護(hù)Open/Close集合,即A*算法是一種內(nèi)存受限的啟發(fā)式搜索算法。所以,A*算法常常與其它自動繪制路徑算法相結(jié)合,當(dāng)節(jié)點(diǎn)數(shù)少時(shí),使用A*算法進(jìn)行最后的處理。概率路線圖(probabilistic roadmap,PRM)算法[6]是一種結(jié)合A*算法的路徑規(guī)劃算法,其基本思想是從周圍環(huán)境中布置隨機(jī)采樣點(diǎn),以相對較少的采樣點(diǎn)將連續(xù)空間轉(zhuǎn)換成離散空間從而避免點(diǎn)的采樣數(shù)量過高,然后利用A*算法在路線圖上尋找路徑,提高搜索效率。快速擴(kuò)展隨機(jī)樹(rapidly exploring random tree,RRT)算法[7-8]與PRM算法相類似,通過向空白區(qū)域擴(kuò)展樹枝得到節(jié)點(diǎn),再通過A*算法尋找起始點(diǎn)到終點(diǎn)的路徑。上述2種與A*結(jié)合的算法都是通過隨機(jī)采樣的方式獲取節(jié)點(diǎn)位置,而在實(shí)際設(shè)計(jì)中樓層/房間的角點(diǎn)或凹點(diǎn)都是固定的,并不需要布置隨機(jī)采樣點(diǎn)。所以其不適用于BIM的自動化設(shè)計(jì)。
隨著人工智能(artificialintelligence,AI)技術(shù)在各個領(lǐng)域的普及,一些使用AI算法繪制疏散路徑的方案也紛紛提出。LEE等[9]提出了基于圖的通用流通網(wǎng)絡(luò)(universal circulation network,UCN)算法,該算法是圍繞建筑平面內(nèi)的所有障礙物,如墻、門、樓梯等空余出一小段緩沖區(qū)域以模擬實(shí)際人群疏散的情形,同時(shí)將所有門點(diǎn),鄰近凹點(diǎn)進(jìn)行連接形成網(wǎng)絡(luò),最后使用Dijkstra算法繪制出疏散路徑。其不足之處在于依舊需要生成大量節(jié)點(diǎn),并使用了無方向限制的Dijkstra算法作為最后的繪制方式。SHARMA等[10]提出了基于Q-Learning+DQN的混合算法處理消防疏散問題,并將其與多種DQN變種算法進(jìn)行橫向比較。該算法速度更快,正確率更高。其是先將小空間范圍內(nèi)的房間使用Q-Learning算法得到Q矩陣,并將該矩陣作為DQN算法的初始矩陣,以期望在DQN運(yùn)行之前就獲取房間至出口的距離信息,提高運(yùn)算效率。但經(jīng)過使用相同的參數(shù)配置復(fù)現(xiàn)該先驗(yàn)方式發(fā)現(xiàn),Q-Learning算法[11]并不能適用于所有小空間分布情況,主要原因是Q-Learning易陷入局部最優(yōu)而無法得出結(jié)果,同時(shí)還受制于矩陣維度約束,即需要另一套機(jī)制去分割空間以正常運(yùn)行Q-Learning算法[12-14]或者說需要更強(qiáng)力的硬件支持(故原文作者采用了專用于AI研究的NIVIDIA DGX)。上述2種方案都在AI方向做出了大膽的創(chuàng)新與嘗試,為本文研究自動繪制消防疏散路徑提供了豐富的借鑒。
同濟(jì)設(shè)計(jì)院數(shù)字中心日常使用Autodesk Revit平臺進(jìn)行BIM設(shè)計(jì),所以部門需要一款基于Revit的插件工具,方便設(shè)計(jì)師繪制消防疏散路線圖并便于同平臺模型檢查,減少導(dǎo)入其他平臺所產(chǎn)生的時(shí)間成本。雖然Autodesk已發(fā)布的Revit 2019版新增了行進(jìn)路徑功能[15],但其有4項(xiàng)局限性:①無法批量對房間進(jìn)行路徑繪制;②只能在Revit 2019及以上版本使用;③繪制效果不符合設(shè)計(jì)院日常習(xí)慣;④無法應(yīng)對較復(fù)雜房間構(gòu)形。為了突破上述的局限性并提高設(shè)計(jì)效率,本課題組提出了一種基于改進(jìn)的深度Q學(xué)習(xí)與A*相結(jié)合的混合算法,以避免上述算法的一些先天缺陷并依據(jù)該算法開發(fā)了基于Autodesk Revit平臺的疏散設(shè)計(jì)自動化工具插件,覆蓋設(shè)計(jì)院常用的Revit 2016至2020版本。
本文提出的混合算法有以下若干特點(diǎn):
(1) 針對房間的疏散路徑使用A*算法。
(2) 針對樓層疏散路徑,首先使用改進(jìn)的DQN算法獲取防火分區(qū)內(nèi)所有疏散門到最近安全出口的行走路徑,再使用A*算法進(jìn)行繪制,避免了A*算法本身的內(nèi)存受限問題,提高了計(jì)算效率。
(3) 重新設(shè)計(jì)了獎勵矩陣的賦值方式,將門與門之間的長度關(guān)系反映到獎勵矩陣的值上。
(4) 由于使用了神經(jīng)網(wǎng)絡(luò)算法不可避免地會產(chǎn)生小概率誤差,所以在改進(jìn)的DQN網(wǎng)絡(luò)運(yùn)算之后加入了獎勵矩陣驗(yàn)證機(jī)制,避免了錯誤路徑的繪制。
最后,在實(shí)際設(shè)計(jì)中對該算法進(jìn)行了驗(yàn)證,取得了較好的效果,并將其應(yīng)用于日常施工圖消防疏散設(shè)計(jì)中。
消防疏散路徑繪制包括2個部分:房間疏散路徑繪制、樓層疏散路徑繪制。
房間疏散路徑表示的是房間內(nèi)任一點(diǎn)至疏散門的路徑(通常取最遠(yuǎn)點(diǎn))。如果一個房間存在多個疏散門,則需要繪制對應(yīng)數(shù)量的疏散路徑。
樓層疏散路徑表示的是房間內(nèi)某一點(diǎn)至疏散門的路徑以及疏散門至最近安全出口的路徑。每一層樓有一個或多個防火分區(qū),每個防火分區(qū)有一個或多個安全出口,繪制樓層疏散線就是將防火分區(qū)內(nèi)所有房間及疏散門至最近安全出口的路徑繪制出來。
房間疏散路徑繪制需要將Revit模型轉(zhuǎn)換成網(wǎng)絡(luò)節(jié)點(diǎn)圖。首先需要獲取房間周圍墻線,將各墻線的端點(diǎn)作為節(jié)點(diǎn)。房間周圍墻面可能是直線,也可能是帶有弧度的弧形墻?;⌒螇梢詫ζ溥M(jìn)行微小切分,將弧線轉(zhuǎn)換成無數(shù)個較短直線集合,將各短直線的端點(diǎn)作為節(jié)點(diǎn)。然后找到房間內(nèi)疏散門的位置,將其加入網(wǎng)絡(luò)中形成該房間的網(wǎng)絡(luò)節(jié)點(diǎn)圖,如圖1所示。
圖1 房間網(wǎng)絡(luò)示意圖
通過疏散門位置與節(jié)點(diǎn)之間距離的大小比較,可以找到房間內(nèi)離疏散門最遠(yuǎn)的節(jié)點(diǎn)。將該最遠(yuǎn)節(jié)點(diǎn)作為起始點(diǎn),疏散門的位置作為終點(diǎn),運(yùn)用A*算法得到最短路徑并繪制,如圖2所示。
圖2 房間疏散示意圖((a)單疏散門房間;(b)多疏散門房間;(c)帶L拐角房間;(d)弧線墻房間)
消防疏散線在圖2中以虛線表示。A*算法可表示為
其中,為當(dāng)前節(jié)點(diǎn);()為當(dāng)前節(jié)點(diǎn)的估值;()為起始點(diǎn)到當(dāng)前節(jié)點(diǎn)的距離;()為當(dāng)前節(jié)點(diǎn)到終點(diǎn)的距離。如圖2(b)所示,該房間共有2個疏散門,所以分別得到房間內(nèi)距其疏散門最遠(yuǎn)的節(jié)點(diǎn)作為起始點(diǎn)進(jìn)行繪制。圖2(c)中,符合A*算法的中間節(jié)點(diǎn)在L形角點(diǎn)處。圖2(d)是將弧形墻做了切分處理成若干離散節(jié)點(diǎn)形成網(wǎng)絡(luò),得到最短疏散路徑。
防火分區(qū)內(nèi)包含房間及公共區(qū)域,如走廊、過道等等。根據(jù)上述房間疏散線的繪制思路,可將公共區(qū)域視作為“房間”并在Revit中為其添加“房間”標(biāo)記,如圖3所示。
對于一個公共區(qū)域而言,當(dāng)其被標(biāo)記為房間后(圖3(a)),只需要知道起始的疏散門與到達(dá)的疏散門或安全出口,使用上述的A*算法即可繪制其消防疏散路徑(圖3(b))。
一個防火分區(qū)可能存在多個安全出口,防火分區(qū)內(nèi)任意一個疏散門如何找出其通往最近安全出口所經(jīng)過的疏散門并保證該路徑為最短路徑?這是一個典型的智能體迷宮問題。由此,本文提出以改進(jìn)的DQN算法來解決上述問題。
圖3 樓層疏散中的公共區(qū)域處理 ((a) Revit中的走廊;(b)示意圖)
首先,DQN算法來源于Q-Learning算法,Q-Learning算法是一種傳統(tǒng)的強(qiáng)化學(xué)習(xí)算法。強(qiáng)化學(xué)習(xí)是機(jī)器學(xué)習(xí)中的一個子集。強(qiáng)化學(xué)習(xí)的智能體可以從與環(huán)境的直接交互中學(xué)習(xí),而無需明確的監(jiān)督或完整的環(huán)境模型。
Q-Learning中的Q表示的是在某一時(shí)刻狀態(tài)(?)下,采取動作(?)能夠獲得收益的期望。所有的狀態(tài)與動作會形成一張(,)矩陣。通過Q-Learning公式不斷更新矩陣以達(dá)到收斂狀態(tài)
其中,為學(xué)習(xí)率;為折扣率;?為下一個狀態(tài);?為?的所有可執(zhí)行動作中選擇獎勵值最大的行為。
Q-Learning對于大維度運(yùn)算具有局限性并且容易陷入局部最優(yōu)而處于一直運(yùn)算的狀態(tài)無法得到運(yùn)算結(jié)果。DQN算法[16-17]是將神經(jīng)網(wǎng)絡(luò)與Q-Learning算法相結(jié)合。主要改進(jìn)在于:
(1) DQN利用神經(jīng)網(wǎng)絡(luò)來逼近值函數(shù),突破原有算法的維數(shù)限制。
(2) DQN利用經(jīng)驗(yàn)回放訓(xùn)練強(qiáng)化學(xué)習(xí)的學(xué)習(xí)過程,讓有用的樣本得到更多的訓(xùn)練次數(shù),提高樣本使用效率,減少訓(xùn)練時(shí)的方差,并減輕陷入局部最優(yōu)的情況。
(3) DQN獨(dú)立設(shè)置了目標(biāo)網(wǎng)絡(luò)來單獨(dú)處理時(shí)序差分中的偏差,增強(qiáng)網(wǎng)絡(luò)訓(xùn)練的穩(wěn)定性。
通過圖4來闡述DQN算法的處理過程。
圖4 防火分區(qū)示意圖
假設(shè)存在一個如圖4所示的防火分區(qū)。首先對每個房間的疏散門進(jìn)行編號,6號門作為安全出口,其他房門均為疏散門。根據(jù)每個房間與其他房間是否互通的關(guān)系,可以得到圖5的網(wǎng)絡(luò)示意圖。
圖5 網(wǎng)絡(luò)示意圖
每個房間疏散門都是一種狀態(tài)(state),在本例中一共有6種狀態(tài)。每種狀態(tài)對應(yīng)的動作(action)可以使用獎勵矩陣來表示,如圖6所示。疏散門如果可直接到達(dá)安全出口,其獎勵值記為100;互不相通的疏散門或安全出口,獎勵值記為-1;其他情況皆記為0。
圖6 獎勵矩陣
獲得該防火分區(qū)的獎勵矩陣后,即可代入DQN算法進(jìn)行下一步的處理,具體步驟如下:
步驟1.設(shè)置參數(shù):獎勵矩陣,學(xué)習(xí)率,
折扣率,迭代總數(shù),初始化容量為的經(jīng)驗(yàn)池。初始化隨機(jī)權(quán)重的網(wǎng)絡(luò)。初始化權(quán)重為-的網(wǎng)絡(luò)target,令-=q。
步驟2. 對于每一次迭代,執(zhí)行:
步驟2.1. 隨機(jī)選擇一個狀態(tài)。
步驟2.2. 以概率在當(dāng)前狀態(tài)的所有可執(zhí)行動作中(即獎勵矩陣所在行不等于-1的列)任意選取一種動作或選取獎勵值最大作為動作。
步驟2.3. 將狀態(tài)與動作代入獎勵矩陣,得到獎勵值,將選定的動作作為下一個狀態(tài)?。
步驟2.4. 將當(dāng)前狀態(tài),當(dāng)前執(zhí)行的動作,獎勵值,下一個狀態(tài)?放入經(jīng)驗(yàn)池中。如果超過記憶的容量,則將最久遠(yuǎn)的記憶移除。
步驟3. 從經(jīng)驗(yàn)池中隨機(jī)選取一小批記憶樣本,對于每個樣本,如果其獎勵值為-1,則網(wǎng)絡(luò)target記錄該獎勵值;否則網(wǎng)絡(luò)target根據(jù)以下公式記錄結(jié)果
步驟4. 根據(jù)損失函數(shù)()按梯度下降法更新網(wǎng)絡(luò)權(quán)重,損失函數(shù)為
將損失函數(shù)為最小時(shí)的模型參數(shù)保存到data文件中。
步驟5. 每隔步更新網(wǎng)絡(luò)target=。
步驟6. 從data文件中取出損失函數(shù)值為最小時(shí)的矩陣target。
當(dāng)?shù)Y(jié)束后,可得到損失函數(shù)最小時(shí)的矩陣target,如圖7所示。以疏散門1為例,在狀態(tài)為1時(shí),所在行最大值為168.1,即到達(dá)了疏散門2的位置。狀態(tài)為2時(shí),所在行最大值為186.78,即直接到達(dá)了安全出口,由此形成了疏散門1的完整疏散路徑:1-2-6,最后使用A*算法在Revit中繪制出具體路徑。
從圖7可以觀察到,疏散門4在target矩陣中有2個相同的值168.1,對應(yīng)疏散門3和5。而疏散門5距離安全出口6的距離更近,但未在矩陣的值中體現(xiàn)。同時(shí),神經(jīng)網(wǎng)絡(luò)算法不可避免地會產(chǎn)生小概率誤差,運(yùn)算結(jié)果需要一種簡單、有效的方式進(jìn)行驗(yàn)證。
圖7 最終矩陣
因此本文提出了改進(jìn)的DQN算法,主要的改進(jìn)點(diǎn)在:重新設(shè)計(jì)了獎勵矩陣的賦值方式,將門與門之間的長度關(guān)系反映到獎勵矩陣的值上;在DQN網(wǎng)絡(luò)運(yùn)算之后加入了獎勵矩陣驗(yàn)證機(jī)制,避免了錯誤路徑的繪制。
獎勵矩陣的賦值關(guān)系可重新定義為:
當(dāng)狀態(tài)無法執(zhí)行動作時(shí),即
當(dāng)防火分區(qū)內(nèi)所有門與門之間的長度都相同,狀態(tài)可選擇動作時(shí),即
當(dāng)防火分區(qū)內(nèi)所有門與門之間的長度不同,狀態(tài)可選擇動作時(shí),即
對于DQN網(wǎng)絡(luò)運(yùn)算之后得到的疏散路線集合={1,2,3,4,···,p},其中每條疏散路徑={1,2,3,4,···,Node}需要通過獎勵矩陣的驗(yàn)證,即
綜上,改進(jìn)的DQN算法流程圖如圖8所示。
根據(jù)本文上述房間疏散與樓層疏散繪制的實(shí)現(xiàn)方式,在Autodesk Revit平臺上使用C#語言編寫了房間疏散與樓層疏散2個功能的插件。房間疏散針對單個房間進(jìn)行繪制,而樓層疏散針對樓層防火分區(qū)內(nèi)所有房間及公共區(qū)域進(jìn)行繪制。改進(jìn)的DQN算法以Google TensorFlow的Python腳本實(shí)現(xiàn)。C#與TensorFlow腳本以csv格式文件來傳遞矩陣信息。本文以模型線來表示疏散路徑,并以箭頭族表示防火分區(qū)內(nèi)室內(nèi)或疏散門至安全出口的疏散方向。紅色虛線表示疏散路徑不符合消防疏散規(guī)范;而綠色虛線表示符合規(guī)范。
參數(shù)設(shè)置如下:學(xué)習(xí)率=0.001,折扣率=0.9,探索率從0.1降低至0.000 1。迭代總數(shù)為3 000 000次,初始化容量為=5000的經(jīng)驗(yàn)池,每隔觀察1 000次更新矩陣。
本文以圖2為例在Revit中繪制4種不同構(gòu)形的房間,并執(zhí)行插件中的“房間疏散”功能,結(jié)果如圖9所示。
通過圖9可知,使用A*算法可以正確地繪制出房間疏散路徑。設(shè)計(jì)師只需要點(diǎn)擊功能命令,再選中需要繪制的房間即可得到結(jié)果,節(jié)省了畫線、調(diào)整線型、放置箭頭族并轉(zhuǎn)動正確方向的時(shí)間。
單安全出口疏散路徑實(shí)驗(yàn)是以某幼兒園項(xiàng)目為例,其防火分區(qū)圖如圖10所示,其中安全出口已使用圓圈標(biāo)出。
執(zhí)行改進(jìn)的DQN算法得到如圖11所示結(jié)果,整個疏散路徑以綠色虛線表示,同時(shí)繪有疏散箭頭族指向安全出口。疏散路徑的結(jié)果是正確的。
表1對比了單安全出口實(shí)驗(yàn)在人工手繪、A*算法、Q-Learning算法及改進(jìn)的DQN算法中的執(zhí)行時(shí)間。
圖9 Revit實(shí)現(xiàn)房間疏散繪制((a)單疏散門房間疏散路徑;(b)多疏散門房間疏散路徑;(c)帶L拐角房間疏散路徑; (d)弧線墻房間疏散路徑)
圖10 單安全出口的某項(xiàng)目
圖11 改進(jìn)的DQN運(yùn)行結(jié)果
表1 單安全出口實(shí)驗(yàn)各繪制方式所用時(shí)間對比
通過表1可以得出,A*算法與Q-Learning算法在該項(xiàng)目中的執(zhí)行速度是非??斓模c(diǎn)擊按鈕就能立即得到疏散路徑圖。其次是改進(jìn)的DQN算法,在防火分區(qū)較小的情況下,使用神經(jīng)網(wǎng)絡(luò)在本機(jī)運(yùn)行的情況下不具有效率優(yōu)勢,改進(jìn)的DQN算法需要自我訓(xùn)練才能得出結(jié)果,而訓(xùn)練時(shí)間占用了一定的開銷。時(shí)間消耗最多的是人工手繪方式,畫線、改線樣式、放置疏散箭頭每個步驟都需要正確操作。
多安全出口疏散實(shí)驗(yàn)以金鼎中心項(xiàng)目為例。某層共有2個防火分區(qū),左側(cè)防火分區(qū)有3個安全出口,右側(cè)防火分區(qū)有2個安全出口,以綠色指示箭頭,如圖12中紅色畫圈位置。
圖12 金鼎中心項(xiàng)目某防火分區(qū)
執(zhí)行改進(jìn)的DQN算法得到如圖13所示結(jié)果。
圖13 改進(jìn)的DQN運(yùn)行結(jié)果
項(xiàng)目確定的消防疏散圖如圖14所示。
圖14 金鼎中心項(xiàng)目消防疏散圖
對比圖13與圖14,發(fā)現(xiàn)區(qū)別在于:
(1) 圖14以CAD進(jìn)行繪制,沒有標(biāo)明所有房間的疏散路徑,而是以離各安全出口最遠(yuǎn)處房間為例進(jìn)行路徑繪制。即如果最遠(yuǎn)處房間能通過消防規(guī)范路徑長度的話,其他房間亦能通過。
(2) 圖13是在Revit平臺上進(jìn)行自動繪制,對每個房間及公共區(qū)域都繪制了疏散路徑,比傳統(tǒng)CAD疏散圖更加詳盡,在繪圖表達(dá)上完全體現(xiàn)了建筑設(shè)計(jì)防火規(guī)范5.5.17中2個距離原則[1],即“房間疏散門至最近安全出口的直線距離”與“房間內(nèi)任一點(diǎn)至房間疏散門的直線距離”,并為之后使用該BIM數(shù)據(jù)進(jìn)行運(yùn)維提供了便利。
同樣,表2對比了多安全出口實(shí)驗(yàn)在人工手繪、A*算法、Q-Learning算法及改進(jìn)的DQN算法中的執(zhí)行時(shí)間。
表2 多安全出口項(xiàng)目各繪制方式所用時(shí)間對比
從表2可知,只有手繪方式與改進(jìn)的DQN算法得出了結(jié)果。A*與Q-Learning算法由于用時(shí)過長一直處于執(zhí)行狀態(tài)未記錄時(shí)間。改進(jìn)的DQN算法用時(shí)約11 min,手繪用時(shí)約26 min。需要說明的是這里的手繪是對每個房間及走道都有連線并放置箭頭族,而并非采用圖14所示的繪圖方式。改進(jìn)的DQN算法的效率是手工繪制的2~3倍。
本文提出了一種基于改進(jìn)DQN算法與A*算法相結(jié)合的混合算法用以在BIM施工圖消防疏散路徑中進(jìn)行繪制與檢查。針對房間疏散路徑,使用A*算法進(jìn)行繪制;針對樓層疏散路徑,使用改進(jìn)的DQN算法確定疏散門至安全出口的路徑并以A*算法繪制。本文在DQN算法的基礎(chǔ)上重新設(shè)計(jì)了獎勵矩陣的賦值方式,將門與門之間的長度關(guān)系反映到獎勵矩陣的值上;在DQN網(wǎng)絡(luò)運(yùn)算之后加入了獎勵矩陣驗(yàn)證機(jī)制,避免了錯誤路徑的繪制。本文提出的算法優(yōu)勢在于適用于大面積的批量執(zhí)行,避免了傳統(tǒng)算法的內(nèi)存受限及易局部最優(yōu)的缺陷。在本文的實(shí)驗(yàn)中,該混合算法比手工繪制的效率提高了2~3倍。未來可通過將本算法部署于服務(wù)器開放WebAPI及使用高性能AI顯卡脫離客戶機(jī)的硬件限制,進(jìn)一步提升算法的執(zhí)行效率。目前,基于該算法的疏散設(shè)計(jì)自動化工具已應(yīng)用于同濟(jì)設(shè)計(jì)院上海建筑數(shù)字中心的多個實(shí)際項(xiàng)目中。
[1] 中華人民共和國住房和城鄉(xiāng)建設(shè)部. 建筑設(shè)計(jì)防火規(guī)范: GB 50016—2014[S]. 北京: 中國計(jì)劃出版社, 2018: 79-80. Ministry of Housing and Urban-Rural Development of the People’s Republic of China. Code for fire protection in building design: GB 50016—2014[S]. Beijing: China Planning Press, 2018: 79-80 (in Chinese).
[2] DIJKSTRA E W. A note on two problems in connexion with graphs[J]. Numerische Mathematik, 1959, 1(1): 269-271.
[3] NILSSON N J. The quest for artificial intelligence[M]. Stanford University: Cambridge University Press, 2009: 1-578.
[4] 張超超, 房建東. 基于定向加權(quán)A*算法的自主移動機(jī)器人路徑規(guī)劃[J]. 計(jì)算機(jī)應(yīng)用, 2017, 37(S2): 77-81. ZHANG C C, FANG J D. Path planning of autonomous mobile robot based on directional weighted A*algorithm[J]. Journal of Computer Applications, 2017, 37(S2): 77-81 (in Chinese).
[5] 張啟飛, 郭太良. 基于多階段決策的機(jī)器人全局路徑規(guī)劃算法[J]. 計(jì)算機(jī)工程, 2016, 42(10): 296-302. ZHANG Q F, GUO T L. Global path planning algorithm of robot based on multistage decision[J]. Computer Engineering, 2016, 42(10): 296-302 (in Chinese).
[6] KAVRAKI L E, SVESTKA P, LATOMBE J C, et al. Probabilistic roadmaps for path planning in high-dimensional configuration spaces[J]. IEEE Transactions on Robotics and Automation, 1996, 12(4): 566-580.
[7] LAVALLE S M. Rapidly-exploring random trees: a new tool for path planning[R]. Technical Report. Computer Science Department, lowa State University, 1998.
[8] LAVALLE S M, KUFFNER J J. Randomized kinodynamic planning[J]. The International Journal of Robotics Research, 2001, 20(5): 378-400.
[9] LEE J K, EASTMAN C M, LEE J, et al. Computing walking distances within buildings using the universal circulation network[J]. Environment and Planning B: Planning and Design, 2010, 37(4): 628-645.
[10] SHARMA J, ANDERSEN P A, GRANMO O C, et al. Deep q-learning with q-matrix transfer learning for novel fire evacuation environment[EB/OL]. [2019-05-23]. https://xueshu. baidu.com/usercenter/paper/show?paperid=1f2d0jm0ms7r0ew0hx3m0th0j9655136&site=xueshu_se.
[11] WATKINS C J. Learning from Delayed Rewards[D]. Cambridge: Cambridge University, 1989.
[12] CHOSHEN L, FOX L, AIZENBUD Z, et al. On the weaknesses of reinforcement learning for neural machine translation[EB/OL]. [2019-05-23]. https://xueshu.baidu.com/ usercenter/paper/show?paperid=10370e60073n0pb0pq7b0870y4229607&site=xueshu_se&hitarticle=1.
[13] ANDREY K. Reinforcement learning’s foundational flaw[EB/OL]. [2018-07-08]. https://thegradient.pub/why-rl-is- flawed/.
[14] DULAC-ARNOLD G, MANKOWITZ D, TODD H. Challenges of real-world reinforcement learning[EB/OL]. [2019-04-29]. https://arxiv.org/pdf/1904.12901.pdf.
[15] Autodesk Inc. Revit: What’s new in the latest Revit release[EB/OL]. [2018-04-18]. https://www.autodesk.com/ products/revit/new-features.
[16] MNIH V, KAVUKCUOGLU K, DAVID SILVER, et al. Play atari with deep reinforcement learning[EB/OL]. [2013-12-19]. https://arxiv.org/abs/1312.5602.
[17] MNIH V, KAVUKCUOGLU K, D SILVER, et al. Human-level control through deep reinforcement learning[J]. Nature, 2005, (518): 529-533.
BIM evacuation design automation based on artificial intelligence
LIANG Yu-qing1,2, JI Jiu-mao1,2, YANG Jia-lei3, ZHANG Dong-sheng1,2, WANG Ke4, WANG Ling-yu1,2
(1. Tongji Architectural Design (Group) Co.,Ltd, Shanghai 200092, China; 2. Shanghai Digital Architecture Fabrication Technology Center, Shanghai 200092, China;3. Department Digital Solutions, PricewaterhouseCoopers Zhong Tian LLP (Shanghai), Shanghai 200021, China;4. College of Architecture and Urban Planning, Tongji University, Shanghai 200092, China)
To reduce the time cost of manual design of the Building Information Modeling (BIM) fire evacuation routes and to enhance design efficiency, an improved algorithm was proposed based on Deep Q Learning (DQN) and A* algorithm, through which a BIM evacuation design automation tool developed. First, the evacuation path of the room was drawn by A* algorithm. Then, the path from the evacuation door to safety exit in floor evacuation was determined using the improved DQN algorithm, and was drawn by A* algorithm. On the basis of the DQN algorithm, we redesigned reward matrix assignment and added reward matrix verification to improve the correctness of floor evacuation. Finally, we applied the improved algorithm-based evacuation design automation tool to practical projects. The results show that this improved algorithm can not only draw the route correctly, but also increase the efficiency by 2 to 3 times compared with manual drawing. The efficiency of this algorithm can be further improved by server deployment and hardware upgrades. At present, the automatic design tool has been adopted in several actual projects of Shanghai Digital Architecture Fabrication Technology Center (SFAB), Tongji Architectural Design (Group) Co., Ltd.
artificial intelligence; building information modeling; evacuation; design automation; deep Q-learning
TP 391
10.11996/JG.j.2095-302X.2021020299
A
2095-302X(2021)02-0299-08
2020-08-21;
21August,2020;
2020-10-23
23October,2020
教育部重點(diǎn)實(shí)驗(yàn)室(同濟(jì)大學(xué))開放課題(2019010103)
Open Projects Fund of Key Laboratory of Ministry of Education (Tongji University) (2019010103)
梁裕卿(1990–),男,上海人,工程師,碩士。主要研究方向?yàn)锽IM軟件開發(fā)。E-mail:51lyq@tjad.cn
LIANG Yu-qing (1990–), male, engineer, master. His main research interest covers BIM software development. E-mail:51lyq@tjad.cn