OR-Tools  9.3
operations_research::pdlp Namespace Reference

Namespaces

namespace  internal
 

Classes

class  DiagonalTrustRegionProblem
 
class  DiagonalTrustRegionProblemFromQp
 
struct  IterationCallbackInfo
 
struct  LagrangianPart
 
struct  LocalizedLagrangianBounds
 
struct  PrimalAndDualSolution
 
struct  QuadraticProgram
 
struct  QuadraticProgramBoundNorms
 
struct  RelativeConvergenceInformation
 
struct  RescalingOptions
 
struct  ScalingVectors
 
class  ShardedQuadraticProgram
 
class  ShardedWeightedAverage
 
class  Sharder
 
struct  SingularValueAndIterations
 
struct  SolverResult
 
struct  TerminationReasonAndPointType
 
struct  TrustRegionResult
 

Enumerations

enum class  PrimalDualNorm { kMaxNorm , kEuclideanNorm }
 

Functions

ConvergenceInformation ComputeConvergenceInformation (const ShardedQuadraticProgram &scaled_sharded_qp, const Eigen::VectorXd &col_scaling_vec, const Eigen::VectorXd &row_scaling_vec, const Eigen::VectorXd &scaled_primal_solution, const Eigen::VectorXd &scaled_dual_solution, PointType candidate_type)
 
InfeasibilityInformation ComputeInfeasibilityInformation (const ShardedQuadraticProgram &scaled_sharded_qp, const Eigen::VectorXd &col_scaling_vec, const Eigen::VectorXd &row_scaling_vec, const Eigen::VectorXd &scaled_primal_ray, const Eigen::VectorXd &scaled_dual_ray, PointType candidate_type)
 
ConvergenceInformation ComputeScaledConvergenceInformation (const ShardedQuadraticProgram &sharded_qp, const VectorXd &primal_solution, const VectorXd &dual_solution, PointType candidate_type)
 
VectorXd ReducedCosts (const ShardedQuadraticProgram &sharded_qp, const VectorXd &primal_solution, const VectorXd &dual_solution, bool use_zero_primal_objective)
 
absl::optional< ConvergenceInformation > GetConvergenceInformation (const IterationStats &stats, PointType candidate_type)
 
absl::optional< InfeasibilityInformation > GetInfeasibilityInformation (const IterationStats &stats, PointType candidate_type)
 
absl::optional< PointMetadata > GetPointMetadata (const IterationStats &stats, const PointType point_type)
 
void SetRandomProjections (const ShardedQuadraticProgram &sharded_qp, const Eigen::VectorXd &primal_solution, const Eigen::VectorXd &dual_solution, const std::vector< int > &random_projection_seeds, PointMetadata &metadata)
 
ConvergenceInformation ComputeScaledConvergenceInformation (const ShardedQuadraticProgram &sharded_qp, const Eigen::VectorXd &primal_solution, const Eigen::VectorXd &dual_solution, PointType candidate_type)
 
Eigen::VectorXd ReducedCosts (const ShardedQuadraticProgram &scaled_sharded_qp, const Eigen::VectorXd &primal_solution, const Eigen::VectorXd &dual_solution, bool use_zero_primal_objective=false)
 
SolverResult PrimalDualHybridGradient (QuadraticProgram qp, const PrimalDualHybridGradientParams &params, const std::atomic< bool > *interrupt_solve, IterationStatsCallback iteration_stats_callback)
 
SolverResult PrimalDualHybridGradient (QuadraticProgram qp, const PrimalDualHybridGradientParams &params, absl::optional< PrimalAndDualSolution > initial_solution, const std::atomic< bool > *interrupt_solve, IterationStatsCallback iteration_stats_callback)
 
SolverResult PrimalDualHybridGradient (QuadraticProgram qp, const PrimalDualHybridGradientParams &params, const std::atomic< bool > *interrupt_solve=nullptr, std::function< void(const IterationCallbackInfo &)> iteration_stats_callback=nullptr)
 
SolverResult PrimalDualHybridGradient (QuadraticProgram qp, const PrimalDualHybridGradientParams &params, absl::optional< PrimalAndDualSolution > initial_solution, const std::atomic< bool > *interrupt_solve=nullptr, std::function< void(const IterationCallbackInfo &)> iteration_stats_callback=nullptr)
 
absl::Status ValidateQuadraticProgramDimensions (const QuadraticProgram &qp)
 
bool HasValidBounds (const QuadraticProgram &qp)
 
absl::StatusOr< QuadraticProgramQpFromMpModelProto (const MPModelProto &proto, bool relax_integer_variables, bool include_names)
 
absl::Status CanFitInMpModelProto (const QuadraticProgram &qp)
 
absl::StatusOr< MPModelProto > QpToMpModelProto (const QuadraticProgram &qp)
 
void SetEigenMatrixFromTriplets (std::vector< Eigen::Triplet< double, int64_t > > triplets, Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &matrix)
 
bool IsLinearProgram (const QuadraticProgram &qp)
 
QuadraticProgram ReadQuadraticProgramOrDie (const std::string &filename, bool include_names)
 
QuadraticProgram ReadMpsLinearProgramOrDie (const std::string &lp_file, bool include_names)
 
QuadraticProgram ReadMPModelProtoFileOrDie (const std::string &mpmodel_proto_file, bool include_names)
 
absl::Status WriteLinearProgramToMps (const QuadraticProgram &linear_program, const std::string &mps_file)
 
absl::Status WriteQuadraticProgramToMPModelProto (const QuadraticProgram &quadratic_program, const std::string &mpmodel_proto_file)
 
QuadraticProgramStats ComputeStats (const ShardedQuadraticProgram &qp, const double infinite_constraint_bound_threshold)
 
void LInfRuizRescaling (const ShardedQuadraticProgram &sharded_qp, const int num_iterations, VectorXd &row_scaling_vec, VectorXd &col_scaling_vec)
 
void L2NormRescaling (const ShardedQuadraticProgram &sharded_qp, VectorXd &row_scaling_vec, VectorXd &col_scaling_vec)
 
ScalingVectors ApplyRescaling (const RescalingOptions &rescaling_options, ShardedQuadraticProgram &sharded_qp)
 
LagrangianPart ComputePrimalGradient (const ShardedQuadraticProgram &sharded_qp, const VectorXd &primal_solution, const VectorXd &dual_product)
 
double DualSubgradientCoefficient (const double constraint_lower_bound, const double constraint_upper_bound, const double dual, const double primal_product)
 
LagrangianPart ComputeDualGradient (const ShardedQuadraticProgram &sharded_qp, const Eigen::VectorXd &dual_solution, const Eigen::VectorXd &primal_product)
 
