openmdao-nsga

NSGA-II and NSGA-III implementations for OpenMDAO

https://github.com/ovidner/openmdao-nsga

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (7.7%) to scientific vocabulary
Last synced: 7 months ago · JSON representation ·

Repository

NSGA-II and NSGA-III implementations for OpenMDAO

Basic Info
  • Host: GitHub
  • Owner: ovidner
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 67.4 KB
Statistics
  • Stars: 2
  • Watchers: 2
  • Forks: 0
  • Open Issues: 1
  • Releases: 8
Created over 5 years ago · Last pushed about 3 years ago
Metadata Files
Readme License Citation

README.md

OpenMDAO-NSGA

DOI

NSGA-II and NSGA-III implementations for OpenMDAO.

Some notable features include:

  • Support for continuous, integer, discrete and categorical variables.
  • Support for Pareto-optimization of multi-objective problems.
  • Constraint handling without parameters (using the method described in the original NSGA-II paper).
  • Flexible termination criteria.

Do note that the performance for discrete problems will probably be bad, but if you are looking for a fairly robust shotgun approach for a variety of different problems, OpenMDAO-NSGA might serve you well enough.

Installation

This assumes you are using Conda. Run this in your environment to install:

conda install ovidner::openmdao-nsga

Usage example

```python import openmdao.api as om import omnsga

prob = om.Problem()

...

Real or integer design var

prob.model.adddesignvar("x_1", lower=0, upper=1)

Discrete design var

omnsga.adddesignvar(prob.model, "x_2", values={0, 1, 4}, type=omnsga.VariableType.ORDINAL)

Categorical design var

omnsga.adddesignvar(prob.model, "x_3", values={True, False, None}, type=omnsga.VariableType.NOMINAL)

prob.model.add_constraint("g", lower=0, upper=1)

Maximize f_1

prob.model.addobjective("f1", scaler=-1)

Minimize f_2

prob.model.addobjective("f2")

prob.driver = omnsga.Nsga2Driver( termination_criterion=omnsga.MaxEvaluationsCriterion(500), )

prob.run_driver() ```

Owner

  • Name: Olle Vidner
  • Login: ovidner
  • Kind: user
  • Location: Linköping, Sweden
  • Company: Linköping University @DesignAutomationLaboratory

PhD student, mechanical engineer and developer. I like coffee, optimization, automation, the question "why?" and German easy-listening music from 1967–1973.

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it using the metadata supplied in the CITATION.cff file."
doi: 10.5281/zenodo.4279483
title: "OpenMDAO-NSGA"
authors:
  - family-names: Vidner
    given-names: Olle
    affiliation: Linköping University
    orcid: https://orcid.org/0000-0002-1157-2480
license: MIT
repository-code: https://github.com/ovidner/openmdao-nsga

GitHub Events

Total
Last Year

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 76
  • Total Committers: 1
  • Avg Commits per committer: 76.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Olle Vidner o****e@v****e 76
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: about 1 year ago

All Time
  • Total issues: 1
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 1
  • Total pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • ovidner (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

.github/workflows/main.yml actions
  • actions/checkout v2 composite
  • actions/download-artifact v2 composite
  • actions/upload-artifact v2 composite
  • conda-incubator/setup-miniconda v2 composite
setup.py pypi
  • openmdao *