Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Examples using optimization & external optimizer libraries #74

Open
jdeaton opened this issue Feb 16, 2020 · 1 comment
Open

Examples using optimization & external optimizer libraries #74

jdeaton opened this issue Feb 16, 2020 · 1 comment

Comments

@jdeaton
Copy link
Member

jdeaton commented Feb 16, 2020

While getting the CI system to check that examples will execute (PR #57) I came across some issues in the implementation of the examples with optimization. It seems that there are 2 main issues we need to revisit:

  1. Conditional compilation with SNOPT/GCMMA/etc. optimizers is not working as expected when it comes to the examples. It seems we need some extra pre-processor guards in the examples' source to handle cases where there is one optimizer available, but not all of them. Right now it seems that the structural topology optimization examples will only successfully link when both GCMMA and SNOPT are available and support built for them in the MAST library.

  2. Expand example demos to use NLOPT (or other open-source) optimizer. It seems we might have started to do this, but did not complete it. This will enable us to potentially check these examples execution on CI as well as provide an alternative to licensed (SNOPT) or special distribution (GCMMA) optimizers.

@manavbhatia
Copy link
Member

I have played around with NLOpt, but not enough to make an assessment.
Given that MAST has an interface to NLOPT I think we can update the examples so that they run with varying choice of optimizer. I will make the modification.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants