基于多智能体的遗传建筑设计方法
生成建筑方案方法
原作者 李飚
译者 戚立
中国 南京 东南大学建筑学院
摘要: 此文介绍了一个名为“Gen_house”的制造软件的工作过程和效果,它能生成高质量的建筑设计任务的草案。无论是在欧洲还是亚洲,一个成功结合了研究、发展和教育的项目,其结果的成功都是为了 通过设计过程减轻所考虑到的多个方面的实际需求量。该软件运用了自组织的原理和方法,智能体基础解决方案和自然科学,并将他们引入到建筑设计领域中。
关键词: 演算法、拓扑关系图、智能体、邻里关系、相交、Gen_house。
1 引言
多智能体原理的运用暗示着一种产生设计的策略:这是一个更为“实事求是”的设计系统,而非“循规蹈矩”的。作者运用它为建筑设计研发了一个名为“Gen_house”的颇具影响力的系统。在过去的几年里(甚至是几十年里),曾有许多人试图实现它,并且运用了许多不同的方法,诸如“形式语法”、“遗传算法”、“约束生成” 等等。但是,这些先例的实践所产生的影响迄今已经消失殆尽。其影响力如此黯淡的潜在原因在于缺乏电脑的介入。尤其是对语法形式主义和或基于相似原理的方法体系在设计软件中广泛传播开来的期待已经几乎只剩下一个水中月影。
“Gen_house”运用了“自然语言”进程,主要应对在其自身发展过程中面临的技术难点。“自然语言”设计并研发这一分析、理解和生成佳节又重阳人类自然运用的语言的软件,以便我们最终能够和我们的电脑交谈,就好像我们和另一个人交谈那样。原则和规范的相似性在自然界中比比皆是。这个领域就“仿生学”的角度而言合乎科学的讨论了自然的设计逻辑和在人们的人工制品方面潜在技术运用。一些在仿生学中发现的逻辑能在该软件中通过演算法被再次制造。这些演算法也能在当代已经完成的膜结构计算中,例如Ove Arup Partners,或者斯图加特大学轻质结构研究所,位于苏黎世的瑞士联邦技术研究所的CAAD主人比黄花瘦席,和那些世界上其他任何致力于生成设计领域中的专业研究所(所做的那些实践)。
2 “Gen_House”的开发意图:根本法则和艺术的形态
2.1 “拓扑关系图”和建筑功能
建筑的功能是一个不可或缺的议题,它在建筑设计过程中种发挥了重要的作用。不同的建筑类型有着各异的功能关系;尽管如此,它也能用拓扑关系图来解释(图1,左),此图表达了忽略了建筑面积信息后的所有房间或建筑功能分区之间的关系。基于拓扑关系图,建筑师便能设计出各种不同的建筑平面和建筑空间。

图 1 建筑拓扑关系(左)和它的毗邻矩阵(右)
拓扑关系图整合了行为心理学、建筑需求和诸如土木工程的其他专业领域,以便确保建筑功能设计的平衡。在通常的建筑事务过程中,建筑师能通过他们的工作经验或相关知识组织建筑功能关系,然后某一满足各个房间面积确定、环境肌理、节能等要求的方案必将出炉。建筑师们将会花上比较长的一段时间根据一个复杂的拓扑关系图梳理出建筑平面。复合型建筑平面则能在一张拓扑关系图的基础上生成。
2.2 “Gen_House”的开发意图
空间物体和和他们之间的关系由拓扑关系图来描述。此外,房间的面积属性和他们的关系能用毗邻矩阵智能体来表示(图1,右)。基于以上几点,“Gen_House”的目标在于优化建筑设计中的“解决问题”的过程。更重要的是,人们认为对于未来的建筑设计领域而言,它具有很高的价值。运用我们的软件工具,建筑师便能只花一点时间,根据一张“拓扑关系图”得到各种各样的平面(见图2)。

