Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
sharded_optimization_utils.h File Reference
#include <limits>
#include <optional>
#include <random>
#include "Eigen/Core"
#include "ortools/pdlp/sharded_quadratic_program.h"
#include "ortools/pdlp/sharder.h"
#include "ortools/pdlp/solve_log.pb.h"

Go to the source code of this file.

Classes

class  operations_research::pdlp::ShardedWeightedAverage
 
struct  operations_research::pdlp::RescalingOptions
 
struct  operations_research::pdlp::ScalingVectors
 
struct  operations_research::pdlp::LagrangianPart
 
struct  operations_research::pdlp::SingularValueAndIterations
 

Namespaces

namespace  operations_research
 In SWIG mode, we don't want anything besides these top-level includes.
 
namespace  operations_research::pdlp
 Validation utilities for solvers.proto.
 

Functions

QuadraticProgramStats operations_research::pdlp::ComputeStats (const ShardedQuadraticProgram &qp)
 Returns a QuadraticProgramStats for a ShardedQuadraticProgram.
 
void operations_research::pdlp::LInfRuizRescaling (const ShardedQuadraticProgram &sharded_qp, int num_iterations, Eigen::VectorXd &row_scaling_vec, Eigen::VectorXd &col_scaling_vec)
 
void operations_research::pdlp::L2NormRescaling (const ShardedQuadraticProgram &sharded_qp, Eigen::VectorXd &row_scaling_vec, Eigen::VectorXd &col_scaling_vec)
 
ScalingVectors operations_research::pdlp::ApplyRescaling (const RescalingOptions &rescaling_options, ShardedQuadraticProgram &sharded_qp)
 
LagrangianPart operations_research::pdlp::ComputePrimalGradient (const ShardedQuadraticProgram &sharded_qp, const Eigen::VectorXd &primal_solution, const Eigen::VectorXd &dual_product)
 
double operations_research::pdlp::DualSubgradientCoefficient (const double constraint_lower_bound, const double constraint_upper_bound, const double dual, const double primal_product)
 
LagrangianPart operations_research::pdlp::ComputeDualGradient (const ShardedQuadraticProgram &sharded_qp, const Eigen::VectorXd &dual_solution, const Eigen::VectorXd &primal_product)
 
SingularValueAndIterations operations_research::pdlp::EstimateMaximumSingularValueOfConstraintMatrix (const ShardedQuadraticProgram &sharded_qp, const std::optional< Eigen::VectorXd > &primal_solution, const std::optional< Eigen::VectorXd > &dual_solution, double desired_relative_error, double failure_probability, std::mt19937 &mt_generator)
 
bool operations_research::pdlp::HasValidBounds (const ShardedQuadraticProgram &sharded_qp)
 
void operations_research::pdlp::ProjectToPrimalVariableBounds (const ShardedQuadraticProgram &sharded_qp, Eigen::VectorXd &primal, bool use_feasibility_bounds=false)
 
void operations_research::pdlp::ProjectToDualVariableBounds (const ShardedQuadraticProgram &sharded_qp, Eigen::VectorXd &dual)