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.
- Copy the .gha and .dll file into the Grasshopper components folder
- Right-click the file > Properties > make sure there is no "blocked" text
- Restart Rhino and Grasshopper