-
Notifications
You must be signed in to change notification settings - Fork 376
Further enhancements in ADMMOptimizer #1126
Further enhancements in ADMMOptimizer #1126
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After these changes there is no test then of ADMMOptimizer with the CPLEXOptimizer even specifying it explicitly. Maybe the latter does not need to be included in the testing here in what is really more of an integration test since the same function of ADMM is tested using other optimizers.
One other comment - maybe the ADMMOptimizer docstring should state the default qubo and continuous optimizers that are selected internally - or at least say if left as default then a suitable one will chosen internally even if we don't care to explicitly name which one. |
@woodsp-ibm, since we made dependency on Cplex optional and tests with Cplex are not run by the build system (well, they are skipped, correct me if I'm wrong here) I think it is better to use other optimizers internally, especially once we have an SLSQP wrapper. That's why I removed Cplex in the implementation and in the tests as well. I will update the docstring tomorrow, it is a good point to mention how internal optimizers are chosen if they are not specified. |
I think tests with Cplex are run under Python 3.7 and the reason for the skip is that Cplex is not yet supported for 3.8 under which we also test in the build. |
Yes, you're right, Cplex does not support python 3.8. Anyway, there's a test where a non-default (Cobyla) continuous optimizer is used, just in case. |
I think for this ":class: |
At least in my setup a link ":class: |
Ok, with the import - I guess I should have thought. I have had to fix up a few of these where another class in another module has been referenced and its not been working. Its fine as-is then, no need to make it fully qualified. |
* ADMMParameters repr * ADMM properties, tests * linting * fix tests * removed default dependency on cplex * import fix for pylint * added reno file for ADMM * updated docstring Co-authored-by: Steve Wood <40241007+woodsp-ibm@users.noreply.github.com> Co-authored-by: Manoel Marques <manoel@us.ibm.com>
* ADMMParameters repr * ADMM properties, tests * linting * fix tests * removed default dependency on cplex * import fix for pylint * added reno file for ADMM * updated docstring Co-authored-by: Steve Wood <40241007+woodsp-ibm@users.noreply.github.com> Co-authored-by: Manoel Marques <manoel@us.ibm.com>
) * ADMMParameters repr * ADMM properties, tests * linting * fix tests * removed default dependency on cplex * import fix for pylint * added reno file for ADMM * updated docstring Co-authored-by: Steve Wood <40241007+woodsp-ibm@users.noreply.github.com> Co-authored-by: Manoel Marques <manoel@us.ibm.com>
Summary
Removed soft depenedency on CplexOptimizer, now MinEigenOptimizer and SlsqpOptimizer are used by default.
Added
repr
support to ADMMParameters.Added getter/setter for the parameters to ADMMOptimizer.