17 #ifndef OR_TOOLS_MATH_OPT_CPP_PARAMETERS_H_
18 #define OR_TOOLS_MATH_OPT_CPP_PARAMETERS_H_
24 #include "absl/status/statusor.h"
25 #include "absl/strings/string_view.h"
26 #include "absl/time/time.h"
27 #include "absl/types/span.h"
29 #include "ortools/glop/parameters.pb.h"
30 #include "ortools/gscip/gscip.pb.h"
32 #include "ortools/math_opt/parameters.pb.h"
33 #include "ortools/math_opt/solvers/gurobi.pb.h"
34 #include "ortools/sat/sat_parameters.pb.h"
45 kGscip = SOLVER_TYPE_GSCIP,
55 kGlop = SOLVER_TYPE_GLOP,
60 kCpSat = SOLVER_TYPE_CP_SAT,
79 kGlpk = SOLVER_TYPE_GLPK,
145 kHigh = EMPHASIS_HIGH,
180 GurobiParametersProto
Proto()
const;
355 SolveParametersProto
Proto()
const;
356 static absl::StatusOr<SolveParameters>
FromProto(
357 const SolveParametersProto&
proto);
bool AbslParseFlag(const absl::string_view text, SolverType *const value, std::string *const error)
std::string AbslUnparseFlag(const SolverType value)
MATH_OPT_DEFINE_ENUM(BasisStatus, BASIS_STATUS_UNSPECIFIED)
Collection of objects used to extend the Constraint Solver library.
static GurobiParameters FromProto(const GurobiParametersProto &proto)
GurobiParametersProto Proto() const
gtl::linked_hash_map< std::string, std::string > param_values
std::optional< double > best_bound_limit
std::optional< Emphasis > scaling
std::optional< int32_t > solution_limit
absl::Duration time_limit
std::optional< int64_t > node_limit
std::optional< Emphasis > heuristics
std::optional< double > absolute_gap_tolerance
std::optional< double > relative_gap_tolerance
std::optional< LPAlgorithm > lp_algorithm
std::optional< Emphasis > presolve
std::optional< int32_t > random_seed
std::optional< int32_t > threads
static absl::StatusOr< SolveParameters > FromProto(const SolveParametersProto &proto)
SolveParametersProto Proto() const
sat::SatParameters cp_sat
std::optional< double > objective_limit
std::optional< Emphasis > cuts
std::optional< int64_t > iteration_limit
std::optional< double > cutoff_limit
glop::GlopParameters glop
std::optional< int32_t > solution_pool_size