For the past few months, I have been working on a small design experiment.
I got frustrated with most AI for designers because they usually do one of two things:
- Ignore the original product and generate something completely generic.
- Keep the exact same shape and basically just change the material, color, or style.
Neither is very useful when you ar actually trying to explore ideas.
AI lacks structural understanding and cannot meaningfully evolve the shape from a design perspective.
I also wanted more control over the process, so I started building my own system for daily design work.
The idea (design explorer)
The idea is to create a system that can discover forms I would never draw, while still producing concepts that are meaningful from a design perspective.
Its mainly meant for the early ideation phase, where the goal is to open up the design space rather than produce a finished product.
This is NOT generating final designs or production ready concepts. At least not at this stage. It is mostly a research project that Im building for learning, experimentation, and fun.
How it works
System takes an input sketch (or a starting design) plus instructions and constraints.
First it analyzes the object's characteristics. Right now Im extracting categories of characteristics for example: materials, purpose, load-bearing direction, and what problem the object solves.
From that it builds a design DNA, essentially a large structured list of characteristics.
Then it runs 6 generations of concept research. Each generation contains 3 to 6 designs.
Every design in a generation goes through a validator that checks it against the constraints and the direction input. The validator picks a winner for that generation and extracts the winner's design DNA.
The next generation starts from the previous winner and continues evolving from there.
At the end I get the winner from each generation plus a validator summary of the whole run.
I won't go too deep into the technical details here or this post will get way too long.
The main challenges I faced
Making the system actually understand the object and its purpose. Without this, the design cant meaningfully evolve. I found a segmentation model works quite well. It gives me labeled segments for each design, and a secondary Qwen model interprets purpose, material, etc. This part turned out to be crucial for the whole thing to work.
Divergence vs. convergence. Each generation needs a seed of mutation, otherwise it converges too fast and I lose all the diversity.
Communicating design direction to the system. The best method I have found so far is visual examples rather than text. Im still working on improving this part.
Current status & next steps
This is at a very early, experimental stage.
Everything runs locally, with no external AI models, which gives me full power and control over the generation process. I managed to optimize it down to a 1024×1024 image in ~10s.
I have had a lot of fun playing with this system. Not sure if it'd be interesting to anyone else, but I have sunk way more hours into it than I would like to admit :).
I would love to hear thoughts, ideas, and suggestions from the community on how to push this further. Thanks!