图 2 工作进程的流程图
拓扑关系图中各个建筑单元之间的关系空间物体和和他们之间的关系由拓扑关系,比如别墅中的“服务用房-厨房”,或银行中的“保卫室-金库”,都能被符号化为抽象节点 “a”和“b”。与此同时,通过计算机程序类型处理操作,赋予“a”和“b”面积信息将把它们转化为智能体。 这种由“拓扑关系图”所描述的理想状态就像是用“Gen_House”来实现的建筑师的理想化目标一样。XML语言可以根据房间和其边缘间的节点来描述毗邻矩阵结构,但是如何找到运用毗邻矩阵的方法,并呈现出它划时代影响力的过程。
3 研究过程
根据自下而上的原理,“Gen_House”力图达到:1)每个带有面积属性的智能体都能找到各自的邻里关系;2)每个矩形作为一个智能体都能找到各自相邻的房间,并向它们移动,以取得一个“目标状态1”或“目标状态2”。
3.1 方法莫道不消魂论和计算法
“目标状态1”: 邻里关系已定义的矩形(智能体) neighbor-defined rectangles
3.1.1
当一个矩形智能体与其明确的相邻体相交,便产生了八种两个矩形智能体相互重叠的情况(图3)。例如,如果矩形智能体_i作为一个主动智能体和矩形1相交,那么

图 3 八种相交的可能性
就能以移动方向这个角度来对各种可能性进行分类,比如交角或者交集部分的宽度/高度比例。
借助于对这些“矩形智能体”的分级,就能简单的算出相交的矩形智能体的宽度和高度,并直接移动至“目标状态1”。我们对邻里关系明确的智能体作出以下几点定义:
□ 主动矩形智能体移动的方向取决于它相对于被动矩形的位置以及它与被动矩形智能体相交部分的宽度、高度的比例。
□ 主动矩形智能体必须正交移动。
□ 两个矩形智能体也必须以一个明确的厚度相互重叠(即墙体的厚度)。
现在主动矩形智能体就能找到所适宜它的移动方向,但却是随机找到的,并移动至 “目标状态1”(见图4)。

图 4 主动矩形智能体移动至它的“目标状态1”:邻里关系明确的智能体
3.1.2 “目标状态2”: 邻里关系未定义的矩形(智能体)
如果我们不希望两个矩形智能体相邻,但它们却又在整个优化过程中重叠在了一起,那么它们必将立即移动直至达到“目标状态2”,如图5所示。它们移动的方向和邻里关系明确的矩形智能体相似,并且它们也以相交矩形智能体的宽度和高度比例做正交的移动。这样一来,规则就确保了所有矩形智能体在移动过程中保持一定距离。

图 5 主动矩形智能体移动至它的“目标状态2”
3.1.3 吸引与排斥
邻里关系明确的智能体的规则如下:
□ 不会相交:矩形智能体_i向矩形1的移动-吸引;
□ 如果相交:直接移动至“目标状态1”-排斥而非吸引;
邻里关系未定义的智能体的规则如下:
□ 不会相交:“往返运动”,并不吸引或排斥;
□ 如果相交:直接移动至“目标状态2”-排斥而非吸引;
排斥和吸引为整个过程提供了一种十分有用的方法,它不仅能让邻里关系已定义的矩形智能体找到和它们毗邻的矩形智能体,也能确保邻里关系未定义的矩形智能体不相交。所有的矩形智能体都能通过运用分别针对邻里关系已定义和未定义的矩形智能体的不同规则去找到适宜它们的位置。
3.2 软件运行的三个阶段
我们对每个智能体施加影响力显著的操作直到它达到我们事先预想的面积。然而,一些诸如“目标状态”、“移动至下一个()”之类的概念和方法仍然用在了试验当中。我们假设有一个建筑师要设计一个公寓,他/她寻找着诸如房间尺度和关联性等室内外变量。室外变量有:日照朝向、气候、选址、文化等等。然后建筑师在“my_function.xml”文件中根据这些变量的价值将其分类,这便是运用我们软件所做的第一步操作。软件运行的步骤分为三个阶段陈述如下:
3.2.1 阶段一:所有智能体展开总体位置布局
代表着智能体的点包括了房间和建设区域,随即出现在一个明确的范围内;智能体的总体位置关系是通过运用类似于弹簧物理特性的“吸引和排斥”原理生成的。
两个智能体之间有两种不同的关系:邻里关系已定义的智能体必须保证相互距离在一定范围内(比如50-200毫米);另一方面,邻里关系未定义的智能体则必须保持更长的相对距离(比如250毫米甚至更长)。随着这样的总体布局的完成,在所有智能体将继续展开的第二阶段中,邻里关系已定义的智能体将会比未定义的那些先开始相交。阶段一的过程如图6-A所示。

