Problem formulation

class alpaqa.BoxConstrProblem

C++ documentation: alpaqa::BoxConstrProblem

__init__(*args, **kwargs)

Overloaded function.

  1. __init__(self: alpaqa._alpaqa.float64.BoxConstrProblem, other: alpaqa._alpaqa.float64.BoxConstrProblem) -> None

Create a copy

  1. __init__(self: alpaqa._alpaqa.float64.BoxConstrProblem, num_variables: int, num_constraints: int) -> None

Parameters:
  • num_variables – Number of decision variables

  • num_constraints – Number of constraints

eval_inactive_indices_res_lna(*args, **kwargs)

Overloaded function.

  1. eval_inactive_indices_res_lna(self: alpaqa._alpaqa.float64.BoxConstrProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]], J: numpy.ndarray[numpy.int64[m, 1], flags.writeable]) -> int

  2. eval_inactive_indices_res_lna(self: alpaqa._alpaqa.float64.BoxConstrProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.int64[m, 1]]

eval_projecting_difference_constraints(*args, **kwargs)

Overloaded function.

  1. eval_projecting_difference_constraints(self: alpaqa._alpaqa.float64.BoxConstrProblem, z: numpy.ndarray[numpy.float64[m, 1]], e: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_projecting_difference_constraints(self: alpaqa._alpaqa.float64.BoxConstrProblem, z: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_projection_multipliers(self: alpaqa._alpaqa.float64.BoxConstrProblem, y: numpy.ndarray[numpy.float64[m, 1], flags.writeable], M: float) None
eval_proximal_gradient_step(*args, **kwargs)

Overloaded function.

  1. eval_proximal_gradient_step(self: alpaqa._alpaqa.float64.BoxConstrProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]], x_hat: numpy.ndarray[numpy.float64[m, 1], flags.writeable], p: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> float

  2. eval_proximal_gradient_step(self: alpaqa._alpaqa.float64.BoxConstrProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]]) -> tuple[numpy.ndarray[numpy.float64[m, 1]], numpy.ndarray[numpy.float64[m, 1]], float]

property general_bounds

General constraint bounds, \(g(x) \in D\)

get_general_bounds(self: alpaqa._alpaqa.float64.BoxConstrProblem) alpaqa._alpaqa.float64.Box
get_variable_bounds(self: alpaqa._alpaqa.float64.BoxConstrProblem) alpaqa._alpaqa.float64.Box
property l1_reg

\(\ell_1\) regularization on \(x\)

property num_constraints

Number of general constraints \(m\), dimension of \(g(x)\)

property num_variables

Number of decision variables \(n\), dimension of \(x\)

property penalty_alm_split

Index between quadratic penalty and augmented Lagrangian constraints

resize(self: alpaqa._alpaqa.float64.BoxConstrProblem, num_variables: int, num_constraints: int) None
property variable_bounds

Box constraints on the decision variables, \(x\in C\)

class alpaqa.Problem

C++ documentation: alpaqa::TypeErasedProblem

__init__(*args, **kwargs)

Overloaded function.

  1. __init__(self: alpaqa._alpaqa.float64.Problem, other: alpaqa._alpaqa.float64.Problem) -> None

Create a copy

  1. __init__(self: alpaqa._alpaqa.float64.Problem, problem: alpaqa._alpaqa.float64.CasADiProblem) -> None

Explicit conversion.

  1. __init__(self: alpaqa._alpaqa.float64.Problem, problem: alpaqa._alpaqa.float64.CUTEstProblem) -> None

Explicit conversion.

  1. __init__(self: alpaqa._alpaqa.float64.Problem, problem: alpaqa._alpaqa.float64.DLProblem) -> None

Explicit conversion.

  1. __init__(self: alpaqa._alpaqa.float64.Problem, problem: object) -> None

Explicit conversion from a custom Python class.

