-
Notifications
You must be signed in to change notification settings - Fork 227
Extend the barrier solver to SOCP problems #1051
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
Closed
yan-zaretskiy
wants to merge
94
commits into
NVIDIA:release/26.06
from
yan-zaretskiy:socp-barrier-solver
Closed
Changes from all commits
Commits
Show all changes
94 commits
Select commit
Hold shift + click to select a range
3c010ea
feat(barrier): add SOCP cone primitives and NT kernels
yan-zaretskiy 9ee0ed7
feat(barrier): integrate H^-2 cone blocks into the augmented system
yan-zaretskiy 41f763c
fix(barrier): stabilize SOCP barrier convergence
yan-zaretskiy c99368f
refactor(dual_simplex): keep cone layout packed through presolve
yan-zaretskiy a5dba68
test(dual_simplex): expand SOCP barrier coverage and tighten layout c…
yan-zaretskiy f4b9c8e
feat(mps_parser): add QCMATRIX parsing and quadratic-constraint model…
43f09b4
fix: address review suggestions (chatbot)
yuwenchen95 ac9dd8a
complete parsder for linear cost, ROW and RHS for QCQP
yuwenchen95 0bd6499
Add support for reading and writting quadratical constrains into MPS;…
yuwenchen95 d693509
Merge branch 'NVIDIA:main' into mps-socp
yuwenchen95 21b0f9a
Restrict quadratic constraints to be convex with type 'L'
yuwenchen95 e6e1f42
Clean up for the MPS parser
yuwenchen95 b9d3a48
merge the parser into SOCP implementation
yuwenchen95 8ff6ce1
minor adjustment for parser
yuwenchen95 6617f94
Add bridging for mps model to user_problem model
yuwenchen95 62380e4
Update QCQP dataset for parser check and address minor issues
yuwenchen95 969ff06
modified test check for the MPS parser
yuwenchen95 0065a10
Merge branch 'mps-socp' into socp-merge
yuwenchen95 926633a
Remove unused temp_file_3 in mps_parser_test
yuwenchen95 6f2b1fb
undo std::span for CI tests
yuwenchen95 9defd60
Apply pre-commit fixes
yuwenchen95 3389255
Merge branch 'mps-socp' into socp-merge
yuwenchen95 0a31a44
minior correction for bound check and update dataset for qcqp
yuwenchen95 5dd5ef2
Merge branch 'main' into mps-socp
yuwenchen95 0bfc961
Merge branch 'mps-socp' into socp-merge
yuwenchen95 d172213
Print # of quadratic constraints and cones
chris-maes f20d132
Add support for handling free variables in QPs with the augmented system
chris-maes c71ab13
Merge branch 'main' into mps-socp
yuwenchen95 462a2cc
fix issues in CI tests
yuwenchen95 d408b74
fix bugs for indexing linear and quadratic constraints in mps_writer
yuwenchen95 1c98f5e
fix bugs in validate_constraint_bounds for cuopt_server
yuwenchen95 4befacf
precommit check correction
yuwenchen95 bb42c32
≈Merge branch 'mps-socp' into socp-barrier-solver
yuwenchen95 f70e45d
Refresh SOCP barrier kernels
yan-zaretskiy a20ac27
Support direct MPS SOC conversion
yan-zaretskiy b1d494b
Merge with update in mps-socp
yuwenchen95 883bf63
add support for rotated second-order cone
yuwenchen95 1c1bde2
Force SOCP to be unit initialization
yuwenchen95 dbf9fa0
Update scaling computation for SOCP, beneficial for sparse exploitation
yuwenchen95 a9f82e9
uadd support for mflexible uniform coefficients in quadratic cost & l…
yuwenchen95 9e871af
block splitting free variable in socp
yuwenchen95 7e5bec7
code clean up for socp logic
yuwenchen95 36d3373
clean up translation for quadratic constraints
yuwenchen95 006edb7
more efficient problem setup from MPS data
yuwenchen95 0779f67
--amend
yuwenchen95 f148618
switch to COO format for quadratic constraint matrices assuming they …
yuwenchen95 de38b6e
merge with main
yuwenchen95 fc0609e
Add Ruiz scaling for SOCP. Dynamic regularization for affine and cent…
chris-maes df6ff35
Conditionally apply ruiz scaling
chris-maes 3cfc7d5
Be careful scaling cone variables
chris-maes 71b7a0f
add regularization for soc Hessian blocks
yuwenchen95 d7b476e
merge with main
yuwenchen95 a033c23
update operations for column scaling that fixes the buggy output in u…
yuwenchen95 5419756
update unit tests; tighting tolerance and update free variable test
yuwenchen95 2e27d61
add python API for second-order cone constraints
yuwenchen95 9b96791
add duplicate for soc variables if there are also BOUND constraints o…
yuwenchen95 2c56e53
update for python API
yuwenchen95 73e11db
--amend
yuwenchen95 e840781
shifting 'G' from python to 'L' C++ translation
yuwenchen95 4175653
Remove separate definition for quadrtic constraints
yuwenchen95 b9f0240
Fix a bug in Python's compute_slack when we have duplicate variable w…
yuwenchen95 065bd1b
Add support for duplicate quadratic terms with different coefficients…
yuwenchen95 3132961
fix a bug for the mps writer
yuwenchen95 0fd4142
merge with main
yuwenchen95 f83c1b5
correct multiplication operation in IR
yuwenchen95 4f2a2c1
clarifying 'free' to be free variables in linear parts
yuwenchen95 52f5640
--amend
yuwenchen95 5a5d6f2
move cone complimentarity computation into affine and corrector step
yuwenchen95 7572551
Revert "Prepare release/26.06"
jolorunyomi 90bf1b0
Merge pull request #1258 from NVIDIA/release/26.06
GPUtester 37814ed
Update to 26.08 (#1259)
jolorunyomi d8ffe58
Fix bug on SOCPs with quadratic objectives. Fix misleading regulariza…
chris-maes d64a82b
add support of SOCP also in qp path
yuwenchen95 0b4d8e3
--amend
yuwenchen95 6f423ae
Merge pull request #1261 from NVIDIA/release/26.06
GPUtester 6f45175
Merge pull request #1262 from NVIDIA/release/26.06
GPUtester 8babc7c
remove out-dated comment
yuwenchen95 6191e4d
Merge pull request #1263 from NVIDIA/release/26.06
GPUtester 3eeccb8
disable barrier_solve but keep native free linear variables
yuwenchen95 7773bda
add nvtx ranges for profiling
yuwenchen95 9655f05
--amend
yuwenchen95 9ea0205
Fix version failure in check style for skills (#1271)
ramakrishnap-nv 9c9bf27
Merge branch 'release/26.06' into main-merge-release/26.06.01
ramakrishnap-nv 0c2168f
Merge pull request #1273 from rgsl888prabhu/main-merge-release/26.06.01
ramakrishnap-nv 881ed2f
Merge pull request #1274 from NVIDIA/release/26.06
GPUtester 1ca1501
Add barrier_presolve back for socps
yuwenchen95 3f01565
Merge pull request #1278 from NVIDIA/release/26.06
GPUtester 88eccc6
Merge pull request #1279 from NVIDIA/release/26.06
GPUtester 6da457e
Merge branch 'release/26.06' into main-merge-release/26.06.02
ramakrishnap-nv 2cbef3e
Merge pull request #1281 from rgsl888prabhu/main-merge-release/26.06.02
ramakrishnap-nv 759a0bc
Merge pull request #1282 from NVIDIA/release/26.06
GPUtester 41daa6d
Merge with main
yuwenchen95 4654c93
Improve post-solve process && Fix broken python API for socp
yuwenchen95 126c880
Remove the unnecessary COO-> CSR -> COO conversion of quadratic const…
yuwenchen95 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| release/26.06 | ||
| main |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| 26.06.00 | ||
| 26.08.00 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.