6package com.google.ortools.pdlp;
24@com.google.protobuf.Generated
25public final class PrimalDualHybridGradientParams
extends
26 com.google.protobuf.GeneratedMessage implements
29private static final long serialVersionUID = 0L;
31 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
32 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
37 PrimalDualHybridGradientParams.class.getName());
40 private PrimalDualHybridGradientParams(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
43 private PrimalDualHybridGradientParams() {
46 majorIterationFrequency_ = 64;
47 terminationCheckFrequency_ = 64;
49 primalWeightUpdateSmoothing_ = 0.5D;
50 lInfRuizIterations_ = 5;
51 l2NormRescaling_ =
true;
52 sufficientReductionForRestart_ = 0.1D;
53 necessaryReductionForRestart_ = 0.9D;
55 initialStepSizeScaling_ = 1D;
56 randomProjectionSeeds_ = emptyIntList();
57 infiniteConstraintBoundThreshold_ = Double.POSITIVE_INFINITY;
58 handleSomePrimalGradientsOnFiniteBoundsAsResiduals_ =
true;
59 diagonalQpTrustRegionSolverTolerance_ = 1e-08D;
62 public static final com.google.protobuf.Descriptors.Descriptor
64 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_PrimalDualHybridGradientParams_descriptor;
68 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
70 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_PrimalDualHybridGradientParams_fieldAccessorTable
71 .ensureFieldAccessorsInitialized(
72 com.google.ortools.pdlp.PrimalDualHybridGradientParams.class, com.google.ortools.pdlp.PrimalDualHybridGradientParams.Builder.class);
78 public enum RestartStrategy
79 implements com.google.protobuf.ProtocolMessageEnum {
130 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
131 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
136 RestartStrategy.class.getName());
196 @java.lang.Deprecated
197 public static RestartStrategy
valueOf(
int value) {
212 default:
return null;
216 public static com.google.protobuf.Internal.EnumLiteMap<
RestartStrategy>
218 return internalValueMap;
220 private static final com.google.protobuf.Internal.EnumLiteMap<
228 public final com.google.protobuf.Descriptors.EnumValueDescriptor
232 public final com.google.protobuf.Descriptors.EnumDescriptor
236 public static com.google.protobuf.Descriptors.EnumDescriptor
238 return com.google.ortools.pdlp.PrimalDualHybridGradientParams.getDescriptor().getEnumTypes().get(0);
244 com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
246 throw new java.lang.IllegalArgumentException(
247 "EnumValueDescriptor is not for this type.");
249 return VALUES[desc.getIndex()];
252 private final int value;
264 public enum LinesearchRule
265 implements com.google.protobuf.ProtocolMessageEnum {
304 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
305 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
310 LinesearchRule.class.getName());
358 @java.lang.Deprecated
359 public static LinesearchRule
valueOf(
int value) {
373 default:
return null;
377 public static com.google.protobuf.Internal.EnumLiteMap<
LinesearchRule>
379 return internalValueMap;
381 private static final com.google.protobuf.Internal.EnumLiteMap<
389 public final com.google.protobuf.Descriptors.EnumValueDescriptor
393 public final com.google.protobuf.Descriptors.EnumDescriptor
397 public static com.google.protobuf.Descriptors.EnumDescriptor
399 return com.google.ortools.pdlp.PrimalDualHybridGradientParams.getDescriptor().getEnumTypes().get(1);
405 com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
407 throw new java.lang.IllegalArgumentException(
408 "EnumValueDescriptor is not for this type.");
410 return VALUES[desc.getIndex()];
413 private final int value;
424 com.google.protobuf.MessageOrBuilder {
492 public static final class PresolveOptions
extends
493 com.google.protobuf.GeneratedMessage implements
496 private static final long serialVersionUID = 0L;
498 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
499 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
504 PresolveOptions.class.getName());
507 private PresolveOptions(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
510 private PresolveOptions() {
513 public static final com.google.protobuf.Descriptors.Descriptor
515 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_PrimalDualHybridGradientParams_PresolveOptions_descriptor;
519 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
521 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_PrimalDualHybridGradientParams_PresolveOptions_fieldAccessorTable
522 .ensureFieldAccessorsInitialized(
523 com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.class, com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.Builder.class);
526 private int bitField0_;
528 private boolean useGlop_ =
false;
546 return ((bitField0_ & 0x00000001) != 0);
581 return ((bitField0_ & 0x00000002) != 0);
594 return glopParameters_ ==
null ? com.google.ortools.glop.GlopParameters.getDefaultInstance() : glopParameters_;
606 return glopParameters_ ==
null ? com.google.ortools.glop.GlopParameters.getDefaultInstance() : glopParameters_;
609 private byte memoizedIsInitialized = -1;
616 memoizedIsInitialized = 1;
621 public void writeTo(com.google.protobuf.CodedOutputStream output)
622 throws java.io.IOException {
623 if (((bitField0_ & 0x00000001) != 0)) {
624 output.writeBool(1, useGlop_);
626 if (((bitField0_ & 0x00000002) != 0)) {
629 getUnknownFields().writeTo(output);
634 int size = memoizedSize;
635 if (size != -1)
return size;
638 if (((bitField0_ & 0x00000001) != 0)) {
639 size += com.google.protobuf.CodedOutputStream
640 .computeBoolSize(1, useGlop_);
642 if (((bitField0_ & 0x00000002) != 0)) {
643 size += com.google.protobuf.CodedOutputStream
646 size += getUnknownFields().getSerializedSize();
652 public boolean equals(
final java.lang.Object obj) {
656 if (!(obj instanceof com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions)) {
657 return super.equals(obj);
671 if (!getUnknownFields().
equals(other.getUnknownFields()))
return false;
677 if (memoizedHashCode != 0) {
678 return memoizedHashCode;
684 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
691 hash = (29 * hash) + getUnknownFields().hashCode();
692 memoizedHashCode = hash;
697 java.nio.ByteBuffer data)
698 throws com.google.protobuf.InvalidProtocolBufferException {
699 return PARSER.parseFrom(data);
702 java.nio.ByteBuffer data,
703 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
704 throws com.google.protobuf.InvalidProtocolBufferException {
705 return PARSER.parseFrom(data, extensionRegistry);
708 com.google.protobuf.ByteString data)
709 throws com.google.protobuf.InvalidProtocolBufferException {
710 return PARSER.parseFrom(data);
713 com.google.protobuf.ByteString data,
714 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
715 throws com.google.protobuf.InvalidProtocolBufferException {
716 return PARSER.parseFrom(data, extensionRegistry);
719 throws com.google.protobuf.InvalidProtocolBufferException {
720 return PARSER.parseFrom(data);
724 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
725 throws com.google.protobuf.InvalidProtocolBufferException {
726 return PARSER.parseFrom(data, extensionRegistry);
729 throws java.io.IOException {
730 return com.google.protobuf.GeneratedMessage
731 .parseWithIOException(PARSER, input);
734 java.io.InputStream input,
735 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
736 throws java.io.IOException {
737 return com.google.protobuf.GeneratedMessage
738 .parseWithIOException(PARSER, input, extensionRegistry);
742 throws java.io.IOException {
743 return com.google.protobuf.GeneratedMessage
744 .parseDelimitedWithIOException(PARSER, input);
748 java.io.InputStream input,
749 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
750 throws java.io.IOException {
751 return com.google.protobuf.GeneratedMessage
752 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
755 com.google.protobuf.CodedInputStream input)
756 throws java.io.IOException {
757 return com.google.protobuf.GeneratedMessage
758 .parseWithIOException(PARSER, input);
761 com.google.protobuf.CodedInputStream input,
762 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
763 throws java.io.IOException {
764 return com.google.protobuf.GeneratedMessage
765 .parseWithIOException(PARSER, input, extensionRegistry);
771 return DEFAULT_INSTANCE.toBuilder();
773 public static Builder newBuilder(com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions prototype) {
774 return DEFAULT_INSTANCE.toBuilder().
mergeFrom(prototype);
778 return this == DEFAULT_INSTANCE
784 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
791 public static final class Builder
extends
792 com.google.protobuf.GeneratedMessage.Builder<Builder> implements
795 public static final com.google.protobuf.Descriptors.Descriptor
797 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_PrimalDualHybridGradientParams_PresolveOptions_descriptor;
801 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
803 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_PrimalDualHybridGradientParams_PresolveOptions_fieldAccessorTable
804 .ensureFieldAccessorsInitialized(
805 com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.class, com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.Builder.class);
810 maybeForceBuilderInitialization();
814 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
816 maybeForceBuilderInitialization();
818 private void maybeForceBuilderInitialization() {
819 if (com.google.protobuf.GeneratedMessage
820 .alwaysUseFieldBuilders) {
821 internalGetGlopParametersFieldBuilder();
829 glopParameters_ =
null;
830 if (glopParametersBuilder_ !=
null) {
831 glopParametersBuilder_.dispose();
832 glopParametersBuilder_ =
null;
838 public com.google.protobuf.Descriptors.Descriptor
840 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_PrimalDualHybridGradientParams_PresolveOptions_descriptor;
845 return com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.getDefaultInstance();
852 throw newUninitializedMessageException(result);
860 if (bitField0_ != 0) { buildPartial0(result); }
865 private void buildPartial0(com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions result) {
866 int from_bitField0_ = bitField0_;
867 int to_bitField0_ = 0;
868 if (((from_bitField0_ & 0x00000001) != 0)) {
869 result.useGlop_ = useGlop_;
870 to_bitField0_ |= 0x00000001;
872 if (((from_bitField0_ & 0x00000002) != 0)) {
873 result.glopParameters_ = glopParametersBuilder_ ==
null
875 : glopParametersBuilder_.build();
876 to_bitField0_ |= 0x00000002;
878 result.bitField0_ |= to_bitField0_;
882 public Builder
mergeFrom(com.google.protobuf.Message other) {
883 if (other instanceof com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions) {
884 return mergeFrom((com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions)other);
886 super.mergeFrom(other);
891 public Builder
mergeFrom(com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions other) {
892 if (other == com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.getDefaultInstance())
return this;
893 if (other.hasUseGlop()) {
896 if (other.hasGlopParameters()) {
899 this.mergeUnknownFields(other.getUnknownFields());
911 com.google.protobuf.CodedInputStream input,
912 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
913 throws java.io.IOException {
914 if (extensionRegistry ==
null) {
915 throw new java.lang.NullPointerException();
918 boolean done =
false;
920 int tag = input.readTag();
926 useGlop_ = input.readBool();
927 bitField0_ |= 0x00000001;
932 internalGetGlopParametersFieldBuilder().getBuilder(),
934 bitField0_ |= 0x00000002;
938 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
945 }
catch (com.google.protobuf.InvalidProtocolBufferException e) {
946 throw e.unwrapIOException();
952 private int bitField0_;
954 private boolean useGlop_ ;
972 return ((bitField0_ & 0x00000001) != 0);
1012 bitField0_ |= 0x00000001;
1032 bitField0_ = (bitField0_ & ~0x00000001);
1039 private com.google.protobuf.SingleFieldBuilder<
1040 com.google.ortools.glop.GlopParameters, com.google.ortools.glop.GlopParameters.Builder, com.google.ortools.glop.GlopParametersOrBuilder> glopParametersBuilder_;
1051 return ((bitField0_ & 0x00000002) != 0);
1063 if (glopParametersBuilder_ ==
null) {
1064 return glopParameters_ ==
null ? com.google.ortools.glop.GlopParameters.getDefaultInstance() : glopParameters_;
1066 return glopParametersBuilder_.getMessage();
1078 if (glopParametersBuilder_ ==
null) {
1079 if (value ==
null) {
1080 throw new NullPointerException();
1082 glopParameters_ = value;
1084 glopParametersBuilder_.setMessage(value);
1086 bitField0_ |= 0x00000002;
1099 com.google.ortools.glop.GlopParameters.Builder builderForValue) {
1100 if (glopParametersBuilder_ ==
null) {
1101 glopParameters_ = builderForValue.build();
1103 glopParametersBuilder_.setMessage(builderForValue.build());
1105 bitField0_ |= 0x00000002;
1118 if (glopParametersBuilder_ ==
null) {
1119 if (((bitField0_ & 0x00000002) != 0) &&
1120 glopParameters_ !=
null &&
1121 glopParameters_ != com.google.ortools.glop.GlopParameters.getDefaultInstance()) {
1124 glopParameters_ = value;
1127 glopParametersBuilder_.mergeFrom(value);
1129 if (glopParameters_ !=
null) {
1130 bitField0_ |= 0x00000002;
1144 bitField0_ = (bitField0_ & ~0x00000002);
1145 glopParameters_ =
null;
1146 if (glopParametersBuilder_ !=
null) {
1147 glopParametersBuilder_.dispose();
1148 glopParametersBuilder_ =
null;
1162 bitField0_ |= 0x00000002;
1164 return internalGetGlopParametersFieldBuilder().getBuilder();
1175 if (glopParametersBuilder_ !=
null) {
1176 return glopParametersBuilder_.getMessageOrBuilder();
1178 return glopParameters_ ==
null ?
1179 com.google.ortools.glop.GlopParameters.getDefaultInstance() : glopParameters_;
1190 private com.google.protobuf.SingleFieldBuilder<
1191 com.google.ortools.glop.GlopParameters, com.google.ortools.glop.GlopParameters.Builder, com.google.ortools.glop.GlopParametersOrBuilder>
1192 internalGetGlopParametersFieldBuilder() {
1193 if (glopParametersBuilder_ ==
null) {
1194 glopParametersBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
1195 com.google.ortools.glop.GlopParameters, com.google.ortools.glop.GlopParameters.Builder, com.google.ortools.glop.GlopParametersOrBuilder>(
1197 getParentForChildren(),
1199 glopParameters_ =
null;
1201 return glopParametersBuilder_;
1210 DEFAULT_INSTANCE =
new com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions();
1214 return DEFAULT_INSTANCE;
1221 com.google.protobuf.CodedInputStream input,
1222 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1223 throws com.google.protobuf.InvalidProtocolBufferException {
1226 builder.
mergeFrom(input, extensionRegistry);
1227 }
catch (com.google.protobuf.InvalidProtocolBufferException e) {
1229 }
catch (com.google.protobuf.UninitializedMessageException e) {
1230 throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.
buildPartial());
1231 }
catch (java.io.IOException e) {
1232 throw new com.google.protobuf.InvalidProtocolBufferException(e)
1239 public static com.google.protobuf.Parser<PresolveOptions>
parser() {
1250 return DEFAULT_INSTANCE;
1255 private int bitField0_;
1264 return ((bitField0_ & 0x00000001) != 0);
1272 return terminationCriteria_ ==
null ? com.google.ortools.pdlp.TerminationCriteria.getDefaultInstance() : terminationCriteria_;
1279 return terminationCriteria_ ==
null ? com.google.ortools.pdlp.TerminationCriteria.getDefaultInstance() : terminationCriteria_;
1283 private int numThreads_ = 1;
1297 return ((bitField0_ & 0x00000002) != 0);
1316 private int numShards_ = 0;
1335 return ((bitField0_ & 0x00000004) != 0);
1359 private int schedulerType_ = 1;
1370 return ((bitField0_ & 0x00000008) != 0);
1387 private boolean recordIterationStats_ =
false;
1401 return ((bitField0_ & 0x00000010) != 0);
1416 return recordIterationStats_;
1420 private int verbosityLevel_ = 0;
1441 return ((bitField0_ & 0x00000020) != 0);
1463 return verbosityLevel_;
1467 private double logIntervalSeconds_ = 0D;
1482 return ((bitField0_ & 0x00000040) != 0);
1498 return logIntervalSeconds_;
1502 private int majorIterationFrequency_ = 64;
1518 return ((bitField0_ & 0x00000080) != 0);
1535 return majorIterationFrequency_;
1539 private int terminationCheckFrequency_ = 64;
1552 return ((bitField0_ & 0x00000100) != 0);
1566 return terminationCheckFrequency_;
1570 private int restartStrategy_ = 3;
1582 return ((bitField0_ & 0x00000200) != 0);
1600 private double primalWeightUpdateSmoothing_ = 0.5D;
1618 return ((bitField0_ & 0x00000400) != 0);
1637 return primalWeightUpdateSmoothing_;
1641 private double initialPrimalWeight_ = 0D;
1658 return ((bitField0_ & 0x00000800) != 0);
1676 return initialPrimalWeight_;
1687 return ((bitField0_ & 0x00001000) != 0);
1695 return presolveOptions_ ==
null ? com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.getDefaultInstance() : presolveOptions_;
1702 return presolveOptions_ ==
null ? com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.getDefaultInstance() : presolveOptions_;
1706 private int lInfRuizIterations_ = 5;
1719 return ((bitField0_ & 0x00002000) != 0);
1733 return lInfRuizIterations_;
1737 private boolean l2NormRescaling_ =
true;
1749 return ((bitField0_ & 0x00004000) != 0);
1762 return l2NormRescaling_;
1766 private double sufficientReductionForRestart_ = 0.1D;
1779 return ((bitField0_ & 0x00008000) != 0);
1793 return sufficientReductionForRestart_;
1797 private double necessaryReductionForRestart_ = 0.9D;
1812 return ((bitField0_ & 0x00010000) != 0);
1828 return necessaryReductionForRestart_;
1832 private int linesearchRule_ = 1;
1842 return ((bitField0_ & 0x00020000) != 0);
1865 return ((bitField0_ & 0x00040000) != 0);
1873 return adaptiveLinesearchParameters_ ==
null ? com.google.ortools.pdlp.AdaptiveLinesearchParams.getDefaultInstance() : adaptiveLinesearchParameters_;
1880 return adaptiveLinesearchParameters_ ==
null ? com.google.ortools.pdlp.AdaptiveLinesearchParams.getDefaultInstance() : adaptiveLinesearchParameters_;
1891 return ((bitField0_ & 0x00080000) != 0);
1899 return malitskyPockParameters_ ==
null ? com.google.ortools.pdlp.MalitskyPockParams.getDefaultInstance() : malitskyPockParameters_;
1906 return malitskyPockParameters_ ==
null ? com.google.ortools.pdlp.MalitskyPockParams.getDefaultInstance() : malitskyPockParameters_;
1910 private double initialStepSizeScaling_ = 1D;
1922 return ((bitField0_ & 0x00100000) != 0);
1935 return initialStepSizeScaling_;
1939 @SuppressWarnings(
"serial")
1940 private com.google.protobuf.Internal.IntList randomProjectionSeeds_ =
1956 public java.
util.List<java.lang.Integer>
1958 return randomProjectionSeeds_;
1974 return randomProjectionSeeds_.size();
1991 return randomProjectionSeeds_.getInt(index);
1993 private int randomProjectionSeedsMemoizedSerializedSize = -1;
1996 private double infiniteConstraintBoundThreshold_ = Double.POSITIVE_INFINITY;
2012 return ((bitField0_ & 0x00200000) != 0);
2029 return infiniteConstraintBoundThreshold_;
2033 private boolean handleSomePrimalGradientsOnFiniteBoundsAsResiduals_ =
true;
2046 return ((bitField0_ & 0x00400000) != 0);
2060 return handleSomePrimalGradientsOnFiniteBoundsAsResiduals_;
2064 private boolean useDiagonalQpTrustRegionSolver_ =
false;
2080 return ((bitField0_ & 0x00800000) != 0);
2097 return useDiagonalQpTrustRegionSolver_;
2101 private double diagonalQpTrustRegionSolverTolerance_ = 1e-08D;
2116 return ((bitField0_ & 0x01000000) != 0);
2132 return diagonalQpTrustRegionSolverTolerance_;
2136 private boolean useFeasibilityPolishing_ =
false;
2172 return ((bitField0_ & 0x02000000) != 0);
2209 return useFeasibilityPolishing_;
2213 private boolean applyFeasibilityPolishingAfterLimitsReached_ =
false;
2227 return ((bitField0_ & 0x04000000) != 0);
2242 return applyFeasibilityPolishingAfterLimitsReached_;
2246 private boolean applyFeasibilityPolishingIfSolverIsInterrupted_ =
false;
2259 return ((bitField0_ & 0x08000000) != 0);
2273 return applyFeasibilityPolishingIfSolverIsInterrupted_;
2276 private byte memoizedIsInitialized = -1;
2283 memoizedIsInitialized = 1;
2288 public void writeTo(com.google.protobuf.CodedOutputStream output)
2289 throws java.io.IOException {
2291 if (((bitField0_ & 0x00000001) != 0)) {
2294 if (((bitField0_ & 0x00000002) != 0)) {
2295 output.writeInt32(2, numThreads_);
2297 if (((bitField0_ & 0x00000010) != 0)) {
2298 output.writeBool(3, recordIterationStats_);
2300 if (((bitField0_ & 0x00000080) != 0)) {
2301 output.writeInt32(4, majorIterationFrequency_);
2303 if (((bitField0_ & 0x00000100) != 0)) {
2304 output.writeInt32(5, terminationCheckFrequency_);
2306 if (((bitField0_ & 0x00000200) != 0)) {
2307 output.writeEnum(6, restartStrategy_);
2309 if (((bitField0_ & 0x00000400) != 0)) {
2310 output.writeDouble(7, primalWeightUpdateSmoothing_);
2312 if (((bitField0_ & 0x00000800) != 0)) {
2313 output.writeDouble(8, initialPrimalWeight_);
2315 if (((bitField0_ & 0x00002000) != 0)) {
2316 output.writeInt32(9, lInfRuizIterations_);
2318 if (((bitField0_ & 0x00004000) != 0)) {
2319 output.writeBool(10, l2NormRescaling_);
2321 if (((bitField0_ & 0x00008000) != 0)) {
2322 output.writeDouble(11, sufficientReductionForRestart_);
2324 if (((bitField0_ & 0x00020000) != 0)) {
2325 output.writeEnum(12, linesearchRule_);
2327 if (((bitField0_ & 0x00001000) != 0)) {
2330 if (((bitField0_ & 0x00010000) != 0)) {
2331 output.writeDouble(17, necessaryReductionForRestart_);
2333 if (((bitField0_ & 0x00040000) != 0)) {
2336 if (((bitField0_ & 0x00080000) != 0)) {
2339 if (((bitField0_ & 0x00200000) != 0)) {
2340 output.writeDouble(22, infiniteConstraintBoundThreshold_);
2342 if (((bitField0_ & 0x00800000) != 0)) {
2343 output.writeBool(23, useDiagonalQpTrustRegionSolver_);
2345 if (((bitField0_ & 0x01000000) != 0)) {
2346 output.writeDouble(24, diagonalQpTrustRegionSolverTolerance_);
2348 if (((bitField0_ & 0x00100000) != 0)) {
2349 output.writeDouble(25, initialStepSizeScaling_);
2351 if (((bitField0_ & 0x00000020) != 0)) {
2352 output.writeInt32(26, verbosityLevel_);
2354 if (((bitField0_ & 0x00000004) != 0)) {
2355 output.writeInt32(27, numShards_);
2358 output.writeUInt32NoTag(226);
2359 output.writeUInt32NoTag(randomProjectionSeedsMemoizedSerializedSize);
2361 for (
int i = 0; i < randomProjectionSeeds_.size(); i++) {
2362 output.writeInt32NoTag(randomProjectionSeeds_.getInt(i));
2364 if (((bitField0_ & 0x00400000) != 0)) {
2365 output.writeBool(29, handleSomePrimalGradientsOnFiniteBoundsAsResiduals_);
2367 if (((bitField0_ & 0x02000000) != 0)) {
2368 output.writeBool(30, useFeasibilityPolishing_);
2370 if (((bitField0_ & 0x00000040) != 0)) {
2371 output.writeDouble(31, logIntervalSeconds_);
2373 if (((bitField0_ & 0x00000008) != 0)) {
2374 output.writeEnum(32, schedulerType_);
2376 if (((bitField0_ & 0x04000000) != 0)) {
2377 output.writeBool(33, applyFeasibilityPolishingAfterLimitsReached_);
2379 if (((bitField0_ & 0x08000000) != 0)) {
2380 output.writeBool(34, applyFeasibilityPolishingIfSolverIsInterrupted_);
2382 getUnknownFields().writeTo(output);
2387 int size = memoizedSize;
2388 if (size != -1)
return size;
2391 if (((bitField0_ & 0x00000001) != 0)) {
2392 size += com.google.protobuf.CodedOutputStream
2395 if (((bitField0_ & 0x00000002) != 0)) {
2396 size += com.google.protobuf.CodedOutputStream
2397 .computeInt32Size(2, numThreads_);
2399 if (((bitField0_ & 0x00000010) != 0)) {
2400 size += com.google.protobuf.CodedOutputStream
2401 .computeBoolSize(3, recordIterationStats_);
2403 if (((bitField0_ & 0x00000080) != 0)) {
2404 size += com.google.protobuf.CodedOutputStream
2405 .computeInt32Size(4, majorIterationFrequency_);
2407 if (((bitField0_ & 0x00000100) != 0)) {
2408 size += com.google.protobuf.CodedOutputStream
2409 .computeInt32Size(5, terminationCheckFrequency_);
2411 if (((bitField0_ & 0x00000200) != 0)) {
2412 size += com.google.protobuf.CodedOutputStream
2413 .computeEnumSize(6, restartStrategy_);
2415 if (((bitField0_ & 0x00000400) != 0)) {
2416 size += com.google.protobuf.CodedOutputStream
2417 .computeDoubleSize(7, primalWeightUpdateSmoothing_);
2419 if (((bitField0_ & 0x00000800) != 0)) {
2420 size += com.google.protobuf.CodedOutputStream
2421 .computeDoubleSize(8, initialPrimalWeight_);
2423 if (((bitField0_ & 0x00002000) != 0)) {
2424 size += com.google.protobuf.CodedOutputStream
2425 .computeInt32Size(9, lInfRuizIterations_);
2427 if (((bitField0_ & 0x00004000) != 0)) {
2428 size += com.google.protobuf.CodedOutputStream
2429 .computeBoolSize(10, l2NormRescaling_);
2431 if (((bitField0_ & 0x00008000) != 0)) {
2432 size += com.google.protobuf.CodedOutputStream
2433 .computeDoubleSize(11, sufficientReductionForRestart_);
2435 if (((bitField0_ & 0x00020000) != 0)) {
2436 size += com.google.protobuf.CodedOutputStream
2437 .computeEnumSize(12, linesearchRule_);
2439 if (((bitField0_ & 0x00001000) != 0)) {
2440 size += com.google.protobuf.CodedOutputStream
2443 if (((bitField0_ & 0x00010000) != 0)) {
2444 size += com.google.protobuf.CodedOutputStream
2445 .computeDoubleSize(17, necessaryReductionForRestart_);
2447 if (((bitField0_ & 0x00040000) != 0)) {
2448 size += com.google.protobuf.CodedOutputStream
2451 if (((bitField0_ & 0x00080000) != 0)) {
2452 size += com.google.protobuf.CodedOutputStream
2455 if (((bitField0_ & 0x00200000) != 0)) {
2456 size += com.google.protobuf.CodedOutputStream
2457 .computeDoubleSize(22, infiniteConstraintBoundThreshold_);
2459 if (((bitField0_ & 0x00800000) != 0)) {
2460 size += com.google.protobuf.CodedOutputStream
2461 .computeBoolSize(23, useDiagonalQpTrustRegionSolver_);
2463 if (((bitField0_ & 0x01000000) != 0)) {
2464 size += com.google.protobuf.CodedOutputStream
2465 .computeDoubleSize(24, diagonalQpTrustRegionSolverTolerance_);
2467 if (((bitField0_ & 0x00100000) != 0)) {
2468 size += com.google.protobuf.CodedOutputStream
2469 .computeDoubleSize(25, initialStepSizeScaling_);
2471 if (((bitField0_ & 0x00000020) != 0)) {
2472 size += com.google.protobuf.CodedOutputStream
2473 .computeInt32Size(26, verbosityLevel_);
2475 if (((bitField0_ & 0x00000004) != 0)) {
2476 size += com.google.protobuf.CodedOutputStream
2477 .computeInt32Size(27, numShards_);
2481 for (
int i = 0; i < randomProjectionSeeds_.size(); i++) {
2482 dataSize += com.google.protobuf.CodedOutputStream
2483 .computeInt32SizeNoTag(randomProjectionSeeds_.getInt(i));
2488 size += com.google.protobuf.CodedOutputStream
2489 .computeInt32SizeNoTag(dataSize);
2491 randomProjectionSeedsMemoizedSerializedSize = dataSize;
2493 if (((bitField0_ & 0x00400000) != 0)) {
2494 size += com.google.protobuf.CodedOutputStream
2495 .computeBoolSize(29, handleSomePrimalGradientsOnFiniteBoundsAsResiduals_);
2497 if (((bitField0_ & 0x02000000) != 0)) {
2498 size += com.google.protobuf.CodedOutputStream
2499 .computeBoolSize(30, useFeasibilityPolishing_);
2501 if (((bitField0_ & 0x00000040) != 0)) {
2502 size += com.google.protobuf.CodedOutputStream
2503 .computeDoubleSize(31, logIntervalSeconds_);
2505 if (((bitField0_ & 0x00000008) != 0)) {
2506 size += com.google.protobuf.CodedOutputStream
2507 .computeEnumSize(32, schedulerType_);
2509 if (((bitField0_ & 0x04000000) != 0)) {
2510 size += com.google.protobuf.CodedOutputStream
2511 .computeBoolSize(33, applyFeasibilityPolishingAfterLimitsReached_);
2513 if (((bitField0_ & 0x08000000) != 0)) {
2514 size += com.google.protobuf.CodedOutputStream
2515 .computeBoolSize(34, applyFeasibilityPolishingIfSolverIsInterrupted_);
2517 size += getUnknownFields().getSerializedSize();
2518 memoizedSize = size;
2523 public boolean equals(
final java.lang.Object obj) {
2527 if (!(obj instanceof com.google.ortools.pdlp.PrimalDualHybridGradientParams)) {
2528 return super.equals(obj);
2549 if (schedulerType_ != other.schedulerType_)
return false;
2564 != java.lang.Double.doubleToLongBits(
2579 if (restartStrategy_ != other.restartStrategy_)
return false;
2584 != java.lang.Double.doubleToLongBits(
2590 != java.lang.Double.doubleToLongBits(
2611 != java.lang.Double.doubleToLongBits(
2617 != java.lang.Double.doubleToLongBits(
2622 if (linesearchRule_ != other.linesearchRule_)
return false;
2637 != java.lang.Double.doubleToLongBits(
2645 != java.lang.Double.doubleToLongBits(
2661 != java.lang.Double.doubleToLongBits(
2679 if (!getUnknownFields().
equals(other.getUnknownFields()))
return false;
2685 if (memoizedHashCode != 0) {
2686 return memoizedHashCode;
2704 hash = (53 * hash) + schedulerType_;
2708 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
2717 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2730 hash = (53 * hash) + restartStrategy_;
2734 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2739 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2752 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
2757 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2762 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2767 hash = (53 * hash) + linesearchRule_;
2779 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2788 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2793 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
2798 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
2803 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
2808 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
2813 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
2818 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
2821 hash = (29 * hash) + getUnknownFields().hashCode();
2822 memoizedHashCode = hash;
2827 java.nio.ByteBuffer data)
2828 throws com.google.protobuf.InvalidProtocolBufferException {
2829 return PARSER.parseFrom(data);
2832 java.nio.ByteBuffer data,
2833 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2834 throws com.google.protobuf.InvalidProtocolBufferException {
2835 return PARSER.parseFrom(data, extensionRegistry);
2838 com.google.protobuf.ByteString data)
2839 throws com.google.protobuf.InvalidProtocolBufferException {
2840 return PARSER.parseFrom(data);
2843 com.google.protobuf.ByteString data,
2844 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2845 throws com.google.protobuf.InvalidProtocolBufferException {
2846 return PARSER.parseFrom(data, extensionRegistry);
2849 throws com.google.protobuf.InvalidProtocolBufferException {
2850 return PARSER.parseFrom(data);
2854 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2855 throws com.google.protobuf.InvalidProtocolBufferException {
2856 return PARSER.parseFrom(data, extensionRegistry);
2859 throws java.io.IOException {
2860 return com.google.protobuf.GeneratedMessage
2861 .parseWithIOException(PARSER, input);
2864 java.io.InputStream input,
2865 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2866 throws java.io.IOException {
2867 return com.google.protobuf.GeneratedMessage
2868 .parseWithIOException(PARSER, input, extensionRegistry);
2872 throws java.io.IOException {
2873 return com.google.protobuf.GeneratedMessage
2874 .parseDelimitedWithIOException(PARSER, input);
2878 java.io.InputStream input,
2879 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2880 throws java.io.IOException {
2881 return com.google.protobuf.GeneratedMessage
2882 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
2885 com.google.protobuf.CodedInputStream input)
2886 throws java.io.IOException {
2887 return com.google.protobuf.GeneratedMessage
2888 .parseWithIOException(PARSER, input);
2891 com.google.protobuf.CodedInputStream input,
2892 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2893 throws java.io.IOException {
2894 return com.google.protobuf.GeneratedMessage
2895 .parseWithIOException(PARSER, input, extensionRegistry);
2901 return DEFAULT_INSTANCE.toBuilder();
2903 public static Builder newBuilder(com.google.ortools.pdlp.PrimalDualHybridGradientParams prototype) {
2904 return DEFAULT_INSTANCE.toBuilder().
mergeFrom(prototype);
2908 return this == DEFAULT_INSTANCE
2914 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
2934 public static final class Builder
extends
2935 com.google.protobuf.GeneratedMessage.Builder<Builder> implements
2938 public static final com.google.protobuf.Descriptors.Descriptor
2940 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_PrimalDualHybridGradientParams_descriptor;
2944 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
2946 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_PrimalDualHybridGradientParams_fieldAccessorTable
2947 .ensureFieldAccessorsInitialized(
2948 com.google.ortools.pdlp.PrimalDualHybridGradientParams.class, com.google.ortools.pdlp.PrimalDualHybridGradientParams.Builder.class);
2953 maybeForceBuilderInitialization();
2957 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
2959 maybeForceBuilderInitialization();
2961 private void maybeForceBuilderInitialization() {
2962 if (com.google.protobuf.GeneratedMessage
2963 .alwaysUseFieldBuilders) {
2964 internalGetTerminationCriteriaFieldBuilder();
2965 internalGetPresolveOptionsFieldBuilder();
2966 internalGetAdaptiveLinesearchParametersFieldBuilder();
2967 internalGetMalitskyPockParametersFieldBuilder();
2974 terminationCriteria_ =
null;
2975 if (terminationCriteriaBuilder_ !=
null) {
2976 terminationCriteriaBuilder_.dispose();
2977 terminationCriteriaBuilder_ =
null;
2982 recordIterationStats_ =
false;
2983 verbosityLevel_ = 0;
2984 logIntervalSeconds_ = 0D;
2985 majorIterationFrequency_ = 64;
2986 terminationCheckFrequency_ = 64;
2987 restartStrategy_ = 3;
2988 primalWeightUpdateSmoothing_ = 0.5D;
2989 initialPrimalWeight_ = 0D;
2990 presolveOptions_ =
null;
2991 if (presolveOptionsBuilder_ !=
null) {
2992 presolveOptionsBuilder_.dispose();
2993 presolveOptionsBuilder_ =
null;
2995 lInfRuizIterations_ = 5;
2996 l2NormRescaling_ =
true;
2997 sufficientReductionForRestart_ = 0.1D;
2998 necessaryReductionForRestart_ = 0.9D;
2999 linesearchRule_ = 1;
3000 adaptiveLinesearchParameters_ =
null;
3001 if (adaptiveLinesearchParametersBuilder_ !=
null) {
3002 adaptiveLinesearchParametersBuilder_.dispose();
3003 adaptiveLinesearchParametersBuilder_ =
null;
3005 malitskyPockParameters_ =
null;
3006 if (malitskyPockParametersBuilder_ !=
null) {
3007 malitskyPockParametersBuilder_.dispose();
3008 malitskyPockParametersBuilder_ =
null;
3010 initialStepSizeScaling_ = 1D;
3011 randomProjectionSeeds_ = emptyIntList();
3012 infiniteConstraintBoundThreshold_ = Double.POSITIVE_INFINITY;
3013 handleSomePrimalGradientsOnFiniteBoundsAsResiduals_ =
true;
3014 useDiagonalQpTrustRegionSolver_ =
false;
3015 diagonalQpTrustRegionSolverTolerance_ = 1e-08D;
3016 useFeasibilityPolishing_ =
false;
3017 applyFeasibilityPolishingAfterLimitsReached_ =
false;
3018 applyFeasibilityPolishingIfSolverIsInterrupted_ =
false;
3023 public com.google.protobuf.Descriptors.Descriptor
3025 return com.google.ortools.pdlp.Solvers.internal_static_operations_research_pdlp_PrimalDualHybridGradientParams_descriptor;
3030 return com.google.ortools.pdlp.PrimalDualHybridGradientParams.getDefaultInstance();
3037 throw newUninitializedMessageException(result);
3045 if (bitField0_ != 0) { buildPartial0(result); }
3050 private void buildPartial0(com.google.ortools.pdlp.PrimalDualHybridGradientParams result) {
3051 int from_bitField0_ = bitField0_;
3052 int to_bitField0_ = 0;
3053 if (((from_bitField0_ & 0x00000001) != 0)) {
3054 result.terminationCriteria_ = terminationCriteriaBuilder_ ==
null
3055 ? terminationCriteria_
3056 : terminationCriteriaBuilder_.build();
3057 to_bitField0_ |= 0x00000001;
3059 if (((from_bitField0_ & 0x00000002) != 0)) {
3060 result.numThreads_ = numThreads_;
3061 to_bitField0_ |= 0x00000002;
3063 if (((from_bitField0_ & 0x00000004) != 0)) {
3064 result.numShards_ = numShards_;
3065 to_bitField0_ |= 0x00000004;
3067 if (((from_bitField0_ & 0x00000008) != 0)) {
3068 result.schedulerType_ = schedulerType_;
3069 to_bitField0_ |= 0x00000008;
3071 if (((from_bitField0_ & 0x00000010) != 0)) {
3072 result.recordIterationStats_ = recordIterationStats_;
3073 to_bitField0_ |= 0x00000010;
3075 if (((from_bitField0_ & 0x00000020) != 0)) {
3076 result.verbosityLevel_ = verbosityLevel_;
3077 to_bitField0_ |= 0x00000020;
3079 if (((from_bitField0_ & 0x00000040) != 0)) {
3080 result.logIntervalSeconds_ = logIntervalSeconds_;
3081 to_bitField0_ |= 0x00000040;
3083 if (((from_bitField0_ & 0x00000080) != 0)) {
3084 result.majorIterationFrequency_ = majorIterationFrequency_;
3085 to_bitField0_ |= 0x00000080;
3087 if (((from_bitField0_ & 0x00000100) != 0)) {
3088 result.terminationCheckFrequency_ = terminationCheckFrequency_;
3089 to_bitField0_ |= 0x00000100;
3091 if (((from_bitField0_ & 0x00000200) != 0)) {
3092 result.restartStrategy_ = restartStrategy_;
3093 to_bitField0_ |= 0x00000200;
3095 if (((from_bitField0_ & 0x00000400) != 0)) {
3096 result.primalWeightUpdateSmoothing_ = primalWeightUpdateSmoothing_;
3097 to_bitField0_ |= 0x00000400;
3099 if (((from_bitField0_ & 0x00000800) != 0)) {
3100 result.initialPrimalWeight_ = initialPrimalWeight_;
3101 to_bitField0_ |= 0x00000800;
3103 if (((from_bitField0_ & 0x00001000) != 0)) {
3104 result.presolveOptions_ = presolveOptionsBuilder_ ==
null
3106 : presolveOptionsBuilder_.build();
3107 to_bitField0_ |= 0x00001000;
3109 if (((from_bitField0_ & 0x00002000) != 0)) {
3110 result.lInfRuizIterations_ = lInfRuizIterations_;
3111 to_bitField0_ |= 0x00002000;
3113 if (((from_bitField0_ & 0x00004000) != 0)) {
3114 result.l2NormRescaling_ = l2NormRescaling_;
3115 to_bitField0_ |= 0x00004000;
3117 if (((from_bitField0_ & 0x00008000) != 0)) {
3118 result.sufficientReductionForRestart_ = sufficientReductionForRestart_;
3119 to_bitField0_ |= 0x00008000;
3121 if (((from_bitField0_ & 0x00010000) != 0)) {
3122 result.necessaryReductionForRestart_ = necessaryReductionForRestart_;
3123 to_bitField0_ |= 0x00010000;
3125 if (((from_bitField0_ & 0x00020000) != 0)) {
3126 result.linesearchRule_ = linesearchRule_;
3127 to_bitField0_ |= 0x00020000;
3129 if (((from_bitField0_ & 0x00040000) != 0)) {
3130 result.adaptiveLinesearchParameters_ = adaptiveLinesearchParametersBuilder_ ==
null
3131 ? adaptiveLinesearchParameters_
3132 : adaptiveLinesearchParametersBuilder_.build();
3133 to_bitField0_ |= 0x00040000;
3135 if (((from_bitField0_ & 0x00080000) != 0)) {
3136 result.malitskyPockParameters_ = malitskyPockParametersBuilder_ ==
null
3137 ? malitskyPockParameters_
3138 : malitskyPockParametersBuilder_.build();
3139 to_bitField0_ |= 0x00080000;
3141 if (((from_bitField0_ & 0x00100000) != 0)) {
3142 result.initialStepSizeScaling_ = initialStepSizeScaling_;
3143 to_bitField0_ |= 0x00100000;
3145 if (((from_bitField0_ & 0x00200000) != 0)) {
3146 randomProjectionSeeds_.makeImmutable();
3147 result.randomProjectionSeeds_ = randomProjectionSeeds_;
3149 if (((from_bitField0_ & 0x00400000) != 0)) {
3150 result.infiniteConstraintBoundThreshold_ = infiniteConstraintBoundThreshold_;
3151 to_bitField0_ |= 0x00200000;
3153 if (((from_bitField0_ & 0x00800000) != 0)) {
3154 result.handleSomePrimalGradientsOnFiniteBoundsAsResiduals_ = handleSomePrimalGradientsOnFiniteBoundsAsResiduals_;
3155 to_bitField0_ |= 0x00400000;
3157 if (((from_bitField0_ & 0x01000000) != 0)) {
3158 result.useDiagonalQpTrustRegionSolver_ = useDiagonalQpTrustRegionSolver_;
3159 to_bitField0_ |= 0x00800000;
3161 if (((from_bitField0_ & 0x02000000) != 0)) {
3162 result.diagonalQpTrustRegionSolverTolerance_ = diagonalQpTrustRegionSolverTolerance_;
3163 to_bitField0_ |= 0x01000000;
3165 if (((from_bitField0_ & 0x04000000) != 0)) {
3166 result.useFeasibilityPolishing_ = useFeasibilityPolishing_;
3167 to_bitField0_ |= 0x02000000;
3169 if (((from_bitField0_ & 0x08000000) != 0)) {
3170 result.applyFeasibilityPolishingAfterLimitsReached_ = applyFeasibilityPolishingAfterLimitsReached_;
3171 to_bitField0_ |= 0x04000000;
3173 if (((from_bitField0_ & 0x10000000) != 0)) {
3174 result.applyFeasibilityPolishingIfSolverIsInterrupted_ = applyFeasibilityPolishingIfSolverIsInterrupted_;
3175 to_bitField0_ |= 0x08000000;
3177 result.bitField0_ |= to_bitField0_;
3181 public Builder
mergeFrom(com.google.protobuf.Message other) {
3182 if (other instanceof com.google.ortools.pdlp.PrimalDualHybridGradientParams) {
3183 return mergeFrom((com.google.ortools.pdlp.PrimalDualHybridGradientParams)other);
3185 super.mergeFrom(other);
3190 public Builder
mergeFrom(com.google.ortools.pdlp.PrimalDualHybridGradientParams other) {
3191 if (other == com.google.ortools.pdlp.PrimalDualHybridGradientParams.getDefaultInstance())
return this;
3192 if (other.hasTerminationCriteria()) {
3195 if (other.hasNumThreads()) {
3198 if (other.hasNumShards()) {
3201 if (other.hasSchedulerType()) {
3204 if (other.hasRecordIterationStats()) {
3207 if (other.hasVerbosityLevel()) {
3210 if (other.hasLogIntervalSeconds()) {
3213 if (other.hasMajorIterationFrequency()) {
3216 if (other.hasTerminationCheckFrequency()) {
3219 if (other.hasRestartStrategy()) {
3222 if (other.hasPrimalWeightUpdateSmoothing()) {
3225 if (other.hasInitialPrimalWeight()) {
3228 if (other.hasPresolveOptions()) {
3231 if (other.hasLInfRuizIterations()) {
3234 if (other.hasL2NormRescaling()) {
3237 if (other.hasSufficientReductionForRestart()) {
3240 if (other.hasNecessaryReductionForRestart()) {
3243 if (other.hasLinesearchRule()) {
3246 if (other.hasAdaptiveLinesearchParameters()) {
3249 if (other.hasMalitskyPockParameters()) {
3252 if (other.hasInitialStepSizeScaling()) {
3255 if (!other.randomProjectionSeeds_.isEmpty()) {
3256 if (randomProjectionSeeds_.isEmpty()) {
3257 randomProjectionSeeds_ = other.randomProjectionSeeds_;
3258 randomProjectionSeeds_.makeImmutable();
3259 bitField0_ |= 0x00200000;
3261 ensureRandomProjectionSeedsIsMutable();
3262 randomProjectionSeeds_.addAll(other.randomProjectionSeeds_);
3266 if (other.hasInfiniteConstraintBoundThreshold()) {
3269 if (other.hasHandleSomePrimalGradientsOnFiniteBoundsAsResiduals()) {
3272 if (other.hasUseDiagonalQpTrustRegionSolver()) {
3275 if (other.hasDiagonalQpTrustRegionSolverTolerance()) {
3278 if (other.hasUseFeasibilityPolishing()) {
3281 if (other.hasApplyFeasibilityPolishingAfterLimitsReached()) {
3284 if (other.hasApplyFeasibilityPolishingIfSolverIsInterrupted()) {
3287 this.mergeUnknownFields(other.getUnknownFields());
3299 com.google.protobuf.CodedInputStream input,
3300 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3301 throws java.io.IOException {
3302 if (extensionRegistry ==
null) {
3303 throw new java.lang.NullPointerException();
3306 boolean done =
false;
3308 int tag = input.readTag();
3315 internalGetTerminationCriteriaFieldBuilder().getBuilder(),
3317 bitField0_ |= 0x00000001;
3321 numThreads_ = input.readInt32();
3322 bitField0_ |= 0x00000002;
3326 recordIterationStats_ = input.readBool();
3327 bitField0_ |= 0x00000010;
3331 majorIterationFrequency_ = input.readInt32();
3332 bitField0_ |= 0x00000080;
3336 terminationCheckFrequency_ = input.readInt32();
3337 bitField0_ |= 0x00000100;
3341 int tmpRaw = input.readEnum();
3343 com.google.ortools.pdlp.PrimalDualHybridGradientParams.RestartStrategy.forNumber(tmpRaw);
3344 if (tmpValue ==
null) {
3345 mergeUnknownVarintField(6, tmpRaw);
3347 restartStrategy_ = tmpRaw;
3348 bitField0_ |= 0x00000200;
3353 primalWeightUpdateSmoothing_ = input.readDouble();
3354 bitField0_ |= 0x00000400;
3358 initialPrimalWeight_ = input.readDouble();
3359 bitField0_ |= 0x00000800;
3363 lInfRuizIterations_ = input.readInt32();
3364 bitField0_ |= 0x00002000;
3368 l2NormRescaling_ = input.readBool();
3369 bitField0_ |= 0x00004000;
3373 sufficientReductionForRestart_ = input.readDouble();
3374 bitField0_ |= 0x00008000;
3378 int tmpRaw = input.readEnum();
3380 com.google.ortools.pdlp.PrimalDualHybridGradientParams.LinesearchRule.forNumber(tmpRaw);
3381 if (tmpValue ==
null) {
3382 mergeUnknownVarintField(12, tmpRaw);
3384 linesearchRule_ = tmpRaw;
3385 bitField0_ |= 0x00020000;
3391 internalGetPresolveOptionsFieldBuilder().getBuilder(),
3393 bitField0_ |= 0x00001000;
3397 necessaryReductionForRestart_ = input.readDouble();
3398 bitField0_ |= 0x00010000;
3403 internalGetAdaptiveLinesearchParametersFieldBuilder().getBuilder(),
3405 bitField0_ |= 0x00040000;
3410 internalGetMalitskyPockParametersFieldBuilder().getBuilder(),
3412 bitField0_ |= 0x00080000;
3416 infiniteConstraintBoundThreshold_ = input.readDouble();
3417 bitField0_ |= 0x00400000;
3421 useDiagonalQpTrustRegionSolver_ = input.readBool();
3422 bitField0_ |= 0x01000000;
3426 diagonalQpTrustRegionSolverTolerance_ = input.readDouble();
3427 bitField0_ |= 0x02000000;
3431 initialStepSizeScaling_ = input.readDouble();
3432 bitField0_ |= 0x00100000;
3436 verbosityLevel_ = input.readInt32();
3437 bitField0_ |= 0x00000020;
3441 numShards_ = input.readInt32();
3442 bitField0_ |= 0x00000004;
3446 int v = input.readInt32();
3447 ensureRandomProjectionSeedsIsMutable();
3448 randomProjectionSeeds_.addInt(v);
3452 int length = input.readRawVarint32();
3453 int limit = input.pushLimit(length);
3454 ensureRandomProjectionSeedsIsMutable();
3455 while (input.getBytesUntilLimit() > 0) {
3456 randomProjectionSeeds_.addInt(input.readInt32());
3458 input.popLimit(limit);
3462 handleSomePrimalGradientsOnFiniteBoundsAsResiduals_ = input.readBool();
3463 bitField0_ |= 0x00800000;
3467 useFeasibilityPolishing_ = input.readBool();
3468 bitField0_ |= 0x04000000;
3472 logIntervalSeconds_ = input.readDouble();
3473 bitField0_ |= 0x00000040;
3477 int tmpRaw = input.readEnum();
3479 com.google.ortools.pdlp.SchedulerType.forNumber(tmpRaw);
3480 if (tmpValue ==
null) {
3481 mergeUnknownVarintField(32, tmpRaw);
3483 schedulerType_ = tmpRaw;
3484 bitField0_ |= 0x00000008;
3489 applyFeasibilityPolishingAfterLimitsReached_ = input.readBool();
3490 bitField0_ |= 0x08000000;
3494 applyFeasibilityPolishingIfSolverIsInterrupted_ = input.readBool();
3495 bitField0_ |= 0x10000000;
3499 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
3506 }
catch (com.google.protobuf.InvalidProtocolBufferException e) {
3507 throw e.unwrapIOException();
3513 private int bitField0_;
3516 private com.google.protobuf.SingleFieldBuilder<
3517 com.google.ortools.pdlp.TerminationCriteria, com.google.ortools.pdlp.TerminationCriteria.Builder, com.google.ortools.pdlp.TerminationCriteriaOrBuilder> terminationCriteriaBuilder_;
3523 return ((bitField0_ & 0x00000001) != 0);
3530 if (terminationCriteriaBuilder_ ==
null) {
3531 return terminationCriteria_ ==
null ? com.google.ortools.pdlp.TerminationCriteria.getDefaultInstance() : terminationCriteria_;
3533 return terminationCriteriaBuilder_.getMessage();
3540 if (terminationCriteriaBuilder_ ==
null) {
3541 if (value ==
null) {
3542 throw new NullPointerException();
3544 terminationCriteria_ = value;
3546 terminationCriteriaBuilder_.setMessage(value);
3548 bitField0_ |= 0x00000001;
3556 com.google.ortools.pdlp.TerminationCriteria.Builder builderForValue) {
3557 if (terminationCriteriaBuilder_ ==
null) {
3558 terminationCriteria_ = builderForValue.build();
3560 terminationCriteriaBuilder_.setMessage(builderForValue.build());
3562 bitField0_ |= 0x00000001;
3570 if (terminationCriteriaBuilder_ ==
null) {
3571 if (((bitField0_ & 0x00000001) != 0) &&
3572 terminationCriteria_ !=
null &&
3573 terminationCriteria_ != com.google.ortools.pdlp.TerminationCriteria.getDefaultInstance()) {
3576 terminationCriteria_ = value;
3579 terminationCriteriaBuilder_.mergeFrom(value);
3581 if (terminationCriteria_ !=
null) {
3582 bitField0_ |= 0x00000001;
3591 bitField0_ = (bitField0_ & ~0x00000001);
3592 terminationCriteria_ =
null;
3593 if (terminationCriteriaBuilder_ !=
null) {
3594 terminationCriteriaBuilder_.dispose();
3595 terminationCriteriaBuilder_ =
null;
3604 bitField0_ |= 0x00000001;
3606 return internalGetTerminationCriteriaFieldBuilder().getBuilder();
3612 if (terminationCriteriaBuilder_ !=
null) {
3613 return terminationCriteriaBuilder_.getMessageOrBuilder();
3615 return terminationCriteria_ ==
null ?
3616 com.google.ortools.pdlp.TerminationCriteria.getDefaultInstance() : terminationCriteria_;
3622 private com.google.protobuf.SingleFieldBuilder<
3623 com.google.ortools.pdlp.TerminationCriteria, com.google.ortools.pdlp.TerminationCriteria.Builder, com.google.ortools.pdlp.TerminationCriteriaOrBuilder>
3624 internalGetTerminationCriteriaFieldBuilder() {
3625 if (terminationCriteriaBuilder_ ==
null) {
3626 terminationCriteriaBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
3627 com.google.ortools.pdlp.TerminationCriteria, com.google.ortools.pdlp.TerminationCriteria.Builder, com.google.ortools.pdlp.TerminationCriteriaOrBuilder>(
3629 getParentForChildren(),
3631 terminationCriteria_ =
null;
3633 return terminationCriteriaBuilder_;
3636 private int numThreads_ = 1;
3650 return ((bitField0_ & 0x00000002) != 0);
3681 numThreads_ = value;
3682 bitField0_ |= 0x00000002;
3698 bitField0_ = (bitField0_ & ~0x00000002);
3704 private int numShards_ ;
3723 return ((bitField0_ & 0x00000004) != 0);
3765 bitField0_ |= 0x00000004;
3786 bitField0_ = (bitField0_ & ~0x00000004);
3792 private int schedulerType_ = 1;
3803 return ((bitField0_ & 0x00000008) != 0);
3830 if (value ==
null) {
throw new NullPointerException(); }
3831 bitField0_ |= 0x00000008;
3832 schedulerType_ = value.getNumber();
3846 bitField0_ = (bitField0_ & ~0x00000008);
3852 private boolean recordIterationStats_ ;
3866 return ((bitField0_ & 0x00000010) != 0);
3881 return recordIterationStats_;
3897 recordIterationStats_ = value;
3898 bitField0_ |= 0x00000010;
3914 bitField0_ = (bitField0_ & ~0x00000010);
3915 recordIterationStats_ =
false;
3920 private int verbosityLevel_ ;
3941 return ((bitField0_ & 0x00000020) != 0);
3963 return verbosityLevel_;
3986 verbosityLevel_ = value;
3987 bitField0_ |= 0x00000020;
4010 bitField0_ = (bitField0_ & ~0x00000020);
4011 verbosityLevel_ = 0;
4016 private double logIntervalSeconds_ ;
4031 return ((bitField0_ & 0x00000040) != 0);
4047 return logIntervalSeconds_;
4064 logIntervalSeconds_ = value;
4065 bitField0_ |= 0x00000040;
4082 bitField0_ = (bitField0_ & ~0x00000040);
4083 logIntervalSeconds_ = 0D;
4088 private int majorIterationFrequency_ = 64;
4104 return ((bitField0_ & 0x00000080) != 0);
4121 return majorIterationFrequency_;
4139 majorIterationFrequency_ = value;
4140 bitField0_ |= 0x00000080;
4158 bitField0_ = (bitField0_ & ~0x00000080);
4159 majorIterationFrequency_ = 64;
4164 private int terminationCheckFrequency_ = 64;
4177 return ((bitField0_ & 0x00000100) != 0);
4191 return terminationCheckFrequency_;
4206 terminationCheckFrequency_ = value;
4207 bitField0_ |= 0x00000100;
4222 bitField0_ = (bitField0_ & ~0x00000100);
4223 terminationCheckFrequency_ = 64;
4228 private int restartStrategy_ = 3;
4240 return ((bitField0_ & 0x00000200) != 0);
4268 public Builder
setRestartStrategy(com.google.ortools.pdlp.PrimalDualHybridGradientParams.RestartStrategy value) {
4269 if (value ==
null) {
throw new NullPointerException(); }
4270 bitField0_ |= 0x00000200;
4271 restartStrategy_ = value.getNumber();
4286 bitField0_ = (bitField0_ & ~0x00000200);
4287 restartStrategy_ = 3;
4292 private double primalWeightUpdateSmoothing_ = 0.5D;
4310 return ((bitField0_ & 0x00000400) != 0);
4329 return primalWeightUpdateSmoothing_;
4349 primalWeightUpdateSmoothing_ = value;
4350 bitField0_ |= 0x00000400;
4370 bitField0_ = (bitField0_ & ~0x00000400);
4371 primalWeightUpdateSmoothing_ = 0.5D;
4376 private double initialPrimalWeight_ ;
4393 return ((bitField0_ & 0x00000800) != 0);
4411 return initialPrimalWeight_;
4430 initialPrimalWeight_ = value;
4431 bitField0_ |= 0x00000800;
4450 bitField0_ = (bitField0_ & ~0x00000800);
4451 initialPrimalWeight_ = 0D;
4457 private com.google.protobuf.SingleFieldBuilder<
4458 com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions, com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.Builder, com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptionsOrBuilder> presolveOptionsBuilder_;
4464 return ((bitField0_ & 0x00001000) != 0);
4471 if (presolveOptionsBuilder_ ==
null) {
4472 return presolveOptions_ ==
null ? com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.getDefaultInstance() : presolveOptions_;
4474 return presolveOptionsBuilder_.getMessage();
4480 public Builder
setPresolveOptions(com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions value) {
4481 if (presolveOptionsBuilder_ ==
null) {
4482 if (value ==
null) {
4483 throw new NullPointerException();
4485 presolveOptions_ = value;
4487 presolveOptionsBuilder_.setMessage(value);
4489 bitField0_ |= 0x00001000;
4497 com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.Builder builderForValue) {
4498 if (presolveOptionsBuilder_ ==
null) {
4499 presolveOptions_ = builderForValue.build();
4501 presolveOptionsBuilder_.setMessage(builderForValue.build());
4503 bitField0_ |= 0x00001000;
4510 public Builder
mergePresolveOptions(com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions value) {
4511 if (presolveOptionsBuilder_ ==
null) {
4512 if (((bitField0_ & 0x00001000) != 0) &&
4513 presolveOptions_ !=
null &&
4514 presolveOptions_ != com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.getDefaultInstance()) {
4517 presolveOptions_ = value;
4520 presolveOptionsBuilder_.mergeFrom(value);
4522 if (presolveOptions_ !=
null) {
4523 bitField0_ |= 0x00001000;
4532 bitField0_ = (bitField0_ & ~0x00001000);
4533 presolveOptions_ =
null;
4534 if (presolveOptionsBuilder_ !=
null) {
4535 presolveOptionsBuilder_.dispose();
4536 presolveOptionsBuilder_ =
null;
4545 bitField0_ |= 0x00001000;
4547 return internalGetPresolveOptionsFieldBuilder().getBuilder();
4553 if (presolveOptionsBuilder_ !=
null) {
4554 return presolveOptionsBuilder_.getMessageOrBuilder();
4556 return presolveOptions_ ==
null ?
4557 com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.getDefaultInstance() : presolveOptions_;
4563 private com.google.protobuf.SingleFieldBuilder<
4564 com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions, com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.Builder, com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptionsOrBuilder>
4565 internalGetPresolveOptionsFieldBuilder() {
4566 if (presolveOptionsBuilder_ ==
null) {
4567 presolveOptionsBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
4568 com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions, com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptions.Builder, com.google.ortools.pdlp.PrimalDualHybridGradientParams.PresolveOptionsOrBuilder>(
4570 getParentForChildren(),
4572 presolveOptions_ =
null;
4574 return presolveOptionsBuilder_;
4577 private int lInfRuizIterations_ = 5;
4590 return ((bitField0_ & 0x00002000) != 0);
4604 return lInfRuizIterations_;
4619 lInfRuizIterations_ = value;
4620 bitField0_ |= 0x00002000;
4635 bitField0_ = (bitField0_ & ~0x00002000);
4636 lInfRuizIterations_ = 5;
4641 private boolean l2NormRescaling_ =
true;
4653 return ((bitField0_ & 0x00004000) != 0);
4666 return l2NormRescaling_;
4680 l2NormRescaling_ = value;
4681 bitField0_ |= 0x00004000;
4695 bitField0_ = (bitField0_ & ~0x00004000);
4696 l2NormRescaling_ =
true;
4701 private double sufficientReductionForRestart_ = 0.1D;
4714 return ((bitField0_ & 0x00008000) != 0);
4728 return sufficientReductionForRestart_;
4743 sufficientReductionForRestart_ = value;
4744 bitField0_ |= 0x00008000;
4759 bitField0_ = (bitField0_ & ~0x00008000);
4760 sufficientReductionForRestart_ = 0.1D;
4765 private double necessaryReductionForRestart_ = 0.9D;
4780 return ((bitField0_ & 0x00010000) != 0);
4796 return necessaryReductionForRestart_;
4813 necessaryReductionForRestart_ = value;
4814 bitField0_ |= 0x00010000;
4831 bitField0_ = (bitField0_ & ~0x00010000);
4832 necessaryReductionForRestart_ = 0.9D;
4837 private int linesearchRule_ = 1;
4847 return ((bitField0_ & 0x00020000) != 0);
4871 public Builder
setLinesearchRule(com.google.ortools.pdlp.PrimalDualHybridGradientParams.LinesearchRule value) {
4872 if (value ==
null) {
throw new NullPointerException(); }
4873 bitField0_ |= 0x00020000;
4874 linesearchRule_ = value.getNumber();
4887 bitField0_ = (bitField0_ & ~0x00020000);
4888 linesearchRule_ = 1;
4894 private com.google.protobuf.SingleFieldBuilder<
4895 com.google.ortools.pdlp.AdaptiveLinesearchParams, com.google.ortools.pdlp.AdaptiveLinesearchParams.Builder, com.google.ortools.pdlp.AdaptiveLinesearchParamsOrBuilder> adaptiveLinesearchParametersBuilder_;
4901 return ((bitField0_ & 0x00040000) != 0);
4908 if (adaptiveLinesearchParametersBuilder_ ==
null) {
4909 return adaptiveLinesearchParameters_ ==
null ? com.google.ortools.pdlp.AdaptiveLinesearchParams.getDefaultInstance() : adaptiveLinesearchParameters_;
4911 return adaptiveLinesearchParametersBuilder_.getMessage();
4918 if (adaptiveLinesearchParametersBuilder_ ==
null) {
4919 if (value ==
null) {
4920 throw new NullPointerException();
4922 adaptiveLinesearchParameters_ = value;
4924 adaptiveLinesearchParametersBuilder_.setMessage(value);
4926 bitField0_ |= 0x00040000;
4934 com.google.ortools.pdlp.AdaptiveLinesearchParams.Builder builderForValue) {
4935 if (adaptiveLinesearchParametersBuilder_ ==
null) {
4936 adaptiveLinesearchParameters_ = builderForValue.build();
4938 adaptiveLinesearchParametersBuilder_.setMessage(builderForValue.build());
4940 bitField0_ |= 0x00040000;
4948 if (adaptiveLinesearchParametersBuilder_ ==
null) {
4949 if (((bitField0_ & 0x00040000) != 0) &&
4950 adaptiveLinesearchParameters_ !=
null &&
4951 adaptiveLinesearchParameters_ != com.google.ortools.pdlp.AdaptiveLinesearchParams.getDefaultInstance()) {
4954 adaptiveLinesearchParameters_ = value;
4957 adaptiveLinesearchParametersBuilder_.mergeFrom(value);
4959 if (adaptiveLinesearchParameters_ !=
null) {
4960 bitField0_ |= 0x00040000;
4969 bitField0_ = (bitField0_ & ~0x00040000);
4970 adaptiveLinesearchParameters_ =
null;
4971 if (adaptiveLinesearchParametersBuilder_ !=
null) {
4972 adaptiveLinesearchParametersBuilder_.dispose();
4973 adaptiveLinesearchParametersBuilder_ =
null;
4982 bitField0_ |= 0x00040000;
4984 return internalGetAdaptiveLinesearchParametersFieldBuilder().getBuilder();
4990 if (adaptiveLinesearchParametersBuilder_ !=
null) {
4991 return adaptiveLinesearchParametersBuilder_.getMessageOrBuilder();
4993 return adaptiveLinesearchParameters_ ==
null ?
4994 com.google.ortools.pdlp.AdaptiveLinesearchParams.getDefaultInstance() : adaptiveLinesearchParameters_;
5000 private com.google.protobuf.SingleFieldBuilder<
5001 com.google.ortools.pdlp.AdaptiveLinesearchParams, com.google.ortools.pdlp.AdaptiveLinesearchParams.Builder, com.google.ortools.pdlp.AdaptiveLinesearchParamsOrBuilder>
5002 internalGetAdaptiveLinesearchParametersFieldBuilder() {
5003 if (adaptiveLinesearchParametersBuilder_ ==
null) {
5004 adaptiveLinesearchParametersBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
5005 com.google.ortools.pdlp.AdaptiveLinesearchParams, com.google.ortools.pdlp.AdaptiveLinesearchParams.Builder, com.google.ortools.pdlp.AdaptiveLinesearchParamsOrBuilder>(
5007 getParentForChildren(),
5009 adaptiveLinesearchParameters_ =
null;
5011 return adaptiveLinesearchParametersBuilder_;
5015 private com.google.protobuf.SingleFieldBuilder<
5016 com.google.ortools.pdlp.MalitskyPockParams, com.google.ortools.pdlp.MalitskyPockParams.Builder, com.google.ortools.pdlp.MalitskyPockParamsOrBuilder> malitskyPockParametersBuilder_;
5022 return ((bitField0_ & 0x00080000) != 0);
5029 if (malitskyPockParametersBuilder_ ==
null) {
5030 return malitskyPockParameters_ ==
null ? com.google.ortools.pdlp.MalitskyPockParams.getDefaultInstance() : malitskyPockParameters_;
5032 return malitskyPockParametersBuilder_.getMessage();
5039 if (malitskyPockParametersBuilder_ ==
null) {
5040 if (value ==
null) {
5041 throw new NullPointerException();
5043 malitskyPockParameters_ = value;
5045 malitskyPockParametersBuilder_.setMessage(value);
5047 bitField0_ |= 0x00080000;
5055 com.google.ortools.pdlp.MalitskyPockParams.Builder builderForValue) {
5056 if (malitskyPockParametersBuilder_ ==
null) {
5057 malitskyPockParameters_ = builderForValue.build();
5059 malitskyPockParametersBuilder_.setMessage(builderForValue.build());
5061 bitField0_ |= 0x00080000;
5069 if (malitskyPockParametersBuilder_ ==
null) {
5070 if (((bitField0_ & 0x00080000) != 0) &&
5071 malitskyPockParameters_ !=
null &&
5072 malitskyPockParameters_ != com.google.ortools.pdlp.MalitskyPockParams.getDefaultInstance()) {
5075 malitskyPockParameters_ = value;
5078 malitskyPockParametersBuilder_.mergeFrom(value);
5080 if (malitskyPockParameters_ !=
null) {
5081 bitField0_ |= 0x00080000;
5090 bitField0_ = (bitField0_ & ~0x00080000);
5091 malitskyPockParameters_ =
null;
5092 if (malitskyPockParametersBuilder_ !=
null) {
5093 malitskyPockParametersBuilder_.dispose();
5094 malitskyPockParametersBuilder_ =
null;
5103 bitField0_ |= 0x00080000;
5105 return internalGetMalitskyPockParametersFieldBuilder().getBuilder();
5111 if (malitskyPockParametersBuilder_ !=
null) {
5112 return malitskyPockParametersBuilder_.getMessageOrBuilder();
5114 return malitskyPockParameters_ ==
null ?
5115 com.google.ortools.pdlp.MalitskyPockParams.getDefaultInstance() : malitskyPockParameters_;
5121 private com.google.protobuf.SingleFieldBuilder<
5122 com.google.ortools.pdlp.MalitskyPockParams, com.google.ortools.pdlp.MalitskyPockParams.Builder, com.google.ortools.pdlp.MalitskyPockParamsOrBuilder>
5123 internalGetMalitskyPockParametersFieldBuilder() {
5124 if (malitskyPockParametersBuilder_ ==
null) {
5125 malitskyPockParametersBuilder_ =
new com.google.protobuf.SingleFieldBuilder<
5126 com.google.ortools.pdlp.MalitskyPockParams, com.google.ortools.pdlp.MalitskyPockParams.Builder, com.google.ortools.pdlp.MalitskyPockParamsOrBuilder>(
5128 getParentForChildren(),
5130 malitskyPockParameters_ =
null;
5132 return malitskyPockParametersBuilder_;
5135 private double initialStepSizeScaling_ = 1D;
5147 return ((bitField0_ & 0x00100000) != 0);
5160 return initialStepSizeScaling_;
5174 initialStepSizeScaling_ = value;
5175 bitField0_ |= 0x00100000;
5189 bitField0_ = (bitField0_ & ~0x00100000);
5190 initialStepSizeScaling_ = 1D;
5195 private com.google.protobuf.Internal.IntList randomProjectionSeeds_ = emptyIntList();
5196 private void ensureRandomProjectionSeedsIsMutable() {
5197 if (!randomProjectionSeeds_.isModifiable()) {
5198 randomProjectionSeeds_ = makeMutableCopy(randomProjectionSeeds_);
5200 bitField0_ |= 0x00200000;
5215 public java.util.List<java.lang.Integer>
5217 randomProjectionSeeds_.makeImmutable();
5218 return randomProjectionSeeds_;
5234 return randomProjectionSeeds_.size();
5251 return randomProjectionSeeds_.getInt(index);
5269 int index,
int value) {
5271 ensureRandomProjectionSeedsIsMutable();
5272 randomProjectionSeeds_.setInt(index, value);
5273 bitField0_ |= 0x00200000;
5293 ensureRandomProjectionSeedsIsMutable();
5294 randomProjectionSeeds_.addInt(value);
5295 bitField0_ |= 0x00200000;
5314 java.lang.Iterable<? extends java.lang.Integer> values) {
5315 ensureRandomProjectionSeedsIsMutable();
5316 com.google.protobuf.AbstractMessageLite.Builder.addAll(
5317 values, randomProjectionSeeds_);
5318 bitField0_ |= 0x00200000;
5336 randomProjectionSeeds_ = emptyIntList();
5337 bitField0_ = (bitField0_ & ~0x00200000);
5342 private double infiniteConstraintBoundThreshold_ = Double.POSITIVE_INFINITY;
5358 return ((bitField0_ & 0x00400000) != 0);
5375 return infiniteConstraintBoundThreshold_;
5393 infiniteConstraintBoundThreshold_ = value;
5394 bitField0_ |= 0x00400000;
5412 bitField0_ = (bitField0_ & ~0x00400000);
5413 infiniteConstraintBoundThreshold_ = Double.POSITIVE_INFINITY;
5418 private boolean handleSomePrimalGradientsOnFiniteBoundsAsResiduals_ =
true;
5431 return ((bitField0_ & 0x00800000) != 0);
5445 return handleSomePrimalGradientsOnFiniteBoundsAsResiduals_;
5460 handleSomePrimalGradientsOnFiniteBoundsAsResiduals_ = value;
5461 bitField0_ |= 0x00800000;
5476 bitField0_ = (bitField0_ & ~0x00800000);
5477 handleSomePrimalGradientsOnFiniteBoundsAsResiduals_ =
true;
5482 private boolean useDiagonalQpTrustRegionSolver_ ;
5498 return ((bitField0_ & 0x01000000) != 0);
5515 return useDiagonalQpTrustRegionSolver_;
5533 useDiagonalQpTrustRegionSolver_ = value;
5534 bitField0_ |= 0x01000000;
5552 bitField0_ = (bitField0_ & ~0x01000000);
5553 useDiagonalQpTrustRegionSolver_ =
false;
5558 private double diagonalQpTrustRegionSolverTolerance_ = 1e-08D;
5573 return ((bitField0_ & 0x02000000) != 0);
5589 return diagonalQpTrustRegionSolverTolerance_;
5606 diagonalQpTrustRegionSolverTolerance_ = value;
5607 bitField0_ |= 0x02000000;
5624 bitField0_ = (bitField0_ & ~0x02000000);
5625 diagonalQpTrustRegionSolverTolerance_ = 1e-08D;
5630 private boolean useFeasibilityPolishing_ ;
5666 return ((bitField0_ & 0x04000000) != 0);
5703 return useFeasibilityPolishing_;
5741 useFeasibilityPolishing_ = value;
5742 bitField0_ |= 0x04000000;
5780 bitField0_ = (bitField0_ & ~0x04000000);
5781 useFeasibilityPolishing_ =
false;
5786 private boolean applyFeasibilityPolishingAfterLimitsReached_ ;
5800 return ((bitField0_ & 0x08000000) != 0);
5815 return applyFeasibilityPolishingAfterLimitsReached_;
5831 applyFeasibilityPolishingAfterLimitsReached_ = value;
5832 bitField0_ |= 0x08000000;
5848 bitField0_ = (bitField0_ & ~0x08000000);
5849 applyFeasibilityPolishingAfterLimitsReached_ =
false;
5854 private boolean applyFeasibilityPolishingIfSolverIsInterrupted_ ;
5867 return ((bitField0_ & 0x10000000) != 0);
5881 return applyFeasibilityPolishingIfSolverIsInterrupted_;
5896 applyFeasibilityPolishingIfSolverIsInterrupted_ = value;
5897 bitField0_ |= 0x10000000;
5912 bitField0_ = (bitField0_ & ~0x10000000);
5913 applyFeasibilityPolishingIfSolverIsInterrupted_ =
false;
5924 DEFAULT_INSTANCE =
new com.google.ortools.pdlp.PrimalDualHybridGradientParams();
5928 return DEFAULT_INSTANCE;
5935 com.google.protobuf.CodedInputStream input,
5936 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5937 throws com.google.protobuf.InvalidProtocolBufferException {
5940 builder.mergeFrom(input, extensionRegistry);
5941 }
catch (com.google.protobuf.InvalidProtocolBufferException e) {
5942 throw e.setUnfinishedMessage(builder.buildPartial());
5943 }
catch (com.google.protobuf.UninitializedMessageException e) {
5944 throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
5945 }
catch (java.io.IOException e) {
5946 throw new com.google.protobuf.InvalidProtocolBufferException(e)
5947 .setUnfinishedMessage(builder.buildPartial());
5949 return builder.buildPartial();
5953 public static com.google.protobuf.Parser<PrimalDualHybridGradientParams>
parser() {
5964 return DEFAULT_INSTANCE;