Octopus

Octopus is a plug-in for applying evolutionary principles to parametric design and problem solving. It allows the search for many goals at once, producing a range of optimized trade-off solutions between the extremes of each goal.

Also see octopus.E for custom evolutionary algorithms.

 

Download the latest version on food4rhino

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

 

  • search for single goal + diversity of solutions
  • search for best trade offs between 2 to X goals
  • improve solutions by similarity-goals
  • choose preferred solutions during a search
  • change objectives during a search
  • solutions' 3d models 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 introduces multiple fitness values to the optimization. The best trade-offs between those objectives are searched, producing a set of possible optimum solutions that ideally reach from one extreme trade-off to the other.

Based on SPEA-2 and HypE from ETH Zürich and David Rutten's Galapagos User Interface. Developed by Robert Vierlinger in cooperation with Christoph Zimmel, karamba3d.com and Bollinger+Grohmann Engineers.

 

To install:

  • 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

 

Some examples are provided here

New commented examples and a brief manual are provided in the download of octopus on food4rhino.

  • Amaury THOMAS

    Hello,
    How are doing ?

    I can' t download Octopus. The acces is denied.
    Something could be done to fix that ?

    Best

  • Robert Vier

    it took some time for my project on food4rhino to be approved, but now it is there to download

  • John Sullivan

    It's about time.  Galapagos is wonderful but this looks like it will be a lot more useful.  Nice work!

  • Ángel Linares

    It looks very interesting! Let me give a try :)

  • djordje

    This may sound a bit premature but, Robert will there be some example files in this group related to Octopus usage in next few days?

  • Mostapha Sadeghipour Roudsari

    Thank you for sharing this Rob! Here is my first try...

  • djordje

    Hi Mostapha,
    Can you tell me more about your testing?
    What did you want to achieve?
    Thank you.

  • Fred Becquelin

    Awesome! Thanks Robert! Here's my try.

    I find it quite difficult to navigate through the results at this stage :) If I may throw in a few ideas, like redefining the axis variables, logarithmic scales, display thresholds, better marking management - or at least add contrast!

  • Mostapha Sadeghipour Roudsari

    Hi Djordje,

    I tried to find the optimum form for a dumb building based on 3 parameters (building orientation, and roof angle in both directions), and two objectives (minimize incident solar radiation during the cooling period, and maximize incident solar radiation during the heating period). The graph on the right side of the image shows that Octopus was able to find the Pareto frontier.

    I captured a video that shows how I set up this problem for Octopus. You should be able to set-up your problem in a similar way...

  • djordje

    Thank you for such a detailed reply Mostapha.
    Are those energy components you are using, the ones from the future Ladybug plugin?

    To be honest, I haven't tried Octopus, as I do not have Rhino 4, and it currently only works on v5.
    What I am confused with is the difference between the Galapagos and Octopus. Why couldn't you use Galapagos instead? Fitness would be sum of -(objective 1) and objective 2, and the Fitness should be Minimized.
    ?

  • pbdlab

    Octopus is very interesting,and is a nice job.

    BUT I can not make the Fitness working as the way I do with Galaogas.

    I was wondering if someone can share some example files.

    Thank you!

    Best,

    Lucas.