Is pyoptspare a requirement or not?
Desired documentation content.
Hello, minor gripe/suggestion here
The install instructions state that pip install om-aviary should get you up and running, and furthermore suggests that pyoptsparse is optional. Yet the exampling shown in the next line does not work because it uses --optimizer IPOPT, which evidently requires pyoptsparse. It took me a second to realize what was going on, but then I swapped it to --optimizer SLSQP to get it to run. This does run, but unfortunately does not solve, which is mentioned in issue #444.
Is there any existing documentation on your requested topic? Please describe.
No response
Does this page help?
That's exactly the page I followed. Again it just states pip install om-aviary, which is not sufficient to run the examples exactly as they are.
Did you read the part in "Installation on Linux for Developers"? It works for Windows mostly.
I'm not on Linux.
Whether you need pyoptspare depends on what you will do. If you plan to use IPOPT or SNOPT, you'd better have it.
I'm trying to figure out what you mean "by the next line" so I can update that. The main installation page doesn't actually contain any specific examples to run besides explaining how to run tests suites as far as I see.
To directly answer your question, pyoptsparse is not required unless you want to bring in additional optimizers like IPOPT or SNOPT. However many of our tests and some examples do currently use these optimizers. We will be keeping the tests as-is as we often test multiple different optimizers for on the same problem, but making sure the doc examples are compatible with a "basic" Aviary install is a good suggestion!
Hey thanks for your response! Sorry you're right my "next line" comment was unclear. What I meant was on this page (https://openmdao.github.io/Aviary/getting_started/onboarding_level1.html) it links the installation, which I followed, and then proceed to run the level 1 example command, which utilizes IPOPT, and thus doesn't work because the basic installation does not require IPOPT.
That's all! I may have confused things as my title didn't really capture the intent of the question.
I'm thinking a note on the example page would be the easiest solution. e.g.
We are ready to run some models. By default, Aviary runs the optimizer for up to 50 iterations. In order to reduce the run time, we will limit the maximum number of iterations to 1. It will be faster for these examples, but you will not get optimal solutions. Issue the following command (note this uses --IPOPT, so make sure to have
pyoptspareinstalled)
Thank you for your time!
I made a new issue to update documentation and default arguments to functions (https://github.com/OpenMDAO/Aviary/issues/502). I'll close out this issue since the new one covers the main problem with additional instructions on what I'd like changed - thanks for the feedback!