## Workflow (3 units)

**Step 1 - Generative Design Framework**

**Step 1 - Generative Design Framework**

These design decisions are not particularly intimately related to the AEC industry (I hope that’s okay!), but I think they’re interesting design decisions that incorporate the generative design framework well.

**Design Decision 1: Simple Interior Design**

This one is kind of like the reverse of the view obstruction example that we looked at in the module.

*Objective:* Arrange furniture within a set room to maximize unobstructed light entry from the windows

*Model:*

- Design variables
- Location of furniture items in the room:
- Bed
- Desk
- Wardrobe
- Constants:
- # of furniture items in the room
- Size of furniture items in the room
- Room dimensions
- Window placements
- Door placement

*Evaluators: *

- Number of light rays that reach the opposite wall from the windows
- Distance from bed headboard to door
- Distance between furniture items

*Tradeoffs to consider:*

- Maximize distance from head of bed to entry point (for superstitious reasons)
- Minimize distance between furniture items
- Maximize light penetration into room

**Design Decision 2: The Cat Tower Conundrum**

This design decision also has to do with furniture arrangement, but this time we aren’t assessing light entry into the room, but views out of the room.

*Objective: *Place a cat tower in a room to optimize the cat’s view of birds in the trees outside.

*Model: *

- Design variables:
- Location of cat tower:
- Distance from wall 1
- Distance from wall 2
- Height above ground
- Constants:
- Location of desk
- Size of room
- Placement of windows
- Location of trees outside

*Evaluators: *

- Number of unobstructed trees seen
- Distance to hooman
- Cat happiness (a function of location in room)
- Price of cat tower (a function of how tall the tower is — taller is more expensive)

*Tradeoffs to consider:*

- Maximize number of trees/birds visible to cat
- Minimize distance to hooman (cat wants to be close to hooman, and vice versa)
- Maximize cat happiness
- Minimize cat tower price

**Design Decision 3: S’mores Around the Campfire**

I just came back from a camping trip, which inspired this design problem! This is a bit like a variation on the amphitheatre problem.

*Objective: *Arrange seats around a campfire to optimize ease of making s’mores and enjoyment of eating s’mores.

*Model: *

- Design variables:
- Size of first seating circle
- Size of second seating circle
- Number of seats in each ring around campfire
- Constants:
- Location of campfire
- Location of s’mores supplies relative to campfire
- Number of people/seats
- Optimum seating distance for thermal comfort

*Evaluators: *

- Thermal comfort of people in chairs
- Ease of conversation among people seated around campfire
- Ease of access to s’mores supplies
- Ease of grilling s’mores

*Tradeoffs to consider: *

- Maximize thermal comfort (not too close or too far from fire)
- Maximize ease of access to s’mores supplies — minimize the minimum distance from a given chair to the supplies
- Maximize ease of conversation — minimize average distance from each person to every other person

__Step 2 - Generative Design Study__

I’m choosing to proceed with the S’mores problem, since my latest experience with s’mores is fresh in my recent memory. With a generous interpretation, this could be considered an architectural design problem — in architecture, we are frequently thinking about facilitating human interactions and the human experience through our placement of objects in our design!

To expound on the previous problem a bit further, we are assuming that we have a campfire where we are going to roast s’mores. We also have a large stash of s’mores supplies which is heavy and immobile. It has a fixed geographic position relative to the campfire. We also have a set number of people who came on this camping trip, so the number of seats does not change.

We assume that we have too many people to seat comfortably in a single ring around the campfire, so we’re going to place chairs in two rings around the campfire. The size of each ring is variable. Each campfire will also have a variable portion of the campers.

Our objective is to make this the best s’mores making experience possible. This means that the average thermal comfort of every person should be maximized — we don’t want people getting too close to the campfire, or they might burn — but we also don’t want people to freeze if they’re too far from the campfire. We want to make it so that we don’t have to run back and forth between the s’mores supplies and the campfire; so we’d like to minimize just the minimum distance to the supplies — this way, one person can reach over, grab the supplies, and bring them to the rest of the group. Finally, we also want to maximize everyone’s ease of conversation — this just means we want to minimize the average distance between each person and everyone else so that when one person talks, the rest can hear.

