關註這個問題快壹周了,到目前來說還是沒發現什麽太大的驚喜。我感覺建築設計界還是要學習壹個,不要看到深度學習很火,就弄個大新聞,把這玩意往建築設計上搬呀。
其實深度學習這事兒到底怎麽就能和建築設計掛鉤上?如果單單指“深度學習”,那我的理解是套用了許多層的人工神經網絡,這種技術能在建築設計中扮演什麽角色?我目前還真沒發現直接用深度學習這種技術來輔助建築設計的例子。但是如果把題主提問的概念放寬松壹點,變成“如何使用機器學習等算法來幫助建築設計”,那我想還是有比較好的例子的。
機器學習技術是用來讓程序的運行性能隨著輸入量和時間的積累慢慢提高的壹種技術。例如妳寫了壹個程序來預測壹棟別墅的房價,這個程序的作用是能根據輸入數據的[城市,街道,區位,面積,戶型,..]等參數預測房價,為了提高程序預測的準確度,妳需要先給程序餵壹些已經有了估價結果的數據,程序學習壹定的數據以後就能自己預測房價了。那麽,這種程序工作的方式和我們做建築設計的工作流程有什麽聯系呢? 我們做設計時,同樣也是先調研和參考大量同類建築的案例,積累到壹定量以後,才能自己動手開始做設計。了解了這壹點,便可以設想壹種利用機器學習來輔助建築設計的思路:先讓程序學習以前的建築設計方案,然後程序就能自己去做設計了!
這篇2010年的論文 Computer-generated residential building layouts 可以說就是以上思路的典範。作者自稱“使用數據驅動的方式設計了能自動創建視覺效果非常好的建築布局的工具”,但我覺得論文的質量是遠遠超過了這樣謙遜的描述,因為論文實現的思路極大程度借鑒了現實中建築師開展設計工作的流程,而且用了貝葉斯網絡這個非常漂亮的數學模型描述了壹個建築program在空間中的分布,而貝葉斯網絡的訓練數據全部來自真實的建築師的設計方案。個人認為用機器學習的思路去處理建築布局問題相比於過去十年來Shape Grammar的那種Procedural Modeling的思路來得更為正確。
論文是怎麽展開的呢?首先,作者總結了前人工作,說明了以前基於窮舉的算法都行不通,要在3D空間中去窮舉這麽復雜的空間分配問題就和猴子隨意敲鍵盤得到壹部莎士比亞作品的難度差不多。接著作者又批判了上個世紀90年代Muller搞的Shape Grammar那壹套也不行,因為Shape Grammar就是圖形語法,我們知道,編程語言是是基於有限規則的語法集生成的,而建築設計中這樣的規則條款很難形式化描述,而且會傾向於讓語法數量變得無窮多。順帶壹提,幾十年前計算機科學家在攻克語音識別和機器翻譯難題的時候,也是認為自然語言是完全基於有限的規則生成的,但後來才發現行不通,直到後來改成基於統計的方法進行研究後,才有了突破性進展。 那麽shape grammar不適合建築設計的另外壹點在於,建築設計不是玩弄圖形變換的遊戲,每壹個建築空間都有基於功能,心理和效用等因素的考慮。之前也有過用shape grammar分析賴特壁爐式住宅的語法規則的論文,但是應用範圍實在太窄。所以這條路是走不通的。
論文作者認為,做方案,壹定要基於人的舒適和心理需求,習慣和社會關系等因素,將他們綜合考量後才會有比較合理的結果。例如,房間的形狀最好是凸包而不要做成凹的,因為在采光上,家具擺放和視線上方正規整的形體都更優;建築各個功能要形成開放性 - 私密性的梯度,因為這正反映了建築被使用的方式。 為了研究更好的方法,作者去找到了壹家建築事務所的建築師們向他們咨詢職業建築師的工作方式,得到了壹個特別有用的結論:建築師在初期和客戶咨詢後,在畫平面的詳圖之前,壹般都會用泡泡圖來思考問題,而泡泡圖則反映了壹個建築方案高度濃縮的信息,包括私密性,房間鄰接關系,采光,業主喜好和文化習俗。
泡泡圖在在建築師看來是展開方案設計工作的第壹步,在計算機科學家看來則是壹種復雜的數據結構——圖。從使用者或者任務書弄出壹張泡泡圖是建築師專業能力的體現,不管這種能力是基於長期訓練的素養也好,還是臨時起意的構想也好,我們知道這張圖包含的信息量很大就對了。 那現在問題是,如何讓計算機來生成這樣壹張泡泡圖呢?
這個時候就要輪到本回答開始的機器學習算法登場了。作者用來壹個概率圖模型——貝葉斯網絡來描述建築師做出來的泡泡圖。用人話說,就是用這玩意來描述建築方案中每壹個部分在空間中的概率分布。好像說起來還是不太容易懂,但總之,我們知道了,這個模型可以讓電腦知道對應壹個成功的建築方案,客廳、臥室和走廊等出現在某些位置的概率比出現在另外壹些的位置的概率高,而概率高的位置正是合理的位置,這樣就更容易生成好的方案。
針對貝葉斯網絡的訓練,作者搞了120套住宅建築方案作為訓練數據來餵給程序吃。現在程序總算是知道建築方案的基本做法了,以下就是基於貝葉斯網絡生成的泡泡圖:
搞定了泡泡圖之後,怎麽從這玩意生成建築平面呢? 作者幾經周折,最後用了Metropolis算法來搞定。具體的生成過程描述都在論文裏面有寫,我就不詳細寫了(其實是看不懂。) 再下壹步是生成3D模型,作者比較自豪地說,他搞的這個算法真正實現了多層建築方案的生成,而以前的基本只能生成單層的平面,作用有限。以下是壹些成果:搞定了泡泡圖之後,怎麽從這玩意生成建築平面呢? 作者幾經周折,最後用了Metropolis算法來搞定。具體的生成過程描述都在論文裏面有寫,我就不詳細寫了(其實是看不懂。) 再下壹步是生成3D模型,作者比較自豪地說,他搞的這個算法真正實現了多層建築方案的生成,而以前的基本只能生成單層的平面,作用有限。以下是壹些成果:
6張平面有幾張是人做的方案,剩下的都是機器做的,大家可以猜壹下機器做的是哪幾個。答案論文裏面有說。6張平面有幾張是人做的方案,剩下的都是機器做的,大家可以猜壹下機器做的是哪幾個。答案論文裏面有說。
最後是生成的3D模型,家具是手工布置的。還是頗具真實度呢!
作者最後提到,準備把這個東西運用到更多的建築類型上,例如辦公樓等。如果這玩意兒成熟,再也不用擔心建築師不失業了,偶也!
最後我再說說對這玩意的評價吧。最近幾十年知識工作的自動化簡直如火如荼地吹遍天南地北的各個行業,許多人都擔心低端的勞動職位會不會被取代,例如駕駛汽車,快遞,寫新聞稿,翻譯,速記等等等,這種擔心真的不是毫無理由啊!當優雅簡潔的數學模型遇到計算機這個可以暴力計算的機器,結合起來就創造了壹類又壹類可成規模復制的智能機器,想想還是讓人後怕的。不過也不用太擔心就是,建築設計行業人所占的因素還是很大的,很多時候甲方找人做設計,都是看重設計師本身,出了專業能力外,溝通,人格魅力,背景,執照等的背書也是很重要的,不過未來這種建築界持續了很久的行業模式會不會被顛覆就不得而知了。另外,程序也需要吃許多訓練數據才能提高自己的設計修養,在目前來看建築設計的各位同行都把自己搜集的方案當成寶壹樣藏著,數據量的大而全也很難保證,不知道以後BIM的普及會不會讓這方面得到改善。