Class MPSolverCommonParameters

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
com.google.ortools.linearsolver.MPSolverCommonParameters
All Implemented Interfaces:
MPSolverCommonParametersOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

@Generated public final class MPSolverCommonParameters extends com.google.protobuf.GeneratedMessage implements MPSolverCommonParametersOrBuilder
 MPSolverCommonParameters holds advanced usage parameters that apply to any of
 the solvers we support.
 All of the fields in this proto can have a value of unspecified. In this
 case each inner solver will use their own safe defaults.
 Some values won't be supported by some solvers. The behavior in that case is
 not defined yet.
 
Protobuf type operations_research.MPSolverCommonParameters
See Also:
  • Field Details

    • RELATIVE_MIP_GAP_FIELD_NUMBER

      public static final int RELATIVE_MIP_GAP_FIELD_NUMBER
      See Also:
    • PRIMAL_TOLERANCE_FIELD_NUMBER

      public static final int PRIMAL_TOLERANCE_FIELD_NUMBER
      See Also:
    • DUAL_TOLERANCE_FIELD_NUMBER

      public static final int DUAL_TOLERANCE_FIELD_NUMBER
      See Also:
    • LP_ALGORITHM_FIELD_NUMBER

      public static final int LP_ALGORITHM_FIELD_NUMBER
      See Also:
    • PRESOLVE_FIELD_NUMBER

      public static final int PRESOLVE_FIELD_NUMBER
      See Also:
    • SCALING_FIELD_NUMBER

      public static final int SCALING_FIELD_NUMBER
      See Also:
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
    • hasRelativeMipGap

      public 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;
      Specified by:
      hasRelativeMipGap in interface MPSolverCommonParametersOrBuilder
      Returns:
      Whether the relativeMipGap field is set.
    • getRelativeMipGap

      public 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;
      Specified by:
      getRelativeMipGap in interface MPSolverCommonParametersOrBuilder
      Returns:
      The relativeMipGap.
    • getRelativeMipGapOrBuilder

      public 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;
      Specified by:
      getRelativeMipGapOrBuilder in interface MPSolverCommonParametersOrBuilder
    • hasPrimalTolerance

      public 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;
      Specified by:
      hasPrimalTolerance in interface MPSolverCommonParametersOrBuilder
      Returns:
      Whether the primalTolerance field is set.
    • getPrimalTolerance

      public 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;
      Specified by:
      getPrimalTolerance in interface MPSolverCommonParametersOrBuilder
      Returns:
      The primalTolerance.
    • getPrimalToleranceOrBuilder

      public 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;
      Specified by:
      getPrimalToleranceOrBuilder in interface MPSolverCommonParametersOrBuilder
    • hasDualTolerance

      public 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;
      Specified by:
      hasDualTolerance in interface MPSolverCommonParametersOrBuilder
      Returns:
      Whether the dualTolerance field is set.
    • getDualTolerance

      public 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;
      Specified by:
      getDualTolerance in interface MPSolverCommonParametersOrBuilder
      Returns:
      The dualTolerance.
    • getDualToleranceOrBuilder

      public 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;
      Specified by:
      getDualToleranceOrBuilder in interface MPSolverCommonParametersOrBuilder
    • hasLpAlgorithm

      public 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];
      Specified by:
      hasLpAlgorithm in interface MPSolverCommonParametersOrBuilder
      Returns:
      Whether the lpAlgorithm field is set.
    • 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];
      Specified by:
      getLpAlgorithm in interface MPSolverCommonParametersOrBuilder
      Returns:
      The lpAlgorithm.
    • hasPresolve

      public 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];
      Specified by:
      hasPresolve in interface MPSolverCommonParametersOrBuilder
      Returns:
      Whether the presolve field is set.
    • getPresolve

      public 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];
      Specified by:
      getPresolve in interface MPSolverCommonParametersOrBuilder
      Returns:
      The presolve.
    • hasScaling

      public 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];
      Specified by:
      hasScaling in interface MPSolverCommonParametersOrBuilder
      Returns:
      Whether the scaling field is set.
    • getScaling

      public 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];
      Specified by:
      getScaling in interface MPSolverCommonParametersOrBuilder
      Returns:
      The scaling.
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessage
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessage
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static MPSolverCommonParameters parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static MPSolverCommonParameters parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static MPSolverCommonParameters parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static MPSolverCommonParameters parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static MPSolverCommonParameters parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static MPSolverCommonParameters parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static MPSolverCommonParameters parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static MPSolverCommonParameters parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static MPSolverCommonParameters parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static MPSolverCommonParameters parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static MPSolverCommonParameters parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static MPSolverCommonParameters parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      public MPSolverCommonParameters.Builder newBuilderForType()
      Specified by:
      newBuilderForType in interface com.google.protobuf.Message
      Specified by:
      newBuilderForType in interface com.google.protobuf.MessageLite
    • newBuilder

      public static MPSolverCommonParameters.Builder newBuilder()
    • newBuilder

      public static MPSolverCommonParameters.Builder newBuilder(MPSolverCommonParameters prototype)
    • toBuilder

      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected MPSolverCommonParameters.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
      Overrides:
      newBuilderForType in class com.google.protobuf.AbstractMessage
    • getDefaultInstance

      public static MPSolverCommonParameters getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<MPSolverCommonParameters> parser()
    • getParserForType

      public com.google.protobuf.Parser<MPSolverCommonParameters> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessage
    • getDefaultInstanceForType

      public MPSolverCommonParameters getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder