Trying to create graph for room study

I’m trying to create a graph for a room study that has 5 main components:

  • Overall building footprint (either walls or some generated outline)
  • Circulation hallway (specific width and length)
  • Bedroom 1 (# ft x # ft) (known dimensions)
  • Bedroom 2 (# ft x # ft) (known dimensions)
  • Bedroom 3 (# ft x # ft) (known dimensions)
    Yes, it would be nice if someone just provided me a graph to do this, but I wouldn’t learn anything;>
    I would like some input on either some examples to look at or ways of thinking of how to approach this problem. I saw a video posted by @JacobSmall here… that caught my attention, but it does not go into how the graph was created to generate the output of the study.
    I’ve been using Revit for 14 years but brand new to Dynamo…finally diving in to see how I can use its potential!

Hi @ghideg ,

Let me tell you straight away what I recommend, don’t start with Generative Design.
This is, however, my opinion (maybe others have another opinion), since I think that for beginners Generative Design/ Refinery is just simply too complex if you have no Dynamo programming or coding background/ knowledge.

Have you done anything in Dynamo so far, or anything programming related?

If not, I would recommend by creating maybe a parametric building or roof design through Dynamo first. Or maybe a script which places objects along a curve to learn about, for example, list structure.

Also, the Dynamo Dictionary is great! Dynamo Dictionary (

1 Like

+1 to this, but also if you really want to to generative design identify what you want to solve first and how you measure that success. Computers don’t know what a good layout is unless you tell them. If your spaces are of known size then generative design probably isn’t very valuable in such a case.

Take this with a grain of salt any readers, but I feel it would be great to see more literal studies in GD by Autodesk (e.g. spatial map to literal floor plan, the most commonly requested workflow with a huge difficulty factor), or an article we can direct people to as to why a literal study in GD isn’t feasible to undertake if this is not possible for them to create. Heaps of muddy waters to clear up in this field, and I do sometimes feel the waters only got muddier with the GD tool (given GD is a well established field with over 10 years of technology available for it elsewhere).

I have an article here + script to go with it that might help show you that is a similar case to what you’re looking into which might help:

Edit: looks like the primer has a bit more going on these days, some good examples there.

1 Like

Spot on.

I’ve said this before, but incase someone somewhere hasn’t heard it yet, I’ll come out and say it bluntly here:


Yes. I broke out all caps, the bold text AND the rarely seen big text there. It’s that important.

Generative Design is hard. The marketing videos may not make it look that way, but it is. This isn’t unique to the Autodesk toolset either; the Generative tools in other applications are equally complex. For reference, here is the code used to generate a meeting room in Hypar. You could argue that it is easier to leverage that particular code in Hypar, but if you wanted to layout the meeting room in a different style it’s going to take some significant effort.

Toward this end, I have often argued that it’s much harder for most AEC firms to do Generative Design than automating anything in Revit/Civil/whatnot (this includes stuff without an API to do it). This is because design is much more subjective than the processes we automate in Revit/Civil3D/whatnot. I’ll take automation of a task with clear rules over finding the perfect office layout algorithm any day as the former is a scientific problem and easily verifiable. But design is a wicked problem. If this wasn’t the case we’d all build/live in the exact same buildings… cook using the same tools… and they would all be the same color…

So the complexity of the thing you’re solving for is universally understood to be legitimately unsolvable universally. I do not recommend trying to tackle that without having mastered the underlaying tools which it builds upon. if you can’t get Dynamo to draw one bedroom, it’s going to be VERY hard to get 3 bedrooms, a hallway, and the overall footprint drawn in a good way. Instead of trying the hard stuff, take some baby steps.

What follows isn’t really my original idea so I won’t take that credit (hat tip to the entire AEC Generative Design Team), but I’m happy to frame it out as it helps to frame Generative Design in these terms.

A good technical progression for design tools likely goes something like this (with an Autodesk tool appended for references, where available):

  1. Pen and Pencil (Sharpie).
  2. CAD (AutoCAD).
  3. BIM (Revit).
  4. Process Automation (Dynamo).
  5. Optioneering (Generative Design’s “random” option).
  6. Design Optimization (Generative Design’s “optimize” method).
  7. Machine Learning (doesn’t exist as a scalable and functional tool, yet).

Steps 1-3 are manual, with a greater degree of automation added at each step (photocopies at 1, xrefs at 2, add-ins at 3). Steps 5-7 are flavors of generative design, where the automation is added again in increasing steps (layout just happens at step 5; the ‘good’ layouts are brought to the forefront at step 6; the process of asking for layouts is removed at step 7).

You hopefully noticed that I skipped #4. That’s because this is where a big shift in mindset happens, as we transitioned from ‘manually making and recording decisions of what should be built’ to ‘defining the process of making decisions and evaluating the outcomes’ between 3 and 5. You stop asking “where should the entry be?” and documenting that, and start asking “what things want to be near the entry?” and document that. Seems trivial, but it’s quite a step.

It’s also important to note that in no way are you turning over the act of making a decision; The resulting outcome can still be edited, and there isn’t anything preventing a designer from selecting the nth best outcome for your target metric if you like it better (although you may want to consider WHY you like it better so you can get that solution faster next time). All you are doing is removing SOME of the need for manually iterating the lines on paper/bits in the DWG, information in the model, and manually deciding ‘is it better now or did I like it more before?’. Design will always be a process, and the more we accept that the better. But I digress.

To get from 3 to 5:

  • Learn the basic language (be it Dynamo or some other coding language)
  • Learn to generate geometry in said language (keep it simple)
  • Learn to introduce controlled chaos (randomization that isn’t random)
  • Learn how to evaluate results (based on what you want to achieve)
  • Learn to explore outcomes in your generative tool
  • Remember you’re still in control
  • Don’t forget to abstract the problem

Brilliant summary Jacob, I’ll definitely be referring a lot of people to it in future. I get a lot of uni students pursuing a thesis in generative design that need to be shown disclaimers like this before their academic supervisors throw them into the deep end.

1 Like

I’ve had to talk this over a LOT over the years… it was sort of the primary focus of my role before I switched to our consulting org. Still very relevant in the new role, but I get to build more big crazy tools now. :slight_smile:

Sadly ‘academic supervisors throwing them into the deepend’ isn’t unique to this topic. I have yet to see an academic supervisor who knows what they are supervising well enough to provide the guidance; but they aren’t really there to do that either. The focus should be on ‘learning on your own’, via traditional academic means, and by reaching out to experts. So I take less issue with the academic supervisor, and more with the education which failed to read the writing on the walls and provide the students with the foundational knowledge to pursue what they want to specialize in.

Said another way: if during the final 1/3 of your degree program you want to write your thesis on a topic for which you haven’t yet had the chance to take an elective to set the foundation for that, then your school has failed you. That said I may be jaded, as I was in the generation who had to fight for digital models in school. I’ll never forget being told “no architect would ever build a digital model instead of a real, physical, tangible one which you can touch, hold, and explore.”

The irony of using 3 consecutive synonyms wasn’t lost on anyone… but I still had to do the physical model… :frowning:


All of the above responses are excellent. Nice to be told the actual “reality” of the problem instead of it being sugar-coated or marketed to me. For now, I will dive into trying to learn steps 3.1 to 3.4.
I also want to throw out a BIG thank you for being straightforward about what I’m about to get myself into.
I look forward to asking this forum more questions as I explore this more (read: not running away from the daunting challenge!).