图 6 程序的三个阶段
3.2.2 阶段二:在第一阶段总体布局基础上智能体的展开
对各个房间而言,由期望面积值除以临时面积值得到的数据模拟了室内的压力(期望面积值/临时面积值);它使得各个房间开始展开,直至它们获得各自的期望面积值。如果房间和房间相交,房间的四面墙会被轮流检测,至于是生成新的房间还是通过移除一面共有的墙体来取决于房间内部不同的压力状况。如果室内的压力小于室外的,扩张便不会发生;相反的是,房间的墙体将会通过移除共有的墙体扩展开来。通过这样的方法,智能体的墙体扩展并探测是否与其他矩形相交:是否移除墙体取决于室内压力,直到所有房间室内压力值等于“1”,那意味着所有房间都获得了各自的期望面积值。阶段二的过程如图6-B所示。
3.2.3 阶段三:优化最终形态和邻里关系
优化阶段二的结果有两个步骤。首先,进程优化工作使得补丁面积
减少。补丁面积指:所有矩形智能体周边的面积减去矩形智能体的面积所得的面积值,也包括了矩形智能体间的空余面积(图7补丁面积:灰色区域)。

图 7 “补丁面积”(灰色)
备份所有的矩形智能体;随机的轮流改变复制所得的矩形智能体的宽度或长度的数据;与此同时,计算出总体的“补丁面积”。如果所得的“补丁面积”太大,程序将复位不产生任何操作,或者会将该举行的位置赋值给被复制得到的矩形智能体。接下来,鉴于在阶段二中邻里关系已定义的智能体可能会因为它们的互动影响二独立起来,所有的矩形智能体必须被检测是否和它们各自的邻里关系已定义的房间相交,如果没有,就继续移动直至相交为止。这个优化过程确保了“拓扑关系图”的完整性。阶段三的过程如图6-C所示。
4 程序测试
在完成该程序后,我们在一些类型的建筑上对“Gen_House”做了相关测试,例如像别墅、银行和其他的一些小型建筑。程序展现了适宜于实时操作的运行时间;它能在很短时间内生成诸多不同结果。这种由程序生成佳节又重阳人工制造物的方法显著的减少了建筑规划设计领域前期工作阶段对人力资源的需求。
这里有一个有11间房间的小别墅的拓扑关系图,并将其拓扑关系图转译为“my_function.xml”的自由语法。软件能把各种数据储存在程序里,例如面积信息、它的各个房间的相邻智能体、两个相邻房间是否必须共享一扇门,还有高宽比。这么一来,它们都能在程序运转时被调用。从复合的结果中选择三个结果,程序将会为建筑方案执行进一步的步骤(图8:上述结果)。