SingularValueAndIterations EstimateMaximumSingularValueOfConstraintMatrix (const ShardedQuadraticProgram &sharded_qp, const absl::optional< VectorXd > &primal_solution, const absl::optional< VectorXd > &dual_solution, const double desired_relative_error, const double failure_probability, std::mt19937 &mt_generator)
 
bool HasValidBounds (const ShardedQuadraticProgram &sharded_qp)
 
void ProjectToPrimalVariableBounds (const ShardedQuadraticProgram &sharded_qp, VectorXd &primal)
 
void ProjectToDualVariableBounds (const ShardedQuadraticProgram &sharded_qp, VectorXd &dual)
 
void LInfRuizRescaling (const ShardedQuadraticProgram &sharded_qp, const int num_iterations, Eigen::VectorXd &row_scaling_vec, Eigen::VectorXd &col_scaling_vec)
 
void L2NormRescaling (const ShardedQuadraticProgram &sharded_qp, Eigen::VectorXd &row_scaling_vec, Eigen::VectorXd &col_scaling_vec)
 
LagrangianPart ComputePrimalGradient (const ShardedQuadraticProgram &sharded_qp, const Eigen::VectorXd &primal_solution, const Eigen::VectorXd &dual_product)
 
SingularValueAndIterations EstimateMaximumSingularValueOfConstraintMatrix (const ShardedQuadraticProgram &sharded_qp, const absl::optional< Eigen::VectorXd > &primal_solution, const absl::optional< Eigen::VectorXd > &dual_solution, const double desired_relative_error, const double failure_probability, std::mt19937 &mt_generator)
 
void ProjectToPrimalVariableBounds (const ShardedQuadraticProgram &sharded_qp, Eigen::VectorXd &primal)
 
void ProjectToDualVariableBounds (const ShardedQuadraticProgram &sharded_qp, Eigen::VectorXd &dual)
 
VectorXd TransposedMatrixVectorProduct (const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &matrix, const VectorXd &vector, const Sharder &sharder)
 
void AddScaledVector (const double scale, const VectorXd &increment, const Sharder &sharder, VectorXd &dest)
 
void AssignVector (const VectorXd &vec, const Sharder &sharder, VectorXd &dest)
 
VectorXd CloneVector (const VectorXd &vec, const Sharder &sharder)
 
void CoefficientWiseProductInPlace (const VectorXd &scale, const Sharder &sharder, VectorXd &dest)
 
void CoefficientWiseQuotientInPlace (const VectorXd &scale, const Sharder &sharder, VectorXd &dest)
 
double Dot (const VectorXd &v1, const VectorXd &v2, const Sharder &sharder)
 
double LInfNorm (const VectorXd &vector, const Sharder &sharder)
 
double L1Norm (const VectorXd &vector, const Sharder &sharder)
 
double SquaredNorm (const VectorXd &vector, const Sharder &sharder)
 
double Norm (const VectorXd &vector, const Sharder &sharder)
 
double SquaredDistance (const VectorXd &vector1, const VectorXd &vector2, const Sharder &sharder)
 
double Distance (const VectorXd &vector1, const VectorXd &vector2, const Sharder &sharder)
 
double ScaledLInfNorm (const VectorXd &vector, const VectorXd &scale, const Sharder &sharder)
 
double ScaledSquaredNorm (const VectorXd &vector, const VectorXd &scale, const Sharder &sharder)
 
double ScaledNorm (const VectorXd &vector, const VectorXd &scale, const Sharder &sharder)
 
VectorXd ScaledColLInfNorm (const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &matrix, const VectorXd &row_scaling_vec, const VectorXd &col_scaling_vec, const Sharder &sharder)
 
VectorXd ScaledColL2Norm (const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &matrix, const VectorXd &row_scaling_vec, const VectorXd &col_scaling_vec, const Sharder &sharder)
 
bool IsDiagonal (const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &matrix, const Sharder &sharder)
 
Eigen::VectorXd TransposedMatrixVectorProduct (const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &matrix, const Eigen::VectorXd &vector, const Sharder &Sharder)
 
void AddScaledVector (double scale, const Eigen::VectorXd &increment, const Sharder &sharder, Eigen::VectorXd &dest)
 
void AssignVector (const Eigen::VectorXd &vec, const Sharder &sharder, Eigen::VectorXd &dest)
 
Eigen::VectorXd CloneVector (const Eigen::VectorXd &vec, const Sharder &sharder)
 
void CoefficientWiseProductInPlace (const Eigen::VectorXd &scale, const Sharder &sharder, Eigen::VectorXd &dest)
 
void CoefficientWiseQuotientInPlace (const Eigen::VectorXd &scale, const Sharder &sharder, Eigen::VectorXd &dest)
 
double Dot (const Eigen::VectorXd &v1, const Eigen::VectorXd &v2, const Sharder &sharder)
 
double LInfNorm (const Eigen::VectorXd &vector, const Sharder &sharder)
 
double L1Norm (const Eigen::VectorXd &vector, const Sharder &sharder)
 
double SquaredNorm (const Eigen::VectorXd &vector, const Sharder &sharder)
 
double Norm (const Eigen::VectorXd &vector, const Sharder &sharder)
 
double SquaredDistance (const Eigen::VectorXd &vector1, const Eigen::VectorXd &vector2, const Sharder &sharder)
 
double Distance (const Eigen::VectorXd &vector1, const Eigen::VectorXd &vector2, const Sharder &sharder)
 
double ScaledLInfNorm (const Eigen::VectorXd &vector, const Eigen::VectorXd &scale, const Sharder &sharder)
 
double ScaledSquaredNorm (const Eigen::VectorXd &vector, const Eigen::VectorXd &scale, const Sharder &sharder)
 
double ScaledNorm (const Eigen::VectorXd &vector, const Eigen::VectorXd &scale, const Sharder &sharder)
 
Eigen::VectorXd ScaledColLInfNorm (const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &matrix, const Eigen::VectorXd &row_scaling_vec, const Eigen::VectorXd &col_scaling_vec, const Sharder &sharder)
 
Eigen::VectorXd ScaledColL2Norm (const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &matrix, const Eigen::VectorXd &row_scaling_vec, const Eigen::VectorXd &col_scaling_vec, const Sharder &sharder)
 
absl::Status ValidateTerminationCriteria (const TerminationCriteria &criteria)
 
absl::Status ValidateAdaptiveLinesearchParams (const AdaptiveLinesearchParams &params)
 
absl::Status ValidateMalitskyPockParams (const MalitskyPockParams &params)
 
absl::Status ValidatePrimalDualHybridGradientParams (const PrimalDualHybridGradientParams &params)
 
absl::optional< TerminationReasonAndPointTypeCheckTerminationCriteria (const TerminationCriteria &criteria, const IterationStats &stats, const QuadraticProgramBoundNorms &bound_norms, const bool force_numerical_termination)
 
