Outer ALM Solver#
- class alpaqa._alpaqa.float64.ALMSolver
Main augmented Lagrangian solver.
C++ documentation:
alpaqa::ALMSolver
- __call__(self: alpaqa._alpaqa.float64.ALMSolver, problem: alpaqa._alpaqa.float64.Problem | alpaqa._alpaqa.float64.ControlProblem, x: numpy.ndarray[numpy.float64[m, 1]] | None = None, y: numpy.ndarray[numpy.float64[m, 1]] | None = None, *, asynchronous: bool = True, suppress_interrupt: bool = False) tuple
Solve.
- Parameters:
problem – Problem to solve.
x – Initial guess for decision variables \(x\)
y – Initial guess for Lagrange multipliers \(y\)
asynchronous – Release the GIL and run the solver on a separate thread
suppress_interrupt – If the solver is interrupted by a
KeyboardInterrupt
, don’t propagate this exception back to the Python interpreter, but stop the solver early, and return a solution with the status set toalpaqa._alpaqa.SolverStatus.Interrupted
.
- Returns:
Solution \(x\)
Lagrange multipliers \(y\) at the solution
Statistics
- __init__(*args, **kwargs)
Overloaded function.
__init__(self: alpaqa._alpaqa.float64.ALMSolver, other: alpaqa._alpaqa.float64.ALMSolver) -> None
Create a copy
__init__(self: alpaqa._alpaqa.float64.ALMSolver) -> None
Build an ALM solver using Structured PANOC as inner solver.
__init__(self: alpaqa._alpaqa.float64.ALMSolver, inner_solver: alpaqa._alpaqa.float64.InnerSolver) -> None
Build an ALM solver using the given inner solver.
__init__(self: alpaqa._alpaqa.float64.ALMSolver, inner_solver: alpaqa._alpaqa.float64.InnerOCPSolver) -> None
Build an ALM solver using the given inner solver.
__init__(self: alpaqa._alpaqa.float64.ALMSolver, alm_params: Union[alpaqa._alpaqa.float64.ALMParams, dict], inner_solver: alpaqa._alpaqa.float64.InnerSolver) -> None
Build an ALM solver using the given inner solver.
__init__(self: alpaqa._alpaqa.float64.ALMSolver, alm_params: Union[alpaqa._alpaqa.float64.ALMParams, dict], inner_solver: alpaqa._alpaqa.float64.InnerOCPSolver) -> None
Build an ALM solver using the given inner solver.
- property inner_solver
- property name
- property params
- stop(self: alpaqa._alpaqa.float64.ALMSolver) None
- class alpaqa._alpaqa.float64.ALMParams
C++ documentation:
alpaqa::ALMParams
- __init__(*args, **kwargs)
Overloaded function.
__init__(self: alpaqa._alpaqa.float64.ALMParams, params: dict) -> None
__init__(self: alpaqa._alpaqa.float64.ALMParams, **kwargs) -> None
- property dual_tolerance
- property initial_penalty
- property initial_penalty_factor
- property initial_tolerance
- property max_iter
- property max_multiplier
- property max_penalty
- property max_time
- property min_penalty
- property penalty_update_factor
- property print_interval
- property print_precision
- property rel_penalty_increase_threshold
- property single_penalty_factor
- to_dict(self: alpaqa._alpaqa.float64.ALMParams) dict
- property tolerance
- property tolerance_update_factor