Uno icon indicating copy to clipboard operation
Uno copied to clipboard

[WIP] Upgrade from 4 to 8 ingredients

Open cvanaret opened this issue 1 year ago • 0 comments

The goal of this PR is to upgrade from 4 to 8 ingredients:

  • reformulation layer:
    • constraint relaxation strategy
    • inequality handling method
  • subproblem layer:
    • local model
    • hessian model
    • regularization strategy
  • subproblem solver layer
    • subproblem solver
  • globalization layer:
    • globalization strategy
    • globalization mechanism.

Steps:

  • [x] introduce a LagrangeNewtonSubproblem ingredient
  • [x] introduce InequalityHandlingMethod ingredient
  • [x] introduce HessianModel ingredient
  • [x] introduce RegularizationStrategy ingredient
  • [x] pass LagrangeNewtonSubproblem to QP/LP subproblem solvers
  • [x] pass LagrangeNewtonSubproblem to linear solvers
  • [x] defer the Hessian computation of the Model to the HessianModel
  • [ ] pass LagrangeNewtonSubproblem to globalization strategy
  • [x] rename QPSolver and SymmetricLinearSolver into InequalityQPSolver and EqualityQPSolver
  • [x] merge classes QPMethod and LPMethod into class InequalityConstrainedMethod
  • [ ] handle InequalityQPSolver and LPSolver in InequalityConstrainedMethod
  • [ ] fix computation of least-square multipliers
  • [ ] allocate and store the linear solver required in PrimalRegularization and PrimalDualRegularization
  • [x] allocate memory for matrices only in subproblem solvers
  • [ ] create matrix views in subproblem solvers for evaluation of Hessian and Jacobian
  • [x] compute number of Hessian nonzeros for memory allocation
  • [ ] restore unused ScaledModel

cvanaret avatar Dec 12 '24 20:12 cvanaret