-
Notifications
You must be signed in to change notification settings - Fork 92
add relative entropy cone #993
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
Conversation
Let me guess... I need to redo the bridge as a set map bridge? |
No, you create extra variables and more than one constraint so it's not a set map bridge. |
Understood, thanks! |
I'll attempt the starting values here next |
Codecov Report
@@ Coverage Diff @@
## master #993 +/- ##
==========================================
- Coverage 95.21% 95.19% -0.02%
==========================================
Files 98 99 +1
Lines 11048 11149 +101
==========================================
+ Hits 10519 10613 +94
- Misses 529 536 +7
Continue to review full report at Codecov.
|
OK so I've done my best to implement starting values. AFAICT it requires the Lambert W function. This is likely to be needed in similar contexts for future cones to be added to MOI that use Bridges with exponential cone extended formulations. The Lambert W function comes from the registered/up-to-date https://github.com/jlapeyre/LambertW.jl package, which is a small dependency I've added. |
@blegat this is ready for review |
Note btw that relative entropy is the perspective of negative log, so this cone can also be used for modeling a sum of logs, and hence is useful for a natural reformulation of geometric programming problems. |
So LambertW.jl is only one file, and under MIT, so potentially we could just include that file in MOI.Utilities? It hasn't been updated in > 1 year, and its |
@blegat's solution is better than mine so I changed that. thanks! no more lambertW |
This 1+2n-dimensional cone is useful for entropy optimization and has applications in e.g. signomial positivity certificates (see here and here). I've implemented a bridge to n exponential cone (3-dim) constraints and 1 LP constraint.
Hypatia supports this cone due to what is claimed to be a self-concordant barrier on p5 of "Primal-Dual Interior-Point Methods for Domain-Driven Formulations" by Karimi & Tuncel, 2019 (they didn't provide a SC proof there but I'd be interested to see one).