您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 建筑平面设计泡泡图配置方法之探讨
建築平面設計泡泡圖配置方法之探討13建築平面設計泡泡圖配置方法之探討衛萬明*包匡*吳梵煒***朝陽科技大學建築及都市設計研究所**朝陽科技大學建築系(收件日期:93年2月17日;接受日期:93年6月1日)摘要本研究嘗試以「基因演算法(GeneticAlgorithms,簡稱GA)」做為建構一套電腦輔助建築平面泡泡圖配置之方法,並藉由大眾化的電腦平台(platform)操作以協助專業或非專業建築設計者在從事建築平面空間設計時之輔助參考工具。在本研究中,我們希望能從找出一住宅設計時所須考量的因子,例如:空間量的大小安排、空間配置的規則等,同時應用基因演算法為運算基礎以使電腦能夠自動尋求出理想住宅平面方案設計前的適當泡泡圖配置,並進一步使電腦能夠輸出符合此一住宅配置考量因素之平面空間配置方案。如此,本研究應可針對建築設計過程中所可能遭遇的平面設計問題提出較佳之解答方案,並進而達到真正之「電腦輔助設計」的目的。關鍵詞:基因演算法,建築設計方法,泡泡圖,電腦輔助建築設計一、前言近年來,電腦不論在硬體及軟體的發展及功能上均有快速的提升,同時還被廣泛地應用在各行各業裏。就其在建築方面而言,大都被應用於施工程序的排定、建築結構的計算、施工估價以及建築繪圖等(Kalay,1991)。然而,對於真正透過電腦輔助建築設計的探討,卻較少有人提及。一般所認知的「電腦輔助建築設計(ComputerAidedArchitectureDesign,即CAAD)」,大都以二度或三度空間的建築圖繪製,並應用各種發展完善的電腦軟體以提供更週詳或更逼真的模擬,並進而達到所謂「輔助設計」之功能。然而,在這種情形下,很容易因此讓人誤認為電腦輔助設計就是利用電腦來做為輔助「繪圖」的工具。事實上,若以設計方法的層面而言,則電腦可不可以被拿來「產生」設計﹖抑或,電腦可否能真正做到「輔助人腦」來完成建築設計﹖此些課題為本研究所欲探討的主要方向及內容。在過去有部份文獻曾探討過有關電腦應用於建築平面設計之研究,然而僅有少數的研究結果被認為可行(Liggett,1991)。回顧近年來的研究,應用電腦輔助及人工智慧(ArtificialIntelligence,AI)的方法於建築平面設計及空間配置之研究已漸漸成為一極具潛力的發展方向(林峰田,1993a,1993b)。本研究亦將採朝陽設計學報第四期14用屬於人工智慧領域中的基因演算方法,配合電腦快速運算之能力,以企圖將建築平面設計的發展過程系統化。同時,本研究亦希望能透過建立一合理之推論系統(inferencesystem),以達到真正輔助建築平面設計之目的。同時,當電腦的功能愈來愈強大時,藉由電腦輔助設計建築平面並非是一個夢想,而其運算速度亦可協助設計者快速進行一個沒有太大問題的建築平面圖設計方案。此外,在探討建築的設計流程中可發現,整個設計構思與評估的行為是設計程序裡相當複雜且頗為艱難的部份。從設計需求及設計條件開始進行分析,以至確立準則、制定計畫、構思意念,以及資料的蒐集等階段直到訂定方案為止,每一個步驟之前後都有其他相關的步驟,且一旦缺少其中一個步驟也都會影響到整個設計案,因此實在應該要有一詳盡的計畫及安排方能完成一個合理的設計案(JoandGero,1995)。一般設計者在從事空間配置設計時所考慮的設計項目相當多,然而設計項目的多寡與其重要程度亦常因設計本身所需而有所增減。每位設計者本人對各項目的定義、觀點及重視程度亦有差異,且常會顧此失彼。同時再加上各設計項目間可能有多種不同之組合產生,因而要設計者一一嘗試各種方案的設計是不可能也無法達到的。本研究針對此點,認為透過「基因演算法(GeneticAlgorithms,簡稱GA)」的運作,可將前述試誤(trialanderror)的繁瑣過程交由電腦來輔助執行,並從中挑選較為理想的配置方案(即基因演算法所稱之「原體」),再由有經驗之設計者仔細並專業地從中選取最佳之方案,以求符合使用者之所需(亦即,嘗試將建築空間視作一組基因集合,並作有效率之排列組合結果)。本文希望能從找出住宅設計中的考量因子,例如:空間量的大小、空間配置的規則、空間與空間的關係等,並運用GA以電腦設計出理想的住宅平面方案為基礎,並將此法應用至非專業者都能使用的一般電腦平台,如:辦公室軟體(MicrosoftOffice)中的Excel,以提供非專業者亦可使用此電腦程式協助其進行自己住宅的設計構想。本文之主要研究內容包含下列幾個部份:(1)蒐集住宅設計中有關空間配置的設計方法,以了解設計的相關知識,並篩選適用於本研究的設計方法。(2)研究基因演算法的操作程序,並探討應用此演算法於電腦輔助建築平面設計的可行性。(3)配合篩選後的住宅空間設計項目,建立一套適用於本研究的演算法操作模式。(4)運用以基因演算法發展出之電腦套裝軟體程式Evolver,並嵌入(plug-in)MicrosoftExcel中,發展一電腦輔助設計住宅平面泡泡圖的設計平台。綜上所述,本研究之目的可分別以下列三點簡要說明之:1.探討基因演算法於一般住宅設計中平面泡泡圖配置之應用。2.應用EvolverforExcel之基因演算軟體發展以提供使用者一個設計住宅平面泡泡圖的簡易平台,同時讓非專業者亦可輕易地設計自己的住宅平面雛型。3.探討基因演算法運用於電腦輔助建築設計的可行性與發展潛力,讓設計者可利用此平台快速生產多個合乎機能之設計平面泡泡圖。二、基因演算法之探討及其特性基因演算法屬於人工智慧(AI)的一支。基因學的方式運用在資訊科學上的運算可解決某些適應化(adaptation)的問題,同時其可將複雜的問題轉換成位建築平面設計泡泡圖配置方法之探討15元型式加以運算之,並發現即使在一個相當大的搜尋空間(searchspace),基因演算法仍有能力可以找到一個很好的解答。基因演算法是Holland於1975年所發表,其基本理論是彷效達爾文的「進化論」,依據進化論,在多變的生存環境下,適應性強的物種往往比適應性差的物種更容易生存下來。而在適者生存、不適者淘汰的選擇過程中,各種生物為了存活的目的,會因而調整其基因以適應生存環境。因此,生物經歷演化過程的結果往往是適應能力強的物種較能生存下來,依循相同的原理,在求解目標導向的最佳化問題時亦可應用此「最適者生存」的原理,來尋求最佳的解。應用基因演算法求解最佳化問題,必須針對問題所設定目標環境轉換成對應的適存函數(FitnessFunction),並以隨機的方式產生初始物種族群,經由模擬自然界演化的過程,包括:交配(crossover)、突變(mutation)與複製(reproduction),反覆進行世代進化的過程產生新的物種,如圖1所示,詳細之演算過程可參閱ChengandGen(1997)之著作。基因演算法基本上是採用一種隨機的、平行式的搜尋方式,利用遺傳學的特性,經過不斷演化後在搜尋空間找到一個最佳或近似的解答。在基因演算法中,所有的參數都須預先以有限字符(alphabet)加以編碼成固定長度的字串。雖然有許多各式各樣的編碼技巧,然而最常用的仍是二進位編碼。編碼的作用是為了便於模擬生物交配、突變等演化過程,此種演化過程的優點是對目標函數的限制需求較少﹔缺點則是搜尋精度將隨著字串長度而有所改變,太短的字串長度將使量化解析度降低,太長的字串長度又太浪費記憶空間及拖慢運算速度,因此必須在兩者之間取得折衷。傳統上許多找最佳解的方法都是在搜尋空間的某一點,利用某些轉移規則(transitionrule),決定出下一點應該往哪個方向移動,這種點對點(pointtopoint)的搜尋法較容易陷入局部最佳解(localoptima),尤其對於多峰谷(multi-modal)函數極易找到錯誤的峰值。基因演算法在此點上則較具優勢圖1.基因演算法流程圖chromosomesscrossoverRoulettewheelmutationevaluationoffspringFitnesscomputationsolutionsdecodingsolutionsselection朝陽設計學報第四期16(林信成、彭啟峰,1994)。一般而言,基因演算法的運算步驟及內容可略述如下:(1)複製(reproduction)此過程類似生物的無性繁殖過程。其乃依據每個個體的適存(fitness)函數值高低,以決定該個體被複製的機率。因此,適存指標高的個體,就會有較高的機率被選擇到並「自我複製」出下一代新個體。上述過程乃為一人工版的天擇(naturalselection)過程。因為適存指標差的個體,被選中自我複製的機率比適存指標高者小,以至於在新的族群中,適存性差的個體會比舊族群中少,取而代之的則是適存性較好的個體。因此,如果在舊族群中有S個個體,那麼在複製階段,天擇機制也必須複製出相同數目的新個體。這S個自我複製的個體將悉數被放入一個稱為交配槽(matingpool)的緩衝區中,以等待進一步的繁衍。有許多方法可以用來表現複製過程中的自然選擇機制,其中最簡易也最廣為採用的是「輪盤法」(ChengandGen,1997)。此一輪盤不同於一般的等分格輪盤,其主要特色是輪盤中每個槽(slot)的大小都是根據每個個體適存指標的百分比來設定的,也就是適存指標愈高者所佔據的盤面比例愈大。理論上,擁有較高適存能力的個體,將擁有較高的機率被複製,以至於提供較多複本到交配槽中。此步驟完成後,由於交配槽中的個體僅是原個體的複本,所以尚未有異於原個體的新個體產生。(2)交配(crossover)交配運算子提供了一個訊息(information)交換的機制,其可使得族群中不同個體可經由隨機交配之過程以互換基因,並產生新的下一代(offspring)。首先,從上述複製過程之交配槽中任挑兩個體,稱之為雙親(parents),然後隨機地在雙親字串的N個基因(位元)中任挑一點,稱之為交配點(crossoverpoint),再將位於交配點右側的雙親基因互換以生成兩個新的個體,如此即完成交配的過程。因此所謂交配,事實上僅是將雙親的基因(位元變數)互換。而交換點的產生則是以亂數產生器來完成,每次產生的亂數都是介於1至N之間的整數。例如,假設一個8位元的雙親字串為:P1=10101010P2=01111100若隨機產生之交換點為5,亦即將雙親由左算起第5位元右側的所有位元(畫有底線者)互換,則產生的新個體為:Pl'=10101100P2'=01111010其中,Pl'之交換點左側位元的基因來自Pl(父親),而右側3位元的基因來自P2(母親);同理,P2'有5個基因來自母親,3個基因來自父親。由以上的簡單例子可知,下一代的兩個新個體分別含有雙親的部份基因樣式(pattern)。因此,交配步驟完成後,基本上已有異於舊個體(母代)的新個體(子代)產生,然其基因樣式仍沿襲自雙親而並無新的基因樣式產生,此有賴下一步驟突變以產生新的基因樣式。另外,並非所有被挑中的的雙親皆能進行交配,而是根據預設的交配機率(probabilityofcrossover)來決定交配發生的頻率。一般設定的交配機率介於為0.8至1之間。例如,若交配機率為0.8,則每次從交配槽中挑出兩個雙親個體時,建築平面設計泡泡圖配置方法之探討17必須先以擲骰子的方式決定是否進行交配,亦即先產生一個介於0~1之間的實數亂數,若該數小於0.8則進行交配產生新字串,否則就只將雙親基因完全複製給下一代即可,而不進行交配。(3)突變(mutation)突變過程乃是將交配後產生的子代,根據預設的突變機率進行突變之。其做法為將隨機選定的位元反轉(0變1,1變0)。一般而言,突變的機率值都設定得不高(約0.001左右)。突變在基因演算法中雖只居於次要地位(主要為再生與交配),但是卻可以引進新的基因樣式,避免過早收斂(prematureconvergence)的情況產生。同時,突變本身是一個在參數空間中「亂走(randomwalk)」的隨機過程,其可開發新的搜尋領域,並防止收斂於局部最佳點(localoptima)的情形,從而探尋整體
本文标题:建筑平面设计泡泡图配置方法之探讨
链接地址:https://www.777doc.com/doc-186251 .html