You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thanks for all your work on nlopt, it is an excellent library.
I am interested in using the Sbplx algorithm for gradient-free optimisation of functions with high dimensions (e.g. 3 < n < 12) in python. I was hoping that SBPLX would perform better than Nelder-Mead on such problems, but so far I have found that it is less efficient and more likely to get stuck in local optima.
I have observed that the SBPLX algorithm can spend a long time optimising a single sub-space of the problem, even if it is making very little progress. Increasing the ftol or xtol leads to a more dynamic algorithm that will more frequently move between subspaces rather than use many iterations optimising a single one. However, increasing those tolerances also leads to the algorithm terminating before it has found the true optimum value.
I think that a more agile Sbplx behaviour would be helpful for my optimisation problem. So, is there a way to set different stopping criteria for the optimisation of sub-spaces and the problem as a whole? For example, could I set two different maxeval values, one to tell the Sbplx algorithm to switch subspaces and another to stop the optimisation as a whole? Or two ftol values?
Many thanks,
Alex
The text was updated successfully, but these errors were encountered:
Hi,
Thanks for all your work on nlopt, it is an excellent library.
I am interested in using the Sbplx algorithm for gradient-free optimisation of functions with high dimensions (e.g. 3 < n < 12) in python. I was hoping that SBPLX would perform better than Nelder-Mead on such problems, but so far I have found that it is less efficient and more likely to get stuck in local optima.
I have observed that the SBPLX algorithm can spend a long time optimising a single sub-space of the problem, even if it is making very little progress. Increasing the ftol or xtol leads to a more dynamic algorithm that will more frequently move between subspaces rather than use many iterations optimising a single one. However, increasing those tolerances also leads to the algorithm terminating before it has found the true optimum value.
I think that a more agile Sbplx behaviour would be helpful for my optimisation problem. So, is there a way to set different stopping criteria for the optimisation of sub-spaces and the problem as a whole? For example, could I set two different maxeval values, one to tell the Sbplx algorithm to switch subspaces and another to stop the optimisation as a whole? Or two ftol values?
Many thanks,
Alex
The text was updated successfully, but these errors were encountered: