The Problem to Be Solved
Imagine a busy civil engineer who needs to help a team of city planners quickly visualize public bench designs available for different parts of their city. It could be refreshed seating for a landmark library, a new children's park on the waterfront, or a lounge inside a convention center. The issue facing the civil engineer is figuring out what is the best possible bench design for a given location. I would approach this problem with system thinking. Treat the factors of the design decision as the inputs of a function, gather the data on all previous decisions, and then build a design recommendation model to predict (or at least recommend) a good design as an output.
I've noticed dozens of different benches around Seattle, and compared them to designs I've seen in magazines. This led to me wondering why certain bench designs were chosen for certain places. For example, the Seattle Public Library shown above was designed by famous architect Rem Koolhaas. When I saw the uninviting, flat design of the metal benches outside of the entrance, vandalized and seemingly unused by library-goers, I wondered why.
Ideation & Experimentation
I organized my benches as a table, and assigned various attributes and scores to each. There's an ergonomic score (a determination of if the bench is comfortably shaped or not), its size, its surroundings, and what material it's made of, among other things. I observed and scored 16 unique benches before I started to experiment with my design recommendation model. The dataset can always grow.
Above is a snippet of code representing part of the algorithm to score benches. Some of the attributes are numerical values, some are binary (like true or false), and some are a bit more open-ended text descriptions. The attributes are intended to be exclusive, but they are clearly correlated, so values from one can influence values of others. In the prototype design recommendation model, if the city planners want durability in a bench design, then the durability input would influence their choice of material.
Prototyping
The code snippet above represents the final model input layer. Numeric, categorical and open-ended attributes are processed into signals using data science techniques. The dataset of observations of benches around the city is used to make comparisons of similarity. My civil engineer persona doesn't expect the city planners who are making the decisions to interface directly with code. Instead, they can simply type the description of the bench; for example "I want a comfortable, durable bench for the new park at the watefront". The final part of the design recommendation model converts the words in the given description to my attributes and values where possible.
Analysis Based Image Generation Prompt
{
"PROMPT": "A photorealistic product design render of a public bench",
"CONTEXT": {
"setting": "outdoor park",
"install": "permanently installed"
},
"MATERIALS": "Aluminum — lightweight anodized aluminum",
"COLOR PALETTE": ["Green", "Blue"],
"SIZE": {
"length": "150 cm",
"width": "45 cm",
"height": "45 cm"
},
"FUNCTIONAL REQUIREMENTS": [
"comfortable with back support",
"durable",
"eco-friendly",
"low maintenance",
"rounded edges — non-toxic finishes"
],
"DESIGN LANGUAGE": {
"style": "playful, child-friendly",
"edges": "rounded — no sharp corners",
"colour": "bold — expressive",
"form": "expressive curves, modular coloured sections"
},
"RENDERING STYLE": {
"lighting": "bright natural daylight",
"background": "outdoor waterside playground"
},
"AVOID": ["sharp angles", "muted/industrial palette", "rust", "graffiti"],
"DESIGN": "forward, fluid, futuristic — coastal modern architecture"
}
Above is a structured output from an LLM (large language model) analysis of the bench description, with the attributes and values recommended from the design recommendation model. This structured prompt is then provided (manually in a protoype, automatically in a final system) to an LMM (large multimodal model) to generate images.
With this system and prototype, our busy civil engineer can enable any number of city planners to instantly visualize public bench designs like the image above. The inclusion of a set of initial engineering specifications would result in faster, smarter and more data driven design decisions.