check(self: alpaqa._alpaqa.float64.Problem) None
eval_augmented_lagrangian(*args, **kwargs)

Overloaded function.

  1. eval_augmented_lagrangian(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]], ŷ: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> float

  2. eval_augmented_lagrangian(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]]) -> tuple[float, numpy.ndarray[numpy.float64[m, 1]]]

eval_augmented_lagrangian_and_gradient(*args, **kwargs)

Overloaded function.

  1. eval_augmented_lagrangian_and_gradient(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1], flags.writeable], work_n: numpy.ndarray[numpy.float64[m, 1], flags.writeable], work_m: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> float

  2. eval_augmented_lagrangian_and_gradient(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]]) -> tuple[float, numpy.ndarray[numpy.float64[m, 1]]]

eval_augmented_lagrangian_gradient(*args, **kwargs)

Overloaded function.

  1. eval_augmented_lagrangian_gradient(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1], flags.writeable], work_n: numpy.ndarray[numpy.float64[m, 1], flags.writeable], work_m: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_augmented_lagrangian_gradient(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_augmented_lagrangian_hessian(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]], scale: float = 1.0) tuple[object, alpaqa._alpaqa.Symmetry]

Returns the Hessian of the augmented Lagrangian and its symmetry.

eval_augmented_lagrangian_hessian_product(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]], scale: float, v: numpy.ndarray[numpy.float64[m, 1]], Hv: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) None
eval_constraints(*args, **kwargs)

Overloaded function.

  1. eval_constraints(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], gx: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_constraints(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_constraints_gradient_product(*args, **kwargs)

Overloaded function.

  1. eval_constraints_gradient_product(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], grad_gxy: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_constraints_gradient_product(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_constraints_jacobian(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]]) tuple[object, alpaqa._alpaqa.Symmetry]

Returns the Jacobian of the constraints and its symmetry.

eval_grad_gi(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], i: int, grad_gi: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) None
eval_inactive_indices_res_lna(*args, **kwargs)

Overloaded function.

  1. eval_inactive_indices_res_lna(self: alpaqa._alpaqa.float64.Problem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]], J: numpy.ndarray[numpy.int64[m, 1], flags.writeable]) -> int

  2. eval_inactive_indices_res_lna(self: alpaqa._alpaqa.float64.Problem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.int64[m, 1]]

eval_lagrangian_gradient(*args, **kwargs)

Overloaded function.

  1. eval_lagrangian_gradient(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], grad_L: numpy.ndarray[numpy.float64[m, 1], flags.writeable], work_n: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_lagrangian_gradient(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_lagrangian_hessian(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], scale: float = 1.0) tuple[object, alpaqa._alpaqa.Symmetry]

Returns the Hessian of the Lagrangian and its symmetry.

eval_lagrangian_hessian_product(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], scale: float, v: numpy.ndarray[numpy.float64[m, 1]], Hv: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) None
eval_objective(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]]) float
eval_objective_and_constraints(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], g: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) float
eval_objective_and_gradient(*args, **kwargs)

Overloaded function.

  1. eval_objective_and_gradient(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], grad_fx: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> float

  2. eval_objective_and_gradient(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]]) -> tuple

eval_objective_gradient(*args, **kwargs)

Overloaded function.

  1. eval_objective_gradient(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], grad_fx: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_objective_gradient(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_objective_gradient_and_constraints_gradient_product(self: alpaqa._alpaqa.float64.Problem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], grad_f: numpy.ndarray[numpy.float64[m, 1], flags.writeable], grad_gxy: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) None
eval_projecting_difference_constraints(*args, **kwargs)

