I have spent the past month revising this project, and have come to the conclusion: I suck at parametric design. I set off with intentions of making the entire model parametric, but four weeks later I am left with a shambolic set of simi-parametric tools linked together with long manual processes and discarded ambition for the complex parts of the project.
Everything that I wanted to do with a parametric model could be achieved with a parametric model; this claim is the origin of the rhetoric for the flexibility of parametric models. In practice however, I did very little of the project with a parametric model, I did a bit of the project manually and I modified the the rest of the project so it was achievable. The result is a design that is distorted towards the strengths and away from the weaknesses of parametric tools. An example of this is the curves along the surface (illustrated below). The the curves are an explicit list of points that are wrapped onto the surface with a UV curve passed between them. Most of the time this curve looks straight, but at the ends of the surface (shown in the illustration in red) the UV curve starts to bend. The solution is to use a geodesic curve (the green one), but this breaks the relationships to the other curves. Given enough time, it would be possible to use straight geodesic curves but, given how long it would take, it is far easier to use UV curves and modify the design to allow the bend of the curve.
Bent UV curve shown in red, straight geodesic shown in green
It is a trade off: will the 12 hours I spend fixing the parametric model be noticeable in the final design. And in some cases: is it faster to get the parametric model to conform to the real world, or is it faster to get the real world to conform to the parametric model. People mistakenly associate this decision with choice and blame the architect for being a luddite. But the decision is loaded and biases the design towards things that are easy to do parametrically and away from things that are hard to do parametrically. In this way, just like any other CAD tool, parametric designs can be read as being in the language of parametricisim – dare I quote Schumacher – biased towards the easy solutions.
So parametric flexibility is more than being able to do something, it is the ability to actually do it. For me, what I am able to do and what I actually do is quite different. I suspect the difficulty in doing some of these tasks is related using mathematics as the intermediate language between designer and parametric tool, but that is a topic for another post. Have you encountered a similar phenomena in your models?
While over in Copenhagen I was able to attend a PhD symposium held between CITA, SIAL and the Bartlett. There was 17 PhD students presenting their research (full list of speakers and topics), and two trends stuck:
New materialism
During a question and answer session, Mark Burry pointed out that materials are back in the zeitgeist. I suspect this is probably because materials and construction techniques are rapidly being discovered by material scientists, giving architects a much broader range of materials to consider than steel, concrete and glass. To a lesser extent architects are also starting to drive the development of new materials (although this is still rare). This is unfamiliar territory for architects and much of the research is looking at how to bring the material scientist into the project team and how to design and compute with these new materials.
My favorite example is a project by Sarat Babu from the Bartlett called Microkinetics. In the video above he has printed two types of rubber to make a member. In the first half of the video all the rubber is in strands and it behaves as you would expect: as it stretches it also becomes thinner. In the second half of the video, the rubber is printed in a bow-tie shape. As the member stretches it also becomes thicker. Babu had other examples of this process being used to make things like a cylindrical rubber jug, which when picked up forms a spout. Unfortunately, I suspect due to commercial interest in his work, all the videos of this have been taken down.
The mash-up
Software mash-up was a more subtle trend at the symposium. The keywords were: “I linked software X with software Y.” This falls into a much larger trend in software engineering of script kiddies, web2.0, SDK’s and the App store. For architecture there are probably two major implications:
The first is that it is the end of CAD-as-god, or the belief that a single tool can solve all problems. Hopefully this is also the end of all the zealots who flood forums with stories about how Autocad or Revit or Archicad are better than Autocad or Revit or Archicad. Possibly it is also the end of employment for people who can only use Autocad or Revit or Archicad.
The second is that interoperability becomes a lot more important than ability. I know there are people like Arup, and I imagine other big offices, are looking at this problem, but I am not convinced that it will be solved in a top-down manner.
In the mash-up culture we are also seeing software offices shrink to the size of one person. A single person like Daniel Piker (who makes Kangaroo physics for Grasshopper) is able focus on solving one problem well, rather than building an entire CAD package. I hope that the App Store model extends to architecture, allowing a single person to make a living solving a niche problem exceptionally well, and giving us a mash-up of many well fitting solutions to a problem rather than one ill-fitting CAD package.
I have just returned from the CITA workshop in Copenhagen. One of the problems we were tackling was how to distribute elements onto a unevenly doublely curved surface. I decided to explore whether the surface could be generated from elements of the same size. The most natural solution is to draw the elements in two dimensions and try to wrap the two dimensional surface onto the three dimensional shape. However the process of wrapping a two dimensional surface onto a three dimensional shape creates so much distortion that the original properties of the surface are lost: the elements become to long or too short. To me it feels like we hit the boundary of most CAD packages, which allow you to work in Cartesian space, and provide tools to wrap/embed Cartesian space into other spaces, but they are not set up to allow you to work in the original non-Cartesian space. For a while it seemed like the easiest solution would be to lazer cut the timber to fit the computer model rather than to correct the computer model. It is interesting to witness such a high-end workshop, full of nerds, struggling to overcome the limitations of CAD and in many ways giving the design over to the limitions of the software – or at-least designing within the vocabulary of the software.
The solution I came up with to this problem was to use a swarming algorithm on the surface (seen in the video above). By creating a number of random points on the surface, and then iteratively pushing these points away from each-other until they were the desired distance apart, it was possible to generate the surface from elements of the same size. I uploaded the code to do this onto openprocessing here. In the video above you will also notice that there is a Grasshopper model on the right. The processing code saves a text file of the elements and, in real time, Grasshopper turns this text file into a Rhino model that it analyses. Due to some of the code inside that model I can not release it, but you should be able to create your own version pretty fast using the Read File element in Grasshopper.
Another project from the workshop is Anders Deleuran’s exploration of the accuracy of lightweight simulation (video above). In this case he is simulating a reciprocal joint held with the bending of timber. Both of these projects were discussed by Mark Burry at the AD magazine’s 80th Birthday durring his lecture on ‘The future of architecture.’ The lectures were filmed but I have yet to find them online.
I have joined Twitter @nzarchitecture as a way to share the links that do not quite warrant a 1000 word a blog post here. Initially I was resistant to the idea that 140 characters could add anything other than noise to the discourse, however, from inbound links to this blog, I have come to see the aggregate effect of the conversation on Twitter. My first tweet is this video, by Martin Tamke and Jacob Riiber, of self organising structures generated in Processing at CITA:
This segways into my other announcement today: the blog may be a little quiet of the next 6 weeks, not because I am lost in the world of Twitter, but because I am travelling 16,000 Km to CITA, to attend/teach a workshop with Martin and Jacob as well as Mette Thomsen and Mark Burry. So if you are in either Twitter or Copenhagen say hi, and if you have any suggestions of people to follow on Twitter or places to see in Copenhagen/Germany/France or Spain, let me know.
Just finished a tool to visualise directed graphs in processing. It uses the bezier curve & box combination from Grasshopper, but since the visualisation is not a development tool, the nodes the free to float into place. I created it to expose the underlying schema of a parametric tool we are developing but it could be modified to display any directed graph /& relational graph.
I have recently been playing around with creating plugins in Rhino and have been amazed at how accommodating it is to developers. Much like Apple, Facebook and Twitter, by making it easy for developers to access their system, developers have contributed a number of apps that extend the functionality Rhino. Grasshopper recently allowed developers to write plugins and the first round of new plugins/animals all look pretty exciting:
Rabbit generates cellular automata systems, L-systems and LOGO. I found the components a bit hard to understand, but there are some really impressive demo definitions included in the download.
Kangaroo
Tectonics has long been touted as a way to recover from our post-modern hangover. However tectonics requires cumbersome and complex equations, which makes it difficult to use in the early generative stage of a project (see Digital Tectonics). Kangaroo appears to remove these barriers and makes it easy to integrate tectonics as a design driver. Kangaroo is currently still in development, but to me this looks like the realisation of the long discussed digital tectonics.
Firefly links into Arduino allowing you to use sensors to drive parametric models. And as we saw in Smart Geometry 2010 this opens up a range of interesting developments…
Smart Geometry 2010 / ubiMash:
This is one of the workshops from the Smart Geometry 2010 in Barcelona. All the work is based on an open source framework called Ubimash, which was released just prior to Smart Geometry 2010. Ubimash links Generative Components with Arduino, Wii and other physical inputs. A few years ago this making project like this would have been a thesis, but with libraries like Ubimash these projects were all done in just four days.
Generative Components is now free:
Also coming out of Smart Geometry, Bentley lowered the price on Generative Components to free and released a version that runs without Microstation. I hope this is not an indication that Bentley has given up on GC, which has been floundering since Robert Aish’s departure. Competing on price doesn’t seem innovative enough to stay in the market; I wish they were competing on features. Anyway I am sure no one is complaining about picking up a free copy of Generative Components here
Edit 8th July, 2010: The earlier version of this post incorrectly stated that Generative Components runs without Microstation. Thank you to Mark at parametricconcepts.com for catching this error. Edit 25th August, 2010: Turns out Generative Components does run without Microstation, just Bentley Technical support were not aware of it back in July. Thanks again to Mark for keeping upto date on this one.
The Voussoir Cloud Installation by IwamotoScott Architecture carries on Gaudí and Otto’s tradition of using hanging chain models as form finding tools.
A chain will naturally hang in pure tension, and inverting this shape produces an arch in pure compression. Producing a design in compression without any torsion or shear forces allowed Gaudí to build without flying buttresses, and the Voussoir Cloud Installation to be paper thin. In the Voussoir Cloud Installation, the form was found by specifying the points where the structure was to touch the ground and then, with software developed by Buro Happold, hanging virtual chains from these points, which define the edges of the surfaces. The shape of the curve is particular to the weight of the material. In this case the very thin timber veneer produces much flatter curves than if it was made out of concrete. The hanging chain model asks the material, almost in Kahn’s words, “what it wants to be” and the material falls into place. You can play with a similar tool called CADenary developed by Axel Killian and released free of charge.
WPA2 : Local Code / Real Estates is a project by Nicholas de Monchaux that utilises GIS data to identify abandoned sites, and Grasshopper to design a custom urban space for each site. 150 sites in total. With that many designs, even easy tasks like making a render becomes difficult: turning layers on an off in Grasshopper, sending each version to Illustrator and saving the image to become a single frame in the movie. But while the project shows of some dexterous file management skills, I still have some reservations about the architectural worth of this project:
My first concern is with what constitutes site in this project. Like in many digital projects, site has been reduced to the quantifiable parameters: solar incidence, wind direction, demographics and geometric data. This data driven, hyper-local approach leads to an erasure of context, as described by Francesca Hughes in AD 79:
“‘Context’ in the culture of parametric production returns, or is reinstalled, already digitalised, and edited to the bone: typically as a set of three to five measurable, and thus necessarily quantitative, physical parameters (latitude, wind direction, and typical rush-hour capacity, say). Once optimised, these parameters effectively ‘contextualise’ the system or proposal, argue that it is inthe right place at the right time. That is, context returns as a highly abstracted, carefully selected alibi. Architects have always, necessarily, artfully reduced context to harness it as a generator and justifier of action. This is nothing new.What is new is that with parametric systems this reductive process from the outset excludes any indeterminate or qualitative content –ironically such parameters are usually the more site-specific ones.”
With some much of the context excluded in Local Code : Real Estates, it is worth considering how responsive the designs actually are. Whilst they are geometrically unique, they have a universal, almost modernist, unity to them that denies context. Even in the renders context has been reduced to data – white geometric planes – with no indication of the inhabitants reacting to the lee wind planting necessitated by the data to reduce their energy consumption.
My second concern is the way the design is produced in Grasshopper. The code seems to use a rule based algorithm: place trees on the south side if there is no wind. The problem with this approach is that design can not be expressed in a formal logic. As Manual De Landa puts it in his 1993 essay “Virtual Environments and the Emergence of Synthetic Reason”:
“[early artificial intelligence] researchers explicitly put symbols (labels, rules, recipes) and symbol-manipulating skills into the computer. When it was realized that logic alone was not enough to manipulate these symbols in a significantly “intelligent” way, they began to extract the rules of thumb, tricks of the trade and other non-formal heuristic knowledge from human experts, and put these into the machine but also as fully formed symbolic structures. ”
In this situation, the computer un-intelligently executes rules on behalf of the architect who takes little responsibility for the results. It is a flawed method that finds neither the optimum or the apt-imum.
Both of these concerns might be answered with a “wait for the next revision,” a reply that has been given by various architects for decades. Sure, now with Moore’s Law we can produce hundreds more designs, much faster, but the fundamental problems of digital architecture remain: site is just data and design is just rules. I wish I could remember who asked “are we there yet?” but I suspect there have been quite a few. Local Code : Real Estates demonstrates that once we get there this technology will scale easily, but Local Code : Real Estates makes no progress towards getting us there.
I have a few details of this project wrong, so thank you to Nicholas de Monchaux for emailing me with a few further details. These designs are not intended to be built, like I assumed in my ‘First Concern,’ but rather act as an armature for public discussion. At about 3:30 minutes into the first video you can see people using the Berkeley Opinion software to comment on their local design. This of course brings up issues of public design, which have been endlessly discussed elsewhere. However what I find exciting about this proposal is how closely it relates to the Wikipedia bots, which were originally used to produce articles about cities from GIS and census data (that looked like this) these machine created entries could then be edited by individuals in the community to make them more relevant. Like the Wikipedia bots, I wonder if there is potential to open up a GIS API and let anyone develop a bot to populate these vacant sites. The bots would each design for the thousands of sites and the citizens would be free to pick and choose parts of each design that they liked. Such a system would not free us from the problem, identified by Francesca Hughes, of designing from data but the system might inspire us to move beyond the currently employed rule based design. (A bit like the Net Flicks Prize)
Shot in 1962, this video of Ivan Sutherland’s Sketchpad is almost 50 years old. It shows Sutherland (just 25 year old) demoing his PhD project, a project that wins him the Turner prize (the Nobel prize of computer science). The program is running on the TX-2 – the last computer in America ‘to have its own roof’ (see the TX2 instruction manuals). There are a number of remarkable things about sketchpad:
It is the first use of a Graphical User Interface and the first CAD program. Prior to Sketchpad computers were just switches, lights and punch cards.
It is the first use of Object Oriented code. This is a coding paradigm which forms the basis of many modern programming languages.
It is an early example of a program not running as a batch. In batch mode there is no interaction, you put in the inputs and it would give you the outputs, in 1962, being able to interact in real time with the computer is quite remarkable.
For me the most amazing part is the way Sutherland constrains the lines. I thought seeing this done recently in Digital Project (2009, $30,0000 per licence) was cool, but to see Sutherland select a series of lines on different angles and morph them until they are orthogonal is pretty mind blowing. Using todays computer it would still be non-trivial to get the lines to morph into the right place, much less do it in real time on a computer that requires its own room. This feature makes Sketchpad not only the first CAD program, but also the first parametric CAD program. I also think the way objects can be referenced into the drawing is cleaver, and even Digital Project struggles to make instances of object like Sketchpad does.
Graphemes is a spring based design tool developed by Sawapan. The interface – like the program – is unconventional, playful and esoteric. Steve Jobs would have a fit seeing something so non-standard running on an Apple computer, thankfully it only runs on Windows. Despite its unconventional nature, it is quite easy to grasp with a wee bit of playing, and judging by the videos you too can become a Graphemes ninja.
Essentially Graphemes allows the manipulation of a spring based topology that seeks equilibrium in real time. Analysis graphs can also be overlaid – showing bending moments and stress in the structure. Designing a spring based structure is probably of little utility (unless you are designing a space station) but what Graphemes hints at is a future where the design/analysis cycle has been compressed into a just a design cycle. This allows the parametric model to have a dynamic topology and embedded logic. An unconventional design paradigm wrapped in an equally unconventional interface.
Graphemes is free to download from the Sawapan website (click on Graphemes to the left).