Class TerminationCriteria.Builder
java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<TerminationCriteria.Builder>
com.google.protobuf.GeneratedMessage.Builder<TerminationCriteria.Builder>
com.google.ortools.pdlp.TerminationCriteria.Builder
- All Implemented Interfaces:
TerminationCriteriaOrBuilder,com.google.protobuf.Message.Builder,com.google.protobuf.MessageLite.Builder,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,Cloneable
- Enclosing class:
TerminationCriteria
public static final class TerminationCriteria.Builder
extends com.google.protobuf.GeneratedMessage.Builder<TerminationCriteria.Builder>
implements TerminationCriteriaOrBuilder
Relevant readings on infeasibility certificates: (1) https://docs.mosek.com/modeling-cookbook/qcqo.html provides references explaining why the primal rays imply dual infeasibility and dual rays imply primal infeasibility. (2) The termination criteria for Mosek's linear programming optimizer https://docs.mosek.com/9.0/pythonfusion/solving-linear.html. (3) The termination criteria for OSQP is in section 3.3 of https://web.stanford.edu/~boyd/papers/pdf/osqp.pdf. (4) The termination criteria for SCS is in section 3.5 of https://arxiv.org/pdf/1312.3039.pdf.Protobuf type
operations_research.pdlp.TerminationCriteria-
Method Summary
Modifier and TypeMethodDescriptionbuild()clear().operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;If the following three conditions hold we say we have obtained an approximate primal ray, which is an approximate certificate of dual infeasibilityDeprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_absolute is deprecated.Deprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_relative is deprecated.If the following two conditions hold we say that we have obtained an approximate dual ray, which is an approximate certificate of primal infeasibilityIf termination_reason = TERMINATION_REASON_ITERATION_LIMIT then the solver has taken at least iterations_limit iterations.If termination_reason = TERMINATION_REASON_KKT_MATRIX_PASS_LIMIT then cumulative_kkt_matrix_passes is at least kkt_pass_limit.The norm that we are measuring the optimality criteria in..operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;If termination_reason = TERMINATION_REASON_TIME_LIMIT then the solver has taken at least time_sec_limit time.static final com.google.protobuf.Descriptors.Descriptorcom.google.protobuf.Descriptors.Descriptor.operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;.operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;.operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;doubleIf the following three conditions hold we say we have obtained an approximate primal ray, which is an approximate certificate of dual infeasibilitydoubleDeprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_absolute is deprecated.doubleDeprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_relative is deprecated.doubleIf the following two conditions hold we say that we have obtained an approximate dual ray, which is an approximate certificate of primal infeasibilityintIf termination_reason = TERMINATION_REASON_ITERATION_LIMIT then the solver has taken at least iterations_limit iterations.doubleIf termination_reason = TERMINATION_REASON_KKT_MATRIX_PASS_LIMIT then cumulative_kkt_matrix_passes is at least kkt_pass_limit.The norm that we are measuring the optimality criteria in..operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;.operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;.operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;doubleIf termination_reason = TERMINATION_REASON_TIME_LIMIT then the solver has taken at least time_sec_limit time.boolean.operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;booleanIf the following three conditions hold we say we have obtained an approximate primal ray, which is an approximate certificate of dual infeasibilitybooleanDeprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_absolute is deprecated.booleanDeprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_relative is deprecated.booleanIf the following two conditions hold we say that we have obtained an approximate dual ray, which is an approximate certificate of primal infeasibilitybooleanIf termination_reason = TERMINATION_REASON_ITERATION_LIMIT then the solver has taken at least iterations_limit iterations.booleanIf termination_reason = TERMINATION_REASON_KKT_MATRIX_PASS_LIMIT then cumulative_kkt_matrix_passes is at least kkt_pass_limit.booleanThe norm that we are measuring the optimality criteria in.boolean.operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;booleanIf termination_reason = TERMINATION_REASON_TIME_LIMIT then the solver has taken at least time_sec_limit time.protected com.google.protobuf.GeneratedMessage.FieldAccessorTablefinal boolean.operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;mergeFrom(TerminationCriteria other) mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) mergeFrom(com.google.protobuf.Message other) .operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;.operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;setDetailedOptimalityCriteria(TerminationCriteria.DetailedOptimalityCriteria.Builder builderForValue) .operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;setEpsDualInfeasible(double value) If the following three conditions hold we say we have obtained an approximate primal ray, which is an approximate certificate of dual infeasibilitysetEpsOptimalAbsolute(double value) Deprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_absolute is deprecated.setEpsOptimalRelative(double value) Deprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_relative is deprecated.setEpsPrimalInfeasible(double value) If the following two conditions hold we say that we have obtained an approximate dual ray, which is an approximate certificate of primal infeasibilitysetIterationLimit(int value) If termination_reason = TERMINATION_REASON_ITERATION_LIMIT then the solver has taken at least iterations_limit iterations.setKktMatrixPassLimit(double value) If termination_reason = TERMINATION_REASON_KKT_MATRIX_PASS_LIMIT then cumulative_kkt_matrix_passes is at least kkt_pass_limit.setOptimalityNorm(OptimalityNorm value) The norm that we are measuring the optimality criteria in..operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;.operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;setTimeSecLimit(double value) If termination_reason = TERMINATION_REASON_TIME_LIMIT then the solver has taken at least time_sec_limit time.Methods inherited from class com.google.protobuf.GeneratedMessage.Builder
addRepeatedField, clearField, clearOneof, clone, getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownFields, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setField, setRepeatedField, setUnknownFields, setUnknownFieldSetBuilder, setUnknownFieldsProto3Methods inherited from class com.google.protobuf.AbstractMessage.Builder
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringMethods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageExceptionMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.protobuf.Message.Builder
mergeDelimitedFrom, mergeDelimitedFromMethods inherited from interface com.google.protobuf.MessageLite.Builder
mergeFromMethods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Method Details
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessage.Builder<TerminationCriteria.Builder>
-
clear
- Specified by:
clearin interfacecom.google.protobuf.Message.Builder- Specified by:
clearin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clearin classcom.google.protobuf.GeneratedMessage.Builder<TerminationCriteria.Builder>
-
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.Message.Builder- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getDescriptorForTypein classcom.google.protobuf.GeneratedMessage.Builder<TerminationCriteria.Builder>
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
build
- Specified by:
buildin interfacecom.google.protobuf.Message.Builder- Specified by:
buildin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
- Specified by:
buildPartialin interfacecom.google.protobuf.Message.Builder- Specified by:
buildPartialin interfacecom.google.protobuf.MessageLite.Builder
-
mergeFrom
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<TerminationCriteria.Builder>
-
mergeFrom
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessage.Builder<TerminationCriteria.Builder>
-
mergeFrom
public TerminationCriteria.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Specified by:
mergeFromin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<TerminationCriteria.Builder>- Throws:
IOException
-
getOptimalityCriteriaCase
- Specified by:
getOptimalityCriteriaCasein interfaceTerminationCriteriaOrBuilder
-
clearOptimalityCriteria
-
hasOptimalityNorm
public boolean hasOptimalityNorm()The norm that we are measuring the optimality criteria in.
optional .operations_research.pdlp.OptimalityNorm optimality_norm = 1 [default = OPTIMALITY_NORM_L2];- Specified by:
hasOptimalityNormin interfaceTerminationCriteriaOrBuilder- Returns:
- Whether the optimalityNorm field is set.
-
getOptimalityNorm
The norm that we are measuring the optimality criteria in.
optional .operations_research.pdlp.OptimalityNorm optimality_norm = 1 [default = OPTIMALITY_NORM_L2];- Specified by:
getOptimalityNormin interfaceTerminationCriteriaOrBuilder- Returns:
- The optimalityNorm.
-
setOptimalityNorm
The norm that we are measuring the optimality criteria in.
optional .operations_research.pdlp.OptimalityNorm optimality_norm = 1 [default = OPTIMALITY_NORM_L2];- Parameters:
value- The optimalityNorm to set.- Returns:
- This builder for chaining.
-
clearOptimalityNorm
The norm that we are measuring the optimality criteria in.
optional .operations_research.pdlp.OptimalityNorm optimality_norm = 1 [default = OPTIMALITY_NORM_L2];- Returns:
- This builder for chaining.
-
hasSimpleOptimalityCriteria
public boolean hasSimpleOptimalityCriteria().operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;- Specified by:
hasSimpleOptimalityCriteriain interfaceTerminationCriteriaOrBuilder- Returns:
- Whether the simpleOptimalityCriteria field is set.
-
getSimpleOptimalityCriteria
.operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;- Specified by:
getSimpleOptimalityCriteriain interfaceTerminationCriteriaOrBuilder- Returns:
- The simpleOptimalityCriteria.
-
setSimpleOptimalityCriteria
public TerminationCriteria.Builder setSimpleOptimalityCriteria(TerminationCriteria.SimpleOptimalityCriteria value) .operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9; -
setSimpleOptimalityCriteria
public TerminationCriteria.Builder setSimpleOptimalityCriteria(TerminationCriteria.SimpleOptimalityCriteria.Builder builderForValue) .operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9; -
mergeSimpleOptimalityCriteria
public TerminationCriteria.Builder mergeSimpleOptimalityCriteria(TerminationCriteria.SimpleOptimalityCriteria value) .operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9; -
clearSimpleOptimalityCriteria
.operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9; -
getSimpleOptimalityCriteriaBuilder
.operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9; -
getSimpleOptimalityCriteriaOrBuilder
.operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;- Specified by:
getSimpleOptimalityCriteriaOrBuilderin interfaceTerminationCriteriaOrBuilder
-
hasDetailedOptimalityCriteria
public boolean hasDetailedOptimalityCriteria().operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;- Specified by:
hasDetailedOptimalityCriteriain interfaceTerminationCriteriaOrBuilder- Returns:
- Whether the detailedOptimalityCriteria field is set.
-
getDetailedOptimalityCriteria
.operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;- Specified by:
getDetailedOptimalityCriteriain interfaceTerminationCriteriaOrBuilder- Returns:
- The detailedOptimalityCriteria.
-
setDetailedOptimalityCriteria
public TerminationCriteria.Builder setDetailedOptimalityCriteria(TerminationCriteria.DetailedOptimalityCriteria value) .operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10; -
setDetailedOptimalityCriteria
public TerminationCriteria.Builder setDetailedOptimalityCriteria(TerminationCriteria.DetailedOptimalityCriteria.Builder builderForValue) .operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10; -
mergeDetailedOptimalityCriteria
public TerminationCriteria.Builder mergeDetailedOptimalityCriteria(TerminationCriteria.DetailedOptimalityCriteria value) .operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10; -
clearDetailedOptimalityCriteria
.operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10; -
getDetailedOptimalityCriteriaBuilder
public TerminationCriteria.DetailedOptimalityCriteria.Builder getDetailedOptimalityCriteriaBuilder().operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10; -
getDetailedOptimalityCriteriaOrBuilder
public TerminationCriteria.DetailedOptimalityCriteriaOrBuilder getDetailedOptimalityCriteriaOrBuilder().operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;- Specified by:
getDetailedOptimalityCriteriaOrBuilderin interfaceTerminationCriteriaOrBuilder
-
hasEpsOptimalAbsolute
Deprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_absolute is deprecated. See ortools/pdlp/solvers.proto;l=147Absolute tolerance on primal residual, dual residual, and the objective gap. Deprecated, use simple_optimality_criteria instead. TODO(b/241462829) delete this deprecated field.
optional double eps_optimal_absolute = 2 [default = 1e-06, deprecated = true];- Specified by:
hasEpsOptimalAbsolutein interfaceTerminationCriteriaOrBuilder- Returns:
- Whether the epsOptimalAbsolute field is set.
-
getEpsOptimalAbsolute
Deprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_absolute is deprecated. See ortools/pdlp/solvers.proto;l=147Absolute tolerance on primal residual, dual residual, and the objective gap. Deprecated, use simple_optimality_criteria instead. TODO(b/241462829) delete this deprecated field.
optional double eps_optimal_absolute = 2 [default = 1e-06, deprecated = true];- Specified by:
getEpsOptimalAbsolutein interfaceTerminationCriteriaOrBuilder- Returns:
- The epsOptimalAbsolute.
-
setEpsOptimalAbsolute
Deprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_absolute is deprecated. See ortools/pdlp/solvers.proto;l=147Absolute tolerance on primal residual, dual residual, and the objective gap. Deprecated, use simple_optimality_criteria instead. TODO(b/241462829) delete this deprecated field.
optional double eps_optimal_absolute = 2 [default = 1e-06, deprecated = true];- Parameters:
value- The epsOptimalAbsolute to set.- Returns:
- This builder for chaining.
-
clearEpsOptimalAbsolute
Deprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_absolute is deprecated. See ortools/pdlp/solvers.proto;l=147Absolute tolerance on primal residual, dual residual, and the objective gap. Deprecated, use simple_optimality_criteria instead. TODO(b/241462829) delete this deprecated field.
optional double eps_optimal_absolute = 2 [default = 1e-06, deprecated = true];- Returns:
- This builder for chaining.
-
hasEpsOptimalRelative
Deprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_relative is deprecated. See ortools/pdlp/solvers.proto;l=154Relative tolerance on primal residual, dual residual, and the objective gap. Deprecated, use simple_optimality_criteria instead. TODO(b/241462829) delete this deprecated field.
optional double eps_optimal_relative = 3 [default = 1e-06, deprecated = true];- Specified by:
hasEpsOptimalRelativein interfaceTerminationCriteriaOrBuilder- Returns:
- Whether the epsOptimalRelative field is set.
-
getEpsOptimalRelative
Deprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_relative is deprecated. See ortools/pdlp/solvers.proto;l=154Relative tolerance on primal residual, dual residual, and the objective gap. Deprecated, use simple_optimality_criteria instead. TODO(b/241462829) delete this deprecated field.
optional double eps_optimal_relative = 3 [default = 1e-06, deprecated = true];- Specified by:
getEpsOptimalRelativein interfaceTerminationCriteriaOrBuilder- Returns:
- The epsOptimalRelative.
-
setEpsOptimalRelative
Deprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_relative is deprecated. See ortools/pdlp/solvers.proto;l=154Relative tolerance on primal residual, dual residual, and the objective gap. Deprecated, use simple_optimality_criteria instead. TODO(b/241462829) delete this deprecated field.
optional double eps_optimal_relative = 3 [default = 1e-06, deprecated = true];- Parameters:
value- The epsOptimalRelative to set.- Returns:
- This builder for chaining.
-
clearEpsOptimalRelative
Deprecated.operations_research.pdlp.TerminationCriteria.eps_optimal_relative is deprecated. See ortools/pdlp/solvers.proto;l=154Relative tolerance on primal residual, dual residual, and the objective gap. Deprecated, use simple_optimality_criteria instead. TODO(b/241462829) delete this deprecated field.
optional double eps_optimal_relative = 3 [default = 1e-06, deprecated = true];- Returns:
- This builder for chaining.
-
hasEpsPrimalInfeasible
public boolean hasEpsPrimalInfeasible()If the following two conditions hold we say that we have obtained an approximate dual ray, which is an approximate certificate of primal infeasibility. (1) dual_ray_objective > 0, (2) max_dual_ray_infeasibility / dual_ray_objective <= eps_primal_infeasible.
optional double eps_primal_infeasible = 4 [default = 1e-08];- Specified by:
hasEpsPrimalInfeasiblein interfaceTerminationCriteriaOrBuilder- Returns:
- Whether the epsPrimalInfeasible field is set.
-
getEpsPrimalInfeasible
public double getEpsPrimalInfeasible()If the following two conditions hold we say that we have obtained an approximate dual ray, which is an approximate certificate of primal infeasibility. (1) dual_ray_objective > 0, (2) max_dual_ray_infeasibility / dual_ray_objective <= eps_primal_infeasible.
optional double eps_primal_infeasible = 4 [default = 1e-08];- Specified by:
getEpsPrimalInfeasiblein interfaceTerminationCriteriaOrBuilder- Returns:
- The epsPrimalInfeasible.
-
setEpsPrimalInfeasible
If the following two conditions hold we say that we have obtained an approximate dual ray, which is an approximate certificate of primal infeasibility. (1) dual_ray_objective > 0, (2) max_dual_ray_infeasibility / dual_ray_objective <= eps_primal_infeasible.
optional double eps_primal_infeasible = 4 [default = 1e-08];- Parameters:
value- The epsPrimalInfeasible to set.- Returns:
- This builder for chaining.
-
clearEpsPrimalInfeasible
If the following two conditions hold we say that we have obtained an approximate dual ray, which is an approximate certificate of primal infeasibility. (1) dual_ray_objective > 0, (2) max_dual_ray_infeasibility / dual_ray_objective <= eps_primal_infeasible.
optional double eps_primal_infeasible = 4 [default = 1e-08];- Returns:
- This builder for chaining.
-
hasEpsDualInfeasible
public boolean hasEpsDualInfeasible()If the following three conditions hold we say we have obtained an approximate primal ray, which is an approximate certificate of dual infeasibility. (1) primal_ray_linear_objective < 0, (2) max_primal_ray_infeasibility / (-primal_ray_linear_objective) <= eps_dual_infeasible (3) primal_ray_quadratic_norm / (-primal_ray_linear_objective) <= eps_dual_infeasible.
optional double eps_dual_infeasible = 5 [default = 1e-08];- Specified by:
hasEpsDualInfeasiblein interfaceTerminationCriteriaOrBuilder- Returns:
- Whether the epsDualInfeasible field is set.
-
getEpsDualInfeasible
public double getEpsDualInfeasible()If the following three conditions hold we say we have obtained an approximate primal ray, which is an approximate certificate of dual infeasibility. (1) primal_ray_linear_objective < 0, (2) max_primal_ray_infeasibility / (-primal_ray_linear_objective) <= eps_dual_infeasible (3) primal_ray_quadratic_norm / (-primal_ray_linear_objective) <= eps_dual_infeasible.
optional double eps_dual_infeasible = 5 [default = 1e-08];- Specified by:
getEpsDualInfeasiblein interfaceTerminationCriteriaOrBuilder- Returns:
- The epsDualInfeasible.
-
setEpsDualInfeasible
If the following three conditions hold we say we have obtained an approximate primal ray, which is an approximate certificate of dual infeasibility. (1) primal_ray_linear_objective < 0, (2) max_primal_ray_infeasibility / (-primal_ray_linear_objective) <= eps_dual_infeasible (3) primal_ray_quadratic_norm / (-primal_ray_linear_objective) <= eps_dual_infeasible.
optional double eps_dual_infeasible = 5 [default = 1e-08];- Parameters:
value- The epsDualInfeasible to set.- Returns:
- This builder for chaining.
-
clearEpsDualInfeasible
If the following three conditions hold we say we have obtained an approximate primal ray, which is an approximate certificate of dual infeasibility. (1) primal_ray_linear_objective < 0, (2) max_primal_ray_infeasibility / (-primal_ray_linear_objective) <= eps_dual_infeasible (3) primal_ray_quadratic_norm / (-primal_ray_linear_objective) <= eps_dual_infeasible.
optional double eps_dual_infeasible = 5 [default = 1e-08];- Returns:
- This builder for chaining.
-
hasTimeSecLimit
public boolean hasTimeSecLimit()If termination_reason = TERMINATION_REASON_TIME_LIMIT then the solver has taken at least time_sec_limit time.
optional double time_sec_limit = 6 [default = inf];- Specified by:
hasTimeSecLimitin interfaceTerminationCriteriaOrBuilder- Returns:
- Whether the timeSecLimit field is set.
-
getTimeSecLimit
public double getTimeSecLimit()If termination_reason = TERMINATION_REASON_TIME_LIMIT then the solver has taken at least time_sec_limit time.
optional double time_sec_limit = 6 [default = inf];- Specified by:
getTimeSecLimitin interfaceTerminationCriteriaOrBuilder- Returns:
- The timeSecLimit.
-
setTimeSecLimit
If termination_reason = TERMINATION_REASON_TIME_LIMIT then the solver has taken at least time_sec_limit time.
optional double time_sec_limit = 6 [default = inf];- Parameters:
value- The timeSecLimit to set.- Returns:
- This builder for chaining.
-
clearTimeSecLimit
If termination_reason = TERMINATION_REASON_TIME_LIMIT then the solver has taken at least time_sec_limit time.
optional double time_sec_limit = 6 [default = inf];- Returns:
- This builder for chaining.
-
hasIterationLimit
public boolean hasIterationLimit()If termination_reason = TERMINATION_REASON_ITERATION_LIMIT then the solver has taken at least iterations_limit iterations.
optional int32 iteration_limit = 7 [default = 2147483647];- Specified by:
hasIterationLimitin interfaceTerminationCriteriaOrBuilder- Returns:
- Whether the iterationLimit field is set.
-
getIterationLimit
public int getIterationLimit()If termination_reason = TERMINATION_REASON_ITERATION_LIMIT then the solver has taken at least iterations_limit iterations.
optional int32 iteration_limit = 7 [default = 2147483647];- Specified by:
getIterationLimitin interfaceTerminationCriteriaOrBuilder- Returns:
- The iterationLimit.
-
setIterationLimit
If termination_reason = TERMINATION_REASON_ITERATION_LIMIT then the solver has taken at least iterations_limit iterations.
optional int32 iteration_limit = 7 [default = 2147483647];- Parameters:
value- The iterationLimit to set.- Returns:
- This builder for chaining.
-
clearIterationLimit
If termination_reason = TERMINATION_REASON_ITERATION_LIMIT then the solver has taken at least iterations_limit iterations.
optional int32 iteration_limit = 7 [default = 2147483647];- Returns:
- This builder for chaining.
-
hasKktMatrixPassLimit
public boolean hasKktMatrixPassLimit()If termination_reason = TERMINATION_REASON_KKT_MATRIX_PASS_LIMIT then cumulative_kkt_matrix_passes is at least kkt_pass_limit.
optional double kkt_matrix_pass_limit = 8 [default = inf];- Specified by:
hasKktMatrixPassLimitin interfaceTerminationCriteriaOrBuilder- Returns:
- Whether the kktMatrixPassLimit field is set.
-
getKktMatrixPassLimit
public double getKktMatrixPassLimit()If termination_reason = TERMINATION_REASON_KKT_MATRIX_PASS_LIMIT then cumulative_kkt_matrix_passes is at least kkt_pass_limit.
optional double kkt_matrix_pass_limit = 8 [default = inf];- Specified by:
getKktMatrixPassLimitin interfaceTerminationCriteriaOrBuilder- Returns:
- The kktMatrixPassLimit.
-
setKktMatrixPassLimit
If termination_reason = TERMINATION_REASON_KKT_MATRIX_PASS_LIMIT then cumulative_kkt_matrix_passes is at least kkt_pass_limit.
optional double kkt_matrix_pass_limit = 8 [default = inf];- Parameters:
value- The kktMatrixPassLimit to set.- Returns:
- This builder for chaining.
-
clearKktMatrixPassLimit
If termination_reason = TERMINATION_REASON_KKT_MATRIX_PASS_LIMIT then cumulative_kkt_matrix_passes is at least kkt_pass_limit.
optional double kkt_matrix_pass_limit = 8 [default = inf];- Returns:
- This builder for chaining.
-