__Updated framework (taken from the finished model, slightly different than in Step 1):__

*Objective: *

- What is the best arrangement of 12 seats around a campfire to facilitate s’mores roasting, conversation, and thermal comfort?

*Model: *

- Variables:
- Size of first ring — radius varies from 5 to 25
- Distance from first ring to second ring — varies from 5 to 15
- Number of people in first ring — varies from 0 to 10 (assume we can fit a max of 10 people in any given circle)
- Inside ring rotation — varies from 0 to 360
- Outside ring rotation — varies from 0 to 360
- Constants:
- Ideal distance for thermal comfort — set to 13
- Number of people on camping trip — set to 12
- Location of campfire — at origin
- Location of s’mores supplies box — at (30, 15, 0)

*Evaluators: *

- Thermal discomfort — calculated as a variance score (each seat’s distance from fire minus optimal distance squared and summed)
- Minimum distance to s’mores supplies
- Conversational difficulty score — calculated as the average of the distance of each person to all the other people

*Tradeoffs: *

- Minimize thermal discomfort
- Minimize the minimum distance to supplies
- Minimize the conversational difficulty (i.e. maximize conversational ease)

__Step 3 - Generative Design Study Results__

The Dynamo preview looks like this:

Campfire at the origin, supplies off to the side, and seats distributed around the fire.

My Dynamo graph looks like the following:

Inputs used for the generative study and constants were grouped separately.

None of the geometric construction above for the supplies box and the campfire was really necessary (I really could have just worked with a bunch of different points), but it was really helpful for my visualization of what was going on. I colored everything so it made sense what I was looking at.

The inner circle was constructed with complete variability, the outer circle was dependent on the inner circle. Its radius was set such that it would not be less than that of the inner circle. Likewise, since the number of people on the trip was set, whatever people were not in the first circle were just spilled over into the second circle.

Seats were constructed by first splitting curves by parameter series that were dependent on the number of people in each circle, and then placing a cylinder to represent a seat at each of these curves’ endpoints.

I also offset some points a couple feat above the base of the seat to represent the approximate location of people’s heads.

My three evaluators were mainly calculated with Geometry.DistanceTo functions. To calculate the average distance between people for the conversational ease score, I also had to add an additional step of pruning out the zero distances that were retained from the Cross Product lacing that I specified on the DistanceTo function.

The outputs were then specified for the generative design study.

The generative design output looks initially a bit like this:

Here is each of the outputs graphed against each of the others. First, conversational difficulty graphed against s’mores accessibility, with thermal comfort visualized in the size and color of points:

There’s a decently crisp Pareto front here, since it seems obvious that if the minimum distance to the s’mores is reduced, that one person in the outside ring who is sitting right next to the s’mores supplies is going to be too far to hear everyone talking and participate in the conversation. And vice versa. Thermal discomfort, however, seems to be best minimized at a compromise location, where the outside sitters are not too close, not too far from the s’mores supplies — it’s not the best location for everyone to be able to have a good conversation, but it’s okay.

Here are minimum distance to supplies graphed against thermal discomfort, and conversational ease graphed against thermal discomfort:

I wanted to show these two together because there is an obvious trend in both graphs, but it’s not a strict Pareto frontier. We see in both cases that a number of points can be eliminated in the optimization scheme, since with some arrangements, it is possible to further reduce both x and y variables simultaneously. This is because thermal comfort does not vary linearly with respect to distance from a single point; rather, it has an optimum value at a middle distance from both the supplies box and the campfire, and moving seats either closer to the box *or *closer to the campfire worsens the thermal comfort score.

I’d probably go with this seating arrangement as my final choice — the conversational ease is a bit above average, the access to s’mores is pretty average. But the seating seems the most even and this is the optimal case for minimizing thermal discomfort (probably the most important evaluator to me personally):