Overloaded function.

  1. eval_projecting_difference_constraints(self: alpaqa._alpaqa.float64.Problem, z: numpy.ndarray[numpy.float64[m, 1]], e: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_projecting_difference_constraints(self: alpaqa._alpaqa.float64.Problem, z: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_projection_multipliers(self: alpaqa._alpaqa.float64.Problem, y: numpy.ndarray[numpy.float64[m, 1], flags.writeable], M: float) None
eval_proximal_gradient_step(*args, **kwargs)

Overloaded function.

  1. eval_proximal_gradient_step(self: alpaqa._alpaqa.float64.Problem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]], x_hat: numpy.ndarray[numpy.float64[m, 1], flags.writeable], p: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> float

  2. eval_proximal_gradient_step(self: alpaqa._alpaqa.float64.Problem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]]) -> tuple[numpy.ndarray[numpy.float64[m, 1]], numpy.ndarray[numpy.float64[m, 1]], float]

get_general_bounds(self: alpaqa._alpaqa.float64.Problem) alpaqa._alpaqa.float64.Box
get_variable_bounds(self: alpaqa._alpaqa.float64.Problem) alpaqa._alpaqa.float64.Box
property num_constraints

Number of general constraints, dimension of \(g(x)\)

property num_variables

Number of decision variables, dimension of \(x\)

