﻿ Octopus - Addon for Grasshopper | Grasshopper Docs

Community documentation for Grasshopper add-ons & plugins

Octopus

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.
 Evolutionary Learning
 Explicit Components
 Loop
 Octopus
 Supervised Learning
 Utilities
 View

Explicit Components

 Check Pareto DominanceTakes two individuals and returns the dominance relation, assuming a minimization problem. Compute DiversityComputes the paremetric diversity of each solution in the list and adds it as an objective Construct SolutionTakes a lists of numbers for parameters and/or objectives to wrap them in a single object for better handling of pools of solutions [generations etc.] Cull Duplicate SolutionsRemoves duplicate solutions Deconstruct SolutionTakes an OctopusSolution object and explodes it into parameters and objectives Cull EliteSelects an elite of best multi-objective solutions, assuming a minimization problem. Cull Pareto Fronts (Pareto Fronts)Divides a set of solutions into pareto-fronts, assuming a minimization problem. Hypervolume Contributions (HV+)Calculates the Hypervolume contributions of a multi-dimensional set of points in relation to a reference point HypervolumeCalculates the Hypervolume of the ParetoFront of a multi-dimensional set of points; exact algorithm; normalizes the pareto front to objectives between 0 and 1 Mutate (Mutate an Octopus Solution)Mutate a solution's parameter values Crossover (Simulated Binary Crossover)Takes two individuals and exchanges parameters between them - after 'SBX - Simulated Binary Crossover' Tournament Selection (TS)Tournament Selection for single or multi objective solutions, assuming a minimization problem. Remap ObjectivesRemaps the objective values of a set of solutions, assuming a minimization problem when taking the pareto fron as a start domain.

Evolutionary Learning

 Breeder Settings - All (oEL) (SetAll (octEvoLearn))Settings for the NEAT Algorithm to evolve an ANN Breeder Settings - Basics (oEL) (SetBase (octEvoLearn))Basic Settings for the NEAT Algorithm to evolve an ANN. These will override any changes made to the properties in the All-Settings Component. Deconstruct Network (oEL) (DeconN (octEvoLearn))Deconstruct a network into its nodes, connections, weights, functions and metadata like performance data. Deconstruct Network Obj (oEL) (DeconNObj (octEvoLearn))Gives the Network's Objective and Fitness Values Evaluate Network (oEL) (EvalN (octEvoLearn))Forward-Pass through the Network: Takes values for the input nodes and calculates the outputs. Field Curve (oEL) (FC (octEvoLearn))Draws a curve following the direction field defined by a Network. Integration with Runge-Kutta 4th order. Modify Weights (oEL) (Crossover (octEvoLearn))Takes a pool of Networks and produces offspring by crossover mating Mutate Weights (oEL) (MutW (octEvoLearn))Mutate connection weights of a Network Breeder (oEL) (NEAT (octEvoLearn))Evolves artificial neural networks with the NEAT algorithm, using SharpNeatLib by Sebastian Risi Random Network (oEL) (RN (octEvoLearn))Generate a random network Show Network (oEL) (SN (octEvoLearn))Opens a window to show the Network Construct Network (oEL) (ConsN (octEvoLearn))Create a Network by node-points, connection-indices and weights.

Supervised Learning

 Network Training Settings (oSL) (NTS (octSupervLearn))Settings for RPROP Supervised Learning of an ANN Network Evaluate (oSL) (EvalN (octSupervLearn))Evaluate a network for some input values Network Learning (oSL) (NetLearn (octSupervLearn))Supervised example training of a Network by multi-core resilient propagation algorithm, using the Encog library by Jeff Heaton SVM Evaluate (oSL) (SVMEval (octSupervLearn))Evaluate the learnt SVM function SVM Learning (oSL) (SVMLearn (octSupervLearn))Train SVM and optionally estimate parameters using grid search and cross validation

Loop

 Octopus LoopOctopus Loop Octopus Evaluator (Octopus Eval)Octopus Evaluator

Utilities

 MD NearestNeighbors (MD NearN)Neighbourhood search of multi-dimensional points (euclidean kd-tree)

View

 Select SolutionsTakes octopus solutions or networks with saved phenotype meshes to show them for selection

Octopus

 OctopusMulti-objective seach and optimzation

Site design © Robin Rodricks.   Octopus and associated data © 2020 Robert Vierlinger.
Rhinoceros and Grasshopper are registered trademarks of Robert McNeel & Associates.  Hosted by GitHub