Attribute-based modelling for simulation of urban structure Camilo Cruz – Universidad de Chile – Faculty of Architecture and Urbanism camilocruzg@fau.uchile.cl Abstract The main interest of our research is to explore the possibilities of geometrical urban modelling, through the study of the fundamental structure of existing urban environments. This analysis-based approach looks at the minimal constituent elements of the urban structure, searching for conditional relationships between them, in order to build descriptive indicators, such as entropy, that can be used as the main inputs for the simulation of urban patterns and/or the spatial analysis of behavioral urban phenomena. This project focuses on the mathematical and geometrical modeling of urban patterns, as a first step towards the understanding of the subjacent set of rules that articulate cities, in order to incorporate them in the practice of urban design practice. Introduction The work presented in this paper constitutes the first approach in the development of a design framework, aimed to translate into visible form the ideas and decisions that the stakeholders involved in the urban development process make, through the implementation of computational tools, capable of performing analysis and simulation through 3D visualization techniques. The scope of the project is to establish a relation between the morphological characteristics of existing cities, the behaviour of populations and the ideas of different urban stake holders, in order to be able to evaluate and generate plausible new urban scenarios. ‘A city is a relatively large, dense and permanent settlement of socially heterogeneous individuals’ (Wirth 1938). Today, cities concentrate more that 50% of the world’s population, and are becoming more and more complex as time goes by. Therefore, it appears to be a necessity to take a few steps back from the traditional practice of design, as it has been applied to the development of built environments, in order to define a different approach that considers the dynamical character of the processes of urbanization, as well as the capacity of the tools that we have available. There are many initiatives pursuing similar goals, basically categorized in two groups: behavioral simulation, that is the development of operational models capable of dynamically representing urban phenomena, and geometrical modelling, oriented towards the visualization of urban spaces. On one hand, behavioral simulation mostly concentrates on transportation, mobility, location of jobs and households and land value, among other urban topics. The output of such models act as guidelines that inform decision makers about the economic, social or demographic consequences (to mention some of the possibilities) of taking a specific line of action. Geometrical modeling, on the other hand, is strongly oriented towards the generation of 3D graphics and visualization of urban environments, focusing more on the plausibility of the product, than on the relation of the generative process with real-life city production. There are some efforts that sit in between both groups, such as Space Syntax (Hillier et al. 1976), which through a topological approach to the analysis of built space, has been very effective at predicting certain kinds of behaviour. The approach we present in this paper is intended to articulate the analysis and simulation of urban environments, with a strong emphasis on visualization, through the implementation of a set of tools capable of retro feeding each other in an iterative process that should open the possibility of translating abstract ideas, such as intensification or density, into a scenario that can be immediately tested and modified, in order to adapt it to the real needs of the stake holders involved in the process. Related work Traditionally, the emergence and development of cities has been a consequence of the cultural development of a certain society, and as such, urban environments constitute a reflection of a group of people’s social structure and relationship with the territory they inhabit (Mumford 1961). According to the work of Kostof, there are two ways of urbanizing a territory: spontaneous development, produced in time, according to the needs of the moment, or the planned interventions, masterminded and founded in a precise moment in history (Kostof 1993; De Landa 1997). Particular shapes and patterns can be associated with each of these modes of territorial occupation, allowing a trained observer to recognize them, even though in most contemporary cities they don’t exist in isolation from one another (Alexander et al. 1978; Kostof 1991). Those patterns have their origin in ideas and ideals, that are implemented through a decision making process that ends up with a designed plan. It is possible to say then, that there is a gap between those ideas and its materialization, produced by addressing the task through methods that are rooted in a tradition that considers design as a mean to achieve definitive solutions, therefore producing rigid outcomes, instead of allowing flexibility through the consideration of problems as dynamic conditions (Beirão & Duarte 2005). An example of a contemporary approach is the work of Alexander Lehnerer (Lehnerer 2009), who points towards a transformation of the practice of urban design, from traditional design, to the construction of rule structures oriented towards the generation of scenarios. By approaching the planning and urban design problem through the understanding that there is a broad space of solutions to it, instead of one fixed possible outcome dictated by the criteria of the designer in charge, a need for tools that allow us to search for solutions that meet the requirements of a certain idea and assess scenarios, strongly resonates. Some very important efforts have been pushed forward in the field of analysis. The most notable example is the work of Space Syntax (Hillier et al. 1976), which aims towards the understanding of the built environment as a socio-spatial dynamic construct, through the analysis of its topological attributes, by measuring space through depth and convex maps, as the structure that supports interactions (Bafna 2003). Hillier’s approach has proven very effective at anticipating how people interact with architectural space, the fact that it disregards its geometric characteristics leaves room for performing further and more accurate analysis. Beirao and Duarte (Beirão & Duarte 2005) have also worked in urban analysis, through the use of shape grammars (Stiny 1980), in which the methods proposed by Stiny are used to assess urban morphology and then to generate sets of rules for design. In the fields of transportation and regional planning, great body of work has been developed, dedicated to analyze urban functions and attributes from an econometric perspective (Waddell 2002), and at a very large scale (metropolitan areas), mainly focusing on location, and developing urban growth models based on assumptions, disregarding morphological aspects of urban environments. Therefore, the results of such studies constitute guidelines to inform decision makers about possible scenarios, but still leaving room for traditional designers to interpret those ideas into a fixed outcome. Computer scientists on the other hand, have been more effective at developing simulation systems capable of generating three dimensional visuals of urban environments. The work of Parish and Muller (Parish & Müller 2001) represents the foundations for a variety of projects that are being developed in search for planning tools. Their approach is very comprehensive, since it is capable of generating from road maps to buildings, using sequences of subdivisions and extrusions based on data maps provided by the user. Therefore, their proposal disregards the analysis part, leaving a gap between reality and the simulated space. The city simulator developed by Parish and Muller has been used and extended to produce two platforms: the first one is a commercial suite, CityEngine, developed as an equivalent to a BIM software for planners. It is capable of deploying urban elements on a given territory as an action of design, by using the same approach of subdivisions (Schirmer & Kawagishi 2011) that originated in the concept of shape grammars. The second is Synthicity and has a more academic approach. Their aim is to achieve integration between behavioural and geometric urban simulation, in search of relations between both paradigms (Vanegas et al. 2009). This paper represents the starting point of a new project, oriented towards capitalizing on the space of opportunities that appears as a consequence of the approach to design as a mean to unveil and evaluate solutions. We aim to look for the generation and analysis of different scenarios, through the implementation of integrated tools, capable of assessing, simulating and reassessing the scenarios produces, in order to understand if they meet the requirements proposed by the stakeholders that are discussing the future of a certain city. Methodology As it has already been mentioned, the work presented in this paper represents the first steps of a research project aimed towards the construction of a framework for the analysis and simulation of three dimensional urban environments through the use of computational tools. The approach developed is based on two premises: a) it is possible to use geometry and statistics to measure and describe the spatial attributes of cities, and b) it is also possible to use that data to generate new, without a design intervention (understood in a traditional sense). Therefore, it becomes necessary to implement a two part system, capable of performing analysis, in order to measure the attributes of urban environments, and simulation, to validate the analysis and explore the possibilities of the attributes recovered from the analysis, through the generation of new scenarios from the parametric manipulation of input attributes. Since urban environments are highly complex structures, at this stage we propose to address the problem in a fragmented manner. That way it becomes possible to work with a small amount of variables, allowing us to focus in how they interact, in order to model that reality. The physical aspect of cities can be broken down as a collection of architectural objects, sitting on plots that are arranged into blocks organized by a transportation network (building-plot-block-road network). For the purpose of this work, we will be focusing on the analysis and simulation of the transportation network, since it constitutes the higher structural level of the urban construct. However, roads, avenues and other transportation corridors are still very complex elements to model. Therefore we will be only considering the structural character of networks, which means that roads are interpreted as arcs connected to one another, intersections are interpreted as nodes, and they are deployed and distributed over a flat territory. Accordingly, many attributes, such as width of the roads, number of lanes, presence of sidewalks, width of sidewalks, presence of green mass (trees), vertical slope, etc. have not been incorporated to the process, which will allow us to build up a structure of relations between attributes starting at the barebones of the system, with the intention of expanding its scope as the research progresses. The two part system consists of an analysis tool, implemented as a script, written in python for grasshopper (inside Rhinoceros) capable of reading a shape file containing all the streets as separate units that go from one node to another; and a simulation script, that has yet to be written, using the same environment. At this stage we are considering two basic components as our main study objects: arcs and nodes. Arcs Arcs are defined as a line that connects two points. Each one of those two points can represent either an intersection with other arcs, or a cul de sac. Each arc is identified with a unique number that allows us to refer to that particular object within the whole system. The attributes that describe each arc are the coordinates of the points at each end, written as a Cartesian ordered pair in the (x,y) form, the Euclidean distance between those two points and the length of the arc, both expressed in meters, the average mean of the arc, in relation to the x axis (fig. 1), and finally the angles (in degrees) measured at both ends of the arc, from the corresponding point to 1/20th of the length of the arc, in relation to the north of the system (fig. 2a). The angle measurement method proposed allows us to evaluate the relation between connected arcs in the system (fig. 2b). INSERT FIG 1 Caption: Fig. 1 Attributes of an arc. Source: Author’s elaboration. INSERT FIG 2 Caption: Fig. 2a Angle measurement on a regular urban pattern. Fig. 2b Angle measurement on an irregular urban pattern. Source: Author’s elaboration. Nodes A node is defined as a point shared by two or more arcs (fig. 3a). The only exception is that when only two arcs share one particular point, and the relative angle between those arcs, measured at the shared point, is within the range that goes from 160° to 200°, those arcs are considered ‘continuous’, and the node is excluded from the system (fig. 3b). This process also defines the ‘continuity’ attribute that will be addressed when the data analysis is discussed. INSERT FIG 3 Caption: Fig. 3a Regular node. Fig. 3b Exception for a 2 arc node. Source: Author’s elaboration. Due to computation limitations, it is highly inefficient to perform node analysis for a whole city, therefore, the use of analysis areas has been incorporated. Each node is assigned a unique ID within a specific analysis set. The attributes that describe a particular node are location, expressed as a Cartesian ordered pair (x,y), ‘congestion’, defined as the number of arcs that converge on it, ‘orientation’, which is the angle of the arc that is closer to the vector that represents the north direction, the relative angles between the arcs that configure the node, and finally the number of ‘continuous’ pairs of arcs, according to the angle range that has already been mentioned (fig. 4). INSERT FIG 4 Caption: Fig. 4 Attributes of a node. Source: Author’s elaboration. Data collection and Analysis In order to collect the attributes described above, a python script has been developed and implemented into Grasshopper for Rhinoceros 5.0. The program performs a parse through the whole database, in the form of a shape file, and translates it into a list of arcs, identifying endpoints, curves and, assigning an ID number for each one of them. At this point, it is required from the user to define an analysis area, which will determine the elements on which further data collection should be performed. The area selection is done by placing a single point on the map and defining the lengths of the sides (fig. 5), generating a rectangle. INSERT FIG 5 Caption: Fig. 5 Attributes of a node. Source: Author’s elaboration. The arcs captured inside the analysis area are further analyzed, in order to obtain all the aforementioned attributes from them. The output of the data collection process are three ‘comma separated value’ (.csv) files, containing a) general system attributes (table 1), b) node attributes (table 2), c) and the attributes for all the arcs (table 3). INSERT TABLE 1 Caption: Table 1 General attributes. Source: Author’s elaboration. INSERT TABLE 2 Caption: Table 2 Nodes attributes. Source: Author’s elaboration. INSERT TABLE 3 Caption: Table 3 Arcs attributes. Source: Author’s elaboration. After the data collection is finished, a second script, developed in ‘Processing’ (http://www.processing.org) allows us to process and visualize the results, generating a series of calculations and the classification of data into indicators and graphs that describe the analyzed area (fig 6.). INSERT FIG 6 Caption: Fig. 6 Analysis panel. Source: Author’s elaboration. The analysis is performed at three levels, according to the data collection. The first level (fig 6a) shows ‘node density’ (in nodes per hectare), ‘arc density’ (in linear meters of arc per hectare), which allow us to understand the ‘intensity’ of the area. Another important piece of information built within this first level is the average ratio between Euclidean distance and length of each arc, which gives us a rough idea about the general character of the area in terms of morphology. A ratio equal to 1 means that all the arcs are perfectly straight, and as it gets smaller, it is possible to assume that the roads on the map draw curvy lines. The second level corresponds to information about the arcs (fig 6b). This area of the panel shows two numeric elements, the average arc length and the standard deviation for that average, and a histogram that shows the distribution of arc lengths, in increments of 30 meters, within the area of analysis. These pieces of information offer a first approach to the understanding of the regularity of the analyzed pattern, since they allow us to see the whole range of arcs involved in that particular layout. Finally, the third level shows us all the information about the nodes (fig. 6c), separated in three sub areas: the first one addresses the congestion of the nodes, showing the average number of arcs per each node and the standard deviation of that average, alongside with a histogram that illustrates the distribution of node congestion, making evident the existence of cul de sacs and providing a more accurate idea regarding the geometry of the pattern. In this section, a continuity indicator is included, by calculating the number of ‘continuous’ connections occurring at each node, through an average. The second sub-set of information depicts the rotation of the nodes in the system, showing average, standard deviation and a histogram. The third sub-section shows the relative angles between the arcs that configure the nodes, also calculating average, standard deviation and a histogram. The whole idea behind this process is to depict a general image of the network being analyzed, which could allow the user to define, for instance, if it was planned or a spontaneous growth, and to describe its main attributes, in order to replicate them. Simulation After the analysis, and in order to validate it, we have designed a basic simulation algorithm, based on the fundamental components of the transportation network structure and the information obtained through the analysis process. The simulation is proposed as an iterative process that minimizes the number of discretional operations for the user, which are reduced to 2: a) defining a work area, which means to draw a rectangle that sets the limits of the simulation, avoiding an infinite loop; and b) place the initial node, in order to define the starting point for the simulation. After those decisions are made, the simulator draws the first iteration of urban structure by selecting attributes from existing data, obtained in the analysis process, through the use of the Monte Carlo method in a very basic form: The probability of selecting a given attribute is weighted by the probability distribution of that attribute in the collected data (fig. 7). INSERT FIG 7 Caption: Fig. 7 Monte Carlo simulation diagram. Source: Author’s elaboration. The sequence of actions executed by the simulator is as follows: (fig. 8) INSERT FIG 8 Caption: Fig. 8 Simulation Algorithm. Source: Author’s elaboration. Example The whole development of the tools described above has been done using the city of Santiago, Chile, as the main data base, due to the ease of access to .shp files and other pieces of data. The main input for the data collection is a GIS road map of the entire city. The analysis has been performed for a series of areas of the city (fig. 9), selected according to their apparent characteristics, in order to prove if there is a relation between the form observed and the data collected. INSERT FIG 9 Caption: Fig. 9 City map and analysis areas. Source: Author’s elaboration. The results of the analysis are displayed in figure 10. INSERT FIG 10 Caption: Fig. 10 Analysis results. Source: Author’s elaboration. The simulation process has not been automated yet. Therefore, a manual process of simulation has been performed, using the data for one of the areas analyzed, in search for a first validation of the process. The results are illustrated in figure 11. INSERT FIG 11 Caption: Fig. 11 Simulation results. Source: Author’s elaboration. Discussion So far, the development of the project needs to be addressed from two perspectives: a) the construction of the methodology, and b) the validation of the process through the observation of the results. a) As it has been presented in this paper, it is evident that the research project is the starting point of a work in progress, therefore, there are still many issues that need to be solved, clarified or revised. In terms of the methodological approach, the decision of starting to build a system from scratch responds to the need of having complete control over the operations performed by the software, as well as a full understanding of the construction of the tool itself. This is why the Rhinoceros 5.0 has been selected, since it allows the development of python code to perform key operations, by using some of the native software assets to visualize the outcomes. The implementation of the tools so far, has many limitations that should be remedied as the project develops. The most notable and constraining is the use of .shp files as the main data input. The idea is to enable the system to read .xml files, in order to be able to read and use publicly available databases, such as the one provided by Open Street Map (openstreetmap.org). b) From the observation of the results obtained from the case study, some of the flaws of the system, pointed out above, become more evident. It is clear that it is necessary to perform a deeper analysis in order to achieve more accurate results. This can only be performed if the analysis tool gets further developed and an automated simulator gets implemented, so the iterative process can be completed and assessed. However, the possibility of collecting and processing large amounts of geometrical data from simple urban patterns seems to be an auspicious starting point for a project that has still to be developed to its full potential in the upcoming years. Conclusion The main scope of this research project, and specifically of this first stage, is was to lay down the methodological foundations for the development of a large scale system, capable of performing a variety of operations based on data, instead of discretional design decisions. Up to this point, it seems that those foundations are starting to settle down, even though there is a long road ahead. The experimental and theoretical base for the development of this methodological framework have demonstrated that there are many practical applications for such tools, since the focus of the field of urban design is gradually shifting towards an approach that relates strongly to the reality of contemporary cities. References Alexander, C., Ishikawa, S. & Silverstein, M., 1978. A Pattern Language: Towns, Buildings, Construction (Center for Environmental Structure Series), Oxford University Press. Bafna, S., 2003. Space Syntax: A Brief Introduction to Its Logic and Analytical Techniques. Environment & Behavior, 35(1), pp.17–29. Beirão, J. & Duarte, J., 2005. Urban grammars: towards flexible urban design. In Proc. 23rd Int. eCAADe Conf. pp. 491–500. Hillier, B. et al., 1976. Space syntax. Environment and Planning B: Planning and Design, 3(2), pp.147–185. Kostof, S., 1991. The City Shaped, Urban Patterns and Meaning Throughout History, Kostof, S., 1993. The design of cities. Places, (5), pp.85–88. De Landa, M., 1997. A thousand years of nonlinear history, New York: Zone Books. Lehnerer, A., 2009. Grand urban rules, Rotterdam: 010 Publishers. Mumford, L., 1961. The City in History: Its Origins, Its Transformations, and Its Prospects, Harcourt, Brace & World. Available at: http://books.google.com/books?id=q0NNgjY03DkC&pgis=1 [Accessed April 14, 2014]. Parish, Y. & Müller, P., 2001. Procedural modeling of cities. Proceedings of the 28th annual conference on …, (August), pp.12–17. Schirmer, P. & Kawagishi, N., 2011. Using Shape grammars as a rule based approach in urban planning - a report on practice. In S. V. T. Zupancic M. Juvancic & A. Jutraz, eds. Respecting Fragile Places - Proceedings of the 29th Conference on Education in Computer Aided Architectural Design in Europe. pp. 116–124. Stiny, G., 1980. Introduction to shape and shape grammars. Environment and planning B, 7(November), pp.343–351. Vanegas, C. a. et al., 2009. Interactive design of urban spaces using geometrical and behavioral modeling. ACM Transactions on Graphics, 28(5), p.1. Waddell, P., 2002. UrbanSim: Modeling urban development for land use, transportation, and environmental planning. Journal of the American Planning Association. Wirth, L., 1938. Urbanism as a Way of Life. American journal of sociology, 44(1), pp.1–24.