Skip to content

[WIP] Make BQPD matrix-free#124

Merged
cvanaret merged 5 commits intomainfrom
bqpd_matrix_free2
Apr 2, 2025
Merged

[WIP] Make BQPD matrix-free#124
cvanaret merged 5 commits intomainfrom
bqpd_matrix_free2

Conversation

@cvanaret
Copy link
Owner

@cvanaret cvanaret commented Dec 2, 2024

BQPD requires only Hessian-vector products, not the explicit matrix.

Steps:

  • add a Hessian-vector product function in Model and OptimizationProblem.
  • add a Hessian-vector product function in HessianModel.
  • hide pointers to the OptimizationProblem, HessianModel and Multipliers into BQPD's workspace (int* lws) in solve_QP, and retrieve them in hessian_vector_product().
  • call the aforementioned function in BQPD's hessian_vector_product().
  • update hessian_quadratic_product() (used for evaluating the subproblem objective) accordingly.

Supersedes #114.

@cvanaret cvanaret force-pushed the bqpd_matrix_free2 branch from 24b7da0 to 79e1c3d Compare March 31, 2025 16:37
…e only exception is when the Hessian must be regularized, in which case the explicit Hessian is need by the direct linear solver
@cvanaret cvanaret merged commit 67f5ac4 into main Apr 2, 2025
15 checks passed
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.

2 participants