(by MahmoudAbdelRahman)
Machine Learning plugin for Rhino\grasshopper based on Python\ scikit-learn module.
Support Email

This project aims to develop a machine learning plugin for Rhino\Grasshopper by making use of the well-known Python module (Scikit-learn) using Rhnio-Common C# and python programming language to bring sophisticated Machine-Learning supervised and unsupervised learning methods to be handy to regular designers and architects. It is open source and is released under BSD "simplified" licence.

Instructions for installing

This plugin is based on Python and scikit-learn, while scikit-learn depends on Numpy and scipy modules. Thus, it is important to ensure having these tools installed in your system and working properly. To install scikit-learn on your machine, you could follow instructions on this link: installing scikit-learn.

To install scikit-learn, It is highly recommended that you do this via python bundle, this comes with all required libraries, such as: Python(x,y), Anaconda and Canopy

After installing Python, numPy, SciPy, matplotlib and scikit-learn, Open grasshopper and drag and drop ANT.gha into grasshopper canvas, you will notice a new tap "ANT" has appeared. Then, initiate ANT component to make sure everything is working properly.


On the other hand, this plugin (in the present time) has been tested in Windows environment with python 2.7. If you are using earlier of latter versions, we highly recommend that you kindly submit any bug appears.

How to use ANT ?

Create your own data CSV file as shown in the figure below, the first line consists of the features' labels, while the last column is the targets and each line represents a data instance used for trainine.

Add new CSV dataset component, Open your csv file using Openfile component, then, link data and targets from csv dataset outpust into any Machine learning component for instance: linear regression.

specify the working directore, for example "E:\ant\plugin\example\" (don't forget the backslash at the end of the directory path".

add prediction data by using merge component, (note: the total number of merged values must be equal to the number of features)

start fitting your data ( use boolean toggle component) .. Thats. all.