图 8 三个结果
5 “Gen_House”更进一步的工作
因为“Gen_house”可以导出DXF文件,所以它可以向广泛普及的CAD软件输出(数据),例如AutoCAD和Microsftation等。这么一来一个局部完成的方案,或者其他形式:一份高质量的草案,便能够由“Gen_house”处理。这种工作常常会耗去数天时间,而“Gen_house”却能在几分钟内完成。
我们在ActionScript2.0的平台上改进了计算法,这样,基于其开发源“Macromedia Flash”它
便能在几乎所有平台上运行,包括Apple, Windows, Unix。软件自身只是一个囊括了完成每个特殊任务所需要的所有独立指令的集合体。但是,另一方面,在测试程序的时候,我们发现ActionScript只能实现有限数量的智能体,这边影响了其效率,并制约了关于“Gen_house” 的更进一步研究。多数的建筑类型都要涉及到更有效率的Java或者C++语言,需要在接下来的研究步骤中运用它们;新版本的“Gen_house”现在正在Java平台下研发。其次,我们提出一种程序计算法以生成看似合理的室内空间表皮。建筑师则必须给予其他所有的建筑本质因素关注,例如日照朝向、退边界距离、气候、选址、风向和文化等等,这些都被看作是外在参数。我们的方法更多的关注外在因素的肌理。此外,针对人工制造物而言一个程序化的建模方法已经被提上研发日程,它将减少在3D模型设计领域的人力资源需求。
6 译者结语
该文原文为数字技术与建筑学课程GA-程序生成设计方法部分授课教师的海外发表论文,本人完成了该文中文译文工作。文章所主要论述的“Gen_House”是基于ActionScript脚本语言的一种生成设计的程序软件,在其运行过程和所得成果中可体现出生成设计中来自设计者立场的规则制定和控制,以及结果的多样性和不确定性特点。和常规建筑设计过程最大的不同在于,包括运用“Gen_House”在内的所有计算机辅助生成设计过程重于结果:往往设计的成果不是“目的”只是“结果”,一般不可能实现对空间形态以及其他设计角度变量的预设性或先入为主的追求,即设计者在设计开始直至结束时应该完全尊重客观依据和事实,并摈弃基于个人立场对设计成果的主观控制。设计者基于对设计客体的要求所制定的生成规则及其运用、计算机自动生成过程的随即多样性,以及最后由设计者人工、媒体辅助或两者综合对设计结果的筛选是其对其设计成果的成形最重要的三个步骤。这样的设计过程首要关注的对象自然也不是最终设计形态的成果,而是基于理性客观的科学态度和依据对设计问题的深入研究及解决方案的追求。人工设计过程中所具有的主动性和主观性对问题研究带来的不确定或不准确性再计算机辅助下将得到最合理的控制。这样由人工所主动开发的软件带来的设计客观依据性增强,无疑也是对设计研究中人力资源分配的一次重大调整。人们再如何运用计算机辅助进行建筑或其他领域的设计及研究工作这个问题上也在由过去的单一运用软件提高生产效率,向着对设计软件的性能潜力挖掘、二次开发利用,以及基于Java技术、XML语言、ActionScript等脚本语言、Flash技术等技术平台展开的高效率客观性强的设计辅助研究的趋势转变――计算机辅助设计将会发挥远比现在所能做到或常被我们运用的功能更强大的性能。
7 参考文献范例
B Medjdoub, B Yannou: 2000, Separating Topology and Geometry in Space Planning,
Computer-Aided Design, Volume 32, 39-61.
B Medjdoub, B Yannou: 1998, A topological enumeration heuristics in a constraint-based
space layout planning, Artificial Intelligence in Design '98
Bruno Feijo, Paulo c. Rodacki Gomes, Joao Bento, Sergio Scheer, Renato Cerqueira, PUCRio:
Distributed agents supporting event-driven design processes, Artificial Intelligence
in Design '98, 557-577.
Jess Martin: Procedural House Generation: 2006, A method for dynamically generating floor
plans. http://wwwx.cs.unc.edu/~eve/papers/EVEAuthored/2006-I3D-Martin.pdf, 2006
LiBiao and Schoch Odilo: 2005, Computer Aided Housing Generation with Customized
Generic Software Tools, Proceedings of fifth China urban housing conference, Hong
Kong, PP723-728.
Paul S. Coates AA Dipl.: 2004, some experiments using agent modelling at CECA. GA2004 -
7th GENERATIVE ART CONFERENCE/ EXHIBITION/ PERFORMANCES, Milano
Italy. http://www.generativeart.com/papersGA2004/22.htm.
Sotirios Kotsopoulos, Haldane Liew: 2004, A Studio Exercise in Rule Based Composition,
First International Conference on Design Computing and Cognition.
转载请注明来自:7lee.blogcn.com
译者email
ptimus.prime.7lee@gmail.com