QuadraticProgramBoundNorms BoundNormsFromProblemStats (const QuadraticProgramStats &stats)
 
RelativeConvergenceInformation ComputeRelativeResiduals (const double eps_optimal_absolute, const double eps_optimal_relative, const QuadraticProgramBoundNorms &norms, const ConvergenceInformation &stats)
 
QuadraticProgram TestLp ()
 
void VerifyTestLp (const QuadraticProgram &qp, bool maximize)
 
QuadraticProgram TinyLp ()
 
QuadraticProgram CorrelationClusteringLp ()
 
QuadraticProgram CorrelationClusteringStarLp ()
 
QuadraticProgram TestDiagonalQp1 ()
 
QuadraticProgram TestDiagonalQp2 ()
 
QuadraticProgram TestDiagonalQp3 ()
 
QuadraticProgram SmallInvalidProblemLp ()
 
QuadraticProgram SmallInconsistentVariableBoundsLp ()
 
QuadraticProgram SmallPrimalInfeasibleLp ()
 
QuadraticProgram SmallDualInfeasibleLp ()
 
QuadraticProgram SmallPrimalDualInfeasibleLp ()
 
QuadraticProgram SmallInitializationLp ()
 
QuadraticProgram LpWithoutConstraints ()
 
void VerifyTestQp (const QuadraticProgram &qp, bool maximize)
 
::Eigen::ArrayXXd ToDense (const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &sparse_mat)
 
template<typename ContainerType >
decltype(testing::Pointwise(internal::TupleIsNear(0.0), ContainerType())) FloatArrayNear (const ContainerType &container, double tolerance)
 
template<typename ContainerType >
decltype(testing::Pointwise(internal::TupleFloatEq(), ContainerType())) FloatArrayEq (const ContainerType &container)
 
template<typename EigenType >
Eigen::Array< typename EigenType::Scalar, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > EvalAsColMajorEigenArray (const EigenType &input)
 
template<typename Scalar >
absl::Span< const Scalar > EigenArrayAsSpan (const Eigen::Array< Scalar, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > &array)
 
 MATCHER_P2 (EigenArrayNear, expected_array, tolerance, "array is near "+testing::PrintToString(expected_array)+" within tolerance "+testing::PrintToString(tolerance))
 
 MATCHER_P (EigenArrayEq, expected_array, "array is almost equal to "+testing::PrintToString(expected_array))
 
template<typename T >
EigenArrayNearMatcherP2< Eigen::Array< T, Eigen::Dynamic, 1 >, double > EigenArrayNear (absl::Span< const T > data, double tolerance)
 
template<typename T >
EigenArrayNearMatcherP2< Eigen::Array< T, Eigen::Dynamic, Eigen::Dynamic >, double > EigenArrayNear (absl::Span< const absl::Span< const T > > rows, double tolerance)
 
template<typename T >
EigenArrayEqMatcherP< Eigen::Array< T, Eigen::Dynamic, 1 > > EigenArrayEq (absl::Span< const T > data)
 
template<typename T >
EigenArrayEqMatcherP< Eigen::Array< T, Eigen::Dynamic, Eigen::Dynamic > > EigenArrayEq (absl::Span< const absl::Span< const T > > rows)
 
TrustRegionResult SolveTrustRegion (const VectorXd &objective_vector, const VectorXd &variable_lower_bounds, const VectorXd &variable_upper_bounds, const VectorXd &center_point, const VectorXd &norm_weights, const double target_radius, const Sharder &sharder)
 
template<typename DiagonalTrustRegionProblem >
double ProjectedValueOfScaledDifference (const DiagonalTrustRegionProblem &problem, const int64_t index, const double scaling_factor)
 
template<typename DiagonalTrustRegionProblem >
double NormOfDeltaProjection (const DiagonalTrustRegionProblem &problem, const Sharder &sharder, const double scaling_factor)
 
template<typename DiagonalTrustRegionProblem >
double FindScalingFactor (const DiagonalTrustRegionProblem &problem, const Sharder &sharder, const double target_radius, const double solve_tol)
 
template<typename DiagonalTrustRegionProblem >
TrustRegionResult SolveDiagonalTrustRegionProblem (const DiagonalTrustRegionProblem &problem, const Sharder &sharder, const double target_radius, const double solve_tol)
 
TrustRegionResult SolveDiagonalTrustRegion (const VectorXd &objective_vector, const VectorXd &objective_matrix_diagonal, const VectorXd &variable_lower_bounds, const VectorXd &variable_upper_bounds, const VectorXd &center_point, const VectorXd &norm_weights, const double target_radius, const Sharder &sharder, const double solve_tolerance)
 
TrustRegionResult SolveDiagonalQpTrustRegion (const ShardedQuadraticProgram &sharded_qp, const VectorXd &primal_solution, const VectorXd &dual_solution, const VectorXd &primal_gradient, const VectorXd &dual_gradient, const double primal_weight, double target_radius, const double solve_tolerance)
 
LocalizedLagrangianBounds ComputeLocalizedLagrangianBounds (const ShardedQuadraticProgram &sharded_qp, const VectorXd &primal_solution, const VectorXd &dual_solution, const PrimalDualNorm primal_dual_norm, const double primal_weight, const double radius, const VectorXd *primal_product, const VectorXd *dual_product, const bool use_diagonal_qp_trust_region_solver, const double diagonal_qp_trust_region_solver_tolerance)
 
TrustRegionResult SolveTrustRegion (const Eigen::VectorXd &objective_vector, const Eigen::VectorXd &variable_lower_bounds, const Eigen::VectorXd &variable_upper_bounds, const Eigen::VectorXd &center_point, const Eigen::VectorXd &norm_weights, double target_radius, const Sharder &sharder)
 
TrustRegionResult SolveDiagonalTrustRegion (const Eigen::VectorXd &objective_vector, const Eigen::VectorXd &objective_matrix_diagonal, const Eigen::VectorXd &variable_lower_bounds, const Eigen::VectorXd &variable_upper_bounds, const Eigen::VectorXd &center_point, const Eigen::VectorXd &norm_weights, double target_radius, const Sharder &sharder, double solve_tolerance)
 
TrustRegionResult SolveDiagonalQpTrustRegion (const ShardedQuadraticProgram &sharded_qp, const Eigen::VectorXd &primal_solution, const Eigen::VectorXd &dual_solution, const Eigen::VectorXd &primal_gradient, const Eigen::VectorXd &dual_gradient, const double primal_weight, double target_radius, double solve_tolerance)
 
double BoundGap (const LocalizedLagrangianBounds &bounds)
 
LocalizedLagrangianBounds ComputeLocalizedLagrangianBounds (const ShardedQuadraticProgram &sharded_qp, const Eigen::VectorXd &primal_solution, const Eigen::VectorXd &dual_solution, PrimalDualNorm primal_dual_norm, double primal_weight, double radius, const Eigen::VectorXd *primal_product, const Eigen::VectorXd *dual_product, bool use_diagonal_qp_trust_region_solver, double diagonal_qp_trust_region_solver_tolerance)
 

Variables

constexpr double kInfinity = std::numeric_limits<double>::infinity()
 

Enumeration Type Documentation

◆ PrimalDualNorm

enum class PrimalDualNorm
strong
Enumerator
kMaxNorm 
kEuclideanNorm 

Definition at line 120 of file trust_region.h.

Function Documentation

◆ AddScaledVector() [1/2]

void operations_research::pdlp::AddScaledVector ( const double  scale,
const VectorXd &  increment,
const Sharder sharder,
VectorXd &  dest 
)

Definition at line 162 of file sharder.cc.

◆ AddScaledVector() [2/2]

void operations_research::pdlp::AddScaledVector ( double  scale,
const Eigen::VectorXd &  increment,
const Sharder sharder,
Eigen::VectorXd &  dest 
)

◆ ApplyRescaling()

ScalingVectors ApplyRescaling ( const RescalingOptions rescaling_options,
ShardedQuadraticProgram sharded_qp 
)

Definition at line 439 of file sharded_optimization_utils.cc.

◆ AssignVector() [1/2]

void operations_research::pdlp::AssignVector ( const Eigen::VectorXd &  vec,
const Sharder sharder,
Eigen::VectorXd &  dest 
)

◆ AssignVector() [2/2]

void operations_research::pdlp::AssignVector ( const VectorXd &  vec,
const Sharder sharder,
VectorXd &  dest 
)

Definition at line 169 of file sharder.cc.

◆ BoundGap()

double operations_research::pdlp::BoundGap ( const LocalizedLagrangianBounds bounds)
inline

Definition at line 113 of file trust_region.h.

◆ BoundNormsFromProblemStats()

QuadraticProgramBoundNorms BoundNormsFromProblemStats ( const QuadraticProgramStats &  stats)

Definition at line 138 of file termination.cc.

◆ CanFitInMpModelProto()

absl::Status CanFitInMpModelProto ( const QuadraticProgram qp)

Definition at line 213 of file quadratic_program.cc.

◆ CheckTerminationCriteria()

absl::optional< TerminationReasonAndPointType > CheckTerminationCriteria ( const TerminationCriteria &  criteria,
const IterationStats &  stats,
const QuadraticProgramBoundNorms bound_norms,
const bool  force_numerical_termination 
)

Definition at line 90 of file termination.cc.

◆ CloneVector() [1/2]

Eigen::VectorXd operations_research::pdlp::CloneVector ( const Eigen::VectorXd &  vec,
const Sharder sharder 
)

◆ CloneVector() [2/2]

VectorXd operations_research::pdlp::CloneVector ( const VectorXd &  vec,
const Sharder sharder 
)

Definition at line 175 of file sharder.cc.

◆ CoefficientWiseProductInPlace() [1/2]

void operations_research::pdlp::CoefficientWiseProductInPlace ( const Eigen::VectorXd &  scale,
const Sharder sharder,
Eigen::VectorXd &  dest 
)

◆ CoefficientWiseProductInPlace() [2/2]

void operations_research::pdlp::CoefficientWiseProductInPlace ( const VectorXd &  scale,
const Sharder sharder,
VectorXd &  dest 
)

Definition at line 182 of file sharder.cc.

◆ CoefficientWiseQuotientInPlace() [1/2]

void operations_research::pdlp::CoefficientWiseQuotientInPlace ( const Eigen::VectorXd &  scale,
const Sharder sharder,
Eigen::VectorXd &  dest 
)

◆ CoefficientWiseQuotientInPlace() [2/2]

void operations_research::pdlp::CoefficientWiseQuotientInPlace ( const VectorXd &  scale,
const Sharder sharder,
VectorXd &  dest 
)

Definition at line 190 of file sharder.cc.

◆ ComputeConvergenceInformation()

ConvergenceInformation ComputeConvergenceInformation ( const ShardedQuadraticProgram scaled_sharded_qp,
const Eigen::VectorXd &  col_scaling_vec,
const Eigen::VectorXd &  row_scaling_vec,
const Eigen::VectorXd &  scaled_primal_solution,
const Eigen::VectorXd &  scaled_dual_solution,
PointType  candidate_type 
)

Definition at line 308 of file iteration_stats.cc.

◆ ComputeDualGradient()

LagrangianPart ComputeDualGradient ( const ShardedQuadraticProgram sharded_qp,
const Eigen::VectorXd &  dual_solution,
const Eigen::VectorXd &  primal_product 
)

Definition at line 518 of file sharded_optimization_utils.cc.

◆ ComputeInfeasibilityInformation()

InfeasibilityInformation ComputeInfeasibilityInformation ( const ShardedQuadraticProgram scaled_sharded_qp,
const Eigen::VectorXd &  col_scaling_vec,
const Eigen::VectorXd &  row_scaling_vec,
const Eigen::VectorXd &  scaled_primal_ray,
const Eigen::VectorXd &  scaled_dual_ray,
PointType  candidate_type 
)

Definition at line 372 of file iteration_stats.cc.

◆ ComputeLocalizedLagrangianBounds() [1/2]

LocalizedLagrangianBounds operations_research::pdlp::ComputeLocalizedLagrangianBounds ( const ShardedQuadraticProgram sharded_qp,
const Eigen::VectorXd &  primal_solution,
const Eigen::VectorXd &  dual_solution,
PrimalDualNorm  primal_dual_norm,
double  primal_weight,
double  radius,
const Eigen::VectorXd *  primal_product,
const Eigen::VectorXd *  dual_product,
bool  use_diagonal_qp_trust_region_solver,
double  diagonal_qp_trust_region_solver_tolerance 
)

◆ ComputeLocalizedLagrangianBounds() [2/2]

LocalizedLagrangianBounds operations_research::pdlp::ComputeLocalizedLagrangianBounds ( const ShardedQuadraticProgram sharded_qp,
const VectorXd &  primal_solution,
const VectorXd &  dual_solution,
const PrimalDualNorm  primal_dual_norm,
const double  primal_weight,
const double  radius,
const VectorXd *  primal_product,
const VectorXd *  dual_product,
const bool  use_diagonal_qp_trust_region_solver,
const double  diagonal_qp_trust_region_solver_tolerance 
)

Definition at line 963 of file trust_region.cc.

◆ ComputePrimalGradient() [1/2]

LagrangianPart operations_research::pdlp::ComputePrimalGradient ( const ShardedQuadraticProgram sharded_qp,
const Eigen::VectorXd &  primal_solution,
const Eigen::VectorXd &  dual_product 
)

◆ ComputePrimalGradient() [2/2]

LagrangianPart operations_research::pdlp::ComputePrimalGradient ( const ShardedQuadraticProgram sharded_qp,
const VectorXd &  primal_solution,
const VectorXd &  dual_product 
)

Definition at line 462 of file sharded_optimization_utils.cc.

◆ ComputeRelativeResiduals()

RelativeConvergenceInformation ComputeRelativeResiduals ( const double  eps_optimal_absolute,
const double  eps_optimal_relative,
const QuadraticProgramBoundNorms norms,
const ConvergenceInformation &  stats 
)

Definition at line 147 of file termination.cc.

◆ ComputeScaledConvergenceInformation() [1/2]

ConvergenceInformation operations_research::pdlp::ComputeScaledConvergenceInformation ( const ShardedQuadraticProgram sharded_qp,
const Eigen::VectorXd &  primal_solution,
const Eigen::VectorXd &  dual_solution,
PointType  candidate_type 
)

◆ ComputeScaledConvergenceInformation() [2/2]

ConvergenceInformation operations_research::pdlp::ComputeScaledConvergenceInformation ( const ShardedQuadraticProgram sharded_qp,
const VectorXd &  primal_solution,
const VectorXd &  dual_solution,
PointType  candidate_type 
)

Definition at line 465 of file iteration_stats.cc.

◆ ComputeStats()

QuadraticProgramStats ComputeStats ( const ShardedQuadraticProgram qp,
const double  infinite_constraint_bound_threshold 
)

Definition at line 303 of file sharded_optimization_utils.cc.

◆ CorrelationClusteringLp()

QuadraticProgram CorrelationClusteringLp ( )

Definition at line 86 of file test_util.cc.

◆ CorrelationClusteringStarLp()

QuadraticProgram CorrelationClusteringStarLp ( )

Definition at line 107 of file test_util.cc.

◆ Distance() [1/2]

double operations_research::pdlp::Distance ( const Eigen::VectorXd &  vector1,
const Eigen::VectorXd &  vector2,
const Sharder sharder 
)

◆ Distance() [2/2]

double operations_research::pdlp::Distance ( const VectorXd &  vector1,
const VectorXd &  vector2,
const Sharder sharder 
)

Definition at line 231 of file sharder.cc.

◆ Dot() [1/2]

double operations_research::pdlp::Dot ( const Eigen::VectorXd &  v1,
const Eigen::VectorXd &  v2,
const Sharder sharder 
)

◆ Dot() [2/2]

double operations_research::pdlp::Dot ( const VectorXd &  v1,
const VectorXd &  v2,
const Sharder sharder 
)

Definition at line 197 of file sharder.cc.

◆ DualSubgradientCoefficient()

double DualSubgradientCoefficient ( const double  constraint_lower_bound,
const double  constraint_upper_bound,
const double  dual,
const double  primal_product 
)

Definition at line 492 of file sharded_optimization_utils.cc.

◆ EigenArrayAsSpan()

absl::Span< const Scalar > operations_research::pdlp::EigenArrayAsSpan ( const Eigen::Array< Scalar, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > &  array)

Definition at line 303 of file test_util.h.

◆ EigenArrayEq() [1/2]

EigenArrayEqMatcherP< Eigen::Array< T, Eigen::Dynamic, Eigen::Dynamic > > operations_research::pdlp::EigenArrayEq ( absl::Span< const absl::Span< const T > >  rows)

Definition at line 399 of file test_util.h.

◆ EigenArrayEq() [2/2]

EigenArrayEqMatcherP< Eigen::Array< T, Eigen::Dynamic, 1 > > operations_research::pdlp::EigenArrayEq ( absl::Span< const T >  data)

Definition at line 389 of file test_util.h.

◆ EigenArrayNear() [1/2]

EigenArrayNearMatcherP2< Eigen::Array< T, Eigen::Dynamic, Eigen::Dynamic >, double > operations_research::pdlp::EigenArrayNear ( absl::Span< const absl::Span< const T > >  rows,
double  tolerance 
)

Definition at line 384 of file test_util.h.

◆ EigenArrayNear() [2/2]

EigenArrayNearMatcherP2< Eigen::Array< T, Eigen::Dynamic, 1 >, double > operations_research::pdlp::EigenArrayNear ( absl::Span< const T >  data,
double  tolerance 
)

Definition at line 375 of file test_util.h.

◆ EstimateMaximumSingularValueOfConstraintMatrix() [1/2]

SingularValueAndIterations operations_research::pdlp::EstimateMaximumSingularValueOfConstraintMatrix ( const ShardedQuadraticProgram sharded_qp,
const absl::optional< Eigen::VectorXd > &  primal_solution,
const absl::optional< Eigen::VectorXd > &  dual_solution,
const double  desired_relative_error,
const double  failure_probability,
std::mt19937 &  mt_generator 
)

◆ EstimateMaximumSingularValueOfConstraintMatrix() [2/2]

SingularValueAndIterations operations_research::pdlp::EstimateMaximumSingularValueOfConstraintMatrix ( const ShardedQuadraticProgram sharded_qp,
const absl::optional< VectorXd > &  primal_solution,
const absl::optional< VectorXd > &  dual_solution,
const double  desired_relative_error,
const double  failure_probability,
std::mt19937 &  mt_generator 
)

Definition at line 706 of file sharded_optimization_utils.cc.

◆ EvalAsColMajorEigenArray()

Eigen::Array< typename EigenType::Scalar, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > operations_research::pdlp::EvalAsColMajorEigenArray ( const EigenType &  input)

Definition at line 297 of file test_util.h.

◆ FindScalingFactor()

double operations_research::pdlp::FindScalingFactor ( const DiagonalTrustRegionProblem problem,
const Sharder sharder,
const double  target_radius,
const double  solve_tol 
)

Definition at line 662 of file trust_region.cc.

◆ FloatArrayEq()

decltype(testing::Pointwise(internal::TupleFloatEq(), ContainerType())) operations_research::pdlp::FloatArrayEq ( const ContainerType &  container)

Definition at line 289 of file test_util.h.

◆ FloatArrayNear()

decltype(testing::Pointwise(internal::TupleIsNear(0.0), ContainerType())) operations_research::pdlp::FloatArrayNear ( const ContainerType &  container,
double  tolerance 
)

Definition at line 271 of file test_util.h.

◆ GetConvergenceInformation()

absl::optional< ConvergenceInformation > GetConvergenceInformation ( const IterationStats &  stats,
PointType  candidate_type 
)

Definition at line 507 of file iteration_stats.cc.

◆ GetInfeasibilityInformation()

absl::optional< InfeasibilityInformation > GetInfeasibilityInformation ( const IterationStats &  stats,
PointType  candidate_type 
)

Definition at line 517 of file iteration_stats.cc.

◆ GetPointMetadata()

absl::optional< PointMetadata > GetPointMetadata ( const IterationStats &  stats,
const PointType  point_type 
)

Definition at line 528 of file iteration_stats.cc.

◆ HasValidBounds() [1/2]

bool HasValidBounds ( const QuadraticProgram qp)

Definition at line 84 of file quadratic_program.cc.

◆ HasValidBounds() [2/2]

bool HasValidBounds ( const ShardedQuadraticProgram sharded_qp)

Definition at line 731 of file sharded_optimization_utils.cc.

◆ IsDiagonal()

bool IsDiagonal ( const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &  matrix,
const Sharder sharder 
)

Definition at line 304 of file sharder.cc.

◆ IsLinearProgram()

bool operations_research::pdlp::IsLinearProgram ( const QuadraticProgram qp)
inline

Definition at line 150 of file quadratic_program.h.

◆ L1Norm() [1/2]

double operations_research::pdlp::L1Norm ( const Eigen::VectorXd &  vector,
const Sharder sharder 
)

◆ L1Norm() [2/2]

double operations_research::pdlp::L1Norm ( const VectorXd &  vector,
const Sharder sharder 
)

Definition at line 210 of file sharder.cc.

◆ L2NormRescaling() [1/2]

void operations_research::pdlp::L2NormRescaling ( const ShardedQuadraticProgram sharded_qp,
Eigen::VectorXd &  row_scaling_vec,
Eigen::VectorXd &  col_scaling_vec 
)

◆ L2NormRescaling() [2/2]

void operations_research::pdlp::L2NormRescaling ( const ShardedQuadraticProgram sharded_qp,
VectorXd &  row_scaling_vec,
VectorXd &  col_scaling_vec 
)

Definition at line 432 of file sharded_optimization_utils.cc.

◆ LInfNorm() [1/2]

double operations_research::pdlp::LInfNorm ( const Eigen::VectorXd &  vector,
const Sharder sharder 
)

◆ LInfNorm() [2/2]

double operations_research::pdlp::LInfNorm ( const VectorXd &  vector,
const Sharder sharder 
)

Definition at line 202 of file sharder.cc.

◆ LInfRuizRescaling() [1/2]

void operations_research::pdlp::LInfRuizRescaling ( const ShardedQuadraticProgram sharded_qp,
const int  num_iterations,
Eigen::VectorXd &  row_scaling_vec,
Eigen::VectorXd &  col_scaling_vec 
)

◆ LInfRuizRescaling() [2/2]

void operations_research::pdlp::LInfRuizRescaling ( const ShardedQuadraticProgram sharded_qp,
const int  num_iterations,
VectorXd &  row_scaling_vec,
VectorXd &  col_scaling_vec 
)

Definition at line 425 of file sharded_optimization_utils.cc.

◆ LpWithoutConstraints()

QuadraticProgram LpWithoutConstraints ( )

Definition at line 261 of file test_util.cc.

◆ MATCHER_P()

operations_research::pdlp::MATCHER_P ( EigenArrayEq  ,
expected_array  ,
"array is almost equal to "+  testing::PrintToStringexpected_array 
)

Definition at line 344 of file test_util.h.

◆ MATCHER_P2()

operations_research::pdlp::MATCHER_P2 ( EigenArrayNear  ,
expected_array  ,
tolerance  ,
"array is near "+  testing::PrintToStringexpected_array)+" within tolerance "+testing::PrintToString(tolerance 
)

Definition at line 317 of file test_util.h.

◆ Norm() [1/2]

double operations_research::pdlp::Norm ( const Eigen::VectorXd &  vector,
const Sharder sharder 
)

◆ Norm() [2/2]

double operations_research::pdlp::Norm ( const VectorXd &  vector,
const Sharder sharder 
)

Definition at line 220 of file sharder.cc.

◆ NormOfDeltaProjection()

double operations_research::pdlp::NormOfDeltaProjection ( const DiagonalTrustRegionProblem problem,
const Sharder sharder,
const double  scaling_factor 
)

Definition at line 635 of file trust_region.cc.

◆ PrimalDualHybridGradient() [1/4]

SolverResult operations_research::pdlp::PrimalDualHybridGradient ( QuadraticProgram  qp,
const PrimalDualHybridGradientParams &  params,
absl::optional< PrimalAndDualSolution initial_solution,
const std::atomic< bool > *  interrupt_solve,
IterationStatsCallback  iteration_stats_callback 
)

Definition at line 1876 of file primal_dual_hybrid_gradient.cc.

◆ PrimalDualHybridGradient() [2/4]

SolverResult operations_research::pdlp::PrimalDualHybridGradient ( QuadraticProgram  qp,
const PrimalDualHybridGradientParams &  params,
absl::optional< PrimalAndDualSolution initial_solution,
const std::atomic< bool > *  interrupt_solve = nullptr,
std::function< void(const IterationCallbackInfo &)>  iteration_stats_callback = nullptr 
)

◆ PrimalDualHybridGradient() [3/4]

SolverResult operations_research::pdlp::PrimalDualHybridGradient ( QuadraticProgram  qp,
const PrimalDualHybridGradientParams &  params,
const std::atomic< bool > *  interrupt_solve,
IterationStatsCallback  iteration_stats_callback 
)

Definition at line 1867 of file primal_dual_hybrid_gradient.cc.

◆ PrimalDualHybridGradient() [4/4]

SolverResult operations_research::pdlp::PrimalDualHybridGradient ( QuadraticProgram  qp,
const PrimalDualHybridGradientParams &  params,
const std::atomic< bool > *  interrupt_solve = nullptr,
std::function< void(const IterationCallbackInfo &)>  iteration_stats_callback = nullptr 
)

◆ ProjectedValueOfScaledDifference()

double operations_research::pdlp::ProjectedValueOfScaledDifference ( const DiagonalTrustRegionProblem problem,
const int64_t  index,
const double  scaling_factor 
)

Definition at line 615 of file trust_region.cc.

◆ ProjectToDualVariableBounds() [1/2]

void operations_research::pdlp::ProjectToDualVariableBounds ( const ShardedQuadraticProgram sharded_qp,
Eigen::VectorXd &  dual 
)

◆ ProjectToDualVariableBounds() [2/2]

void operations_research::pdlp::ProjectToDualVariableBounds ( const ShardedQuadraticProgram sharded_qp,
VectorXd &  dual 
)

Definition at line 762 of file sharded_optimization_utils.cc.

◆ ProjectToPrimalVariableBounds() [1/2]

void operations_research::pdlp::ProjectToPrimalVariableBounds ( const ShardedQuadraticProgram sharded_qp,
Eigen::VectorXd &  primal 
)

◆ ProjectToPrimalVariableBounds() [2/2]

void operations_research::pdlp::ProjectToPrimalVariableBounds ( const ShardedQuadraticProgram sharded_qp,
VectorXd &  primal 
)

Definition at line 751 of file sharded_optimization_utils.cc.

◆ QpFromMpModelProto()

absl::StatusOr< QuadraticProgram > QpFromMpModelProto ( const MPModelProto &  proto,
bool  relax_integer_variables,
bool  include_names 
)

Definition at line 94 of file quadratic_program.cc.

◆ QpToMpModelProto()

absl::StatusOr< MPModelProto > QpToMpModelProto ( const QuadraticProgram qp)

Definition at line 237 of file quadratic_program.cc.

◆ ReadMPModelProtoFileOrDie()

QuadraticProgram ReadMPModelProtoFileOrDie ( const std::string &  mpmodel_proto_file,
bool  include_names 
)

Definition at line 81 of file quadratic_program_io.cc.

◆ ReadMpsLinearProgramOrDie()

QuadraticProgram ReadMpsLinearProgramOrDie ( const std::string &  lp_file,
bool  include_names 
)

Definition at line 67 of file quadratic_program_io.cc.

◆ ReadQuadraticProgramOrDie()

QuadraticProgram ReadQuadraticProgramOrDie ( const std::string &  filename,
bool  include_names 
)

Definition at line 50 of file quadratic_program_io.cc.

◆ ReducedCosts() [1/2]

Eigen::VectorXd operations_research::pdlp::ReducedCosts ( const ShardedQuadraticProgram scaled_sharded_qp,
const Eigen::VectorXd &  primal_solution,
const Eigen::VectorXd &  dual_solution,
bool  use_zero_primal_objective = false 
)

◆ ReducedCosts() [2/2]

VectorXd operations_research::pdlp::ReducedCosts ( const ShardedQuadraticProgram sharded_qp,
const VectorXd &  primal_solution,
const VectorXd &  dual_solution,
bool  use_zero_primal_objective 
)

Definition at line 474 of file iteration_stats.cc.

◆ ScaledColL2Norm() [1/2]

Eigen::VectorXd operations_research::pdlp::ScaledColL2Norm ( const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &  matrix,
const Eigen::VectorXd &  row_scaling_vec,
const Eigen::VectorXd &  col_scaling_vec,
const Sharder sharder 
)

◆ ScaledColL2Norm() [2/2]

VectorXd operations_research::pdlp::ScaledColL2Norm ( const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &  matrix,
const VectorXd &  row_scaling_vec,
const VectorXd &  col_scaling_vec,
const Sharder sharder 
)

Definition at line 280 of file sharder.cc.

◆ ScaledColLInfNorm() [1/2]

Eigen::VectorXd operations_research::pdlp::ScaledColLInfNorm ( const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &  matrix,
const Eigen::VectorXd &  row_scaling_vec,
const Eigen::VectorXd &  col_scaling_vec,
const Sharder sharder 
)

◆ ScaledColLInfNorm() [2/2]

VectorXd operations_research::pdlp::ScaledColLInfNorm ( const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &  matrix,
const VectorXd &  row_scaling_vec,
const VectorXd &  col_scaling_vec,
const Sharder sharder 
)

Definition at line 258 of file sharder.cc.

◆ ScaledLInfNorm() [1/2]

double operations_research::pdlp::ScaledLInfNorm ( const Eigen::VectorXd &  vector,
const Eigen::VectorXd &  scale,
const Sharder sharder 
)

◆ ScaledLInfNorm() [2/2]

double operations_research::pdlp::ScaledLInfNorm ( const VectorXd &  vector,
const VectorXd &  scale,
const Sharder sharder 
)

Definition at line 236 of file sharder.cc.

◆ ScaledNorm() [1/2]

double operations_research::pdlp::ScaledNorm ( const Eigen::VectorXd &  vector,
const Eigen::VectorXd &  scale,
const Sharder sharder 
)

◆ ScaledNorm() [2/2]

double operations_research::pdlp::ScaledNorm ( const VectorXd &  vector,
const VectorXd &  scale,
const Sharder sharder 
)

Definition at line 253 of file sharder.cc.

◆ ScaledSquaredNorm() [1/2]

double operations_research::pdlp::ScaledSquaredNorm ( const Eigen::VectorXd &  vector,
const Eigen::VectorXd &  scale,
const Sharder sharder 
)

◆ ScaledSquaredNorm() [2/2]

double operations_research::pdlp::ScaledSquaredNorm ( const VectorXd &  vector,
const VectorXd &  scale,
const Sharder sharder 
)

Definition at line 246 of file sharder.cc.

◆ SetEigenMatrixFromTriplets()

void SetEigenMatrixFromTriplets ( std::vector< Eigen::Triplet< double, int64_t > >  triplets,
Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &  matrix 
)

Definition at line 316 of file quadratic_program.cc.

◆ SetRandomProjections()

void SetRandomProjections ( const ShardedQuadraticProgram sharded_qp,
const Eigen::VectorXd &  primal_solution,
const Eigen::VectorXd &  dual_solution,
const std::vector< int > &  random_projection_seeds,
PointMetadata &  metadata 
)

Definition at line 538 of file iteration_stats.cc.

◆ SmallDualInfeasibleLp()

QuadraticProgram SmallDualInfeasibleLp ( )

Definition at line 232 of file test_util.cc.

◆ SmallInconsistentVariableBoundsLp()

QuadraticProgram SmallInconsistentVariableBoundsLp ( )

Definition at line 203 of file test_util.cc.

◆ SmallInitializationLp()

QuadraticProgram SmallInitializationLp ( )

Definition at line 245 of file test_util.cc.

◆ SmallInvalidProblemLp()

QuadraticProgram SmallInvalidProblemLp ( )

Definition at line 190 of file test_util.cc.

◆ SmallPrimalDualInfeasibleLp()

QuadraticProgram SmallPrimalDualInfeasibleLp ( )

Definition at line 239 of file test_util.cc.

◆ SmallPrimalInfeasibleLp()

QuadraticProgram SmallPrimalInfeasibleLp ( )

Definition at line 216 of file test_util.cc.

◆ SolveDiagonalQpTrustRegion() [1/2]

TrustRegionResult operations_research::pdlp::SolveDiagonalQpTrustRegion ( const ShardedQuadraticProgram sharded_qp,
const Eigen::VectorXd &  primal_solution,
const Eigen::VectorXd &  dual_solution,
const Eigen::VectorXd &  primal_gradient,
const Eigen::VectorXd &  dual_gradient,
const double  primal_weight,
double  target_radius,
double  solve_tolerance 
)

◆ SolveDiagonalQpTrustRegion() [2/2]

TrustRegionResult operations_research::pdlp::SolveDiagonalQpTrustRegion ( const ShardedQuadraticProgram sharded_qp,
const VectorXd &  primal_solution,
const VectorXd &  dual_solution,
const VectorXd &  primal_gradient,
const VectorXd &  dual_gradient,
const double  primal_weight,
double  target_radius,
const double  solve_tolerance 
)

Definition at line 754 of file trust_region.cc.

◆ SolveDiagonalTrustRegion() [1/2]

TrustRegionResult operations_research::pdlp::SolveDiagonalTrustRegion ( const Eigen::VectorXd &  objective_vector,
const Eigen::VectorXd &  objective_matrix_diagonal,
const Eigen::VectorXd &  variable_lower_bounds,
const Eigen::VectorXd &  variable_upper_bounds,
const Eigen::VectorXd &  center_point,
const Eigen::VectorXd &  norm_weights,
double  target_radius,
const Sharder sharder,
double  solve_tolerance 
)

◆ SolveDiagonalTrustRegion() [2/2]

TrustRegionResult operations_research::pdlp::SolveDiagonalTrustRegion ( const VectorXd &  objective_vector,
const VectorXd &  objective_matrix_diagonal,
const VectorXd &  variable_lower_bounds,
const VectorXd &  variable_upper_bounds,
const VectorXd &  center_point,
const VectorXd &  norm_weights,
const double  target_radius,
const Sharder sharder,
const double  solve_tolerance 
)

Definition at line 741 of file trust_region.cc.

◆ SolveDiagonalTrustRegionProblem()

TrustRegionResult operations_research::pdlp::SolveDiagonalTrustRegionProblem ( const DiagonalTrustRegionProblem problem,
const Sharder sharder,
const double  target_radius,
const double  solve_tol 
)

Definition at line 693 of file trust_region.cc.

◆ SolveTrustRegion() [1/2]

TrustRegionResult operations_research::pdlp::SolveTrustRegion ( const Eigen::VectorXd &  objective_vector,
const Eigen::VectorXd &  variable_lower_bounds,
const Eigen::VectorXd &  variable_upper_bounds,
const Eigen::VectorXd &  center_point,
const Eigen::VectorXd &  norm_weights,
double  target_radius,
const Sharder sharder 
)

◆ SolveTrustRegion() [2/2]

TrustRegionResult operations_research::pdlp::SolveTrustRegion ( const VectorXd &  objective_vector,
const VectorXd &  variable_lower_bounds,
const VectorXd &  variable_upper_bounds,
const VectorXd &  center_point,
const VectorXd &  norm_weights,
const double  target_radius,
const Sharder sharder 
)

Definition at line 452 of file trust_region.cc.

◆ SquaredDistance() [1/2]

double operations_research::pdlp::SquaredDistance ( const Eigen::VectorXd &  vector1,
const Eigen::VectorXd &  vector2,
const Sharder sharder 
)

◆ SquaredDistance() [2/2]

double operations_research::pdlp::SquaredDistance ( const VectorXd &  vector1,
const VectorXd &  vector2,
const Sharder sharder 
)

Definition at line 224 of file sharder.cc.

◆ SquaredNorm() [1/2]

double operations_research::pdlp::SquaredNorm ( const Eigen::VectorXd &  vector,
const Sharder sharder 
)

◆ SquaredNorm() [2/2]

double operations_research::pdlp::SquaredNorm ( const VectorXd &  vector,
const Sharder sharder 
)

Definition at line 215 of file sharder.cc.

◆ TestDiagonalQp1()

QuadraticProgram TestDiagonalQp1 ( )

Definition at line 142 of file test_util.cc.

◆ TestDiagonalQp2()

QuadraticProgram TestDiagonalQp2 ( )

Definition at line 158 of file test_util.cc.

◆ TestDiagonalQp3()

QuadraticProgram TestDiagonalQp3 ( )

Definition at line 174 of file test_util.cc.

◆ TestLp()

QuadraticProgram TestLp ( )

Definition at line 32 of file test_util.cc.

◆ TinyLp()

QuadraticProgram TinyLp ( )

Definition at line 66 of file test_util.cc.

◆ ToDense()

Eigen::ArrayXXd ToDense ( const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &  sparse_mat)

Definition at line 284 of file test_util.cc.

◆ TransposedMatrixVectorProduct() [1/2]

Eigen::VectorXd operations_research::pdlp::TransposedMatrixVectorProduct ( const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &  matrix,
const Eigen::VectorXd &  vector,
const Sharder Sharder 
)

◆ TransposedMatrixVectorProduct() [2/2]

VectorXd operations_research::pdlp::TransposedMatrixVectorProduct ( const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > &  matrix,
const VectorXd &  vector,
const Sharder sharder 
)

Definition at line 151 of file sharder.cc.

◆ ValidateAdaptiveLinesearchParams()

absl::Status ValidateAdaptiveLinesearchParams ( const AdaptiveLinesearchParams &  params)

Definition at line 54 of file solvers_proto_validation.cc.

◆ ValidateMalitskyPockParams()

absl::Status ValidateMalitskyPockParams ( const MalitskyPockParams &  params)

Definition at line 66 of file solvers_proto_validation.cc.

◆ ValidatePrimalDualHybridGradientParams()

absl::Status ValidatePrimalDualHybridGradientParams ( const PrimalDualHybridGradientParams &  params)

Definition at line 83 of file solvers_proto_validation.cc.

◆ ValidateQuadraticProgramDimensions()

absl::Status ValidateQuadraticProgramDimensions ( const QuadraticProgram qp)

Definition at line 39 of file quadratic_program.cc.

◆ ValidateTerminationCriteria()

absl::Status ValidateTerminationCriteria ( const TerminationCriteria &  criteria)

Definition at line 25 of file solvers_proto_validation.cc.

◆ VerifyTestLp()

void VerifyTestLp ( const QuadraticProgram qp,
bool  maximize 
)

Definition at line 48 of file test_util.cc.

◆ VerifyTestQp()

void VerifyTestQp ( const QuadraticProgram qp,
bool  maximize 
)

Definition at line 269 of file test_util.cc.

◆ WriteLinearProgramToMps()

absl::Status WriteLinearProgramToMps ( const QuadraticProgram linear_program,
const std::string &  mps_file 
)

Definition at line 91 of file quadratic_program_io.cc.

◆ WriteQuadraticProgramToMPModelProto()

absl::Status WriteQuadraticProgramToMPModelProto ( const QuadraticProgram quadratic_program,
const std::string &  mpmodel_proto_file 
)

Definition at line 106 of file quadratic_program_io.cc.

Variable Documentation

◆ kInfinity

constexpr double kInfinity = std::numeric_limits<double>::infinity()
constexpr

Definition at line 39 of file sharded_optimization_utils.cc.