Python Forum

Full Version: SciKit vs Dynamo vs Grasshopper/Dodo for A.I. Planner Project
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
We (a fellow architecture student and I) want to develop a tool which can autonomously layout kitchen interiors based on user input parameters such as cooking habits, room dimensions etc.
We will hardcode all the elements (storage space, oven, fridge, worktop etc.) that have to be included in that kitchen with Python in PyCharm but we want to use Machine Learning for actually layouting the elements. First we want to do unsupervised learning (by hardcoding rational parameters which function as critic), then supervised learning by us grading designs manually in order to receive a Generative Design Tool in the end. The goal important at the moment is a first working prototype which can still be simplified in many ways and it's not a big deal if it can do only straight single-row layouts of limited size for now and it does not have to include real furniture items but it is enough if it places standard components.
The question is simple: With which software(s) shall we tackle this challenge?

Python offers SciKit library for machine learning. Since we are only interested in elements, not precise geometries, we could (I guess) feed it in there and visualize it in Code or 2D lines.
Grasshopper has the Dodo extension for Machine Learning and obviously you can use Python in that software; also, there would be some tutors on our university who have worked with it.
Autodesk offers Dynamo + Revit with which Generative Design has already been done plus it might be handy to have a pipeline to a BIM program which thinks in elements as well.

What is your estimation? Which approach would hold which advantages/disadvantages for us? Can you think of another approach?

About us: As I've mentioned, we are two architecture students. We know a bit of Python and have worked with Grasshoppers, yet we are definitely not pros. Also, we only have about two months to get the whole thing running.
There are over 10,000 python packages available for machine learning.

Perhaps you should browse through and see if there's anything that can help with your project, see: https://pypi.org/search/?q=machine+learning