Skip to main content

ARA: AIXD Grasshopper plugin

License Conda Downloads pip downloads PyPI Package latest release Anaconda DOI

Grasshopper plugin for data-driven and inverse design methods with generative AI.

ARA is a Grasshopper plugin that augments the design process with data-driven and inverse design approach by combining parametric models built in Grasshopper with generative AI models. It enables designers, architects and engineers to efficiently generate design solutions with the assistance of generative neural networks. The inverse design paradigm accelerates design exploration by providing many different design variants that match project objectives.

With ARA, you can easily generate a project-specific the dataset from an existing parametric model definition in Grasshopper, and then train and deploy a custom autoencoder model to generate designs that satisfy the requested target values, such as performance metrics or design constraints.

ARA also comes with various visualization tools for data analysis and performance evaluation.

ARA is open-source and builds on top of the AIXD: AI-eXtended Design toolkit.

Getting started

To get started, please have a look at the Easy Installation, Tutorial, Documentation and Examples, as well as our paper.

Installation

Requirements:

  • Python >= 3.9
  • axid == 0.13.0
  • compas > 2.0
  • flask

Latest stable version

Install aixd_ara using pip

pip install aixd_ara

Install aixd_ara using conda:

conda install -c conda-forge aixd_ara

Install the plugin in Rhino/Grasshopper using the following command:

python -m compas_rhino.install -v 7.0

Note: It is recommended to use virtual environments to manage the dependencies of your projects. If you are using conda, you can create a new environment with conda create -n myproject python=3.9 and then activate it with conda activate myproject before installing aixd_ara.

Latest unstable version

Install the latest version using pip from the git repository:

pip install --upgrade git+https://github.com/gramaziokohler/aixd_ara.git

Development

If you are going to develop on this repository, perform an installation from source:

git clone https://github.com/gramaziokohler/aixd_ara.git
cd aixd_ara

Then, use conda to install all the dependencies into a new environment called aixd_ara:

conda env create -f environment.yml

Or using pip:

pip install -e ".[dev]"

Finally, build Grasshopper components and install on Rhino/GH:

invoke build-ghuser-components
python -m compas_rhino.install -v 7.0

For more details on how the process of building components work, refer to this docs.

Check the contribution guidelines for more details.

Folders and structure

The structure we follow on the current repo is as follows:

  • src : for all source code.
    • src/aixd_ara : source code of the ARA plugin.
    • src/aixd_ara/components : source code of ARA's Grasshopper components.
    • src/aixd_ara/scripts : ARA scripts to run in Rhino's Python Editor.
    • src/compas_aixd : source code of the connector to COMPAS infrastructure.
  • examples : example files.
  • scripts : additional scipts.
  • docs : documentation's source code.

Release files for aixd-ara 0.10.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aixd-ara 0.10.6
File Size Uploaded
aixd_ara-0.10.6.tar.gz 1.8 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for aixd-ara 0.10.6
File Interpreter ABI Platform
aixd_ara-0.10.6-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 2.0 MB

Release files / aixd_ara-0.10.6.tar.gz

Download URL aixd_ara-0.10.6.tar.gz
Size 1.8 MB
Tags Source
SHA-256 checksum
How to use checksums
7eff08b6c6d0157ec0bc0ab98a35c6d09278a409f663171f880b8b5ce5f47920
BLAKE2b-256 checksum
How to use checksums
a2b9d73cd8901a8b6662cb221195f9888c536be47af84409f7d230e73ae52d54
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.11

Release files / aixd_ara-0.10.6-py2.py3-none-any.whl

Download URL aixd_ara-0.10.6-py2.py3-none-any.whl
Size 176.6 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
6143a5cc652a37924d9919fbce28f4d64d27181e40a2487882df6009d76ccd0a
BLAKE2b-256 checksum
How to use checksums
aa3d22f6f1d2dd2eb32f3e47d068746ee6e763b34d60eec45a2bf7517b2aa281
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.11

Release history Release notifications | RSS feed

This release

0.10.6 This release

2 release files

0.10.5

2 release files

0.10.4

2 release files

0.10.0

2 release files

0.9.3

2 release files

0.9.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page