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

Question: tron vs. trunk for unconstrained problems #276

Open
tcovert opened this issue Apr 25, 2024 · 1 comment
Open

Question: tron vs. trunk for unconstrained problems #276

tcovert opened this issue Apr 25, 2024 · 1 comment

Comments

@tcovert
Copy link

tcovert commented Apr 25, 2024

Hi JSO team,

Do you have any guidance about which of these solvers is "better" for unconstrained problems, and, if so, why? I had naively assumed that a solver specifically designed for unconstrained problems (trunk) would be better, but in some applications where I have compared the two, tron appears to converge more quickly.

If it's useful, my current applications are related to maximum likelihood estimation problems, using a multinomial logit log-likelihood function. I am providing analytic gradients, and I'm using ForwardDiff to turn those gradients into a hessian-vector product for the nlp specification. In some of these applications, the objective is strictly convex, but that is not always so. It is often the nonconvex situations where tron appears to converge more quickly.

Thanks in advance for any advice you may have!

@dpo
Copy link
Member

dpo commented Apr 25, 2024

@tcovert The two solvers are slightly different, even on unconstrained problems. Both are similar trust-region methods, but they use slightly different parameters, different trust-region management, etc. That's not to say TRON will always be more efficient than TRUNK on unconstrained problems. It would be relevant to benchmark them more widely. It might also be relevant to merge them into one solver that would be at least as good as both.

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