Skip to content

Conversation

@angeloskorakitis
Copy link

Benchmark: Sparse SDP Problems

Test configuration

Parameters used for simulated annealing

  • CONSTANT_1 20
  • walkLength = 3
  • convergenceWindow_ = 9
  • (the rest remained the same)

Important Note: For Volesti these benchmarks use the origin as the initial point without explicitly computing an interior point.

Results

Library Instance Expected Min Computed Min Error Status Time
Volesti Sparse 30x100 -1.0494e+01 -1.0442e+01 5.22e-02 ✅ PASS 0.372s
SDPA Sparse 30x100 -1.0494e+01 -1.9713e+01 9.22e+00 ❌ FAIL* 0.558s
Volesti Sparse 40x100 -1.4262e+01 -1.4023e+01 2.39e-01 ✅ PASS 0.651s
SDPA Sparse 40x100 -1.4262e+01 -5.5061e+00 8.76e+00 ❌ FAIL* 0.868s
Volesti Sparse 40x300 -4.3696e+00 -4.3213e+00 4.83e-02 ✅ PASS 4.876s
SDPA Sparse 40x300 -4.3696e+00 -2.6647e+00 1.70e+00 ❌ FAIL* 5.839s
Volesti Sparse 50x200 -9.5851e+00 -9.2579e+00 3.27e-01 ✅ PASS 1.624s
SDPA Sparse 50x200 -9.5851e+00 +7.3211e+00 1.69e+01 ❌ FAIL* 1.838s

*SDPA failures are due to large primal feasibility errors (>100), indicating the solver did not converge to a feasible solution on these sparse instances.

Key Observations

  • Sparse Problem Handling: Volesti successfully solves all sparse SDP instances, while SDPA fails on all sparse test cases
  • Performance: Volesti maintains competitive speed even on sparse problems (40x300 with 951k sparse entries solved in ~5s)
  • Accuracy: Volesti achieves good approximations

Sparse Problem Details

Instance Sparse Entries Sparsity Pattern
30x100 81,550 ~9.05% density
40x100 107,050 ~6.69% density
40x300 951,150 ~19.81% density
50x200 525,100 ~10.50% density

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants