Interface MPSolverCommonParametersOrBuilder

  • All Superinterfaces:
    com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
    All Known Implementing Classes:
    MPSolverCommonParameters, MPSolverCommonParameters.Builder

    public interface MPSolverCommonParametersOrBuilder
    extends com.google.protobuf.MessageOrBuilder
    • Method Detail

      • hasRelativeMipGap

        boolean hasRelativeMipGap()
         The solver stops if the relative MIP gap reaches this value or below.
         The relative MIP gap is an upper bound of the relative distance to the
         optimum, and it is defined as:
        
           abs(best_bound - incumbent) / abs(incumbent) [Gurobi]
           abs(best_bound - incumbent) / min(abs(best_bound), abs(incumbent)) [SCIP]
        
         where "incumbent" is the objective value of the best solution found so far
         (i.e., lowest when minimizing, highest when maximizing), and "best_bound"
         is the tightest bound of the objective determined so far (i.e., highest
         when minimizing, and lowest when maximizing). The MIP Gap is sensitive to
         objective offset. If the denominator is 0 the MIP Gap is INFINITY for SCIP
         and Gurobi. Of note, "incumbent" and "best bound" are called "primal bound"
         and "dual bound" in SCIP, respectively.
         Ask or-core-team@ for other solvers.
         
        optional .operations_research.OptionalDouble relative_mip_gap = 1;
        Returns:
        Whether the relativeMipGap field is set.
      • getRelativeMipGap

        OptionalDouble getRelativeMipGap()
         The solver stops if the relative MIP gap reaches this value or below.
         The relative MIP gap is an upper bound of the relative distance to the
         optimum, and it is defined as:
        
           abs(best_bound - incumbent) / abs(incumbent) [Gurobi]
           abs(best_bound - incumbent) / min(abs(best_bound), abs(incumbent)) [SCIP]
        
         where "incumbent" is the objective value of the best solution found so far
         (i.e., lowest when minimizing, highest when maximizing), and "best_bound"
         is the tightest bound of the objective determined so far (i.e., highest
         when minimizing, and lowest when maximizing). The MIP Gap is sensitive to
         objective offset. If the denominator is 0 the MIP Gap is INFINITY for SCIP
         and Gurobi. Of note, "incumbent" and "best bound" are called "primal bound"
         and "dual bound" in SCIP, respectively.
         Ask or-core-team@ for other solvers.
         
        optional .operations_research.OptionalDouble relative_mip_gap = 1;
        Returns:
        The relativeMipGap.
      • getRelativeMipGapOrBuilder

        OptionalDoubleOrBuilder getRelativeMipGapOrBuilder()
         The solver stops if the relative MIP gap reaches this value or below.
         The relative MIP gap is an upper bound of the relative distance to the
         optimum, and it is defined as:
        
           abs(best_bound - incumbent) / abs(incumbent) [Gurobi]
           abs(best_bound - incumbent) / min(abs(best_bound), abs(incumbent)) [SCIP]
        
         where "incumbent" is the objective value of the best solution found so far
         (i.e., lowest when minimizing, highest when maximizing), and "best_bound"
         is the tightest bound of the objective determined so far (i.e., highest
         when minimizing, and lowest when maximizing). The MIP Gap is sensitive to
         objective offset. If the denominator is 0 the MIP Gap is INFINITY for SCIP
         and Gurobi. Of note, "incumbent" and "best bound" are called "primal bound"
         and "dual bound" in SCIP, respectively.
         Ask or-core-team@ for other solvers.
         
        optional .operations_research.OptionalDouble relative_mip_gap = 1;
      • hasPrimalTolerance

        boolean hasPrimalTolerance()
         Tolerance for primal feasibility of basic solutions: this is the maximum
         allowed error in constraint satisfiability.
         For SCIP this includes integrality constraints. For Gurobi it does not, you
         need to set the custom parameter IntFeasTol.
         
        optional .operations_research.OptionalDouble primal_tolerance = 2;
        Returns:
        Whether the primalTolerance field is set.
      • getPrimalTolerance

        OptionalDouble getPrimalTolerance()
         Tolerance for primal feasibility of basic solutions: this is the maximum
         allowed error in constraint satisfiability.
         For SCIP this includes integrality constraints. For Gurobi it does not, you
         need to set the custom parameter IntFeasTol.
         
        optional .operations_research.OptionalDouble primal_tolerance = 2;
        Returns:
        The primalTolerance.
      • getPrimalToleranceOrBuilder

        OptionalDoubleOrBuilder getPrimalToleranceOrBuilder()
         Tolerance for primal feasibility of basic solutions: this is the maximum
         allowed error in constraint satisfiability.
         For SCIP this includes integrality constraints. For Gurobi it does not, you
         need to set the custom parameter IntFeasTol.
         
        optional .operations_research.OptionalDouble primal_tolerance = 2;
      • hasDualTolerance

        boolean hasDualTolerance()
         Tolerance for dual feasibility.
         For SCIP and Gurobi this is the feasibility tolerance for reduced costs in
         LP solution: reduced costs must all be smaller than this value in the
         improving direction in order for a model to be declared optimal.
         Not supported for other solvers.
         
        optional .operations_research.OptionalDouble dual_tolerance = 3;
        Returns:
        Whether the dualTolerance field is set.
      • getDualTolerance

        OptionalDouble getDualTolerance()
         Tolerance for dual feasibility.
         For SCIP and Gurobi this is the feasibility tolerance for reduced costs in
         LP solution: reduced costs must all be smaller than this value in the
         improving direction in order for a model to be declared optimal.
         Not supported for other solvers.
         
        optional .operations_research.OptionalDouble dual_tolerance = 3;
        Returns:
        The dualTolerance.
      • getDualToleranceOrBuilder

        OptionalDoubleOrBuilder getDualToleranceOrBuilder()
         Tolerance for dual feasibility.
         For SCIP and Gurobi this is the feasibility tolerance for reduced costs in
         LP solution: reduced costs must all be smaller than this value in the
         improving direction in order for a model to be declared optimal.
         Not supported for other solvers.
         
        optional .operations_research.OptionalDouble dual_tolerance = 3;
      • hasLpAlgorithm

        boolean hasLpAlgorithm()
         Algorithm to solve linear programs.
         Ask or-core-team@ if you want to know what this does exactly.
         
        optional .operations_research.MPSolverCommonParameters.LPAlgorithmValues lp_algorithm = 4 [default = LP_ALGO_UNSPECIFIED];
        Returns:
        Whether the lpAlgorithm field is set.
      • getLpAlgorithm

        MPSolverCommonParameters.LPAlgorithmValues getLpAlgorithm()
         Algorithm to solve linear programs.
         Ask or-core-team@ if you want to know what this does exactly.
         
        optional .operations_research.MPSolverCommonParameters.LPAlgorithmValues lp_algorithm = 4 [default = LP_ALGO_UNSPECIFIED];
        Returns:
        The lpAlgorithm.
      • hasPresolve

        boolean hasPresolve()
         Gurobi and SCIP enable presolve by default.
         Ask or-core-team@ for other solvers.
         
        optional .operations_research.OptionalBoolean presolve = 5 [default = BOOL_UNSPECIFIED];
        Returns:
        Whether the presolve field is set.
      • getPresolve

        OptionalBoolean getPresolve()
         Gurobi and SCIP enable presolve by default.
         Ask or-core-team@ for other solvers.
         
        optional .operations_research.OptionalBoolean presolve = 5 [default = BOOL_UNSPECIFIED];
        Returns:
        The presolve.
      • hasScaling

        boolean hasScaling()
         Enable automatic scaling of matrix coefficients and objective. Available
         for Gurobi and GLOP.
         Ask or-core-team@ if you want more details.
         
        optional .operations_research.OptionalBoolean scaling = 7 [default = BOOL_UNSPECIFIED];
        Returns:
        Whether the scaling field is set.
      • getScaling

        OptionalBoolean getScaling()
         Enable automatic scaling of matrix coefficients and objective. Available
         for Gurobi and GLOP.
         Ask or-core-team@ if you want more details.
         
        optional .operations_research.OptionalBoolean scaling = 7 [default = BOOL_UNSPECIFIED];
        Returns:
        The scaling.