provides_check(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_augmented_lagrangian(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_augmented_lagrangian_and_gradient(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_augmented_lagrangian_gradient(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_augmented_lagrangian_hessian(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_augmented_lagrangian_hessian_product(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_constraints_jacobian(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_grad_gi(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_inactive_indices_res_lna(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_lagrangian_gradient(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_lagrangian_hessian(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_lagrangian_hessian_product(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_objective_and_constraints(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_objective_and_gradient(self: alpaqa._alpaqa.float64.Problem) bool
provides_eval_objective_gradient_and_constraints_gradient_product(self: alpaqa._alpaqa.float64.Problem) bool
provides_get_augmented_lagrangian_hessian_sparsity(self: alpaqa._alpaqa.float64.Problem) bool
provides_get_constraints_jacobian_sparsity(self: alpaqa._alpaqa.float64.Problem) bool
provides_get_general_bounds(self: alpaqa._alpaqa.float64.Problem) bool
provides_get_lagrangian_hessian_sparsity(self: alpaqa._alpaqa.float64.Problem) bool
provides_get_variable_bounds(self: alpaqa._alpaqa.float64.Problem) bool
class alpaqa.CUTEstProblem

C++ documentation: alpaqa::CUTEstProblem

See alpaqa.Problem for the full documentation.

class Report
class Calls
__init__(*args, **kwargs)
property constraints
property constraints_grad
property constraints_hess
property hessian_times_vector
property objective
property objective_grad
property objective_hess
__init__(*args, **kwargs)
property calls
property time
property time_setup
__init__(*args, **kwargs)

Overloaded function.

  1. __init__(self: alpaqa._alpaqa.float64.CUTEstProblem, so_filename: str, outsdiff_filename: str = None, sparse: bool = False, dl_flags: alpaqa._alpaqa.DynamicLoadFlags = …) -> None

Load a CUTEst problem from the given shared library and OUTSDIF.d file

  1. __init__(self: alpaqa._alpaqa.float64.CUTEstProblem, other: alpaqa._alpaqa.float64.CUTEstProblem) -> None

Create a copy

check(self: alpaqa._alpaqa.float64.CUTEstProblem) None
eval_augmented_lagrangian_hessian_product(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]], scale: float, v: numpy.ndarray[numpy.float64[m, 1]], Hv: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) None
eval_constraints(*args, **kwargs)

Overloaded function.

  1. eval_constraints(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], gx: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_constraints(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_constraints_gradient_product(*args, **kwargs)

Overloaded function.

  1. eval_constraints_gradient_product(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], grad_gxy: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_constraints_gradient_product(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_constraints_jacobian(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]]) tuple[object, alpaqa._alpaqa.Symmetry]

Returns the Jacobian of the constraints and its symmetry.

eval_grad_gi(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], i: int, grad_gi: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) None
eval_inactive_indices_res_lna(*args, **kwargs)

Overloaded function.

  1. eval_inactive_indices_res_lna(self: alpaqa._alpaqa.float64.CUTEstProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]], J: numpy.ndarray[numpy.int64[m, 1], flags.writeable]) -> int

  2. eval_inactive_indices_res_lna(self: alpaqa._alpaqa.float64.CUTEstProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.int64[m, 1]]

eval_lagrangian_gradient(*args, **kwargs)

Overloaded function.

  1. eval_lagrangian_gradient(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], grad_L: numpy.ndarray[numpy.float64[m, 1], flags.writeable], work_n: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_lagrangian_gradient(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_lagrangian_hessian(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], scale: float = 1.0) tuple[object, alpaqa._alpaqa.Symmetry]

Returns the Hessian of the Lagrangian and its symmetry.

eval_lagrangian_hessian_product(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], scale: float, v: numpy.ndarray[numpy.float64[m, 1]], Hv: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) None
eval_objective(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]]) float
eval_objective_and_constraints(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], g: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) float
eval_objective_and_gradient(*args, **kwargs)

Overloaded function.

  1. eval_objective_and_gradient(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], grad_fx: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> float

  2. eval_objective_and_gradient(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]]) -> tuple

eval_objective_gradient(*args, **kwargs)

Overloaded function.

  1. eval_objective_gradient(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]], grad_fx: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_objective_gradient(self: alpaqa._alpaqa.float64.CUTEstProblem, x: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_projecting_difference_constraints(*args, **kwargs)

Overloaded function.

  1. eval_projecting_difference_constraints(self: alpaqa._alpaqa.float64.CUTEstProblem, z: numpy.ndarray[numpy.float64[m, 1]], e: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_projecting_difference_constraints(self: alpaqa._alpaqa.float64.CUTEstProblem, z: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_projection_multipliers(self: alpaqa._alpaqa.float64.CUTEstProblem, y: numpy.ndarray[numpy.float64[m, 1], flags.writeable], M: float) None
eval_proximal_gradient_step(*args, **kwargs)

Overloaded function.

  1. eval_proximal_gradient_step(self: alpaqa._alpaqa.float64.CUTEstProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]], x_hat: numpy.ndarray[numpy.float64[m, 1], flags.writeable], p: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> float

  2. eval_proximal_gradient_step(self: alpaqa._alpaqa.float64.CUTEstProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]]) -> tuple[numpy.ndarray[numpy.float64[m, 1]], numpy.ndarray[numpy.float64[m, 1]], float]

format_report(self: alpaqa._alpaqa.float64.CUTEstProblem, report: alpaqa._alpaqa.float64.CUTEstProblem.Report | None = None) str

Convert the given report to a string.

property general_bounds

General constraint bounds, \(g(x) \in D\)

get_general_bounds(self: alpaqa._alpaqa.float64.CUTEstProblem) alpaqa._alpaqa.float64.Box
get_report(self: alpaqa._alpaqa.float64.CUTEstProblem) alpaqa._alpaqa.float64.CUTEstProblem.Report

Get the report generated by cutest_creport.

get_variable_bounds(self: alpaqa._alpaqa.float64.CUTEstProblem) alpaqa._alpaqa.float64.Box
property l1_reg

\(\ell_1\) regularization on \(x\)

property name

CUTEst problem name.

property num_constraints

Number of general constraints, dimension of \(g(x)\)

property num_variables

Number of decision variables, dimension of \(x\)

property penalty_alm_split

Index between quadratic penalty and augmented Lagrangian constraints

provides_get_variable_bounds(self: alpaqa._alpaqa.float64.CUTEstProblem) bool
resize(self: alpaqa._alpaqa.float64.BoxConstrProblem, num_variables: int, num_constraints: int) None
property variable_bounds

Box constraints on the decision variables, \(x\in C\)

property x0

Initial guess for decision variables.

property y0

Initial guess for multipliers.

class alpaqa.DLProblem

C++ documentation: alpaqa::dl::DLProblem

See alpaqa.Problem for the full documentation.

__init__(*args, **kwargs)

Overloaded function.

  1. __init__(self: alpaqa._alpaqa.float64.DLProblem, so_filename: str, *args, function_name: str = ‘register_alpaqa_problem’, user_param_str: bool = False, **kwargs) -> None

Load a problem from the given shared library file. By default, extra arguments are passed to the problem as a void pointer to a std::tuple<pybind11::args, pybind11::kwargs>. If the keyword argument user_param_str=True is used, the args is converted to a list of strings, and passed as a void pointer to a std::span<std::string_view>.

  1. __init__(self: alpaqa._alpaqa.float64.DLProblem, other: alpaqa._alpaqa.float64.DLProblem) -> None

Create a copy

call_extra_func(self: alpaqa._alpaqa.float64.DLProblem, name: str, *args, **kwargs) object

Call the given extra member function registered by the problem, with the signature pybind11::object(pybind11::args, pybind11::kwargs).

check(self: alpaqa._alpaqa.float64.DLProblem) None
eval_augmented_lagrangian(*args, **kwargs)

Overloaded function.

  1. eval_augmented_lagrangian(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]], ŷ: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> float

  2. eval_augmented_lagrangian(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]]) -> tuple[float, numpy.ndarray[numpy.float64[m, 1]]]

