14#ifndef OR_TOOLS_MATH_OPT_CPP_PARAMETERS_H_
15#define OR_TOOLS_MATH_OPT_CPP_PARAMETERS_H_
20#include "absl/status/statusor.h"
21#include "absl/time/time.h"
22#include "absl/types/span.h"
27#include "ortools/math_opt/parameters.pb.h"
28#include "ortools/math_opt/solvers/gurobi.pb.h"
40 kGscip = SOLVER_TYPE_GSCIP,
50 kGlop = SOLVER_TYPE_GLOP,
55 kCpSat = SOLVER_TYPE_CP_SAT,
75 kGlpk = SOLVER_TYPE_GLPK,
130 kHigh = EMPHASIS_HIGH,
141 StrictnessProto
Proto()
const;
164 GurobiParametersProto
Proto()
const;
306 SolveParametersProto
Proto()
const;
307 static absl::StatusOr<SolveParameters>
FromProto(
308 const SolveParametersProto&
proto);
MATH_OPT_DEFINE_ENUM(CallbackEvent, CALLBACK_EVENT_UNSPECIFIED)
bool AbslParseFlag(const absl::string_view text, SolverType *const value, std::string *const error)
std::string AbslUnparseFlag(const SolverType value)
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< Emphasis > heuristics
std::optional< LPAlgorithm > lp_algorithm
std::optional< Emphasis > presolve
std::optional< double > absolute_gap_limit
std::optional< int32_t > random_seed
std::optional< int32_t > threads
static absl::StatusOr< SolveParameters > FromProto(const SolveParametersProto &proto)
SolveParametersProto Proto() const
std::optional< double > relative_gap_limit
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
StrictnessProto Proto() const
static Strictness FromProto(const StrictnessProto &proto)