(by Robert Vierlinger_1)
  Octopus includes Multi-Objective Genetic Optimization, Backpropagation Neural Nets, and CPPN-HyperNEAT.
Support Email

Octopus was originally made for Multi-Objective Evolutionary Optimization. It allows the search for many goals at once, producing a range of optimized trade-off solutions between the extremes of each goal. It is used and works similar to David Rutten's Galapagos, but introduces the Pareto-Principle for Multiple Goals.


  • Based on SPEA-2 and HypE algorithm from ETH Zurich
    Also based on David Rutten's Galapagos User Interface. Christoph Zimmel added the custom user interface and the hypervolume approximation.
    • search for single goal + diversity of solutions
    • search for best trade offs between 2 to any number of goals
    • improve solutions by similarity-goals
    • choose preferred solutions during a search
    • change objectives during a search
    • solutions' 3d model in objective space for visual feedback
    • recorded history
    • save all search data within the Grasshopper document
    • save a solution as a Grasshopper State
    • export to text or text files


Octopus now also includes

  • Evolutionary Breeding of Artificial Neural Networks with extended Basis Functions, based on CPPN-HyperNEAT
  • Interactive Evolution - Selector Component
    When running a genetic evolutionary optimization, human decisions can be added as a decision-maker.
  • Simple Supervised Learning with Backpropagation and Artificial Neural Networks
    To make a component map N numeric inputs to M numeric outputs, based on examples it was shown before.
  • Supervised Learning with a Support Vector Machine (SVM)
    To make a component map N numeric inputs to 1 numeric output, based on examples it was shown before.
  • Octopus Explicit Components
    To build a genetic algorithm from its basic functions; allowing many different flavors of the way things are handled in the optimization.


Octopus is part of a range of tools developed at the University of Applied Arts Vienna, and Bollinger+Grohmann Engineers.


To install:

  • Copy the .gha and .dll files into the Grasshopper components folder 
  • Right-click the file > Properties > make sure there is no "blocked" text
  • Restart Rhino and Grasshopper

Known issues:

  • Whenever another installed Grasshopper plugin uses the HelixToolkit WPF library, Octopus tends to crash. Examples are Biomorpher and Wallacei.
  • When the view axes options are changed with 3d model meshes enabled, in certain configurations the 3d models get mixed up.


License Cost: