Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
BopParameters.pb.cs
Go to the documentation of this file.
1// <auto-generated>
2// Generated by the protocol buffer compiler. DO NOT EDIT!
3// source: ortools/bop/bop_parameters.proto
4// </auto-generated>
5#pragma warning disable 1591, 0612, 3021, 8981
6#region Designer generated code
7
8using pb = global::Google.Protobuf;
9using pbc = global::Google.Protobuf.Collections;
10using pbr = global::Google.Protobuf.Reflection;
11using scg = global::System.Collections.Generic;
13
15 public static partial class BopParametersReflection {
16
17 #region Descriptor
19 public static pbr::FileDescriptor Descriptor {
20 get { return descriptor; }
21 }
22 private static pbr::FileDescriptor descriptor;
23
25 byte[] descriptorData = global::System.Convert.FromBase64String(
26 string.Concat(
27 "CiBvcnRvb2xzL2JvcC9ib3BfcGFyYW1ldGVycy5wcm90bxIXb3BlcmF0aW9u",
28 "c19yZXNlYXJjaC5ib3AihAQKEkJvcE9wdGltaXplck1ldGhvZBJHCgR0eXBl",
29 "GAEgASgOMjkub3BlcmF0aW9uc19yZXNlYXJjaC5ib3AuQm9wT3B0aW1pemVy",
30 "TWV0aG9kLk9wdGltaXplclR5cGUipAMKDU9wdGltaXplclR5cGUSEgoOU0FU",
31 "X0NPUkVfQkFTRUQQABIVChFTQVRfTElORUFSX1NFQVJDSBAPEhUKEUxJTkVB",
32 "Ul9SRUxBWEFUSU9OEAESEAoMTE9DQUxfU0VBUkNIEAISGQoVUkFORE9NX0ZJ",
33 "UlNUX1NPTFVUSU9OEAMSGQoVUkFORE9NX0NPTlNUUkFJTlRfTE5TEAQSFwoT",
34 "UkFORE9NX1ZBUklBQkxFX0xOUxAFEhAKDENPTVBMRVRFX0xOUxAHEhUKEUxQ",
35 "X0ZJUlNUX1NPTFVUSU9OEAgSHAoYT0JKRUNUSVZFX0ZJUlNUX1NPTFVUSU9O",
36 "EAkSHgoaVVNFUl9HVUlERURfRklSU1RfU09MVVRJT04QDhImCiJSQU5ET01f",
37 "Q09OU1RSQUlOVF9MTlNfR1VJREVEX0JZX0xQEAsSJAogUkFORE9NX1ZBUklB",
38 "QkxFX0xOU19HVUlERURfQllfTFAQDBIWChJSRUxBVElPTl9HUkFQSF9MTlMQ",
39 "EBIjCh9SRUxBVElPTl9HUkFQSF9MTlNfR1VJREVEX0JZX0xQEBEiVQoVQm9w",
40 "U29sdmVyT3B0aW1pemVyU2V0EjwKB21ldGhvZHMYASADKAsyKy5vcGVyYXRp",
41 "b25zX3Jlc2VhcmNoLmJvcC5Cb3BPcHRpbWl6ZXJNZXRob2Qi7hMKDUJvcFBh",
42 "cmFtZXRlcnMSIAoTbWF4X3RpbWVfaW5fc2Vjb25kcxgBIAEoAToDaW5mEiMK",
43 "Fm1heF9kZXRlcm1pbmlzdGljX3RpbWUYGyABKAE6A2luZhIkChlscF9tYXhf",
44 "ZGV0ZXJtaW5pc3RpY190aW1lGCUgASgBOgExEjkKMW1heF9udW1iZXJfb2Zf",
45 "Y29uc2VjdXRpdmVfZmFpbGluZ19vcHRpbWl6ZXJfY2FsbHMYIyABKAUSIgoS",
46 "cmVsYXRpdmVfZ2FwX2xpbWl0GBwgASgBOgYwLjAwMDESIgoXbWF4X251bV9k",
47 "ZWNpc2lvbnNfaW5fbHMYAiABKAU6ATQSNAogbWF4X251bV9icm9rZW5fY29u",
48 "c3RyYWludHNfaW5fbHMYJiABKAU6CjIxNDc0ODM2NDcSIgoTbG9nX3NlYXJj",
49 "aF9wcm9ncmVzcxgOIAEoCDoFZmFsc2USJgoYY29tcHV0ZV9lc3RpbWF0ZWRf",
50 "aW1wYWN0GAMgASgIOgR0cnVlEiAKEXBydW5lX3NlYXJjaF90cmVlGAQgASgI",
51 "OgVmYWxzZRIsCh1zb3J0X2NvbnN0cmFpbnRzX2J5X251bV90ZXJtcxgFIAEo",
52 "CDoFZmFsc2USHAoOdXNlX3JhbmRvbV9sbnMYBiABKAg6BHRydWUSFgoLcmFu",
53 "ZG9tX3NlZWQYByABKAU6ATgSHAoQbnVtX3JlbGF4ZWRfdmFycxgIIAEoBToC",
54 "MTASMwolbWF4X251bWJlcl9vZl9jb25mbGljdHNfaW5fcmFuZG9tX2xucxgJ",
55 "IAEoBToEMjUwMBIfChRudW1fcmFuZG9tX2xuc190cmllcxgKIAEoBToBMRIx",
56 "Ch5tYXhfbnVtYmVyX29mX2JhY2t0cmFja3NfaW5fbHMYCyABKAM6CTEwMDAw",
57 "MDAwMBIYCgp1c2VfbHBfbG5zGAwgASgIOgR0cnVlEjEKI3VzZV9zYXRfdG9f",
58 "Y2hvb3NlX2xuc19uZWlnaGJvdXJob29kGA8gASgIOgR0cnVlEjMKJ21heF9u",
59 "dW1iZXJfb2ZfY29uZmxpY3RzX2Zvcl9xdWlja19jaGVjaxgQIAEoBToCMTAS",
60 "GwoMdXNlX3N5bW1ldHJ5GBEgASgIOgVmYWxzZRI1CiZleHBsb2l0X3N5bW1l",
61 "dHJ5X2luX3NhdF9maXJzdF9zb2x1dGlvbhgoIAEoCDoFZmFsc2USQgo1bWF4",
62 "X251bWJlcl9vZl9jb25mbGljdHNfaW5fcmFuZG9tX3NvbHV0aW9uX2dlbmVy",
63 "YXRpb24YFCABKAU6AzUwMBI/CjBtYXhfbnVtYmVyX29mX2V4cGxvcmVkX2Fz",
64 "c2lnbm1lbnRzX3Blcl90cnlfaW5fbHMYFSABKAM6BTEwMDAwEisKHXVzZV90",
65 "cmFuc3Bvc2l0aW9uX3RhYmxlX2luX2xzGBYgASgIOgR0cnVlEjMKJHVzZV9w",
66 "b3RlbnRpYWxfb25lX2ZsaXBfcmVwYWlyc19pbl9scxgnIAEoCDoFZmFsc2US",
67 "LgogdXNlX2xlYXJuZWRfYmluYXJ5X2NsYXVzZXNfaW5fbHAYFyABKAg6BHRy",
68 "dWUSHAoRbnVtYmVyX29mX3NvbHZlcnMYGCABKAU6ATEScgoUc3luY2hyb25p",
69 "emF0aW9uX3R5cGUYGSABKA4yQC5vcGVyYXRpb25zX3Jlc2VhcmNoLmJvcC5C",
70 "b3BQYXJhbWV0ZXJzLlRocmVhZFN5bmNocm9uaXphdGlvblR5cGU6Ek5PX1NZ",
71 "TkNIUk9OSVpBVElPThJNChVzb2x2ZXJfb3B0aW1pemVyX3NldHMYGiADKAsy",
72 "Li5vcGVyYXRpb25zX3Jlc2VhcmNoLmJvcC5Cb3BTb2x2ZXJPcHRpbWl6ZXJT",
73 "ZXQS8gUKHWRlZmF1bHRfc29sdmVyX29wdGltaXplcl9zZXRzGCEgASgJOsoF",
74 "bWV0aG9kczp7dHlwZTpMT0NBTF9TRUFSQ0ggfSAgICAgICAgICAgICAgICAg",
75 "ICAgICAgbWV0aG9kczp7dHlwZTpSQU5ET01fRklSU1RfU09MVVRJT04gfSAg",
76 "ICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpMSU5FQVJfUkVMQVhBVElPTiB9",
77 "ICAgICAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpMUF9GSVJTVF9TT0xV",
78 "VElPTiB9ICAgICAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpPQkpFQ1RJ",
79 "VkVfRklSU1RfU09MVVRJT04gfSAgICAgICAgICAgbWV0aG9kczp7dHlwZTpV",
80 "U0VSX0dVSURFRF9GSVJTVF9TT0xVVElPTiB9ICAgICAgICAgbWV0aG9kczp7",
81 "dHlwZTpSQU5ET01fQ09OU1RSQUlOVF9MTlNfR1VJREVEX0JZX0xQIH0gbWV0",
82 "aG9kczp7dHlwZTpSQU5ET01fVkFSSUFCTEVfTE5TX0dVSURFRF9CWV9MUCB9",
83 "ICAgbWV0aG9kczp7dHlwZTpSRUxBVElPTl9HUkFQSF9MTlMgfSAgICAgICAg",
84 "ICAgICAgICAgbWV0aG9kczp7dHlwZTpSRUxBVElPTl9HUkFQSF9MTlNfR1VJ",
85 "REVEX0JZX0xQIH0gICAgbWV0aG9kczp7dHlwZTpSQU5ET01fQ09OU1RSQUlO",
86 "VF9MTlMgfSAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpSQU5ET01fVkFS",
87 "SUFCTEVfTE5TIH0gICAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpTQVRf",
88 "Q09SRV9CQVNFRCB9ICAgICAgICAgICAgICAgICAgICAgbWV0aG9kczp7dHlw",
89 "ZTpDT01QTEVURV9MTlMgfSAgICAgICAgICAgICAgICAgICAgICAgEiYKF3Vz",
90 "ZV9scF9zdHJvbmdfYnJhbmNoaW5nGB0gASgIOgVmYWxzZRIuCiJkZWNvbXBv",
91 "c2VyX251bV92YXJpYWJsZXNfdGhyZXNob2xkGB4gASgFOgI1MBIwCiVudW1f",
92 "Ym9wX3NvbHZlcnNfdXNlZF9ieV9kZWNvbXBvc2l0aW9uGB8gASgFOgExEjEK",
93 "JmRlY29tcG9zZWRfcHJvYmxlbV9taW5fdGltZV9pbl9zZWNvbmRzGCQgASgB",
94 "OgEwEigKGmd1aWRlZF9zYXRfY29uZmxpY3RzX2NodW5rGCIgASgFOgQxMDAw",
95 "EjAKJW1heF9scF9zb2x2ZV9mb3JfZmVhc2liaWxpdHlfcHJvYmxlbXMYKSAB",
96 "KAU6ATAiYgoZVGhyZWFkU3luY2hyb25pemF0aW9uVHlwZRIWChJOT19TWU5D",
97 "SFJPTklaQVRJT04QABITCg9TWU5DSFJPTklaRV9BTEwQARIYChRTWU5DSFJP",
98 "TklaRV9PTl9SSUdIVBACQi8KFmNvbS5nb29nbGUub3J0b29scy5ib3BQAaoC",
99 "Ekdvb2dsZS5PclRvb2xzLkJvcA=="));
100 descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
101 new pbr::FileDescriptor[] { },
102 new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
103 new pbr::GeneratedClrTypeInfo(typeof(global::Google.OrTools.Bop.BopOptimizerMethod), global::Google.OrTools.Bop.BopOptimizerMethod.Parser, new[]{ "Type" }, null, new[]{ typeof(global::Google.OrTools.Bop.BopOptimizerMethod.Types.OptimizerType) }, null, null),
104 new pbr::GeneratedClrTypeInfo(typeof(global::Google.OrTools.Bop.BopSolverOptimizerSet), global::Google.OrTools.Bop.BopSolverOptimizerSet.Parser, new[]{ "Methods" }, null, null, null, null),
105 new pbr::GeneratedClrTypeInfo(typeof(global::Google.OrTools.Bop.BopParameters), global::Google.OrTools.Bop.BopParameters.Parser, new[]{ "MaxTimeInSeconds", "MaxDeterministicTime", "LpMaxDeterministicTime", "MaxNumberOfConsecutiveFailingOptimizerCalls", "RelativeGapLimit", "MaxNumDecisionsInLs", "MaxNumBrokenConstraintsInLs", "LogSearchProgress", "ComputeEstimatedImpact", "PruneSearchTree", "SortConstraintsByNumTerms", "UseRandomLns", "RandomSeed", "NumRelaxedVars", "MaxNumberOfConflictsInRandomLns", "NumRandomLnsTries", "MaxNumberOfBacktracksInLs", "UseLpLns", "UseSatToChooseLnsNeighbourhood", "MaxNumberOfConflictsForQuickCheck", "UseSymmetry", "ExploitSymmetryInSatFirstSolution", "MaxNumberOfConflictsInRandomSolutionGeneration", "MaxNumberOfExploredAssignmentsPerTryInLs", "UseTranspositionTableInLs", "UsePotentialOneFlipRepairsInLs", "UseLearnedBinaryClausesInLp", "NumberOfSolvers", "SynchronizationType", "SolverOptimizerSets", "DefaultSolverOptimizerSets", "UseLpStrongBranching", "DecomposerNumVariablesThreshold", "NumBopSolversUsedByDecomposition", "DecomposedProblemMinTimeInSeconds", "GuidedSatConflictsChunk", "MaxLpSolveForFeasibilityProblems" }, null, new[]{ typeof(global::Google.OrTools.Bop.BopParameters.Types.ThreadSynchronizationType) }, null, null)
106 }));
107 }
108 #endregion
109
110 }
111 #region Messages
117 [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
118 public sealed partial class BopOptimizerMethod : pb::IMessage<BopOptimizerMethod>
119 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
120 , pb::IBufferMessage
121 #endif
122 {
123 private static readonly pb::MessageParser<BopOptimizerMethod> _parser = new pb::MessageParser<BopOptimizerMethod>(() => new BopOptimizerMethod());
124 private pb::UnknownFieldSet _unknownFields;
125 private int _hasBits0;
126 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
127 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
128 public static pb::MessageParser<BopOptimizerMethod> Parser { get { return _parser; } }
130 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
131 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
132 public static pbr::MessageDescriptor Descriptor {
133 get { return global::Google.OrTools.Bop.BopParametersReflection.Descriptor.MessageTypes[0]; }
134 }
135
136 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
137 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
138 pbr::MessageDescriptor pb::IMessage.Descriptor {
139 get { return Descriptor; }
140 }
141
142 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
143 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
144 public BopOptimizerMethod() {
145 OnConstruction();
146 }
147
148 partial void OnConstruction();
149
150 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
151 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
152 public BopOptimizerMethod(BopOptimizerMethod other) : this() {
153 _hasBits0 = other._hasBits0;
154 type_ = other.type_;
155 _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
156 }
157
158 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
159 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
160 public BopOptimizerMethod Clone() {
161 return new BopOptimizerMethod(this);
162 }
163
165 public const int TypeFieldNumber = 1;
166 private readonly static global::Google.OrTools.Bop.BopOptimizerMethod.Types.OptimizerType TypeDefaultValue = global::Google.OrTools.Bop.BopOptimizerMethod.Types.OptimizerType.SatCoreBased;
167
168 private global::Google.OrTools.Bop.BopOptimizerMethod.Types.OptimizerType type_;
169 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
170 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
171 public global::Google.OrTools.Bop.BopOptimizerMethod.Types.OptimizerType Type {
172 get { if ((_hasBits0 & 1) != 0) { return type_; } else { return TypeDefaultValue; } }
173 set {
174 _hasBits0 |= 1;
175 type_ = value;
176 }
177 }
179 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
180 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
181 public bool HasType {
182 get { return (_hasBits0 & 1) != 0; }
183 }
185 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
186 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
187 public void ClearType() {
188 _hasBits0 &= ~1;
189 }
190
191 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
192 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
193 public override bool Equals(object other) {
194 return Equals(other as BopOptimizerMethod);
195 }
196
197 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
198 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
199 public bool Equals(BopOptimizerMethod other) {
200 if (ReferenceEquals(other, null)) {
201 return false;
202 }
203 if (ReferenceEquals(other, this)) {
204 return true;
205 }
206 if (Type != other.Type) return false;
207 return Equals(_unknownFields, other._unknownFields);
208 }
209
210 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
211 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
212 public override int GetHashCode() {
213 int hash = 1;
214 if (HasType) hash ^= Type.GetHashCode();
215 if (_unknownFields != null) {
216 hash ^= _unknownFields.GetHashCode();
217 }
218 return hash;
219 }
220
221 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
222 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
223 public override string ToString() {
224 return pb::JsonFormatter.ToDiagnosticString(this);
225 }
226
227 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
228 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
229 public void WriteTo(pb::CodedOutputStream output) {
230 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
231 output.WriteRawMessage(this);
232 #else
233 if (HasType) {
234 output.WriteRawTag(8);
235 output.WriteEnum((int) Type);
236 }
237 if (_unknownFields != null) {
238 _unknownFields.WriteTo(output);
239 }
240 #endif
241 }
242
243 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
244 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
245 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
246 void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
247 if (HasType) {
248 output.WriteRawTag(8);
249 output.WriteEnum((int) Type);
250 }
251 if (_unknownFields != null) {
252 _unknownFields.WriteTo(ref output);
253 }
254 }
255 #endif
256
257 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
258 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
259 public int CalculateSize() {
260 int size = 0;
261 if (HasType) {
262 size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Type);
263 }
264 if (_unknownFields != null) {
265 size += _unknownFields.CalculateSize();
266 }
267 return size;
268 }
269
270 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
271 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
272 public void MergeFrom(BopOptimizerMethod other) {
273 if (other == null) {
274 return;
275 }
276 if (other.HasType) {
277 Type = other.Type;
278 }
279 _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
280 }
281
282 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
283 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
284 public void MergeFrom(pb::CodedInputStream input) {
285 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
286 input.ReadRawMessage(this);
287 #else
288 uint tag;
289 while ((tag = input.ReadTag()) != 0) {
290 switch(tag) {
291 default:
292 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
293 break;
294 case 8: {
295 Type = (global::Google.OrTools.Bop.BopOptimizerMethod.Types.OptimizerType) input.ReadEnum();
296 break;
297 }
298 }
299 }
300 #endif
301 }
302
303 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
304 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
305 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
306 void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
307 uint tag;
308 while ((tag = input.ReadTag()) != 0) {
309 switch(tag) {
310 default:
311 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
312 break;
313 case 8: {
314 Type = (global::Google.OrTools.Bop.BopOptimizerMethod.Types.OptimizerType) input.ReadEnum();
315 break;
316 }
317 }
318 }
319 }
320 #endif
321
322 #region Nested types
324 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
325 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
326 public static partial class Types {
327 public enum OptimizerType {
328 [pbr::OriginalName("SAT_CORE_BASED")] SatCoreBased = 0,
329 [pbr::OriginalName("SAT_LINEAR_SEARCH")] SatLinearSearch = 15,
330 [pbr::OriginalName("LINEAR_RELAXATION")] LinearRelaxation = 1,
331 [pbr::OriginalName("LOCAL_SEARCH")] LocalSearch = 2,
332 [pbr::OriginalName("RANDOM_FIRST_SOLUTION")] RandomFirstSolution = 3,
333 [pbr::OriginalName("RANDOM_CONSTRAINT_LNS")] RandomConstraintLns = 4,
334 [pbr::OriginalName("RANDOM_VARIABLE_LNS")] RandomVariableLns = 5,
335 [pbr::OriginalName("COMPLETE_LNS")] CompleteLns = 7,
336 [pbr::OriginalName("LP_FIRST_SOLUTION")] LpFirstSolution = 8,
337 [pbr::OriginalName("OBJECTIVE_FIRST_SOLUTION")] ObjectiveFirstSolution = 9,
338 [pbr::OriginalName("USER_GUIDED_FIRST_SOLUTION")] UserGuidedFirstSolution = 14,
339 [pbr::OriginalName("RANDOM_CONSTRAINT_LNS_GUIDED_BY_LP")] RandomConstraintLnsGuidedByLp = 11,
340 [pbr::OriginalName("RANDOM_VARIABLE_LNS_GUIDED_BY_LP")] RandomVariableLnsGuidedByLp = 12,
341 [pbr::OriginalName("RELATION_GRAPH_LNS")] RelationGraphLns = 16,
342 [pbr::OriginalName("RELATION_GRAPH_LNS_GUIDED_BY_LP")] RelationGraphLnsGuidedByLp = 17,
343 }
344
345 }
346 #endregion
347
348 }
349
355 [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
356 public sealed partial class BopSolverOptimizerSet : pb::IMessage<BopSolverOptimizerSet>
357 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
358 , pb::IBufferMessage
359 #endif
360 {
361 private static readonly pb::MessageParser<BopSolverOptimizerSet> _parser = new pb::MessageParser<BopSolverOptimizerSet>(() => new BopSolverOptimizerSet());
362 private pb::UnknownFieldSet _unknownFields;
363 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
364 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
365 public static pb::MessageParser<BopSolverOptimizerSet> Parser { get { return _parser; } }
367 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
368 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
369 public static pbr::MessageDescriptor Descriptor {
370 get { return global::Google.OrTools.Bop.BopParametersReflection.Descriptor.MessageTypes[1]; }
371 }
372
373 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
374 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
375 pbr::MessageDescriptor pb::IMessage.Descriptor {
376 get { return Descriptor; }
377 }
378
379 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
380 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
381 public BopSolverOptimizerSet() {
382 OnConstruction();
383 }
384
385 partial void OnConstruction();
386
387 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
388 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
389 public BopSolverOptimizerSet(BopSolverOptimizerSet other) : this() {
390 methods_ = other.methods_.Clone();
391 _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
392 }
393
394 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
395 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
396 public BopSolverOptimizerSet Clone() {
397 return new BopSolverOptimizerSet(this);
398 }
399
401 public const int MethodsFieldNumber = 1;
402 private static readonly pb::FieldCodec<global::Google.OrTools.Bop.BopOptimizerMethod> _repeated_methods_codec
403 = pb::FieldCodec.ForMessage(10, global::Google.OrTools.Bop.BopOptimizerMethod.Parser);
404 private readonly pbc::RepeatedField<global::Google.OrTools.Bop.BopOptimizerMethod> methods_ = new pbc::RepeatedField<global::Google.OrTools.Bop.BopOptimizerMethod>();
405 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
406 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
407 public pbc::RepeatedField<global::Google.OrTools.Bop.BopOptimizerMethod> Methods {
408 get { return methods_; }
409 }
410
411 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
412 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
413 public override bool Equals(object other) {
415 }
416
417 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
418 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
419 public bool Equals(BopSolverOptimizerSet other) {
420 if (ReferenceEquals(other, null)) {
421 return false;
422 }
423 if (ReferenceEquals(other, this)) {
424 return true;
425 }
426 if(!methods_.Equals(other.methods_)) return false;
427 return Equals(_unknownFields, other._unknownFields);
428 }
429
430 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
431 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
432 public override int GetHashCode() {
433 int hash = 1;
434 hash ^= methods_.GetHashCode();
435 if (_unknownFields != null) {
436 hash ^= _unknownFields.GetHashCode();
437 }
438 return hash;
439 }
440
441 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
442 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
443 public override string ToString() {
444 return pb::JsonFormatter.ToDiagnosticString(this);
445 }
446
447 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
448 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
449 public void WriteTo(pb::CodedOutputStream output) {
450 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
451 output.WriteRawMessage(this);
452 #else
453 methods_.WriteTo(output, _repeated_methods_codec);
454 if (_unknownFields != null) {
455 _unknownFields.WriteTo(output);
456 }
457 #endif
458 }
459
460 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
461 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
462 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
463 void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
464 methods_.WriteTo(ref output, _repeated_methods_codec);
465 if (_unknownFields != null) {
466 _unknownFields.WriteTo(ref output);
467 }
468 }
469 #endif
470
471 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
472 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
473 public int CalculateSize() {
474 int size = 0;
475 size += methods_.CalculateSize(_repeated_methods_codec);
476 if (_unknownFields != null) {
477 size += _unknownFields.CalculateSize();
478 }
479 return size;
480 }
481
482 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
483 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
484 public void MergeFrom(BopSolverOptimizerSet other) {
485 if (other == null) {
486 return;
487 }
488 methods_.Add(other.methods_);
489 _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
490 }
491
492 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
493 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
494 public void MergeFrom(pb::CodedInputStream input) {
495 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
496 input.ReadRawMessage(this);
497 #else
498 uint tag;
499 while ((tag = input.ReadTag()) != 0) {
500 switch(tag) {
501 default:
502 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
503 break;
504 case 10: {
505 methods_.AddEntriesFrom(input, _repeated_methods_codec);
506 break;
507 }
508 }
509 }
510 #endif
511 }
512
513 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
514 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
515 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
516 void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
517 uint tag;
518 while ((tag = input.ReadTag()) != 0) {
519 switch(tag) {
520 default:
521 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
522 break;
523 case 10: {
524 methods_.AddEntriesFrom(ref input, _repeated_methods_codec);
525 break;
526 }
527 }
528 }
529 }
530 #endif
531
532 }
533
540 [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
541 public sealed partial class BopParameters : pb::IMessage<BopParameters>
542 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
543 , pb::IBufferMessage
544 #endif
545 {
546 private static readonly pb::MessageParser<BopParameters> _parser = new pb::MessageParser<BopParameters>(() => new BopParameters());
547 private pb::UnknownFieldSet _unknownFields;
548 private int _hasBits0;
549 private int _hasBits1;
550 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
551 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
552 public static pb::MessageParser<BopParameters> Parser { get { return _parser; } }
553
554 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
555 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
556 public static pbr::MessageDescriptor Descriptor {
557 get { return global::Google.OrTools.Bop.BopParametersReflection.Descriptor.MessageTypes[2]; }
559
560 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
561 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
562 pbr::MessageDescriptor pb::IMessage.Descriptor {
563 get { return Descriptor; }
564 }
565
566 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
567 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
568 public BopParameters() {
569 OnConstruction();
571
572 partial void OnConstruction();
573
574 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
575 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
576 public BopParameters(BopParameters other) : this() {
577 _hasBits0 = other._hasBits0;
578 _hasBits1 = other._hasBits1;
579 maxTimeInSeconds_ = other.maxTimeInSeconds_;
580 maxDeterministicTime_ = other.maxDeterministicTime_;
581 lpMaxDeterministicTime_ = other.lpMaxDeterministicTime_;
582 maxNumberOfConsecutiveFailingOptimizerCalls_ = other.maxNumberOfConsecutiveFailingOptimizerCalls_;
583 relativeGapLimit_ = other.relativeGapLimit_;
584 maxNumDecisionsInLs_ = other.maxNumDecisionsInLs_;
585 maxNumBrokenConstraintsInLs_ = other.maxNumBrokenConstraintsInLs_;
586 logSearchProgress_ = other.logSearchProgress_;
587 computeEstimatedImpact_ = other.computeEstimatedImpact_;
588 pruneSearchTree_ = other.pruneSearchTree_;
589 sortConstraintsByNumTerms_ = other.sortConstraintsByNumTerms_;
590 useRandomLns_ = other.useRandomLns_;
591 randomSeed_ = other.randomSeed_;
592 numRelaxedVars_ = other.numRelaxedVars_;
593 maxNumberOfConflictsInRandomLns_ = other.maxNumberOfConflictsInRandomLns_;
594 numRandomLnsTries_ = other.numRandomLnsTries_;
595 maxNumberOfBacktracksInLs_ = other.maxNumberOfBacktracksInLs_;
596 useLpLns_ = other.useLpLns_;
597 useSatToChooseLnsNeighbourhood_ = other.useSatToChooseLnsNeighbourhood_;
598 maxNumberOfConflictsForQuickCheck_ = other.maxNumberOfConflictsForQuickCheck_;
599 useSymmetry_ = other.useSymmetry_;
600 exploitSymmetryInSatFirstSolution_ = other.exploitSymmetryInSatFirstSolution_;
601 maxNumberOfConflictsInRandomSolutionGeneration_ = other.maxNumberOfConflictsInRandomSolutionGeneration_;
602 maxNumberOfExploredAssignmentsPerTryInLs_ = other.maxNumberOfExploredAssignmentsPerTryInLs_;
603 useTranspositionTableInLs_ = other.useTranspositionTableInLs_;
604 usePotentialOneFlipRepairsInLs_ = other.usePotentialOneFlipRepairsInLs_;
605 useLearnedBinaryClausesInLp_ = other.useLearnedBinaryClausesInLp_;
606 numberOfSolvers_ = other.numberOfSolvers_;
607 synchronizationType_ = other.synchronizationType_;
608 solverOptimizerSets_ = other.solverOptimizerSets_.Clone();
609 defaultSolverOptimizerSets_ = other.defaultSolverOptimizerSets_;
610 useLpStrongBranching_ = other.useLpStrongBranching_;
611 decomposerNumVariablesThreshold_ = other.decomposerNumVariablesThreshold_;
612 numBopSolversUsedByDecomposition_ = other.numBopSolversUsedByDecomposition_;
613 decomposedProblemMinTimeInSeconds_ = other.decomposedProblemMinTimeInSeconds_;
614 guidedSatConflictsChunk_ = other.guidedSatConflictsChunk_;
615 maxLpSolveForFeasibilityProblems_ = other.maxLpSolveForFeasibilityProblems_;
616 _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
617 }
618
619 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
620 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
621 public BopParameters Clone() {
622 return new BopParameters(this);
624
626 public const int MaxTimeInSecondsFieldNumber = 1;
627 private readonly static double MaxTimeInSecondsDefaultValue = double.PositiveInfinity;
629 private double maxTimeInSeconds_;
634 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
635 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
636 public double MaxTimeInSeconds {
637 get { if ((_hasBits0 & 1) != 0) { return maxTimeInSeconds_; } else { return MaxTimeInSecondsDefaultValue; } }
638 set {
639 _hasBits0 |= 1;
640 maxTimeInSeconds_ = value;
641 }
642 }
644 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
645 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
646 public bool HasMaxTimeInSeconds {
647 get { return (_hasBits0 & 1) != 0; }
650 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
651 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
652 public void ClearMaxTimeInSeconds() {
653 _hasBits0 &= ~1;
655
657 public const int MaxDeterministicTimeFieldNumber = 27;
658 private readonly static double MaxDeterministicTimeDefaultValue = double.PositiveInfinity;
660 private double maxDeterministicTime_;
668 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
669 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
670 public double MaxDeterministicTime {
671 get { if ((_hasBits0 & 4194304) != 0) { return maxDeterministicTime_; } else { return MaxDeterministicTimeDefaultValue; } }
672 set {
673 _hasBits0 |= 4194304;
674 maxDeterministicTime_ = value;
675 }
676 }
678 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
679 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
680 public bool HasMaxDeterministicTime {
681 get { return (_hasBits0 & 4194304) != 0; }
684 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
685 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
686 public void ClearMaxDeterministicTime() {
687 _hasBits0 &= ~4194304;
689
691 public const int LpMaxDeterministicTimeFieldNumber = 37;
692 private readonly static double LpMaxDeterministicTimeDefaultValue = 1D;
694 private double lpMaxDeterministicTime_;
700 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
701 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
702 public double LpMaxDeterministicTime {
703 get { if ((_hasBits0 & 1073741824) != 0) { return lpMaxDeterministicTime_; } else { return LpMaxDeterministicTimeDefaultValue; } }
704 set {
705 _hasBits0 |= 1073741824;
706 lpMaxDeterministicTime_ = value;
707 }
708 }
710 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
711 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
712 public bool HasLpMaxDeterministicTime {
713 get { return (_hasBits0 & 1073741824) != 0; }
716 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
717 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
718 public void ClearLpMaxDeterministicTime() {
719 _hasBits0 &= ~1073741824;
721
723 public const int MaxNumberOfConsecutiveFailingOptimizerCallsFieldNumber = 35;
724 private readonly static int MaxNumberOfConsecutiveFailingOptimizerCallsDefaultValue = 0;
726 private int maxNumberOfConsecutiveFailingOptimizerCalls_;
734 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
735 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
736 public int MaxNumberOfConsecutiveFailingOptimizerCalls {
737 get { if ((_hasBits0 & 268435456) != 0) { return maxNumberOfConsecutiveFailingOptimizerCalls_; } else { return MaxNumberOfConsecutiveFailingOptimizerCallsDefaultValue; } }
738 set {
739 _hasBits0 |= 268435456;
740 maxNumberOfConsecutiveFailingOptimizerCalls_ = value;
741 }
742 }
744 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
745 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
746 public bool HasMaxNumberOfConsecutiveFailingOptimizerCalls {
747 get { return (_hasBits0 & 268435456) != 0; }
750 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
751 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
752 public void ClearMaxNumberOfConsecutiveFailingOptimizerCalls() {
753 _hasBits0 &= ~268435456;
755
757 public const int RelativeGapLimitFieldNumber = 28;
758 private readonly static double RelativeGapLimitDefaultValue = 0.0001D;
760 private double relativeGapLimit_;
768 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
769 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
770 public double RelativeGapLimit {
771 get { if ((_hasBits0 & 8388608) != 0) { return relativeGapLimit_; } else { return RelativeGapLimitDefaultValue; } }
772 set {
773 _hasBits0 |= 8388608;
774 relativeGapLimit_ = value;
775 }
776 }
778 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
779 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
780 public bool HasRelativeGapLimit {
781 get { return (_hasBits0 & 8388608) != 0; }
784 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
785 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
786 public void ClearRelativeGapLimit() {
787 _hasBits0 &= ~8388608;
789
791 public const int MaxNumDecisionsInLsFieldNumber = 2;
792 private readonly static int MaxNumDecisionsInLsDefaultValue = 4;
794 private int maxNumDecisionsInLs_;
799 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
800 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
801 public int MaxNumDecisionsInLs {
802 get { if ((_hasBits0 & 2) != 0) { return maxNumDecisionsInLs_; } else { return MaxNumDecisionsInLsDefaultValue; } }
803 set {
804 _hasBits0 |= 2;
805 maxNumDecisionsInLs_ = value;
806 }
807 }
809 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
810 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
811 public bool HasMaxNumDecisionsInLs {
812 get { return (_hasBits0 & 2) != 0; }
815 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
816 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
817 public void ClearMaxNumDecisionsInLs() {
818 _hasBits0 &= ~2;
820
822 public const int MaxNumBrokenConstraintsInLsFieldNumber = 38;
823 private readonly static int MaxNumBrokenConstraintsInLsDefaultValue = 2147483647;
825 private int maxNumBrokenConstraintsInLs_;
831 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
832 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
833 public int MaxNumBrokenConstraintsInLs {
834 get { if ((_hasBits0 & -2147483648) != 0) { return maxNumBrokenConstraintsInLs_; } else { return MaxNumBrokenConstraintsInLsDefaultValue; } }
835 set {
836 _hasBits0 |= -2147483648;
837 maxNumBrokenConstraintsInLs_ = value;
838 }
839 }
841 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
842 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
843 public bool HasMaxNumBrokenConstraintsInLs {
844 get { return (_hasBits0 & -2147483648) != 0; }
847 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
848 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
849 public void ClearMaxNumBrokenConstraintsInLs() {
850 _hasBits0 &= ~-2147483648;
852
854 public const int LogSearchProgressFieldNumber = 14;
855 private readonly static bool LogSearchProgressDefaultValue = false;
857 private bool logSearchProgress_;
861 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
862 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
863 public bool LogSearchProgress {
864 get { if ((_hasBits0 & 4096) != 0) { return logSearchProgress_; } else { return LogSearchProgressDefaultValue; } }
865 set {
866 _hasBits0 |= 4096;
867 logSearchProgress_ = value;
868 }
869 }
871 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
872 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
873 public bool HasLogSearchProgress {
874 get { return (_hasBits0 & 4096) != 0; }
877 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
878 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
879 public void ClearLogSearchProgress() {
880 _hasBits0 &= ~4096;
882
884 public const int ComputeEstimatedImpactFieldNumber = 3;
885 private readonly static bool ComputeEstimatedImpactDefaultValue = true;
887 private bool computeEstimatedImpact_;
891 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
892 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
893 public bool ComputeEstimatedImpact {
894 get { if ((_hasBits0 & 4) != 0) { return computeEstimatedImpact_; } else { return ComputeEstimatedImpactDefaultValue; } }
895 set {
896 _hasBits0 |= 4;
897 computeEstimatedImpact_ = value;
898 }
899 }
901 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
902 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
903 public bool HasComputeEstimatedImpact {
904 get { return (_hasBits0 & 4) != 0; }
907 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
908 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
909 public void ClearComputeEstimatedImpact() {
910 _hasBits0 &= ~4;
912
914 public const int PruneSearchTreeFieldNumber = 4;
915 private readonly static bool PruneSearchTreeDefaultValue = false;
917 private bool pruneSearchTree_;
921 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
922 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
923 public bool PruneSearchTree {
924 get { if ((_hasBits0 & 8) != 0) { return pruneSearchTree_; } else { return PruneSearchTreeDefaultValue; } }
925 set {
926 _hasBits0 |= 8;
927 pruneSearchTree_ = value;
928 }
929 }
931 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
932 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
933 public bool HasPruneSearchTree {
934 get { return (_hasBits0 & 8) != 0; }
937 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
938 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
939 public void ClearPruneSearchTree() {
940 _hasBits0 &= ~8;
942
944 public const int SortConstraintsByNumTermsFieldNumber = 5;
945 private readonly static bool SortConstraintsByNumTermsDefaultValue = false;
947 private bool sortConstraintsByNumTerms_;
952 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
953 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
954 public bool SortConstraintsByNumTerms {
955 get { if ((_hasBits0 & 16) != 0) { return sortConstraintsByNumTerms_; } else { return SortConstraintsByNumTermsDefaultValue; } }
956 set {
957 _hasBits0 |= 16;
958 sortConstraintsByNumTerms_ = value;
959 }
960 }
962 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
963 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
964 public bool HasSortConstraintsByNumTerms {
965 get { return (_hasBits0 & 16) != 0; }
968 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
969 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
970 public void ClearSortConstraintsByNumTerms() {
971 _hasBits0 &= ~16;
973
975 public const int UseRandomLnsFieldNumber = 6;
976 private readonly static bool UseRandomLnsDefaultValue = true;
978 private bool useRandomLns_;
982 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
983 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
984 public bool UseRandomLns {
985 get { if ((_hasBits0 & 32) != 0) { return useRandomLns_; } else { return UseRandomLnsDefaultValue; } }
986 set {
987 _hasBits0 |= 32;
988 useRandomLns_ = value;
989 }
990 }
992 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
993 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
994 public bool HasUseRandomLns {
995 get { return (_hasBits0 & 32) != 0; }
998 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
999 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1000 public void ClearUseRandomLns() {
1001 _hasBits0 &= ~32;
1003
1005 public const int RandomSeedFieldNumber = 7;
1006 private readonly static int RandomSeedDefaultValue = 8;
1008 private int randomSeed_;
1016 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1017 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1018 public int RandomSeed {
1019 get { if ((_hasBits0 & 64) != 0) { return randomSeed_; } else { return RandomSeedDefaultValue; } }
1020 set {
1021 _hasBits0 |= 64;
1022 randomSeed_ = value;
1023 }
1024 }
1026 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1027 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1028 public bool HasRandomSeed {
1029 get { return (_hasBits0 & 64) != 0; }
1030 }
1032 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1033 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1034 public void ClearRandomSeed() {
1035 _hasBits0 &= ~64;
1036 }
1039 public const int NumRelaxedVarsFieldNumber = 8;
1040 private readonly static int NumRelaxedVarsDefaultValue = 10;
1041
1042 private int numRelaxedVars_;
1046 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1047 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1048 public int NumRelaxedVars {
1049 get { if ((_hasBits0 & 128) != 0) { return numRelaxedVars_; } else { return NumRelaxedVarsDefaultValue; } }
1050 set {
1051 _hasBits0 |= 128;
1052 numRelaxedVars_ = value;
1053 }
1054 }
1056 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1057 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1058 public bool HasNumRelaxedVars {
1059 get { return (_hasBits0 & 128) != 0; }
1060 }
1062 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1063 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1064 public void ClearNumRelaxedVars() {
1065 _hasBits0 &= ~128;
1066 }
1069 public const int MaxNumberOfConflictsInRandomLnsFieldNumber = 9;
1070 private readonly static int MaxNumberOfConflictsInRandomLnsDefaultValue = 2500;
1071
1072 private int maxNumberOfConflictsInRandomLns_;
1077 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1078 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1079 public int MaxNumberOfConflictsInRandomLns {
1080 get { if ((_hasBits0 & 256) != 0) { return maxNumberOfConflictsInRandomLns_; } else { return MaxNumberOfConflictsInRandomLnsDefaultValue; } }
1081 set {
1082 _hasBits0 |= 256;
1083 maxNumberOfConflictsInRandomLns_ = value;
1084 }
1085 }
1087 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1088 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1089 public bool HasMaxNumberOfConflictsInRandomLns {
1090 get { return (_hasBits0 & 256) != 0; }
1091 }
1093 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1094 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1095 public void ClearMaxNumberOfConflictsInRandomLns() {
1096 _hasBits0 &= ~256;
1097 }
1100 public const int NumRandomLnsTriesFieldNumber = 10;
1101 private readonly static int NumRandomLnsTriesDefaultValue = 1;
1102
1103 private int numRandomLnsTries_;
1107 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1108 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1109 public int NumRandomLnsTries {
1110 get { if ((_hasBits0 & 512) != 0) { return numRandomLnsTries_; } else { return NumRandomLnsTriesDefaultValue; } }
1111 set {
1112 _hasBits0 |= 512;
1113 numRandomLnsTries_ = value;
1114 }
1115 }
1117 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1118 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1119 public bool HasNumRandomLnsTries {
1120 get { return (_hasBits0 & 512) != 0; }
1121 }
1123 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1124 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1125 public void ClearNumRandomLnsTries() {
1126 _hasBits0 &= ~512;
1127 }
1130 public const int MaxNumberOfBacktracksInLsFieldNumber = 11;
1131 private readonly static long MaxNumberOfBacktracksInLsDefaultValue = 100000000L;
1132
1133 private long maxNumberOfBacktracksInLs_;
1138 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1139 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1140 public long MaxNumberOfBacktracksInLs {
1141 get { if ((_hasBits0 & 1024) != 0) { return maxNumberOfBacktracksInLs_; } else { return MaxNumberOfBacktracksInLsDefaultValue; } }
1142 set {
1143 _hasBits0 |= 1024;
1144 maxNumberOfBacktracksInLs_ = value;
1145 }
1146 }
1148 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1149 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1150 public bool HasMaxNumberOfBacktracksInLs {
1151 get { return (_hasBits0 & 1024) != 0; }
1152 }
1154 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1155 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1156 public void ClearMaxNumberOfBacktracksInLs() {
1157 _hasBits0 &= ~1024;
1158 }
1161 public const int UseLpLnsFieldNumber = 12;
1162 private readonly static bool UseLpLnsDefaultValue = true;
1163
1164 private bool useLpLns_;
1168 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1169 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1170 public bool UseLpLns {
1171 get { if ((_hasBits0 & 2048) != 0) { return useLpLns_; } else { return UseLpLnsDefaultValue; } }
1172 set {
1173 _hasBits0 |= 2048;
1174 useLpLns_ = value;
1175 }
1176 }
1178 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1179 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1180 public bool HasUseLpLns {
1181 get { return (_hasBits0 & 2048) != 0; }
1182 }
1184 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1185 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1186 public void ClearUseLpLns() {
1187 _hasBits0 &= ~2048;
1188 }
1191 public const int UseSatToChooseLnsNeighbourhoodFieldNumber = 15;
1192 private readonly static bool UseSatToChooseLnsNeighbourhoodDefaultValue = true;
1193
1194 private bool useSatToChooseLnsNeighbourhood_;
1198 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1199 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1200 public bool UseSatToChooseLnsNeighbourhood {
1201 get { if ((_hasBits0 & 8192) != 0) { return useSatToChooseLnsNeighbourhood_; } else { return UseSatToChooseLnsNeighbourhoodDefaultValue; } }
1202 set {
1203 _hasBits0 |= 8192;
1204 useSatToChooseLnsNeighbourhood_ = value;
1205 }
1206 }
1208 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1209 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1210 public bool HasUseSatToChooseLnsNeighbourhood {
1211 get { return (_hasBits0 & 8192) != 0; }
1212 }
1214 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1215 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1216 public void ClearUseSatToChooseLnsNeighbourhood() {
1217 _hasBits0 &= ~8192;
1218 }
1221 public const int MaxNumberOfConflictsForQuickCheckFieldNumber = 16;
1222 private readonly static int MaxNumberOfConflictsForQuickCheckDefaultValue = 10;
1223
1224 private int maxNumberOfConflictsForQuickCheck_;
1229 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1230 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1231 public int MaxNumberOfConflictsForQuickCheck {
1232 get { if ((_hasBits0 & 16384) != 0) { return maxNumberOfConflictsForQuickCheck_; } else { return MaxNumberOfConflictsForQuickCheckDefaultValue; } }
1233 set {
1234 _hasBits0 |= 16384;
1235 maxNumberOfConflictsForQuickCheck_ = value;
1236 }
1237 }
1239 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1240 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1241 public bool HasMaxNumberOfConflictsForQuickCheck {
1242 get { return (_hasBits0 & 16384) != 0; }
1243 }
1245 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1246 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1247 public void ClearMaxNumberOfConflictsForQuickCheck() {
1248 _hasBits0 &= ~16384;
1249 }
1252 public const int UseSymmetryFieldNumber = 17;
1253 private readonly static bool UseSymmetryDefaultValue = false;
1254
1255 private bool useSymmetry_;
1263 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1264 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1265 public bool UseSymmetry {
1266 get { if ((_hasBits0 & 32768) != 0) { return useSymmetry_; } else { return UseSymmetryDefaultValue; } }
1267 set {
1268 _hasBits0 |= 32768;
1269 useSymmetry_ = value;
1270 }
1271 }
1273 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1274 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1275 public bool HasUseSymmetry {
1276 get { return (_hasBits0 & 32768) != 0; }
1277 }
1279 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1280 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1281 public void ClearUseSymmetry() {
1282 _hasBits0 &= ~32768;
1283 }
1284
1286 public const int ExploitSymmetryInSatFirstSolutionFieldNumber = 40;
1287 private readonly static bool ExploitSymmetryInSatFirstSolutionDefaultValue = false;
1288
1289 private bool exploitSymmetryInSatFirstSolution_;
1297 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1298 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1299 public bool ExploitSymmetryInSatFirstSolution {
1300 get { if ((_hasBits1 & 2) != 0) { return exploitSymmetryInSatFirstSolution_; } else { return ExploitSymmetryInSatFirstSolutionDefaultValue; } }
1301 set {
1302 _hasBits1 |= 2;
1303 exploitSymmetryInSatFirstSolution_ = value;
1304 }
1305 }
1307 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1308 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1309 public bool HasExploitSymmetryInSatFirstSolution {
1310 get { return (_hasBits1 & 2) != 0; }
1311 }
1313 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1314 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1315 public void ClearExploitSymmetryInSatFirstSolution() {
1316 _hasBits1 &= ~2;
1317 }
1318
1320 public const int MaxNumberOfConflictsInRandomSolutionGenerationFieldNumber = 20;
1321 private readonly static int MaxNumberOfConflictsInRandomSolutionGenerationDefaultValue = 500;
1322
1323 private int maxNumberOfConflictsInRandomSolutionGeneration_;
1327 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1328 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1329 public int MaxNumberOfConflictsInRandomSolutionGeneration {
1330 get { if ((_hasBits0 & 65536) != 0) { return maxNumberOfConflictsInRandomSolutionGeneration_; } else { return MaxNumberOfConflictsInRandomSolutionGenerationDefaultValue; } }
1331 set {
1332 _hasBits0 |= 65536;
1333 maxNumberOfConflictsInRandomSolutionGeneration_ = value;
1334 }
1335 }
1337 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1338 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1339 public bool HasMaxNumberOfConflictsInRandomSolutionGeneration {
1340 get { return (_hasBits0 & 65536) != 0; }
1341 }
1343 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1344 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1345 public void ClearMaxNumberOfConflictsInRandomSolutionGeneration() {
1346 _hasBits0 &= ~65536;
1347 }
1348
1350 public const int MaxNumberOfExploredAssignmentsPerTryInLsFieldNumber = 21;
1351 private readonly static long MaxNumberOfExploredAssignmentsPerTryInLsDefaultValue = 10000L;
1352
1353 private long maxNumberOfExploredAssignmentsPerTryInLs_;
1360 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1361 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1362 public long MaxNumberOfExploredAssignmentsPerTryInLs {
1363 get { if ((_hasBits0 & 131072) != 0) { return maxNumberOfExploredAssignmentsPerTryInLs_; } else { return MaxNumberOfExploredAssignmentsPerTryInLsDefaultValue; } }
1364 set {
1365 _hasBits0 |= 131072;
1366 maxNumberOfExploredAssignmentsPerTryInLs_ = value;
1367 }
1368 }
1370 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1371 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1372 public bool HasMaxNumberOfExploredAssignmentsPerTryInLs {
1373 get { return (_hasBits0 & 131072) != 0; }
1374 }
1376 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1377 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1378 public void ClearMaxNumberOfExploredAssignmentsPerTryInLs() {
1379 _hasBits0 &= ~131072;
1380 }
1381
1383 public const int UseTranspositionTableInLsFieldNumber = 22;
1384 private readonly static bool UseTranspositionTableInLsDefaultValue = true;
1385
1386 private bool useTranspositionTableInLs_;
1393 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1394 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1395 public bool UseTranspositionTableInLs {
1396 get { if ((_hasBits0 & 262144) != 0) { return useTranspositionTableInLs_; } else { return UseTranspositionTableInLsDefaultValue; } }
1397 set {
1398 _hasBits0 |= 262144;
1399 useTranspositionTableInLs_ = value;
1400 }
1401 }
1403 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1404 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1405 public bool HasUseTranspositionTableInLs {
1406 get { return (_hasBits0 & 262144) != 0; }
1407 }
1409 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1410 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1411 public void ClearUseTranspositionTableInLs() {
1412 _hasBits0 &= ~262144;
1413 }
1414
1416 public const int UsePotentialOneFlipRepairsInLsFieldNumber = 39;
1417 private readonly static bool UsePotentialOneFlipRepairsInLsDefaultValue = false;
1418
1419 private bool usePotentialOneFlipRepairsInLs_;
1425 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1426 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1427 public bool UsePotentialOneFlipRepairsInLs {
1428 get { if ((_hasBits1 & 1) != 0) { return usePotentialOneFlipRepairsInLs_; } else { return UsePotentialOneFlipRepairsInLsDefaultValue; } }
1429 set {
1430 _hasBits1 |= 1;
1431 usePotentialOneFlipRepairsInLs_ = value;
1432 }
1433 }
1435 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1436 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1437 public bool HasUsePotentialOneFlipRepairsInLs {
1438 get { return (_hasBits1 & 1) != 0; }
1439 }
1441 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1442 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1443 public void ClearUsePotentialOneFlipRepairsInLs() {
1444 _hasBits1 &= ~1;
1445 }
1446
1448 public const int UseLearnedBinaryClausesInLpFieldNumber = 23;
1449 private readonly static bool UseLearnedBinaryClausesInLpDefaultValue = true;
1450
1451 private bool useLearnedBinaryClausesInLp_;
1455 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1456 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1457 public bool UseLearnedBinaryClausesInLp {
1458 get { if ((_hasBits0 & 524288) != 0) { return useLearnedBinaryClausesInLp_; } else { return UseLearnedBinaryClausesInLpDefaultValue; } }
1459 set {
1460 _hasBits0 |= 524288;
1461 useLearnedBinaryClausesInLp_ = value;
1462 }
1463 }
1465 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1466 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1467 public bool HasUseLearnedBinaryClausesInLp {
1468 get { return (_hasBits0 & 524288) != 0; }
1469 }
1471 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1472 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1473 public void ClearUseLearnedBinaryClausesInLp() {
1474 _hasBits0 &= ~524288;
1475 }
1476
1478 public const int NumberOfSolversFieldNumber = 24;
1479 private readonly static int NumberOfSolversDefaultValue = 1;
1480
1481 private int numberOfSolvers_;
1487 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1488 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1489 public int NumberOfSolvers {
1490 get { if ((_hasBits0 & 1048576) != 0) { return numberOfSolvers_; } else { return NumberOfSolversDefaultValue; } }
1491 set {
1492 _hasBits0 |= 1048576;
1493 numberOfSolvers_ = value;
1494 }
1495 }
1497 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1498 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1499 public bool HasNumberOfSolvers {
1500 get { return (_hasBits0 & 1048576) != 0; }
1501 }
1503 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1504 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1505 public void ClearNumberOfSolvers() {
1506 _hasBits0 &= ~1048576;
1507 }
1508
1510 public const int SynchronizationTypeFieldNumber = 25;
1511 private readonly static global::Google.OrTools.Bop.BopParameters.Types.ThreadSynchronizationType SynchronizationTypeDefaultValue = global::Google.OrTools.Bop.BopParameters.Types.ThreadSynchronizationType.NoSynchronization;
1512
1513 private global::Google.OrTools.Bop.BopParameters.Types.ThreadSynchronizationType synchronizationType_;
1514 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1515 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1516 public global::Google.OrTools.Bop.BopParameters.Types.ThreadSynchronizationType SynchronizationType {
1517 get { if ((_hasBits0 & 2097152) != 0) { return synchronizationType_; } else { return SynchronizationTypeDefaultValue; } }
1518 set {
1519 _hasBits0 |= 2097152;
1520 synchronizationType_ = value;
1521 }
1522 }
1524 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1525 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1526 public bool HasSynchronizationType {
1527 get { return (_hasBits0 & 2097152) != 0; }
1528 }
1530 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1531 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1532 public void ClearSynchronizationType() {
1533 _hasBits0 &= ~2097152;
1534 }
1535
1537 public const int SolverOptimizerSetsFieldNumber = 26;
1538 private static readonly pb::FieldCodec<global::Google.OrTools.Bop.BopSolverOptimizerSet> _repeated_solverOptimizerSets_codec
1539 = pb::FieldCodec.ForMessage(210, global::Google.OrTools.Bop.BopSolverOptimizerSet.Parser);
1540 private readonly pbc::RepeatedField<global::Google.OrTools.Bop.BopSolverOptimizerSet> solverOptimizerSets_ = new pbc::RepeatedField<global::Google.OrTools.Bop.BopSolverOptimizerSet>();
1547 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1548 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1549 public pbc::RepeatedField<global::Google.OrTools.Bop.BopSolverOptimizerSet> SolverOptimizerSets {
1550 get { return solverOptimizerSets_; }
1551 }
1552
1554 public const int DefaultSolverOptimizerSetsFieldNumber = 33;
1555 private readonly static string DefaultSolverOptimizerSetsDefaultValue = global::System.Text.Encoding.UTF8.GetString(global::System.Convert.FromBase64String("bWV0aG9kczp7dHlwZTpMT0NBTF9TRUFSQ0ggfSAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpSQU5ET01fRklSU1RfU09MVVRJT04gfSAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpMSU5FQVJfUkVMQVhBVElPTiB9ICAgICAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpMUF9GSVJTVF9TT0xVVElPTiB9ICAgICAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpPQkpFQ1RJVkVfRklSU1RfU09MVVRJT04gfSAgICAgICAgICAgbWV0aG9kczp7dHlwZTpVU0VSX0dVSURFRF9GSVJTVF9TT0xVVElPTiB9ICAgICAgICAgbWV0aG9kczp7dHlwZTpSQU5ET01fQ09OU1RSQUlOVF9MTlNfR1VJREVEX0JZX0xQIH0gbWV0aG9kczp7dHlwZTpSQU5ET01fVkFSSUFCTEVfTE5TX0dVSURFRF9CWV9MUCB9ICAgbWV0aG9kczp7dHlwZTpSRUxBVElPTl9HUkFQSF9MTlMgfSAgICAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpSRUxBVElPTl9HUkFQSF9MTlNfR1VJREVEX0JZX0xQIH0gICAgbWV0aG9kczp7dHlwZTpSQU5ET01fQ09OU1RSQUlOVF9MTlMgfSAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpSQU5ET01fVkFSSUFCTEVfTE5TIH0gICAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpTQVRfQ09SRV9CQVNFRCB9ICAgICAgICAgICAgICAgICAgICAgbWV0aG9kczp7dHlwZTpDT01QTEVURV9MTlMgfSAgICAgICAgICAgICAgICAgICAgICAg"), 0, 714);
1556
1557 private string defaultSolverOptimizerSets_;
1558 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1559 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1560 public string DefaultSolverOptimizerSets {
1561 get { return defaultSolverOptimizerSets_ ?? DefaultSolverOptimizerSetsDefaultValue; }
1562 set {
1563 defaultSolverOptimizerSets_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
1565 }
1567 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1568 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1569 public bool HasDefaultSolverOptimizerSets {
1570 get { return defaultSolverOptimizerSets_ != null; }
1571 }
1573 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1574 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1575 public void ClearDefaultSolverOptimizerSets() {
1576 defaultSolverOptimizerSets_ = null;
1577 }
1578
1580 public const int UseLpStrongBranchingFieldNumber = 29;
1581 private readonly static bool UseLpStrongBranchingDefaultValue = false;
1582
1583 private bool useLpStrongBranching_;
1595 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1596 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1597 public bool UseLpStrongBranching {
1598 get { if ((_hasBits0 & 16777216) != 0) { return useLpStrongBranching_; } else { return UseLpStrongBranchingDefaultValue; } }
1599 set {
1600 _hasBits0 |= 16777216;
1601 useLpStrongBranching_ = value;
1602 }
1603 }
1605 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1606 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1607 public bool HasUseLpStrongBranching {
1608 get { return (_hasBits0 & 16777216) != 0; }
1609 }
1611 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1612 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1613 public void ClearUseLpStrongBranching() {
1614 _hasBits0 &= ~16777216;
1615 }
1616
1618 public const int DecomposerNumVariablesThresholdFieldNumber = 30;
1619 private readonly static int DecomposerNumVariablesThresholdDefaultValue = 50;
1620
1621 private int decomposerNumVariablesThreshold_;
1626 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1627 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1628 public int DecomposerNumVariablesThreshold {
1629 get { if ((_hasBits0 & 33554432) != 0) { return decomposerNumVariablesThreshold_; } else { return DecomposerNumVariablesThresholdDefaultValue; } }
1630 set {
1631 _hasBits0 |= 33554432;
1632 decomposerNumVariablesThreshold_ = value;
1633 }
1634 }
1636 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1637 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1638 public bool HasDecomposerNumVariablesThreshold {
1639 get { return (_hasBits0 & 33554432) != 0; }
1640 }
1642 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1643 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1644 public void ClearDecomposerNumVariablesThreshold() {
1645 _hasBits0 &= ~33554432;
1646 }
1647
1649 public const int NumBopSolversUsedByDecompositionFieldNumber = 31;
1650 private readonly static int NumBopSolversUsedByDecompositionDefaultValue = 1;
1651
1652 private int numBopSolversUsedByDecomposition_;
1658 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1659 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1660 public int NumBopSolversUsedByDecomposition {
1661 get { if ((_hasBits0 & 67108864) != 0) { return numBopSolversUsedByDecomposition_; } else { return NumBopSolversUsedByDecompositionDefaultValue; } }
1662 set {
1663 _hasBits0 |= 67108864;
1664 numBopSolversUsedByDecomposition_ = value;
1665 }
1666 }
1668 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1669 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1670 public bool HasNumBopSolversUsedByDecomposition {
1671 get { return (_hasBits0 & 67108864) != 0; }
1672 }
1674 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1675 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1676 public void ClearNumBopSolversUsedByDecomposition() {
1677 _hasBits0 &= ~67108864;
1678 }
1679
1681 public const int DecomposedProblemMinTimeInSecondsFieldNumber = 36;
1682 private readonly static double DecomposedProblemMinTimeInSecondsDefaultValue = 0D;
1683
1684 private double decomposedProblemMinTimeInSeconds_;
1691 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1692 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1693 public double DecomposedProblemMinTimeInSeconds {
1694 get { if ((_hasBits0 & 536870912) != 0) { return decomposedProblemMinTimeInSeconds_; } else { return DecomposedProblemMinTimeInSecondsDefaultValue; } }
1695 set {
1696 _hasBits0 |= 536870912;
1697 decomposedProblemMinTimeInSeconds_ = value;
1698 }
1699 }
1701 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1702 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1703 public bool HasDecomposedProblemMinTimeInSeconds {
1704 get { return (_hasBits0 & 536870912) != 0; }
1705 }
1707 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1708 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1709 public void ClearDecomposedProblemMinTimeInSeconds() {
1710 _hasBits0 &= ~536870912;
1711 }
1712
1714 public const int GuidedSatConflictsChunkFieldNumber = 34;
1715 private readonly static int GuidedSatConflictsChunkDefaultValue = 1000;
1716
1717 private int guidedSatConflictsChunk_;
1723 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1724 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1725 public int GuidedSatConflictsChunk {
1726 get { if ((_hasBits0 & 134217728) != 0) { return guidedSatConflictsChunk_; } else { return GuidedSatConflictsChunkDefaultValue; } }
1727 set {
1728 _hasBits0 |= 134217728;
1729 guidedSatConflictsChunk_ = value;
1730 }
1731 }
1733 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1734 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1735 public bool HasGuidedSatConflictsChunk {
1736 get { return (_hasBits0 & 134217728) != 0; }
1737 }
1739 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1740 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1741 public void ClearGuidedSatConflictsChunk() {
1742 _hasBits0 &= ~134217728;
1743 }
1744
1746 public const int MaxLpSolveForFeasibilityProblemsFieldNumber = 41;
1747 private readonly static int MaxLpSolveForFeasibilityProblemsDefaultValue = 0;
1748
1749 private int maxLpSolveForFeasibilityProblems_;
1756 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1757 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1758 public int MaxLpSolveForFeasibilityProblems {
1759 get { if ((_hasBits1 & 4) != 0) { return maxLpSolveForFeasibilityProblems_; } else { return MaxLpSolveForFeasibilityProblemsDefaultValue; } }
1760 set {
1761 _hasBits1 |= 4;
1762 maxLpSolveForFeasibilityProblems_ = value;
1763 }
1764 }
1766 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1767 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1768 public bool HasMaxLpSolveForFeasibilityProblems {
1769 get { return (_hasBits1 & 4) != 0; }
1770 }
1772 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1773 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1774 public void ClearMaxLpSolveForFeasibilityProblems() {
1775 _hasBits1 &= ~4;
1776 }
1777
1778 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1779 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1780 public override bool Equals(object other) {
1781 return Equals(other as BopParameters);
1782 }
1783
1784 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1785 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1786 public bool Equals(BopParameters other) {
1787 if (ReferenceEquals(other, null)) {
1788 return false;
1789 }
1790 if (ReferenceEquals(other, this)) {
1791 return true;
1792 }
1793 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MaxTimeInSeconds, other.MaxTimeInSeconds)) return false;
1794 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(MaxDeterministicTime, other.MaxDeterministicTime)) return false;
1795 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(LpMaxDeterministicTime, other.LpMaxDeterministicTime)) return false;
1796 if (MaxNumberOfConsecutiveFailingOptimizerCalls != other.MaxNumberOfConsecutiveFailingOptimizerCalls) return false;
1797 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(RelativeGapLimit, other.RelativeGapLimit)) return false;
1798 if (MaxNumDecisionsInLs != other.MaxNumDecisionsInLs) return false;
1799 if (MaxNumBrokenConstraintsInLs != other.MaxNumBrokenConstraintsInLs) return false;
1800 if (LogSearchProgress != other.LogSearchProgress) return false;
1801 if (ComputeEstimatedImpact != other.ComputeEstimatedImpact) return false;
1802 if (PruneSearchTree != other.PruneSearchTree) return false;
1803 if (SortConstraintsByNumTerms != other.SortConstraintsByNumTerms) return false;
1804 if (UseRandomLns != other.UseRandomLns) return false;
1805 if (RandomSeed != other.RandomSeed) return false;
1806 if (NumRelaxedVars != other.NumRelaxedVars) return false;
1807 if (MaxNumberOfConflictsInRandomLns != other.MaxNumberOfConflictsInRandomLns) return false;
1808 if (NumRandomLnsTries != other.NumRandomLnsTries) return false;
1809 if (MaxNumberOfBacktracksInLs != other.MaxNumberOfBacktracksInLs) return false;
1810 if (UseLpLns != other.UseLpLns) return false;
1811 if (UseSatToChooseLnsNeighbourhood != other.UseSatToChooseLnsNeighbourhood) return false;
1812 if (MaxNumberOfConflictsForQuickCheck != other.MaxNumberOfConflictsForQuickCheck) return false;
1813 if (UseSymmetry != other.UseSymmetry) return false;
1814 if (ExploitSymmetryInSatFirstSolution != other.ExploitSymmetryInSatFirstSolution) return false;
1815 if (MaxNumberOfConflictsInRandomSolutionGeneration != other.MaxNumberOfConflictsInRandomSolutionGeneration) return false;
1816 if (MaxNumberOfExploredAssignmentsPerTryInLs != other.MaxNumberOfExploredAssignmentsPerTryInLs) return false;
1817 if (UseTranspositionTableInLs != other.UseTranspositionTableInLs) return false;
1818 if (UsePotentialOneFlipRepairsInLs != other.UsePotentialOneFlipRepairsInLs) return false;
1819 if (UseLearnedBinaryClausesInLp != other.UseLearnedBinaryClausesInLp) return false;
1820 if (NumberOfSolvers != other.NumberOfSolvers) return false;
1821 if (SynchronizationType != other.SynchronizationType) return false;
1822 if(!solverOptimizerSets_.Equals(other.solverOptimizerSets_)) return false;
1823 if (DefaultSolverOptimizerSets != other.DefaultSolverOptimizerSets) return false;
1824 if (UseLpStrongBranching != other.UseLpStrongBranching) return false;
1825 if (DecomposerNumVariablesThreshold != other.DecomposerNumVariablesThreshold) return false;
1826 if (NumBopSolversUsedByDecomposition != other.NumBopSolversUsedByDecomposition) return false;
1827 if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals(DecomposedProblemMinTimeInSeconds, other.DecomposedProblemMinTimeInSeconds)) return false;
1828 if (GuidedSatConflictsChunk != other.GuidedSatConflictsChunk) return false;
1829 if (MaxLpSolveForFeasibilityProblems != other.MaxLpSolveForFeasibilityProblems) return false;
1830 return Equals(_unknownFields, other._unknownFields);
1831 }
1832
1833 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1834 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1835 public override int GetHashCode() {
1836 int hash = 1;
1837 if (HasMaxTimeInSeconds) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MaxTimeInSeconds);
1838 if (HasMaxDeterministicTime) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(MaxDeterministicTime);
1839 if (HasLpMaxDeterministicTime) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(LpMaxDeterministicTime);
1840 if (HasMaxNumberOfConsecutiveFailingOptimizerCalls) hash ^= MaxNumberOfConsecutiveFailingOptimizerCalls.GetHashCode();
1841 if (HasRelativeGapLimit) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(RelativeGapLimit);
1842 if (HasMaxNumDecisionsInLs) hash ^= MaxNumDecisionsInLs.GetHashCode();
1843 if (HasMaxNumBrokenConstraintsInLs) hash ^= MaxNumBrokenConstraintsInLs.GetHashCode();
1844 if (HasLogSearchProgress) hash ^= LogSearchProgress.GetHashCode();
1845 if (HasComputeEstimatedImpact) hash ^= ComputeEstimatedImpact.GetHashCode();
1846 if (HasPruneSearchTree) hash ^= PruneSearchTree.GetHashCode();
1847 if (HasSortConstraintsByNumTerms) hash ^= SortConstraintsByNumTerms.GetHashCode();
1848 if (HasUseRandomLns) hash ^= UseRandomLns.GetHashCode();
1849 if (HasRandomSeed) hash ^= RandomSeed.GetHashCode();
1850 if (HasNumRelaxedVars) hash ^= NumRelaxedVars.GetHashCode();
1851 if (HasMaxNumberOfConflictsInRandomLns) hash ^= MaxNumberOfConflictsInRandomLns.GetHashCode();
1852 if (HasNumRandomLnsTries) hash ^= NumRandomLnsTries.GetHashCode();
1853 if (HasMaxNumberOfBacktracksInLs) hash ^= MaxNumberOfBacktracksInLs.GetHashCode();
1854 if (HasUseLpLns) hash ^= UseLpLns.GetHashCode();
1855 if (HasUseSatToChooseLnsNeighbourhood) hash ^= UseSatToChooseLnsNeighbourhood.GetHashCode();
1856 if (HasMaxNumberOfConflictsForQuickCheck) hash ^= MaxNumberOfConflictsForQuickCheck.GetHashCode();
1857 if (HasUseSymmetry) hash ^= UseSymmetry.GetHashCode();
1858 if (HasExploitSymmetryInSatFirstSolution) hash ^= ExploitSymmetryInSatFirstSolution.GetHashCode();
1859 if (HasMaxNumberOfConflictsInRandomSolutionGeneration) hash ^= MaxNumberOfConflictsInRandomSolutionGeneration.GetHashCode();
1860 if (HasMaxNumberOfExploredAssignmentsPerTryInLs) hash ^= MaxNumberOfExploredAssignmentsPerTryInLs.GetHashCode();
1861 if (HasUseTranspositionTableInLs) hash ^= UseTranspositionTableInLs.GetHashCode();
1862 if (HasUsePotentialOneFlipRepairsInLs) hash ^= UsePotentialOneFlipRepairsInLs.GetHashCode();
1863 if (HasUseLearnedBinaryClausesInLp) hash ^= UseLearnedBinaryClausesInLp.GetHashCode();
1864 if (HasNumberOfSolvers) hash ^= NumberOfSolvers.GetHashCode();
1865 if (HasSynchronizationType) hash ^= SynchronizationType.GetHashCode();
1866 hash ^= solverOptimizerSets_.GetHashCode();
1867 if (HasDefaultSolverOptimizerSets) hash ^= DefaultSolverOptimizerSets.GetHashCode();
1868 if (HasUseLpStrongBranching) hash ^= UseLpStrongBranching.GetHashCode();
1869 if (HasDecomposerNumVariablesThreshold) hash ^= DecomposerNumVariablesThreshold.GetHashCode();
1870 if (HasNumBopSolversUsedByDecomposition) hash ^= NumBopSolversUsedByDecomposition.GetHashCode();
1871 if (HasDecomposedProblemMinTimeInSeconds) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(DecomposedProblemMinTimeInSeconds);
1872 if (HasGuidedSatConflictsChunk) hash ^= GuidedSatConflictsChunk.GetHashCode();
1873 if (HasMaxLpSolveForFeasibilityProblems) hash ^= MaxLpSolveForFeasibilityProblems.GetHashCode();
1874 if (_unknownFields != null) {
1875 hash ^= _unknownFields.GetHashCode();
1876 }
1877 return hash;
1878 }
1879
1880 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1881 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1882 public override string ToString() {
1883 return pb::JsonFormatter.ToDiagnosticString(this);
1884 }
1885
1886 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1887 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1888 public void WriteTo(pb::CodedOutputStream output) {
1889 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1890 output.WriteRawMessage(this);
1891 #else
1892 if (HasMaxTimeInSeconds) {
1893 output.WriteRawTag(9);
1894 output.WriteDouble(MaxTimeInSeconds);
1895 }
1896 if (HasMaxNumDecisionsInLs) {
1897 output.WriteRawTag(16);
1898 output.WriteInt32(MaxNumDecisionsInLs);
1899 }
1900 if (HasComputeEstimatedImpact) {
1901 output.WriteRawTag(24);
1902 output.WriteBool(ComputeEstimatedImpact);
1903 }
1904 if (HasPruneSearchTree) {
1905 output.WriteRawTag(32);
1906 output.WriteBool(PruneSearchTree);
1907 }
1908 if (HasSortConstraintsByNumTerms) {
1909 output.WriteRawTag(40);
1910 output.WriteBool(SortConstraintsByNumTerms);
1911 }
1912 if (HasUseRandomLns) {
1913 output.WriteRawTag(48);
1914 output.WriteBool(UseRandomLns);
1915 }
1916 if (HasRandomSeed) {
1917 output.WriteRawTag(56);
1918 output.WriteInt32(RandomSeed);
1919 }
1920 if (HasNumRelaxedVars) {
1921 output.WriteRawTag(64);
1922 output.WriteInt32(NumRelaxedVars);
1923 }
1924 if (HasMaxNumberOfConflictsInRandomLns) {
1925 output.WriteRawTag(72);
1926 output.WriteInt32(MaxNumberOfConflictsInRandomLns);
1927 }
1928 if (HasNumRandomLnsTries) {
1929 output.WriteRawTag(80);
1930 output.WriteInt32(NumRandomLnsTries);
1931 }
1932 if (HasMaxNumberOfBacktracksInLs) {
1933 output.WriteRawTag(88);
1934 output.WriteInt64(MaxNumberOfBacktracksInLs);
1935 }
1936 if (HasUseLpLns) {
1937 output.WriteRawTag(96);
1938 output.WriteBool(UseLpLns);
1939 }
1940 if (HasLogSearchProgress) {
1941 output.WriteRawTag(112);
1942 output.WriteBool(LogSearchProgress);
1943 }
1944 if (HasUseSatToChooseLnsNeighbourhood) {
1945 output.WriteRawTag(120);
1946 output.WriteBool(UseSatToChooseLnsNeighbourhood);
1947 }
1948 if (HasMaxNumberOfConflictsForQuickCheck) {
1949 output.WriteRawTag(128, 1);
1950 output.WriteInt32(MaxNumberOfConflictsForQuickCheck);
1951 }
1952 if (HasUseSymmetry) {
1953 output.WriteRawTag(136, 1);
1954 output.WriteBool(UseSymmetry);
1955 }
1956 if (HasMaxNumberOfConflictsInRandomSolutionGeneration) {
1957 output.WriteRawTag(160, 1);
1958 output.WriteInt32(MaxNumberOfConflictsInRandomSolutionGeneration);
1959 }
1960 if (HasMaxNumberOfExploredAssignmentsPerTryInLs) {
1961 output.WriteRawTag(168, 1);
1962 output.WriteInt64(MaxNumberOfExploredAssignmentsPerTryInLs);
1963 }
1964 if (HasUseTranspositionTableInLs) {
1965 output.WriteRawTag(176, 1);
1966 output.WriteBool(UseTranspositionTableInLs);
1967 }
1968 if (HasUseLearnedBinaryClausesInLp) {
1969 output.WriteRawTag(184, 1);
1970 output.WriteBool(UseLearnedBinaryClausesInLp);
1971 }
1972 if (HasNumberOfSolvers) {
1973 output.WriteRawTag(192, 1);
1974 output.WriteInt32(NumberOfSolvers);
1975 }
1976 if (HasSynchronizationType) {
1977 output.WriteRawTag(200, 1);
1978 output.WriteEnum((int) SynchronizationType);
1979 }
1980 solverOptimizerSets_.WriteTo(output, _repeated_solverOptimizerSets_codec);
1981 if (HasMaxDeterministicTime) {
1982 output.WriteRawTag(217, 1);
1983 output.WriteDouble(MaxDeterministicTime);
1984 }
1985 if (HasRelativeGapLimit) {
1986 output.WriteRawTag(225, 1);
1987 output.WriteDouble(RelativeGapLimit);
1988 }
1989 if (HasUseLpStrongBranching) {
1990 output.WriteRawTag(232, 1);
1991 output.WriteBool(UseLpStrongBranching);
1992 }
1993 if (HasDecomposerNumVariablesThreshold) {
1994 output.WriteRawTag(240, 1);
1995 output.WriteInt32(DecomposerNumVariablesThreshold);
1996 }
1997 if (HasNumBopSolversUsedByDecomposition) {
1998 output.WriteRawTag(248, 1);
1999 output.WriteInt32(NumBopSolversUsedByDecomposition);
2000 }
2001 if (HasDefaultSolverOptimizerSets) {
2002 output.WriteRawTag(138, 2);
2003 output.WriteString(DefaultSolverOptimizerSets);
2004 }
2005 if (HasGuidedSatConflictsChunk) {
2006 output.WriteRawTag(144, 2);
2007 output.WriteInt32(GuidedSatConflictsChunk);
2008 }
2009 if (HasMaxNumberOfConsecutiveFailingOptimizerCalls) {
2010 output.WriteRawTag(152, 2);
2011 output.WriteInt32(MaxNumberOfConsecutiveFailingOptimizerCalls);
2012 }
2013 if (HasDecomposedProblemMinTimeInSeconds) {
2014 output.WriteRawTag(161, 2);
2015 output.WriteDouble(DecomposedProblemMinTimeInSeconds);
2016 }
2017 if (HasLpMaxDeterministicTime) {
2018 output.WriteRawTag(169, 2);
2019 output.WriteDouble(LpMaxDeterministicTime);
2020 }
2021 if (HasMaxNumBrokenConstraintsInLs) {
2022 output.WriteRawTag(176, 2);
2023 output.WriteInt32(MaxNumBrokenConstraintsInLs);
2024 }
2025 if (HasUsePotentialOneFlipRepairsInLs) {
2026 output.WriteRawTag(184, 2);
2027 output.WriteBool(UsePotentialOneFlipRepairsInLs);
2028 }
2029 if (HasExploitSymmetryInSatFirstSolution) {
2030 output.WriteRawTag(192, 2);
2031 output.WriteBool(ExploitSymmetryInSatFirstSolution);
2032 }
2033 if (HasMaxLpSolveForFeasibilityProblems) {
2034 output.WriteRawTag(200, 2);
2035 output.WriteInt32(MaxLpSolveForFeasibilityProblems);
2036 }
2037 if (_unknownFields != null) {
2038 _unknownFields.WriteTo(output);
2039 }
2040 #endif
2041 }
2042
2043 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2044 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2045 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2046 void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
2047 if (HasMaxTimeInSeconds) {
2048 output.WriteRawTag(9);
2049 output.WriteDouble(MaxTimeInSeconds);
2050 }
2051 if (HasMaxNumDecisionsInLs) {
2052 output.WriteRawTag(16);
2053 output.WriteInt32(MaxNumDecisionsInLs);
2054 }
2055 if (HasComputeEstimatedImpact) {
2056 output.WriteRawTag(24);
2057 output.WriteBool(ComputeEstimatedImpact);
2058 }
2059 if (HasPruneSearchTree) {
2060 output.WriteRawTag(32);
2061 output.WriteBool(PruneSearchTree);
2062 }
2063 if (HasSortConstraintsByNumTerms) {
2064 output.WriteRawTag(40);
2065 output.WriteBool(SortConstraintsByNumTerms);
2066 }
2067 if (HasUseRandomLns) {
2068 output.WriteRawTag(48);
2069 output.WriteBool(UseRandomLns);
2070 }
2071 if (HasRandomSeed) {
2072 output.WriteRawTag(56);
2073 output.WriteInt32(RandomSeed);
2074 }
2075 if (HasNumRelaxedVars) {
2076 output.WriteRawTag(64);
2077 output.WriteInt32(NumRelaxedVars);
2078 }
2079 if (HasMaxNumberOfConflictsInRandomLns) {
2080 output.WriteRawTag(72);
2081 output.WriteInt32(MaxNumberOfConflictsInRandomLns);
2082 }
2083 if (HasNumRandomLnsTries) {
2084 output.WriteRawTag(80);
2085 output.WriteInt32(NumRandomLnsTries);
2086 }
2087 if (HasMaxNumberOfBacktracksInLs) {
2088 output.WriteRawTag(88);
2089 output.WriteInt64(MaxNumberOfBacktracksInLs);
2090 }
2091 if (HasUseLpLns) {
2092 output.WriteRawTag(96);
2093 output.WriteBool(UseLpLns);
2094 }
2095 if (HasLogSearchProgress) {
2096 output.WriteRawTag(112);
2097 output.WriteBool(LogSearchProgress);
2098 }
2099 if (HasUseSatToChooseLnsNeighbourhood) {
2100 output.WriteRawTag(120);
2101 output.WriteBool(UseSatToChooseLnsNeighbourhood);
2102 }
2103 if (HasMaxNumberOfConflictsForQuickCheck) {
2104 output.WriteRawTag(128, 1);
2105 output.WriteInt32(MaxNumberOfConflictsForQuickCheck);
2106 }
2107 if (HasUseSymmetry) {
2108 output.WriteRawTag(136, 1);
2109 output.WriteBool(UseSymmetry);
2110 }
2111 if (HasMaxNumberOfConflictsInRandomSolutionGeneration) {
2112 output.WriteRawTag(160, 1);
2113 output.WriteInt32(MaxNumberOfConflictsInRandomSolutionGeneration);
2114 }
2115 if (HasMaxNumberOfExploredAssignmentsPerTryInLs) {
2116 output.WriteRawTag(168, 1);
2117 output.WriteInt64(MaxNumberOfExploredAssignmentsPerTryInLs);
2118 }
2119 if (HasUseTranspositionTableInLs) {
2120 output.WriteRawTag(176, 1);
2121 output.WriteBool(UseTranspositionTableInLs);
2122 }
2123 if (HasUseLearnedBinaryClausesInLp) {
2124 output.WriteRawTag(184, 1);
2125 output.WriteBool(UseLearnedBinaryClausesInLp);
2126 }
2127 if (HasNumberOfSolvers) {
2128 output.WriteRawTag(192, 1);
2129 output.WriteInt32(NumberOfSolvers);
2130 }
2131 if (HasSynchronizationType) {
2132 output.WriteRawTag(200, 1);
2133 output.WriteEnum((int) SynchronizationType);
2134 }
2135 solverOptimizerSets_.WriteTo(ref output, _repeated_solverOptimizerSets_codec);
2136 if (HasMaxDeterministicTime) {
2137 output.WriteRawTag(217, 1);
2138 output.WriteDouble(MaxDeterministicTime);
2139 }
2140 if (HasRelativeGapLimit) {
2141 output.WriteRawTag(225, 1);
2142 output.WriteDouble(RelativeGapLimit);
2143 }
2144 if (HasUseLpStrongBranching) {
2145 output.WriteRawTag(232, 1);
2146 output.WriteBool(UseLpStrongBranching);
2147 }
2148 if (HasDecomposerNumVariablesThreshold) {
2149 output.WriteRawTag(240, 1);
2150 output.WriteInt32(DecomposerNumVariablesThreshold);
2151 }
2152 if (HasNumBopSolversUsedByDecomposition) {
2153 output.WriteRawTag(248, 1);
2154 output.WriteInt32(NumBopSolversUsedByDecomposition);
2155 }
2156 if (HasDefaultSolverOptimizerSets) {
2157 output.WriteRawTag(138, 2);
2158 output.WriteString(DefaultSolverOptimizerSets);
2159 }
2160 if (HasGuidedSatConflictsChunk) {
2161 output.WriteRawTag(144, 2);
2162 output.WriteInt32(GuidedSatConflictsChunk);
2163 }
2164 if (HasMaxNumberOfConsecutiveFailingOptimizerCalls) {
2165 output.WriteRawTag(152, 2);
2166 output.WriteInt32(MaxNumberOfConsecutiveFailingOptimizerCalls);
2167 }
2168 if (HasDecomposedProblemMinTimeInSeconds) {
2169 output.WriteRawTag(161, 2);
2170 output.WriteDouble(DecomposedProblemMinTimeInSeconds);
2171 }
2172 if (HasLpMaxDeterministicTime) {
2173 output.WriteRawTag(169, 2);
2174 output.WriteDouble(LpMaxDeterministicTime);
2175 }
2176 if (HasMaxNumBrokenConstraintsInLs) {
2177 output.WriteRawTag(176, 2);
2178 output.WriteInt32(MaxNumBrokenConstraintsInLs);
2179 }
2180 if (HasUsePotentialOneFlipRepairsInLs) {
2181 output.WriteRawTag(184, 2);
2182 output.WriteBool(UsePotentialOneFlipRepairsInLs);
2183 }
2184 if (HasExploitSymmetryInSatFirstSolution) {
2185 output.WriteRawTag(192, 2);
2186 output.WriteBool(ExploitSymmetryInSatFirstSolution);
2187 }
2188 if (HasMaxLpSolveForFeasibilityProblems) {
2189 output.WriteRawTag(200, 2);
2190 output.WriteInt32(MaxLpSolveForFeasibilityProblems);
2191 }
2192 if (_unknownFields != null) {
2193 _unknownFields.WriteTo(ref output);
2194 }
2195 }
2196 #endif
2197
2198 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2199 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2200 public int CalculateSize() {
2201 int size = 0;
2202 if (HasMaxTimeInSeconds) {
2203 size += 1 + 8;
2205 if (HasMaxDeterministicTime) {
2206 size += 2 + 8;
2207 }
2208 if (HasLpMaxDeterministicTime) {
2209 size += 2 + 8;
2210 }
2211 if (HasMaxNumberOfConsecutiveFailingOptimizerCalls) {
2212 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxNumberOfConsecutiveFailingOptimizerCalls);
2213 }
2214 if (HasRelativeGapLimit) {
2215 size += 2 + 8;
2216 }
2217 if (HasMaxNumDecisionsInLs) {
2218 size += 1 + pb::CodedOutputStream.ComputeInt32Size(MaxNumDecisionsInLs);
2219 }
2220 if (HasMaxNumBrokenConstraintsInLs) {
2221 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxNumBrokenConstraintsInLs);
2222 }
2223 if (HasLogSearchProgress) {
2224 size += 1 + 1;
2225 }
2226 if (HasComputeEstimatedImpact) {
2227 size += 1 + 1;
2228 }
2229 if (HasPruneSearchTree) {
2230 size += 1 + 1;
2231 }
2232 if (HasSortConstraintsByNumTerms) {
2233 size += 1 + 1;
2234 }
2235 if (HasUseRandomLns) {
2236 size += 1 + 1;
2237 }
2238 if (HasRandomSeed) {
2239 size += 1 + pb::CodedOutputStream.ComputeInt32Size(RandomSeed);
2240 }
2241 if (HasNumRelaxedVars) {
2242 size += 1 + pb::CodedOutputStream.ComputeInt32Size(NumRelaxedVars);
2243 }
2244 if (HasMaxNumberOfConflictsInRandomLns) {
2245 size += 1 + pb::CodedOutputStream.ComputeInt32Size(MaxNumberOfConflictsInRandomLns);
2246 }
2247 if (HasNumRandomLnsTries) {
2248 size += 1 + pb::CodedOutputStream.ComputeInt32Size(NumRandomLnsTries);
2249 }
2250 if (HasMaxNumberOfBacktracksInLs) {
2251 size += 1 + pb::CodedOutputStream.ComputeInt64Size(MaxNumberOfBacktracksInLs);
2252 }
2253 if (HasUseLpLns) {
2254 size += 1 + 1;
2255 }
2256 if (HasUseSatToChooseLnsNeighbourhood) {
2257 size += 1 + 1;
2258 }
2259 if (HasMaxNumberOfConflictsForQuickCheck) {
2260 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxNumberOfConflictsForQuickCheck);
2261 }
2262 if (HasUseSymmetry) {
2263 size += 2 + 1;
2264 }
2265 if (HasExploitSymmetryInSatFirstSolution) {
2266 size += 2 + 1;
2267 }
2268 if (HasMaxNumberOfConflictsInRandomSolutionGeneration) {
2269 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxNumberOfConflictsInRandomSolutionGeneration);
2270 }
2271 if (HasMaxNumberOfExploredAssignmentsPerTryInLs) {
2272 size += 2 + pb::CodedOutputStream.ComputeInt64Size(MaxNumberOfExploredAssignmentsPerTryInLs);
2273 }
2274 if (HasUseTranspositionTableInLs) {
2275 size += 2 + 1;
2276 }
2277 if (HasUsePotentialOneFlipRepairsInLs) {
2278 size += 2 + 1;
2279 }
2280 if (HasUseLearnedBinaryClausesInLp) {
2281 size += 2 + 1;
2282 }
2283 if (HasNumberOfSolvers) {
2284 size += 2 + pb::CodedOutputStream.ComputeInt32Size(NumberOfSolvers);
2285 }
2286 if (HasSynchronizationType) {
2287 size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) SynchronizationType);
2288 }
2289 size += solverOptimizerSets_.CalculateSize(_repeated_solverOptimizerSets_codec);
2290 if (HasDefaultSolverOptimizerSets) {
2291 size += 2 + pb::CodedOutputStream.ComputeStringSize(DefaultSolverOptimizerSets);
2292 }
2293 if (HasUseLpStrongBranching) {
2294 size += 2 + 1;
2295 }
2296 if (HasDecomposerNumVariablesThreshold) {
2297 size += 2 + pb::CodedOutputStream.ComputeInt32Size(DecomposerNumVariablesThreshold);
2298 }
2299 if (HasNumBopSolversUsedByDecomposition) {
2300 size += 2 + pb::CodedOutputStream.ComputeInt32Size(NumBopSolversUsedByDecomposition);
2301 }
2302 if (HasDecomposedProblemMinTimeInSeconds) {
2303 size += 2 + 8;
2304 }
2305 if (HasGuidedSatConflictsChunk) {
2306 size += 2 + pb::CodedOutputStream.ComputeInt32Size(GuidedSatConflictsChunk);
2307 }
2308 if (HasMaxLpSolveForFeasibilityProblems) {
2309 size += 2 + pb::CodedOutputStream.ComputeInt32Size(MaxLpSolveForFeasibilityProblems);
2310 }
2311 if (_unknownFields != null) {
2312 size += _unknownFields.CalculateSize();
2313 }
2314 return size;
2315 }
2316
2317 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2318 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2319 public void MergeFrom(BopParameters other) {
2320 if (other == null) {
2321 return;
2322 }
2323 if (other.HasMaxTimeInSeconds) {
2324 MaxTimeInSeconds = other.MaxTimeInSeconds;
2325 }
2326 if (other.HasMaxDeterministicTime) {
2327 MaxDeterministicTime = other.MaxDeterministicTime;
2328 }
2329 if (other.HasLpMaxDeterministicTime) {
2330 LpMaxDeterministicTime = other.LpMaxDeterministicTime;
2331 }
2332 if (other.HasMaxNumberOfConsecutiveFailingOptimizerCalls) {
2333 MaxNumberOfConsecutiveFailingOptimizerCalls = other.MaxNumberOfConsecutiveFailingOptimizerCalls;
2334 }
2335 if (other.HasRelativeGapLimit) {
2336 RelativeGapLimit = other.RelativeGapLimit;
2337 }
2338 if (other.HasMaxNumDecisionsInLs) {
2339 MaxNumDecisionsInLs = other.MaxNumDecisionsInLs;
2340 }
2341 if (other.HasMaxNumBrokenConstraintsInLs) {
2342 MaxNumBrokenConstraintsInLs = other.MaxNumBrokenConstraintsInLs;
2343 }
2344 if (other.HasLogSearchProgress) {
2345 LogSearchProgress = other.LogSearchProgress;
2346 }
2347 if (other.HasComputeEstimatedImpact) {
2348 ComputeEstimatedImpact = other.ComputeEstimatedImpact;
2349 }
2350 if (other.HasPruneSearchTree) {
2351 PruneSearchTree = other.PruneSearchTree;
2352 }
2353 if (other.HasSortConstraintsByNumTerms) {
2354 SortConstraintsByNumTerms = other.SortConstraintsByNumTerms;
2355 }
2356 if (other.HasUseRandomLns) {
2357 UseRandomLns = other.UseRandomLns;
2358 }
2359 if (other.HasRandomSeed) {
2360 RandomSeed = other.RandomSeed;
2361 }
2362 if (other.HasNumRelaxedVars) {
2363 NumRelaxedVars = other.NumRelaxedVars;
2364 }
2365 if (other.HasMaxNumberOfConflictsInRandomLns) {
2366 MaxNumberOfConflictsInRandomLns = other.MaxNumberOfConflictsInRandomLns;
2367 }
2368 if (other.HasNumRandomLnsTries) {
2369 NumRandomLnsTries = other.NumRandomLnsTries;
2370 }
2371 if (other.HasMaxNumberOfBacktracksInLs) {
2372 MaxNumberOfBacktracksInLs = other.MaxNumberOfBacktracksInLs;
2373 }
2374 if (other.HasUseLpLns) {
2375 UseLpLns = other.UseLpLns;
2376 }
2377 if (other.HasUseSatToChooseLnsNeighbourhood) {
2378 UseSatToChooseLnsNeighbourhood = other.UseSatToChooseLnsNeighbourhood;
2379 }
2380 if (other.HasMaxNumberOfConflictsForQuickCheck) {
2381 MaxNumberOfConflictsForQuickCheck = other.MaxNumberOfConflictsForQuickCheck;
2382 }
2383 if (other.HasUseSymmetry) {
2384 UseSymmetry = other.UseSymmetry;
2385 }
2386 if (other.HasExploitSymmetryInSatFirstSolution) {
2387 ExploitSymmetryInSatFirstSolution = other.ExploitSymmetryInSatFirstSolution;
2388 }
2389 if (other.HasMaxNumberOfConflictsInRandomSolutionGeneration) {
2390 MaxNumberOfConflictsInRandomSolutionGeneration = other.MaxNumberOfConflictsInRandomSolutionGeneration;
2391 }
2392 if (other.HasMaxNumberOfExploredAssignmentsPerTryInLs) {
2393 MaxNumberOfExploredAssignmentsPerTryInLs = other.MaxNumberOfExploredAssignmentsPerTryInLs;
2394 }
2395 if (other.HasUseTranspositionTableInLs) {
2396 UseTranspositionTableInLs = other.UseTranspositionTableInLs;
2397 }
2398 if (other.HasUsePotentialOneFlipRepairsInLs) {
2399 UsePotentialOneFlipRepairsInLs = other.UsePotentialOneFlipRepairsInLs;
2400 }
2401 if (other.HasUseLearnedBinaryClausesInLp) {
2402 UseLearnedBinaryClausesInLp = other.UseLearnedBinaryClausesInLp;
2403 }
2404 if (other.HasNumberOfSolvers) {
2405 NumberOfSolvers = other.NumberOfSolvers;
2406 }
2407 if (other.HasSynchronizationType) {
2408 SynchronizationType = other.SynchronizationType;
2409 }
2410 solverOptimizerSets_.Add(other.solverOptimizerSets_);
2411 if (other.HasDefaultSolverOptimizerSets) {
2412 DefaultSolverOptimizerSets = other.DefaultSolverOptimizerSets;
2413 }
2414 if (other.HasUseLpStrongBranching) {
2415 UseLpStrongBranching = other.UseLpStrongBranching;
2416 }
2417 if (other.HasDecomposerNumVariablesThreshold) {
2418 DecomposerNumVariablesThreshold = other.DecomposerNumVariablesThreshold;
2419 }
2420 if (other.HasNumBopSolversUsedByDecomposition) {
2421 NumBopSolversUsedByDecomposition = other.NumBopSolversUsedByDecomposition;
2422 }
2423 if (other.HasDecomposedProblemMinTimeInSeconds) {
2424 DecomposedProblemMinTimeInSeconds = other.DecomposedProblemMinTimeInSeconds;
2425 }
2426 if (other.HasGuidedSatConflictsChunk) {
2427 GuidedSatConflictsChunk = other.GuidedSatConflictsChunk;
2428 }
2429 if (other.HasMaxLpSolveForFeasibilityProblems) {
2430 MaxLpSolveForFeasibilityProblems = other.MaxLpSolveForFeasibilityProblems;
2431 }
2432 _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
2433 }
2434
2435 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2436 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2437 public void MergeFrom(pb::CodedInputStream input) {
2438 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2439 input.ReadRawMessage(this);
2440 #else
2441 uint tag;
2442 while ((tag = input.ReadTag()) != 0) {
2443 switch(tag) {
2444 default:
2445 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
2446 break;
2447 case 9: {
2448 MaxTimeInSeconds = input.ReadDouble();
2449 break;
2450 }
2451 case 16: {
2452 MaxNumDecisionsInLs = input.ReadInt32();
2453 break;
2454 }
2455 case 24: {
2456 ComputeEstimatedImpact = input.ReadBool();
2457 break;
2458 }
2459 case 32: {
2460 PruneSearchTree = input.ReadBool();
2461 break;
2462 }
2463 case 40: {
2464 SortConstraintsByNumTerms = input.ReadBool();
2465 break;
2466 }
2467 case 48: {
2468 UseRandomLns = input.ReadBool();
2469 break;
2470 }
2471 case 56: {
2472 RandomSeed = input.ReadInt32();
2473 break;
2474 }
2475 case 64: {
2476 NumRelaxedVars = input.ReadInt32();
2477 break;
2478 }
2479 case 72: {
2480 MaxNumberOfConflictsInRandomLns = input.ReadInt32();
2481 break;
2482 }
2483 case 80: {
2484 NumRandomLnsTries = input.ReadInt32();
2485 break;
2486 }
2487 case 88: {
2488 MaxNumberOfBacktracksInLs = input.ReadInt64();
2489 break;
2490 }
2491 case 96: {
2492 UseLpLns = input.ReadBool();
2493 break;
2494 }
2495 case 112: {
2496 LogSearchProgress = input.ReadBool();
2497 break;
2498 }
2499 case 120: {
2500 UseSatToChooseLnsNeighbourhood = input.ReadBool();
2501 break;
2502 }
2503 case 128: {
2504 MaxNumberOfConflictsForQuickCheck = input.ReadInt32();
2505 break;
2506 }
2507 case 136: {
2508 UseSymmetry = input.ReadBool();
2509 break;
2510 }
2511 case 160: {
2512 MaxNumberOfConflictsInRandomSolutionGeneration = input.ReadInt32();
2513 break;
2514 }
2515 case 168: {
2516 MaxNumberOfExploredAssignmentsPerTryInLs = input.ReadInt64();
2517 break;
2518 }
2519 case 176: {
2520 UseTranspositionTableInLs = input.ReadBool();
2521 break;
2522 }
2523 case 184: {
2524 UseLearnedBinaryClausesInLp = input.ReadBool();
2525 break;
2526 }
2527 case 192: {
2528 NumberOfSolvers = input.ReadInt32();
2529 break;
2530 }
2531 case 200: {
2532 SynchronizationType = (global::Google.OrTools.Bop.BopParameters.Types.ThreadSynchronizationType) input.ReadEnum();
2533 break;
2534 }
2535 case 210: {
2536 solverOptimizerSets_.AddEntriesFrom(input, _repeated_solverOptimizerSets_codec);
2537 break;
2538 }
2539 case 217: {
2540 MaxDeterministicTime = input.ReadDouble();
2541 break;
2542 }
2543 case 225: {
2544 RelativeGapLimit = input.ReadDouble();
2545 break;
2546 }
2547 case 232: {
2548 UseLpStrongBranching = input.ReadBool();
2549 break;
2550 }
2551 case 240: {
2552 DecomposerNumVariablesThreshold = input.ReadInt32();
2553 break;
2554 }
2555 case 248: {
2556 NumBopSolversUsedByDecomposition = input.ReadInt32();
2557 break;
2558 }
2559 case 266: {
2560 DefaultSolverOptimizerSets = input.ReadString();
2561 break;
2562 }
2563 case 272: {
2564 GuidedSatConflictsChunk = input.ReadInt32();
2565 break;
2566 }
2567 case 280: {
2568 MaxNumberOfConsecutiveFailingOptimizerCalls = input.ReadInt32();
2569 break;
2570 }
2571 case 289: {
2572 DecomposedProblemMinTimeInSeconds = input.ReadDouble();
2573 break;
2574 }
2575 case 297: {
2576 LpMaxDeterministicTime = input.ReadDouble();
2577 break;
2578 }
2579 case 304: {
2580 MaxNumBrokenConstraintsInLs = input.ReadInt32();
2581 break;
2582 }
2583 case 312: {
2584 UsePotentialOneFlipRepairsInLs = input.ReadBool();
2585 break;
2586 }
2587 case 320: {
2588 ExploitSymmetryInSatFirstSolution = input.ReadBool();
2589 break;
2590 }
2591 case 328: {
2592 MaxLpSolveForFeasibilityProblems = input.ReadInt32();
2593 break;
2594 }
2595 }
2596 }
2597 #endif
2598 }
2599
2600 #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2601 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2602 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2603 void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
2604 uint tag;
2605 while ((tag = input.ReadTag()) != 0) {
2606 switch(tag) {
2607 default:
2608 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
2609 break;
2610 case 9: {
2611 MaxTimeInSeconds = input.ReadDouble();
2612 break;
2613 }
2614 case 16: {
2615 MaxNumDecisionsInLs = input.ReadInt32();
2616 break;
2617 }
2618 case 24: {
2619 ComputeEstimatedImpact = input.ReadBool();
2620 break;
2621 }
2622 case 32: {
2623 PruneSearchTree = input.ReadBool();
2624 break;
2625 }
2626 case 40: {
2627 SortConstraintsByNumTerms = input.ReadBool();
2628 break;
2629 }
2630 case 48: {
2631 UseRandomLns = input.ReadBool();
2632 break;
2633 }
2634 case 56: {
2635 RandomSeed = input.ReadInt32();
2636 break;
2637 }
2638 case 64: {
2639 NumRelaxedVars = input.ReadInt32();
2640 break;
2641 }
2642 case 72: {
2643 MaxNumberOfConflictsInRandomLns = input.ReadInt32();
2644 break;
2645 }
2646 case 80: {
2647 NumRandomLnsTries = input.ReadInt32();
2648 break;
2649 }
2650 case 88: {
2651 MaxNumberOfBacktracksInLs = input.ReadInt64();
2652 break;
2653 }
2654 case 96: {
2655 UseLpLns = input.ReadBool();
2656 break;
2657 }
2658 case 112: {
2659 LogSearchProgress = input.ReadBool();
2660 break;
2661 }
2662 case 120: {
2663 UseSatToChooseLnsNeighbourhood = input.ReadBool();
2664 break;
2665 }
2666 case 128: {
2667 MaxNumberOfConflictsForQuickCheck = input.ReadInt32();
2668 break;
2669 }
2670 case 136: {
2671 UseSymmetry = input.ReadBool();
2672 break;
2673 }
2674 case 160: {
2675 MaxNumberOfConflictsInRandomSolutionGeneration = input.ReadInt32();
2676 break;
2677 }
2678 case 168: {
2679 MaxNumberOfExploredAssignmentsPerTryInLs = input.ReadInt64();
2680 break;
2681 }
2682 case 176: {
2683 UseTranspositionTableInLs = input.ReadBool();
2684 break;
2685 }
2686 case 184: {
2687 UseLearnedBinaryClausesInLp = input.ReadBool();
2688 break;
2689 }
2690 case 192: {
2691 NumberOfSolvers = input.ReadInt32();
2692 break;
2693 }
2694 case 200: {
2695 SynchronizationType = (global::Google.OrTools.Bop.BopParameters.Types.ThreadSynchronizationType) input.ReadEnum();
2696 break;
2697 }
2698 case 210: {
2699 solverOptimizerSets_.AddEntriesFrom(ref input, _repeated_solverOptimizerSets_codec);
2700 break;
2701 }
2702 case 217: {
2703 MaxDeterministicTime = input.ReadDouble();
2704 break;
2705 }
2706 case 225: {
2707 RelativeGapLimit = input.ReadDouble();
2708 break;
2709 }
2710 case 232: {
2711 UseLpStrongBranching = input.ReadBool();
2712 break;
2713 }
2714 case 240: {
2715 DecomposerNumVariablesThreshold = input.ReadInt32();
2716 break;
2717 }
2718 case 248: {
2719 NumBopSolversUsedByDecomposition = input.ReadInt32();
2720 break;
2721 }
2722 case 266: {
2723 DefaultSolverOptimizerSets = input.ReadString();
2724 break;
2725 }
2726 case 272: {
2727 GuidedSatConflictsChunk = input.ReadInt32();
2728 break;
2729 }
2730 case 280: {
2731 MaxNumberOfConsecutiveFailingOptimizerCalls = input.ReadInt32();
2732 break;
2733 }
2734 case 289: {
2735 DecomposedProblemMinTimeInSeconds = input.ReadDouble();
2736 break;
2737 }
2738 case 297: {
2739 LpMaxDeterministicTime = input.ReadDouble();
2740 break;
2741 }
2742 case 304: {
2743 MaxNumBrokenConstraintsInLs = input.ReadInt32();
2744 break;
2745 }
2746 case 312: {
2747 UsePotentialOneFlipRepairsInLs = input.ReadBool();
2748 break;
2749 }
2750 case 320: {
2751 ExploitSymmetryInSatFirstSolution = input.ReadBool();
2752 break;
2753 }
2754 case 328: {
2755 MaxLpSolveForFeasibilityProblems = input.ReadInt32();
2756 break;
2757 }
2758 }
2759 }
2760 }
2761 #endif
2762
2763 #region Nested types
2765 [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2766 [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2767 public static partial class Types {
2773 public enum ThreadSynchronizationType {
2784 [pbr::OriginalName("NO_SYNCHRONIZATION")] NoSynchronization = 0,
2796 [pbr::OriginalName("SYNCHRONIZE_ALL")] SynchronizeAll = 1,
2810 [pbr::OriginalName("SYNCHRONIZE_ON_RIGHT")] SynchronizeOnRight = 2,
2811 }
2812
2813 }
2814 #endregion
2815
2816 }
2817
2818 #endregion
2819
2820}
2821
2822#endregion Designer generated code
global::Google.Protobuf.Reflection pbr
global::System.Collections.Generic scg
global::Google.Protobuf.Collections pbc
Definition SetCover.pb.cs:9
global::Google.Protobuf pb
Definition SetCover.pb.cs:8
Method used to optimize a solution in Bop.
static pb::MessageParser< BopOptimizerMethod > Parser
const int TypeFieldNumber
Field number for the "type" field.
global::Google.OrTools.Bop.BopOptimizerMethod.Types.OptimizerType Type
override bool Equals(object other)
static pbr::MessageDescriptor Descriptor
Holder for reflection information generated from ortools/bop/bop_parameters.proto.
static pbr::FileDescriptor Descriptor
File descriptor for ortools/bop/bop_parameters.proto.
Contains the definitions for all the bop algorithm parameters and their default values.
bool UseSatToChooseLnsNeighbourhood
Whether we use sat propagation to choose the lns neighbourhood.
int DecomposerNumVariablesThreshold
Only try to decompose the problem when the number of variables is greater than the threshold.
int RandomSeed
The seed used to initialize the random generator.
double DecomposedProblemMinTimeInSeconds
HACK. To avoid spending too little time on small problems, spend at least this time solving each of t...
bool PruneSearchTree
Avoid exploring both branches (b, a, ...) and (a, b, ...).
int MaxNumberOfConsecutiveFailingOptimizerCalls
Maximum number of consecutive optimizer calls without improving the current solution....
int NumberOfSolvers
The number of solvers used to run Bop. Note that one thread will be created per solver....
double MaxTimeInSeconds
Maximum time allowed in seconds to solve a problem. The counter will starts as soon as Solve() is cal...
double MaxDeterministicTime
Maximum time allowed in deterministic time to solve a problem. The deterministic time should be corre...
bool UseSymmetry
If true, find and exploit the eventual symmetries of the problem.
bool SortConstraintsByNumTerms
Sort constraints by increasing total number of terms instead of number of contributing terms.
long MaxNumberOfBacktracksInLs
Maximum number of backtracks times the number of variables in Local Search, ie. max num backtracks ==...
int MaxNumDecisionsInLs
Maximum number of cascading decisions the solver might use to repair the current solution in the LS.
bool UseTranspositionTableInLs
Whether we use an hash set during the LS to avoid exploring more than once the "same" state....
bool LogSearchProgress
Whether the solver should log the search progress to LOG(INFO).
global::Google.OrTools.Bop.BopParameters.Types.ThreadSynchronizationType SynchronizationType
int NumRandomLnsTries
Number of tries in the random lns.
bool ComputeEstimatedImpact
Compute estimated impact at each iteration when true; only once when false.
int MaxNumberOfConflictsInRandomLns
The number of conflicts the SAT solver has to solve a random LNS subproblem.
bool UseLpLns
Use Large Neighborhood Search based on the LP relaxation.
int MaxLpSolveForFeasibilityProblems
The maximum number of time the LP solver will run to feasibility for pure feasibility problems (with ...
long MaxNumberOfExploredAssignmentsPerTryInLs
The maximum number of assignments the Local Search iterates on during one try. Note that if the Local...
int MaxNumberOfConflictsForQuickCheck
The number of conflicts the SAT solver has to solve a random LNS subproblem for the quick check of in...
int MaxNumberOfConflictsInRandomSolutionGeneration
The number of conflicts the SAT solver has to generate a random solution.
double LpMaxDeterministicTime
The max deterministic time given to the LP solver each time it is called. If this is not enough to so...
int GuidedSatConflictsChunk
The first solutions based on guided SAT will work in chunk of that many conflicts at the time....
int NumRelaxedVars
Number of variables to relax in the exhaustive Large Neighborhood Search.
int NumBopSolversUsedByDecomposition
The number of BopSolver created (thread pool workers) used by the integral solver to solve a decompos...
bool ExploitSymmetryInSatFirstSolution
If true, find and exploit symmetries in proving satisfiability in the first problem....
bool UseRandomLns
Use the random Large Neighborhood Search instead of the exhaustive one.
int MaxNumBrokenConstraintsInLs
Abort the LS search tree as soon as strictly more than this number of constraints are broken....
double RelativeGapLimit
Limit used to stop the optimization as soon as the relative gap is smaller than the given value....
bool UseLpStrongBranching
Use strong branching in the linear relaxation optimizer. The strong branching is a what-if analysis o...
bool UsePotentialOneFlipRepairsInLs
Whether we keep a list of variable that can potentially repair in one flip all the current infeasible...
bool UseLearnedBinaryClausesInLp
Whether we use the learned binary clauses in the Linear Relaxation.
Set of optimizer methods to be run by an instance of the portfolio optimizer.