Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # 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

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

No branches or pull requests

2 participants