eval_augmented_lagrangian_and_gradient(*args, **kwargs)

Overloaded function.

  1. eval_augmented_lagrangian_and_gradient(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1], flags.writeable], work_n: numpy.ndarray[numpy.float64[m, 1], flags.writeable], work_m: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> float

  2. eval_augmented_lagrangian_and_gradient(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]]) -> tuple[float, numpy.ndarray[numpy.float64[m, 1]]]

eval_augmented_lagrangian_gradient(*args, **kwargs)

Overloaded function.

  1. eval_augmented_lagrangian_gradient(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1], flags.writeable], work_n: numpy.ndarray[numpy.float64[m, 1], flags.writeable], work_m: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_augmented_lagrangian_gradient(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_augmented_lagrangian_hessian(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]], scale: float = 1.0) tuple[object, alpaqa._alpaqa.Symmetry]

Returns the Hessian of the augmented Lagrangian and its symmetry.

eval_augmented_lagrangian_hessian_product(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], Σ: numpy.ndarray[numpy.float64[m, 1]], scale: float, v: numpy.ndarray[numpy.float64[m, 1]], Hv: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) None
eval_constraints(*args, **kwargs)

Overloaded function.

  1. eval_constraints(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], gx: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_constraints(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_constraints_gradient_product(*args, **kwargs)

Overloaded function.

  1. eval_constraints_gradient_product(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], grad_gxy: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_constraints_gradient_product(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_constraints_jacobian(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]]) tuple[object, alpaqa._alpaqa.Symmetry]

Returns the Jacobian of the constraints and its symmetry.

eval_grad_gi(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], i: int, grad_gi: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) None
eval_inactive_indices_res_lna(*args, **kwargs)

Overloaded function.

  1. eval_inactive_indices_res_lna(self: alpaqa._alpaqa.float64.DLProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]], J: numpy.ndarray[numpy.int64[m, 1], flags.writeable]) -> int

  2. eval_inactive_indices_res_lna(self: alpaqa._alpaqa.float64.DLProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.int64[m, 1]]

eval_lagrangian_gradient(*args, **kwargs)

Overloaded function.

  1. eval_lagrangian_gradient(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], grad_L: numpy.ndarray[numpy.float64[m, 1], flags.writeable], work_n: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_lagrangian_gradient(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_lagrangian_hessian(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], scale: float = 1.0) tuple[object, alpaqa._alpaqa.Symmetry]

Returns the Hessian of the Lagrangian and its symmetry.

