← Search

Data · dataset · 2026

Opossum

Listed in DaRUS

Opossum Opossum is an optimization plug-in for Grasshopper (for Rhino) that implements model-based and evolutionary optimization algorithms for single- and multi-objective problems.

Description

The plugin integrates GUI components into Grasshopper to configure runs, visualize results, and persist optimizer state inside Grasshopper documents. This repository contains a .NET/Grasshopper plugin project targeting .NET Framework 4.8.

Highlights Model-based single-objective optimization (RBFOpt) Evolutionary single-objective optimizer (CMA-ES) Multi-objective RBFMOpt optimizer Multiple multi-objective algorithms via pygmo Interactive Grasshopper window and result serialization Notable folders and classes Opossum2_0_Proto_A/ — main plugin project. Contains component classes, UI windows, serialization utilities, and resources. OptComponent.cs — main Grasshopper component implementation: UI hooks, serialization/deserialization, and component registration.

Read the rest (10 more)

Resources/ — embedded icons, images, and other resource files used by the plugin. Solver/ — optimization solver interface and implementations (RBFOpt, pygmo, etc.). Requirements and dependencies Development / build Microsoft Visual Studio (2017, 2019, or 2022) with .NET Framework 4.8 targeting pack installed.

The Grasshopper and Rhino SDK (or runtime assemblies) to resolve references to Grasshopper.dll, GH_IO.dll, and RhinoCommon.dll. Runtime Rhino with a matching version of Grasshopper (the plugin runs inside Grasshopper). Opossum installed via Food4Rhino or PackageManager to obtain Python backend and dependencies.

The plugin expects to be loaded inside Grasshopper; it does not run as a standalone .NET application. Build instructions Open the solution in Visual Studio. Ensure project references to Rhino/Grasshopper assemblies are valid (point to the installed Rhino/Grasshopper runtime or SDK).

These references are typically not committed and must be resolved on your machine. Restore NuGet packages. Build the Opossum2_0_Proto_A project in Debug or Release configuration.

The produced assembly will generally be a .dll file or .gha (Grasshopper plugin), depending on how the project is configured. Install and run Install Opossum from Food4Rhino or PackageManager. Copy the built .gha/.dll to Grasshopper's Components folder.

Restart Rhino/Grasshopper. The plugin registers its component(s) under the category set in the component registration (for example Params -> Util).

Usage notes

OptComponent manages component serialization (stores GUIDs of linked variables, simulators, and objectives) so saved Grasshopper files keep references and results across sessions. Results can be serialized into the Grasshopper document and later reloaded. The component distinguishes whether results were produced by the optimizer or loaded from a file.

If your installation uses an external Python optimizer, verify that the Python environment is accessible from the host machine and any interop code is configured to find the Python interpreter and libraries. Development notes To debug the plugin, run Rhino and attach the Visual Studio debugger to the Rhino process. When changing serialization formats (chunk names, GUIDs, or data layout), be careful to preserve compatibility with existing saved Grasshopper documents or provide migration logic.

UI classes (windows) are created at runtime and registered with Grasshopper's FormShepard; ensure proper disposal to avoid resource leaks.

Links

Where it is published

Catalogue records · 1

Topics

From keywords
Engineering
Inferred from text
Image 65%
Provenance · 1 source records, 10 field assertions
SourceKeyLast seenRaw
DaRUSdoi:10.18419/DARUS-568513 d agoJSON v1
FieldAssertionExtractorEvidence
concepts[field].dataverse_subject:computer-and-information-sciencesource · darus uni stuttgart deconnector:darus_uni_stuttgart_de@1.0.0/subjects
concepts[field].dataverse_subject:engineeringsource · darus uni stuttgart deconnector:darus_uni_stuttgart_de@1.0.0/subjects
concepts[field].local:field:engineeringmapping · darus uni stuttgart deconnector:darus_uni_stuttgart_de@1.0.0/subjects
concepts[modality].local:modality:imageenrichment · darus uni stuttgart dekeyword-concept-rules@1.0.0title+description (65%)
created_datesource · darus uni stuttgart deconnector:darus_uni_stuttgart_de@1.0.0
descriptionsource · darus uni stuttgart deconnector:darus_uni_stuttgart_de@1.0.0/description
publication_datesource · darus uni stuttgart deconnector:darus_uni_stuttgart_de@1.0.0
titlesource · darus uni stuttgart deconnector:darus_uni_stuttgart_de@1.0.0/name
updated_datesource · darus uni stuttgart deconnector:darus_uni_stuttgart_de@1.0.0
version_labelsource · darus uni stuttgart deconnector:darus_uni_stuttgart_de@1.0.0