jump-dev / jump-dev/MathOptInterface.jl

Add n-dimensional PowerCone

Open
#2,629 2 comments 0 reactions 0 assignees View on GitHub
Type: Set Request
Dominant language
Julia
Stars
504
Forks
101
Avg merge
6h 26m
Merged PRs (30d)
22

Description

@lkapelevich and @HFriberg have been emailing me about the upcoming CBF v4, https://cblib.zib.de/doc/format4.pdf, which proposes to add an n-dimensional PowerCone.

We've talked about this somewhat before: https://github.com/jump-dev/MathOptInterface.jl/issues/977

There are two proposed variants (plus their dual cones).

I have no strong feelings on which ones (if any) we should adopt. But I'd like to somewhat reign in having a litany of very similar cones.

## Radial

Image

## Hypograph

Image

## Clarabel

Clarabel has native support for the radial with the restriction that $\sigma=1$ https://clarabel.org/stable/api_cone_types/

Image

## Hypatia

Hypatia has both https://jump.dev/Hypatia.jl/stable/api/cones/#Hypatia.Cones.GeneralizedPower and https://jump.dev/Hypatia.jl/stable/api/cones/#Hypatia.Cones.HypoPowerMean

## Mosek

Mosek has support for radial: https://docs.mosek.com/latest/capi/alphabetic-functionalities.html#mosek.task.appendprimalpowerconedomain

Image

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading issue #977 and the linked CBF v4, Clarabel, Hypatia, and Mosek cone definitions. No repository files or tests are named, so first identify the existing cone interfaces and decide which radial or hypograph variant, including duals, is appropriate. Done means the selected n-dimensional PowerCone design is implemented consistently with the project’s existing cone API and validated by its tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
api
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.