jump-dev / jump-dev/MathOptInterface.jl

Add n-dimensional PowerCone

未关闭
#2,629 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

Type: Set Request
主要语言
Julia
星标
504
派生
101
平均合并
6 小时 26 分钟
30 天内合并 PR
22

描述

@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

贡献指南

这个仓库没有索引到贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

先阅读 issue #977 以及其中链接的 CBF v4、Clarabel、Hypatia 和 Mosek cone 定义。由于没有指定 repository 文件或 tests,因此首先确定现有的 cone 接口,并决定哪一种 radial 或 hypograph 变体(包括 dual)是合适的。完成的标准是:选定的 n-dimensional PowerCone 设计已按照项目现有的 cone API 一致地实现,并通过其 tests 验证。

由索引模型根据 Issue 内容生成。

评估

技术栈
julia
领域
api
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
停滞
描述清晰度
需要澄清
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。