CORE studio is pleased to announce the release of TT Toolbox version 1.9, our suite of free and open source plugins for Grasshopper, which is available on Food4Rhino.
Similar to our January 2017 release, the main attraction in this release is Colibri. Many new features have been added to make it easier to turn your Grasshopper definition into a Design Explorer – compatible design space. The big Colibri updates are:
Iterator component improved – transitioned to dynamic inputs, sliders / drop-downs / panels all supported as inputs, context menu to specify how to deal with warnings, selection broken out into separate component, ‘Fly’ button included as part of component UI – no more need for a button.
Selection component added – allows for more control over partial design space runs; users can specify granularity along any input vector, or can choose to run only a part of the design space (only run the first 100 iterations, for example), or both.
Parameter component improved – transitioned to dynamic inputs, generalized so that the component can be used to describe either design inputs or design performance data for the Aggregator to consume.
Image Setting component improved – multiple views supported, ability to provide custom file names added (for experts only!).
Aggregator component improved – context menu added to specify when / if data should be overwritten, defense added to check for Write? == true when Colibri is told to fly, inputs naming revised to distinguish between design inputs (Genome) and design performance data (Phenome), 3DObjects input added allowing for super-simple Spectacles data generation.
Spectacles Integration – The Spectacles exporter was extended to make it easier to work with Colibri; now all Spectacles data can be compiled by the Aggregator by funneling it through the Spectacles_Colibri component.
Also noteworthy: sometime in the past few months we crossed the 20,000 download mark on Food4Rhino! Thanks to all of the Grasshopper users who have downloaded TT Toolbox for their interest and curiosity, and above all for their feedback and encouragement. Keep up the good work, folks! We’ll try to do the same ;]
Following up on our Design Explorer Announcement post last month, this second post in our Design Explorer series will explore the idea of the design space by looking at a small set of historical precedents and contemporary like-minded projects. By describing the natural history of this family of concepts, we can develop a better sense of how the idea of design space is moving away from the fringes and into the mainstream.
The timeline below is an attempt to position Design Explorer as part of a broader trend towards design-space-thinking in the AEC technology community. It is by no means meant to be exhaustive, and I’m sure there is a ton of work out there of which I am unaware that could further describe the natural history of the design space. It is a curated timeline from the author’s point of view.
(1941) Borges; Library of Babel. I came across this work in Kevin Kelly’s Out of Control. Borges writes about a vast library containing all possible [410-page, specifically formatted] books. Although most books are filled with utter gibberish, the library contains every book ever written. Kevin Kelly talks about visiting this [fictional] library while he is writing Out of Control and deciding that instead of finishing the book himself, that he will develop a method of searching the library for the already-complete copy of his book. This idea of searching – the method, as he calls it – is a vivid example of design space navigation.
(1979)Hofstadter; Gödel, Escher, Bach. We could draw on a number of examples from this amazing book, but I think the high level survey is more meaningful. At various points, Hofstadter talks about protein folding space, the space of all meaningful mathematical expressions, the space of all possible fugue variations given any starting melody, etc. It turns out that mathematics has been concerned with these questions much longer than we have in AEC! No surprises there, I suppose.
(1986) Dawkins; The Blind Watchmaker. In the third chapter of The Blind Watchmaker, Dawkins expounds about a computer program he developed called Biomorph Land. The program allows the user to drive the evolution of 2D branching structures over a series of generations. For each generation, the user picks one figure that is most attractive, and in the next generation a set of new descendant figures are drawn. There are about 500 billion biomorphs in the nine-dimensional space that Dawkins created, and the only way to find any one of them was to evolve towards it from a single, primitive parent.
Dawkins writes beautifully about the first night he got the program to run – staying up all night evolving bats, insects, and airplanes – and how he neglected to write a method of saving the biomorphs he encountered. He saw amazing forms during his first night exploring in biomorph land that were effectively lost – without saving their genomes, it was practically impossible to find them again within the vast design space. Aside from the amazing writing about design space navigation, he also developed some incredibly interesting visualization techniques, such as cutting a section through the design space using a hyperplane.
Partial high-dimensional cross section of Biomorph Land (Source)
(Early 2000s) Scripting Architecture. Rhinoscript and Generative Components open up a new working methodology for architecture and engineering practices. Instead of resorting to ‘click and die’ for design iteration, designers begin to automate the authorship of geometry in their CAD platforms, and to define parametric relationships in their models. Generating new iterations is as simple as changing input parameters and re-running the script – design spaces begin to take shape.
(2009 – Present) Rise of the Grasshopper. Grasshopper exposes a huge audience of architects, engineers and designers to computational and algorithmic design. Design spaces proliferate. Galapagos enables optimization workflows, and for the first time gives users a visual representation of the design spaces that their definitions describe. The idea of the design space starts to take root in the AEC mainstream.
(2011) Design space navigation / publication research at PAE. Right around the same time as the rise of the Grasshopper, online ‘configurators’ started to show up (including early versions of Nervous System’s work in the browser) … which begged the question: if BMW, Nike and Nervous System can publish design spaces, why can’t we? I worked on a research project called Igloo in 2011 at the Stevens Institute of Technology Product Architecture Lab along with Matthew Naugle, Nicholas Faust, David Pysch, Nick Mykulak, and Mike Cosentino, which allowed design spaces generated with Solidworks or Grasshopper to be published and navigated on the web.
(2012 – Present) GBS parametric runs. Autodesk releases functionality within Green Building Studio that lets users to upload a single design iteration [from Revit and Vasari] to a web application that would perform a series of parametric energy analysis runs automatically. Using the results of all of these analyses, GBS returns a sensitivity analysis visualization, allowing users to see which design parameters matter the most for potential for energy savings. It’s a specialized case, but the most interesting component is the use of a horizontally scaling web application to generate a design space (more on that below…). The CORE studio worked with the Dynamo and GBS teams at Autodesk to develop Energy Analysis for Dynamo, an open source package for Dynamo which allowed users to set up their own parametric runs, and to include GBS results in optimization workflows.
(May 2014) Pollination. A team of hackers developed Pollination at the 2014 AEC Technology Hackathon: an open source tool for managing (and dynamically visualizing the results of) distributed, parametric energy analysis runs using Grasshopper, Honeybee, and Amazon Web Services (to run the whole-building energy analyses on the cloud). This is another early example of a web application generating a design space, but the most interesting development was the use of an interactive parallel coordinates plot to display the results of the analyses in exhaustive detail. The team quickly realized that the UI used to display results could be used to visualize and navigate within any multi-dimensional data set. This insight was the kernel for the Design Explorer.
(May 2015) Design Explorer v1. Design Explorer was CORE studio’s first attempt to generalize and extend the ideas that came out of Pollination. We set out to build a single page web application that lets users navigate within multidimensional design spaces, and that gives them graphical representations of both the design space itself and of the individuals within that space. The parallel coordinates plot from pollination was used to visualize and navigate within the design space, and images and/or Spectacles models were used to represent individual design iterations. Navigation using sliders is also available in Design Explorer (it’s just sort of hidden over on the left!). CORE studio released this project under an open source license, in hopes that the burgeoning community of design-space researchers might help to extend the research. Design Explorer was first presented by former CORE studio Applications Developer Mostapha Sadeghipour Roudsari at the 2015 AEC Technology Symposium (link to Mostapha’s presentation), and a modified version was used to present the results of some early machine learning research by CORE studio Engineer Dan Reynolds at the same event (link to Dan’s presentation).
Design Explorer slider mode
Design Explorer parallel coordinates mode
(March 2016)Speckle beta release.Speckle is making some really impressive headway – the CORE studio thinks it’s super exciting! The project aims to allow users to share, display, and explore parametric models in a web browser. Their beta release allows users to export design spaces from Grasshopper and to share those spaces on beta.speckle.xyz. Both slider and parallel coordinates modes are available. Perhaps sweetest of all, the project is open source under the GPLv2 license! They’ve also got a new version cooking that seems to be exploring a streaming model (as opposed to exporting the whole design space).
(July 2016)Autodesk Project Fractal alpha release. Another super impressive project from our friends over at Autodesk, Project Fractal. Like Design Explorer and Speckle, sliders and a parallel coordinate plot are used to navigate within a design space that was authored in Dynamo Studio. However instead of exporting entire design spaces, Fractal runs Dynamo graphs on the cloud in real time, and stores computed iterations in a database. This is another example of using a horizontally-scaling web application to generate design spaces. This project seems to have branched out of an earlier Autodesk labs project called Akaba – you can read all about both here: http://thebuildinglab.info/.
Fractal Demo Video
(October 2016)Design Explorer v2. While he was studying with Mostapha Sadeghipour Roudsari at the University of Pennsylvania in the Spring of 2016, Mingbo Peng forked Design Explorer and made a number of improvements. Most notably, he made publication much easier by linking up Google Drive to host [Design Explorer] content and data – this was an absolute nightmare in v1!
Design Explorer pulling data from Google Drive
In his 2011 book Where Good Ideas Come From, Steven Johnson writes about simultaneous invention. It seems to me that we are in the midst of such a period of simultaneous innovation focused on design space navigation. In other words, it’s not a surprise that we aren’t the only group doing R&D along this vector. Since our authoring tools have evolved to let us iterate at an unprecedented scale and speed, we are now in dire need of a new generation of tools that will allow us to navigate within the vast libraries we build; tools that help us find a few good solutions in enormous possibility spaces.
Stay tuned for our final post in this series, which will focus on how Design Explorer is being used in practice.
The Brute Force component, now included in TT Toolbox (release 1.4 and newer), provides an alternative means of running optimization routines in your Grasshopper workflows. Optimization is used loosely here, as this tool is not using an algorithm to find the most optimal combination of sliders, but instead it solves ALL possible combinations of sliders that are connected to the input S. This component and method help to provide a means of looking at design space where you either want to see all possible permutations, or the total possible number of iterations is not so large that it warrants running the study in Galapagos or another optimization algorithm.
Brute Force Grasshopper setup, with Listener component (all TT Toolbox components shown in orange).
We have found this tool to work wonderfully when synced with our Galapagos Listener component (possibly hinting at a name change there). The setup above allows you to run through all of the possible combinations of sliders “u” and “v” while also recording the corresponding numeric fitness value. The Listener component will store these values after the Brute Force component is done solving so that you may then use those values to determine the good, bad and everything in between.
Brute Force Grasshopper setup utilizing the Write to Excel component (all TT Toolbox components shown in orange).
Taking that one step further, you may then write those values to Excel. This gives you a reliable location to save the variable combinations and their fitness values. These values may then be brought back into Grasshopper for sorting based on fitness values enabling you to reconstruct your definition to view not only the single best performing set of input variables, but also letting you reconstruct the top 5, 10, 15 or more.
Being able to investigate a number of strong performers opens the door to seeing a variety of good options, which may have merit outside of what was solved in the fitness function. Here is a short video of this workflow in action solving a façade paneling system for the fewest total number of panels, where all fit within a 5ft x 10ft sheet.
The latest round of research funding has been awarded by Thornton Tomasetti’s R&D group, and staffers in several offices and practices are hard at work on bringing these new ideas to life. Projects underway include several sustainability analysis tools, a computer language training program for technical staff and a study on the implications of performance-based wind engineering.
These projects were based on proposals submitted to Thornton Tomasetti’s Innovation Suggestion Box, which was launched last year. Funding for these research proposals allows Thornton Tomasetti employees to spend time outside of billable projects to develop unique ideas to improve operations across the firm. In a sense, the R&D initiative gives us a little breathing room to think big.
Anyone in the firm can propose a research project, with submissions collected approximately once every quarter. In addition to getting resources allocated for their projects, employees whose proposals are selected also receive an iPad mini.
Illuminance study for the Hudson Yards Culture Shed.
We are excited to announce that our own Integration Applications Developer Mostapha Roudsari has recently released Honeybee, his second plugin for environmental analysis, as well as a new version of Ladybug!
Honeybee is an ongoing, open source project to connect Grasshopper with validated daylighting and energy simulation engines, such as RADIANCE, Daysim, EnergyPlus and OpenStudio. The current version of Honeybee includes 64 components that enable users to prepare and run a variety of daylight analyses.
We are excited to have released a new version of our TT Toolbox plugin for Grasshopper. The new tool features interoperabilty with Google Spreadsheets. That means that you can now read and write to Google spreadsheets. You could for example set up interaction between multiple computers now. Or control a parametic model from your smart phone, as shown in the video below:
We also added a ‘brute force solver’ tool that allows you to pre-process all possible combinations of variables in series, which comes in handy if you need to process a large set of options at once.
Grasshopper-designed roof of the Al Menna Sports Complex in Iraq.
The smart structural interpreter (ssi) tools for Grasshopper changed the way that we engineers look at modeling. We first tested the ssi plugin in 2010, when we were searching for the fastest possible way to design a stadium roof structure with SAP. Our challenge was to submit a detailed set of drawings for a competition proposal for the fabric roof system of the Al Menaa Sports Complex in Iraq.
We spent three days at the offices of 360 Architects, sitting together to generate a parametric model of the roof that would allow us to study different design scenarios, both from an architectural and structural perspective. On day four, we used the ssiSAP interpreter to assign structural material properties to our wireframe geometry, and then to ‘bake’ this into SAP to run analyses. The analysis in SAP is set up relatively quickly for a project such as this – the bulk of the time spent would have been in creating the geometry. As such, typically in the competition phase of a project, engineers would not be able to run multiple analyses, which might help to understand and improve the design.