![]() |
Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
|
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
Definition at line 25 of file TerminationCriteria.java.
Classes | |
class | Builder |
class | DetailedOptimalityCriteria |
interface | DetailedOptimalityCriteriaOrBuilder |
enum | OptimalityCriteriaCase |
class | SimpleOptimalityCriteria |
interface | SimpleOptimalityCriteriaOrBuilder |
Static Public Member Functions | |
static final com.google.protobuf.Descriptors.Descriptor | getDescriptor () |
static com.google.ortools.pdlp.TerminationCriteria | parseFrom (java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.pdlp.TerminationCriteria | parseFrom (java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.pdlp.TerminationCriteria | parseFrom (com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.pdlp.TerminationCriteria | parseFrom (com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.pdlp.TerminationCriteria | parseFrom (byte[] data) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.pdlp.TerminationCriteria | parseFrom (byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException |
static com.google.ortools.pdlp.TerminationCriteria | parseFrom (java.io.InputStream input) throws java.io.IOException |
static com.google.ortools.pdlp.TerminationCriteria | parseFrom (java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException |
static com.google.ortools.pdlp.TerminationCriteria | parseDelimitedFrom (java.io.InputStream input) throws java.io.IOException |
static com.google.ortools.pdlp.TerminationCriteria | parseDelimitedFrom (java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException |
static com.google.ortools.pdlp.TerminationCriteria | parseFrom (com.google.protobuf.CodedInputStream input) throws java.io.IOException |
static com.google.ortools.pdlp.TerminationCriteria | parseFrom (com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException |
static Builder | newBuilder () |
static Builder | newBuilder (com.google.ortools.pdlp.TerminationCriteria prototype) |
static com.google.ortools.pdlp.TerminationCriteria | getDefaultInstance () |
static com.google.protobuf.Parser< TerminationCriteria > | parser () |
Static Public Attributes | |
static final int | OPTIMALITY_NORM_FIELD_NUMBER = 1 |
static final int | SIMPLE_OPTIMALITY_CRITERIA_FIELD_NUMBER = 9 |
static final int | DETAILED_OPTIMALITY_CRITERIA_FIELD_NUMBER = 10 |
static final int | EPS_OPTIMAL_ABSOLUTE_FIELD_NUMBER = 2 |
static final int | EPS_OPTIMAL_RELATIVE_FIELD_NUMBER = 3 |
static final int | EPS_PRIMAL_INFEASIBLE_FIELD_NUMBER = 4 |
static final int | EPS_DUAL_INFEASIBLE_FIELD_NUMBER = 5 |
static final int | TIME_SEC_LIMIT_FIELD_NUMBER = 6 |
static final int | ITERATION_LIMIT_FIELD_NUMBER = 7 |
static final int | KKT_MATRIX_PASS_LIMIT_FIELD_NUMBER = 8 |
Protected Member Functions | |
com.google.protobuf.GeneratedMessage.FieldAccessorTable | internalGetFieldAccessorTable () |
Builder | newBuilderForType (com.google.protobuf.GeneratedMessage.BuilderParent parent) |
boolean com.google.ortools.pdlp.TerminationCriteria.equals | ( | final java.lang.Object | obj | ) |
Definition at line 2354 of file TerminationCriteria.java.
|
static |
Definition at line 3734 of file TerminationCriteria.java.
com.google.ortools.pdlp.TerminationCriteria com.google.ortools.pdlp.TerminationCriteria.getDefaultInstanceForType | ( | ) |
Definition at line 3770 of file TerminationCriteria.java.
|
static |
Definition at line 55 of file TerminationCriteria.java.
com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteria com.google.ortools.pdlp.TerminationCriteria.getDetailedOptimalityCriteria | ( | ) |
.operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 1999 of file TerminationCriteria.java.
com.google.ortools.pdlp.TerminationCriteria.DetailedOptimalityCriteriaOrBuilder com.google.ortools.pdlp.TerminationCriteria.getDetailedOptimalityCriteriaOrBuilder | ( | ) |
.operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2009 of file TerminationCriteria.java.
double com.google.ortools.pdlp.TerminationCriteria.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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2164 of file TerminationCriteria.java.
double com.google.ortools.pdlp.TerminationCriteria.getEpsOptimalAbsolute | ( | ) |
Absolute 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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2049 of file TerminationCriteria.java.
double com.google.ortools.pdlp.TerminationCriteria.getEpsOptimalRelative | ( | ) |
Relative 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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2086 of file TerminationCriteria.java.
double com.google.ortools.pdlp.TerminationCriteria.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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2123 of file TerminationCriteria.java.
int com.google.ortools.pdlp.TerminationCriteria.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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2222 of file TerminationCriteria.java.
double com.google.ortools.pdlp.TerminationCriteria.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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2251 of file TerminationCriteria.java.
OptimalityCriteriaCase com.google.ortools.pdlp.TerminationCriteria.getOptimalityCriteriaCase | ( | ) |
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 1923 of file TerminationCriteria.java.
com.google.ortools.pdlp.OptimalityNorm com.google.ortools.pdlp.TerminationCriteria.getOptimalityNorm | ( | ) |
The norm that we are measuring the optimality criteria in.
optional .operations_research.pdlp.OptimalityNorm optimality_norm = 1 [default = OPTIMALITY_NORM_L2];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 1949 of file TerminationCriteria.java.
com.google.protobuf.Parser< TerminationCriteria > com.google.ortools.pdlp.TerminationCriteria.getParserForType | ( | ) |
Definition at line 3765 of file TerminationCriteria.java.
int com.google.ortools.pdlp.TerminationCriteria.getSerializedSize | ( | ) |
Definition at line 2303 of file TerminationCriteria.java.
com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteria com.google.ortools.pdlp.TerminationCriteria.getSimpleOptimalityCriteria | ( | ) |
.operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 1968 of file TerminationCriteria.java.
com.google.ortools.pdlp.TerminationCriteria.SimpleOptimalityCriteriaOrBuilder com.google.ortools.pdlp.TerminationCriteria.getSimpleOptimalityCriteriaOrBuilder | ( | ) |
.operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 1978 of file TerminationCriteria.java.
double com.google.ortools.pdlp.TerminationCriteria.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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2193 of file TerminationCriteria.java.
boolean com.google.ortools.pdlp.TerminationCriteria.hasDetailedOptimalityCriteria | ( | ) |
.operations_research.pdlp.TerminationCriteria.DetailedOptimalityCriteria detailed_optimality_criteria = 10;
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 1991 of file TerminationCriteria.java.
boolean com.google.ortools.pdlp.TerminationCriteria.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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2145 of file TerminationCriteria.java.
boolean com.google.ortools.pdlp.TerminationCriteria.hasEpsOptimalAbsolute | ( | ) |
Absolute 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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2032 of file TerminationCriteria.java.
boolean com.google.ortools.pdlp.TerminationCriteria.hasEpsOptimalRelative | ( | ) |
Relative 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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2069 of file TerminationCriteria.java.
boolean com.google.ortools.pdlp.TerminationCriteria.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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2106 of file TerminationCriteria.java.
int com.google.ortools.pdlp.TerminationCriteria.hashCode | ( | ) |
Definition at line 2426 of file TerminationCriteria.java.
boolean com.google.ortools.pdlp.TerminationCriteria.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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2209 of file TerminationCriteria.java.
boolean com.google.ortools.pdlp.TerminationCriteria.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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2238 of file TerminationCriteria.java.
boolean com.google.ortools.pdlp.TerminationCriteria.hasOptimalityNorm | ( | ) |
The norm that we are measuring the optimality criteria in.
optional .operations_research.pdlp.OptimalityNorm optimality_norm = 1 [default = OPTIMALITY_NORM_L2];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 1938 of file TerminationCriteria.java.
boolean com.google.ortools.pdlp.TerminationCriteria.hasSimpleOptimalityCriteria | ( | ) |
.operations_research.pdlp.TerminationCriteria.SimpleOptimalityCriteria simple_optimality_criteria = 9;
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 1960 of file TerminationCriteria.java.
boolean com.google.ortools.pdlp.TerminationCriteria.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];
Implements com.google.ortools.pdlp.TerminationCriteriaOrBuilder.
Definition at line 2180 of file TerminationCriteria.java.
|
protected |
Definition at line 61 of file TerminationCriteria.java.
final boolean com.google.ortools.pdlp.TerminationCriteria.isInitialized | ( | ) |
Definition at line 2257 of file TerminationCriteria.java.
|
static |
Definition at line 2561 of file TerminationCriteria.java.
|
static |
Definition at line 2564 of file TerminationCriteria.java.
Builder com.google.ortools.pdlp.TerminationCriteria.newBuilderForType | ( | ) |
Definition at line 2560 of file TerminationCriteria.java.
|
protected |
Definition at line 2574 of file TerminationCriteria.java.
|
static |
Definition at line 2532 of file TerminationCriteria.java.
|
static |
Definition at line 2538 of file TerminationCriteria.java.
|
static |
Definition at line 2509 of file TerminationCriteria.java.
|
static |
Definition at line 2513 of file TerminationCriteria.java.
|
static |
Definition at line 2498 of file TerminationCriteria.java.
|
static |
Definition at line 2503 of file TerminationCriteria.java.
|
static |
Definition at line 2545 of file TerminationCriteria.java.
|
static |
Definition at line 2551 of file TerminationCriteria.java.
|
static |
Definition at line 2519 of file TerminationCriteria.java.
|
static |
Definition at line 2524 of file TerminationCriteria.java.
|
static |
Definition at line 2487 of file TerminationCriteria.java.
|
static |
Definition at line 2492 of file TerminationCriteria.java.
|
static |
Definition at line 3760 of file TerminationCriteria.java.
Builder com.google.ortools.pdlp.TerminationCriteria.toBuilder | ( | ) |
Definition at line 2568 of file TerminationCriteria.java.
void com.google.ortools.pdlp.TerminationCriteria.writeTo | ( | com.google.protobuf.CodedOutputStream | output | ) | throws java.io.IOException |
Definition at line 2267 of file TerminationCriteria.java.
|
static |
Definition at line 1985 of file TerminationCriteria.java.
|
static |
Definition at line 2127 of file TerminationCriteria.java.
|
static |
Definition at line 2016 of file TerminationCriteria.java.
|
static |
Definition at line 2053 of file TerminationCriteria.java.
|
static |
Definition at line 2090 of file TerminationCriteria.java.
|
static |
Definition at line 2197 of file TerminationCriteria.java.
|
static |
Definition at line 2226 of file TerminationCriteria.java.
|
static |
Definition at line 1928 of file TerminationCriteria.java.
|
static |
Definition at line 1954 of file TerminationCriteria.java.
|
static |
Definition at line 2168 of file TerminationCriteria.java.