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

Replace exponential cone projection? #125

Open
tjdiamandis opened this issue Jul 29, 2021 · 3 comments
Open

Replace exponential cone projection? #125

tjdiamandis opened this issue Jul 29, 2021 · 3 comments

Comments

@tjdiamandis
Copy link

There's a new, robust implementation of the projection onto the exponential cone detailed in this paper by Henrik Friberg.

This is implemented in MathOptSetDistances.jl. Happy to port over.
https://github.com/matbesancon/MathOptSetDistances.jl/blob/1f3e578398ba91fbbcaf805aaf55f9105d858a40/src/projections.jl#L170

Relevant section of code:

function prox!(y::AbstractVector{R}, f::IndExpPrimal, x::AbstractVector{R}, gamma::R=R(1)) where R <: Real

@lostella
Copy link
Member

Very interesting! I think it would be nice to replace the current implementation. For reference, some test cases on this projection can be found here:

Dict( "f" => IndExpPrimal(),

@lostella
Copy link
Member

This could be the occasion to first add benchmarks for the projection on the exponential cone, so to “touch with hand” the performance improvement https://github.com/JuliaFirstOrder/ProximalOperators.jl/blob/master/benchmark/benchmarks.jl

@lostella
Copy link
Member

lostella commented Aug 1, 2021

Benchmarks being added in #126

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants