Optimization Plug-in Categories & How to download

From TOI-Pedia
Related Tutorials

Extension:DynamicPageList (DPL), version 2.02 : Warning: No results.

The two main categories of optimization plug-ins are defined based on the number of objectives. They are divided between single-objective and multi-objective optimization plug-ins.

Single-objective Optimization Plug-Ins

It refers to optimization processes that have only one performance indicator as objective which is set to either minimize or maximize every time. In this regard, the complexity of the problem is reduced and it leads to faster simulations.

These plug-ins can also serve cases where more than one objective needs to be evaluated, but then the objectives need to be combined to one uniform factor as a weighted sum (different factors are assigned to each of the performance indicators based on their importance and, afterwards, they are all added up in one common factor). The main issue is that the performance of each objective cannot be evaluated individually after the optimization and only the combined factor can be assessed. For this reason, multi-objective plug-ins may be preferred in this case, since the performance of each indicator can be easily assessed and compared due to the Parallel Coordinate Plots which are created.

Characteristic single-objective Grasshopper plugins are:


Galapagos plug-in

It is one of the most widely known optimization plugins and it comes along with the standard Grasshopper installation for Rhino 6 and 7, so there is no need to download it separately. It uses an evolutionary solver and provides overall good solutions to the optimization problems. You can find it in: Params » Util » Galapagos.

Relevant tutorials:

Galapagos Optimization

Ladybug Optimization using Galapagos


Opossum plug-in

It has a similar structure to Galapagos, but has the advantage that it also includes a model-based algorithm (RBFOpt) apart from the evolutionary one. This allows to get a result with a smaller number of function evaluations and, therefore, leads to faster simulations. Additionally, it offers the possibility to revisit all the variations tried through the optimization, whereas in Galapagos only the best results can be checked.

You can download it and ask for a free license from:


After installing it, you will find it on: Params » Util » MOpossum.


Optimus plug-in

Optimus is a metaheuristic optimization plug-in which has been developed at the Design Informatics Chair in TU Delft. You can download it from:


Multi-Objective Optimization Plug-Ins

They serve optimizations with multiple performance indicators. In this case the problems become more complex and the simulations take in general more time than the single-objective ones. However, they give a better insight for the design, since they give the opportunity to include indicators related to different design aspects and assess the performance of each objective individually through Parallel Coordinate Plots.

Important to note:

a. Although multi-objective plug-ins give the opportunity to add more than one value in the optimization process, you need to remember that by increasing the number of objectives, there will also be an increase in the complexity of the problem and, thus, the simulation will need more computational time. In this regard, it is important that the design variables & objectives are carefully selected so that there is a good balance between the wholeness of the optimization problem and its added effect on computational time and convergence.

b. Different variables & objectives can be selected for iterations in different design phases serving the needs of the project each time. For example, in the first design phase a faster and rough optimization may be more helpful in order to have results that can feed in real time the design process, whereas in a later stage when a more detailed evaluation is needed, a slower but more complete optimization will give a better insight.

Profiler Widget

c. It is not necessary that all the design aspects are directly incorporated to the optimization process. If the script increases a lot in complexity, then it is wise to run some parts of it in a pre-processing phase and use the results of it as a starting point or boundaries for the rest of the optimization. For example, this can be applicable for simulations that are very computationally demanding, such as wind simulations. You can see the exact time that each script component needs in order to be calculated in Display (main Grasshopper toolbar) » Canvas Widgets » Profiler.

Characteristic Multi-Objective Grasshopper plugins are the following.


Wallacei plug-in

It uses an evolutionary solver and is able to process up to 10 objectives at a time. It has an easy-to-use interface and gives access to the whole evolutionary history of the simulation, enabling you to select the result(s) between all the variations of each generation that have been tested through the optimization process.

The selection of results is facilitated with the use of plots that demonstrate the performance of each objective individually, as well as parallel coordinate plots and diamond fitness charts that show a comparative analysis. After selecting the final results, Wallacei gives the opportunity to output the values of the genomes and objectives, as well as the respective phenotypes (resulting geometries or meshes).

You can download it from:


Relevant tutorials:

Multi-Objective Optimization with Wallacei

More detailed documentation:



Octopus plug-in

It has a similar structure to Wallacei. It uses an evolutionary algorithm and it can also produce Parallel Coordinate Plots for the comparison between different objectives in the framework of a multi-objective optimization. You can download it from:


Personal tools