eval_lagrangian_hessian_product(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], scale: float, v: numpy.ndarray[numpy.float64[m, 1]], Hv: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) None
eval_objective(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]]) float
eval_objective_and_constraints(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], g: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) float
eval_objective_and_gradient(*args, **kwargs)

Overloaded function.

  1. eval_objective_and_gradient(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], grad_fx: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> float

  2. eval_objective_and_gradient(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]]) -> tuple

eval_objective_gradient(*args, **kwargs)

Overloaded function.

  1. eval_objective_gradient(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], grad_fx: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_objective_gradient(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_objective_gradient_and_constraints_gradient_product(self: alpaqa._alpaqa.float64.DLProblem, x: numpy.ndarray[numpy.float64[m, 1]], y: numpy.ndarray[numpy.float64[m, 1]], grad_f: numpy.ndarray[numpy.float64[m, 1], flags.writeable], grad_gxy: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) None
eval_projecting_difference_constraints(*args, **kwargs)

Overloaded function.

  1. eval_projecting_difference_constraints(self: alpaqa._alpaqa.float64.DLProblem, z: numpy.ndarray[numpy.float64[m, 1]], e: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> None

  2. eval_projecting_difference_constraints(self: alpaqa._alpaqa.float64.DLProblem, z: numpy.ndarray[numpy.float64[m, 1]]) -> numpy.ndarray[numpy.float64[m, 1]]

eval_projection_multipliers(self: alpaqa._alpaqa.float64.DLProblem, y: numpy.ndarray[numpy.float64[m, 1], flags.writeable], M: float) None
eval_proximal_gradient_step(*args, **kwargs)

Overloaded function.

  1. eval_proximal_gradient_step(self: alpaqa._alpaqa.float64.DLProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]], x_hat: numpy.ndarray[numpy.float64[m, 1], flags.writeable], p: numpy.ndarray[numpy.float64[m, 1], flags.writeable]) -> float

  2. eval_proximal_gradient_step(self: alpaqa._alpaqa.float64.DLProblem, γ: float, x: numpy.ndarray[numpy.float64[m, 1]], grad_ψ: numpy.ndarray[numpy.float64[m, 1]]) -> tuple[numpy.ndarray[numpy.float64[m, 1]], numpy.ndarray[numpy.float64[m, 1]], float]

property general_bounds

General constraint bounds, \(g(x) \in D\)

get_general_bounds(self: alpaqa._alpaqa.float64.DLProblem) alpaqa._alpaqa.float64.Box
get_variable_bounds(self: alpaqa._alpaqa.float64.DLProblem) alpaqa._alpaqa.float64.Box
property l1_reg

\(\ell_1\) regularization on \(x\)

property num_constraints

Number of general constraints, dimension of \(g(x)\)

property num_variables

Number of decision variables, dimension of \(x\)

property penalty_alm_split

Index between quadratic penalty and augmented Lagrangian constraints

provides_eval_augmented_lagrangian(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_augmented_lagrangian_and_gradient(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_augmented_lagrangian_gradient(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_augmented_lagrangian_hessian(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_augmented_lagrangian_hessian_product(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_constraints_jacobian(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_grad_gi(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_inactive_indices_res_lna(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_lagrangian_gradient(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_lagrangian_hessian(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_lagrangian_hessian_product(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_objective_and_constraints(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_objective_and_gradient(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_eval_objective_gradient_and_constraints_gradient_product(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_get_augmented_lagrangian_hessian_sparsity(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_get_constraints_jacobian_sparsity(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_get_general_bounds(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_get_lagrangian_hessian_sparsity(self: alpaqa._alpaqa.float64.DLProblem) bool
provides_get_variable_bounds(self: alpaqa._alpaqa.float64.DLProblem) bool
resize(self: alpaqa._alpaqa.float64.BoxConstrProblem, num_variables: int, num_constraints: int) None
property variable_bounds

Box constraints on the decision variables, \(x\in C\)