Outer ALM Solver#
- class alpaqa.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 to- 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.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