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

Use the SCS box cone API #67

Merged
merged 27 commits into from
Jul 25, 2022
Merged

Use the SCS box cone API #67

merged 27 commits into from
Jul 25, 2022

Conversation

stephane-caron
Copy link
Member

@stephane-caron stephane-caron commented Jun 24, 2022

Use the box cone API of SCS.

Performance

Here is a comparison of performance on my machine for:

  1. Using the box cone API
  2. Stacking inequalities in the positive cone
Problem Box cone Positive cone
Sparse $(n=500)$ 4.99 ms ± 3.42 µs 6.33 ms ± 7.64 µs
Small dense 1.09 ms ± 9.7 µs 612 µs ± 5.36 µs

On the random dense benchmark the box API does not seem to scale as well though:

image

Here $bl=-0.3$ and $bu=0.3$ for every coordinate. Here is another variation of the problem where $bl=-0.03$ and $bu=0.03$, so that box inequalities are more often constrained in optimal solutions:

image

From these observations only, it seems using the box cone performs better than stacking in the positive cone on sparse, but worse on dense problems.

@stephane-caron stephane-caron marked this pull request as draft June 24, 2022 17:52
@stephane-caron stephane-caron linked an issue Jun 24, 2022 that may be closed by this pull request
@stephane-caron stephane-caron changed the title Use SCS box cone API Try the SCS box cone API Jun 24, 2022
@stephane-caron stephane-caron changed the title Try the SCS box cone API Use the SCS box cone API Jul 25, 2022
@stephane-caron stephane-caron marked this pull request as ready for review July 25, 2022 15:40
@stephane-caron stephane-caron merged commit 21dad7b into master Jul 25, 2022
@stephane-caron stephane-caron deleted the feature/scs_box_cone branch September 1, 2022 12:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Try the SCS box cone for lower and upper bounds
1 participant