Files
ortools-clone/docs/javadoc/com/google/ortools/sat/SatParameters.html
Mizux Seiha 3b81c981c2 Update doc
2022-03-04 00:19:15 +01:00

13134 lines
796 KiB
HTML

<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) on Thu Mar 03 21:59:09 CET 2022 -->
<title>SatParameters (com.google.ortools:ortools-java 9.3.10440 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2022-03-03">
<meta name="description" content="declaration: package: com.google.ortools.sat, class: SatParameters">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/SatParameters.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li><a href="#nested-class-summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field-detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.google.ortools.sat</a></div>
<h1 title="Class SatParameters" class="title">Class SatParameters</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.google.protobuf.AbstractMessageLite
<div class="inheritance">com.google.protobuf.AbstractMessage
<div class="inheritance">com.google.protobuf.GeneratedMessageV3
<div class="inheritance">com.google.ortools.sat.SatParameters</div>
</div>
</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code>, <code>com.google.protobuf.Message</code>, <code>com.google.protobuf.MessageLite</code>, <code>com.google.protobuf.MessageLiteOrBuilder</code>, <code>com.google.protobuf.MessageOrBuilder</code>, <code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public final class </span><span class="element-name type-name-label">SatParameters</span>
<span class="extends-implements">extends com.google.protobuf.GeneratedMessageV3
implements <a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></span></div>
<div class="block"><pre>
Contains the definitions for all the sat algorithm parameters and their
default values.
NEXT TAG: 213
</pre>
Protobuf type <code>operations_research.sat.SatParameters</code></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../serialized-form.html#com.google.ortools.sat.SatParameters">Serialized Form</a></li>
</ul>
</dd>
</dl>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<li>
<section class="nested-class-summary" id="nested-class-summary">
<h2>Nested Class Summary</h2>
<div class="caption"><span>Nested Classes</span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Class</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second even-row-color"><code><a href="SatParameters.BinaryMinizationAlgorithm.html" class="type-name-link" title="enum in com.google.ortools.sat">SatParameters.BinaryMinizationAlgorithm</a></code></div>
<div class="col-last even-row-color">
<div class="block">
Whether to expoit the binary clause to minimize learned clauses further.</div>
</div>
<div class="col-first odd-row-color"><code>static final class&nbsp;</code></div>
<div class="col-second odd-row-color"><code><a href="SatParameters.Builder.html" class="type-name-link" title="class in com.google.ortools.sat">SatParameters.Builder</a></code></div>
<div class="col-last odd-row-color">
<div class="block">
Contains the definitions for all the sat algorithm parameters and their
default values.</div>
</div>
<div class="col-first even-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second even-row-color"><code><a href="SatParameters.ClauseOrdering.html" class="type-name-link" title="enum in com.google.ortools.sat">SatParameters.ClauseOrdering</a></code></div>
<div class="col-last even-row-color">
<div class="block">
The clauses that will be kept during a cleanup are the ones that come
first under this order.</div>
</div>
<div class="col-first odd-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second odd-row-color"><code><a href="SatParameters.ClauseProtection.html" class="type-name-link" title="enum in com.google.ortools.sat">SatParameters.ClauseProtection</a></code></div>
<div class="col-last odd-row-color">
<div class="block">
Each time a clause activity is bumped, the clause has a chance to be
protected during the next cleanup phase.</div>
</div>
<div class="col-first even-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second even-row-color"><code><a href="SatParameters.ConflictMinimizationAlgorithm.html" class="type-name-link" title="enum in com.google.ortools.sat">SatParameters.ConflictMinimizationAlgorithm</a></code></div>
<div class="col-last even-row-color">
<div class="block">
Do we try to minimize conflicts (greedily) when creating them.</div>
</div>
<div class="col-first odd-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second odd-row-color"><code><a href="SatParameters.FPRoundingMethod.html" class="type-name-link" title="enum in com.google.ortools.sat">SatParameters.FPRoundingMethod</a></code></div>
<div class="col-last odd-row-color">
<div class="block">
Rounding method to use for feasibility pump.</div>
</div>
<div class="col-first even-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second even-row-color"><code><a href="SatParameters.MaxSatAssumptionOrder.html" class="type-name-link" title="enum in com.google.ortools.sat">SatParameters.MaxSatAssumptionOrder</a></code></div>
<div class="col-last even-row-color">
<div class="block">
In what order do we add the assumptions in a core-based max-sat algorithm</div>
</div>
<div class="col-first odd-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second odd-row-color"><code><a href="SatParameters.MaxSatStratificationAlgorithm.html" class="type-name-link" title="enum in com.google.ortools.sat">SatParameters.MaxSatStratificationAlgorithm</a></code></div>
<div class="col-last odd-row-color">
<div class="block">
What stratification algorithm we use in the presence of weight.</div>
</div>
<div class="col-first even-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second even-row-color"><code><a href="SatParameters.Polarity.html" class="type-name-link" title="enum in com.google.ortools.sat">SatParameters.Polarity</a></code></div>
<div class="col-last even-row-color">
<div class="block">
Specifies the initial polarity (true/false) when the solver branches on a
variable.</div>
</div>
<div class="col-first odd-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second odd-row-color"><code><a href="SatParameters.RestartAlgorithm.html" class="type-name-link" title="enum in com.google.ortools.sat">SatParameters.RestartAlgorithm</a></code></div>
<div class="col-last odd-row-color">
<div class="block">
Restart algorithms.</div>
</div>
<div class="col-first even-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second even-row-color"><code><a href="SatParameters.SearchBranching.html" class="type-name-link" title="enum in com.google.ortools.sat">SatParameters.SearchBranching</a></code></div>
<div class="col-last even-row-color">
<div class="block">
The search branching will be used to decide how to branch on unfixed nodes.</div>
</div>
<div class="col-first odd-row-color"><code>static enum&nbsp;</code></div>
<div class="col-second odd-row-color"><code><a href="SatParameters.VariableOrder.html" class="type-name-link" title="enum in com.google.ortools.sat">SatParameters.VariableOrder</a></code></div>
<div class="col-last odd-row-color">
<div class="block">
Variables without activity (i.e.</div>
</div>
</div>
<div class="inherited-list">
<h2 id="nested-classes-inherited-from-class-com.google.protobuf.GeneratedMessageV3">Nested classes/interfaces inherited from class&nbsp;com.google.protobuf.GeneratedMessageV3</h2>
<code>com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage,<wbr>BuilderType extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder&lt;MessageType,<wbr>BuilderType&gt;&gt;, com.google.protobuf.GeneratedMessageV3.ExtendableMessage&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter</code></div>
<div class="inherited-list">
<h2 id="nested-classes-inherited-from-class-com.google.protobuf.AbstractMessageLite">Nested classes/interfaces inherited from class&nbsp;com.google.protobuf.AbstractMessageLite</h2>
<code>com.google.protobuf.AbstractMessageLite.InternalOneOfEnum</code></div>
</section>
</li>
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Field Summary</h2>
<div class="caption"><span>Fields</span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Field</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#ABSOLUTE_GAP_LIMIT_FIELD_NUMBER" class="member-name-link">ABSOLUTE_GAP_LIMIT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#ADD_CG_CUTS_FIELD_NUMBER" class="member-name-link">ADD_CG_CUTS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#ADD_CLIQUE_CUTS_FIELD_NUMBER" class="member-name-link">ADD_CLIQUE_CUTS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#ADD_LIN_MAX_CUTS_FIELD_NUMBER" class="member-name-link">ADD_LIN_MAX_CUTS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#ADD_LP_CONSTRAINTS_LAZILY_FIELD_NUMBER" class="member-name-link">ADD_LP_CONSTRAINTS_LAZILY_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#ADD_MIR_CUTS_FIELD_NUMBER" class="member-name-link">ADD_MIR_CUTS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#ADD_OBJECTIVE_CUT_FIELD_NUMBER" class="member-name-link">ADD_OBJECTIVE_CUT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#ADD_ZERO_HALF_CUTS_FIELD_NUMBER" class="member-name-link">ADD_ZERO_HALF_CUTS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#ALSO_BUMP_VARIABLES_IN_CONFLICT_REASONS_FIELD_NUMBER" class="member-name-link">ALSO_BUMP_VARIABLES_IN_CONFLICT_REASONS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#AUTO_DETECT_GREATER_THAN_AT_LEAST_ONE_OF_FIELD_NUMBER" class="member-name-link">AUTO_DETECT_GREATER_THAN_AT_LEAST_ONE_OF_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#BINARY_MINIMIZATION_ALGORITHM_FIELD_NUMBER" class="member-name-link">BINARY_MINIMIZATION_ALGORITHM_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#BINARY_SEARCH_NUM_CONFLICTS_FIELD_NUMBER" class="member-name-link">BINARY_SEARCH_NUM_CONFLICTS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#BLOCKING_RESTART_MULTIPLIER_FIELD_NUMBER" class="member-name-link">BLOCKING_RESTART_MULTIPLIER_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#BLOCKING_RESTART_WINDOW_SIZE_FIELD_NUMBER" class="member-name-link">BLOCKING_RESTART_WINDOW_SIZE_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#BOOLEAN_ENCODING_LEVEL_FIELD_NUMBER" class="member-name-link">BOOLEAN_ENCODING_LEVEL_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#CATCH_SIGINT_SIGNAL_FIELD_NUMBER" class="member-name-link">CATCH_SIGINT_SIGNAL_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#CLAUSE_ACTIVITY_DECAY_FIELD_NUMBER" class="member-name-link">CLAUSE_ACTIVITY_DECAY_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#CLAUSE_CLEANUP_LBD_BOUND_FIELD_NUMBER" class="member-name-link">CLAUSE_CLEANUP_LBD_BOUND_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#CLAUSE_CLEANUP_ORDERING_FIELD_NUMBER" class="member-name-link">CLAUSE_CLEANUP_ORDERING_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#CLAUSE_CLEANUP_PERIOD_FIELD_NUMBER" class="member-name-link">CLAUSE_CLEANUP_PERIOD_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#CLAUSE_CLEANUP_PROTECTION_FIELD_NUMBER" class="member-name-link">CLAUSE_CLEANUP_PROTECTION_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#CLAUSE_CLEANUP_RATIO_FIELD_NUMBER" class="member-name-link">CLAUSE_CLEANUP_RATIO_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#CLAUSE_CLEANUP_TARGET_FIELD_NUMBER" class="member-name-link">CLAUSE_CLEANUP_TARGET_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#CONVERT_INTERVALS_FIELD_NUMBER" class="member-name-link">CONVERT_INTERVALS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#COUNT_ASSUMPTION_LEVELS_IN_LBD_FIELD_NUMBER" class="member-name-link">COUNT_ASSUMPTION_LEVELS_IN_LBD_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#COVER_OPTIMIZATION_FIELD_NUMBER" class="member-name-link">COVER_OPTIMIZATION_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#CP_MODEL_PRESOLVE_FIELD_NUMBER" class="member-name-link">CP_MODEL_PRESOLVE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#CP_MODEL_PROBING_LEVEL_FIELD_NUMBER" class="member-name-link">CP_MODEL_PROBING_LEVEL_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#CP_MODEL_USE_SAT_PRESOLVE_FIELD_NUMBER" class="member-name-link">CP_MODEL_USE_SAT_PRESOLVE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#CUT_ACTIVE_COUNT_DECAY_FIELD_NUMBER" class="member-name-link">CUT_ACTIVE_COUNT_DECAY_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#CUT_CLEANUP_TARGET_FIELD_NUMBER" class="member-name-link">CUT_CLEANUP_TARGET_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#CUT_LEVEL_FIELD_NUMBER" class="member-name-link">CUT_LEVEL_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#CUT_MAX_ACTIVE_COUNT_VALUE_FIELD_NUMBER" class="member-name-link">CUT_MAX_ACTIVE_COUNT_VALUE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#DEBUG_CRASH_ON_BAD_HINT_FIELD_NUMBER" class="member-name-link">DEBUG_CRASH_ON_BAD_HINT_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#DEBUG_MAX_NUM_PRESOLVE_OPERATIONS_FIELD_NUMBER" class="member-name-link">DEBUG_MAX_NUM_PRESOLVE_OPERATIONS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#DEBUG_POSTSOLVE_WITH_FULL_SOLVER_FIELD_NUMBER" class="member-name-link">DEBUG_POSTSOLVE_WITH_FULL_SOLVER_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#DEFAULT_RESTART_ALGORITHMS_FIELD_NUMBER" class="member-name-link">DEFAULT_RESTART_ALGORITHMS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#DISABLE_CONSTRAINT_EXPANSION_FIELD_NUMBER" class="member-name-link">DISABLE_CONSTRAINT_EXPANSION_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#DIVERSIFY_LNS_PARAMS_FIELD_NUMBER" class="member-name-link">DIVERSIFY_LNS_PARAMS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#ENUMERATE_ALL_SOLUTIONS_FIELD_NUMBER" class="member-name-link">ENUMERATE_ALL_SOLUTIONS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#EXPAND_ALLDIFF_CONSTRAINTS_FIELD_NUMBER" class="member-name-link">EXPAND_ALLDIFF_CONSTRAINTS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#EXPLOIT_ALL_LP_SOLUTION_FIELD_NUMBER" class="member-name-link">EXPLOIT_ALL_LP_SOLUTION_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#EXPLOIT_BEST_SOLUTION_FIELD_NUMBER" class="member-name-link">EXPLOIT_BEST_SOLUTION_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#EXPLOIT_INTEGER_LP_SOLUTION_FIELD_NUMBER" class="member-name-link">EXPLOIT_INTEGER_LP_SOLUTION_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#EXPLOIT_OBJECTIVE_FIELD_NUMBER" class="member-name-link">EXPLOIT_OBJECTIVE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#EXPLOIT_RELAXATION_SOLUTION_FIELD_NUMBER" class="member-name-link">EXPLOIT_RELAXATION_SOLUTION_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#FILL_ADDITIONAL_SOLUTIONS_IN_RESPONSE_FIELD_NUMBER" class="member-name-link">FILL_ADDITIONAL_SOLUTIONS_IN_RESPONSE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#FILL_TIGHTENED_DOMAINS_IN_RESPONSE_FIELD_NUMBER" class="member-name-link">FILL_TIGHTENED_DOMAINS_IN_RESPONSE_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#FIND_MULTIPLE_CORES_FIELD_NUMBER" class="member-name-link">FIND_MULTIPLE_CORES_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#FIX_VARIABLES_TO_THEIR_HINTED_VALUE_FIELD_NUMBER" class="member-name-link">FIX_VARIABLES_TO_THEIR_HINTED_VALUE_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#FP_ROUNDING_FIELD_NUMBER" class="member-name-link">FP_ROUNDING_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#GLUCOSE_DECAY_INCREMENT_FIELD_NUMBER" class="member-name-link">GLUCOSE_DECAY_INCREMENT_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#GLUCOSE_DECAY_INCREMENT_PERIOD_FIELD_NUMBER" class="member-name-link">GLUCOSE_DECAY_INCREMENT_PERIOD_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#GLUCOSE_MAX_DECAY_FIELD_NUMBER" class="member-name-link">GLUCOSE_MAX_DECAY_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#HINT_CONFLICT_LIMIT_FIELD_NUMBER" class="member-name-link">HINT_CONFLICT_LIMIT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#IGNORE_NAMES_FIELD_NUMBER" class="member-name-link">IGNORE_NAMES_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#IGNORE_SUBSOLVERS_FIELD_NUMBER" class="member-name-link">IGNORE_SUBSOLVERS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#INITIAL_POLARITY_FIELD_NUMBER" class="member-name-link">INITIAL_POLARITY_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#INITIAL_VARIABLES_ACTIVITY_FIELD_NUMBER" class="member-name-link">INITIAL_VARIABLES_ACTIVITY_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#INSTANTIATE_ALL_VARIABLES_FIELD_NUMBER" class="member-name-link">INSTANTIATE_ALL_VARIABLES_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#INTERLEAVE_BATCH_SIZE_FIELD_NUMBER" class="member-name-link">INTERLEAVE_BATCH_SIZE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#INTERLEAVE_SEARCH_FIELD_NUMBER" class="member-name-link">INTERLEAVE_SEARCH_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#KEEP_ALL_FEASIBLE_SOLUTIONS_IN_PRESOLVE_FIELD_NUMBER" class="member-name-link">KEEP_ALL_FEASIBLE_SOLUTIONS_IN_PRESOLVE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#LINEARIZATION_LEVEL_FIELD_NUMBER" class="member-name-link">LINEARIZATION_LEVEL_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#LOG_FREQUENCY_IN_SECONDS_FIELD_NUMBER" class="member-name-link">LOG_FREQUENCY_IN_SECONDS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#LOG_PREFIX_FIELD_NUMBER" class="member-name-link">LOG_PREFIX_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#LOG_SEARCH_PROGRESS_FIELD_NUMBER" class="member-name-link">LOG_SEARCH_PROGRESS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#LOG_SUBSOLVER_STATISTICS_FIELD_NUMBER" class="member-name-link">LOG_SUBSOLVER_STATISTICS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#LOG_TO_RESPONSE_FIELD_NUMBER" class="member-name-link">LOG_TO_RESPONSE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#LOG_TO_STDOUT_FIELD_NUMBER" class="member-name-link">LOG_TO_STDOUT_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MAX_ALL_DIFF_CUT_SIZE_FIELD_NUMBER" class="member-name-link">MAX_ALL_DIFF_CUT_SIZE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MAX_CLAUSE_ACTIVITY_VALUE_FIELD_NUMBER" class="member-name-link">MAX_CLAUSE_ACTIVITY_VALUE_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MAX_CONSECUTIVE_INACTIVE_COUNT_FIELD_NUMBER" class="member-name-link">MAX_CONSECUTIVE_INACTIVE_COUNT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MAX_CUT_ROUNDS_AT_LEVEL_ZERO_FIELD_NUMBER" class="member-name-link">MAX_CUT_ROUNDS_AT_LEVEL_ZERO_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MAX_DETERMINISTIC_TIME_FIELD_NUMBER" class="member-name-link">MAX_DETERMINISTIC_TIME_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MAX_DOMAIN_SIZE_WHEN_ENCODING_EQ_NEQ_CONSTRAINTS_FIELD_NUMBER" class="member-name-link">MAX_DOMAIN_SIZE_WHEN_ENCODING_EQ_NEQ_CONSTRAINTS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MAX_INTEGER_ROUNDING_SCALING_FIELD_NUMBER" class="member-name-link">MAX_INTEGER_ROUNDING_SCALING_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MAX_MEMORY_IN_MB_FIELD_NUMBER" class="member-name-link">MAX_MEMORY_IN_MB_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MAX_NUM_CUTS_FIELD_NUMBER" class="member-name-link">MAX_NUM_CUTS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MAX_NUMBER_OF_CONFLICTS_FIELD_NUMBER" class="member-name-link">MAX_NUMBER_OF_CONFLICTS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MAX_PRESOLVE_ITERATIONS_FIELD_NUMBER" class="member-name-link">MAX_PRESOLVE_ITERATIONS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MAX_SAT_ASSUMPTION_ORDER_FIELD_NUMBER" class="member-name-link">MAX_SAT_ASSUMPTION_ORDER_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MAX_SAT_REVERSE_ASSUMPTION_ORDER_FIELD_NUMBER" class="member-name-link">MAX_SAT_REVERSE_ASSUMPTION_ORDER_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MAX_SAT_STRATIFICATION_FIELD_NUMBER" class="member-name-link">MAX_SAT_STRATIFICATION_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MAX_TIME_IN_SECONDS_FIELD_NUMBER" class="member-name-link">MAX_TIME_IN_SECONDS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MAX_VARIABLE_ACTIVITY_VALUE_FIELD_NUMBER" class="member-name-link">MAX_VARIABLE_ACTIVITY_VALUE_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MERGE_AT_MOST_ONE_WORK_LIMIT_FIELD_NUMBER" class="member-name-link">MERGE_AT_MOST_ONE_WORK_LIMIT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MERGE_NO_OVERLAP_WORK_LIMIT_FIELD_NUMBER" class="member-name-link">MERGE_NO_OVERLAP_WORK_LIMIT_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MIN_NUM_LNS_WORKERS_FIELD_NUMBER" class="member-name-link">MIN_NUM_LNS_WORKERS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MIN_ORTHOGONALITY_FOR_LP_CONSTRAINTS_FIELD_NUMBER" class="member-name-link">MIN_ORTHOGONALITY_FOR_LP_CONSTRAINTS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MINIMIZATION_ALGORITHM_FIELD_NUMBER" class="member-name-link">MINIMIZATION_ALGORITHM_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MINIMIZE_CORE_FIELD_NUMBER" class="member-name-link">MINIMIZE_CORE_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MINIMIZE_REDUCTION_DURING_PB_RESOLUTION_FIELD_NUMBER" class="member-name-link">MINIMIZE_REDUCTION_DURING_PB_RESOLUTION_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MINIMIZE_WITH_PROPAGATION_NUM_DECISIONS_FIELD_NUMBER" class="member-name-link">MINIMIZE_WITH_PROPAGATION_NUM_DECISIONS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MINIMIZE_WITH_PROPAGATION_RESTART_PERIOD_FIELD_NUMBER" class="member-name-link">MINIMIZE_WITH_PROPAGATION_RESTART_PERIOD_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MIP_AUTOMATICALLY_SCALE_VARIABLES_FIELD_NUMBER" class="member-name-link">MIP_AUTOMATICALLY_SCALE_VARIABLES_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MIP_CHECK_PRECISION_FIELD_NUMBER" class="member-name-link">MIP_CHECK_PRECISION_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MIP_COMPUTE_TRUE_OBJECTIVE_BOUND_FIELD_NUMBER" class="member-name-link">MIP_COMPUTE_TRUE_OBJECTIVE_BOUND_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MIP_MAX_ACTIVITY_EXPONENT_FIELD_NUMBER" class="member-name-link">MIP_MAX_ACTIVITY_EXPONENT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MIP_MAX_BOUND_FIELD_NUMBER" class="member-name-link">MIP_MAX_BOUND_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MIP_MAX_VALID_MAGNITUDE_FIELD_NUMBER" class="member-name-link">MIP_MAX_VALID_MAGNITUDE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MIP_VAR_SCALING_FIELD_NUMBER" class="member-name-link">MIP_VAR_SCALING_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#MIP_WANTED_PRECISION_FIELD_NUMBER" class="member-name-link">MIP_WANTED_PRECISION_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#NAME_FIELD_NUMBER" class="member-name-link">NAME_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#NEW_CONSTRAINTS_BATCH_SIZE_FIELD_NUMBER" class="member-name-link">NEW_CONSTRAINTS_BATCH_SIZE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#NUM_CONFLICTS_BEFORE_STRATEGY_CHANGES_FIELD_NUMBER" class="member-name-link">NUM_CONFLICTS_BEFORE_STRATEGY_CHANGES_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#NUM_SEARCH_WORKERS_FIELD_NUMBER" class="member-name-link">NUM_SEARCH_WORKERS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#NUM_WORKERS_FIELD_NUMBER" class="member-name-link">NUM_WORKERS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#ONLY_ADD_CUTS_AT_LEVEL_ZERO_FIELD_NUMBER" class="member-name-link">ONLY_ADD_CUTS_AT_LEVEL_ZERO_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#OPTIMIZE_WITH_CORE_FIELD_NUMBER" class="member-name-link">OPTIMIZE_WITH_CORE_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#OPTIMIZE_WITH_LB_TREE_SEARCH_FIELD_NUMBER" class="member-name-link">OPTIMIZE_WITH_LB_TREE_SEARCH_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#OPTIMIZE_WITH_MAX_HS_FIELD_NUMBER" class="member-name-link">OPTIMIZE_WITH_MAX_HS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final com.google.protobuf.Parser&lt;<a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a>&gt;</code></div>
<div class="col-second even-row-color"><code><a href="#PARSER" class="member-name-link">PARSER</a></code></div>
<div class="col-last even-row-color">
<div class="block"><span class="deprecated-label">Deprecated.</span></div>
</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#PB_CLEANUP_INCREMENT_FIELD_NUMBER" class="member-name-link">PB_CLEANUP_INCREMENT_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#PB_CLEANUP_RATIO_FIELD_NUMBER" class="member-name-link">PB_CLEANUP_RATIO_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#PERMUTE_PRESOLVE_CONSTRAINT_ORDER_FIELD_NUMBER" class="member-name-link">PERMUTE_PRESOLVE_CONSTRAINT_ORDER_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#PERMUTE_VARIABLE_RANDOMLY_FIELD_NUMBER" class="member-name-link">PERMUTE_VARIABLE_RANDOMLY_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#POLARITY_REPHASE_INCREMENT_FIELD_NUMBER" class="member-name-link">POLARITY_REPHASE_INCREMENT_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#POLISH_LP_SOLUTION_FIELD_NUMBER" class="member-name-link">POLISH_LP_SOLUTION_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#PREFERRED_VARIABLE_ORDER_FIELD_NUMBER" class="member-name-link">PREFERRED_VARIABLE_ORDER_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#PRESOLVE_BLOCKED_CLAUSE_FIELD_NUMBER" class="member-name-link">PRESOLVE_BLOCKED_CLAUSE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#PRESOLVE_BVA_THRESHOLD_FIELD_NUMBER" class="member-name-link">PRESOLVE_BVA_THRESHOLD_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#PRESOLVE_BVE_CLAUSE_WEIGHT_FIELD_NUMBER" class="member-name-link">PRESOLVE_BVE_CLAUSE_WEIGHT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#PRESOLVE_BVE_THRESHOLD_FIELD_NUMBER" class="member-name-link">PRESOLVE_BVE_THRESHOLD_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#PRESOLVE_EXTRACT_INTEGER_ENFORCEMENT_FIELD_NUMBER" class="member-name-link">PRESOLVE_EXTRACT_INTEGER_ENFORCEMENT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#PRESOLVE_INCLUSION_WORK_LIMIT_FIELD_NUMBER" class="member-name-link">PRESOLVE_INCLUSION_WORK_LIMIT_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#PRESOLVE_PROBING_DETERMINISTIC_TIME_LIMIT_FIELD_NUMBER" class="member-name-link">PRESOLVE_PROBING_DETERMINISTIC_TIME_LIMIT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#PRESOLVE_SUBSTITUTION_LEVEL_FIELD_NUMBER" class="member-name-link">PRESOLVE_SUBSTITUTION_LEVEL_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#PRESOLVE_USE_BVA_FIELD_NUMBER" class="member-name-link">PRESOLVE_USE_BVA_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#PROBING_PERIOD_AT_ROOT_FIELD_NUMBER" class="member-name-link">PROBING_PERIOD_AT_ROOT_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#PSEUDO_COST_RELIABILITY_THRESHOLD_FIELD_NUMBER" class="member-name-link">PSEUDO_COST_RELIABILITY_THRESHOLD_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#RANDOM_BRANCHES_RATIO_FIELD_NUMBER" class="member-name-link">RANDOM_BRANCHES_RATIO_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#RANDOM_POLARITY_RATIO_FIELD_NUMBER" class="member-name-link">RANDOM_POLARITY_RATIO_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#RANDOM_SEED_FIELD_NUMBER" class="member-name-link">RANDOM_SEED_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#RANDOMIZE_SEARCH_FIELD_NUMBER" class="member-name-link">RANDOMIZE_SEARCH_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#REDUCE_MEMORY_USAGE_IN_INTERLEAVE_MODE_FIELD_NUMBER" class="member-name-link">REDUCE_MEMORY_USAGE_IN_INTERLEAVE_MODE_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#RELATIVE_GAP_LIMIT_FIELD_NUMBER" class="member-name-link">RELATIVE_GAP_LIMIT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#REPAIR_HINT_FIELD_NUMBER" class="member-name-link">REPAIR_HINT_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#RESTART_ALGORITHMS_FIELD_NUMBER" class="member-name-link">RESTART_ALGORITHMS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#RESTART_DL_AVERAGE_RATIO_FIELD_NUMBER" class="member-name-link">RESTART_DL_AVERAGE_RATIO_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#RESTART_LBD_AVERAGE_RATIO_FIELD_NUMBER" class="member-name-link">RESTART_LBD_AVERAGE_RATIO_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#RESTART_PERIOD_FIELD_NUMBER" class="member-name-link">RESTART_PERIOD_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#RESTART_RUNNING_WINDOW_SIZE_FIELD_NUMBER" class="member-name-link">RESTART_RUNNING_WINDOW_SIZE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#SEARCH_BRANCHING_FIELD_NUMBER" class="member-name-link">SEARCH_BRANCHING_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#SEARCH_RANDOMIZATION_TOLERANCE_FIELD_NUMBER" class="member-name-link">SEARCH_RANDOMIZATION_TOLERANCE_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#SHARE_BINARY_CLAUSES_FIELD_NUMBER" class="member-name-link">SHARE_BINARY_CLAUSES_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#SHARE_LEVEL_ZERO_BOUNDS_FIELD_NUMBER" class="member-name-link">SHARE_LEVEL_ZERO_BOUNDS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#SHARE_OBJECTIVE_BOUNDS_FIELD_NUMBER" class="member-name-link">SHARE_OBJECTIVE_BOUNDS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#SHAVING_SEARCH_DETERMINISTIC_TIME_FIELD_NUMBER" class="member-name-link">SHAVING_SEARCH_DETERMINISTIC_TIME_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#SOLUTION_POOL_SIZE_FIELD_NUMBER" class="member-name-link">SOLUTION_POOL_SIZE_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#STOP_AFTER_FIRST_SOLUTION_FIELD_NUMBER" class="member-name-link">STOP_AFTER_FIRST_SOLUTION_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#STOP_AFTER_PRESOLVE_FIELD_NUMBER" class="member-name-link">STOP_AFTER_PRESOLVE_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#STRATEGY_CHANGE_INCREASE_RATIO_FIELD_NUMBER" class="member-name-link">STRATEGY_CHANGE_INCREASE_RATIO_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#SUBSOLVER_PARAMS_FIELD_NUMBER" class="member-name-link">SUBSOLVER_PARAMS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#SUBSOLVERS_FIELD_NUMBER" class="member-name-link">SUBSOLVERS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#SUBSUMPTION_DURING_CONFLICT_ANALYSIS_FIELD_NUMBER" class="member-name-link">SUBSUMPTION_DURING_CONFLICT_ANALYSIS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#SYMMETRY_LEVEL_FIELD_NUMBER" class="member-name-link">SYMMETRY_LEVEL_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_ABSL_RANDOM_FIELD_NUMBER" class="member-name-link">USE_ABSL_RANDOM_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#USE_BLOCKING_RESTART_FIELD_NUMBER" class="member-name-link">USE_BLOCKING_RESTART_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_BRANCHING_IN_LP_FIELD_NUMBER" class="member-name-link">USE_BRANCHING_IN_LP_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#USE_COMBINED_NO_OVERLAP_FIELD_NUMBER" class="member-name-link">USE_COMBINED_NO_OVERLAP_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_CUMULATIVE_IN_NO_OVERLAP_2D_FIELD_NUMBER" class="member-name-link">USE_CUMULATIVE_IN_NO_OVERLAP_2D_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#USE_DISJUNCTIVE_CONSTRAINT_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER" class="member-name-link">USE_DISJUNCTIVE_CONSTRAINT_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_ERWA_HEURISTIC_FIELD_NUMBER" class="member-name-link">USE_ERWA_HEURISTIC_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#USE_EXACT_LP_REASON_FIELD_NUMBER" class="member-name-link">USE_EXACT_LP_REASON_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_FEASIBILITY_PUMP_FIELD_NUMBER" class="member-name-link">USE_FEASIBILITY_PUMP_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#USE_IMPLIED_BOUNDS_FIELD_NUMBER" class="member-name-link">USE_IMPLIED_BOUNDS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_LNS_ONLY_FIELD_NUMBER" class="member-name-link">USE_LNS_ONLY_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#USE_OPTIMIZATION_HINTS_FIELD_NUMBER" class="member-name-link">USE_OPTIMIZATION_HINTS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_OPTIONAL_VARIABLES_FIELD_NUMBER" class="member-name-link">USE_OPTIONAL_VARIABLES_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#USE_OVERLOAD_CHECKER_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER" class="member-name-link">USE_OVERLOAD_CHECKER_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_PB_RESOLUTION_FIELD_NUMBER" class="member-name-link">USE_PB_RESOLUTION_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#USE_PHASE_SAVING_FIELD_NUMBER" class="member-name-link">USE_PHASE_SAVING_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_PRECEDENCES_IN_DISJUNCTIVE_CONSTRAINT_FIELD_NUMBER" class="member-name-link">USE_PRECEDENCES_IN_DISJUNCTIVE_CONSTRAINT_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#USE_PROBING_SEARCH_FIELD_NUMBER" class="member-name-link">USE_PROBING_SEARCH_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_RELAXATION_LNS_FIELD_NUMBER" class="member-name-link">USE_RELAXATION_LNS_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#USE_RINS_LNS_FIELD_NUMBER" class="member-name-link">USE_RINS_LNS_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_SAT_INPROCESSING_FIELD_NUMBER" class="member-name-link">USE_SAT_INPROCESSING_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#USE_SHAVING_IN_PROBING_SEARCH_FIELD_NUMBER" class="member-name-link">USE_SHAVING_IN_PROBING_SEARCH_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#USE_TIMETABLE_EDGE_FINDING_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER" class="member-name-link">USE_TIMETABLE_EDGE_FINDING_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#VARIABLE_ACTIVITY_DECAY_FIELD_NUMBER" class="member-name-link">VARIABLE_ACTIVITY_DECAY_FIELD_NUMBER</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
<div class="inherited-list">
<h3 id="fields-inherited-from-class-com.google.protobuf.GeneratedMessageV3">Fields inherited from class&nbsp;com.google.protobuf.GeneratedMessageV3</h3>
<code>alwaysUseFieldBuilders, unknownFields</code></div>
<div class="inherited-list">
<h3 id="fields-inherited-from-class-com.google.protobuf.AbstractMessage">Fields inherited from class&nbsp;com.google.protobuf.AbstractMessage</h3>
<code>memoizedSize</code></div>
<div class="inherited-list">
<h3 id="fields-inherited-from-class-com.google.protobuf.AbstractMessageLite">Fields inherited from class&nbsp;com.google.protobuf.AbstractMessageLite</h3>
<code>memoizedHashCode</code></div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#equals(java.lang.Object)" class="member-name-link">equals</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>&nbsp;obj)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAbsoluteGapLimit()" class="member-name-link">getAbsoluteGapLimit</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Stop the search when the gap between the best feasible objective (O) and
our best objective bound (B) is smaller than a limit.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAddCgCuts()" class="member-name-link">getAddCgCuts</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we generate and add Chvatal-Gomory cuts to the LP at root node.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAddCliqueCuts()" class="member-name-link">getAddCliqueCuts</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we generate clique cuts from the binary implication graph.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAddLinMaxCuts()" class="member-name-link">getAddLinMaxCuts</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
For the lin max constraints, generates the cuts described in "Strong
mixed-integer programming formulations for trained neural networks" by Ross
Anderson et.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAddLpConstraintsLazily()" class="member-name-link">getAddLpConstraintsLazily</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, we start by an empty LP, and only add constraints not satisfied
by the current LP solution batch by batch.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAddMirCuts()" class="member-name-link">getAddMirCuts</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we generate MIR cuts at root node.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAddObjectiveCut()" class="member-name-link">getAddObjectiveCut</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When the LP objective is fractional, do we add the cut that forces the
linear objective expression to be greater or equal to this fractional value
rounded up? We can always do that since our objective is integer, and
combined with MIR heuristic to reduce the coefficient of such cut, it can
help.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAddZeroHalfCuts()" class="member-name-link">getAddZeroHalfCuts</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we generate Zero-Half cuts at root node.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAlsoBumpVariablesInConflictReasons()" class="member-name-link">getAlsoBumpVariablesInConflictReasons</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, then the variables that appear in any of the reason of
the variables in a conflict have their activity bumped.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAutoDetectGreaterThanAtLeastOneOf()" class="member-name-link">getAutoDetectGreaterThanAtLeastOneOf</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, then the precedences propagator try to detect for each variable if
it has a set of "optional incoming arc" for which at least one of them is
present.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.BinaryMinizationAlgorithm.html" title="enum in com.google.ortools.sat">SatParameters.BinaryMinizationAlgorithm</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBinaryMinimizationAlgorithm()" class="member-name-link">getBinaryMinimizationAlgorithm</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.BinaryMinizationAlgorithm binary_minimization_algorithm = 34 [default = BINARY_MINIMIZATION_FIRST];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBinarySearchNumConflicts()" class="member-name-link">getBinarySearchNumConflicts</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If non-negative, perform a binary search on the objective variable in order
to find an [min, max] interval outside of which the solver proved unsat/sat
under this amount of conflict.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBlockingRestartMultiplier()" class="member-name-link">getBlockingRestartMultiplier</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double blocking_restart_multiplier = 66 [default = 1.4];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBlockingRestartWindowSize()" class="member-name-link">getBlockingRestartWindowSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional int32 blocking_restart_window_size = 65 [default = 5000];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBooleanEncodingLevel()" class="member-name-link">getBooleanEncodingLevel</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
A non-negative level indicating how much we should try to fully encode
Integer variables as Boolean.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCatchSigintSignal()" class="member-name-link">getCatchSigintSignal</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Indicates if the CP-SAT layer should catch Control-C (SIGINT) signals
when calling solve.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getClauseActivityDecay()" class="member-name-link">getClauseActivityDecay</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Clause activity parameters (same effect as the one on the variables).</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getClauseCleanupLbdBound()" class="member-name-link">getClauseCleanupLbdBound</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
All the clauses with a LBD (literal blocks distance) lower or equal to this
parameters will always be kept.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.ClauseOrdering.html" title="enum in com.google.ortools.sat">SatParameters.ClauseOrdering</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getClauseCleanupOrdering()" class="member-name-link">getClauseCleanupOrdering</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.ClauseOrdering clause_cleanup_ordering = 60 [default = CLAUSE_ACTIVITY];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getClauseCleanupPeriod()" class="member-name-link">getClauseCleanupPeriod</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Trigger a cleanup when this number of "deletable" clauses is learned.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.ClauseProtection.html" title="enum in com.google.ortools.sat">SatParameters.ClauseProtection</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getClauseCleanupProtection()" class="member-name-link">getClauseCleanupProtection</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.ClauseProtection clause_cleanup_protection = 58 [default = PROTECTION_NONE];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getClauseCleanupRatio()" class="member-name-link">getClauseCleanupRatio</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
During a cleanup, if clause_cleanup_target is 0, we will delete the
clause_cleanup_ratio of "deletable" clauses instead of aiming for a fixed
target of clauses to keep.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getClauseCleanupTarget()" class="member-name-link">getClauseCleanupTarget</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
During a cleanup, we will always keep that number of "deletable" clauses.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getConvertIntervals()" class="member-name-link">getConvertIntervals</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Temporary flag util the feature is more mature.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCountAssumptionLevelsInLbd()" class="member-name-link">getCountAssumptionLevelsInLbd</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether or not the assumption levels are taken into account during the LBD
computation.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCoverOptimization()" class="member-name-link">getCoverOptimization</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, when the max-sat algo find a core, we compute the minimal number
of literals in the core that needs to be true to have a feasible solution.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCpModelPresolve()" class="member-name-link">getCpModelPresolve</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we presolve the cp_model before solving it.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCpModelProbingLevel()" class="member-name-link">getCpModelProbingLevel</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
How much effort do we spend on probing.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCpModelUseSatPresolve()" class="member-name-link">getCpModelUseSatPresolve</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we also use the sat presolve when cp_model_presolve is true.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCutActiveCountDecay()" class="member-name-link">getCutActiveCountDecay</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double cut_active_count_decay = 156 [default = 0.8];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCutCleanupTarget()" class="member-name-link">getCutCleanupTarget</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Target number of constraints to remove during cleanup.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCutLevel()" class="member-name-link">getCutLevel</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Control the global cut effort.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCutMaxActiveCountValue()" class="member-name-link">getCutMaxActiveCountValue</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
These parameters are similar to sat clause management activity parameters.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDebugCrashOnBadHint()" class="member-name-link">getDebugCrashOnBadHint</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Crash if we do not manage to complete the hint into a full solution.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDebugMaxNumPresolveOperations()" class="member-name-link">getDebugMaxNumPresolveOperations</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If positive, try to stop just after that many presolve rules have been
applied.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDebugPostsolveWithFullSolver()" class="member-name-link">getDebugPostsolveWithFullSolver</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
We have two different postsolve code.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getDefaultInstance()" class="member-name-link">getDefaultInstance</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDefaultInstanceForType()" class="member-name-link">getDefaultInstanceForType</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDefaultRestartAlgorithms()" class="member-name-link">getDefaultRestartAlgorithms</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional string default_restart_algorithms = 70 [default = "LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART"];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>com.google.protobuf.ByteString</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDefaultRestartAlgorithmsBytes()" class="member-name-link">getDefaultRestartAlgorithmsBytes</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional string default_restart_algorithms = 70 [default = "LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART"];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static final com.google.protobuf.Descriptors.Descriptor</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getDescriptor()" class="member-name-link">getDescriptor</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDisableConstraintExpansion()" class="member-name-link">getDisableConstraintExpansion</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, it disable all constraint expansion.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDiversifyLnsParams()" class="member-name-link">getDiversifyLnsParams</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, registers more lns subsolvers with different parameters.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getEnumerateAllSolutions()" class="member-name-link">getEnumerateAllSolutions</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we enumerate all solutions of a problem without objective.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getExpandAlldiffConstraints()" class="member-name-link">getExpandAlldiffConstraints</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, expand all_different constraints that are not permutations.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getExploitAllLpSolution()" class="member-name-link">getExploitAllLpSolution</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true and the Lp relaxation of the problem has a solution, try to exploit
it.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getExploitBestSolution()" class="member-name-link">getExploitBestSolution</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When branching on a variable, follow the last best solution value.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getExploitIntegerLpSolution()" class="member-name-link">getExploitIntegerLpSolution</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true and the Lp relaxation of the problem has an integer optimal
solution, try to exploit it.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getExploitObjective()" class="member-name-link">getExploitObjective</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When branching an a variable that directly affect the objective,
branch on the value that lead to the best objective first.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getExploitRelaxationSolution()" class="member-name-link">getExploitRelaxationSolution</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When branching on a variable, follow the last best relaxation solution
value.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getFillAdditionalSolutionsInResponse()" class="member-name-link">getFillAdditionalSolutionsInResponse</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, the final response addition_solutions field will be filled with
all solutions from our solutions pool.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getFillTightenedDomainsInResponse()" class="member-name-link">getFillTightenedDomainsInResponse</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, add information about the derived variable domains to the
CpSolverResponse.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getFindMultipleCores()" class="member-name-link">getFindMultipleCores</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we try to find more independent cores for a given set of
assumptions in the core based max-SAT algorithms.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getFixVariablesToTheirHintedValue()" class="member-name-link">getFixVariablesToTheirHintedValue</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, variables appearing in the solution hints will be fixed to their
hinted value.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.FPRoundingMethod.html" title="enum in com.google.ortools.sat">SatParameters.FPRoundingMethod</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getFpRounding()" class="member-name-link">getFpRounding</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.FPRoundingMethod fp_rounding = 165 [default = PROPAGATION_ASSISTED];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getGlucoseDecayIncrement()" class="member-name-link">getGlucoseDecayIncrement</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double glucose_decay_increment = 23 [default = 0.01];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getGlucoseDecayIncrementPeriod()" class="member-name-link">getGlucoseDecayIncrementPeriod</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional int32 glucose_decay_increment_period = 24 [default = 5000];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getGlucoseMaxDecay()" class="member-name-link">getGlucoseMaxDecay</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The activity starts at 0.8 and increment by 0.01 every 5000 conflicts until
0.95.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getHintConflictLimit()" class="member-name-link">getHintConflictLimit</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Conflict limit used in the phase that exploit the solution hint.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getIgnoreNames()" class="member-name-link">getIgnoreNames</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, we don't keep names in our internal copy of the user given model.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getIgnoreSubsolvers(int)" class="member-name-link">getIgnoreSubsolvers</a><wbr>(int&nbsp;index)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Rather than fully specifying subsolvers, it is often convenient to just
remove the ones that are not useful on a given problem.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>com.google.protobuf.ByteString</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getIgnoreSubsolversBytes(int)" class="member-name-link">getIgnoreSubsolversBytes</a><wbr>(int&nbsp;index)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Rather than fully specifying subsolvers, it is often convenient to just
remove the ones that are not useful on a given problem.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getIgnoreSubsolversCount()" class="member-name-link">getIgnoreSubsolversCount</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Rather than fully specifying subsolvers, it is often convenient to just
remove the ones that are not useful on a given problem.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>com.google.protobuf.ProtocolStringList</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getIgnoreSubsolversList()" class="member-name-link">getIgnoreSubsolversList</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Rather than fully specifying subsolvers, it is often convenient to just
remove the ones that are not useful on a given problem.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.Polarity.html" title="enum in com.google.ortools.sat">SatParameters.Polarity</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getInitialPolarity()" class="member-name-link">getInitialPolarity</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.Polarity initial_polarity = 2 [default = POLARITY_FALSE];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getInitialVariablesActivity()" class="member-name-link">getInitialVariablesActivity</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The initial value of the variables activity.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getInstantiateAllVariables()" class="member-name-link">getInstantiateAllVariables</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, the solver will add a default integer branching strategy to the
already defined search strategy.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getInterleaveBatchSize()" class="member-name-link">getInterleaveBatchSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional int32 interleave_batch_size = 134 [default = 1];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getInterleaveSearch()" class="member-name-link">getInterleaveSearch</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Experimental.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getKeepAllFeasibleSolutionsInPresolve()" class="member-name-link">getKeepAllFeasibleSolutionsInPresolve</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, we disable the presolve reductions that remove feasible solutions
from the search space.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLinearizationLevel()" class="member-name-link">getLinearizationLevel</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
A non-negative level indicating the type of constraints we consider in the
LP relaxation.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLogFrequencyInSeconds()" class="member-name-link">getLogFrequencyInSeconds</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Indicates how much logging should wait before logging periodic search
information from specialized workers (lb_tree_search, probing).</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLogPrefix()" class="member-name-link">getLogPrefix</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Add a prefix to all logs.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>com.google.protobuf.ByteString</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLogPrefixBytes()" class="member-name-link">getLogPrefixBytes</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Add a prefix to all logs.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLogSearchProgress()" class="member-name-link">getLogSearchProgress</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether the solver should log the search progress.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLogSubsolverStatistics()" class="member-name-link">getLogSubsolverStatistics</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether the solver should display per sub-solver search statistics.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLogToResponse()" class="member-name-link">getLogToResponse</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Log to response proto.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLogToStdout()" class="member-name-link">getLogToStdout</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Log to stdout.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxAllDiffCutSize()" class="member-name-link">getMaxAllDiffCutSize</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Cut generator for all diffs can add too many cuts for large all_diff
constraints.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxClauseActivityValue()" class="member-name-link">getMaxClauseActivityValue</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double max_clause_activity_value = 18 [default = 1e+20];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxConsecutiveInactiveCount()" class="member-name-link">getMaxConsecutiveInactiveCount</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If a constraint/cut in LP is not active for that many consecutive OPTIMAL
solves, remove it from the LP.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxCutRoundsAtLevelZero()" class="member-name-link">getMaxCutRoundsAtLevelZero</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Max number of time we perform cut generation and resolve the LP at level 0.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxDeterministicTime()" class="member-name-link">getMaxDeterministicTime</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Maximum time allowed in deterministic time to solve a problem.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxDomainSizeWhenEncodingEqNeqConstraints()" class="member-name-link">getMaxDomainSizeWhenEncodingEqNeqConstraints</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When loading a*x + b*y ==/!= c when x and y are both fully encoded.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxIntegerRoundingScaling()" class="member-name-link">getMaxIntegerRoundingScaling</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In the integer rounding procedure used for MIR and Gomory cut, the maximum
"scaling" we use (must be positive).</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>long</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxMemoryInMb()" class="member-name-link">getMaxMemoryInMb</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Maximum memory allowed for the whole thread containing the solver.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>long</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxNumberOfConflicts()" class="member-name-link">getMaxNumberOfConflicts</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Maximum number of conflicts allowed to solve a problem.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxNumCuts()" class="member-name-link">getMaxNumCuts</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The limit on the number of cuts in our cut pool.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxPresolveIterations()" class="member-name-link">getMaxPresolveIterations</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In case of large reduction in a presolve iteration, we perform multiple
presolve iterations.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.MaxSatAssumptionOrder.html" title="enum in com.google.ortools.sat">SatParameters.MaxSatAssumptionOrder</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxSatAssumptionOrder()" class="member-name-link">getMaxSatAssumptionOrder</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.MaxSatAssumptionOrder max_sat_assumption_order = 51 [default = DEFAULT_ASSUMPTION_ORDER];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxSatReverseAssumptionOrder()" class="member-name-link">getMaxSatReverseAssumptionOrder</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, adds the assumption in the reverse order of the one defined by
max_sat_assumption_order.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.MaxSatStratificationAlgorithm.html" title="enum in com.google.ortools.sat">SatParameters.MaxSatStratificationAlgorithm</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxSatStratification()" class="member-name-link">getMaxSatStratification</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.MaxSatStratificationAlgorithm max_sat_stratification = 53 [default = STRATIFICATION_DESCENT];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxTimeInSeconds()" class="member-name-link">getMaxTimeInSeconds</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Maximum time allowed in seconds to solve a problem.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxVariableActivityValue()" class="member-name-link">getMaxVariableActivityValue</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double max_variable_activity_value = 16 [default = 1e+100];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMergeAtMostOneWorkLimit()" class="member-name-link">getMergeAtMostOneWorkLimit</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double merge_at_most_one_work_limit = 146 [default = 100000000];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMergeNoOverlapWorkLimit()" class="member-name-link">getMergeNoOverlapWorkLimit</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
During presolve, we use a maximum clique heuristic to merge together
no-overlap constraints or at most one constraints.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.ConflictMinimizationAlgorithm.html" title="enum in com.google.ortools.sat">SatParameters.ConflictMinimizationAlgorithm</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMinimizationAlgorithm()" class="member-name-link">getMinimizationAlgorithm</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.ConflictMinimizationAlgorithm minimization_algorithm = 4 [default = RECURSIVE];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMinimizeCore()" class="member-name-link">getMinimizeCore</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we use a simple heuristic to try to minimize an UNSAT core.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMinimizeReductionDuringPbResolution()" class="member-name-link">getMinimizeReductionDuringPbResolution</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
A different algorithm during PB resolution.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMinimizeWithPropagationNumDecisions()" class="member-name-link">getMinimizeWithPropagationNumDecisions</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional int32 minimize_with_propagation_num_decisions = 97 [default = 1000];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMinimizeWithPropagationRestartPeriod()" class="member-name-link">getMinimizeWithPropagationRestartPeriod</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Parameters for an heuristic similar to the one described in "An effective
learnt clause minimization approach for CDCL Sat Solvers",
https://www.ijcai.org/proceedings/2017/0098.pdf
For now, we have a somewhat simpler implementation where every x restart we
spend y decisions on clause minimization.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMinNumLnsWorkers()" class="member-name-link">getMinNumLnsWorkers</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If there is an objective and we are not in interleave mode, we will reserve
at least this number of worker for LNS thread.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMinOrthogonalityForLpConstraints()" class="member-name-link">getMinOrthogonalityForLpConstraints</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
While adding constraints, skip the constraints which have orthogonality
less than 'min_orthogonality_for_lp_constraints' with already added
constraints during current call.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMipAutomaticallyScaleVariables()" class="member-name-link">getMipAutomaticallyScaleVariables</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, some continuous variable might be automatically scaled.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMipCheckPrecision()" class="member-name-link">getMipCheckPrecision</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
As explained in mip_precision and mip_max_activity_exponent, we cannot
always reach the wanted precision during scaling.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMipComputeTrueObjectiveBound()" class="member-name-link">getMipComputeTrueObjectiveBound</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Even if we make big error when scaling the objective, we can always derive
a correct lower bound on the original objective by using the exact lower
bound on the scaled integer version of the objective.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMipMaxActivityExponent()" class="member-name-link">getMipMaxActivityExponent</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
To avoid integer overflow, we always force the maximum possible constraint
activity (and objective value) according to the initial variable domain to
be smaller than 2 to this given power.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMipMaxBound()" class="member-name-link">getMipMaxBound</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
We need to bound the maximum magnitude of the variables for CP-SAT, and
that is the bound we use.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMipMaxValidMagnitude()" class="member-name-link">getMipMaxValidMagnitude</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Any finite values in the input MIP must be below this threshold, otherwise
the model will be reported invalid.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMipVarScaling()" class="member-name-link">getMipVarScaling</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
All continuous variable of the problem will be multiplied by this factor.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMipWantedPrecision()" class="member-name-link">getMipWantedPrecision</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When scaling constraint with double coefficients to integer coefficients,
we will multiply by a power of 2 and round the coefficients.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getName()" class="member-name-link">getName</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In some context, like in a portfolio of search, it makes sense to name a
given parameters set for logging purpose.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>com.google.protobuf.ByteString</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getNameBytes()" class="member-name-link">getNameBytes</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In some context, like in a portfolio of search, it makes sense to name a
given parameters set for logging purpose.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getNewConstraintsBatchSize()" class="member-name-link">getNewConstraintsBatchSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Add that many lazy constraints (or cuts) at once in the LP.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getNumConflictsBeforeStrategyChanges()" class="member-name-link">getNumConflictsBeforeStrategyChanges</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
After each restart, if the number of conflict since the last strategy
change is greater that this, then we increment a "strategy_counter" that
can be use to change the search strategy used by the following restarts.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getNumSearchWorkers()" class="member-name-link">getNumSearchWorkers</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional int32 num_search_workers = 100 [default = 0];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getNumWorkers()" class="member-name-link">getNumWorkers</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Specify the number of parallel workers (i.e.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOnlyAddCutsAtLevelZero()" class="member-name-link">getOnlyAddCutsAtLevelZero</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
For the cut that can be generated at any level, this control if we only
try to generate them at the root node.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOptimizeWithCore()" class="member-name-link">getOptimizeWithCore</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The default optimization method is a simple "linear scan", each time trying
to find a better solution than the previous one.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOptimizeWithLbTreeSearch()" class="member-name-link">getOptimizeWithLbTreeSearch</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Do a more conventional tree search (by opposition to SAT based one) where
we keep all the explored node in a tree.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOptimizeWithMaxHs()" class="member-name-link">getOptimizeWithMaxHs</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
This has no effect if optimize_with_core is false.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>com.google.protobuf.Parser&lt;<a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getParserForType()" class="member-name-link">getParserForType</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPbCleanupIncrement()" class="member-name-link">getPbCleanupIncrement</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Same as for the clauses, but for the learned pseudo-Boolean constraints.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPbCleanupRatio()" class="member-name-link">getPbCleanupRatio</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double pb_cleanup_ratio = 47 [default = 0.5];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPermutePresolveConstraintOrder()" class="member-name-link">getPermutePresolveConstraintOrder</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional bool permute_presolve_constraint_order = 179 [default = false];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPermuteVariableRandomly()" class="member-name-link">getPermuteVariableRandomly</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
This is mainly here to test the solver variability.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPolarityRephaseIncrement()" class="member-name-link">getPolarityRephaseIncrement</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If non-zero, then we change the polarity heuristic after that many number
of conflicts in an arithmetically increasing fashion.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPolishLpSolution()" class="member-name-link">getPolishLpSolution</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we try to do a few degenerate iteration at the end of an LP solve
to minimize the fractionality of the integer variable in the basis.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.VariableOrder.html" title="enum in com.google.ortools.sat">SatParameters.VariableOrder</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPreferredVariableOrder()" class="member-name-link">getPreferredVariableOrder</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.VariableOrder preferred_variable_order = 1 [default = IN_ORDER];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPresolveBlockedClause()" class="member-name-link">getPresolveBlockedClause</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we use an heuristic to detect some basic case of blocked clause
in the SAT presolve.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPresolveBvaThreshold()" class="member-name-link">getPresolveBvaThreshold</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Apply Bounded Variable Addition (BVA) if the number of clauses is reduced
by stricly more than this threshold.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPresolveBveClauseWeight()" class="member-name-link">getPresolveBveClauseWeight</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
During presolve, we apply BVE only if this weight times the number of
clauses plus the number of clause literals is not increased.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPresolveBveThreshold()" class="member-name-link">getPresolveBveThreshold</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
During presolve, only try to perform the bounded variable elimination (BVE)
of a variable x if the number of occurrences of x times the number of
occurrences of not(x) is not greater than this parameter.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPresolveExtractIntegerEnforcement()" class="member-name-link">getPresolveExtractIntegerEnforcement</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, we will extract from linear constraints, enforcement literals of
the form "integer variable at bound =&gt; simplified constraint".</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>long</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPresolveInclusionWorkLimit()" class="member-name-link">getPresolveInclusionWorkLimit</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
A few presolve operations involve detecting constraints included in other
constraint.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPresolveProbingDeterministicTimeLimit()" class="member-name-link">getPresolveProbingDeterministicTimeLimit</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The maximum "deterministic" time limit to spend in probing.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPresolveSubstitutionLevel()" class="member-name-link">getPresolveSubstitutionLevel</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
How much substitution (also called free variable aggregation in MIP
litterature) should we perform at presolve.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPresolveUseBva()" class="member-name-link">getPresolveUseBva</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether or not we use Bounded Variable Addition (BVA) in the presolve.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>long</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getProbingPeriodAtRoot()" class="member-name-link">getProbingPeriodAtRoot</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If set at zero (the default), it is disabled.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>long</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPseudoCostReliabilityThreshold()" class="member-name-link">getPseudoCostReliabilityThreshold</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The solver ignores the pseudo costs of variables with number of recordings
less than this threshold.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRandomBranchesRatio()" class="member-name-link">getRandomBranchesRatio</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
A number between 0 and 1 that indicates the proportion of branching
variables that are selected randomly instead of choosing the first variable
from the given variable_ordering strategy.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRandomizeSearch()" class="member-name-link">getRandomizeSearch</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Randomize fixed search.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRandomPolarityRatio()" class="member-name-link">getRandomPolarityRatio</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The proportion of polarity chosen at random.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRandomSeed()" class="member-name-link">getRandomSeed</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
At the beginning of each solve, the random number generator used in some
part of the solver is reinitialized to this seed.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getReduceMemoryUsageInInterleaveMode()" class="member-name-link">getReduceMemoryUsageInInterleaveMode</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Temporary parameter until the memory usage is more optimized.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRelativeGapLimit()" class="member-name-link">getRelativeGapLimit</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double relative_gap_limit = 160 [default = 0];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRepairHint()" class="member-name-link">getRepairHint</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, the solver tries to repair the solution given in the hint.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.RestartAlgorithm.html" title="enum in com.google.ortools.sat">SatParameters.RestartAlgorithm</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRestartAlgorithms(int)" class="member-name-link">getRestartAlgorithms</a><wbr>(int&nbsp;index)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The restart strategies will change each time the strategy_counter is
increased.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRestartAlgorithmsCount()" class="member-name-link">getRestartAlgorithmsCount</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The restart strategies will change each time the strategy_counter is
increased.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="SatParameters.RestartAlgorithm.html" title="enum in com.google.ortools.sat">SatParameters.RestartAlgorithm</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRestartAlgorithmsList()" class="member-name-link">getRestartAlgorithmsList</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The restart strategies will change each time the strategy_counter is
increased.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRestartDlAverageRatio()" class="member-name-link">getRestartDlAverageRatio</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In the moving average restart algorithms, a restart is triggered if the
window average times this ratio is greater that the global average.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRestartLbdAverageRatio()" class="member-name-link">getRestartLbdAverageRatio</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double restart_lbd_average_ratio = 71 [default = 1];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRestartPeriod()" class="member-name-link">getRestartPeriod</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Restart period for the FIXED_RESTART strategy.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRestartRunningWindowSize()" class="member-name-link">getRestartRunningWindowSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Size of the window for the moving average restarts.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.SearchBranching.html" title="enum in com.google.ortools.sat">SatParameters.SearchBranching</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSearchBranching()" class="member-name-link">getSearchBranching</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.SearchBranching search_branching = 82 [default = AUTOMATIC_SEARCH];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>long</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSearchRandomizationTolerance()" class="member-name-link">getSearchRandomizationTolerance</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Search randomization will collect equivalent 'max valued' variables, and
pick one randomly.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSerializedSize()" class="member-name-link">getSerializedSize</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getShareBinaryClauses()" class="member-name-link">getShareBinaryClauses</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Allows sharing of new learned binary clause between workers.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getShareLevelZeroBounds()" class="member-name-link">getShareLevelZeroBounds</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Allows sharing of the bounds of modified variables at level 0.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getShareObjectiveBounds()" class="member-name-link">getShareObjectiveBounds</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Allows objective sharing between workers.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getShavingSearchDeterministicTime()" class="member-name-link">getShavingSearchDeterministicTime</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Specifies the amount of deterministic time spent of each try at shaving a
bound in the shaving search.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSolutionPoolSize()" class="member-name-link">getSolutionPoolSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Size of the top-n different solutions kept by the solver.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getStopAfterFirstSolution()" class="member-name-link">getStopAfterFirstSolution</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
For an optimization problem, stop the solver as soon as we have a solution.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getStopAfterPresolve()" class="member-name-link">getStopAfterPresolve</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Mainly used when improving the presolver.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getStrategyChangeIncreaseRatio()" class="member-name-link">getStrategyChangeIncreaseRatio</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The parameter num_conflicts_before_strategy_changes is increased by that
much after each strategy change.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSubsolverParams(int)" class="member-name-link">getSubsolverParams</a><wbr>(int&nbsp;index)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
It is possible to specify additional subsolver configuration.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSubsolverParamsCount()" class="member-name-link">getSubsolverParamsCount</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
It is possible to specify additional subsolver configuration.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSubsolverParamsList()" class="member-name-link">getSubsolverParamsList</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
It is possible to specify additional subsolver configuration.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSubsolverParamsOrBuilder(int)" class="member-name-link">getSubsolverParamsOrBuilder</a><wbr>(int&nbsp;index)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
It is possible to specify additional subsolver configuration.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;? extends <a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSubsolverParamsOrBuilderList()" class="member-name-link">getSubsolverParamsOrBuilderList</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
It is possible to specify additional subsolver configuration.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSubsolvers(int)" class="member-name-link">getSubsolvers</a><wbr>(int&nbsp;index)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In multi-thread, the solver can be mainly seen as a portfolio of solvers
with different parameters.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>com.google.protobuf.ByteString</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSubsolversBytes(int)" class="member-name-link">getSubsolversBytes</a><wbr>(int&nbsp;index)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In multi-thread, the solver can be mainly seen as a portfolio of solvers
with different parameters.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSubsolversCount()" class="member-name-link">getSubsolversCount</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In multi-thread, the solver can be mainly seen as a portfolio of solvers
with different parameters.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>com.google.protobuf.ProtocolStringList</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSubsolversList()" class="member-name-link">getSubsolversList</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In multi-thread, the solver can be mainly seen as a portfolio of solvers
with different parameters.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSubsumptionDuringConflictAnalysis()" class="member-name-link">getSubsumptionDuringConflictAnalysis</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
At a really low cost, during the 1-UIP conflict computation, it is easy to
detect if some of the involved reasons are subsumed by the current
conflict.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSymmetryLevel()" class="member-name-link">getSymmetryLevel</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we try to automatically detect the symmetries in a model and
exploit them.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final com.google.protobuf.UnknownFieldSet</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUnknownFields()" class="member-name-link">getUnknownFields</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseAbslRandom()" class="member-name-link">getUseAbslRandom</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional bool use_absl_random = 180 [default = false];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseBlockingRestart()" class="member-name-link">getUseBlockingRestart</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Block a moving restart algorithm if the trail size of the current conflict
is greater than the multiplier times the moving average of the trail size
at the previous conflicts.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseBranchingInLp()" class="member-name-link">getUseBranchingInLp</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, the solver attemts to generate more info inside lp propagator by
branching on some variables if certain criteria are met during the search
tree exploration.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseCombinedNoOverlap()" class="member-name-link">getUseCombinedNoOverlap</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
This can be beneficial if there is a lot of no-overlap constraints but a
relatively low number of different intervals in the problem.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseCumulativeInNoOverlap2D()" class="member-name-link">getUseCumulativeInNoOverlap2D</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, the no_overlap_2d constraint is reinforced with
propagators from the cumulative constraints.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseDisjunctiveConstraintInCumulativeConstraint()" class="member-name-link">getUseDisjunctiveConstraintInCumulativeConstraint</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, the cumulative constraint is reinforced with propagators
from the disjunctive constraint to improve the inference on a set of tasks
that are disjunctive at the root of the problem.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseErwaHeuristic()" class="member-name-link">getUseErwaHeuristic</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we use the ERWA (Exponential Recency Weighted Average) heuristic as
described in "Learning Rate Based Branching Heuristic for SAT solvers",
J.H.Liang, V.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseExactLpReason()" class="member-name-link">getUseExactLpReason</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The solver usually exploit the LP relaxation of a model.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseFeasibilityPump()" class="member-name-link">getUseFeasibilityPump</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Adds a feasibility pump subsolver along with lns subsolvers.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseImpliedBounds()" class="member-name-link">getUseImpliedBounds</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Stores and exploits "implied-bounds" in the solver.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseLnsOnly()" class="member-name-link">getUseLnsOnly</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
LNS parameters.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseOptimizationHints()" class="member-name-link">getUseOptimizationHints</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
For an optimization problem, whether we follow some hints in order to find
a better first solution.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseOptionalVariables()" class="member-name-link">getUseOptionalVariables</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, we automatically detect variables whose constraint are always
enforced by the same literal and we mark them as optional.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseOverloadCheckerInCumulativeConstraint()" class="member-name-link">getUseOverloadCheckerInCumulativeConstraint</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, the cumulative constraint is reinforced with overload
checking, i.e., an additional level of reasoning based on energy.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUsePbResolution()" class="member-name-link">getUsePbResolution</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether to use pseudo-Boolean resolution to analyze a conflict.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUsePhaseSaving()" class="member-name-link">getUsePhaseSaving</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If this is true, then the polarity of a variable will be the last value it
was assigned to, or its default polarity if it was never assigned since the
call to ResetDecisionHeuristic().</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUsePrecedencesInDisjunctiveConstraint()" class="member-name-link">getUsePrecedencesInDisjunctiveConstraint</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, then a disjunctive constraint will try to use the
precedence relations between time intervals to propagate their bounds
further.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseProbingSearch()" class="member-name-link">getUseProbingSearch</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, search will continuously probe Boolean variables, and integer
variable bounds.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseRelaxationLns()" class="member-name-link">getUseRelaxationLns</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Turns on a lns worker which solves relaxed version of the original problem
by removing constraints from the problem in order to get better bounds.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseRinsLns()" class="member-name-link">getUseRinsLns</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Turns on relaxation induced neighborhood generator.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseSatInprocessing()" class="member-name-link">getUseSatInprocessing</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional bool use_sat_inprocessing = 163 [default = false];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseShavingInProbingSearch()" class="member-name-link">getUseShavingInProbingSearch</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Add a shaving phase (where the solver tries to prove that the lower or
upper bound of a variable are infeasible) to the probing search.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUseTimetableEdgeFindingInCumulativeConstraint()" class="member-name-link">getUseTimetableEdgeFindingInCumulativeConstraint</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, the cumulative constraint is reinforced with timetable
edge finding, i.e., an additional level of reasoning based on the
conjunction of energy and mandatory parts.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getVariableActivityDecay()" class="member-name-link">getVariableActivityDecay</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Each time a conflict is found, the activities of some variables are
increased by one.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasAbsoluteGapLimit()" class="member-name-link">hasAbsoluteGapLimit</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Stop the search when the gap between the best feasible objective (O) and
our best objective bound (B) is smaller than a limit.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasAddCgCuts()" class="member-name-link">hasAddCgCuts</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we generate and add Chvatal-Gomory cuts to the LP at root node.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasAddCliqueCuts()" class="member-name-link">hasAddCliqueCuts</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we generate clique cuts from the binary implication graph.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasAddLinMaxCuts()" class="member-name-link">hasAddLinMaxCuts</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
For the lin max constraints, generates the cuts described in "Strong
mixed-integer programming formulations for trained neural networks" by Ross
Anderson et.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasAddLpConstraintsLazily()" class="member-name-link">hasAddLpConstraintsLazily</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, we start by an empty LP, and only add constraints not satisfied
by the current LP solution batch by batch.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasAddMirCuts()" class="member-name-link">hasAddMirCuts</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we generate MIR cuts at root node.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasAddObjectiveCut()" class="member-name-link">hasAddObjectiveCut</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When the LP objective is fractional, do we add the cut that forces the
linear objective expression to be greater or equal to this fractional value
rounded up? We can always do that since our objective is integer, and
combined with MIR heuristic to reduce the coefficient of such cut, it can
help.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasAddZeroHalfCuts()" class="member-name-link">hasAddZeroHalfCuts</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we generate Zero-Half cuts at root node.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasAlsoBumpVariablesInConflictReasons()" class="member-name-link">hasAlsoBumpVariablesInConflictReasons</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, then the variables that appear in any of the reason of
the variables in a conflict have their activity bumped.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasAutoDetectGreaterThanAtLeastOneOf()" class="member-name-link">hasAutoDetectGreaterThanAtLeastOneOf</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, then the precedences propagator try to detect for each variable if
it has a set of "optional incoming arc" for which at least one of them is
present.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasBinaryMinimizationAlgorithm()" class="member-name-link">hasBinaryMinimizationAlgorithm</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.BinaryMinizationAlgorithm binary_minimization_algorithm = 34 [default = BINARY_MINIMIZATION_FIRST];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasBinarySearchNumConflicts()" class="member-name-link">hasBinarySearchNumConflicts</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If non-negative, perform a binary search on the objective variable in order
to find an [min, max] interval outside of which the solver proved unsat/sat
under this amount of conflict.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasBlockingRestartMultiplier()" class="member-name-link">hasBlockingRestartMultiplier</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double blocking_restart_multiplier = 66 [default = 1.4];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasBlockingRestartWindowSize()" class="member-name-link">hasBlockingRestartWindowSize</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional int32 blocking_restart_window_size = 65 [default = 5000];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasBooleanEncodingLevel()" class="member-name-link">hasBooleanEncodingLevel</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
A non-negative level indicating how much we should try to fully encode
Integer variables as Boolean.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasCatchSigintSignal()" class="member-name-link">hasCatchSigintSignal</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Indicates if the CP-SAT layer should catch Control-C (SIGINT) signals
when calling solve.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasClauseActivityDecay()" class="member-name-link">hasClauseActivityDecay</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Clause activity parameters (same effect as the one on the variables).</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasClauseCleanupLbdBound()" class="member-name-link">hasClauseCleanupLbdBound</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
All the clauses with a LBD (literal blocks distance) lower or equal to this
parameters will always be kept.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasClauseCleanupOrdering()" class="member-name-link">hasClauseCleanupOrdering</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.ClauseOrdering clause_cleanup_ordering = 60 [default = CLAUSE_ACTIVITY];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasClauseCleanupPeriod()" class="member-name-link">hasClauseCleanupPeriod</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Trigger a cleanup when this number of "deletable" clauses is learned.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasClauseCleanupProtection()" class="member-name-link">hasClauseCleanupProtection</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.ClauseProtection clause_cleanup_protection = 58 [default = PROTECTION_NONE];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasClauseCleanupRatio()" class="member-name-link">hasClauseCleanupRatio</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
During a cleanup, if clause_cleanup_target is 0, we will delete the
clause_cleanup_ratio of "deletable" clauses instead of aiming for a fixed
target of clauses to keep.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasClauseCleanupTarget()" class="member-name-link">hasClauseCleanupTarget</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
During a cleanup, we will always keep that number of "deletable" clauses.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasConvertIntervals()" class="member-name-link">hasConvertIntervals</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Temporary flag util the feature is more mature.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasCountAssumptionLevelsInLbd()" class="member-name-link">hasCountAssumptionLevelsInLbd</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether or not the assumption levels are taken into account during the LBD
computation.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasCoverOptimization()" class="member-name-link">hasCoverOptimization</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, when the max-sat algo find a core, we compute the minimal number
of literals in the core that needs to be true to have a feasible solution.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasCpModelPresolve()" class="member-name-link">hasCpModelPresolve</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we presolve the cp_model before solving it.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasCpModelProbingLevel()" class="member-name-link">hasCpModelProbingLevel</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
How much effort do we spend on probing.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasCpModelUseSatPresolve()" class="member-name-link">hasCpModelUseSatPresolve</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we also use the sat presolve when cp_model_presolve is true.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasCutActiveCountDecay()" class="member-name-link">hasCutActiveCountDecay</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double cut_active_count_decay = 156 [default = 0.8];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasCutCleanupTarget()" class="member-name-link">hasCutCleanupTarget</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Target number of constraints to remove during cleanup.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasCutLevel()" class="member-name-link">hasCutLevel</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Control the global cut effort.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasCutMaxActiveCountValue()" class="member-name-link">hasCutMaxActiveCountValue</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
These parameters are similar to sat clause management activity parameters.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasDebugCrashOnBadHint()" class="member-name-link">hasDebugCrashOnBadHint</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Crash if we do not manage to complete the hint into a full solution.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasDebugMaxNumPresolveOperations()" class="member-name-link">hasDebugMaxNumPresolveOperations</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If positive, try to stop just after that many presolve rules have been
applied.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasDebugPostsolveWithFullSolver()" class="member-name-link">hasDebugPostsolveWithFullSolver</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
We have two different postsolve code.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasDefaultRestartAlgorithms()" class="member-name-link">hasDefaultRestartAlgorithms</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional string default_restart_algorithms = 70 [default = "LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART"];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasDisableConstraintExpansion()" class="member-name-link">hasDisableConstraintExpansion</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, it disable all constraint expansion.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasDiversifyLnsParams()" class="member-name-link">hasDiversifyLnsParams</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, registers more lns subsolvers with different parameters.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasEnumerateAllSolutions()" class="member-name-link">hasEnumerateAllSolutions</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we enumerate all solutions of a problem without objective.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasExpandAlldiffConstraints()" class="member-name-link">hasExpandAlldiffConstraints</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, expand all_different constraints that are not permutations.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasExploitAllLpSolution()" class="member-name-link">hasExploitAllLpSolution</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true and the Lp relaxation of the problem has a solution, try to exploit
it.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasExploitBestSolution()" class="member-name-link">hasExploitBestSolution</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When branching on a variable, follow the last best solution value.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasExploitIntegerLpSolution()" class="member-name-link">hasExploitIntegerLpSolution</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true and the Lp relaxation of the problem has an integer optimal
solution, try to exploit it.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasExploitObjective()" class="member-name-link">hasExploitObjective</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When branching an a variable that directly affect the objective,
branch on the value that lead to the best objective first.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasExploitRelaxationSolution()" class="member-name-link">hasExploitRelaxationSolution</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When branching on a variable, follow the last best relaxation solution
value.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasFillAdditionalSolutionsInResponse()" class="member-name-link">hasFillAdditionalSolutionsInResponse</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, the final response addition_solutions field will be filled with
all solutions from our solutions pool.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasFillTightenedDomainsInResponse()" class="member-name-link">hasFillTightenedDomainsInResponse</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, add information about the derived variable domains to the
CpSolverResponse.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasFindMultipleCores()" class="member-name-link">hasFindMultipleCores</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we try to find more independent cores for a given set of
assumptions in the core based max-SAT algorithms.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasFixVariablesToTheirHintedValue()" class="member-name-link">hasFixVariablesToTheirHintedValue</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, variables appearing in the solution hints will be fixed to their
hinted value.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasFpRounding()" class="member-name-link">hasFpRounding</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.FPRoundingMethod fp_rounding = 165 [default = PROPAGATION_ASSISTED];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasGlucoseDecayIncrement()" class="member-name-link">hasGlucoseDecayIncrement</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double glucose_decay_increment = 23 [default = 0.01];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasGlucoseDecayIncrementPeriod()" class="member-name-link">hasGlucoseDecayIncrementPeriod</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional int32 glucose_decay_increment_period = 24 [default = 5000];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasGlucoseMaxDecay()" class="member-name-link">hasGlucoseMaxDecay</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The activity starts at 0.8 and increment by 0.01 every 5000 conflicts until
0.95.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hashCode()" class="member-name-link">hashCode</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasHintConflictLimit()" class="member-name-link">hasHintConflictLimit</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Conflict limit used in the phase that exploit the solution hint.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasIgnoreNames()" class="member-name-link">hasIgnoreNames</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, we don't keep names in our internal copy of the user given model.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasInitialPolarity()" class="member-name-link">hasInitialPolarity</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.Polarity initial_polarity = 2 [default = POLARITY_FALSE];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasInitialVariablesActivity()" class="member-name-link">hasInitialVariablesActivity</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The initial value of the variables activity.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasInstantiateAllVariables()" class="member-name-link">hasInstantiateAllVariables</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, the solver will add a default integer branching strategy to the
already defined search strategy.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasInterleaveBatchSize()" class="member-name-link">hasInterleaveBatchSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional int32 interleave_batch_size = 134 [default = 1];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasInterleaveSearch()" class="member-name-link">hasInterleaveSearch</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Experimental.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasKeepAllFeasibleSolutionsInPresolve()" class="member-name-link">hasKeepAllFeasibleSolutionsInPresolve</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, we disable the presolve reductions that remove feasible solutions
from the search space.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasLinearizationLevel()" class="member-name-link">hasLinearizationLevel</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
A non-negative level indicating the type of constraints we consider in the
LP relaxation.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasLogFrequencyInSeconds()" class="member-name-link">hasLogFrequencyInSeconds</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Indicates how much logging should wait before logging periodic search
information from specialized workers (lb_tree_search, probing).</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasLogPrefix()" class="member-name-link">hasLogPrefix</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Add a prefix to all logs.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasLogSearchProgress()" class="member-name-link">hasLogSearchProgress</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether the solver should log the search progress.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasLogSubsolverStatistics()" class="member-name-link">hasLogSubsolverStatistics</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether the solver should display per sub-solver search statistics.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasLogToResponse()" class="member-name-link">hasLogToResponse</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Log to response proto.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasLogToStdout()" class="member-name-link">hasLogToStdout</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Log to stdout.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxAllDiffCutSize()" class="member-name-link">hasMaxAllDiffCutSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Cut generator for all diffs can add too many cuts for large all_diff
constraints.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxClauseActivityValue()" class="member-name-link">hasMaxClauseActivityValue</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double max_clause_activity_value = 18 [default = 1e+20];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxConsecutiveInactiveCount()" class="member-name-link">hasMaxConsecutiveInactiveCount</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If a constraint/cut in LP is not active for that many consecutive OPTIMAL
solves, remove it from the LP.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxCutRoundsAtLevelZero()" class="member-name-link">hasMaxCutRoundsAtLevelZero</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Max number of time we perform cut generation and resolve the LP at level 0.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxDeterministicTime()" class="member-name-link">hasMaxDeterministicTime</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Maximum time allowed in deterministic time to solve a problem.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxDomainSizeWhenEncodingEqNeqConstraints()" class="member-name-link">hasMaxDomainSizeWhenEncodingEqNeqConstraints</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When loading a*x + b*y ==/!= c when x and y are both fully encoded.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxIntegerRoundingScaling()" class="member-name-link">hasMaxIntegerRoundingScaling</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In the integer rounding procedure used for MIR and Gomory cut, the maximum
"scaling" we use (must be positive).</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxMemoryInMb()" class="member-name-link">hasMaxMemoryInMb</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Maximum memory allowed for the whole thread containing the solver.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxNumberOfConflicts()" class="member-name-link">hasMaxNumberOfConflicts</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Maximum number of conflicts allowed to solve a problem.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxNumCuts()" class="member-name-link">hasMaxNumCuts</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The limit on the number of cuts in our cut pool.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxPresolveIterations()" class="member-name-link">hasMaxPresolveIterations</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In case of large reduction in a presolve iteration, we perform multiple
presolve iterations.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxSatAssumptionOrder()" class="member-name-link">hasMaxSatAssumptionOrder</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.MaxSatAssumptionOrder max_sat_assumption_order = 51 [default = DEFAULT_ASSUMPTION_ORDER];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxSatReverseAssumptionOrder()" class="member-name-link">hasMaxSatReverseAssumptionOrder</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, adds the assumption in the reverse order of the one defined by
max_sat_assumption_order.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxSatStratification()" class="member-name-link">hasMaxSatStratification</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.MaxSatStratificationAlgorithm max_sat_stratification = 53 [default = STRATIFICATION_DESCENT];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxTimeInSeconds()" class="member-name-link">hasMaxTimeInSeconds</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Maximum time allowed in seconds to solve a problem.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMaxVariableActivityValue()" class="member-name-link">hasMaxVariableActivityValue</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double max_variable_activity_value = 16 [default = 1e+100];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMergeAtMostOneWorkLimit()" class="member-name-link">hasMergeAtMostOneWorkLimit</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double merge_at_most_one_work_limit = 146 [default = 100000000];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMergeNoOverlapWorkLimit()" class="member-name-link">hasMergeNoOverlapWorkLimit</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
During presolve, we use a maximum clique heuristic to merge together
no-overlap constraints or at most one constraints.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMinimizationAlgorithm()" class="member-name-link">hasMinimizationAlgorithm</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.ConflictMinimizationAlgorithm minimization_algorithm = 4 [default = RECURSIVE];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMinimizeCore()" class="member-name-link">hasMinimizeCore</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we use a simple heuristic to try to minimize an UNSAT core.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMinimizeReductionDuringPbResolution()" class="member-name-link">hasMinimizeReductionDuringPbResolution</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
A different algorithm during PB resolution.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMinimizeWithPropagationNumDecisions()" class="member-name-link">hasMinimizeWithPropagationNumDecisions</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional int32 minimize_with_propagation_num_decisions = 97 [default = 1000];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMinimizeWithPropagationRestartPeriod()" class="member-name-link">hasMinimizeWithPropagationRestartPeriod</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Parameters for an heuristic similar to the one described in "An effective
learnt clause minimization approach for CDCL Sat Solvers",
https://www.ijcai.org/proceedings/2017/0098.pdf
For now, we have a somewhat simpler implementation where every x restart we
spend y decisions on clause minimization.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMinNumLnsWorkers()" class="member-name-link">hasMinNumLnsWorkers</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If there is an objective and we are not in interleave mode, we will reserve
at least this number of worker for LNS thread.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMinOrthogonalityForLpConstraints()" class="member-name-link">hasMinOrthogonalityForLpConstraints</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
While adding constraints, skip the constraints which have orthogonality
less than 'min_orthogonality_for_lp_constraints' with already added
constraints during current call.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMipAutomaticallyScaleVariables()" class="member-name-link">hasMipAutomaticallyScaleVariables</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, some continuous variable might be automatically scaled.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMipCheckPrecision()" class="member-name-link">hasMipCheckPrecision</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
As explained in mip_precision and mip_max_activity_exponent, we cannot
always reach the wanted precision during scaling.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMipComputeTrueObjectiveBound()" class="member-name-link">hasMipComputeTrueObjectiveBound</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Even if we make big error when scaling the objective, we can always derive
a correct lower bound on the original objective by using the exact lower
bound on the scaled integer version of the objective.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMipMaxActivityExponent()" class="member-name-link">hasMipMaxActivityExponent</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
To avoid integer overflow, we always force the maximum possible constraint
activity (and objective value) according to the initial variable domain to
be smaller than 2 to this given power.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMipMaxBound()" class="member-name-link">hasMipMaxBound</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
We need to bound the maximum magnitude of the variables for CP-SAT, and
that is the bound we use.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMipMaxValidMagnitude()" class="member-name-link">hasMipMaxValidMagnitude</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Any finite values in the input MIP must be below this threshold, otherwise
the model will be reported invalid.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMipVarScaling()" class="member-name-link">hasMipVarScaling</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
All continuous variable of the problem will be multiplied by this factor.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasMipWantedPrecision()" class="member-name-link">hasMipWantedPrecision</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When scaling constraint with double coefficients to integer coefficients,
we will multiply by a power of 2 and round the coefficients.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasName()" class="member-name-link">hasName</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In some context, like in a portfolio of search, it makes sense to name a
given parameters set for logging purpose.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasNewConstraintsBatchSize()" class="member-name-link">hasNewConstraintsBatchSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Add that many lazy constraints (or cuts) at once in the LP.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasNumConflictsBeforeStrategyChanges()" class="member-name-link">hasNumConflictsBeforeStrategyChanges</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
After each restart, if the number of conflict since the last strategy
change is greater that this, then we increment a "strategy_counter" that
can be use to change the search strategy used by the following restarts.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasNumSearchWorkers()" class="member-name-link">hasNumSearchWorkers</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional int32 num_search_workers = 100 [default = 0];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasNumWorkers()" class="member-name-link">hasNumWorkers</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Specify the number of parallel workers (i.e.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasOnlyAddCutsAtLevelZero()" class="member-name-link">hasOnlyAddCutsAtLevelZero</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
For the cut that can be generated at any level, this control if we only
try to generate them at the root node.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasOptimizeWithCore()" class="member-name-link">hasOptimizeWithCore</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The default optimization method is a simple "linear scan", each time trying
to find a better solution than the previous one.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasOptimizeWithLbTreeSearch()" class="member-name-link">hasOptimizeWithLbTreeSearch</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Do a more conventional tree search (by opposition to SAT based one) where
we keep all the explored node in a tree.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasOptimizeWithMaxHs()" class="member-name-link">hasOptimizeWithMaxHs</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
This has no effect if optimize_with_core is false.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPbCleanupIncrement()" class="member-name-link">hasPbCleanupIncrement</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Same as for the clauses, but for the learned pseudo-Boolean constraints.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPbCleanupRatio()" class="member-name-link">hasPbCleanupRatio</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double pb_cleanup_ratio = 47 [default = 0.5];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPermutePresolveConstraintOrder()" class="member-name-link">hasPermutePresolveConstraintOrder</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional bool permute_presolve_constraint_order = 179 [default = false];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPermuteVariableRandomly()" class="member-name-link">hasPermuteVariableRandomly</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
This is mainly here to test the solver variability.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPolarityRephaseIncrement()" class="member-name-link">hasPolarityRephaseIncrement</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If non-zero, then we change the polarity heuristic after that many number
of conflicts in an arithmetically increasing fashion.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPolishLpSolution()" class="member-name-link">hasPolishLpSolution</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we try to do a few degenerate iteration at the end of an LP solve
to minimize the fractionality of the integer variable in the basis.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPreferredVariableOrder()" class="member-name-link">hasPreferredVariableOrder</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.VariableOrder preferred_variable_order = 1 [default = IN_ORDER];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPresolveBlockedClause()" class="member-name-link">hasPresolveBlockedClause</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we use an heuristic to detect some basic case of blocked clause
in the SAT presolve.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPresolveBvaThreshold()" class="member-name-link">hasPresolveBvaThreshold</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Apply Bounded Variable Addition (BVA) if the number of clauses is reduced
by stricly more than this threshold.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPresolveBveClauseWeight()" class="member-name-link">hasPresolveBveClauseWeight</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
During presolve, we apply BVE only if this weight times the number of
clauses plus the number of clause literals is not increased.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPresolveBveThreshold()" class="member-name-link">hasPresolveBveThreshold</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
During presolve, only try to perform the bounded variable elimination (BVE)
of a variable x if the number of occurrences of x times the number of
occurrences of not(x) is not greater than this parameter.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPresolveExtractIntegerEnforcement()" class="member-name-link">hasPresolveExtractIntegerEnforcement</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, we will extract from linear constraints, enforcement literals of
the form "integer variable at bound =&gt; simplified constraint".</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPresolveInclusionWorkLimit()" class="member-name-link">hasPresolveInclusionWorkLimit</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
A few presolve operations involve detecting constraints included in other
constraint.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPresolveProbingDeterministicTimeLimit()" class="member-name-link">hasPresolveProbingDeterministicTimeLimit</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The maximum "deterministic" time limit to spend in probing.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPresolveSubstitutionLevel()" class="member-name-link">hasPresolveSubstitutionLevel</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
How much substitution (also called free variable aggregation in MIP
litterature) should we perform at presolve.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPresolveUseBva()" class="member-name-link">hasPresolveUseBva</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether or not we use Bounded Variable Addition (BVA) in the presolve.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasProbingPeriodAtRoot()" class="member-name-link">hasProbingPeriodAtRoot</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If set at zero (the default), it is disabled.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPseudoCostReliabilityThreshold()" class="member-name-link">hasPseudoCostReliabilityThreshold</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The solver ignores the pseudo costs of variables with number of recordings
less than this threshold.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasRandomBranchesRatio()" class="member-name-link">hasRandomBranchesRatio</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
A number between 0 and 1 that indicates the proportion of branching
variables that are selected randomly instead of choosing the first variable
from the given variable_ordering strategy.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasRandomizeSearch()" class="member-name-link">hasRandomizeSearch</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Randomize fixed search.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasRandomPolarityRatio()" class="member-name-link">hasRandomPolarityRatio</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The proportion of polarity chosen at random.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasRandomSeed()" class="member-name-link">hasRandomSeed</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
At the beginning of each solve, the random number generator used in some
part of the solver is reinitialized to this seed.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasReduceMemoryUsageInInterleaveMode()" class="member-name-link">hasReduceMemoryUsageInInterleaveMode</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Temporary parameter until the memory usage is more optimized.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasRelativeGapLimit()" class="member-name-link">hasRelativeGapLimit</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double relative_gap_limit = 160 [default = 0];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasRepairHint()" class="member-name-link">hasRepairHint</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, the solver tries to repair the solution given in the hint.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasRestartDlAverageRatio()" class="member-name-link">hasRestartDlAverageRatio</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
In the moving average restart algorithms, a restart is triggered if the
window average times this ratio is greater that the global average.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasRestartLbdAverageRatio()" class="member-name-link">hasRestartLbdAverageRatio</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional double restart_lbd_average_ratio = 71 [default = 1];</code></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasRestartPeriod()" class="member-name-link">hasRestartPeriod</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Restart period for the FIXED_RESTART strategy.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasRestartRunningWindowSize()" class="member-name-link">hasRestartRunningWindowSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Size of the window for the moving average restarts.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasSearchBranching()" class="member-name-link">hasSearchBranching</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional .operations_research.sat.SatParameters.SearchBranching search_branching = 82 [default = AUTOMATIC_SEARCH];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasSearchRandomizationTolerance()" class="member-name-link">hasSearchRandomizationTolerance</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Search randomization will collect equivalent 'max valued' variables, and
pick one randomly.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasShareBinaryClauses()" class="member-name-link">hasShareBinaryClauses</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Allows sharing of new learned binary clause between workers.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasShareLevelZeroBounds()" class="member-name-link">hasShareLevelZeroBounds</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Allows sharing of the bounds of modified variables at level 0.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasShareObjectiveBounds()" class="member-name-link">hasShareObjectiveBounds</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Allows objective sharing between workers.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasShavingSearchDeterministicTime()" class="member-name-link">hasShavingSearchDeterministicTime</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Specifies the amount of deterministic time spent of each try at shaving a
bound in the shaving search.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasSolutionPoolSize()" class="member-name-link">hasSolutionPoolSize</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Size of the top-n different solutions kept by the solver.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasStopAfterFirstSolution()" class="member-name-link">hasStopAfterFirstSolution</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
For an optimization problem, stop the solver as soon as we have a solution.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasStopAfterPresolve()" class="member-name-link">hasStopAfterPresolve</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Mainly used when improving the presolver.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasStrategyChangeIncreaseRatio()" class="member-name-link">hasStrategyChangeIncreaseRatio</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The parameter num_conflicts_before_strategy_changes is increased by that
much after each strategy change.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasSubsumptionDuringConflictAnalysis()" class="member-name-link">hasSubsumptionDuringConflictAnalysis</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
At a really low cost, during the 1-UIP conflict computation, it is easy to
detect if some of the involved reasons are subsumed by the current
conflict.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasSymmetryLevel()" class="member-name-link">hasSymmetryLevel</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we try to automatically detect the symmetries in a model and
exploit them.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseAbslRandom()" class="member-name-link">hasUseAbslRandom</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional bool use_absl_random = 180 [default = false];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseBlockingRestart()" class="member-name-link">hasUseBlockingRestart</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Block a moving restart algorithm if the trail size of the current conflict
is greater than the multiplier times the moving average of the trail size
at the previous conflicts.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseBranchingInLp()" class="member-name-link">hasUseBranchingInLp</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, the solver attemts to generate more info inside lp propagator by
branching on some variables if certain criteria are met during the search
tree exploration.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseCombinedNoOverlap()" class="member-name-link">hasUseCombinedNoOverlap</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
This can be beneficial if there is a lot of no-overlap constraints but a
relatively low number of different intervals in the problem.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseCumulativeInNoOverlap2D()" class="member-name-link">hasUseCumulativeInNoOverlap2D</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, the no_overlap_2d constraint is reinforced with
propagators from the cumulative constraints.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseDisjunctiveConstraintInCumulativeConstraint()" class="member-name-link">hasUseDisjunctiveConstraintInCumulativeConstraint</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, the cumulative constraint is reinforced with propagators
from the disjunctive constraint to improve the inference on a set of tasks
that are disjunctive at the root of the problem.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseErwaHeuristic()" class="member-name-link">hasUseErwaHeuristic</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether we use the ERWA (Exponential Recency Weighted Average) heuristic as
described in "Learning Rate Based Branching Heuristic for SAT solvers",
J.H.Liang, V.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseExactLpReason()" class="member-name-link">hasUseExactLpReason</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
The solver usually exploit the LP relaxation of a model.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseFeasibilityPump()" class="member-name-link">hasUseFeasibilityPump</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Adds a feasibility pump subsolver along with lns subsolvers.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseImpliedBounds()" class="member-name-link">hasUseImpliedBounds</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Stores and exploits "implied-bounds" in the solver.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseLnsOnly()" class="member-name-link">hasUseLnsOnly</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
LNS parameters.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseOptimizationHints()" class="member-name-link">hasUseOptimizationHints</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
For an optimization problem, whether we follow some hints in order to find
a better first solution.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseOptionalVariables()" class="member-name-link">hasUseOptionalVariables</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, we automatically detect variables whose constraint are always
enforced by the same literal and we mark them as optional.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseOverloadCheckerInCumulativeConstraint()" class="member-name-link">hasUseOverloadCheckerInCumulativeConstraint</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, the cumulative constraint is reinforced with overload
checking, i.e., an additional level of reasoning based on energy.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUsePbResolution()" class="member-name-link">hasUsePbResolution</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Whether to use pseudo-Boolean resolution to analyze a conflict.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUsePhaseSaving()" class="member-name-link">hasUsePhaseSaving</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If this is true, then the polarity of a variable will be the last value it
was assigned to, or its default polarity if it was never assigned since the
call to ResetDecisionHeuristic().</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUsePrecedencesInDisjunctiveConstraint()" class="member-name-link">hasUsePrecedencesInDisjunctiveConstraint</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, then a disjunctive constraint will try to use the
precedence relations between time intervals to propagate their bounds
further.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseProbingSearch()" class="member-name-link">hasUseProbingSearch</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
If true, search will continuously probe Boolean variables, and integer
variable bounds.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseRelaxationLns()" class="member-name-link">hasUseRelaxationLns</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Turns on a lns worker which solves relaxed version of the original problem
by removing constraints from the problem in order to get better bounds.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseRinsLns()" class="member-name-link">hasUseRinsLns</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Turns on relaxation induced neighborhood generator.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseSatInprocessing()" class="member-name-link">hasUseSatInprocessing</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block"><code>optional bool use_sat_inprocessing = 163 [default = false];</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseShavingInProbingSearch()" class="member-name-link">hasUseShavingInProbingSearch</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Add a shaving phase (where the solver tries to prove that the lower or
upper bound of a variable are infeasible) to the probing search.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasUseTimetableEdgeFindingInCumulativeConstraint()" class="member-name-link">hasUseTimetableEdgeFindingInCumulativeConstraint</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
When this is true, the cumulative constraint is reinforced with timetable
edge finding, i.e., an additional level of reasoning based on the
conjunction of energy and mandatory parts.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasVariableActivityDecay()" class="member-name-link">hasVariableActivityDecay</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">
Each time a conflict is found, the activities of some variables are
increased by one.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#internalGetFieldAccessorTable()" class="member-name-link">internalGetFieldAccessorTable</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isInitialized()" class="member-name-link">isInitialized</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.Builder.html" title="class in com.google.ortools.sat">SatParameters.Builder</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#newBuilder()" class="member-name-link">newBuilder</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.Builder.html" title="class in com.google.ortools.sat">SatParameters.Builder</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#newBuilder(com.google.ortools.sat.SatParameters)" class="member-name-link">newBuilder</a><wbr>(<a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a>&nbsp;prototype)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.Builder.html" title="class in com.google.ortools.sat">SatParameters.Builder</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#newBuilderForType()" class="member-name-link">newBuilderForType</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="SatParameters.Builder.html" title="class in com.google.ortools.sat">SatParameters.Builder</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent)" class="member-name-link">newBuilderForType</a><wbr>(com.google.protobuf.GeneratedMessageV3.BuilderParent&nbsp;parent)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter)" class="member-name-link">newInstance</a><wbr>(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter&nbsp;unused)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseDelimitedFrom(java.io.InputStream)" class="member-name-link">parseDelimitedFrom</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html" title="class or interface in java.io" class="external-link">InputStream</a>&nbsp;input)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseDelimitedFrom(java.io.InputStream,com.google.protobuf.ExtensionRegistryLite)" class="member-name-link">parseDelimitedFrom</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html" title="class or interface in java.io" class="external-link">InputStream</a>&nbsp;input,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseFrom(byte%5B%5D)" class="member-name-link">parseFrom</a><wbr>(byte[]&nbsp;data)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseFrom(byte%5B%5D,com.google.protobuf.ExtensionRegistryLite)" class="member-name-link">parseFrom</a><wbr>(byte[]&nbsp;data,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseFrom(com.google.protobuf.ByteString)" class="member-name-link">parseFrom</a><wbr>(com.google.protobuf.ByteString&nbsp;data)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseFrom(com.google.protobuf.ByteString,com.google.protobuf.ExtensionRegistryLite)" class="member-name-link">parseFrom</a><wbr>(com.google.protobuf.ByteString&nbsp;data,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseFrom(com.google.protobuf.CodedInputStream)" class="member-name-link">parseFrom</a><wbr>(com.google.protobuf.CodedInputStream&nbsp;input)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseFrom(com.google.protobuf.CodedInputStream,com.google.protobuf.ExtensionRegistryLite)" class="member-name-link">parseFrom</a><wbr>(com.google.protobuf.CodedInputStream&nbsp;input,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseFrom(java.io.InputStream)" class="member-name-link">parseFrom</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html" title="class or interface in java.io" class="external-link">InputStream</a>&nbsp;input)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseFrom(java.io.InputStream,com.google.protobuf.ExtensionRegistryLite)" class="member-name-link">parseFrom</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html" title="class or interface in java.io" class="external-link">InputStream</a>&nbsp;input,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseFrom(java.nio.ByteBuffer)" class="member-name-link">parseFrom</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html" title="class or interface in java.nio" class="external-link">ByteBuffer</a>&nbsp;data)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parseFrom(java.nio.ByteBuffer,com.google.protobuf.ExtensionRegistryLite)" class="member-name-link">parseFrom</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html" title="class or interface in java.nio" class="external-link">ByteBuffer</a>&nbsp;data,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static com.google.protobuf.Parser&lt;<a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parser()" class="member-name-link">parser</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SatParameters.Builder.html" title="class in com.google.ortools.sat">SatParameters.Builder</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toBuilder()" class="member-name-link">toBuilder</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#writeTo(com.google.protobuf.CodedOutputStream)" class="member-name-link">writeTo</a><wbr>(com.google.protobuf.CodedOutputStream&nbsp;output)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.google.protobuf.GeneratedMessageV3">Methods inherited from class&nbsp;com.google.protobuf.GeneratedMessageV3</h3>
<code>canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof, internalGetMapField, isStringEmpty, makeExtensionsImmutable, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.google.protobuf.AbstractMessage">Methods inherited from class&nbsp;com.google.protobuf.AbstractMessage</h3>
<code>findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.google.protobuf.AbstractMessageLite">Methods inherited from class&nbsp;com.google.protobuf.AbstractMessageLite</h3>
<code>addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.google.protobuf.MessageLite">Methods inherited from interface&nbsp;com.google.protobuf.MessageLite</h3>
<code>toByteArray, toByteString, writeDelimitedTo, writeTo</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.google.protobuf.MessageOrBuilder">Methods inherited from interface&nbsp;com.google.protobuf.MessageOrBuilder</h3>
<code>findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof</code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Field Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="NAME_FIELD_NUMBER">
<h3>NAME_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">NAME_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.NAME_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PREFERRED_VARIABLE_ORDER_FIELD_NUMBER">
<h3>PREFERRED_VARIABLE_ORDER_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PREFERRED_VARIABLE_ORDER_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PREFERRED_VARIABLE_ORDER_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="INITIAL_POLARITY_FIELD_NUMBER">
<h3>INITIAL_POLARITY_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">INITIAL_POLARITY_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.INITIAL_POLARITY_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_PHASE_SAVING_FIELD_NUMBER">
<h3>USE_PHASE_SAVING_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_PHASE_SAVING_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_PHASE_SAVING_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="POLARITY_REPHASE_INCREMENT_FIELD_NUMBER">
<h3>POLARITY_REPHASE_INCREMENT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">POLARITY_REPHASE_INCREMENT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.POLARITY_REPHASE_INCREMENT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="RANDOM_POLARITY_RATIO_FIELD_NUMBER">
<h3>RANDOM_POLARITY_RATIO_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">RANDOM_POLARITY_RATIO_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.RANDOM_POLARITY_RATIO_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="RANDOM_BRANCHES_RATIO_FIELD_NUMBER">
<h3>RANDOM_BRANCHES_RATIO_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">RANDOM_BRANCHES_RATIO_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.RANDOM_BRANCHES_RATIO_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_ERWA_HEURISTIC_FIELD_NUMBER">
<h3>USE_ERWA_HEURISTIC_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_ERWA_HEURISTIC_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_ERWA_HEURISTIC_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="INITIAL_VARIABLES_ACTIVITY_FIELD_NUMBER">
<h3>INITIAL_VARIABLES_ACTIVITY_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">INITIAL_VARIABLES_ACTIVITY_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.INITIAL_VARIABLES_ACTIVITY_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ALSO_BUMP_VARIABLES_IN_CONFLICT_REASONS_FIELD_NUMBER">
<h3>ALSO_BUMP_VARIABLES_IN_CONFLICT_REASONS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">ALSO_BUMP_VARIABLES_IN_CONFLICT_REASONS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.ALSO_BUMP_VARIABLES_IN_CONFLICT_REASONS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MINIMIZATION_ALGORITHM_FIELD_NUMBER">
<h3>MINIMIZATION_ALGORITHM_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MINIMIZATION_ALGORITHM_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MINIMIZATION_ALGORITHM_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="BINARY_MINIMIZATION_ALGORITHM_FIELD_NUMBER">
<h3>BINARY_MINIMIZATION_ALGORITHM_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">BINARY_MINIMIZATION_ALGORITHM_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.BINARY_MINIMIZATION_ALGORITHM_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="SUBSUMPTION_DURING_CONFLICT_ANALYSIS_FIELD_NUMBER">
<h3>SUBSUMPTION_DURING_CONFLICT_ANALYSIS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">SUBSUMPTION_DURING_CONFLICT_ANALYSIS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.SUBSUMPTION_DURING_CONFLICT_ANALYSIS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CLAUSE_CLEANUP_PERIOD_FIELD_NUMBER">
<h3>CLAUSE_CLEANUP_PERIOD_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CLAUSE_CLEANUP_PERIOD_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CLAUSE_CLEANUP_PERIOD_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CLAUSE_CLEANUP_TARGET_FIELD_NUMBER">
<h3>CLAUSE_CLEANUP_TARGET_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CLAUSE_CLEANUP_TARGET_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CLAUSE_CLEANUP_TARGET_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CLAUSE_CLEANUP_RATIO_FIELD_NUMBER">
<h3>CLAUSE_CLEANUP_RATIO_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CLAUSE_CLEANUP_RATIO_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CLAUSE_CLEANUP_RATIO_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CLAUSE_CLEANUP_PROTECTION_FIELD_NUMBER">
<h3>CLAUSE_CLEANUP_PROTECTION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CLAUSE_CLEANUP_PROTECTION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CLAUSE_CLEANUP_PROTECTION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CLAUSE_CLEANUP_LBD_BOUND_FIELD_NUMBER">
<h3>CLAUSE_CLEANUP_LBD_BOUND_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CLAUSE_CLEANUP_LBD_BOUND_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CLAUSE_CLEANUP_LBD_BOUND_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CLAUSE_CLEANUP_ORDERING_FIELD_NUMBER">
<h3>CLAUSE_CLEANUP_ORDERING_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CLAUSE_CLEANUP_ORDERING_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CLAUSE_CLEANUP_ORDERING_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PB_CLEANUP_INCREMENT_FIELD_NUMBER">
<h3>PB_CLEANUP_INCREMENT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PB_CLEANUP_INCREMENT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PB_CLEANUP_INCREMENT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PB_CLEANUP_RATIO_FIELD_NUMBER">
<h3>PB_CLEANUP_RATIO_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PB_CLEANUP_RATIO_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PB_CLEANUP_RATIO_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MINIMIZE_WITH_PROPAGATION_RESTART_PERIOD_FIELD_NUMBER">
<h3>MINIMIZE_WITH_PROPAGATION_RESTART_PERIOD_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MINIMIZE_WITH_PROPAGATION_RESTART_PERIOD_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MINIMIZE_WITH_PROPAGATION_RESTART_PERIOD_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MINIMIZE_WITH_PROPAGATION_NUM_DECISIONS_FIELD_NUMBER">
<h3>MINIMIZE_WITH_PROPAGATION_NUM_DECISIONS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MINIMIZE_WITH_PROPAGATION_NUM_DECISIONS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MINIMIZE_WITH_PROPAGATION_NUM_DECISIONS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="VARIABLE_ACTIVITY_DECAY_FIELD_NUMBER">
<h3>VARIABLE_ACTIVITY_DECAY_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">VARIABLE_ACTIVITY_DECAY_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.VARIABLE_ACTIVITY_DECAY_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_VARIABLE_ACTIVITY_VALUE_FIELD_NUMBER">
<h3>MAX_VARIABLE_ACTIVITY_VALUE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_VARIABLE_ACTIVITY_VALUE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_VARIABLE_ACTIVITY_VALUE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="GLUCOSE_MAX_DECAY_FIELD_NUMBER">
<h3>GLUCOSE_MAX_DECAY_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">GLUCOSE_MAX_DECAY_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.GLUCOSE_MAX_DECAY_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="GLUCOSE_DECAY_INCREMENT_FIELD_NUMBER">
<h3>GLUCOSE_DECAY_INCREMENT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">GLUCOSE_DECAY_INCREMENT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.GLUCOSE_DECAY_INCREMENT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="GLUCOSE_DECAY_INCREMENT_PERIOD_FIELD_NUMBER">
<h3>GLUCOSE_DECAY_INCREMENT_PERIOD_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">GLUCOSE_DECAY_INCREMENT_PERIOD_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.GLUCOSE_DECAY_INCREMENT_PERIOD_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CLAUSE_ACTIVITY_DECAY_FIELD_NUMBER">
<h3>CLAUSE_ACTIVITY_DECAY_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CLAUSE_ACTIVITY_DECAY_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CLAUSE_ACTIVITY_DECAY_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_CLAUSE_ACTIVITY_VALUE_FIELD_NUMBER">
<h3>MAX_CLAUSE_ACTIVITY_VALUE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_CLAUSE_ACTIVITY_VALUE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_CLAUSE_ACTIVITY_VALUE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="RESTART_ALGORITHMS_FIELD_NUMBER">
<h3>RESTART_ALGORITHMS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">RESTART_ALGORITHMS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.RESTART_ALGORITHMS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="DEFAULT_RESTART_ALGORITHMS_FIELD_NUMBER">
<h3>DEFAULT_RESTART_ALGORITHMS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">DEFAULT_RESTART_ALGORITHMS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.DEFAULT_RESTART_ALGORITHMS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="RESTART_PERIOD_FIELD_NUMBER">
<h3>RESTART_PERIOD_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">RESTART_PERIOD_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.RESTART_PERIOD_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="RESTART_RUNNING_WINDOW_SIZE_FIELD_NUMBER">
<h3>RESTART_RUNNING_WINDOW_SIZE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">RESTART_RUNNING_WINDOW_SIZE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.RESTART_RUNNING_WINDOW_SIZE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="RESTART_DL_AVERAGE_RATIO_FIELD_NUMBER">
<h3>RESTART_DL_AVERAGE_RATIO_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">RESTART_DL_AVERAGE_RATIO_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.RESTART_DL_AVERAGE_RATIO_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="RESTART_LBD_AVERAGE_RATIO_FIELD_NUMBER">
<h3>RESTART_LBD_AVERAGE_RATIO_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">RESTART_LBD_AVERAGE_RATIO_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.RESTART_LBD_AVERAGE_RATIO_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_BLOCKING_RESTART_FIELD_NUMBER">
<h3>USE_BLOCKING_RESTART_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_BLOCKING_RESTART_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_BLOCKING_RESTART_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="BLOCKING_RESTART_WINDOW_SIZE_FIELD_NUMBER">
<h3>BLOCKING_RESTART_WINDOW_SIZE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">BLOCKING_RESTART_WINDOW_SIZE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.BLOCKING_RESTART_WINDOW_SIZE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="BLOCKING_RESTART_MULTIPLIER_FIELD_NUMBER">
<h3>BLOCKING_RESTART_MULTIPLIER_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">BLOCKING_RESTART_MULTIPLIER_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.BLOCKING_RESTART_MULTIPLIER_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="NUM_CONFLICTS_BEFORE_STRATEGY_CHANGES_FIELD_NUMBER">
<h3>NUM_CONFLICTS_BEFORE_STRATEGY_CHANGES_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">NUM_CONFLICTS_BEFORE_STRATEGY_CHANGES_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.NUM_CONFLICTS_BEFORE_STRATEGY_CHANGES_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="STRATEGY_CHANGE_INCREASE_RATIO_FIELD_NUMBER">
<h3>STRATEGY_CHANGE_INCREASE_RATIO_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">STRATEGY_CHANGE_INCREASE_RATIO_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.STRATEGY_CHANGE_INCREASE_RATIO_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_TIME_IN_SECONDS_FIELD_NUMBER">
<h3>MAX_TIME_IN_SECONDS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_TIME_IN_SECONDS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_TIME_IN_SECONDS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_DETERMINISTIC_TIME_FIELD_NUMBER">
<h3>MAX_DETERMINISTIC_TIME_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_DETERMINISTIC_TIME_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_DETERMINISTIC_TIME_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_NUMBER_OF_CONFLICTS_FIELD_NUMBER">
<h3>MAX_NUMBER_OF_CONFLICTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_NUMBER_OF_CONFLICTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_NUMBER_OF_CONFLICTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_MEMORY_IN_MB_FIELD_NUMBER">
<h3>MAX_MEMORY_IN_MB_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_MEMORY_IN_MB_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_MEMORY_IN_MB_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ABSOLUTE_GAP_LIMIT_FIELD_NUMBER">
<h3>ABSOLUTE_GAP_LIMIT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">ABSOLUTE_GAP_LIMIT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.ABSOLUTE_GAP_LIMIT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="RELATIVE_GAP_LIMIT_FIELD_NUMBER">
<h3>RELATIVE_GAP_LIMIT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">RELATIVE_GAP_LIMIT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.RELATIVE_GAP_LIMIT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="RANDOM_SEED_FIELD_NUMBER">
<h3>RANDOM_SEED_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">RANDOM_SEED_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.RANDOM_SEED_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PERMUTE_VARIABLE_RANDOMLY_FIELD_NUMBER">
<h3>PERMUTE_VARIABLE_RANDOMLY_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PERMUTE_VARIABLE_RANDOMLY_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PERMUTE_VARIABLE_RANDOMLY_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PERMUTE_PRESOLVE_CONSTRAINT_ORDER_FIELD_NUMBER">
<h3>PERMUTE_PRESOLVE_CONSTRAINT_ORDER_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PERMUTE_PRESOLVE_CONSTRAINT_ORDER_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PERMUTE_PRESOLVE_CONSTRAINT_ORDER_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_ABSL_RANDOM_FIELD_NUMBER">
<h3>USE_ABSL_RANDOM_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_ABSL_RANDOM_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_ABSL_RANDOM_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="LOG_SEARCH_PROGRESS_FIELD_NUMBER">
<h3>LOG_SEARCH_PROGRESS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">LOG_SEARCH_PROGRESS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.LOG_SEARCH_PROGRESS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="LOG_FREQUENCY_IN_SECONDS_FIELD_NUMBER">
<h3>LOG_FREQUENCY_IN_SECONDS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">LOG_FREQUENCY_IN_SECONDS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.LOG_FREQUENCY_IN_SECONDS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="LOG_SUBSOLVER_STATISTICS_FIELD_NUMBER">
<h3>LOG_SUBSOLVER_STATISTICS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">LOG_SUBSOLVER_STATISTICS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.LOG_SUBSOLVER_STATISTICS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="LOG_PREFIX_FIELD_NUMBER">
<h3>LOG_PREFIX_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">LOG_PREFIX_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.LOG_PREFIX_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="LOG_TO_STDOUT_FIELD_NUMBER">
<h3>LOG_TO_STDOUT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">LOG_TO_STDOUT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.LOG_TO_STDOUT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="LOG_TO_RESPONSE_FIELD_NUMBER">
<h3>LOG_TO_RESPONSE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">LOG_TO_RESPONSE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.LOG_TO_RESPONSE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_PB_RESOLUTION_FIELD_NUMBER">
<h3>USE_PB_RESOLUTION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_PB_RESOLUTION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_PB_RESOLUTION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MINIMIZE_REDUCTION_DURING_PB_RESOLUTION_FIELD_NUMBER">
<h3>MINIMIZE_REDUCTION_DURING_PB_RESOLUTION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MINIMIZE_REDUCTION_DURING_PB_RESOLUTION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MINIMIZE_REDUCTION_DURING_PB_RESOLUTION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="COUNT_ASSUMPTION_LEVELS_IN_LBD_FIELD_NUMBER">
<h3>COUNT_ASSUMPTION_LEVELS_IN_LBD_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">COUNT_ASSUMPTION_LEVELS_IN_LBD_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.COUNT_ASSUMPTION_LEVELS_IN_LBD_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PRESOLVE_BVE_THRESHOLD_FIELD_NUMBER">
<h3>PRESOLVE_BVE_THRESHOLD_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PRESOLVE_BVE_THRESHOLD_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PRESOLVE_BVE_THRESHOLD_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PRESOLVE_BVE_CLAUSE_WEIGHT_FIELD_NUMBER">
<h3>PRESOLVE_BVE_CLAUSE_WEIGHT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PRESOLVE_BVE_CLAUSE_WEIGHT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PRESOLVE_BVE_CLAUSE_WEIGHT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PRESOLVE_PROBING_DETERMINISTIC_TIME_LIMIT_FIELD_NUMBER">
<h3>PRESOLVE_PROBING_DETERMINISTIC_TIME_LIMIT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PRESOLVE_PROBING_DETERMINISTIC_TIME_LIMIT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PRESOLVE_PROBING_DETERMINISTIC_TIME_LIMIT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PRESOLVE_BLOCKED_CLAUSE_FIELD_NUMBER">
<h3>PRESOLVE_BLOCKED_CLAUSE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PRESOLVE_BLOCKED_CLAUSE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PRESOLVE_BLOCKED_CLAUSE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PRESOLVE_USE_BVA_FIELD_NUMBER">
<h3>PRESOLVE_USE_BVA_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PRESOLVE_USE_BVA_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PRESOLVE_USE_BVA_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PRESOLVE_BVA_THRESHOLD_FIELD_NUMBER">
<h3>PRESOLVE_BVA_THRESHOLD_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PRESOLVE_BVA_THRESHOLD_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PRESOLVE_BVA_THRESHOLD_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_PRESOLVE_ITERATIONS_FIELD_NUMBER">
<h3>MAX_PRESOLVE_ITERATIONS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_PRESOLVE_ITERATIONS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_PRESOLVE_ITERATIONS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CP_MODEL_PRESOLVE_FIELD_NUMBER">
<h3>CP_MODEL_PRESOLVE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CP_MODEL_PRESOLVE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CP_MODEL_PRESOLVE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CP_MODEL_PROBING_LEVEL_FIELD_NUMBER">
<h3>CP_MODEL_PROBING_LEVEL_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CP_MODEL_PROBING_LEVEL_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CP_MODEL_PROBING_LEVEL_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CP_MODEL_USE_SAT_PRESOLVE_FIELD_NUMBER">
<h3>CP_MODEL_USE_SAT_PRESOLVE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CP_MODEL_USE_SAT_PRESOLVE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CP_MODEL_USE_SAT_PRESOLVE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_SAT_INPROCESSING_FIELD_NUMBER">
<h3>USE_SAT_INPROCESSING_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_SAT_INPROCESSING_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_SAT_INPROCESSING_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="EXPAND_ALLDIFF_CONSTRAINTS_FIELD_NUMBER">
<h3>EXPAND_ALLDIFF_CONSTRAINTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">EXPAND_ALLDIFF_CONSTRAINTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.EXPAND_ALLDIFF_CONSTRAINTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="DISABLE_CONSTRAINT_EXPANSION_FIELD_NUMBER">
<h3>DISABLE_CONSTRAINT_EXPANSION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">DISABLE_CONSTRAINT_EXPANSION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.DISABLE_CONSTRAINT_EXPANSION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MERGE_NO_OVERLAP_WORK_LIMIT_FIELD_NUMBER">
<h3>MERGE_NO_OVERLAP_WORK_LIMIT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MERGE_NO_OVERLAP_WORK_LIMIT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MERGE_NO_OVERLAP_WORK_LIMIT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MERGE_AT_MOST_ONE_WORK_LIMIT_FIELD_NUMBER">
<h3>MERGE_AT_MOST_ONE_WORK_LIMIT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MERGE_AT_MOST_ONE_WORK_LIMIT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MERGE_AT_MOST_ONE_WORK_LIMIT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PRESOLVE_SUBSTITUTION_LEVEL_FIELD_NUMBER">
<h3>PRESOLVE_SUBSTITUTION_LEVEL_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PRESOLVE_SUBSTITUTION_LEVEL_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PRESOLVE_SUBSTITUTION_LEVEL_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PRESOLVE_EXTRACT_INTEGER_ENFORCEMENT_FIELD_NUMBER">
<h3>PRESOLVE_EXTRACT_INTEGER_ENFORCEMENT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PRESOLVE_EXTRACT_INTEGER_ENFORCEMENT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PRESOLVE_EXTRACT_INTEGER_ENFORCEMENT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PRESOLVE_INCLUSION_WORK_LIMIT_FIELD_NUMBER">
<h3>PRESOLVE_INCLUSION_WORK_LIMIT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PRESOLVE_INCLUSION_WORK_LIMIT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PRESOLVE_INCLUSION_WORK_LIMIT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="IGNORE_NAMES_FIELD_NUMBER">
<h3>IGNORE_NAMES_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">IGNORE_NAMES_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.IGNORE_NAMES_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="NUM_WORKERS_FIELD_NUMBER">
<h3>NUM_WORKERS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">NUM_WORKERS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.NUM_WORKERS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="NUM_SEARCH_WORKERS_FIELD_NUMBER">
<h3>NUM_SEARCH_WORKERS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">NUM_SEARCH_WORKERS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.NUM_SEARCH_WORKERS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MIN_NUM_LNS_WORKERS_FIELD_NUMBER">
<h3>MIN_NUM_LNS_WORKERS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MIN_NUM_LNS_WORKERS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MIN_NUM_LNS_WORKERS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="SUBSOLVERS_FIELD_NUMBER">
<h3>SUBSOLVERS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">SUBSOLVERS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.SUBSOLVERS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="IGNORE_SUBSOLVERS_FIELD_NUMBER">
<h3>IGNORE_SUBSOLVERS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">IGNORE_SUBSOLVERS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.IGNORE_SUBSOLVERS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="SUBSOLVER_PARAMS_FIELD_NUMBER">
<h3>SUBSOLVER_PARAMS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">SUBSOLVER_PARAMS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.SUBSOLVER_PARAMS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="INTERLEAVE_SEARCH_FIELD_NUMBER">
<h3>INTERLEAVE_SEARCH_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">INTERLEAVE_SEARCH_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.INTERLEAVE_SEARCH_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="INTERLEAVE_BATCH_SIZE_FIELD_NUMBER">
<h3>INTERLEAVE_BATCH_SIZE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">INTERLEAVE_BATCH_SIZE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.INTERLEAVE_BATCH_SIZE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="REDUCE_MEMORY_USAGE_IN_INTERLEAVE_MODE_FIELD_NUMBER">
<h3>REDUCE_MEMORY_USAGE_IN_INTERLEAVE_MODE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">REDUCE_MEMORY_USAGE_IN_INTERLEAVE_MODE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.REDUCE_MEMORY_USAGE_IN_INTERLEAVE_MODE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="SHARE_OBJECTIVE_BOUNDS_FIELD_NUMBER">
<h3>SHARE_OBJECTIVE_BOUNDS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">SHARE_OBJECTIVE_BOUNDS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.SHARE_OBJECTIVE_BOUNDS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="SHARE_LEVEL_ZERO_BOUNDS_FIELD_NUMBER">
<h3>SHARE_LEVEL_ZERO_BOUNDS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">SHARE_LEVEL_ZERO_BOUNDS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.SHARE_LEVEL_ZERO_BOUNDS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="SHARE_BINARY_CLAUSES_FIELD_NUMBER">
<h3>SHARE_BINARY_CLAUSES_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">SHARE_BINARY_CLAUSES_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.SHARE_BINARY_CLAUSES_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="DEBUG_POSTSOLVE_WITH_FULL_SOLVER_FIELD_NUMBER">
<h3>DEBUG_POSTSOLVE_WITH_FULL_SOLVER_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">DEBUG_POSTSOLVE_WITH_FULL_SOLVER_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.DEBUG_POSTSOLVE_WITH_FULL_SOLVER_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="DEBUG_MAX_NUM_PRESOLVE_OPERATIONS_FIELD_NUMBER">
<h3>DEBUG_MAX_NUM_PRESOLVE_OPERATIONS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">DEBUG_MAX_NUM_PRESOLVE_OPERATIONS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.DEBUG_MAX_NUM_PRESOLVE_OPERATIONS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="DEBUG_CRASH_ON_BAD_HINT_FIELD_NUMBER">
<h3>DEBUG_CRASH_ON_BAD_HINT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">DEBUG_CRASH_ON_BAD_HINT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.DEBUG_CRASH_ON_BAD_HINT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_OPTIMIZATION_HINTS_FIELD_NUMBER">
<h3>USE_OPTIMIZATION_HINTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_OPTIMIZATION_HINTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_OPTIMIZATION_HINTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MINIMIZE_CORE_FIELD_NUMBER">
<h3>MINIMIZE_CORE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MINIMIZE_CORE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MINIMIZE_CORE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="FIND_MULTIPLE_CORES_FIELD_NUMBER">
<h3>FIND_MULTIPLE_CORES_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">FIND_MULTIPLE_CORES_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.FIND_MULTIPLE_CORES_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="COVER_OPTIMIZATION_FIELD_NUMBER">
<h3>COVER_OPTIMIZATION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">COVER_OPTIMIZATION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.COVER_OPTIMIZATION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_SAT_ASSUMPTION_ORDER_FIELD_NUMBER">
<h3>MAX_SAT_ASSUMPTION_ORDER_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_SAT_ASSUMPTION_ORDER_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_SAT_ASSUMPTION_ORDER_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_SAT_REVERSE_ASSUMPTION_ORDER_FIELD_NUMBER">
<h3>MAX_SAT_REVERSE_ASSUMPTION_ORDER_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_SAT_REVERSE_ASSUMPTION_ORDER_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_SAT_REVERSE_ASSUMPTION_ORDER_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_SAT_STRATIFICATION_FIELD_NUMBER">
<h3>MAX_SAT_STRATIFICATION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_SAT_STRATIFICATION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_SAT_STRATIFICATION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_PRECEDENCES_IN_DISJUNCTIVE_CONSTRAINT_FIELD_NUMBER">
<h3>USE_PRECEDENCES_IN_DISJUNCTIVE_CONSTRAINT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_PRECEDENCES_IN_DISJUNCTIVE_CONSTRAINT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_PRECEDENCES_IN_DISJUNCTIVE_CONSTRAINT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_OVERLOAD_CHECKER_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER">
<h3>USE_OVERLOAD_CHECKER_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_OVERLOAD_CHECKER_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_OVERLOAD_CHECKER_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_TIMETABLE_EDGE_FINDING_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER">
<h3>USE_TIMETABLE_EDGE_FINDING_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_TIMETABLE_EDGE_FINDING_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_TIMETABLE_EDGE_FINDING_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_DISJUNCTIVE_CONSTRAINT_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER">
<h3>USE_DISJUNCTIVE_CONSTRAINT_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_DISJUNCTIVE_CONSTRAINT_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_DISJUNCTIVE_CONSTRAINT_IN_CUMULATIVE_CONSTRAINT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_CUMULATIVE_IN_NO_OVERLAP_2D_FIELD_NUMBER">
<h3>USE_CUMULATIVE_IN_NO_OVERLAP_2D_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_CUMULATIVE_IN_NO_OVERLAP_2D_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_CUMULATIVE_IN_NO_OVERLAP_2D_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="LINEARIZATION_LEVEL_FIELD_NUMBER">
<h3>LINEARIZATION_LEVEL_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">LINEARIZATION_LEVEL_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.LINEARIZATION_LEVEL_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="BOOLEAN_ENCODING_LEVEL_FIELD_NUMBER">
<h3>BOOLEAN_ENCODING_LEVEL_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">BOOLEAN_ENCODING_LEVEL_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.BOOLEAN_ENCODING_LEVEL_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_DOMAIN_SIZE_WHEN_ENCODING_EQ_NEQ_CONSTRAINTS_FIELD_NUMBER">
<h3>MAX_DOMAIN_SIZE_WHEN_ENCODING_EQ_NEQ_CONSTRAINTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_DOMAIN_SIZE_WHEN_ENCODING_EQ_NEQ_CONSTRAINTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_DOMAIN_SIZE_WHEN_ENCODING_EQ_NEQ_CONSTRAINTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_NUM_CUTS_FIELD_NUMBER">
<h3>MAX_NUM_CUTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_NUM_CUTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_NUM_CUTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CUT_LEVEL_FIELD_NUMBER">
<h3>CUT_LEVEL_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CUT_LEVEL_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CUT_LEVEL_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ONLY_ADD_CUTS_AT_LEVEL_ZERO_FIELD_NUMBER">
<h3>ONLY_ADD_CUTS_AT_LEVEL_ZERO_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">ONLY_ADD_CUTS_AT_LEVEL_ZERO_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.ONLY_ADD_CUTS_AT_LEVEL_ZERO_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ADD_OBJECTIVE_CUT_FIELD_NUMBER">
<h3>ADD_OBJECTIVE_CUT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">ADD_OBJECTIVE_CUT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.ADD_OBJECTIVE_CUT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ADD_CG_CUTS_FIELD_NUMBER">
<h3>ADD_CG_CUTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">ADD_CG_CUTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.ADD_CG_CUTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ADD_MIR_CUTS_FIELD_NUMBER">
<h3>ADD_MIR_CUTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">ADD_MIR_CUTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.ADD_MIR_CUTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ADD_ZERO_HALF_CUTS_FIELD_NUMBER">
<h3>ADD_ZERO_HALF_CUTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">ADD_ZERO_HALF_CUTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.ADD_ZERO_HALF_CUTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ADD_CLIQUE_CUTS_FIELD_NUMBER">
<h3>ADD_CLIQUE_CUTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">ADD_CLIQUE_CUTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.ADD_CLIQUE_CUTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_ALL_DIFF_CUT_SIZE_FIELD_NUMBER">
<h3>MAX_ALL_DIFF_CUT_SIZE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_ALL_DIFF_CUT_SIZE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_ALL_DIFF_CUT_SIZE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ADD_LIN_MAX_CUTS_FIELD_NUMBER">
<h3>ADD_LIN_MAX_CUTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">ADD_LIN_MAX_CUTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.ADD_LIN_MAX_CUTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_INTEGER_ROUNDING_SCALING_FIELD_NUMBER">
<h3>MAX_INTEGER_ROUNDING_SCALING_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_INTEGER_ROUNDING_SCALING_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_INTEGER_ROUNDING_SCALING_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ADD_LP_CONSTRAINTS_LAZILY_FIELD_NUMBER">
<h3>ADD_LP_CONSTRAINTS_LAZILY_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">ADD_LP_CONSTRAINTS_LAZILY_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.ADD_LP_CONSTRAINTS_LAZILY_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MIN_ORTHOGONALITY_FOR_LP_CONSTRAINTS_FIELD_NUMBER">
<h3>MIN_ORTHOGONALITY_FOR_LP_CONSTRAINTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MIN_ORTHOGONALITY_FOR_LP_CONSTRAINTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MIN_ORTHOGONALITY_FOR_LP_CONSTRAINTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_CUT_ROUNDS_AT_LEVEL_ZERO_FIELD_NUMBER">
<h3>MAX_CUT_ROUNDS_AT_LEVEL_ZERO_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_CUT_ROUNDS_AT_LEVEL_ZERO_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_CUT_ROUNDS_AT_LEVEL_ZERO_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MAX_CONSECUTIVE_INACTIVE_COUNT_FIELD_NUMBER">
<h3>MAX_CONSECUTIVE_INACTIVE_COUNT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MAX_CONSECUTIVE_INACTIVE_COUNT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MAX_CONSECUTIVE_INACTIVE_COUNT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CUT_MAX_ACTIVE_COUNT_VALUE_FIELD_NUMBER">
<h3>CUT_MAX_ACTIVE_COUNT_VALUE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CUT_MAX_ACTIVE_COUNT_VALUE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CUT_MAX_ACTIVE_COUNT_VALUE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CUT_ACTIVE_COUNT_DECAY_FIELD_NUMBER">
<h3>CUT_ACTIVE_COUNT_DECAY_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CUT_ACTIVE_COUNT_DECAY_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CUT_ACTIVE_COUNT_DECAY_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CUT_CLEANUP_TARGET_FIELD_NUMBER">
<h3>CUT_CLEANUP_TARGET_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CUT_CLEANUP_TARGET_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CUT_CLEANUP_TARGET_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="NEW_CONSTRAINTS_BATCH_SIZE_FIELD_NUMBER">
<h3>NEW_CONSTRAINTS_BATCH_SIZE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">NEW_CONSTRAINTS_BATCH_SIZE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.NEW_CONSTRAINTS_BATCH_SIZE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="SEARCH_BRANCHING_FIELD_NUMBER">
<h3>SEARCH_BRANCHING_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">SEARCH_BRANCHING_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.SEARCH_BRANCHING_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="HINT_CONFLICT_LIMIT_FIELD_NUMBER">
<h3>HINT_CONFLICT_LIMIT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">HINT_CONFLICT_LIMIT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.HINT_CONFLICT_LIMIT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="REPAIR_HINT_FIELD_NUMBER">
<h3>REPAIR_HINT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">REPAIR_HINT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.REPAIR_HINT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="FIX_VARIABLES_TO_THEIR_HINTED_VALUE_FIELD_NUMBER">
<h3>FIX_VARIABLES_TO_THEIR_HINTED_VALUE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">FIX_VARIABLES_TO_THEIR_HINTED_VALUE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.FIX_VARIABLES_TO_THEIR_HINTED_VALUE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="EXPLOIT_INTEGER_LP_SOLUTION_FIELD_NUMBER">
<h3>EXPLOIT_INTEGER_LP_SOLUTION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">EXPLOIT_INTEGER_LP_SOLUTION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.EXPLOIT_INTEGER_LP_SOLUTION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="EXPLOIT_ALL_LP_SOLUTION_FIELD_NUMBER">
<h3>EXPLOIT_ALL_LP_SOLUTION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">EXPLOIT_ALL_LP_SOLUTION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.EXPLOIT_ALL_LP_SOLUTION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="EXPLOIT_BEST_SOLUTION_FIELD_NUMBER">
<h3>EXPLOIT_BEST_SOLUTION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">EXPLOIT_BEST_SOLUTION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.EXPLOIT_BEST_SOLUTION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="EXPLOIT_RELAXATION_SOLUTION_FIELD_NUMBER">
<h3>EXPLOIT_RELAXATION_SOLUTION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">EXPLOIT_RELAXATION_SOLUTION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.EXPLOIT_RELAXATION_SOLUTION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="EXPLOIT_OBJECTIVE_FIELD_NUMBER">
<h3>EXPLOIT_OBJECTIVE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">EXPLOIT_OBJECTIVE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.EXPLOIT_OBJECTIVE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PROBING_PERIOD_AT_ROOT_FIELD_NUMBER">
<h3>PROBING_PERIOD_AT_ROOT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PROBING_PERIOD_AT_ROOT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PROBING_PERIOD_AT_ROOT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_PROBING_SEARCH_FIELD_NUMBER">
<h3>USE_PROBING_SEARCH_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_PROBING_SEARCH_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_PROBING_SEARCH_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_SHAVING_IN_PROBING_SEARCH_FIELD_NUMBER">
<h3>USE_SHAVING_IN_PROBING_SEARCH_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_SHAVING_IN_PROBING_SEARCH_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_SHAVING_IN_PROBING_SEARCH_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="SHAVING_SEARCH_DETERMINISTIC_TIME_FIELD_NUMBER">
<h3>SHAVING_SEARCH_DETERMINISTIC_TIME_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">SHAVING_SEARCH_DETERMINISTIC_TIME_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.SHAVING_SEARCH_DETERMINISTIC_TIME_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PSEUDO_COST_RELIABILITY_THRESHOLD_FIELD_NUMBER">
<h3>PSEUDO_COST_RELIABILITY_THRESHOLD_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">PSEUDO_COST_RELIABILITY_THRESHOLD_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.PSEUDO_COST_RELIABILITY_THRESHOLD_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="OPTIMIZE_WITH_CORE_FIELD_NUMBER">
<h3>OPTIMIZE_WITH_CORE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">OPTIMIZE_WITH_CORE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.OPTIMIZE_WITH_CORE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="OPTIMIZE_WITH_LB_TREE_SEARCH_FIELD_NUMBER">
<h3>OPTIMIZE_WITH_LB_TREE_SEARCH_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">OPTIMIZE_WITH_LB_TREE_SEARCH_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.OPTIMIZE_WITH_LB_TREE_SEARCH_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="BINARY_SEARCH_NUM_CONFLICTS_FIELD_NUMBER">
<h3>BINARY_SEARCH_NUM_CONFLICTS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">BINARY_SEARCH_NUM_CONFLICTS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.BINARY_SEARCH_NUM_CONFLICTS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="OPTIMIZE_WITH_MAX_HS_FIELD_NUMBER">
<h3>OPTIMIZE_WITH_MAX_HS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">OPTIMIZE_WITH_MAX_HS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.OPTIMIZE_WITH_MAX_HS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ENUMERATE_ALL_SOLUTIONS_FIELD_NUMBER">
<h3>ENUMERATE_ALL_SOLUTIONS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">ENUMERATE_ALL_SOLUTIONS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.ENUMERATE_ALL_SOLUTIONS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="KEEP_ALL_FEASIBLE_SOLUTIONS_IN_PRESOLVE_FIELD_NUMBER">
<h3>KEEP_ALL_FEASIBLE_SOLUTIONS_IN_PRESOLVE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">KEEP_ALL_FEASIBLE_SOLUTIONS_IN_PRESOLVE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.KEEP_ALL_FEASIBLE_SOLUTIONS_IN_PRESOLVE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="FILL_TIGHTENED_DOMAINS_IN_RESPONSE_FIELD_NUMBER">
<h3>FILL_TIGHTENED_DOMAINS_IN_RESPONSE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">FILL_TIGHTENED_DOMAINS_IN_RESPONSE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.FILL_TIGHTENED_DOMAINS_IN_RESPONSE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="FILL_ADDITIONAL_SOLUTIONS_IN_RESPONSE_FIELD_NUMBER">
<h3>FILL_ADDITIONAL_SOLUTIONS_IN_RESPONSE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">FILL_ADDITIONAL_SOLUTIONS_IN_RESPONSE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.FILL_ADDITIONAL_SOLUTIONS_IN_RESPONSE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="INSTANTIATE_ALL_VARIABLES_FIELD_NUMBER">
<h3>INSTANTIATE_ALL_VARIABLES_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">INSTANTIATE_ALL_VARIABLES_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.INSTANTIATE_ALL_VARIABLES_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="AUTO_DETECT_GREATER_THAN_AT_LEAST_ONE_OF_FIELD_NUMBER">
<h3>AUTO_DETECT_GREATER_THAN_AT_LEAST_ONE_OF_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">AUTO_DETECT_GREATER_THAN_AT_LEAST_ONE_OF_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.AUTO_DETECT_GREATER_THAN_AT_LEAST_ONE_OF_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="STOP_AFTER_FIRST_SOLUTION_FIELD_NUMBER">
<h3>STOP_AFTER_FIRST_SOLUTION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">STOP_AFTER_FIRST_SOLUTION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.STOP_AFTER_FIRST_SOLUTION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="STOP_AFTER_PRESOLVE_FIELD_NUMBER">
<h3>STOP_AFTER_PRESOLVE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">STOP_AFTER_PRESOLVE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.STOP_AFTER_PRESOLVE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_LNS_ONLY_FIELD_NUMBER">
<h3>USE_LNS_ONLY_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_LNS_ONLY_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_LNS_ONLY_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="SOLUTION_POOL_SIZE_FIELD_NUMBER">
<h3>SOLUTION_POOL_SIZE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">SOLUTION_POOL_SIZE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.SOLUTION_POOL_SIZE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_RINS_LNS_FIELD_NUMBER">
<h3>USE_RINS_LNS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_RINS_LNS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_RINS_LNS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_FEASIBILITY_PUMP_FIELD_NUMBER">
<h3>USE_FEASIBILITY_PUMP_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_FEASIBILITY_PUMP_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_FEASIBILITY_PUMP_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="FP_ROUNDING_FIELD_NUMBER">
<h3>FP_ROUNDING_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">FP_ROUNDING_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.FP_ROUNDING_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_RELAXATION_LNS_FIELD_NUMBER">
<h3>USE_RELAXATION_LNS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_RELAXATION_LNS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_RELAXATION_LNS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="DIVERSIFY_LNS_PARAMS_FIELD_NUMBER">
<h3>DIVERSIFY_LNS_PARAMS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">DIVERSIFY_LNS_PARAMS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.DIVERSIFY_LNS_PARAMS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="RANDOMIZE_SEARCH_FIELD_NUMBER">
<h3>RANDOMIZE_SEARCH_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">RANDOMIZE_SEARCH_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.RANDOMIZE_SEARCH_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="SEARCH_RANDOMIZATION_TOLERANCE_FIELD_NUMBER">
<h3>SEARCH_RANDOMIZATION_TOLERANCE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">SEARCH_RANDOMIZATION_TOLERANCE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.SEARCH_RANDOMIZATION_TOLERANCE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_OPTIONAL_VARIABLES_FIELD_NUMBER">
<h3>USE_OPTIONAL_VARIABLES_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_OPTIONAL_VARIABLES_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_OPTIONAL_VARIABLES_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_EXACT_LP_REASON_FIELD_NUMBER">
<h3>USE_EXACT_LP_REASON_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_EXACT_LP_REASON_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_EXACT_LP_REASON_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_BRANCHING_IN_LP_FIELD_NUMBER">
<h3>USE_BRANCHING_IN_LP_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_BRANCHING_IN_LP_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_BRANCHING_IN_LP_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_COMBINED_NO_OVERLAP_FIELD_NUMBER">
<h3>USE_COMBINED_NO_OVERLAP_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_COMBINED_NO_OVERLAP_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_COMBINED_NO_OVERLAP_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CATCH_SIGINT_SIGNAL_FIELD_NUMBER">
<h3>CATCH_SIGINT_SIGNAL_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CATCH_SIGINT_SIGNAL_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CATCH_SIGINT_SIGNAL_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="USE_IMPLIED_BOUNDS_FIELD_NUMBER">
<h3>USE_IMPLIED_BOUNDS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">USE_IMPLIED_BOUNDS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.USE_IMPLIED_BOUNDS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="POLISH_LP_SOLUTION_FIELD_NUMBER">
<h3>POLISH_LP_SOLUTION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">POLISH_LP_SOLUTION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.POLISH_LP_SOLUTION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="CONVERT_INTERVALS_FIELD_NUMBER">
<h3>CONVERT_INTERVALS_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">CONVERT_INTERVALS_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.CONVERT_INTERVALS_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="SYMMETRY_LEVEL_FIELD_NUMBER">
<h3>SYMMETRY_LEVEL_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">SYMMETRY_LEVEL_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.SYMMETRY_LEVEL_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MIP_MAX_BOUND_FIELD_NUMBER">
<h3>MIP_MAX_BOUND_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MIP_MAX_BOUND_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MIP_MAX_BOUND_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MIP_VAR_SCALING_FIELD_NUMBER">
<h3>MIP_VAR_SCALING_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MIP_VAR_SCALING_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MIP_VAR_SCALING_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MIP_AUTOMATICALLY_SCALE_VARIABLES_FIELD_NUMBER">
<h3>MIP_AUTOMATICALLY_SCALE_VARIABLES_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MIP_AUTOMATICALLY_SCALE_VARIABLES_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MIP_AUTOMATICALLY_SCALE_VARIABLES_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MIP_WANTED_PRECISION_FIELD_NUMBER">
<h3>MIP_WANTED_PRECISION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MIP_WANTED_PRECISION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MIP_WANTED_PRECISION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MIP_MAX_ACTIVITY_EXPONENT_FIELD_NUMBER">
<h3>MIP_MAX_ACTIVITY_EXPONENT_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MIP_MAX_ACTIVITY_EXPONENT_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MIP_MAX_ACTIVITY_EXPONENT_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MIP_CHECK_PRECISION_FIELD_NUMBER">
<h3>MIP_CHECK_PRECISION_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MIP_CHECK_PRECISION_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MIP_CHECK_PRECISION_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MIP_COMPUTE_TRUE_OBJECTIVE_BOUND_FIELD_NUMBER">
<h3>MIP_COMPUTE_TRUE_OBJECTIVE_BOUND_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MIP_COMPUTE_TRUE_OBJECTIVE_BOUND_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MIP_COMPUTE_TRUE_OBJECTIVE_BOUND_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MIP_MAX_VALID_MAGNITUDE_FIELD_NUMBER">
<h3>MIP_MAX_VALID_MAGNITUDE_FIELD_NUMBER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MIP_MAX_VALID_MAGNITUDE_FIELD_NUMBER</span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../constant-values.html#com.google.ortools.sat.SatParameters.MIP_MAX_VALID_MAGNITUDE_FIELD_NUMBER">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="PARSER">
<h3>PARSER</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public static final</span>&nbsp;<span class="return-type">com.google.protobuf.Parser&lt;<a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a>&gt;</span>&nbsp;<span class="element-name">PARSER</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span></div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter)">
<h3>newInstance</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span>&nbsp;<span class="element-name">newInstance</span><wbr><span class="parameters">(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter&nbsp;unused)</span></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code>newInstance</code>&nbsp;in class&nbsp;<code>com.google.protobuf.GeneratedMessageV3</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUnknownFields()">
<h3>getUnknownFields</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">com.google.protobuf.UnknownFieldSet</span>&nbsp;<span class="element-name">getUnknownFields</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getUnknownFields</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.MessageOrBuilder</code></dd>
<dt>Overrides:</dt>
<dd><code>getUnknownFields</code>&nbsp;in class&nbsp;<code>com.google.protobuf.GeneratedMessageV3</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDescriptor()">
<h3>getDescriptor</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">com.google.protobuf.Descriptors.Descriptor</span>&nbsp;<span class="element-name">getDescriptor</span>()</div>
</section>
</li>
<li>
<section class="detail" id="internalGetFieldAccessorTable()">
<h3>internalGetFieldAccessorTable</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="return-type">com.google.protobuf.GeneratedMessageV3.FieldAccessorTable</span>&nbsp;<span class="element-name">internalGetFieldAccessorTable</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>internalGetFieldAccessorTable</code>&nbsp;in class&nbsp;<code>com.google.protobuf.GeneratedMessageV3</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasName()">
<h3>hasName</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasName</span>()</div>
<div class="block"><pre>
In some context, like in a portfolio of search, it makes sense to name a
given parameters set for logging purpose.
</pre>
<code>optional string name = 171 [default = ""];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasName()">hasName</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the name field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getName()">
<h3>getName</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getName</span>()</div>
<div class="block"><pre>
In some context, like in a portfolio of search, it makes sense to name a
given parameters set for logging purpose.
</pre>
<code>optional string name = 171 [default = ""];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getName()">getName</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The name.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getNameBytes()">
<h3>getNameBytes</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">com.google.protobuf.ByteString</span>&nbsp;<span class="element-name">getNameBytes</span>()</div>
<div class="block"><pre>
In some context, like in a portfolio of search, it makes sense to name a
given parameters set for logging purpose.
</pre>
<code>optional string name = 171 [default = ""];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getNameBytes()">getNameBytes</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The bytes for name.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPreferredVariableOrder()">
<h3>hasPreferredVariableOrder</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPreferredVariableOrder</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.VariableOrder preferred_variable_order = 1 [default = IN_ORDER];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPreferredVariableOrder()">hasPreferredVariableOrder</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the preferredVariableOrder field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPreferredVariableOrder()">
<h3>getPreferredVariableOrder</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.VariableOrder.html" title="enum in com.google.ortools.sat">SatParameters.VariableOrder</a></span>&nbsp;<span class="element-name">getPreferredVariableOrder</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.VariableOrder preferred_variable_order = 1 [default = IN_ORDER];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPreferredVariableOrder()">getPreferredVariableOrder</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The preferredVariableOrder.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasInitialPolarity()">
<h3>hasInitialPolarity</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasInitialPolarity</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.Polarity initial_polarity = 2 [default = POLARITY_FALSE];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasInitialPolarity()">hasInitialPolarity</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the initialPolarity field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getInitialPolarity()">
<h3>getInitialPolarity</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.Polarity.html" title="enum in com.google.ortools.sat">SatParameters.Polarity</a></span>&nbsp;<span class="element-name">getInitialPolarity</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.Polarity initial_polarity = 2 [default = POLARITY_FALSE];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getInitialPolarity()">getInitialPolarity</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The initialPolarity.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUsePhaseSaving()">
<h3>hasUsePhaseSaving</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUsePhaseSaving</span>()</div>
<div class="block"><pre>
If this is true, then the polarity of a variable will be the last value it
was assigned to, or its default polarity if it was never assigned since the
call to ResetDecisionHeuristic().
Actually, we use a newer version where we follow the last value in the
longest non-conflicting partial assignment in the current phase.
This is called 'literal phase saving'. For details see 'A Lightweight
Component Caching Scheme for Satisfiability Solvers' K. Pipatsrisawat and
A.Darwiche, In 10th International Conference on Theory and Applications of
Satisfiability Testing, 2007.
</pre>
<code>optional bool use_phase_saving = 44 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUsePhaseSaving()">hasUsePhaseSaving</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the usePhaseSaving field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUsePhaseSaving()">
<h3>getUsePhaseSaving</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUsePhaseSaving</span>()</div>
<div class="block"><pre>
If this is true, then the polarity of a variable will be the last value it
was assigned to, or its default polarity if it was never assigned since the
call to ResetDecisionHeuristic().
Actually, we use a newer version where we follow the last value in the
longest non-conflicting partial assignment in the current phase.
This is called 'literal phase saving'. For details see 'A Lightweight
Component Caching Scheme for Satisfiability Solvers' K. Pipatsrisawat and
A.Darwiche, In 10th International Conference on Theory and Applications of
Satisfiability Testing, 2007.
</pre>
<code>optional bool use_phase_saving = 44 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUsePhaseSaving()">getUsePhaseSaving</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The usePhaseSaving.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPolarityRephaseIncrement()">
<h3>hasPolarityRephaseIncrement</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPolarityRephaseIncrement</span>()</div>
<div class="block"><pre>
If non-zero, then we change the polarity heuristic after that many number
of conflicts in an arithmetically increasing fashion. So x the first time,
2 * x the second time, etc...
</pre>
<code>optional int32 polarity_rephase_increment = 168 [default = 1000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPolarityRephaseIncrement()">hasPolarityRephaseIncrement</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the polarityRephaseIncrement field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPolarityRephaseIncrement()">
<h3>getPolarityRephaseIncrement</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getPolarityRephaseIncrement</span>()</div>
<div class="block"><pre>
If non-zero, then we change the polarity heuristic after that many number
of conflicts in an arithmetically increasing fashion. So x the first time,
2 * x the second time, etc...
</pre>
<code>optional int32 polarity_rephase_increment = 168 [default = 1000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPolarityRephaseIncrement()">getPolarityRephaseIncrement</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The polarityRephaseIncrement.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasRandomPolarityRatio()">
<h3>hasRandomPolarityRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasRandomPolarityRatio</span>()</div>
<div class="block"><pre>
The proportion of polarity chosen at random. Note that this take
precedence over the phase saving heuristic. This is different from
initial_polarity:POLARITY_RANDOM because it will select a new random
polarity each time the variable is branched upon instead of selecting one
initially and then always taking this choice.
</pre>
<code>optional double random_polarity_ratio = 45 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasRandomPolarityRatio()">hasRandomPolarityRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the randomPolarityRatio field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRandomPolarityRatio()">
<h3>getRandomPolarityRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getRandomPolarityRatio</span>()</div>
<div class="block"><pre>
The proportion of polarity chosen at random. Note that this take
precedence over the phase saving heuristic. This is different from
initial_polarity:POLARITY_RANDOM because it will select a new random
polarity each time the variable is branched upon instead of selecting one
initially and then always taking this choice.
</pre>
<code>optional double random_polarity_ratio = 45 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRandomPolarityRatio()">getRandomPolarityRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The randomPolarityRatio.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasRandomBranchesRatio()">
<h3>hasRandomBranchesRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasRandomBranchesRatio</span>()</div>
<div class="block"><pre>
A number between 0 and 1 that indicates the proportion of branching
variables that are selected randomly instead of choosing the first variable
from the given variable_ordering strategy.
</pre>
<code>optional double random_branches_ratio = 32 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasRandomBranchesRatio()">hasRandomBranchesRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the randomBranchesRatio field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRandomBranchesRatio()">
<h3>getRandomBranchesRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getRandomBranchesRatio</span>()</div>
<div class="block"><pre>
A number between 0 and 1 that indicates the proportion of branching
variables that are selected randomly instead of choosing the first variable
from the given variable_ordering strategy.
</pre>
<code>optional double random_branches_ratio = 32 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRandomBranchesRatio()">getRandomBranchesRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The randomBranchesRatio.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseErwaHeuristic()">
<h3>hasUseErwaHeuristic</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseErwaHeuristic</span>()</div>
<div class="block"><pre>
Whether we use the ERWA (Exponential Recency Weighted Average) heuristic as
described in "Learning Rate Based Branching Heuristic for SAT solvers",
J.H.Liang, V. Ganesh, P. Poupart, K.Czarnecki, SAT 2016.
</pre>
<code>optional bool use_erwa_heuristic = 75 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseErwaHeuristic()">hasUseErwaHeuristic</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useErwaHeuristic field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseErwaHeuristic()">
<h3>getUseErwaHeuristic</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseErwaHeuristic</span>()</div>
<div class="block"><pre>
Whether we use the ERWA (Exponential Recency Weighted Average) heuristic as
described in "Learning Rate Based Branching Heuristic for SAT solvers",
J.H.Liang, V. Ganesh, P. Poupart, K.Czarnecki, SAT 2016.
</pre>
<code>optional bool use_erwa_heuristic = 75 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseErwaHeuristic()">getUseErwaHeuristic</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useErwaHeuristic.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasInitialVariablesActivity()">
<h3>hasInitialVariablesActivity</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasInitialVariablesActivity</span>()</div>
<div class="block"><pre>
The initial value of the variables activity. A non-zero value only make
sense when use_erwa_heuristic is true. Experiments with a value of 1e-2
together with the ERWA heuristic showed slighthly better result than simply
using zero. The idea is that when the "learning rate" of a variable becomes
lower than this value, then we prefer to branch on never explored before
variables. This is not in the ERWA paper.
</pre>
<code>optional double initial_variables_activity = 76 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasInitialVariablesActivity()">hasInitialVariablesActivity</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the initialVariablesActivity field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getInitialVariablesActivity()">
<h3>getInitialVariablesActivity</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getInitialVariablesActivity</span>()</div>
<div class="block"><pre>
The initial value of the variables activity. A non-zero value only make
sense when use_erwa_heuristic is true. Experiments with a value of 1e-2
together with the ERWA heuristic showed slighthly better result than simply
using zero. The idea is that when the "learning rate" of a variable becomes
lower than this value, then we prefer to branch on never explored before
variables. This is not in the ERWA paper.
</pre>
<code>optional double initial_variables_activity = 76 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getInitialVariablesActivity()">getInitialVariablesActivity</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The initialVariablesActivity.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasAlsoBumpVariablesInConflictReasons()">
<h3>hasAlsoBumpVariablesInConflictReasons</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasAlsoBumpVariablesInConflictReasons</span>()</div>
<div class="block"><pre>
When this is true, then the variables that appear in any of the reason of
the variables in a conflict have their activity bumped. This is addition to
the variables in the conflict, and the one that were used during conflict
resolution.
</pre>
<code>optional bool also_bump_variables_in_conflict_reasons = 77 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasAlsoBumpVariablesInConflictReasons()">hasAlsoBumpVariablesInConflictReasons</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the alsoBumpVariablesInConflictReasons field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAlsoBumpVariablesInConflictReasons()">
<h3>getAlsoBumpVariablesInConflictReasons</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getAlsoBumpVariablesInConflictReasons</span>()</div>
<div class="block"><pre>
When this is true, then the variables that appear in any of the reason of
the variables in a conflict have their activity bumped. This is addition to
the variables in the conflict, and the one that were used during conflict
resolution.
</pre>
<code>optional bool also_bump_variables_in_conflict_reasons = 77 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getAlsoBumpVariablesInConflictReasons()">getAlsoBumpVariablesInConflictReasons</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The alsoBumpVariablesInConflictReasons.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMinimizationAlgorithm()">
<h3>hasMinimizationAlgorithm</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMinimizationAlgorithm</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.ConflictMinimizationAlgorithm minimization_algorithm = 4 [default = RECURSIVE];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMinimizationAlgorithm()">hasMinimizationAlgorithm</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the minimizationAlgorithm field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMinimizationAlgorithm()">
<h3>getMinimizationAlgorithm</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.ConflictMinimizationAlgorithm.html" title="enum in com.google.ortools.sat">SatParameters.ConflictMinimizationAlgorithm</a></span>&nbsp;<span class="element-name">getMinimizationAlgorithm</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.ConflictMinimizationAlgorithm minimization_algorithm = 4 [default = RECURSIVE];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMinimizationAlgorithm()">getMinimizationAlgorithm</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The minimizationAlgorithm.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasBinaryMinimizationAlgorithm()">
<h3>hasBinaryMinimizationAlgorithm</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasBinaryMinimizationAlgorithm</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.BinaryMinizationAlgorithm binary_minimization_algorithm = 34 [default = BINARY_MINIMIZATION_FIRST];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasBinaryMinimizationAlgorithm()">hasBinaryMinimizationAlgorithm</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the binaryMinimizationAlgorithm field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getBinaryMinimizationAlgorithm()">
<h3>getBinaryMinimizationAlgorithm</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.BinaryMinizationAlgorithm.html" title="enum in com.google.ortools.sat">SatParameters.BinaryMinizationAlgorithm</a></span>&nbsp;<span class="element-name">getBinaryMinimizationAlgorithm</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.BinaryMinizationAlgorithm binary_minimization_algorithm = 34 [default = BINARY_MINIMIZATION_FIRST];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getBinaryMinimizationAlgorithm()">getBinaryMinimizationAlgorithm</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The binaryMinimizationAlgorithm.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasSubsumptionDuringConflictAnalysis()">
<h3>hasSubsumptionDuringConflictAnalysis</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasSubsumptionDuringConflictAnalysis</span>()</div>
<div class="block"><pre>
At a really low cost, during the 1-UIP conflict computation, it is easy to
detect if some of the involved reasons are subsumed by the current
conflict. When this is true, such clauses are detached and later removed
from the problem.
</pre>
<code>optional bool subsumption_during_conflict_analysis = 56 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasSubsumptionDuringConflictAnalysis()">hasSubsumptionDuringConflictAnalysis</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the subsumptionDuringConflictAnalysis field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSubsumptionDuringConflictAnalysis()">
<h3>getSubsumptionDuringConflictAnalysis</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getSubsumptionDuringConflictAnalysis</span>()</div>
<div class="block"><pre>
At a really low cost, during the 1-UIP conflict computation, it is easy to
detect if some of the involved reasons are subsumed by the current
conflict. When this is true, such clauses are detached and later removed
from the problem.
</pre>
<code>optional bool subsumption_during_conflict_analysis = 56 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSubsumptionDuringConflictAnalysis()">getSubsumptionDuringConflictAnalysis</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The subsumptionDuringConflictAnalysis.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasClauseCleanupPeriod()">
<h3>hasClauseCleanupPeriod</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasClauseCleanupPeriod</span>()</div>
<div class="block"><pre>
Trigger a cleanup when this number of "deletable" clauses is learned.
</pre>
<code>optional int32 clause_cleanup_period = 11 [default = 10000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasClauseCleanupPeriod()">hasClauseCleanupPeriod</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the clauseCleanupPeriod field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getClauseCleanupPeriod()">
<h3>getClauseCleanupPeriod</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getClauseCleanupPeriod</span>()</div>
<div class="block"><pre>
Trigger a cleanup when this number of "deletable" clauses is learned.
</pre>
<code>optional int32 clause_cleanup_period = 11 [default = 10000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getClauseCleanupPeriod()">getClauseCleanupPeriod</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The clauseCleanupPeriod.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasClauseCleanupTarget()">
<h3>hasClauseCleanupTarget</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasClauseCleanupTarget</span>()</div>
<div class="block"><pre>
During a cleanup, we will always keep that number of "deletable" clauses.
Note that this doesn't include the "protected" clauses.
</pre>
<code>optional int32 clause_cleanup_target = 13 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasClauseCleanupTarget()">hasClauseCleanupTarget</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the clauseCleanupTarget field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getClauseCleanupTarget()">
<h3>getClauseCleanupTarget</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getClauseCleanupTarget</span>()</div>
<div class="block"><pre>
During a cleanup, we will always keep that number of "deletable" clauses.
Note that this doesn't include the "protected" clauses.
</pre>
<code>optional int32 clause_cleanup_target = 13 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getClauseCleanupTarget()">getClauseCleanupTarget</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The clauseCleanupTarget.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasClauseCleanupRatio()">
<h3>hasClauseCleanupRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasClauseCleanupRatio</span>()</div>
<div class="block"><pre>
During a cleanup, if clause_cleanup_target is 0, we will delete the
clause_cleanup_ratio of "deletable" clauses instead of aiming for a fixed
target of clauses to keep.
</pre>
<code>optional double clause_cleanup_ratio = 190 [default = 0.5];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasClauseCleanupRatio()">hasClauseCleanupRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the clauseCleanupRatio field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getClauseCleanupRatio()">
<h3>getClauseCleanupRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getClauseCleanupRatio</span>()</div>
<div class="block"><pre>
During a cleanup, if clause_cleanup_target is 0, we will delete the
clause_cleanup_ratio of "deletable" clauses instead of aiming for a fixed
target of clauses to keep.
</pre>
<code>optional double clause_cleanup_ratio = 190 [default = 0.5];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getClauseCleanupRatio()">getClauseCleanupRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The clauseCleanupRatio.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasClauseCleanupProtection()">
<h3>hasClauseCleanupProtection</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasClauseCleanupProtection</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.ClauseProtection clause_cleanup_protection = 58 [default = PROTECTION_NONE];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasClauseCleanupProtection()">hasClauseCleanupProtection</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the clauseCleanupProtection field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getClauseCleanupProtection()">
<h3>getClauseCleanupProtection</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.ClauseProtection.html" title="enum in com.google.ortools.sat">SatParameters.ClauseProtection</a></span>&nbsp;<span class="element-name">getClauseCleanupProtection</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.ClauseProtection clause_cleanup_protection = 58 [default = PROTECTION_NONE];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getClauseCleanupProtection()">getClauseCleanupProtection</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The clauseCleanupProtection.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasClauseCleanupLbdBound()">
<h3>hasClauseCleanupLbdBound</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasClauseCleanupLbdBound</span>()</div>
<div class="block"><pre>
All the clauses with a LBD (literal blocks distance) lower or equal to this
parameters will always be kept.
</pre>
<code>optional int32 clause_cleanup_lbd_bound = 59 [default = 5];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasClauseCleanupLbdBound()">hasClauseCleanupLbdBound</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the clauseCleanupLbdBound field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getClauseCleanupLbdBound()">
<h3>getClauseCleanupLbdBound</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getClauseCleanupLbdBound</span>()</div>
<div class="block"><pre>
All the clauses with a LBD (literal blocks distance) lower or equal to this
parameters will always be kept.
</pre>
<code>optional int32 clause_cleanup_lbd_bound = 59 [default = 5];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getClauseCleanupLbdBound()">getClauseCleanupLbdBound</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The clauseCleanupLbdBound.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasClauseCleanupOrdering()">
<h3>hasClauseCleanupOrdering</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasClauseCleanupOrdering</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.ClauseOrdering clause_cleanup_ordering = 60 [default = CLAUSE_ACTIVITY];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasClauseCleanupOrdering()">hasClauseCleanupOrdering</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the clauseCleanupOrdering field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getClauseCleanupOrdering()">
<h3>getClauseCleanupOrdering</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.ClauseOrdering.html" title="enum in com.google.ortools.sat">SatParameters.ClauseOrdering</a></span>&nbsp;<span class="element-name">getClauseCleanupOrdering</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.ClauseOrdering clause_cleanup_ordering = 60 [default = CLAUSE_ACTIVITY];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getClauseCleanupOrdering()">getClauseCleanupOrdering</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The clauseCleanupOrdering.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPbCleanupIncrement()">
<h3>hasPbCleanupIncrement</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPbCleanupIncrement</span>()</div>
<div class="block"><pre>
Same as for the clauses, but for the learned pseudo-Boolean constraints.
</pre>
<code>optional int32 pb_cleanup_increment = 46 [default = 200];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPbCleanupIncrement()">hasPbCleanupIncrement</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the pbCleanupIncrement field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPbCleanupIncrement()">
<h3>getPbCleanupIncrement</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getPbCleanupIncrement</span>()</div>
<div class="block"><pre>
Same as for the clauses, but for the learned pseudo-Boolean constraints.
</pre>
<code>optional int32 pb_cleanup_increment = 46 [default = 200];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPbCleanupIncrement()">getPbCleanupIncrement</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The pbCleanupIncrement.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPbCleanupRatio()">
<h3>hasPbCleanupRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPbCleanupRatio</span>()</div>
<div class="block"><code>optional double pb_cleanup_ratio = 47 [default = 0.5];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPbCleanupRatio()">hasPbCleanupRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the pbCleanupRatio field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPbCleanupRatio()">
<h3>getPbCleanupRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getPbCleanupRatio</span>()</div>
<div class="block"><code>optional double pb_cleanup_ratio = 47 [default = 0.5];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPbCleanupRatio()">getPbCleanupRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The pbCleanupRatio.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMinimizeWithPropagationRestartPeriod()">
<h3>hasMinimizeWithPropagationRestartPeriod</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMinimizeWithPropagationRestartPeriod</span>()</div>
<div class="block"><pre>
Parameters for an heuristic similar to the one described in "An effective
learnt clause minimization approach for CDCL Sat Solvers",
https://www.ijcai.org/proceedings/2017/0098.pdf
For now, we have a somewhat simpler implementation where every x restart we
spend y decisions on clause minimization. The minimization technique is the
same as the one used to minimize core in max-sat. We also minimize problem
clauses and not just the learned clause that we keep forever like in the
paper.
Changing these parameters or the kind of clause we minimize seems to have
a big impact on the overall perf on our benchmarks. So this technique seems
definitely useful, but it is hard to tune properly.
</pre>
<code>optional int32 minimize_with_propagation_restart_period = 96 [default = 10];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMinimizeWithPropagationRestartPeriod()">hasMinimizeWithPropagationRestartPeriod</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the minimizeWithPropagationRestartPeriod field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMinimizeWithPropagationRestartPeriod()">
<h3>getMinimizeWithPropagationRestartPeriod</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMinimizeWithPropagationRestartPeriod</span>()</div>
<div class="block"><pre>
Parameters for an heuristic similar to the one described in "An effective
learnt clause minimization approach for CDCL Sat Solvers",
https://www.ijcai.org/proceedings/2017/0098.pdf
For now, we have a somewhat simpler implementation where every x restart we
spend y decisions on clause minimization. The minimization technique is the
same as the one used to minimize core in max-sat. We also minimize problem
clauses and not just the learned clause that we keep forever like in the
paper.
Changing these parameters or the kind of clause we minimize seems to have
a big impact on the overall perf on our benchmarks. So this technique seems
definitely useful, but it is hard to tune properly.
</pre>
<code>optional int32 minimize_with_propagation_restart_period = 96 [default = 10];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMinimizeWithPropagationRestartPeriod()">getMinimizeWithPropagationRestartPeriod</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The minimizeWithPropagationRestartPeriod.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMinimizeWithPropagationNumDecisions()">
<h3>hasMinimizeWithPropagationNumDecisions</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMinimizeWithPropagationNumDecisions</span>()</div>
<div class="block"><code>optional int32 minimize_with_propagation_num_decisions = 97 [default = 1000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMinimizeWithPropagationNumDecisions()">hasMinimizeWithPropagationNumDecisions</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the minimizeWithPropagationNumDecisions field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMinimizeWithPropagationNumDecisions()">
<h3>getMinimizeWithPropagationNumDecisions</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMinimizeWithPropagationNumDecisions</span>()</div>
<div class="block"><code>optional int32 minimize_with_propagation_num_decisions = 97 [default = 1000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMinimizeWithPropagationNumDecisions()">getMinimizeWithPropagationNumDecisions</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The minimizeWithPropagationNumDecisions.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasVariableActivityDecay()">
<h3>hasVariableActivityDecay</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasVariableActivityDecay</span>()</div>
<div class="block"><pre>
Each time a conflict is found, the activities of some variables are
increased by one. Then, the activity of all variables are multiplied by
variable_activity_decay.
To implement this efficiently, the activity of all the variables is not
decayed at each conflict. Instead, the activity increment is multiplied by
1 / decay. When an activity reach max_variable_activity_value, all the
activity are multiplied by 1 / max_variable_activity_value.
</pre>
<code>optional double variable_activity_decay = 15 [default = 0.8];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasVariableActivityDecay()">hasVariableActivityDecay</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the variableActivityDecay field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getVariableActivityDecay()">
<h3>getVariableActivityDecay</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getVariableActivityDecay</span>()</div>
<div class="block"><pre>
Each time a conflict is found, the activities of some variables are
increased by one. Then, the activity of all variables are multiplied by
variable_activity_decay.
To implement this efficiently, the activity of all the variables is not
decayed at each conflict. Instead, the activity increment is multiplied by
1 / decay. When an activity reach max_variable_activity_value, all the
activity are multiplied by 1 / max_variable_activity_value.
</pre>
<code>optional double variable_activity_decay = 15 [default = 0.8];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getVariableActivityDecay()">getVariableActivityDecay</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The variableActivityDecay.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxVariableActivityValue()">
<h3>hasMaxVariableActivityValue</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxVariableActivityValue</span>()</div>
<div class="block"><code>optional double max_variable_activity_value = 16 [default = 1e+100];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxVariableActivityValue()">hasMaxVariableActivityValue</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxVariableActivityValue field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxVariableActivityValue()">
<h3>getMaxVariableActivityValue</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMaxVariableActivityValue</span>()</div>
<div class="block"><code>optional double max_variable_activity_value = 16 [default = 1e+100];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxVariableActivityValue()">getMaxVariableActivityValue</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxVariableActivityValue.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasGlucoseMaxDecay()">
<h3>hasGlucoseMaxDecay</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasGlucoseMaxDecay</span>()</div>
<div class="block"><pre>
The activity starts at 0.8 and increment by 0.01 every 5000 conflicts until
0.95. This "hack" seems to work well and comes from:
Glucose 2.3 in the SAT 2013 Competition - SAT Competition 2013
http://edacc4.informatik.uni-ulm.de/SC13/solver-description-download/136
</pre>
<code>optional double glucose_max_decay = 22 [default = 0.95];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasGlucoseMaxDecay()">hasGlucoseMaxDecay</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the glucoseMaxDecay field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getGlucoseMaxDecay()">
<h3>getGlucoseMaxDecay</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getGlucoseMaxDecay</span>()</div>
<div class="block"><pre>
The activity starts at 0.8 and increment by 0.01 every 5000 conflicts until
0.95. This "hack" seems to work well and comes from:
Glucose 2.3 in the SAT 2013 Competition - SAT Competition 2013
http://edacc4.informatik.uni-ulm.de/SC13/solver-description-download/136
</pre>
<code>optional double glucose_max_decay = 22 [default = 0.95];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getGlucoseMaxDecay()">getGlucoseMaxDecay</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The glucoseMaxDecay.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasGlucoseDecayIncrement()">
<h3>hasGlucoseDecayIncrement</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasGlucoseDecayIncrement</span>()</div>
<div class="block"><code>optional double glucose_decay_increment = 23 [default = 0.01];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasGlucoseDecayIncrement()">hasGlucoseDecayIncrement</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the glucoseDecayIncrement field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getGlucoseDecayIncrement()">
<h3>getGlucoseDecayIncrement</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getGlucoseDecayIncrement</span>()</div>
<div class="block"><code>optional double glucose_decay_increment = 23 [default = 0.01];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getGlucoseDecayIncrement()">getGlucoseDecayIncrement</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The glucoseDecayIncrement.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasGlucoseDecayIncrementPeriod()">
<h3>hasGlucoseDecayIncrementPeriod</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasGlucoseDecayIncrementPeriod</span>()</div>
<div class="block"><code>optional int32 glucose_decay_increment_period = 24 [default = 5000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasGlucoseDecayIncrementPeriod()">hasGlucoseDecayIncrementPeriod</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the glucoseDecayIncrementPeriod field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getGlucoseDecayIncrementPeriod()">
<h3>getGlucoseDecayIncrementPeriod</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getGlucoseDecayIncrementPeriod</span>()</div>
<div class="block"><code>optional int32 glucose_decay_increment_period = 24 [default = 5000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getGlucoseDecayIncrementPeriod()">getGlucoseDecayIncrementPeriod</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The glucoseDecayIncrementPeriod.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasClauseActivityDecay()">
<h3>hasClauseActivityDecay</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasClauseActivityDecay</span>()</div>
<div class="block"><pre>
Clause activity parameters (same effect as the one on the variables).
</pre>
<code>optional double clause_activity_decay = 17 [default = 0.999];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasClauseActivityDecay()">hasClauseActivityDecay</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the clauseActivityDecay field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getClauseActivityDecay()">
<h3>getClauseActivityDecay</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getClauseActivityDecay</span>()</div>
<div class="block"><pre>
Clause activity parameters (same effect as the one on the variables).
</pre>
<code>optional double clause_activity_decay = 17 [default = 0.999];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getClauseActivityDecay()">getClauseActivityDecay</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The clauseActivityDecay.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxClauseActivityValue()">
<h3>hasMaxClauseActivityValue</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxClauseActivityValue</span>()</div>
<div class="block"><code>optional double max_clause_activity_value = 18 [default = 1e+20];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxClauseActivityValue()">hasMaxClauseActivityValue</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxClauseActivityValue field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxClauseActivityValue()">
<h3>getMaxClauseActivityValue</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMaxClauseActivityValue</span>()</div>
<div class="block"><code>optional double max_clause_activity_value = 18 [default = 1e+20];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxClauseActivityValue()">getMaxClauseActivityValue</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxClauseActivityValue.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRestartAlgorithmsList()">
<h3>getRestartAlgorithmsList</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="SatParameters.RestartAlgorithm.html" title="enum in com.google.ortools.sat">SatParameters.RestartAlgorithm</a>&gt;</span>&nbsp;<span class="element-name">getRestartAlgorithmsList</span>()</div>
<div class="block"><pre>
The restart strategies will change each time the strategy_counter is
increased. The current strategy will simply be the one at index
strategy_counter modulo the number of strategy. Note that if this list
includes a NO_RESTART, nothing will change when it is reached because the
strategy_counter will only increment after a restart.
The idea of switching of search strategy tailored for SAT/UNSAT comes from
Chanseok Oh with his COMiniSatPS solver, see http://cs.nyu.edu/~chanseok/.
But more generally, it seems REALLY beneficial to try different strategy.
</pre>
<code>repeated .operations_research.sat.SatParameters.RestartAlgorithm restart_algorithms = 61;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRestartAlgorithmsList()">getRestartAlgorithmsList</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>A list containing the restartAlgorithms.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRestartAlgorithmsCount()">
<h3>getRestartAlgorithmsCount</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getRestartAlgorithmsCount</span>()</div>
<div class="block"><pre>
The restart strategies will change each time the strategy_counter is
increased. The current strategy will simply be the one at index
strategy_counter modulo the number of strategy. Note that if this list
includes a NO_RESTART, nothing will change when it is reached because the
strategy_counter will only increment after a restart.
The idea of switching of search strategy tailored for SAT/UNSAT comes from
Chanseok Oh with his COMiniSatPS solver, see http://cs.nyu.edu/~chanseok/.
But more generally, it seems REALLY beneficial to try different strategy.
</pre>
<code>repeated .operations_research.sat.SatParameters.RestartAlgorithm restart_algorithms = 61;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRestartAlgorithmsCount()">getRestartAlgorithmsCount</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The count of restartAlgorithms.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRestartAlgorithms(int)">
<h3>getRestartAlgorithms</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.RestartAlgorithm.html" title="enum in com.google.ortools.sat">SatParameters.RestartAlgorithm</a></span>&nbsp;<span class="element-name">getRestartAlgorithms</span><wbr><span class="parameters">(int&nbsp;index)</span></div>
<div class="block"><pre>
The restart strategies will change each time the strategy_counter is
increased. The current strategy will simply be the one at index
strategy_counter modulo the number of strategy. Note that if this list
includes a NO_RESTART, nothing will change when it is reached because the
strategy_counter will only increment after a restart.
The idea of switching of search strategy tailored for SAT/UNSAT comes from
Chanseok Oh with his COMiniSatPS solver, see http://cs.nyu.edu/~chanseok/.
But more generally, it seems REALLY beneficial to try different strategy.
</pre>
<code>repeated .operations_research.sat.SatParameters.RestartAlgorithm restart_algorithms = 61;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRestartAlgorithms(int)">getRestartAlgorithms</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Parameters:</dt>
<dd><code>index</code> - The index of the element to return.</dd>
<dt>Returns:</dt>
<dd>The restartAlgorithms at the given index.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasDefaultRestartAlgorithms()">
<h3>hasDefaultRestartAlgorithms</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasDefaultRestartAlgorithms</span>()</div>
<div class="block"><code>optional string default_restart_algorithms = 70 [default = "LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART"];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasDefaultRestartAlgorithms()">hasDefaultRestartAlgorithms</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the defaultRestartAlgorithms field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDefaultRestartAlgorithms()">
<h3>getDefaultRestartAlgorithms</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getDefaultRestartAlgorithms</span>()</div>
<div class="block"><code>optional string default_restart_algorithms = 70 [default = "LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART"];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getDefaultRestartAlgorithms()">getDefaultRestartAlgorithms</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The defaultRestartAlgorithms.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDefaultRestartAlgorithmsBytes()">
<h3>getDefaultRestartAlgorithmsBytes</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">com.google.protobuf.ByteString</span>&nbsp;<span class="element-name">getDefaultRestartAlgorithmsBytes</span>()</div>
<div class="block"><code>optional string default_restart_algorithms = 70 [default = "LUBY_RESTART,LBD_MOVING_AVERAGE_RESTART,DL_MOVING_AVERAGE_RESTART"];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getDefaultRestartAlgorithmsBytes()">getDefaultRestartAlgorithmsBytes</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The bytes for defaultRestartAlgorithms.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasRestartPeriod()">
<h3>hasRestartPeriod</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasRestartPeriod</span>()</div>
<div class="block"><pre>
Restart period for the FIXED_RESTART strategy. This is also the multiplier
used by the LUBY_RESTART strategy.
</pre>
<code>optional int32 restart_period = 30 [default = 50];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasRestartPeriod()">hasRestartPeriod</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the restartPeriod field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRestartPeriod()">
<h3>getRestartPeriod</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getRestartPeriod</span>()</div>
<div class="block"><pre>
Restart period for the FIXED_RESTART strategy. This is also the multiplier
used by the LUBY_RESTART strategy.
</pre>
<code>optional int32 restart_period = 30 [default = 50];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRestartPeriod()">getRestartPeriod</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The restartPeriod.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasRestartRunningWindowSize()">
<h3>hasRestartRunningWindowSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasRestartRunningWindowSize</span>()</div>
<div class="block"><pre>
Size of the window for the moving average restarts.
</pre>
<code>optional int32 restart_running_window_size = 62 [default = 50];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasRestartRunningWindowSize()">hasRestartRunningWindowSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the restartRunningWindowSize field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRestartRunningWindowSize()">
<h3>getRestartRunningWindowSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getRestartRunningWindowSize</span>()</div>
<div class="block"><pre>
Size of the window for the moving average restarts.
</pre>
<code>optional int32 restart_running_window_size = 62 [default = 50];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRestartRunningWindowSize()">getRestartRunningWindowSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The restartRunningWindowSize.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasRestartDlAverageRatio()">
<h3>hasRestartDlAverageRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasRestartDlAverageRatio</span>()</div>
<div class="block"><pre>
In the moving average restart algorithms, a restart is triggered if the
window average times this ratio is greater that the global average.
</pre>
<code>optional double restart_dl_average_ratio = 63 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasRestartDlAverageRatio()">hasRestartDlAverageRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the restartDlAverageRatio field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRestartDlAverageRatio()">
<h3>getRestartDlAverageRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getRestartDlAverageRatio</span>()</div>
<div class="block"><pre>
In the moving average restart algorithms, a restart is triggered if the
window average times this ratio is greater that the global average.
</pre>
<code>optional double restart_dl_average_ratio = 63 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRestartDlAverageRatio()">getRestartDlAverageRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The restartDlAverageRatio.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasRestartLbdAverageRatio()">
<h3>hasRestartLbdAverageRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasRestartLbdAverageRatio</span>()</div>
<div class="block"><code>optional double restart_lbd_average_ratio = 71 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasRestartLbdAverageRatio()">hasRestartLbdAverageRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the restartLbdAverageRatio field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRestartLbdAverageRatio()">
<h3>getRestartLbdAverageRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getRestartLbdAverageRatio</span>()</div>
<div class="block"><code>optional double restart_lbd_average_ratio = 71 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRestartLbdAverageRatio()">getRestartLbdAverageRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The restartLbdAverageRatio.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseBlockingRestart()">
<h3>hasUseBlockingRestart</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseBlockingRestart</span>()</div>
<div class="block"><pre>
Block a moving restart algorithm if the trail size of the current conflict
is greater than the multiplier times the moving average of the trail size
at the previous conflicts.
</pre>
<code>optional bool use_blocking_restart = 64 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseBlockingRestart()">hasUseBlockingRestart</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useBlockingRestart field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseBlockingRestart()">
<h3>getUseBlockingRestart</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseBlockingRestart</span>()</div>
<div class="block"><pre>
Block a moving restart algorithm if the trail size of the current conflict
is greater than the multiplier times the moving average of the trail size
at the previous conflicts.
</pre>
<code>optional bool use_blocking_restart = 64 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseBlockingRestart()">getUseBlockingRestart</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useBlockingRestart.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasBlockingRestartWindowSize()">
<h3>hasBlockingRestartWindowSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasBlockingRestartWindowSize</span>()</div>
<div class="block"><code>optional int32 blocking_restart_window_size = 65 [default = 5000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasBlockingRestartWindowSize()">hasBlockingRestartWindowSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the blockingRestartWindowSize field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getBlockingRestartWindowSize()">
<h3>getBlockingRestartWindowSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getBlockingRestartWindowSize</span>()</div>
<div class="block"><code>optional int32 blocking_restart_window_size = 65 [default = 5000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getBlockingRestartWindowSize()">getBlockingRestartWindowSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The blockingRestartWindowSize.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasBlockingRestartMultiplier()">
<h3>hasBlockingRestartMultiplier</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasBlockingRestartMultiplier</span>()</div>
<div class="block"><code>optional double blocking_restart_multiplier = 66 [default = 1.4];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasBlockingRestartMultiplier()">hasBlockingRestartMultiplier</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the blockingRestartMultiplier field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getBlockingRestartMultiplier()">
<h3>getBlockingRestartMultiplier</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getBlockingRestartMultiplier</span>()</div>
<div class="block"><code>optional double blocking_restart_multiplier = 66 [default = 1.4];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getBlockingRestartMultiplier()">getBlockingRestartMultiplier</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The blockingRestartMultiplier.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasNumConflictsBeforeStrategyChanges()">
<h3>hasNumConflictsBeforeStrategyChanges</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasNumConflictsBeforeStrategyChanges</span>()</div>
<div class="block"><pre>
After each restart, if the number of conflict since the last strategy
change is greater that this, then we increment a "strategy_counter" that
can be use to change the search strategy used by the following restarts.
</pre>
<code>optional int32 num_conflicts_before_strategy_changes = 68 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasNumConflictsBeforeStrategyChanges()">hasNumConflictsBeforeStrategyChanges</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the numConflictsBeforeStrategyChanges field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getNumConflictsBeforeStrategyChanges()">
<h3>getNumConflictsBeforeStrategyChanges</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getNumConflictsBeforeStrategyChanges</span>()</div>
<div class="block"><pre>
After each restart, if the number of conflict since the last strategy
change is greater that this, then we increment a "strategy_counter" that
can be use to change the search strategy used by the following restarts.
</pre>
<code>optional int32 num_conflicts_before_strategy_changes = 68 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getNumConflictsBeforeStrategyChanges()">getNumConflictsBeforeStrategyChanges</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The numConflictsBeforeStrategyChanges.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasStrategyChangeIncreaseRatio()">
<h3>hasStrategyChangeIncreaseRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasStrategyChangeIncreaseRatio</span>()</div>
<div class="block"><pre>
The parameter num_conflicts_before_strategy_changes is increased by that
much after each strategy change.
</pre>
<code>optional double strategy_change_increase_ratio = 69 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasStrategyChangeIncreaseRatio()">hasStrategyChangeIncreaseRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the strategyChangeIncreaseRatio field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getStrategyChangeIncreaseRatio()">
<h3>getStrategyChangeIncreaseRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getStrategyChangeIncreaseRatio</span>()</div>
<div class="block"><pre>
The parameter num_conflicts_before_strategy_changes is increased by that
much after each strategy change.
</pre>
<code>optional double strategy_change_increase_ratio = 69 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getStrategyChangeIncreaseRatio()">getStrategyChangeIncreaseRatio</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The strategyChangeIncreaseRatio.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxTimeInSeconds()">
<h3>hasMaxTimeInSeconds</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxTimeInSeconds</span>()</div>
<div class="block"><pre>
Maximum time allowed in seconds to solve a problem.
The counter will starts at the beginning of the Solve() call.
</pre>
<code>optional double max_time_in_seconds = 36 [default = inf];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxTimeInSeconds()">hasMaxTimeInSeconds</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxTimeInSeconds field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxTimeInSeconds()">
<h3>getMaxTimeInSeconds</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMaxTimeInSeconds</span>()</div>
<div class="block"><pre>
Maximum time allowed in seconds to solve a problem.
The counter will starts at the beginning of the Solve() call.
</pre>
<code>optional double max_time_in_seconds = 36 [default = inf];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxTimeInSeconds()">getMaxTimeInSeconds</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxTimeInSeconds.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxDeterministicTime()">
<h3>hasMaxDeterministicTime</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxDeterministicTime</span>()</div>
<div class="block"><pre>
Maximum time allowed in deterministic time to solve a problem.
The deterministic time should be correlated with the real time used by the
solver, the time unit being as close as possible to a second.
</pre>
<code>optional double max_deterministic_time = 67 [default = inf];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxDeterministicTime()">hasMaxDeterministicTime</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxDeterministicTime field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxDeterministicTime()">
<h3>getMaxDeterministicTime</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMaxDeterministicTime</span>()</div>
<div class="block"><pre>
Maximum time allowed in deterministic time to solve a problem.
The deterministic time should be correlated with the real time used by the
solver, the time unit being as close as possible to a second.
</pre>
<code>optional double max_deterministic_time = 67 [default = inf];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxDeterministicTime()">getMaxDeterministicTime</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxDeterministicTime.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxNumberOfConflicts()">
<h3>hasMaxNumberOfConflicts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxNumberOfConflicts</span>()</div>
<div class="block"><pre>
Maximum number of conflicts allowed to solve a problem.
TODO(user,user): Maybe change the way the conflict limit is enforced?
currently it is enforced on each independent internal SAT solve, rather
than on the overall number of conflicts across all solves. So in the
context of an optimization problem, this is not really usable directly by a
client.
</pre>
<code>optional int64 max_number_of_conflicts = 37 [default = 9223372036854775807];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxNumberOfConflicts()">hasMaxNumberOfConflicts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxNumberOfConflicts field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxNumberOfConflicts()">
<h3>getMaxNumberOfConflicts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name">getMaxNumberOfConflicts</span>()</div>
<div class="block"><pre>
Maximum number of conflicts allowed to solve a problem.
TODO(user,user): Maybe change the way the conflict limit is enforced?
currently it is enforced on each independent internal SAT solve, rather
than on the overall number of conflicts across all solves. So in the
context of an optimization problem, this is not really usable directly by a
client.
</pre>
<code>optional int64 max_number_of_conflicts = 37 [default = 9223372036854775807];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxNumberOfConflicts()">getMaxNumberOfConflicts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxNumberOfConflicts.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxMemoryInMb()">
<h3>hasMaxMemoryInMb</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxMemoryInMb</span>()</div>
<div class="block"><pre>
Maximum memory allowed for the whole thread containing the solver. The
solver will abort as soon as it detects that this limit is crossed. As a
result, this limit is approximative, but usually the solver will not go too
much over.
TODO(user): This is only used by the pure SAT solver, generalize to CP-SAT.
</pre>
<code>optional int64 max_memory_in_mb = 40 [default = 10000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxMemoryInMb()">hasMaxMemoryInMb</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxMemoryInMb field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxMemoryInMb()">
<h3>getMaxMemoryInMb</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name">getMaxMemoryInMb</span>()</div>
<div class="block"><pre>
Maximum memory allowed for the whole thread containing the solver. The
solver will abort as soon as it detects that this limit is crossed. As a
result, this limit is approximative, but usually the solver will not go too
much over.
TODO(user): This is only used by the pure SAT solver, generalize to CP-SAT.
</pre>
<code>optional int64 max_memory_in_mb = 40 [default = 10000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxMemoryInMb()">getMaxMemoryInMb</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxMemoryInMb.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasAbsoluteGapLimit()">
<h3>hasAbsoluteGapLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasAbsoluteGapLimit</span>()</div>
<div class="block"><pre>
Stop the search when the gap between the best feasible objective (O) and
our best objective bound (B) is smaller than a limit.
The exact definition is:
- Absolute: abs(O - B)
- Relative: abs(O - B) / max(1, abs(O)).
Important: The relative gap depends on the objective offset! If you
artificially shift the objective, you will get widely different value of
the relative gap.
Note that if the gap is reached, the search status will be OPTIMAL. But
one can check the best objective bound to see the actual gap.
If the objective is integer, then any absolute gap &lt; 1 will lead to a true
optimal. If the objective is floating point, a gap of zero make little
sense so is is why we use a non-zero default value. At the end of the
search, we will display a warning if OPTIMAL is reported yet the gap is
greater than this absolute gap.
</pre>
<code>optional double absolute_gap_limit = 159 [default = 0.0001];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasAbsoluteGapLimit()">hasAbsoluteGapLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the absoluteGapLimit field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAbsoluteGapLimit()">
<h3>getAbsoluteGapLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getAbsoluteGapLimit</span>()</div>
<div class="block"><pre>
Stop the search when the gap between the best feasible objective (O) and
our best objective bound (B) is smaller than a limit.
The exact definition is:
- Absolute: abs(O - B)
- Relative: abs(O - B) / max(1, abs(O)).
Important: The relative gap depends on the objective offset! If you
artificially shift the objective, you will get widely different value of
the relative gap.
Note that if the gap is reached, the search status will be OPTIMAL. But
one can check the best objective bound to see the actual gap.
If the objective is integer, then any absolute gap &lt; 1 will lead to a true
optimal. If the objective is floating point, a gap of zero make little
sense so is is why we use a non-zero default value. At the end of the
search, we will display a warning if OPTIMAL is reported yet the gap is
greater than this absolute gap.
</pre>
<code>optional double absolute_gap_limit = 159 [default = 0.0001];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getAbsoluteGapLimit()">getAbsoluteGapLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The absoluteGapLimit.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasRelativeGapLimit()">
<h3>hasRelativeGapLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasRelativeGapLimit</span>()</div>
<div class="block"><code>optional double relative_gap_limit = 160 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasRelativeGapLimit()">hasRelativeGapLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the relativeGapLimit field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRelativeGapLimit()">
<h3>getRelativeGapLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getRelativeGapLimit</span>()</div>
<div class="block"><code>optional double relative_gap_limit = 160 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRelativeGapLimit()">getRelativeGapLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The relativeGapLimit.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasRandomSeed()">
<h3>hasRandomSeed</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasRandomSeed</span>()</div>
<div class="block"><pre>
At the beginning of each solve, the random number generator used in some
part of the solver is reinitialized to this seed. If you change the random
seed, the solver may make different choices during the solving process.
For some problems, the running time may vary a lot depending on small
change in the solving algorithm. Running the solver with different seeds
enables to have more robust benchmarks when evaluating new features.
</pre>
<code>optional int32 random_seed = 31 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasRandomSeed()">hasRandomSeed</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the randomSeed field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRandomSeed()">
<h3>getRandomSeed</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getRandomSeed</span>()</div>
<div class="block"><pre>
At the beginning of each solve, the random number generator used in some
part of the solver is reinitialized to this seed. If you change the random
seed, the solver may make different choices during the solving process.
For some problems, the running time may vary a lot depending on small
change in the solving algorithm. Running the solver with different seeds
enables to have more robust benchmarks when evaluating new features.
</pre>
<code>optional int32 random_seed = 31 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRandomSeed()">getRandomSeed</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The randomSeed.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPermuteVariableRandomly()">
<h3>hasPermuteVariableRandomly</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPermuteVariableRandomly</span>()</div>
<div class="block"><pre>
This is mainly here to test the solver variability. Note that in tests, if
not explicitly set to false, all 3 options will be set to true so that
clients do not rely on the solver returning a specific solution if they are
many equivalent optimal solutions.
</pre>
<code>optional bool permute_variable_randomly = 178 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPermuteVariableRandomly()">hasPermuteVariableRandomly</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the permuteVariableRandomly field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPermuteVariableRandomly()">
<h3>getPermuteVariableRandomly</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getPermuteVariableRandomly</span>()</div>
<div class="block"><pre>
This is mainly here to test the solver variability. Note that in tests, if
not explicitly set to false, all 3 options will be set to true so that
clients do not rely on the solver returning a specific solution if they are
many equivalent optimal solutions.
</pre>
<code>optional bool permute_variable_randomly = 178 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPermuteVariableRandomly()">getPermuteVariableRandomly</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The permuteVariableRandomly.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPermutePresolveConstraintOrder()">
<h3>hasPermutePresolveConstraintOrder</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPermutePresolveConstraintOrder</span>()</div>
<div class="block"><code>optional bool permute_presolve_constraint_order = 179 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPermutePresolveConstraintOrder()">hasPermutePresolveConstraintOrder</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the permutePresolveConstraintOrder field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPermutePresolveConstraintOrder()">
<h3>getPermutePresolveConstraintOrder</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getPermutePresolveConstraintOrder</span>()</div>
<div class="block"><code>optional bool permute_presolve_constraint_order = 179 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPermutePresolveConstraintOrder()">getPermutePresolveConstraintOrder</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The permutePresolveConstraintOrder.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseAbslRandom()">
<h3>hasUseAbslRandom</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseAbslRandom</span>()</div>
<div class="block"><code>optional bool use_absl_random = 180 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseAbslRandom()">hasUseAbslRandom</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useAbslRandom field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseAbslRandom()">
<h3>getUseAbslRandom</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseAbslRandom</span>()</div>
<div class="block"><code>optional bool use_absl_random = 180 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseAbslRandom()">getUseAbslRandom</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useAbslRandom.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasLogSearchProgress()">
<h3>hasLogSearchProgress</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasLogSearchProgress</span>()</div>
<div class="block"><pre>
Whether the solver should log the search progress. By default, it logs to
LOG(INFO). This can be overwritten by the log_destination parameter.
</pre>
<code>optional bool log_search_progress = 41 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasLogSearchProgress()">hasLogSearchProgress</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the logSearchProgress field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getLogSearchProgress()">
<h3>getLogSearchProgress</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getLogSearchProgress</span>()</div>
<div class="block"><pre>
Whether the solver should log the search progress. By default, it logs to
LOG(INFO). This can be overwritten by the log_destination parameter.
</pre>
<code>optional bool log_search_progress = 41 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getLogSearchProgress()">getLogSearchProgress</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The logSearchProgress.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasLogFrequencyInSeconds()">
<h3>hasLogFrequencyInSeconds</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasLogFrequencyInSeconds</span>()</div>
<div class="block"><pre>
Indicates how much logging should wait before logging periodic search
information from specialized workers (lb_tree_search, probing).
A value &lt;= 0.0 will disable periodic logs.
</pre>
<code>optional double log_frequency_in_seconds = 212 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasLogFrequencyInSeconds()">hasLogFrequencyInSeconds</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the logFrequencyInSeconds field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getLogFrequencyInSeconds()">
<h3>getLogFrequencyInSeconds</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getLogFrequencyInSeconds</span>()</div>
<div class="block"><pre>
Indicates how much logging should wait before logging periodic search
information from specialized workers (lb_tree_search, probing).
A value &lt;= 0.0 will disable periodic logs.
</pre>
<code>optional double log_frequency_in_seconds = 212 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getLogFrequencyInSeconds()">getLogFrequencyInSeconds</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The logFrequencyInSeconds.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasLogSubsolverStatistics()">
<h3>hasLogSubsolverStatistics</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasLogSubsolverStatistics</span>()</div>
<div class="block"><pre>
Whether the solver should display per sub-solver search statistics.
This is only useful is log_search_progress is set to true, and if the
number of search workers is &gt; 1.
</pre>
<code>optional bool log_subsolver_statistics = 189 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasLogSubsolverStatistics()">hasLogSubsolverStatistics</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the logSubsolverStatistics field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getLogSubsolverStatistics()">
<h3>getLogSubsolverStatistics</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getLogSubsolverStatistics</span>()</div>
<div class="block"><pre>
Whether the solver should display per sub-solver search statistics.
This is only useful is log_search_progress is set to true, and if the
number of search workers is &gt; 1.
</pre>
<code>optional bool log_subsolver_statistics = 189 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getLogSubsolverStatistics()">getLogSubsolverStatistics</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The logSubsolverStatistics.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasLogPrefix()">
<h3>hasLogPrefix</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasLogPrefix</span>()</div>
<div class="block"><pre>
Add a prefix to all logs.
</pre>
<code>optional string log_prefix = 185 [default = ""];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasLogPrefix()">hasLogPrefix</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the logPrefix field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getLogPrefix()">
<h3>getLogPrefix</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getLogPrefix</span>()</div>
<div class="block"><pre>
Add a prefix to all logs.
</pre>
<code>optional string log_prefix = 185 [default = ""];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getLogPrefix()">getLogPrefix</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The logPrefix.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getLogPrefixBytes()">
<h3>getLogPrefixBytes</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">com.google.protobuf.ByteString</span>&nbsp;<span class="element-name">getLogPrefixBytes</span>()</div>
<div class="block"><pre>
Add a prefix to all logs.
</pre>
<code>optional string log_prefix = 185 [default = ""];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getLogPrefixBytes()">getLogPrefixBytes</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The bytes for logPrefix.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasLogToStdout()">
<h3>hasLogToStdout</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasLogToStdout</span>()</div>
<div class="block"><pre>
Log to stdout.
</pre>
<code>optional bool log_to_stdout = 186 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasLogToStdout()">hasLogToStdout</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the logToStdout field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getLogToStdout()">
<h3>getLogToStdout</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getLogToStdout</span>()</div>
<div class="block"><pre>
Log to stdout.
</pre>
<code>optional bool log_to_stdout = 186 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getLogToStdout()">getLogToStdout</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The logToStdout.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasLogToResponse()">
<h3>hasLogToResponse</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasLogToResponse</span>()</div>
<div class="block"><pre>
Log to response proto.
</pre>
<code>optional bool log_to_response = 187 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasLogToResponse()">hasLogToResponse</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the logToResponse field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getLogToResponse()">
<h3>getLogToResponse</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getLogToResponse</span>()</div>
<div class="block"><pre>
Log to response proto.
</pre>
<code>optional bool log_to_response = 187 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getLogToResponse()">getLogToResponse</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The logToResponse.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUsePbResolution()">
<h3>hasUsePbResolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUsePbResolution</span>()</div>
<div class="block"><pre>
Whether to use pseudo-Boolean resolution to analyze a conflict. Note that
this option only make sense if your problem is modelized using
pseudo-Boolean constraints. If you only have clauses, this shouldn't change
anything (except slow the solver down).
</pre>
<code>optional bool use_pb_resolution = 43 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUsePbResolution()">hasUsePbResolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the usePbResolution field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUsePbResolution()">
<h3>getUsePbResolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUsePbResolution</span>()</div>
<div class="block"><pre>
Whether to use pseudo-Boolean resolution to analyze a conflict. Note that
this option only make sense if your problem is modelized using
pseudo-Boolean constraints. If you only have clauses, this shouldn't change
anything (except slow the solver down).
</pre>
<code>optional bool use_pb_resolution = 43 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUsePbResolution()">getUsePbResolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The usePbResolution.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMinimizeReductionDuringPbResolution()">
<h3>hasMinimizeReductionDuringPbResolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMinimizeReductionDuringPbResolution</span>()</div>
<div class="block"><pre>
A different algorithm during PB resolution. It minimizes the number of
calls to ReduceCoefficients() which can be time consuming. However, the
search space will be different and if the coefficients are large, this may
lead to integer overflows that could otherwise be prevented.
</pre>
<code>optional bool minimize_reduction_during_pb_resolution = 48 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMinimizeReductionDuringPbResolution()">hasMinimizeReductionDuringPbResolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the minimizeReductionDuringPbResolution field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMinimizeReductionDuringPbResolution()">
<h3>getMinimizeReductionDuringPbResolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getMinimizeReductionDuringPbResolution</span>()</div>
<div class="block"><pre>
A different algorithm during PB resolution. It minimizes the number of
calls to ReduceCoefficients() which can be time consuming. However, the
search space will be different and if the coefficients are large, this may
lead to integer overflows that could otherwise be prevented.
</pre>
<code>optional bool minimize_reduction_during_pb_resolution = 48 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMinimizeReductionDuringPbResolution()">getMinimizeReductionDuringPbResolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The minimizeReductionDuringPbResolution.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasCountAssumptionLevelsInLbd()">
<h3>hasCountAssumptionLevelsInLbd</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasCountAssumptionLevelsInLbd</span>()</div>
<div class="block"><pre>
Whether or not the assumption levels are taken into account during the LBD
computation. According to the reference below, not counting them improves
the solver in some situation. Note that this only impact solves under
assumptions.
Gilles Audemard, Jean-Marie Lagniez, Laurent Simon, "Improving Glucose for
Incremental SAT Solving with Assumptions: Application to MUS Extraction"
Theory and Applications of Satisfiability Testing - SAT 2013, Lecture Notes
in Computer Science Volume 7962, 2013, pp 309-317.
</pre>
<code>optional bool count_assumption_levels_in_lbd = 49 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasCountAssumptionLevelsInLbd()">hasCountAssumptionLevelsInLbd</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the countAssumptionLevelsInLbd field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCountAssumptionLevelsInLbd()">
<h3>getCountAssumptionLevelsInLbd</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getCountAssumptionLevelsInLbd</span>()</div>
<div class="block"><pre>
Whether or not the assumption levels are taken into account during the LBD
computation. According to the reference below, not counting them improves
the solver in some situation. Note that this only impact solves under
assumptions.
Gilles Audemard, Jean-Marie Lagniez, Laurent Simon, "Improving Glucose for
Incremental SAT Solving with Assumptions: Application to MUS Extraction"
Theory and Applications of Satisfiability Testing - SAT 2013, Lecture Notes
in Computer Science Volume 7962, 2013, pp 309-317.
</pre>
<code>optional bool count_assumption_levels_in_lbd = 49 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getCountAssumptionLevelsInLbd()">getCountAssumptionLevelsInLbd</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The countAssumptionLevelsInLbd.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPresolveBveThreshold()">
<h3>hasPresolveBveThreshold</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPresolveBveThreshold</span>()</div>
<div class="block"><pre>
During presolve, only try to perform the bounded variable elimination (BVE)
of a variable x if the number of occurrences of x times the number of
occurrences of not(x) is not greater than this parameter.
</pre>
<code>optional int32 presolve_bve_threshold = 54 [default = 500];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPresolveBveThreshold()">hasPresolveBveThreshold</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the presolveBveThreshold field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPresolveBveThreshold()">
<h3>getPresolveBveThreshold</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getPresolveBveThreshold</span>()</div>
<div class="block"><pre>
During presolve, only try to perform the bounded variable elimination (BVE)
of a variable x if the number of occurrences of x times the number of
occurrences of not(x) is not greater than this parameter.
</pre>
<code>optional int32 presolve_bve_threshold = 54 [default = 500];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPresolveBveThreshold()">getPresolveBveThreshold</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The presolveBveThreshold.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPresolveBveClauseWeight()">
<h3>hasPresolveBveClauseWeight</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPresolveBveClauseWeight</span>()</div>
<div class="block"><pre>
During presolve, we apply BVE only if this weight times the number of
clauses plus the number of clause literals is not increased.
</pre>
<code>optional int32 presolve_bve_clause_weight = 55 [default = 3];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPresolveBveClauseWeight()">hasPresolveBveClauseWeight</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the presolveBveClauseWeight field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPresolveBveClauseWeight()">
<h3>getPresolveBveClauseWeight</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getPresolveBveClauseWeight</span>()</div>
<div class="block"><pre>
During presolve, we apply BVE only if this weight times the number of
clauses plus the number of clause literals is not increased.
</pre>
<code>optional int32 presolve_bve_clause_weight = 55 [default = 3];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPresolveBveClauseWeight()">getPresolveBveClauseWeight</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The presolveBveClauseWeight.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPresolveProbingDeterministicTimeLimit()">
<h3>hasPresolveProbingDeterministicTimeLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPresolveProbingDeterministicTimeLimit</span>()</div>
<div class="block"><pre>
The maximum "deterministic" time limit to spend in probing. A value of
zero will disable the probing.
</pre>
<code>optional double presolve_probing_deterministic_time_limit = 57 [default = 30];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPresolveProbingDeterministicTimeLimit()">hasPresolveProbingDeterministicTimeLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the presolveProbingDeterministicTimeLimit field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPresolveProbingDeterministicTimeLimit()">
<h3>getPresolveProbingDeterministicTimeLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getPresolveProbingDeterministicTimeLimit</span>()</div>
<div class="block"><pre>
The maximum "deterministic" time limit to spend in probing. A value of
zero will disable the probing.
</pre>
<code>optional double presolve_probing_deterministic_time_limit = 57 [default = 30];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPresolveProbingDeterministicTimeLimit()">getPresolveProbingDeterministicTimeLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The presolveProbingDeterministicTimeLimit.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPresolveBlockedClause()">
<h3>hasPresolveBlockedClause</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPresolveBlockedClause</span>()</div>
<div class="block"><pre>
Whether we use an heuristic to detect some basic case of blocked clause
in the SAT presolve.
</pre>
<code>optional bool presolve_blocked_clause = 88 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPresolveBlockedClause()">hasPresolveBlockedClause</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the presolveBlockedClause field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPresolveBlockedClause()">
<h3>getPresolveBlockedClause</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getPresolveBlockedClause</span>()</div>
<div class="block"><pre>
Whether we use an heuristic to detect some basic case of blocked clause
in the SAT presolve.
</pre>
<code>optional bool presolve_blocked_clause = 88 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPresolveBlockedClause()">getPresolveBlockedClause</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The presolveBlockedClause.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPresolveUseBva()">
<h3>hasPresolveUseBva</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPresolveUseBva</span>()</div>
<div class="block"><pre>
Whether or not we use Bounded Variable Addition (BVA) in the presolve.
</pre>
<code>optional bool presolve_use_bva = 72 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPresolveUseBva()">hasPresolveUseBva</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the presolveUseBva field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPresolveUseBva()">
<h3>getPresolveUseBva</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getPresolveUseBva</span>()</div>
<div class="block"><pre>
Whether or not we use Bounded Variable Addition (BVA) in the presolve.
</pre>
<code>optional bool presolve_use_bva = 72 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPresolveUseBva()">getPresolveUseBva</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The presolveUseBva.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPresolveBvaThreshold()">
<h3>hasPresolveBvaThreshold</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPresolveBvaThreshold</span>()</div>
<div class="block"><pre>
Apply Bounded Variable Addition (BVA) if the number of clauses is reduced
by stricly more than this threshold. The algorithm described in the paper
uses 0, but quick experiments showed that 1 is a good value. It may not be
worth it to add a new variable just to remove one clause.
</pre>
<code>optional int32 presolve_bva_threshold = 73 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPresolveBvaThreshold()">hasPresolveBvaThreshold</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the presolveBvaThreshold field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPresolveBvaThreshold()">
<h3>getPresolveBvaThreshold</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getPresolveBvaThreshold</span>()</div>
<div class="block"><pre>
Apply Bounded Variable Addition (BVA) if the number of clauses is reduced
by stricly more than this threshold. The algorithm described in the paper
uses 0, but quick experiments showed that 1 is a good value. It may not be
worth it to add a new variable just to remove one clause.
</pre>
<code>optional int32 presolve_bva_threshold = 73 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPresolveBvaThreshold()">getPresolveBvaThreshold</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The presolveBvaThreshold.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxPresolveIterations()">
<h3>hasMaxPresolveIterations</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxPresolveIterations</span>()</div>
<div class="block"><pre>
In case of large reduction in a presolve iteration, we perform multiple
presolve iterations. This parameter controls the maximum number of such
presolve iterations.
</pre>
<code>optional int32 max_presolve_iterations = 138 [default = 3];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxPresolveIterations()">hasMaxPresolveIterations</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxPresolveIterations field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxPresolveIterations()">
<h3>getMaxPresolveIterations</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMaxPresolveIterations</span>()</div>
<div class="block"><pre>
In case of large reduction in a presolve iteration, we perform multiple
presolve iterations. This parameter controls the maximum number of such
presolve iterations.
</pre>
<code>optional int32 max_presolve_iterations = 138 [default = 3];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxPresolveIterations()">getMaxPresolveIterations</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxPresolveIterations.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasCpModelPresolve()">
<h3>hasCpModelPresolve</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasCpModelPresolve</span>()</div>
<div class="block"><pre>
Whether we presolve the cp_model before solving it.
</pre>
<code>optional bool cp_model_presolve = 86 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasCpModelPresolve()">hasCpModelPresolve</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the cpModelPresolve field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCpModelPresolve()">
<h3>getCpModelPresolve</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getCpModelPresolve</span>()</div>
<div class="block"><pre>
Whether we presolve the cp_model before solving it.
</pre>
<code>optional bool cp_model_presolve = 86 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getCpModelPresolve()">getCpModelPresolve</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The cpModelPresolve.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasCpModelProbingLevel()">
<h3>hasCpModelProbingLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasCpModelProbingLevel</span>()</div>
<div class="block"><pre>
How much effort do we spend on probing. 0 disables it completely.
</pre>
<code>optional int32 cp_model_probing_level = 110 [default = 2];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasCpModelProbingLevel()">hasCpModelProbingLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the cpModelProbingLevel field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCpModelProbingLevel()">
<h3>getCpModelProbingLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getCpModelProbingLevel</span>()</div>
<div class="block"><pre>
How much effort do we spend on probing. 0 disables it completely.
</pre>
<code>optional int32 cp_model_probing_level = 110 [default = 2];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getCpModelProbingLevel()">getCpModelProbingLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The cpModelProbingLevel.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasCpModelUseSatPresolve()">
<h3>hasCpModelUseSatPresolve</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasCpModelUseSatPresolve</span>()</div>
<div class="block"><pre>
Whether we also use the sat presolve when cp_model_presolve is true.
</pre>
<code>optional bool cp_model_use_sat_presolve = 93 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasCpModelUseSatPresolve()">hasCpModelUseSatPresolve</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the cpModelUseSatPresolve field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCpModelUseSatPresolve()">
<h3>getCpModelUseSatPresolve</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getCpModelUseSatPresolve</span>()</div>
<div class="block"><pre>
Whether we also use the sat presolve when cp_model_presolve is true.
</pre>
<code>optional bool cp_model_use_sat_presolve = 93 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getCpModelUseSatPresolve()">getCpModelUseSatPresolve</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The cpModelUseSatPresolve.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseSatInprocessing()">
<h3>hasUseSatInprocessing</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseSatInprocessing</span>()</div>
<div class="block"><code>optional bool use_sat_inprocessing = 163 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseSatInprocessing()">hasUseSatInprocessing</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useSatInprocessing field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseSatInprocessing()">
<h3>getUseSatInprocessing</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseSatInprocessing</span>()</div>
<div class="block"><code>optional bool use_sat_inprocessing = 163 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseSatInprocessing()">getUseSatInprocessing</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useSatInprocessing.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasExpandAlldiffConstraints()">
<h3>hasExpandAlldiffConstraints</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasExpandAlldiffConstraints</span>()</div>
<div class="block"><pre>
If true, expand all_different constraints that are not permutations.
Permutations (#Variables = #Values) are always expanded.
</pre>
<code>optional bool expand_alldiff_constraints = 170 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasExpandAlldiffConstraints()">hasExpandAlldiffConstraints</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the expandAlldiffConstraints field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getExpandAlldiffConstraints()">
<h3>getExpandAlldiffConstraints</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getExpandAlldiffConstraints</span>()</div>
<div class="block"><pre>
If true, expand all_different constraints that are not permutations.
Permutations (#Variables = #Values) are always expanded.
</pre>
<code>optional bool expand_alldiff_constraints = 170 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getExpandAlldiffConstraints()">getExpandAlldiffConstraints</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The expandAlldiffConstraints.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasDisableConstraintExpansion()">
<h3>hasDisableConstraintExpansion</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasDisableConstraintExpansion</span>()</div>
<div class="block"><pre>
If true, it disable all constraint expansion.
This should only be used to test the presolve of expanded constraints.
</pre>
<code>optional bool disable_constraint_expansion = 181 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasDisableConstraintExpansion()">hasDisableConstraintExpansion</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the disableConstraintExpansion field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDisableConstraintExpansion()">
<h3>getDisableConstraintExpansion</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getDisableConstraintExpansion</span>()</div>
<div class="block"><pre>
If true, it disable all constraint expansion.
This should only be used to test the presolve of expanded constraints.
</pre>
<code>optional bool disable_constraint_expansion = 181 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getDisableConstraintExpansion()">getDisableConstraintExpansion</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The disableConstraintExpansion.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMergeNoOverlapWorkLimit()">
<h3>hasMergeNoOverlapWorkLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMergeNoOverlapWorkLimit</span>()</div>
<div class="block"><pre>
During presolve, we use a maximum clique heuristic to merge together
no-overlap constraints or at most one constraints. This code can be slow,
so we have a limit in place on the number of explored nodes in the
underlying graph. The internal limit is an int64, but we use double here to
simplify manual input.
</pre>
<code>optional double merge_no_overlap_work_limit = 145 [default = 1000000000000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMergeNoOverlapWorkLimit()">hasMergeNoOverlapWorkLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the mergeNoOverlapWorkLimit field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMergeNoOverlapWorkLimit()">
<h3>getMergeNoOverlapWorkLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMergeNoOverlapWorkLimit</span>()</div>
<div class="block"><pre>
During presolve, we use a maximum clique heuristic to merge together
no-overlap constraints or at most one constraints. This code can be slow,
so we have a limit in place on the number of explored nodes in the
underlying graph. The internal limit is an int64, but we use double here to
simplify manual input.
</pre>
<code>optional double merge_no_overlap_work_limit = 145 [default = 1000000000000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMergeNoOverlapWorkLimit()">getMergeNoOverlapWorkLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The mergeNoOverlapWorkLimit.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMergeAtMostOneWorkLimit()">
<h3>hasMergeAtMostOneWorkLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMergeAtMostOneWorkLimit</span>()</div>
<div class="block"><code>optional double merge_at_most_one_work_limit = 146 [default = 100000000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMergeAtMostOneWorkLimit()">hasMergeAtMostOneWorkLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the mergeAtMostOneWorkLimit field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMergeAtMostOneWorkLimit()">
<h3>getMergeAtMostOneWorkLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMergeAtMostOneWorkLimit</span>()</div>
<div class="block"><code>optional double merge_at_most_one_work_limit = 146 [default = 100000000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMergeAtMostOneWorkLimit()">getMergeAtMostOneWorkLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The mergeAtMostOneWorkLimit.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPresolveSubstitutionLevel()">
<h3>hasPresolveSubstitutionLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPresolveSubstitutionLevel</span>()</div>
<div class="block"><pre>
How much substitution (also called free variable aggregation in MIP
litterature) should we perform at presolve. This currently only concerns
variable appearing only in linear constraints. For now the value 0 turns it
off and any positive value performs substitution.
</pre>
<code>optional int32 presolve_substitution_level = 147 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPresolveSubstitutionLevel()">hasPresolveSubstitutionLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the presolveSubstitutionLevel field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPresolveSubstitutionLevel()">
<h3>getPresolveSubstitutionLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getPresolveSubstitutionLevel</span>()</div>
<div class="block"><pre>
How much substitution (also called free variable aggregation in MIP
litterature) should we perform at presolve. This currently only concerns
variable appearing only in linear constraints. For now the value 0 turns it
off and any positive value performs substitution.
</pre>
<code>optional int32 presolve_substitution_level = 147 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPresolveSubstitutionLevel()">getPresolveSubstitutionLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The presolveSubstitutionLevel.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPresolveExtractIntegerEnforcement()">
<h3>hasPresolveExtractIntegerEnforcement</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPresolveExtractIntegerEnforcement</span>()</div>
<div class="block"><pre>
If true, we will extract from linear constraints, enforcement literals of
the form "integer variable at bound =&gt; simplified constraint". This should
always be beneficial except that we don't always handle them as efficiently
as we could for now. This causes problem on manna81.mps (LP relaxation not
as tight it seems) and on neos-3354841-apure.mps.gz (too many literals
created this way).
</pre>
<code>optional bool presolve_extract_integer_enforcement = 174 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPresolveExtractIntegerEnforcement()">hasPresolveExtractIntegerEnforcement</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the presolveExtractIntegerEnforcement field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPresolveExtractIntegerEnforcement()">
<h3>getPresolveExtractIntegerEnforcement</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getPresolveExtractIntegerEnforcement</span>()</div>
<div class="block"><pre>
If true, we will extract from linear constraints, enforcement literals of
the form "integer variable at bound =&gt; simplified constraint". This should
always be beneficial except that we don't always handle them as efficiently
as we could for now. This causes problem on manna81.mps (LP relaxation not
as tight it seems) and on neos-3354841-apure.mps.gz (too many literals
created this way).
</pre>
<code>optional bool presolve_extract_integer_enforcement = 174 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPresolveExtractIntegerEnforcement()">getPresolveExtractIntegerEnforcement</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The presolveExtractIntegerEnforcement.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPresolveInclusionWorkLimit()">
<h3>hasPresolveInclusionWorkLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPresolveInclusionWorkLimit</span>()</div>
<div class="block"><pre>
A few presolve operations involve detecting constraints included in other
constraint. Since there can be a quadratic number of such pairs, and
processing them usually involve scanning them, the complexity of these
operations can be big. This enforce a local deterministic limit on the
number of entries scanned. Default is 1e8.
A value of zero will disable these presolve rules completely.
</pre>
<code>optional int64 presolve_inclusion_work_limit = 201 [default = 100000000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPresolveInclusionWorkLimit()">hasPresolveInclusionWorkLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the presolveInclusionWorkLimit field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPresolveInclusionWorkLimit()">
<h3>getPresolveInclusionWorkLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name">getPresolveInclusionWorkLimit</span>()</div>
<div class="block"><pre>
A few presolve operations involve detecting constraints included in other
constraint. Since there can be a quadratic number of such pairs, and
processing them usually involve scanning them, the complexity of these
operations can be big. This enforce a local deterministic limit on the
number of entries scanned. Default is 1e8.
A value of zero will disable these presolve rules completely.
</pre>
<code>optional int64 presolve_inclusion_work_limit = 201 [default = 100000000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPresolveInclusionWorkLimit()">getPresolveInclusionWorkLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The presolveInclusionWorkLimit.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasIgnoreNames()">
<h3>hasIgnoreNames</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasIgnoreNames</span>()</div>
<div class="block"><pre>
If true, we don't keep names in our internal copy of the user given model.
</pre>
<code>optional bool ignore_names = 202 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasIgnoreNames()">hasIgnoreNames</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the ignoreNames field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getIgnoreNames()">
<h3>getIgnoreNames</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getIgnoreNames</span>()</div>
<div class="block"><pre>
If true, we don't keep names in our internal copy of the user given model.
</pre>
<code>optional bool ignore_names = 202 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getIgnoreNames()">getIgnoreNames</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The ignoreNames.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasNumWorkers()">
<h3>hasNumWorkers</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasNumWorkers</span>()</div>
<div class="block"><pre>
Specify the number of parallel workers (i.e. threads) to use during search.
This should usually be lower than your number of available cpus +
hyperthread in your machine.
A value of 0 means the solver will try to use all cores on the machine.
A number of 1 means no parallelism.
Note that 'num_workers' is the preferred name, but if it is set to zero,
we will still read the deprecated 'num_search_worker'.
As of 2020-04-10, if you're using SAT via MPSolver (to solve integer
programs) this field is overridden with a value of 8, if the field is not
set *explicitly*. Thus, always set this field explicitly or via
MPSolver::SetNumThreads().
</pre>
<code>optional int32 num_workers = 206 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasNumWorkers()">hasNumWorkers</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the numWorkers field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getNumWorkers()">
<h3>getNumWorkers</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getNumWorkers</span>()</div>
<div class="block"><pre>
Specify the number of parallel workers (i.e. threads) to use during search.
This should usually be lower than your number of available cpus +
hyperthread in your machine.
A value of 0 means the solver will try to use all cores on the machine.
A number of 1 means no parallelism.
Note that 'num_workers' is the preferred name, but if it is set to zero,
we will still read the deprecated 'num_search_worker'.
As of 2020-04-10, if you're using SAT via MPSolver (to solve integer
programs) this field is overridden with a value of 8, if the field is not
set *explicitly*. Thus, always set this field explicitly or via
MPSolver::SetNumThreads().
</pre>
<code>optional int32 num_workers = 206 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getNumWorkers()">getNumWorkers</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The numWorkers.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasNumSearchWorkers()">
<h3>hasNumSearchWorkers</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasNumSearchWorkers</span>()</div>
<div class="block"><code>optional int32 num_search_workers = 100 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasNumSearchWorkers()">hasNumSearchWorkers</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the numSearchWorkers field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getNumSearchWorkers()">
<h3>getNumSearchWorkers</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getNumSearchWorkers</span>()</div>
<div class="block"><code>optional int32 num_search_workers = 100 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getNumSearchWorkers()">getNumSearchWorkers</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The numSearchWorkers.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMinNumLnsWorkers()">
<h3>hasMinNumLnsWorkers</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMinNumLnsWorkers</span>()</div>
<div class="block"><pre>
If there is an objective and we are not in interleave mode, we will reserve
at least this number of worker for LNS thread.
TODO(user): Also define like for subsolvers the list of "active" type of
neighborhood used.
</pre>
<code>optional int32 min_num_lns_workers = 211 [default = 2];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMinNumLnsWorkers()">hasMinNumLnsWorkers</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the minNumLnsWorkers field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMinNumLnsWorkers()">
<h3>getMinNumLnsWorkers</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMinNumLnsWorkers</span>()</div>
<div class="block"><pre>
If there is an objective and we are not in interleave mode, we will reserve
at least this number of worker for LNS thread.
TODO(user): Also define like for subsolvers the list of "active" type of
neighborhood used.
</pre>
<code>optional int32 min_num_lns_workers = 211 [default = 2];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMinNumLnsWorkers()">getMinNumLnsWorkers</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The minNumLnsWorkers.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSubsolversList()">
<h3>getSubsolversList</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">com.google.protobuf.ProtocolStringList</span>&nbsp;<span class="element-name">getSubsolversList</span>()</div>
<div class="block"><pre>
In multi-thread, the solver can be mainly seen as a portfolio of solvers
with different parameters. This field indicates the names of the parameters
that are used in multithread.
See cp_model_search.cc to see a list of the names and the default value (if
left empty) that looks like:
- default_lp (linearization_level:1)
- fixed (only if fixed search specified or scheduling)
- less_encoding (only if no objective)
- no_lp (linearization_level:0)
- max_lp (linearization_level:2)
- pseudo_costs (only if objective, change search heuristic)
- reduced_costs (only if objective, change search heuristic)
- quick_restart (kind of probing)
- quick_restart_no_lp (kind of probing with linearization_level:0)
- lb_tree_search (to improve lower bound, MIP like tree search)
- probing (continuous probing and shaving)
Also, note that some set of parameters will be ignored if they do not make
sense. For instance if there is no objective, pseudo_cost or reduced_cost
search will be ignored. Core based search will only work if the objective
has many terms. If there is no fixed strategy fixed will be ignored. And so
on.
The order is important, as only the first usable "num_workers -
min_num_lns_workers" subsolvers will be scheduled. You can see in the log
which one are selected for a given run. All the others will be LNS if there
is an objective, or randomized SAT search for pure satisfiability problems.
</pre>
<code>repeated string subsolvers = 207;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSubsolversList()">getSubsolversList</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>A list containing the subsolvers.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSubsolversCount()">
<h3>getSubsolversCount</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getSubsolversCount</span>()</div>
<div class="block"><pre>
In multi-thread, the solver can be mainly seen as a portfolio of solvers
with different parameters. This field indicates the names of the parameters
that are used in multithread.
See cp_model_search.cc to see a list of the names and the default value (if
left empty) that looks like:
- default_lp (linearization_level:1)
- fixed (only if fixed search specified or scheduling)
- less_encoding (only if no objective)
- no_lp (linearization_level:0)
- max_lp (linearization_level:2)
- pseudo_costs (only if objective, change search heuristic)
- reduced_costs (only if objective, change search heuristic)
- quick_restart (kind of probing)
- quick_restart_no_lp (kind of probing with linearization_level:0)
- lb_tree_search (to improve lower bound, MIP like tree search)
- probing (continuous probing and shaving)
Also, note that some set of parameters will be ignored if they do not make
sense. For instance if there is no objective, pseudo_cost or reduced_cost
search will be ignored. Core based search will only work if the objective
has many terms. If there is no fixed strategy fixed will be ignored. And so
on.
The order is important, as only the first usable "num_workers -
min_num_lns_workers" subsolvers will be scheduled. You can see in the log
which one are selected for a given run. All the others will be LNS if there
is an objective, or randomized SAT search for pure satisfiability problems.
</pre>
<code>repeated string subsolvers = 207;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSubsolversCount()">getSubsolversCount</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The count of subsolvers.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSubsolvers(int)">
<h3>getSubsolvers</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getSubsolvers</span><wbr><span class="parameters">(int&nbsp;index)</span></div>
<div class="block"><pre>
In multi-thread, the solver can be mainly seen as a portfolio of solvers
with different parameters. This field indicates the names of the parameters
that are used in multithread.
See cp_model_search.cc to see a list of the names and the default value (if
left empty) that looks like:
- default_lp (linearization_level:1)
- fixed (only if fixed search specified or scheduling)
- less_encoding (only if no objective)
- no_lp (linearization_level:0)
- max_lp (linearization_level:2)
- pseudo_costs (only if objective, change search heuristic)
- reduced_costs (only if objective, change search heuristic)
- quick_restart (kind of probing)
- quick_restart_no_lp (kind of probing with linearization_level:0)
- lb_tree_search (to improve lower bound, MIP like tree search)
- probing (continuous probing and shaving)
Also, note that some set of parameters will be ignored if they do not make
sense. For instance if there is no objective, pseudo_cost or reduced_cost
search will be ignored. Core based search will only work if the objective
has many terms. If there is no fixed strategy fixed will be ignored. And so
on.
The order is important, as only the first usable "num_workers -
min_num_lns_workers" subsolvers will be scheduled. You can see in the log
which one are selected for a given run. All the others will be LNS if there
is an objective, or randomized SAT search for pure satisfiability problems.
</pre>
<code>repeated string subsolvers = 207;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSubsolvers(int)">getSubsolvers</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Parameters:</dt>
<dd><code>index</code> - The index of the element to return.</dd>
<dt>Returns:</dt>
<dd>The subsolvers at the given index.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSubsolversBytes(int)">
<h3>getSubsolversBytes</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">com.google.protobuf.ByteString</span>&nbsp;<span class="element-name">getSubsolversBytes</span><wbr><span class="parameters">(int&nbsp;index)</span></div>
<div class="block"><pre>
In multi-thread, the solver can be mainly seen as a portfolio of solvers
with different parameters. This field indicates the names of the parameters
that are used in multithread.
See cp_model_search.cc to see a list of the names and the default value (if
left empty) that looks like:
- default_lp (linearization_level:1)
- fixed (only if fixed search specified or scheduling)
- less_encoding (only if no objective)
- no_lp (linearization_level:0)
- max_lp (linearization_level:2)
- pseudo_costs (only if objective, change search heuristic)
- reduced_costs (only if objective, change search heuristic)
- quick_restart (kind of probing)
- quick_restart_no_lp (kind of probing with linearization_level:0)
- lb_tree_search (to improve lower bound, MIP like tree search)
- probing (continuous probing and shaving)
Also, note that some set of parameters will be ignored if they do not make
sense. For instance if there is no objective, pseudo_cost or reduced_cost
search will be ignored. Core based search will only work if the objective
has many terms. If there is no fixed strategy fixed will be ignored. And so
on.
The order is important, as only the first usable "num_workers -
min_num_lns_workers" subsolvers will be scheduled. You can see in the log
which one are selected for a given run. All the others will be LNS if there
is an objective, or randomized SAT search for pure satisfiability problems.
</pre>
<code>repeated string subsolvers = 207;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSubsolversBytes(int)">getSubsolversBytes</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Parameters:</dt>
<dd><code>index</code> - The index of the value to return.</dd>
<dt>Returns:</dt>
<dd>The bytes of the subsolvers at the given index.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getIgnoreSubsolversList()">
<h3>getIgnoreSubsolversList</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">com.google.protobuf.ProtocolStringList</span>&nbsp;<span class="element-name">getIgnoreSubsolversList</span>()</div>
<div class="block"><pre>
Rather than fully specifying subsolvers, it is often convenient to just
remove the ones that are not useful on a given problem.
</pre>
<code>repeated string ignore_subsolvers = 209;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getIgnoreSubsolversList()">getIgnoreSubsolversList</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>A list containing the ignoreSubsolvers.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getIgnoreSubsolversCount()">
<h3>getIgnoreSubsolversCount</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getIgnoreSubsolversCount</span>()</div>
<div class="block"><pre>
Rather than fully specifying subsolvers, it is often convenient to just
remove the ones that are not useful on a given problem.
</pre>
<code>repeated string ignore_subsolvers = 209;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getIgnoreSubsolversCount()">getIgnoreSubsolversCount</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The count of ignoreSubsolvers.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getIgnoreSubsolvers(int)">
<h3>getIgnoreSubsolvers</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getIgnoreSubsolvers</span><wbr><span class="parameters">(int&nbsp;index)</span></div>
<div class="block"><pre>
Rather than fully specifying subsolvers, it is often convenient to just
remove the ones that are not useful on a given problem.
</pre>
<code>repeated string ignore_subsolvers = 209;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getIgnoreSubsolvers(int)">getIgnoreSubsolvers</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Parameters:</dt>
<dd><code>index</code> - The index of the element to return.</dd>
<dt>Returns:</dt>
<dd>The ignoreSubsolvers at the given index.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getIgnoreSubsolversBytes(int)">
<h3>getIgnoreSubsolversBytes</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">com.google.protobuf.ByteString</span>&nbsp;<span class="element-name">getIgnoreSubsolversBytes</span><wbr><span class="parameters">(int&nbsp;index)</span></div>
<div class="block"><pre>
Rather than fully specifying subsolvers, it is often convenient to just
remove the ones that are not useful on a given problem.
</pre>
<code>repeated string ignore_subsolvers = 209;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getIgnoreSubsolversBytes(int)">getIgnoreSubsolversBytes</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Parameters:</dt>
<dd><code>index</code> - The index of the value to return.</dd>
<dt>Returns:</dt>
<dd>The bytes of the ignoreSubsolvers at the given index.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSubsolverParamsList()">
<h3>getSubsolverParamsList</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a>&gt;</span>&nbsp;<span class="element-name">getSubsolverParamsList</span>()</div>
<div class="block"><pre>
It is possible to specify additional subsolver configuration. These can be
referred by their params.name() in the fields above. Note that only the
specified field will "overwrite" the ones of the base parameter. It is also
possible to overwrite the default names above.
</pre>
<code>repeated .operations_research.sat.SatParameters subsolver_params = 210;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSubsolverParamsList()">getSubsolverParamsList</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSubsolverParamsOrBuilderList()">
<h3>getSubsolverParamsOrBuilderList</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;? extends <a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a>&gt;</span>&nbsp;<span class="element-name">getSubsolverParamsOrBuilderList</span>()</div>
<div class="block"><pre>
It is possible to specify additional subsolver configuration. These can be
referred by their params.name() in the fields above. Note that only the
specified field will "overwrite" the ones of the base parameter. It is also
possible to overwrite the default names above.
</pre>
<code>repeated .operations_research.sat.SatParameters subsolver_params = 210;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSubsolverParamsOrBuilderList()">getSubsolverParamsOrBuilderList</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSubsolverParamsCount()">
<h3>getSubsolverParamsCount</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getSubsolverParamsCount</span>()</div>
<div class="block"><pre>
It is possible to specify additional subsolver configuration. These can be
referred by their params.name() in the fields above. Note that only the
specified field will "overwrite" the ones of the base parameter. It is also
possible to overwrite the default names above.
</pre>
<code>repeated .operations_research.sat.SatParameters subsolver_params = 210;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSubsolverParamsCount()">getSubsolverParamsCount</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSubsolverParams(int)">
<h3>getSubsolverParams</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">getSubsolverParams</span><wbr><span class="parameters">(int&nbsp;index)</span></div>
<div class="block"><pre>
It is possible to specify additional subsolver configuration. These can be
referred by their params.name() in the fields above. Note that only the
specified field will "overwrite" the ones of the base parameter. It is also
possible to overwrite the default names above.
</pre>
<code>repeated .operations_research.sat.SatParameters subsolver_params = 210;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSubsolverParams(int)">getSubsolverParams</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSubsolverParamsOrBuilder(int)">
<h3>getSubsolverParamsOrBuilder</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></span>&nbsp;<span class="element-name">getSubsolverParamsOrBuilder</span><wbr><span class="parameters">(int&nbsp;index)</span></div>
<div class="block"><pre>
It is possible to specify additional subsolver configuration. These can be
referred by their params.name() in the fields above. Note that only the
specified field will "overwrite" the ones of the base parameter. It is also
possible to overwrite the default names above.
</pre>
<code>repeated .operations_research.sat.SatParameters subsolver_params = 210;</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSubsolverParamsOrBuilder(int)">getSubsolverParamsOrBuilder</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasInterleaveSearch()">
<h3>hasInterleaveSearch</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasInterleaveSearch</span>()</div>
<div class="block"><pre>
Experimental. If this is true, then we interleave all our major search
strategy and distribute the work amongst num_workers.
The search is deterministic (independently of num_workers!), and we
schedule and wait for interleave_batch_size task to be completed before
synchronizing and scheduling the next batch of tasks.
</pre>
<code>optional bool interleave_search = 136 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasInterleaveSearch()">hasInterleaveSearch</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the interleaveSearch field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getInterleaveSearch()">
<h3>getInterleaveSearch</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getInterleaveSearch</span>()</div>
<div class="block"><pre>
Experimental. If this is true, then we interleave all our major search
strategy and distribute the work amongst num_workers.
The search is deterministic (independently of num_workers!), and we
schedule and wait for interleave_batch_size task to be completed before
synchronizing and scheduling the next batch of tasks.
</pre>
<code>optional bool interleave_search = 136 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getInterleaveSearch()">getInterleaveSearch</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The interleaveSearch.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasInterleaveBatchSize()">
<h3>hasInterleaveBatchSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasInterleaveBatchSize</span>()</div>
<div class="block"><code>optional int32 interleave_batch_size = 134 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasInterleaveBatchSize()">hasInterleaveBatchSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the interleaveBatchSize field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getInterleaveBatchSize()">
<h3>getInterleaveBatchSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getInterleaveBatchSize</span>()</div>
<div class="block"><code>optional int32 interleave_batch_size = 134 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getInterleaveBatchSize()">getInterleaveBatchSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The interleaveBatchSize.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasReduceMemoryUsageInInterleaveMode()">
<h3>hasReduceMemoryUsageInInterleaveMode</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasReduceMemoryUsageInInterleaveMode</span>()</div>
<div class="block"><pre>
Temporary parameter until the memory usage is more optimized. Note that
this completely ignore any of the subsolvers parameters above and does its
own things.
</pre>
<code>optional bool reduce_memory_usage_in_interleave_mode = 141 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasReduceMemoryUsageInInterleaveMode()">hasReduceMemoryUsageInInterleaveMode</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the reduceMemoryUsageInInterleaveMode field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getReduceMemoryUsageInInterleaveMode()">
<h3>getReduceMemoryUsageInInterleaveMode</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getReduceMemoryUsageInInterleaveMode</span>()</div>
<div class="block"><pre>
Temporary parameter until the memory usage is more optimized. Note that
this completely ignore any of the subsolvers parameters above and does its
own things.
</pre>
<code>optional bool reduce_memory_usage_in_interleave_mode = 141 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getReduceMemoryUsageInInterleaveMode()">getReduceMemoryUsageInInterleaveMode</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The reduceMemoryUsageInInterleaveMode.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasShareObjectiveBounds()">
<h3>hasShareObjectiveBounds</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasShareObjectiveBounds</span>()</div>
<div class="block"><pre>
Allows objective sharing between workers.
</pre>
<code>optional bool share_objective_bounds = 113 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasShareObjectiveBounds()">hasShareObjectiveBounds</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the shareObjectiveBounds field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getShareObjectiveBounds()">
<h3>getShareObjectiveBounds</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getShareObjectiveBounds</span>()</div>
<div class="block"><pre>
Allows objective sharing between workers.
</pre>
<code>optional bool share_objective_bounds = 113 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getShareObjectiveBounds()">getShareObjectiveBounds</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The shareObjectiveBounds.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasShareLevelZeroBounds()">
<h3>hasShareLevelZeroBounds</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasShareLevelZeroBounds</span>()</div>
<div class="block"><pre>
Allows sharing of the bounds of modified variables at level 0.
</pre>
<code>optional bool share_level_zero_bounds = 114 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasShareLevelZeroBounds()">hasShareLevelZeroBounds</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the shareLevelZeroBounds field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getShareLevelZeroBounds()">
<h3>getShareLevelZeroBounds</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getShareLevelZeroBounds</span>()</div>
<div class="block"><pre>
Allows sharing of the bounds of modified variables at level 0.
</pre>
<code>optional bool share_level_zero_bounds = 114 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getShareLevelZeroBounds()">getShareLevelZeroBounds</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The shareLevelZeroBounds.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasShareBinaryClauses()">
<h3>hasShareBinaryClauses</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasShareBinaryClauses</span>()</div>
<div class="block"><pre>
Allows sharing of new learned binary clause between workers.
</pre>
<code>optional bool share_binary_clauses = 203 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasShareBinaryClauses()">hasShareBinaryClauses</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the shareBinaryClauses field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getShareBinaryClauses()">
<h3>getShareBinaryClauses</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getShareBinaryClauses</span>()</div>
<div class="block"><pre>
Allows sharing of new learned binary clause between workers.
</pre>
<code>optional bool share_binary_clauses = 203 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getShareBinaryClauses()">getShareBinaryClauses</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The shareBinaryClauses.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasDebugPostsolveWithFullSolver()">
<h3>hasDebugPostsolveWithFullSolver</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasDebugPostsolveWithFullSolver</span>()</div>
<div class="block"><pre>
We have two different postsolve code. The default one should be better and
it allows for a more powerful presolve, but it can be useful to postsolve
using the full solver instead.
</pre>
<code>optional bool debug_postsolve_with_full_solver = 162 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasDebugPostsolveWithFullSolver()">hasDebugPostsolveWithFullSolver</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the debugPostsolveWithFullSolver field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDebugPostsolveWithFullSolver()">
<h3>getDebugPostsolveWithFullSolver</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getDebugPostsolveWithFullSolver</span>()</div>
<div class="block"><pre>
We have two different postsolve code. The default one should be better and
it allows for a more powerful presolve, but it can be useful to postsolve
using the full solver instead.
</pre>
<code>optional bool debug_postsolve_with_full_solver = 162 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getDebugPostsolveWithFullSolver()">getDebugPostsolveWithFullSolver</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The debugPostsolveWithFullSolver.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasDebugMaxNumPresolveOperations()">
<h3>hasDebugMaxNumPresolveOperations</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasDebugMaxNumPresolveOperations</span>()</div>
<div class="block"><pre>
If positive, try to stop just after that many presolve rules have been
applied. This is mainly useful for debugging presolve.
</pre>
<code>optional int32 debug_max_num_presolve_operations = 151 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasDebugMaxNumPresolveOperations()">hasDebugMaxNumPresolveOperations</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the debugMaxNumPresolveOperations field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDebugMaxNumPresolveOperations()">
<h3>getDebugMaxNumPresolveOperations</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getDebugMaxNumPresolveOperations</span>()</div>
<div class="block"><pre>
If positive, try to stop just after that many presolve rules have been
applied. This is mainly useful for debugging presolve.
</pre>
<code>optional int32 debug_max_num_presolve_operations = 151 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getDebugMaxNumPresolveOperations()">getDebugMaxNumPresolveOperations</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The debugMaxNumPresolveOperations.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasDebugCrashOnBadHint()">
<h3>hasDebugCrashOnBadHint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasDebugCrashOnBadHint</span>()</div>
<div class="block"><pre>
Crash if we do not manage to complete the hint into a full solution.
</pre>
<code>optional bool debug_crash_on_bad_hint = 195 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasDebugCrashOnBadHint()">hasDebugCrashOnBadHint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the debugCrashOnBadHint field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDebugCrashOnBadHint()">
<h3>getDebugCrashOnBadHint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getDebugCrashOnBadHint</span>()</div>
<div class="block"><pre>
Crash if we do not manage to complete the hint into a full solution.
</pre>
<code>optional bool debug_crash_on_bad_hint = 195 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getDebugCrashOnBadHint()">getDebugCrashOnBadHint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The debugCrashOnBadHint.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseOptimizationHints()">
<h3>hasUseOptimizationHints</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseOptimizationHints</span>()</div>
<div class="block"><pre>
For an optimization problem, whether we follow some hints in order to find
a better first solution. For a variable with hint, the solver will always
try to follow the hint. It will revert to the variable_branching default
otherwise.
</pre>
<code>optional bool use_optimization_hints = 35 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseOptimizationHints()">hasUseOptimizationHints</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useOptimizationHints field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseOptimizationHints()">
<h3>getUseOptimizationHints</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseOptimizationHints</span>()</div>
<div class="block"><pre>
For an optimization problem, whether we follow some hints in order to find
a better first solution. For a variable with hint, the solver will always
try to follow the hint. It will revert to the variable_branching default
otherwise.
</pre>
<code>optional bool use_optimization_hints = 35 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseOptimizationHints()">getUseOptimizationHints</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useOptimizationHints.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMinimizeCore()">
<h3>hasMinimizeCore</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMinimizeCore</span>()</div>
<div class="block"><pre>
Whether we use a simple heuristic to try to minimize an UNSAT core.
</pre>
<code>optional bool minimize_core = 50 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMinimizeCore()">hasMinimizeCore</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the minimizeCore field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMinimizeCore()">
<h3>getMinimizeCore</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getMinimizeCore</span>()</div>
<div class="block"><pre>
Whether we use a simple heuristic to try to minimize an UNSAT core.
</pre>
<code>optional bool minimize_core = 50 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMinimizeCore()">getMinimizeCore</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The minimizeCore.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasFindMultipleCores()">
<h3>hasFindMultipleCores</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasFindMultipleCores</span>()</div>
<div class="block"><pre>
Whether we try to find more independent cores for a given set of
assumptions in the core based max-SAT algorithms.
</pre>
<code>optional bool find_multiple_cores = 84 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasFindMultipleCores()">hasFindMultipleCores</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the findMultipleCores field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getFindMultipleCores()">
<h3>getFindMultipleCores</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getFindMultipleCores</span>()</div>
<div class="block"><pre>
Whether we try to find more independent cores for a given set of
assumptions in the core based max-SAT algorithms.
</pre>
<code>optional bool find_multiple_cores = 84 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getFindMultipleCores()">getFindMultipleCores</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The findMultipleCores.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasCoverOptimization()">
<h3>hasCoverOptimization</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasCoverOptimization</span>()</div>
<div class="block"><pre>
If true, when the max-sat algo find a core, we compute the minimal number
of literals in the core that needs to be true to have a feasible solution.
This is also called core exhaustion in more recent max-SAT papers.
</pre>
<code>optional bool cover_optimization = 89 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasCoverOptimization()">hasCoverOptimization</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the coverOptimization field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCoverOptimization()">
<h3>getCoverOptimization</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getCoverOptimization</span>()</div>
<div class="block"><pre>
If true, when the max-sat algo find a core, we compute the minimal number
of literals in the core that needs to be true to have a feasible solution.
This is also called core exhaustion in more recent max-SAT papers.
</pre>
<code>optional bool cover_optimization = 89 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getCoverOptimization()">getCoverOptimization</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The coverOptimization.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxSatAssumptionOrder()">
<h3>hasMaxSatAssumptionOrder</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxSatAssumptionOrder</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.MaxSatAssumptionOrder max_sat_assumption_order = 51 [default = DEFAULT_ASSUMPTION_ORDER];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxSatAssumptionOrder()">hasMaxSatAssumptionOrder</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxSatAssumptionOrder field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxSatAssumptionOrder()">
<h3>getMaxSatAssumptionOrder</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.MaxSatAssumptionOrder.html" title="enum in com.google.ortools.sat">SatParameters.MaxSatAssumptionOrder</a></span>&nbsp;<span class="element-name">getMaxSatAssumptionOrder</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.MaxSatAssumptionOrder max_sat_assumption_order = 51 [default = DEFAULT_ASSUMPTION_ORDER];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxSatAssumptionOrder()">getMaxSatAssumptionOrder</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxSatAssumptionOrder.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxSatReverseAssumptionOrder()">
<h3>hasMaxSatReverseAssumptionOrder</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxSatReverseAssumptionOrder</span>()</div>
<div class="block"><pre>
If true, adds the assumption in the reverse order of the one defined by
max_sat_assumption_order.
</pre>
<code>optional bool max_sat_reverse_assumption_order = 52 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxSatReverseAssumptionOrder()">hasMaxSatReverseAssumptionOrder</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxSatReverseAssumptionOrder field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxSatReverseAssumptionOrder()">
<h3>getMaxSatReverseAssumptionOrder</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getMaxSatReverseAssumptionOrder</span>()</div>
<div class="block"><pre>
If true, adds the assumption in the reverse order of the one defined by
max_sat_assumption_order.
</pre>
<code>optional bool max_sat_reverse_assumption_order = 52 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxSatReverseAssumptionOrder()">getMaxSatReverseAssumptionOrder</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxSatReverseAssumptionOrder.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxSatStratification()">
<h3>hasMaxSatStratification</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxSatStratification</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.MaxSatStratificationAlgorithm max_sat_stratification = 53 [default = STRATIFICATION_DESCENT];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxSatStratification()">hasMaxSatStratification</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxSatStratification field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxSatStratification()">
<h3>getMaxSatStratification</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.MaxSatStratificationAlgorithm.html" title="enum in com.google.ortools.sat">SatParameters.MaxSatStratificationAlgorithm</a></span>&nbsp;<span class="element-name">getMaxSatStratification</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.MaxSatStratificationAlgorithm max_sat_stratification = 53 [default = STRATIFICATION_DESCENT];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxSatStratification()">getMaxSatStratification</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxSatStratification.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUsePrecedencesInDisjunctiveConstraint()">
<h3>hasUsePrecedencesInDisjunctiveConstraint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUsePrecedencesInDisjunctiveConstraint</span>()</div>
<div class="block"><pre>
When this is true, then a disjunctive constraint will try to use the
precedence relations between time intervals to propagate their bounds
further. For instance if task A and B are both before C and task A and B
are in disjunction, then we can deduce that task C must start after
duration(A) + duration(B) instead of simply max(duration(A), duration(B)),
provided that the start time for all task was currently zero.
This always result in better propagation, but it is usually slow, so
depending on the problem, turning this off may lead to a faster solution.
</pre>
<code>optional bool use_precedences_in_disjunctive_constraint = 74 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUsePrecedencesInDisjunctiveConstraint()">hasUsePrecedencesInDisjunctiveConstraint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the usePrecedencesInDisjunctiveConstraint field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUsePrecedencesInDisjunctiveConstraint()">
<h3>getUsePrecedencesInDisjunctiveConstraint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUsePrecedencesInDisjunctiveConstraint</span>()</div>
<div class="block"><pre>
When this is true, then a disjunctive constraint will try to use the
precedence relations between time intervals to propagate their bounds
further. For instance if task A and B are both before C and task A and B
are in disjunction, then we can deduce that task C must start after
duration(A) + duration(B) instead of simply max(duration(A), duration(B)),
provided that the start time for all task was currently zero.
This always result in better propagation, but it is usually slow, so
depending on the problem, turning this off may lead to a faster solution.
</pre>
<code>optional bool use_precedences_in_disjunctive_constraint = 74 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUsePrecedencesInDisjunctiveConstraint()">getUsePrecedencesInDisjunctiveConstraint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The usePrecedencesInDisjunctiveConstraint.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseOverloadCheckerInCumulativeConstraint()">
<h3>hasUseOverloadCheckerInCumulativeConstraint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseOverloadCheckerInCumulativeConstraint</span>()</div>
<div class="block"><pre>
When this is true, the cumulative constraint is reinforced with overload
checking, i.e., an additional level of reasoning based on energy. This
additional level supplements the default level of reasoning as well as
timetable edge finding.
This always result in better propagation, but it is usually slow, so
depending on the problem, turning this off may lead to a faster solution.
</pre>
<code>optional bool use_overload_checker_in_cumulative_constraint = 78 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseOverloadCheckerInCumulativeConstraint()">hasUseOverloadCheckerInCumulativeConstraint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useOverloadCheckerInCumulativeConstraint field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseOverloadCheckerInCumulativeConstraint()">
<h3>getUseOverloadCheckerInCumulativeConstraint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseOverloadCheckerInCumulativeConstraint</span>()</div>
<div class="block"><pre>
When this is true, the cumulative constraint is reinforced with overload
checking, i.e., an additional level of reasoning based on energy. This
additional level supplements the default level of reasoning as well as
timetable edge finding.
This always result in better propagation, but it is usually slow, so
depending on the problem, turning this off may lead to a faster solution.
</pre>
<code>optional bool use_overload_checker_in_cumulative_constraint = 78 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseOverloadCheckerInCumulativeConstraint()">getUseOverloadCheckerInCumulativeConstraint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useOverloadCheckerInCumulativeConstraint.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseTimetableEdgeFindingInCumulativeConstraint()">
<h3>hasUseTimetableEdgeFindingInCumulativeConstraint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseTimetableEdgeFindingInCumulativeConstraint</span>()</div>
<div class="block"><pre>
When this is true, the cumulative constraint is reinforced with timetable
edge finding, i.e., an additional level of reasoning based on the
conjunction of energy and mandatory parts. This additional level
supplements the default level of reasoning as well as overload_checker.
This always result in better propagation, but it is usually slow, so
depending on the problem, turning this off may lead to a faster solution.
</pre>
<code>optional bool use_timetable_edge_finding_in_cumulative_constraint = 79 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseTimetableEdgeFindingInCumulativeConstraint()">hasUseTimetableEdgeFindingInCumulativeConstraint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useTimetableEdgeFindingInCumulativeConstraint field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseTimetableEdgeFindingInCumulativeConstraint()">
<h3>getUseTimetableEdgeFindingInCumulativeConstraint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseTimetableEdgeFindingInCumulativeConstraint</span>()</div>
<div class="block"><pre>
When this is true, the cumulative constraint is reinforced with timetable
edge finding, i.e., an additional level of reasoning based on the
conjunction of energy and mandatory parts. This additional level
supplements the default level of reasoning as well as overload_checker.
This always result in better propagation, but it is usually slow, so
depending on the problem, turning this off may lead to a faster solution.
</pre>
<code>optional bool use_timetable_edge_finding_in_cumulative_constraint = 79 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseTimetableEdgeFindingInCumulativeConstraint()">getUseTimetableEdgeFindingInCumulativeConstraint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useTimetableEdgeFindingInCumulativeConstraint.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseDisjunctiveConstraintInCumulativeConstraint()">
<h3>hasUseDisjunctiveConstraintInCumulativeConstraint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseDisjunctiveConstraintInCumulativeConstraint</span>()</div>
<div class="block"><pre>
When this is true, the cumulative constraint is reinforced with propagators
from the disjunctive constraint to improve the inference on a set of tasks
that are disjunctive at the root of the problem. This additional level
supplements the default level of reasoning.
Propagators of the cumulative constraint will not be used at all if all the
tasks are disjunctive at root node.
This always result in better propagation, but it is usually slow, so
depending on the problem, turning this off may lead to a faster solution.
</pre>
<code>optional bool use_disjunctive_constraint_in_cumulative_constraint = 80 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseDisjunctiveConstraintInCumulativeConstraint()">hasUseDisjunctiveConstraintInCumulativeConstraint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useDisjunctiveConstraintInCumulativeConstraint field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseDisjunctiveConstraintInCumulativeConstraint()">
<h3>getUseDisjunctiveConstraintInCumulativeConstraint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseDisjunctiveConstraintInCumulativeConstraint</span>()</div>
<div class="block"><pre>
When this is true, the cumulative constraint is reinforced with propagators
from the disjunctive constraint to improve the inference on a set of tasks
that are disjunctive at the root of the problem. This additional level
supplements the default level of reasoning.
Propagators of the cumulative constraint will not be used at all if all the
tasks are disjunctive at root node.
This always result in better propagation, but it is usually slow, so
depending on the problem, turning this off may lead to a faster solution.
</pre>
<code>optional bool use_disjunctive_constraint_in_cumulative_constraint = 80 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseDisjunctiveConstraintInCumulativeConstraint()">getUseDisjunctiveConstraintInCumulativeConstraint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useDisjunctiveConstraintInCumulativeConstraint.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseCumulativeInNoOverlap2D()">
<h3>hasUseCumulativeInNoOverlap2D</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseCumulativeInNoOverlap2D</span>()</div>
<div class="block"><pre>
When this is true, the no_overlap_2d constraint is reinforced with
propagators from the cumulative constraints. It consists of ignoring the
position of rectangles in one position and projecting the no_overlap_2d on
the other dimension to create a cumulative constraint. This is done on both
axis. This additional level supplements the default level of reasoning.
</pre>
<code>optional bool use_cumulative_in_no_overlap_2d = 200 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseCumulativeInNoOverlap2D()">hasUseCumulativeInNoOverlap2D</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useCumulativeInNoOverlap2d field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseCumulativeInNoOverlap2D()">
<h3>getUseCumulativeInNoOverlap2D</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseCumulativeInNoOverlap2D</span>()</div>
<div class="block"><pre>
When this is true, the no_overlap_2d constraint is reinforced with
propagators from the cumulative constraints. It consists of ignoring the
position of rectangles in one position and projecting the no_overlap_2d on
the other dimension to create a cumulative constraint. This is done on both
axis. This additional level supplements the default level of reasoning.
</pre>
<code>optional bool use_cumulative_in_no_overlap_2d = 200 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseCumulativeInNoOverlap2D()">getUseCumulativeInNoOverlap2D</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useCumulativeInNoOverlap2d.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasLinearizationLevel()">
<h3>hasLinearizationLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasLinearizationLevel</span>()</div>
<div class="block"><pre>
A non-negative level indicating the type of constraints we consider in the
LP relaxation. At level zero, no LP relaxation is used. At level 1, only
the linear constraint and full encoding are added. At level 2, we also add
all the Boolean constraints.
</pre>
<code>optional int32 linearization_level = 90 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasLinearizationLevel()">hasLinearizationLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the linearizationLevel field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getLinearizationLevel()">
<h3>getLinearizationLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getLinearizationLevel</span>()</div>
<div class="block"><pre>
A non-negative level indicating the type of constraints we consider in the
LP relaxation. At level zero, no LP relaxation is used. At level 1, only
the linear constraint and full encoding are added. At level 2, we also add
all the Boolean constraints.
</pre>
<code>optional int32 linearization_level = 90 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getLinearizationLevel()">getLinearizationLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The linearizationLevel.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasBooleanEncodingLevel()">
<h3>hasBooleanEncodingLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasBooleanEncodingLevel</span>()</div>
<div class="block"><pre>
A non-negative level indicating how much we should try to fully encode
Integer variables as Boolean.
</pre>
<code>optional int32 boolean_encoding_level = 107 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasBooleanEncodingLevel()">hasBooleanEncodingLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the booleanEncodingLevel field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getBooleanEncodingLevel()">
<h3>getBooleanEncodingLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getBooleanEncodingLevel</span>()</div>
<div class="block"><pre>
A non-negative level indicating how much we should try to fully encode
Integer variables as Boolean.
</pre>
<code>optional int32 boolean_encoding_level = 107 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getBooleanEncodingLevel()">getBooleanEncodingLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The booleanEncodingLevel.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxDomainSizeWhenEncodingEqNeqConstraints()">
<h3>hasMaxDomainSizeWhenEncodingEqNeqConstraints</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxDomainSizeWhenEncodingEqNeqConstraints</span>()</div>
<div class="block"><pre>
When loading a*x + b*y ==/!= c when x and y are both fully encoded.
The solver may decide to replace the linear equation by a set of clauses.
This is triggered if the sizes of the domains of x and y are below the
threshold.
</pre>
<code>optional int32 max_domain_size_when_encoding_eq_neq_constraints = 191 [default = 16];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxDomainSizeWhenEncodingEqNeqConstraints()">hasMaxDomainSizeWhenEncodingEqNeqConstraints</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxDomainSizeWhenEncodingEqNeqConstraints field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxDomainSizeWhenEncodingEqNeqConstraints()">
<h3>getMaxDomainSizeWhenEncodingEqNeqConstraints</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMaxDomainSizeWhenEncodingEqNeqConstraints</span>()</div>
<div class="block"><pre>
When loading a*x + b*y ==/!= c when x and y are both fully encoded.
The solver may decide to replace the linear equation by a set of clauses.
This is triggered if the sizes of the domains of x and y are below the
threshold.
</pre>
<code>optional int32 max_domain_size_when_encoding_eq_neq_constraints = 191 [default = 16];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxDomainSizeWhenEncodingEqNeqConstraints()">getMaxDomainSizeWhenEncodingEqNeqConstraints</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxDomainSizeWhenEncodingEqNeqConstraints.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxNumCuts()">
<h3>hasMaxNumCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxNumCuts</span>()</div>
<div class="block"><pre>
The limit on the number of cuts in our cut pool. When this is reached we do
not generate cuts anymore.
TODO(user): We should probably remove this parameters, and just always
generate cuts but only keep the best n or something.
</pre>
<code>optional int32 max_num_cuts = 91 [default = 10000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxNumCuts()">hasMaxNumCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxNumCuts field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxNumCuts()">
<h3>getMaxNumCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMaxNumCuts</span>()</div>
<div class="block"><pre>
The limit on the number of cuts in our cut pool. When this is reached we do
not generate cuts anymore.
TODO(user): We should probably remove this parameters, and just always
generate cuts but only keep the best n or something.
</pre>
<code>optional int32 max_num_cuts = 91 [default = 10000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxNumCuts()">getMaxNumCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxNumCuts.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasCutLevel()">
<h3>hasCutLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasCutLevel</span>()</div>
<div class="block"><pre>
Control the global cut effort. Zero will turn off all cut. For now we just
have one level. Note also that most cuts are only used at linearization
level &gt;= 2.
</pre>
<code>optional int32 cut_level = 196 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasCutLevel()">hasCutLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the cutLevel field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCutLevel()">
<h3>getCutLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getCutLevel</span>()</div>
<div class="block"><pre>
Control the global cut effort. Zero will turn off all cut. For now we just
have one level. Note also that most cuts are only used at linearization
level &gt;= 2.
</pre>
<code>optional int32 cut_level = 196 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getCutLevel()">getCutLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The cutLevel.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasOnlyAddCutsAtLevelZero()">
<h3>hasOnlyAddCutsAtLevelZero</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasOnlyAddCutsAtLevelZero</span>()</div>
<div class="block"><pre>
For the cut that can be generated at any level, this control if we only
try to generate them at the root node.
</pre>
<code>optional bool only_add_cuts_at_level_zero = 92 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasOnlyAddCutsAtLevelZero()">hasOnlyAddCutsAtLevelZero</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the onlyAddCutsAtLevelZero field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getOnlyAddCutsAtLevelZero()">
<h3>getOnlyAddCutsAtLevelZero</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getOnlyAddCutsAtLevelZero</span>()</div>
<div class="block"><pre>
For the cut that can be generated at any level, this control if we only
try to generate them at the root node.
</pre>
<code>optional bool only_add_cuts_at_level_zero = 92 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getOnlyAddCutsAtLevelZero()">getOnlyAddCutsAtLevelZero</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The onlyAddCutsAtLevelZero.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasAddObjectiveCut()">
<h3>hasAddObjectiveCut</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasAddObjectiveCut</span>()</div>
<div class="block"><pre>
When the LP objective is fractional, do we add the cut that forces the
linear objective expression to be greater or equal to this fractional value
rounded up? We can always do that since our objective is integer, and
combined with MIR heuristic to reduce the coefficient of such cut, it can
help.
</pre>
<code>optional bool add_objective_cut = 197 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasAddObjectiveCut()">hasAddObjectiveCut</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the addObjectiveCut field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAddObjectiveCut()">
<h3>getAddObjectiveCut</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getAddObjectiveCut</span>()</div>
<div class="block"><pre>
When the LP objective is fractional, do we add the cut that forces the
linear objective expression to be greater or equal to this fractional value
rounded up? We can always do that since our objective is integer, and
combined with MIR heuristic to reduce the coefficient of such cut, it can
help.
</pre>
<code>optional bool add_objective_cut = 197 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getAddObjectiveCut()">getAddObjectiveCut</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The addObjectiveCut.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasAddCgCuts()">
<h3>hasAddCgCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasAddCgCuts</span>()</div>
<div class="block"><pre>
Whether we generate and add Chvatal-Gomory cuts to the LP at root node.
Note that for now, this is not heavily tuned.
</pre>
<code>optional bool add_cg_cuts = 117 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasAddCgCuts()">hasAddCgCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the addCgCuts field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAddCgCuts()">
<h3>getAddCgCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getAddCgCuts</span>()</div>
<div class="block"><pre>
Whether we generate and add Chvatal-Gomory cuts to the LP at root node.
Note that for now, this is not heavily tuned.
</pre>
<code>optional bool add_cg_cuts = 117 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getAddCgCuts()">getAddCgCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The addCgCuts.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasAddMirCuts()">
<h3>hasAddMirCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasAddMirCuts</span>()</div>
<div class="block"><pre>
Whether we generate MIR cuts at root node.
Note that for now, this is not heavily tuned.
</pre>
<code>optional bool add_mir_cuts = 120 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasAddMirCuts()">hasAddMirCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the addMirCuts field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAddMirCuts()">
<h3>getAddMirCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getAddMirCuts</span>()</div>
<div class="block"><pre>
Whether we generate MIR cuts at root node.
Note that for now, this is not heavily tuned.
</pre>
<code>optional bool add_mir_cuts = 120 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getAddMirCuts()">getAddMirCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The addMirCuts.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasAddZeroHalfCuts()">
<h3>hasAddZeroHalfCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasAddZeroHalfCuts</span>()</div>
<div class="block"><pre>
Whether we generate Zero-Half cuts at root node.
Note that for now, this is not heavily tuned.
</pre>
<code>optional bool add_zero_half_cuts = 169 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasAddZeroHalfCuts()">hasAddZeroHalfCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the addZeroHalfCuts field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAddZeroHalfCuts()">
<h3>getAddZeroHalfCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getAddZeroHalfCuts</span>()</div>
<div class="block"><pre>
Whether we generate Zero-Half cuts at root node.
Note that for now, this is not heavily tuned.
</pre>
<code>optional bool add_zero_half_cuts = 169 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getAddZeroHalfCuts()">getAddZeroHalfCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The addZeroHalfCuts.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasAddCliqueCuts()">
<h3>hasAddCliqueCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasAddCliqueCuts</span>()</div>
<div class="block"><pre>
Whether we generate clique cuts from the binary implication graph. Note
that as the search goes on, this graph will contains new binary clauses
learned by the SAT engine.
</pre>
<code>optional bool add_clique_cuts = 172 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasAddCliqueCuts()">hasAddCliqueCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the addCliqueCuts field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAddCliqueCuts()">
<h3>getAddCliqueCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getAddCliqueCuts</span>()</div>
<div class="block"><pre>
Whether we generate clique cuts from the binary implication graph. Note
that as the search goes on, this graph will contains new binary clauses
learned by the SAT engine.
</pre>
<code>optional bool add_clique_cuts = 172 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getAddCliqueCuts()">getAddCliqueCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The addCliqueCuts.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxAllDiffCutSize()">
<h3>hasMaxAllDiffCutSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxAllDiffCutSize</span>()</div>
<div class="block"><pre>
Cut generator for all diffs can add too many cuts for large all_diff
constraints. This parameter restricts the large all_diff constraints to
have a cut generator.
</pre>
<code>optional int32 max_all_diff_cut_size = 148 [default = 7];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxAllDiffCutSize()">hasMaxAllDiffCutSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxAllDiffCutSize field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxAllDiffCutSize()">
<h3>getMaxAllDiffCutSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMaxAllDiffCutSize</span>()</div>
<div class="block"><pre>
Cut generator for all diffs can add too many cuts for large all_diff
constraints. This parameter restricts the large all_diff constraints to
have a cut generator.
</pre>
<code>optional int32 max_all_diff_cut_size = 148 [default = 7];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxAllDiffCutSize()">getMaxAllDiffCutSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxAllDiffCutSize.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasAddLinMaxCuts()">
<h3>hasAddLinMaxCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasAddLinMaxCuts</span>()</div>
<div class="block"><pre>
For the lin max constraints, generates the cuts described in "Strong
mixed-integer programming formulations for trained neural networks" by Ross
Anderson et. (https://arxiv.org/pdf/1811.01988.pdf)
</pre>
<code>optional bool add_lin_max_cuts = 152 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasAddLinMaxCuts()">hasAddLinMaxCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the addLinMaxCuts field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAddLinMaxCuts()">
<h3>getAddLinMaxCuts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getAddLinMaxCuts</span>()</div>
<div class="block"><pre>
For the lin max constraints, generates the cuts described in "Strong
mixed-integer programming formulations for trained neural networks" by Ross
Anderson et. (https://arxiv.org/pdf/1811.01988.pdf)
</pre>
<code>optional bool add_lin_max_cuts = 152 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getAddLinMaxCuts()">getAddLinMaxCuts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The addLinMaxCuts.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxIntegerRoundingScaling()">
<h3>hasMaxIntegerRoundingScaling</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxIntegerRoundingScaling</span>()</div>
<div class="block"><pre>
In the integer rounding procedure used for MIR and Gomory cut, the maximum
"scaling" we use (must be positive). The lower this is, the lower the
integer coefficients of the cut will be. Note that cut generated by lower
values are not necessarily worse than cut generated by larger value. There
is no strict dominance relationship.
Setting this to 2 result in the "strong fractional rouding" of Letchford
and Lodi.
</pre>
<code>optional int32 max_integer_rounding_scaling = 119 [default = 600];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxIntegerRoundingScaling()">hasMaxIntegerRoundingScaling</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxIntegerRoundingScaling field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxIntegerRoundingScaling()">
<h3>getMaxIntegerRoundingScaling</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMaxIntegerRoundingScaling</span>()</div>
<div class="block"><pre>
In the integer rounding procedure used for MIR and Gomory cut, the maximum
"scaling" we use (must be positive). The lower this is, the lower the
integer coefficients of the cut will be. Note that cut generated by lower
values are not necessarily worse than cut generated by larger value. There
is no strict dominance relationship.
Setting this to 2 result in the "strong fractional rouding" of Letchford
and Lodi.
</pre>
<code>optional int32 max_integer_rounding_scaling = 119 [default = 600];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxIntegerRoundingScaling()">getMaxIntegerRoundingScaling</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxIntegerRoundingScaling.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasAddLpConstraintsLazily()">
<h3>hasAddLpConstraintsLazily</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasAddLpConstraintsLazily</span>()</div>
<div class="block"><pre>
If true, we start by an empty LP, and only add constraints not satisfied
by the current LP solution batch by batch. A constraint that is only added
like this is known as a "lazy" constraint in the literature, except that we
currently consider all constraints as lazy here.
</pre>
<code>optional bool add_lp_constraints_lazily = 112 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasAddLpConstraintsLazily()">hasAddLpConstraintsLazily</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the addLpConstraintsLazily field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAddLpConstraintsLazily()">
<h3>getAddLpConstraintsLazily</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getAddLpConstraintsLazily</span>()</div>
<div class="block"><pre>
If true, we start by an empty LP, and only add constraints not satisfied
by the current LP solution batch by batch. A constraint that is only added
like this is known as a "lazy" constraint in the literature, except that we
currently consider all constraints as lazy here.
</pre>
<code>optional bool add_lp_constraints_lazily = 112 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getAddLpConstraintsLazily()">getAddLpConstraintsLazily</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The addLpConstraintsLazily.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMinOrthogonalityForLpConstraints()">
<h3>hasMinOrthogonalityForLpConstraints</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMinOrthogonalityForLpConstraints</span>()</div>
<div class="block"><pre>
While adding constraints, skip the constraints which have orthogonality
less than 'min_orthogonality_for_lp_constraints' with already added
constraints during current call. Orthogonality is defined as 1 -
cosine(vector angle between constraints). A value of zero disable this
feature.
</pre>
<code>optional double min_orthogonality_for_lp_constraints = 115 [default = 0.05];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMinOrthogonalityForLpConstraints()">hasMinOrthogonalityForLpConstraints</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the minOrthogonalityForLpConstraints field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMinOrthogonalityForLpConstraints()">
<h3>getMinOrthogonalityForLpConstraints</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMinOrthogonalityForLpConstraints</span>()</div>
<div class="block"><pre>
While adding constraints, skip the constraints which have orthogonality
less than 'min_orthogonality_for_lp_constraints' with already added
constraints during current call. Orthogonality is defined as 1 -
cosine(vector angle between constraints). A value of zero disable this
feature.
</pre>
<code>optional double min_orthogonality_for_lp_constraints = 115 [default = 0.05];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMinOrthogonalityForLpConstraints()">getMinOrthogonalityForLpConstraints</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The minOrthogonalityForLpConstraints.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxCutRoundsAtLevelZero()">
<h3>hasMaxCutRoundsAtLevelZero</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxCutRoundsAtLevelZero</span>()</div>
<div class="block"><pre>
Max number of time we perform cut generation and resolve the LP at level 0.
</pre>
<code>optional int32 max_cut_rounds_at_level_zero = 154 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxCutRoundsAtLevelZero()">hasMaxCutRoundsAtLevelZero</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxCutRoundsAtLevelZero field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxCutRoundsAtLevelZero()">
<h3>getMaxCutRoundsAtLevelZero</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMaxCutRoundsAtLevelZero</span>()</div>
<div class="block"><pre>
Max number of time we perform cut generation and resolve the LP at level 0.
</pre>
<code>optional int32 max_cut_rounds_at_level_zero = 154 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxCutRoundsAtLevelZero()">getMaxCutRoundsAtLevelZero</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxCutRoundsAtLevelZero.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMaxConsecutiveInactiveCount()">
<h3>hasMaxConsecutiveInactiveCount</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMaxConsecutiveInactiveCount</span>()</div>
<div class="block"><pre>
If a constraint/cut in LP is not active for that many consecutive OPTIMAL
solves, remove it from the LP. Note that it might be added again later if
it become violated by the current LP solution.
</pre>
<code>optional int32 max_consecutive_inactive_count = 121 [default = 100];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMaxConsecutiveInactiveCount()">hasMaxConsecutiveInactiveCount</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the maxConsecutiveInactiveCount field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxConsecutiveInactiveCount()">
<h3>getMaxConsecutiveInactiveCount</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMaxConsecutiveInactiveCount</span>()</div>
<div class="block"><pre>
If a constraint/cut in LP is not active for that many consecutive OPTIMAL
solves, remove it from the LP. Note that it might be added again later if
it become violated by the current LP solution.
</pre>
<code>optional int32 max_consecutive_inactive_count = 121 [default = 100];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMaxConsecutiveInactiveCount()">getMaxConsecutiveInactiveCount</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The maxConsecutiveInactiveCount.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasCutMaxActiveCountValue()">
<h3>hasCutMaxActiveCountValue</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasCutMaxActiveCountValue</span>()</div>
<div class="block"><pre>
These parameters are similar to sat clause management activity parameters.
They are effective only if the number of generated cuts exceed the storage
limit. Default values are based on a few experiments on miplib instances.
</pre>
<code>optional double cut_max_active_count_value = 155 [default = 10000000000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasCutMaxActiveCountValue()">hasCutMaxActiveCountValue</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the cutMaxActiveCountValue field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCutMaxActiveCountValue()">
<h3>getCutMaxActiveCountValue</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getCutMaxActiveCountValue</span>()</div>
<div class="block"><pre>
These parameters are similar to sat clause management activity parameters.
They are effective only if the number of generated cuts exceed the storage
limit. Default values are based on a few experiments on miplib instances.
</pre>
<code>optional double cut_max_active_count_value = 155 [default = 10000000000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getCutMaxActiveCountValue()">getCutMaxActiveCountValue</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The cutMaxActiveCountValue.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasCutActiveCountDecay()">
<h3>hasCutActiveCountDecay</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasCutActiveCountDecay</span>()</div>
<div class="block"><code>optional double cut_active_count_decay = 156 [default = 0.8];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasCutActiveCountDecay()">hasCutActiveCountDecay</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the cutActiveCountDecay field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCutActiveCountDecay()">
<h3>getCutActiveCountDecay</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getCutActiveCountDecay</span>()</div>
<div class="block"><code>optional double cut_active_count_decay = 156 [default = 0.8];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getCutActiveCountDecay()">getCutActiveCountDecay</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The cutActiveCountDecay.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasCutCleanupTarget()">
<h3>hasCutCleanupTarget</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasCutCleanupTarget</span>()</div>
<div class="block"><pre>
Target number of constraints to remove during cleanup.
</pre>
<code>optional int32 cut_cleanup_target = 157 [default = 1000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasCutCleanupTarget()">hasCutCleanupTarget</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the cutCleanupTarget field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCutCleanupTarget()">
<h3>getCutCleanupTarget</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getCutCleanupTarget</span>()</div>
<div class="block"><pre>
Target number of constraints to remove during cleanup.
</pre>
<code>optional int32 cut_cleanup_target = 157 [default = 1000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getCutCleanupTarget()">getCutCleanupTarget</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The cutCleanupTarget.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasNewConstraintsBatchSize()">
<h3>hasNewConstraintsBatchSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasNewConstraintsBatchSize</span>()</div>
<div class="block"><pre>
Add that many lazy constraints (or cuts) at once in the LP. Note that at
the beginning of the solve, we do add more than this.
</pre>
<code>optional int32 new_constraints_batch_size = 122 [default = 50];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasNewConstraintsBatchSize()">hasNewConstraintsBatchSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the newConstraintsBatchSize field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getNewConstraintsBatchSize()">
<h3>getNewConstraintsBatchSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getNewConstraintsBatchSize</span>()</div>
<div class="block"><pre>
Add that many lazy constraints (or cuts) at once in the LP. Note that at
the beginning of the solve, we do add more than this.
</pre>
<code>optional int32 new_constraints_batch_size = 122 [default = 50];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getNewConstraintsBatchSize()">getNewConstraintsBatchSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The newConstraintsBatchSize.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasSearchBranching()">
<h3>hasSearchBranching</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasSearchBranching</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.SearchBranching search_branching = 82 [default = AUTOMATIC_SEARCH];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasSearchBranching()">hasSearchBranching</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the searchBranching field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSearchBranching()">
<h3>getSearchBranching</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.SearchBranching.html" title="enum in com.google.ortools.sat">SatParameters.SearchBranching</a></span>&nbsp;<span class="element-name">getSearchBranching</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.SearchBranching search_branching = 82 [default = AUTOMATIC_SEARCH];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSearchBranching()">getSearchBranching</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The searchBranching.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasHintConflictLimit()">
<h3>hasHintConflictLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasHintConflictLimit</span>()</div>
<div class="block"><pre>
Conflict limit used in the phase that exploit the solution hint.
</pre>
<code>optional int32 hint_conflict_limit = 153 [default = 10];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasHintConflictLimit()">hasHintConflictLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the hintConflictLimit field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getHintConflictLimit()">
<h3>getHintConflictLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getHintConflictLimit</span>()</div>
<div class="block"><pre>
Conflict limit used in the phase that exploit the solution hint.
</pre>
<code>optional int32 hint_conflict_limit = 153 [default = 10];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getHintConflictLimit()">getHintConflictLimit</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The hintConflictLimit.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasRepairHint()">
<h3>hasRepairHint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasRepairHint</span>()</div>
<div class="block"><pre>
If true, the solver tries to repair the solution given in the hint. This
search terminates after the 'hint_conflict_limit' is reached and the solver
switches to regular search. If false, then we do a FIXED_SEARCH using the
hint until the hint_conflict_limit is reached.
</pre>
<code>optional bool repair_hint = 167 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasRepairHint()">hasRepairHint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the repairHint field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRepairHint()">
<h3>getRepairHint</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getRepairHint</span>()</div>
<div class="block"><pre>
If true, the solver tries to repair the solution given in the hint. This
search terminates after the 'hint_conflict_limit' is reached and the solver
switches to regular search. If false, then we do a FIXED_SEARCH using the
hint until the hint_conflict_limit is reached.
</pre>
<code>optional bool repair_hint = 167 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRepairHint()">getRepairHint</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The repairHint.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasFixVariablesToTheirHintedValue()">
<h3>hasFixVariablesToTheirHintedValue</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasFixVariablesToTheirHintedValue</span>()</div>
<div class="block"><pre>
If true, variables appearing in the solution hints will be fixed to their
hinted value.
</pre>
<code>optional bool fix_variables_to_their_hinted_value = 192 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasFixVariablesToTheirHintedValue()">hasFixVariablesToTheirHintedValue</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the fixVariablesToTheirHintedValue field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getFixVariablesToTheirHintedValue()">
<h3>getFixVariablesToTheirHintedValue</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getFixVariablesToTheirHintedValue</span>()</div>
<div class="block"><pre>
If true, variables appearing in the solution hints will be fixed to their
hinted value.
</pre>
<code>optional bool fix_variables_to_their_hinted_value = 192 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getFixVariablesToTheirHintedValue()">getFixVariablesToTheirHintedValue</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The fixVariablesToTheirHintedValue.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasExploitIntegerLpSolution()">
<h3>hasExploitIntegerLpSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasExploitIntegerLpSolution</span>()</div>
<div class="block"><pre>
If true and the Lp relaxation of the problem has an integer optimal
solution, try to exploit it. Note that since the LP relaxation may not
contain all the constraints, such a solution is not necessarily a solution
of the full problem.
</pre>
<code>optional bool exploit_integer_lp_solution = 94 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasExploitIntegerLpSolution()">hasExploitIntegerLpSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the exploitIntegerLpSolution field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getExploitIntegerLpSolution()">
<h3>getExploitIntegerLpSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getExploitIntegerLpSolution</span>()</div>
<div class="block"><pre>
If true and the Lp relaxation of the problem has an integer optimal
solution, try to exploit it. Note that since the LP relaxation may not
contain all the constraints, such a solution is not necessarily a solution
of the full problem.
</pre>
<code>optional bool exploit_integer_lp_solution = 94 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getExploitIntegerLpSolution()">getExploitIntegerLpSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The exploitIntegerLpSolution.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasExploitAllLpSolution()">
<h3>hasExploitAllLpSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasExploitAllLpSolution</span>()</div>
<div class="block"><pre>
If true and the Lp relaxation of the problem has a solution, try to exploit
it. This is same as above except in this case the lp solution might not be
an integer solution.
</pre>
<code>optional bool exploit_all_lp_solution = 116 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasExploitAllLpSolution()">hasExploitAllLpSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the exploitAllLpSolution field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getExploitAllLpSolution()">
<h3>getExploitAllLpSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getExploitAllLpSolution</span>()</div>
<div class="block"><pre>
If true and the Lp relaxation of the problem has a solution, try to exploit
it. This is same as above except in this case the lp solution might not be
an integer solution.
</pre>
<code>optional bool exploit_all_lp_solution = 116 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getExploitAllLpSolution()">getExploitAllLpSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The exploitAllLpSolution.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasExploitBestSolution()">
<h3>hasExploitBestSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasExploitBestSolution</span>()</div>
<div class="block"><pre>
When branching on a variable, follow the last best solution value.
</pre>
<code>optional bool exploit_best_solution = 130 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasExploitBestSolution()">hasExploitBestSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the exploitBestSolution field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getExploitBestSolution()">
<h3>getExploitBestSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getExploitBestSolution</span>()</div>
<div class="block"><pre>
When branching on a variable, follow the last best solution value.
</pre>
<code>optional bool exploit_best_solution = 130 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getExploitBestSolution()">getExploitBestSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The exploitBestSolution.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasExploitRelaxationSolution()">
<h3>hasExploitRelaxationSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasExploitRelaxationSolution</span>()</div>
<div class="block"><pre>
When branching on a variable, follow the last best relaxation solution
value. We use the relaxation with the tightest bound on the objective as
the best relaxation solution.
</pre>
<code>optional bool exploit_relaxation_solution = 161 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasExploitRelaxationSolution()">hasExploitRelaxationSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the exploitRelaxationSolution field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getExploitRelaxationSolution()">
<h3>getExploitRelaxationSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getExploitRelaxationSolution</span>()</div>
<div class="block"><pre>
When branching on a variable, follow the last best relaxation solution
value. We use the relaxation with the tightest bound on the objective as
the best relaxation solution.
</pre>
<code>optional bool exploit_relaxation_solution = 161 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getExploitRelaxationSolution()">getExploitRelaxationSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The exploitRelaxationSolution.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasExploitObjective()">
<h3>hasExploitObjective</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasExploitObjective</span>()</div>
<div class="block"><pre>
When branching an a variable that directly affect the objective,
branch on the value that lead to the best objective first.
</pre>
<code>optional bool exploit_objective = 131 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasExploitObjective()">hasExploitObjective</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the exploitObjective field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getExploitObjective()">
<h3>getExploitObjective</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getExploitObjective</span>()</div>
<div class="block"><pre>
When branching an a variable that directly affect the objective,
branch on the value that lead to the best objective first.
</pre>
<code>optional bool exploit_objective = 131 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getExploitObjective()">getExploitObjective</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The exploitObjective.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasProbingPeriodAtRoot()">
<h3>hasProbingPeriodAtRoot</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasProbingPeriodAtRoot</span>()</div>
<div class="block"><pre>
If set at zero (the default), it is disabled. Otherwise the solver attempts
probing at every 'probing_period' root node. Period of 1 enables probing at
every root node.
</pre>
<code>optional int64 probing_period_at_root = 142 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasProbingPeriodAtRoot()">hasProbingPeriodAtRoot</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the probingPeriodAtRoot field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getProbingPeriodAtRoot()">
<h3>getProbingPeriodAtRoot</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name">getProbingPeriodAtRoot</span>()</div>
<div class="block"><pre>
If set at zero (the default), it is disabled. Otherwise the solver attempts
probing at every 'probing_period' root node. Period of 1 enables probing at
every root node.
</pre>
<code>optional int64 probing_period_at_root = 142 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getProbingPeriodAtRoot()">getProbingPeriodAtRoot</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The probingPeriodAtRoot.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseProbingSearch()">
<h3>hasUseProbingSearch</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseProbingSearch</span>()</div>
<div class="block"><pre>
If true, search will continuously probe Boolean variables, and integer
variable bounds. This parameter is set to true in parallel on the probing
worker.
</pre>
<code>optional bool use_probing_search = 176 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseProbingSearch()">hasUseProbingSearch</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useProbingSearch field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseProbingSearch()">
<h3>getUseProbingSearch</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseProbingSearch</span>()</div>
<div class="block"><pre>
If true, search will continuously probe Boolean variables, and integer
variable bounds. This parameter is set to true in parallel on the probing
worker.
</pre>
<code>optional bool use_probing_search = 176 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseProbingSearch()">getUseProbingSearch</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useProbingSearch.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseShavingInProbingSearch()">
<h3>hasUseShavingInProbingSearch</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseShavingInProbingSearch</span>()</div>
<div class="block"><pre>
Add a shaving phase (where the solver tries to prove that the lower or
upper bound of a variable are infeasible) to the probing search.
</pre>
<code>optional bool use_shaving_in_probing_search = 204 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseShavingInProbingSearch()">hasUseShavingInProbingSearch</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useShavingInProbingSearch field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseShavingInProbingSearch()">
<h3>getUseShavingInProbingSearch</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseShavingInProbingSearch</span>()</div>
<div class="block"><pre>
Add a shaving phase (where the solver tries to prove that the lower or
upper bound of a variable are infeasible) to the probing search.
</pre>
<code>optional bool use_shaving_in_probing_search = 204 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseShavingInProbingSearch()">getUseShavingInProbingSearch</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useShavingInProbingSearch.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasShavingSearchDeterministicTime()">
<h3>hasShavingSearchDeterministicTime</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasShavingSearchDeterministicTime</span>()</div>
<div class="block"><pre>
Specifies the amount of deterministic time spent of each try at shaving a
bound in the shaving search.
</pre>
<code>optional double shaving_search_deterministic_time = 205 [default = 0.001];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasShavingSearchDeterministicTime()">hasShavingSearchDeterministicTime</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the shavingSearchDeterministicTime field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getShavingSearchDeterministicTime()">
<h3>getShavingSearchDeterministicTime</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getShavingSearchDeterministicTime</span>()</div>
<div class="block"><pre>
Specifies the amount of deterministic time spent of each try at shaving a
bound in the shaving search.
</pre>
<code>optional double shaving_search_deterministic_time = 205 [default = 0.001];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getShavingSearchDeterministicTime()">getShavingSearchDeterministicTime</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The shavingSearchDeterministicTime.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPseudoCostReliabilityThreshold()">
<h3>hasPseudoCostReliabilityThreshold</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPseudoCostReliabilityThreshold</span>()</div>
<div class="block"><pre>
The solver ignores the pseudo costs of variables with number of recordings
less than this threshold.
</pre>
<code>optional int64 pseudo_cost_reliability_threshold = 123 [default = 100];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPseudoCostReliabilityThreshold()">hasPseudoCostReliabilityThreshold</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the pseudoCostReliabilityThreshold field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPseudoCostReliabilityThreshold()">
<h3>getPseudoCostReliabilityThreshold</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name">getPseudoCostReliabilityThreshold</span>()</div>
<div class="block"><pre>
The solver ignores the pseudo costs of variables with number of recordings
less than this threshold.
</pre>
<code>optional int64 pseudo_cost_reliability_threshold = 123 [default = 100];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPseudoCostReliabilityThreshold()">getPseudoCostReliabilityThreshold</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The pseudoCostReliabilityThreshold.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasOptimizeWithCore()">
<h3>hasOptimizeWithCore</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasOptimizeWithCore</span>()</div>
<div class="block"><pre>
The default optimization method is a simple "linear scan", each time trying
to find a better solution than the previous one. If this is true, then we
use a core-based approach (like in max-SAT) when we try to increase the
lower bound instead.
</pre>
<code>optional bool optimize_with_core = 83 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasOptimizeWithCore()">hasOptimizeWithCore</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the optimizeWithCore field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getOptimizeWithCore()">
<h3>getOptimizeWithCore</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getOptimizeWithCore</span>()</div>
<div class="block"><pre>
The default optimization method is a simple "linear scan", each time trying
to find a better solution than the previous one. If this is true, then we
use a core-based approach (like in max-SAT) when we try to increase the
lower bound instead.
</pre>
<code>optional bool optimize_with_core = 83 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getOptimizeWithCore()">getOptimizeWithCore</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The optimizeWithCore.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasOptimizeWithLbTreeSearch()">
<h3>hasOptimizeWithLbTreeSearch</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasOptimizeWithLbTreeSearch</span>()</div>
<div class="block"><pre>
Do a more conventional tree search (by opposition to SAT based one) where
we keep all the explored node in a tree. This is meant to be used in a
portfolio and focus on improving the objective lower bound. Keeping the
whole tree allow us to report a better objective lower bound coming from
the worst open node in the tree.
</pre>
<code>optional bool optimize_with_lb_tree_search = 188 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasOptimizeWithLbTreeSearch()">hasOptimizeWithLbTreeSearch</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the optimizeWithLbTreeSearch field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getOptimizeWithLbTreeSearch()">
<h3>getOptimizeWithLbTreeSearch</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getOptimizeWithLbTreeSearch</span>()</div>
<div class="block"><pre>
Do a more conventional tree search (by opposition to SAT based one) where
we keep all the explored node in a tree. This is meant to be used in a
portfolio and focus on improving the objective lower bound. Keeping the
whole tree allow us to report a better objective lower bound coming from
the worst open node in the tree.
</pre>
<code>optional bool optimize_with_lb_tree_search = 188 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getOptimizeWithLbTreeSearch()">getOptimizeWithLbTreeSearch</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The optimizeWithLbTreeSearch.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasBinarySearchNumConflicts()">
<h3>hasBinarySearchNumConflicts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasBinarySearchNumConflicts</span>()</div>
<div class="block"><pre>
If non-negative, perform a binary search on the objective variable in order
to find an [min, max] interval outside of which the solver proved unsat/sat
under this amount of conflict. This can quickly reduce the objective domain
on some problems.
</pre>
<code>optional int32 binary_search_num_conflicts = 99 [default = -1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasBinarySearchNumConflicts()">hasBinarySearchNumConflicts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the binarySearchNumConflicts field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getBinarySearchNumConflicts()">
<h3>getBinarySearchNumConflicts</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getBinarySearchNumConflicts</span>()</div>
<div class="block"><pre>
If non-negative, perform a binary search on the objective variable in order
to find an [min, max] interval outside of which the solver proved unsat/sat
under this amount of conflict. This can quickly reduce the objective domain
on some problems.
</pre>
<code>optional int32 binary_search_num_conflicts = 99 [default = -1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getBinarySearchNumConflicts()">getBinarySearchNumConflicts</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The binarySearchNumConflicts.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasOptimizeWithMaxHs()">
<h3>hasOptimizeWithMaxHs</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasOptimizeWithMaxHs</span>()</div>
<div class="block"><pre>
This has no effect if optimize_with_core is false. If true, use a different
core-based algorithm similar to the max-HS algo for max-SAT. This is a
hybrid MIP/CP approach and it uses a MIP solver in addition to the CP/SAT
one. This is also related to the PhD work of tobyodavies&#64;
"Automatic Logic-Based Benders Decomposition with MiniZinc"
http://aaai.org/ocs/index.php/AAAI/AAAI17/paper/view/14489
</pre>
<code>optional bool optimize_with_max_hs = 85 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasOptimizeWithMaxHs()">hasOptimizeWithMaxHs</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the optimizeWithMaxHs field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getOptimizeWithMaxHs()">
<h3>getOptimizeWithMaxHs</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getOptimizeWithMaxHs</span>()</div>
<div class="block"><pre>
This has no effect if optimize_with_core is false. If true, use a different
core-based algorithm similar to the max-HS algo for max-SAT. This is a
hybrid MIP/CP approach and it uses a MIP solver in addition to the CP/SAT
one. This is also related to the PhD work of tobyodavies&#64;
"Automatic Logic-Based Benders Decomposition with MiniZinc"
http://aaai.org/ocs/index.php/AAAI/AAAI17/paper/view/14489
</pre>
<code>optional bool optimize_with_max_hs = 85 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getOptimizeWithMaxHs()">getOptimizeWithMaxHs</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The optimizeWithMaxHs.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasEnumerateAllSolutions()">
<h3>hasEnumerateAllSolutions</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasEnumerateAllSolutions</span>()</div>
<div class="block"><pre>
Whether we enumerate all solutions of a problem without objective. Note
that setting this to true automatically disable some presolve reduction
that can remove feasible solution. That is it has the same effect as
setting keep_all_feasible_solutions_in_presolve.
TODO(user): Do not do that and let the user choose what behavior is best by
setting keep_all_feasible_solutions_in_presolve ?
</pre>
<code>optional bool enumerate_all_solutions = 87 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasEnumerateAllSolutions()">hasEnumerateAllSolutions</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the enumerateAllSolutions field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getEnumerateAllSolutions()">
<h3>getEnumerateAllSolutions</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getEnumerateAllSolutions</span>()</div>
<div class="block"><pre>
Whether we enumerate all solutions of a problem without objective. Note
that setting this to true automatically disable some presolve reduction
that can remove feasible solution. That is it has the same effect as
setting keep_all_feasible_solutions_in_presolve.
TODO(user): Do not do that and let the user choose what behavior is best by
setting keep_all_feasible_solutions_in_presolve ?
</pre>
<code>optional bool enumerate_all_solutions = 87 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getEnumerateAllSolutions()">getEnumerateAllSolutions</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The enumerateAllSolutions.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasKeepAllFeasibleSolutionsInPresolve()">
<h3>hasKeepAllFeasibleSolutionsInPresolve</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasKeepAllFeasibleSolutionsInPresolve</span>()</div>
<div class="block"><pre>
If true, we disable the presolve reductions that remove feasible solutions
from the search space. Such solution are usually dominated by a "better"
solution that is kept, but depending on the situation, we might want to
keep all solutions.
A trivial example is when a variable is unused. If this is true, then the
presolve will not fix it to an arbitrary value and it will stay in the
search space.
</pre>
<code>optional bool keep_all_feasible_solutions_in_presolve = 173 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasKeepAllFeasibleSolutionsInPresolve()">hasKeepAllFeasibleSolutionsInPresolve</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the keepAllFeasibleSolutionsInPresolve field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getKeepAllFeasibleSolutionsInPresolve()">
<h3>getKeepAllFeasibleSolutionsInPresolve</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getKeepAllFeasibleSolutionsInPresolve</span>()</div>
<div class="block"><pre>
If true, we disable the presolve reductions that remove feasible solutions
from the search space. Such solution are usually dominated by a "better"
solution that is kept, but depending on the situation, we might want to
keep all solutions.
A trivial example is when a variable is unused. If this is true, then the
presolve will not fix it to an arbitrary value and it will stay in the
search space.
</pre>
<code>optional bool keep_all_feasible_solutions_in_presolve = 173 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getKeepAllFeasibleSolutionsInPresolve()">getKeepAllFeasibleSolutionsInPresolve</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The keepAllFeasibleSolutionsInPresolve.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasFillTightenedDomainsInResponse()">
<h3>hasFillTightenedDomainsInResponse</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasFillTightenedDomainsInResponse</span>()</div>
<div class="block"><pre>
If true, add information about the derived variable domains to the
CpSolverResponse. It is an option because it makes the response slighly
bigger and there is a bit more work involved during the postsolve to
construct it, but it should still have a low overhead. See the
tightened_variables field in CpSolverResponse for more details.
</pre>
<code>optional bool fill_tightened_domains_in_response = 132 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasFillTightenedDomainsInResponse()">hasFillTightenedDomainsInResponse</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the fillTightenedDomainsInResponse field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getFillTightenedDomainsInResponse()">
<h3>getFillTightenedDomainsInResponse</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getFillTightenedDomainsInResponse</span>()</div>
<div class="block"><pre>
If true, add information about the derived variable domains to the
CpSolverResponse. It is an option because it makes the response slighly
bigger and there is a bit more work involved during the postsolve to
construct it, but it should still have a low overhead. See the
tightened_variables field in CpSolverResponse for more details.
</pre>
<code>optional bool fill_tightened_domains_in_response = 132 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getFillTightenedDomainsInResponse()">getFillTightenedDomainsInResponse</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The fillTightenedDomainsInResponse.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasFillAdditionalSolutionsInResponse()">
<h3>hasFillAdditionalSolutionsInResponse</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasFillAdditionalSolutionsInResponse</span>()</div>
<div class="block"><pre>
If true, the final response addition_solutions field will be filled with
all solutions from our solutions pool.
Note that if both this field and enumerate_all_solutions is true, we will
copy to the pool all of the solution found. So if solution_pool_size is big
enough, you can get all solutions this way instead of using the solution
callback.
Note that this only affect the "final" solution, not the one passed to the
solution callbacks.
</pre>
<code>optional bool fill_additional_solutions_in_response = 194 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasFillAdditionalSolutionsInResponse()">hasFillAdditionalSolutionsInResponse</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the fillAdditionalSolutionsInResponse field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getFillAdditionalSolutionsInResponse()">
<h3>getFillAdditionalSolutionsInResponse</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getFillAdditionalSolutionsInResponse</span>()</div>
<div class="block"><pre>
If true, the final response addition_solutions field will be filled with
all solutions from our solutions pool.
Note that if both this field and enumerate_all_solutions is true, we will
copy to the pool all of the solution found. So if solution_pool_size is big
enough, you can get all solutions this way instead of using the solution
callback.
Note that this only affect the "final" solution, not the one passed to the
solution callbacks.
</pre>
<code>optional bool fill_additional_solutions_in_response = 194 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getFillAdditionalSolutionsInResponse()">getFillAdditionalSolutionsInResponse</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The fillAdditionalSolutionsInResponse.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasInstantiateAllVariables()">
<h3>hasInstantiateAllVariables</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasInstantiateAllVariables</span>()</div>
<div class="block"><pre>
If true, the solver will add a default integer branching strategy to the
already defined search strategy. If not, some variable might still not be
fixed at the end of the search. For now we assume these variable can just
be set to their lower bound.
</pre>
<code>optional bool instantiate_all_variables = 106 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasInstantiateAllVariables()">hasInstantiateAllVariables</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the instantiateAllVariables field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getInstantiateAllVariables()">
<h3>getInstantiateAllVariables</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getInstantiateAllVariables</span>()</div>
<div class="block"><pre>
If true, the solver will add a default integer branching strategy to the
already defined search strategy. If not, some variable might still not be
fixed at the end of the search. For now we assume these variable can just
be set to their lower bound.
</pre>
<code>optional bool instantiate_all_variables = 106 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getInstantiateAllVariables()">getInstantiateAllVariables</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The instantiateAllVariables.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasAutoDetectGreaterThanAtLeastOneOf()">
<h3>hasAutoDetectGreaterThanAtLeastOneOf</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasAutoDetectGreaterThanAtLeastOneOf</span>()</div>
<div class="block"><pre>
If true, then the precedences propagator try to detect for each variable if
it has a set of "optional incoming arc" for which at least one of them is
present. This is usually useful to have but can be slow on model with a lot
of precedence.
</pre>
<code>optional bool auto_detect_greater_than_at_least_one_of = 95 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasAutoDetectGreaterThanAtLeastOneOf()">hasAutoDetectGreaterThanAtLeastOneOf</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the autoDetectGreaterThanAtLeastOneOf field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAutoDetectGreaterThanAtLeastOneOf()">
<h3>getAutoDetectGreaterThanAtLeastOneOf</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getAutoDetectGreaterThanAtLeastOneOf</span>()</div>
<div class="block"><pre>
If true, then the precedences propagator try to detect for each variable if
it has a set of "optional incoming arc" for which at least one of them is
present. This is usually useful to have but can be slow on model with a lot
of precedence.
</pre>
<code>optional bool auto_detect_greater_than_at_least_one_of = 95 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getAutoDetectGreaterThanAtLeastOneOf()">getAutoDetectGreaterThanAtLeastOneOf</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The autoDetectGreaterThanAtLeastOneOf.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasStopAfterFirstSolution()">
<h3>hasStopAfterFirstSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasStopAfterFirstSolution</span>()</div>
<div class="block"><pre>
For an optimization problem, stop the solver as soon as we have a solution.
</pre>
<code>optional bool stop_after_first_solution = 98 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasStopAfterFirstSolution()">hasStopAfterFirstSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the stopAfterFirstSolution field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getStopAfterFirstSolution()">
<h3>getStopAfterFirstSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getStopAfterFirstSolution</span>()</div>
<div class="block"><pre>
For an optimization problem, stop the solver as soon as we have a solution.
</pre>
<code>optional bool stop_after_first_solution = 98 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getStopAfterFirstSolution()">getStopAfterFirstSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The stopAfterFirstSolution.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasStopAfterPresolve()">
<h3>hasStopAfterPresolve</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasStopAfterPresolve</span>()</div>
<div class="block"><pre>
Mainly used when improving the presolver. When true, stops the solver after
the presolve is complete.
</pre>
<code>optional bool stop_after_presolve = 149 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasStopAfterPresolve()">hasStopAfterPresolve</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the stopAfterPresolve field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getStopAfterPresolve()">
<h3>getStopAfterPresolve</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getStopAfterPresolve</span>()</div>
<div class="block"><pre>
Mainly used when improving the presolver. When true, stops the solver after
the presolve is complete.
</pre>
<code>optional bool stop_after_presolve = 149 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getStopAfterPresolve()">getStopAfterPresolve</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The stopAfterPresolve.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseLnsOnly()">
<h3>hasUseLnsOnly</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseLnsOnly</span>()</div>
<div class="block"><pre>
LNS parameters.
</pre>
<code>optional bool use_lns_only = 101 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseLnsOnly()">hasUseLnsOnly</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useLnsOnly field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseLnsOnly()">
<h3>getUseLnsOnly</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseLnsOnly</span>()</div>
<div class="block"><pre>
LNS parameters.
</pre>
<code>optional bool use_lns_only = 101 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseLnsOnly()">getUseLnsOnly</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useLnsOnly.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasSolutionPoolSize()">
<h3>hasSolutionPoolSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasSolutionPoolSize</span>()</div>
<div class="block"><pre>
Size of the top-n different solutions kept by the solver.
Currently this only impact the "base" solution chosen for a LNS fragment.
</pre>
<code>optional int32 solution_pool_size = 193 [default = 3];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasSolutionPoolSize()">hasSolutionPoolSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the solutionPoolSize field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSolutionPoolSize()">
<h3>getSolutionPoolSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getSolutionPoolSize</span>()</div>
<div class="block"><pre>
Size of the top-n different solutions kept by the solver.
Currently this only impact the "base" solution chosen for a LNS fragment.
</pre>
<code>optional int32 solution_pool_size = 193 [default = 3];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSolutionPoolSize()">getSolutionPoolSize</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The solutionPoolSize.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseRinsLns()">
<h3>hasUseRinsLns</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseRinsLns</span>()</div>
<div class="block"><pre>
Turns on relaxation induced neighborhood generator.
</pre>
<code>optional bool use_rins_lns = 129 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseRinsLns()">hasUseRinsLns</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useRinsLns field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseRinsLns()">
<h3>getUseRinsLns</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseRinsLns</span>()</div>
<div class="block"><pre>
Turns on relaxation induced neighborhood generator.
</pre>
<code>optional bool use_rins_lns = 129 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseRinsLns()">getUseRinsLns</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useRinsLns.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseFeasibilityPump()">
<h3>hasUseFeasibilityPump</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseFeasibilityPump</span>()</div>
<div class="block"><pre>
Adds a feasibility pump subsolver along with lns subsolvers.
</pre>
<code>optional bool use_feasibility_pump = 164 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseFeasibilityPump()">hasUseFeasibilityPump</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useFeasibilityPump field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseFeasibilityPump()">
<h3>getUseFeasibilityPump</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseFeasibilityPump</span>()</div>
<div class="block"><pre>
Adds a feasibility pump subsolver along with lns subsolvers.
</pre>
<code>optional bool use_feasibility_pump = 164 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseFeasibilityPump()">getUseFeasibilityPump</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useFeasibilityPump.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasFpRounding()">
<h3>hasFpRounding</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasFpRounding</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.FPRoundingMethod fp_rounding = 165 [default = PROPAGATION_ASSISTED];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasFpRounding()">hasFpRounding</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the fpRounding field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getFpRounding()">
<h3>getFpRounding</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.FPRoundingMethod.html" title="enum in com.google.ortools.sat">SatParameters.FPRoundingMethod</a></span>&nbsp;<span class="element-name">getFpRounding</span>()</div>
<div class="block"><code>optional .operations_research.sat.SatParameters.FPRoundingMethod fp_rounding = 165 [default = PROPAGATION_ASSISTED];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getFpRounding()">getFpRounding</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The fpRounding.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseRelaxationLns()">
<h3>hasUseRelaxationLns</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseRelaxationLns</span>()</div>
<div class="block"><pre>
Turns on a lns worker which solves relaxed version of the original problem
by removing constraints from the problem in order to get better bounds.
</pre>
<code>optional bool use_relaxation_lns = 150 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseRelaxationLns()">hasUseRelaxationLns</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useRelaxationLns field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseRelaxationLns()">
<h3>getUseRelaxationLns</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseRelaxationLns</span>()</div>
<div class="block"><pre>
Turns on a lns worker which solves relaxed version of the original problem
by removing constraints from the problem in order to get better bounds.
</pre>
<code>optional bool use_relaxation_lns = 150 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseRelaxationLns()">getUseRelaxationLns</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useRelaxationLns.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasDiversifyLnsParams()">
<h3>hasDiversifyLnsParams</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasDiversifyLnsParams</span>()</div>
<div class="block"><pre>
If true, registers more lns subsolvers with different parameters.
</pre>
<code>optional bool diversify_lns_params = 137 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasDiversifyLnsParams()">hasDiversifyLnsParams</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the diversifyLnsParams field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDiversifyLnsParams()">
<h3>getDiversifyLnsParams</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getDiversifyLnsParams</span>()</div>
<div class="block"><pre>
If true, registers more lns subsolvers with different parameters.
</pre>
<code>optional bool diversify_lns_params = 137 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getDiversifyLnsParams()">getDiversifyLnsParams</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The diversifyLnsParams.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasRandomizeSearch()">
<h3>hasRandomizeSearch</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasRandomizeSearch</span>()</div>
<div class="block"><pre>
Randomize fixed search.
</pre>
<code>optional bool randomize_search = 103 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasRandomizeSearch()">hasRandomizeSearch</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the randomizeSearch field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRandomizeSearch()">
<h3>getRandomizeSearch</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getRandomizeSearch</span>()</div>
<div class="block"><pre>
Randomize fixed search.
</pre>
<code>optional bool randomize_search = 103 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getRandomizeSearch()">getRandomizeSearch</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The randomizeSearch.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasSearchRandomizationTolerance()">
<h3>hasSearchRandomizationTolerance</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasSearchRandomizationTolerance</span>()</div>
<div class="block"><pre>
Search randomization will collect equivalent 'max valued' variables, and
pick one randomly. For instance, if the variable strategy is CHOOSE_FIRST,
all unassigned variables are equivalent. If the variable strategy is
CHOOSE_LOWEST_MIN, and `lm` is the current lowest min of all unassigned
variables, then the set of max valued variables will be all unassigned
variables where
lm &lt;= variable min &lt;= lm + search_randomization_tolerance
</pre>
<code>optional int64 search_randomization_tolerance = 104 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasSearchRandomizationTolerance()">hasSearchRandomizationTolerance</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the searchRandomizationTolerance field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSearchRandomizationTolerance()">
<h3>getSearchRandomizationTolerance</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name">getSearchRandomizationTolerance</span>()</div>
<div class="block"><pre>
Search randomization will collect equivalent 'max valued' variables, and
pick one randomly. For instance, if the variable strategy is CHOOSE_FIRST,
all unassigned variables are equivalent. If the variable strategy is
CHOOSE_LOWEST_MIN, and `lm` is the current lowest min of all unassigned
variables, then the set of max valued variables will be all unassigned
variables where
lm &lt;= variable min &lt;= lm + search_randomization_tolerance
</pre>
<code>optional int64 search_randomization_tolerance = 104 [default = 0];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSearchRandomizationTolerance()">getSearchRandomizationTolerance</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The searchRandomizationTolerance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseOptionalVariables()">
<h3>hasUseOptionalVariables</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseOptionalVariables</span>()</div>
<div class="block"><pre>
If true, we automatically detect variables whose constraint are always
enforced by the same literal and we mark them as optional. This allows
to propagate them as if they were present in some situation.
</pre>
<code>optional bool use_optional_variables = 108 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseOptionalVariables()">hasUseOptionalVariables</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useOptionalVariables field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseOptionalVariables()">
<h3>getUseOptionalVariables</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseOptionalVariables</span>()</div>
<div class="block"><pre>
If true, we automatically detect variables whose constraint are always
enforced by the same literal and we mark them as optional. This allows
to propagate them as if they were present in some situation.
</pre>
<code>optional bool use_optional_variables = 108 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseOptionalVariables()">getUseOptionalVariables</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useOptionalVariables.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseExactLpReason()">
<h3>hasUseExactLpReason</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseExactLpReason</span>()</div>
<div class="block"><pre>
The solver usually exploit the LP relaxation of a model. If this option is
true, then whatever is infered by the LP will be used like an heuristic to
compute EXACT propagation on the IP. So with this option, there is no
numerical imprecision issues.
</pre>
<code>optional bool use_exact_lp_reason = 109 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseExactLpReason()">hasUseExactLpReason</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useExactLpReason field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseExactLpReason()">
<h3>getUseExactLpReason</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseExactLpReason</span>()</div>
<div class="block"><pre>
The solver usually exploit the LP relaxation of a model. If this option is
true, then whatever is infered by the LP will be used like an heuristic to
compute EXACT propagation on the IP. So with this option, there is no
numerical imprecision issues.
</pre>
<code>optional bool use_exact_lp_reason = 109 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseExactLpReason()">getUseExactLpReason</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useExactLpReason.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseBranchingInLp()">
<h3>hasUseBranchingInLp</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseBranchingInLp</span>()</div>
<div class="block"><pre>
If true, the solver attemts to generate more info inside lp propagator by
branching on some variables if certain criteria are met during the search
tree exploration.
</pre>
<code>optional bool use_branching_in_lp = 139 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseBranchingInLp()">hasUseBranchingInLp</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useBranchingInLp field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseBranchingInLp()">
<h3>getUseBranchingInLp</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseBranchingInLp</span>()</div>
<div class="block"><pre>
If true, the solver attemts to generate more info inside lp propagator by
branching on some variables if certain criteria are met during the search
tree exploration.
</pre>
<code>optional bool use_branching_in_lp = 139 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseBranchingInLp()">getUseBranchingInLp</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useBranchingInLp.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseCombinedNoOverlap()">
<h3>hasUseCombinedNoOverlap</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseCombinedNoOverlap</span>()</div>
<div class="block"><pre>
This can be beneficial if there is a lot of no-overlap constraints but a
relatively low number of different intervals in the problem. Like 1000
intervals, but 1M intervals in the no-overlap constraints covering them.
</pre>
<code>optional bool use_combined_no_overlap = 133 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseCombinedNoOverlap()">hasUseCombinedNoOverlap</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useCombinedNoOverlap field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseCombinedNoOverlap()">
<h3>getUseCombinedNoOverlap</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseCombinedNoOverlap</span>()</div>
<div class="block"><pre>
This can be beneficial if there is a lot of no-overlap constraints but a
relatively low number of different intervals in the problem. Like 1000
intervals, but 1M intervals in the no-overlap constraints covering them.
</pre>
<code>optional bool use_combined_no_overlap = 133 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseCombinedNoOverlap()">getUseCombinedNoOverlap</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useCombinedNoOverlap.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasCatchSigintSignal()">
<h3>hasCatchSigintSignal</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasCatchSigintSignal</span>()</div>
<div class="block"><pre>
Indicates if the CP-SAT layer should catch Control-C (SIGINT) signals
when calling solve. If set, catching the SIGINT signal will terminate the
search gracefully, as if a time limit was reached.
</pre>
<code>optional bool catch_sigint_signal = 135 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasCatchSigintSignal()">hasCatchSigintSignal</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the catchSigintSignal field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCatchSigintSignal()">
<h3>getCatchSigintSignal</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getCatchSigintSignal</span>()</div>
<div class="block"><pre>
Indicates if the CP-SAT layer should catch Control-C (SIGINT) signals
when calling solve. If set, catching the SIGINT signal will terminate the
search gracefully, as if a time limit was reached.
</pre>
<code>optional bool catch_sigint_signal = 135 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getCatchSigintSignal()">getCatchSigintSignal</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The catchSigintSignal.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasUseImpliedBounds()">
<h3>hasUseImpliedBounds</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasUseImpliedBounds</span>()</div>
<div class="block"><pre>
Stores and exploits "implied-bounds" in the solver. That is, relations of
the form literal =&gt; (var &gt;= bound). This is currently used to derive
stronger cuts.
</pre>
<code>optional bool use_implied_bounds = 144 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasUseImpliedBounds()">hasUseImpliedBounds</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the useImpliedBounds field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getUseImpliedBounds()">
<h3>getUseImpliedBounds</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getUseImpliedBounds</span>()</div>
<div class="block"><pre>
Stores and exploits "implied-bounds" in the solver. That is, relations of
the form literal =&gt; (var &gt;= bound). This is currently used to derive
stronger cuts.
</pre>
<code>optional bool use_implied_bounds = 144 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getUseImpliedBounds()">getUseImpliedBounds</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The useImpliedBounds.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPolishLpSolution()">
<h3>hasPolishLpSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPolishLpSolution</span>()</div>
<div class="block"><pre>
Whether we try to do a few degenerate iteration at the end of an LP solve
to minimize the fractionality of the integer variable in the basis. This
helps on some problems, but not so much on others. It also cost of bit of
time to do such polish step.
</pre>
<code>optional bool polish_lp_solution = 175 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasPolishLpSolution()">hasPolishLpSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the polishLpSolution field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPolishLpSolution()">
<h3>getPolishLpSolution</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getPolishLpSolution</span>()</div>
<div class="block"><pre>
Whether we try to do a few degenerate iteration at the end of an LP solve
to minimize the fractionality of the integer variable in the basis. This
helps on some problems, but not so much on others. It also cost of bit of
time to do such polish step.
</pre>
<code>optional bool polish_lp_solution = 175 [default = false];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getPolishLpSolution()">getPolishLpSolution</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The polishLpSolution.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasConvertIntervals()">
<h3>hasConvertIntervals</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasConvertIntervals</span>()</div>
<div class="block"><pre>
Temporary flag util the feature is more mature. This convert intervals to
the newer proto format that support affine start/var/end instead of just
variables.
</pre>
<code>optional bool convert_intervals = 177 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasConvertIntervals()">hasConvertIntervals</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the convertIntervals field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getConvertIntervals()">
<h3>getConvertIntervals</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getConvertIntervals</span>()</div>
<div class="block"><pre>
Temporary flag util the feature is more mature. This convert intervals to
the newer proto format that support affine start/var/end instead of just
variables.
</pre>
<code>optional bool convert_intervals = 177 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getConvertIntervals()">getConvertIntervals</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The convertIntervals.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasSymmetryLevel()">
<h3>hasSymmetryLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasSymmetryLevel</span>()</div>
<div class="block"><pre>
Whether we try to automatically detect the symmetries in a model and
exploit them. Currently, at level 1 we detect them in presolve and try
to fix Booleans. At level 2, we also do some form of dynamic symmetry
breaking during search.
</pre>
<code>optional int32 symmetry_level = 183 [default = 2];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasSymmetryLevel()">hasSymmetryLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the symmetryLevel field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSymmetryLevel()">
<h3>getSymmetryLevel</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getSymmetryLevel</span>()</div>
<div class="block"><pre>
Whether we try to automatically detect the symmetries in a model and
exploit them. Currently, at level 1 we detect them in presolve and try
to fix Booleans. At level 2, we also do some form of dynamic symmetry
breaking during search.
</pre>
<code>optional int32 symmetry_level = 183 [default = 2];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getSymmetryLevel()">getSymmetryLevel</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The symmetryLevel.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMipMaxBound()">
<h3>hasMipMaxBound</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMipMaxBound</span>()</div>
<div class="block"><pre>
We need to bound the maximum magnitude of the variables for CP-SAT, and
that is the bound we use. If the MIP model expect larger variable value in
the solution, then the converted model will likely not be relevant.
</pre>
<code>optional double mip_max_bound = 124 [default = 10000000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMipMaxBound()">hasMipMaxBound</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the mipMaxBound field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMipMaxBound()">
<h3>getMipMaxBound</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMipMaxBound</span>()</div>
<div class="block"><pre>
We need to bound the maximum magnitude of the variables for CP-SAT, and
that is the bound we use. If the MIP model expect larger variable value in
the solution, then the converted model will likely not be relevant.
</pre>
<code>optional double mip_max_bound = 124 [default = 10000000];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMipMaxBound()">getMipMaxBound</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The mipMaxBound.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMipVarScaling()">
<h3>hasMipVarScaling</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMipVarScaling</span>()</div>
<div class="block"><pre>
All continuous variable of the problem will be multiplied by this factor.
By default, we don't do any variable scaling and rely on the MIP model to
specify continuous variable domain with the wanted precision.
</pre>
<code>optional double mip_var_scaling = 125 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMipVarScaling()">hasMipVarScaling</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the mipVarScaling field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMipVarScaling()">
<h3>getMipVarScaling</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMipVarScaling</span>()</div>
<div class="block"><pre>
All continuous variable of the problem will be multiplied by this factor.
By default, we don't do any variable scaling and rely on the MIP model to
specify continuous variable domain with the wanted precision.
</pre>
<code>optional double mip_var_scaling = 125 [default = 1];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMipVarScaling()">getMipVarScaling</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The mipVarScaling.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMipAutomaticallyScaleVariables()">
<h3>hasMipAutomaticallyScaleVariables</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMipAutomaticallyScaleVariables</span>()</div>
<div class="block"><pre>
If true, some continuous variable might be automatically scaled. For now,
this is only the case where we detect that a variable is actually an
integer multiple of a constant. For instance, variables of the form k * 0.5
are quite frequent, and if we detect this, we will scale such variable
domain by 2 to make it implied integer.
</pre>
<code>optional bool mip_automatically_scale_variables = 166 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMipAutomaticallyScaleVariables()">hasMipAutomaticallyScaleVariables</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the mipAutomaticallyScaleVariables field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMipAutomaticallyScaleVariables()">
<h3>getMipAutomaticallyScaleVariables</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getMipAutomaticallyScaleVariables</span>()</div>
<div class="block"><pre>
If true, some continuous variable might be automatically scaled. For now,
this is only the case where we detect that a variable is actually an
integer multiple of a constant. For instance, variables of the form k * 0.5
are quite frequent, and if we detect this, we will scale such variable
domain by 2 to make it implied integer.
</pre>
<code>optional bool mip_automatically_scale_variables = 166 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMipAutomaticallyScaleVariables()">getMipAutomaticallyScaleVariables</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The mipAutomaticallyScaleVariables.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMipWantedPrecision()">
<h3>hasMipWantedPrecision</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMipWantedPrecision</span>()</div>
<div class="block"><pre>
When scaling constraint with double coefficients to integer coefficients,
we will multiply by a power of 2 and round the coefficients. We will choose
the lowest power such that we have no potential overflow (see
mip_max_activity_exponent) and the worst case constraint activity error
does not exceed this threshold.
Note that we also detect constraint with rational coefficients and scale
them accordingly when it seems better instead of using a power of 2.
We also relax all constraint bounds by this absolute value. For pure
integer constraint, if this value if lower than one, this will not change
anything. However it is needed when scaling MIP problems.
If we manage to scale a constraint correctly, the maximum error we can make
will be twice this value (once for the scaling error and once for the
relaxed bounds). If we are not able to scale that well, we will display
that fact but still scale as best as we can.
</pre>
<code>optional double mip_wanted_precision = 126 [default = 1e-06];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMipWantedPrecision()">hasMipWantedPrecision</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the mipWantedPrecision field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMipWantedPrecision()">
<h3>getMipWantedPrecision</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMipWantedPrecision</span>()</div>
<div class="block"><pre>
When scaling constraint with double coefficients to integer coefficients,
we will multiply by a power of 2 and round the coefficients. We will choose
the lowest power such that we have no potential overflow (see
mip_max_activity_exponent) and the worst case constraint activity error
does not exceed this threshold.
Note that we also detect constraint with rational coefficients and scale
them accordingly when it seems better instead of using a power of 2.
We also relax all constraint bounds by this absolute value. For pure
integer constraint, if this value if lower than one, this will not change
anything. However it is needed when scaling MIP problems.
If we manage to scale a constraint correctly, the maximum error we can make
will be twice this value (once for the scaling error and once for the
relaxed bounds). If we are not able to scale that well, we will display
that fact but still scale as best as we can.
</pre>
<code>optional double mip_wanted_precision = 126 [default = 1e-06];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMipWantedPrecision()">getMipWantedPrecision</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The mipWantedPrecision.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMipMaxActivityExponent()">
<h3>hasMipMaxActivityExponent</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMipMaxActivityExponent</span>()</div>
<div class="block"><pre>
To avoid integer overflow, we always force the maximum possible constraint
activity (and objective value) according to the initial variable domain to
be smaller than 2 to this given power. Because of this, we cannot always
reach the "mip_wanted_precision" parameter above.
This can go as high as 62, but some internal algo currently abort early if
they might run into integer overflow, so it is better to keep it a bit
lower than this.
</pre>
<code>optional int32 mip_max_activity_exponent = 127 [default = 53];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMipMaxActivityExponent()">hasMipMaxActivityExponent</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the mipMaxActivityExponent field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMipMaxActivityExponent()">
<h3>getMipMaxActivityExponent</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMipMaxActivityExponent</span>()</div>
<div class="block"><pre>
To avoid integer overflow, we always force the maximum possible constraint
activity (and objective value) according to the initial variable domain to
be smaller than 2 to this given power. Because of this, we cannot always
reach the "mip_wanted_precision" parameter above.
This can go as high as 62, but some internal algo currently abort early if
they might run into integer overflow, so it is better to keep it a bit
lower than this.
</pre>
<code>optional int32 mip_max_activity_exponent = 127 [default = 53];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMipMaxActivityExponent()">getMipMaxActivityExponent</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The mipMaxActivityExponent.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMipCheckPrecision()">
<h3>hasMipCheckPrecision</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMipCheckPrecision</span>()</div>
<div class="block"><pre>
As explained in mip_precision and mip_max_activity_exponent, we cannot
always reach the wanted precision during scaling. We use this threshold to
enphasize in the logs when the precision seems bad.
</pre>
<code>optional double mip_check_precision = 128 [default = 0.0001];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMipCheckPrecision()">hasMipCheckPrecision</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the mipCheckPrecision field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMipCheckPrecision()">
<h3>getMipCheckPrecision</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMipCheckPrecision</span>()</div>
<div class="block"><pre>
As explained in mip_precision and mip_max_activity_exponent, we cannot
always reach the wanted precision during scaling. We use this threshold to
enphasize in the logs when the precision seems bad.
</pre>
<code>optional double mip_check_precision = 128 [default = 0.0001];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMipCheckPrecision()">getMipCheckPrecision</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The mipCheckPrecision.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMipComputeTrueObjectiveBound()">
<h3>hasMipComputeTrueObjectiveBound</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMipComputeTrueObjectiveBound</span>()</div>
<div class="block"><pre>
Even if we make big error when scaling the objective, we can always derive
a correct lower bound on the original objective by using the exact lower
bound on the scaled integer version of the objective. This should be fast,
but if you don't care about having a precise lower bound, you can turn it
off.
</pre>
<code>optional bool mip_compute_true_objective_bound = 198 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMipComputeTrueObjectiveBound()">hasMipComputeTrueObjectiveBound</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the mipComputeTrueObjectiveBound field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMipComputeTrueObjectiveBound()">
<h3>getMipComputeTrueObjectiveBound</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getMipComputeTrueObjectiveBound</span>()</div>
<div class="block"><pre>
Even if we make big error when scaling the objective, we can always derive
a correct lower bound on the original objective by using the exact lower
bound on the scaled integer version of the objective. This should be fast,
but if you don't care about having a precise lower bound, you can turn it
off.
</pre>
<code>optional bool mip_compute_true_objective_bound = 198 [default = true];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMipComputeTrueObjectiveBound()">getMipComputeTrueObjectiveBound</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The mipComputeTrueObjectiveBound.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasMipMaxValidMagnitude()">
<h3>hasMipMaxValidMagnitude</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasMipMaxValidMagnitude</span>()</div>
<div class="block"><pre>
Any finite values in the input MIP must be below this threshold, otherwise
the model will be reported invalid. This is needed to avoid floating point
overflow when evaluating bounds * coeff for instance. We are a bit more
defensive, but in practice, users shouldn't use super large values in a
MIP.
</pre>
<code>optional double mip_max_valid_magnitude = 199 [default = 1e+30];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#hasMipMaxValidMagnitude()">hasMipMaxValidMagnitude</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>Whether the mipMaxValidMagnitude field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMipMaxValidMagnitude()">
<h3>getMipMaxValidMagnitude</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getMipMaxValidMagnitude</span>()</div>
<div class="block"><pre>
Any finite values in the input MIP must be below this threshold, otherwise
the model will be reported invalid. This is needed to avoid floating point
overflow when evaluating bounds * coeff for instance. We are a bit more
defensive, but in practice, users shouldn't use super large values in a
MIP.
</pre>
<code>optional double mip_max_valid_magnitude = 199 [default = 1e+30];</code></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="SatParametersOrBuilder.html#getMipMaxValidMagnitude()">getMipMaxValidMagnitude</a></code>&nbsp;in interface&nbsp;<code><a href="SatParametersOrBuilder.html" title="interface in com.google.ortools.sat">SatParametersOrBuilder</a></code></dd>
<dt>Returns:</dt>
<dd>The mipMaxValidMagnitude.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isInitialized()">
<h3>isInitialized</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isInitialized</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>isInitialized</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.MessageLiteOrBuilder</code></dd>
<dt>Overrides:</dt>
<dd><code>isInitialized</code>&nbsp;in class&nbsp;<code>com.google.protobuf.GeneratedMessageV3</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="writeTo(com.google.protobuf.CodedOutputStream)">
<h3>writeTo</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">writeTo</span><wbr><span class="parameters">(com.google.protobuf.CodedOutputStream&nbsp;output)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>writeTo</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.MessageLite</code></dd>
<dt>Overrides:</dt>
<dd><code>writeTo</code>&nbsp;in class&nbsp;<code>com.google.protobuf.GeneratedMessageV3</code></dd>
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSerializedSize()">
<h3>getSerializedSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getSerializedSize</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getSerializedSize</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.MessageLite</code></dd>
<dt>Overrides:</dt>
<dd><code>getSerializedSize</code>&nbsp;in class&nbsp;<code>com.google.protobuf.GeneratedMessageV3</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="equals(java.lang.Object)">
<h3>equals</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">equals</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>&nbsp;obj)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>equals</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.Message</code></dd>
<dt>Overrides:</dt>
<dd><code>equals</code>&nbsp;in class&nbsp;<code>com.google.protobuf.AbstractMessage</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hashCode()">
<h3>hashCode</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">hashCode</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>hashCode</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.Message</code></dd>
<dt>Overrides:</dt>
<dd><code>hashCode</code>&nbsp;in class&nbsp;<code>com.google.protobuf.AbstractMessage</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseFrom(java.nio.ByteBuffer)">
<h3>parseFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseFrom</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html" title="class or interface in java.nio" class="external-link">ByteBuffer</a>&nbsp;data)</span>
throws <span class="exceptions">com.google.protobuf.InvalidProtocolBufferException</span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code>com.google.protobuf.InvalidProtocolBufferException</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseFrom(java.nio.ByteBuffer,com.google.protobuf.ExtensionRegistryLite)">
<h3>parseFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseFrom</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html" title="class or interface in java.nio" class="external-link">ByteBuffer</a>&nbsp;data,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</span>
throws <span class="exceptions">com.google.protobuf.InvalidProtocolBufferException</span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code>com.google.protobuf.InvalidProtocolBufferException</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseFrom(com.google.protobuf.ByteString)">
<h3>parseFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseFrom</span><wbr><span class="parameters">(com.google.protobuf.ByteString&nbsp;data)</span>
throws <span class="exceptions">com.google.protobuf.InvalidProtocolBufferException</span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code>com.google.protobuf.InvalidProtocolBufferException</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseFrom(com.google.protobuf.ByteString,com.google.protobuf.ExtensionRegistryLite)">
<h3>parseFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseFrom</span><wbr><span class="parameters">(com.google.protobuf.ByteString&nbsp;data,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</span>
throws <span class="exceptions">com.google.protobuf.InvalidProtocolBufferException</span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code>com.google.protobuf.InvalidProtocolBufferException</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseFrom(byte[])">
<h3>parseFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseFrom</span><wbr><span class="parameters">(byte[]&nbsp;data)</span>
throws <span class="exceptions">com.google.protobuf.InvalidProtocolBufferException</span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code>com.google.protobuf.InvalidProtocolBufferException</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseFrom(byte[],com.google.protobuf.ExtensionRegistryLite)">
<h3>parseFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseFrom</span><wbr><span class="parameters">(byte[]&nbsp;data,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</span>
throws <span class="exceptions">com.google.protobuf.InvalidProtocolBufferException</span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code>com.google.protobuf.InvalidProtocolBufferException</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseFrom(java.io.InputStream)">
<h3>parseFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseFrom</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html" title="class or interface in java.io" class="external-link">InputStream</a>&nbsp;input)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseFrom(java.io.InputStream,com.google.protobuf.ExtensionRegistryLite)">
<h3>parseFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseFrom</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html" title="class or interface in java.io" class="external-link">InputStream</a>&nbsp;input,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseDelimitedFrom(java.io.InputStream)">
<h3>parseDelimitedFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseDelimitedFrom</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html" title="class or interface in java.io" class="external-link">InputStream</a>&nbsp;input)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseDelimitedFrom(java.io.InputStream,com.google.protobuf.ExtensionRegistryLite)">
<h3>parseDelimitedFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseDelimitedFrom</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html" title="class or interface in java.io" class="external-link">InputStream</a>&nbsp;input,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseFrom(com.google.protobuf.CodedInputStream)">
<h3>parseFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseFrom</span><wbr><span class="parameters">(com.google.protobuf.CodedInputStream&nbsp;input)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseFrom(com.google.protobuf.CodedInputStream,com.google.protobuf.ExtensionRegistryLite)">
<h3>parseFrom</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">parseFrom</span><wbr><span class="parameters">(com.google.protobuf.CodedInputStream&nbsp;input,
com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="newBuilderForType()">
<h3>newBuilderForType</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.Builder.html" title="class in com.google.ortools.sat">SatParameters.Builder</a></span>&nbsp;<span class="element-name">newBuilderForType</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>newBuilderForType</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.Message</code></dd>
<dt>Specified by:</dt>
<dd><code>newBuilderForType</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.MessageLite</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="newBuilder()">
<h3>newBuilder</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.Builder.html" title="class in com.google.ortools.sat">SatParameters.Builder</a></span>&nbsp;<span class="element-name">newBuilder</span>()</div>
</section>
</li>
<li>
<section class="detail" id="newBuilder(com.google.ortools.sat.SatParameters)">
<h3>newBuilder</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.Builder.html" title="class in com.google.ortools.sat">SatParameters.Builder</a></span>&nbsp;<span class="element-name">newBuilder</span><wbr><span class="parameters">(<a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a>&nbsp;prototype)</span></div>
</section>
</li>
<li>
<section class="detail" id="toBuilder()">
<h3>toBuilder</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.Builder.html" title="class in com.google.ortools.sat">SatParameters.Builder</a></span>&nbsp;<span class="element-name">toBuilder</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>toBuilder</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.Message</code></dd>
<dt>Specified by:</dt>
<dd><code>toBuilder</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.MessageLite</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent)">
<h3>newBuilderForType</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="return-type"><a href="SatParameters.Builder.html" title="class in com.google.ortools.sat">SatParameters.Builder</a></span>&nbsp;<span class="element-name">newBuilderForType</span><wbr><span class="parameters">(com.google.protobuf.GeneratedMessageV3.BuilderParent&nbsp;parent)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>newBuilderForType</code>&nbsp;in class&nbsp;<code>com.google.protobuf.GeneratedMessageV3</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDefaultInstance()">
<h3>getDefaultInstance</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">getDefaultInstance</span>()</div>
</section>
</li>
<li>
<section class="detail" id="parser()">
<h3>parser</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">com.google.protobuf.Parser&lt;<a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a>&gt;</span>&nbsp;<span class="element-name">parser</span>()</div>
</section>
</li>
<li>
<section class="detail" id="getParserForType()">
<h3>getParserForType</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">com.google.protobuf.Parser&lt;<a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a>&gt;</span>&nbsp;<span class="element-name">getParserForType</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getParserForType</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.Message</code></dd>
<dt>Specified by:</dt>
<dd><code>getParserForType</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.MessageLite</code></dd>
<dt>Overrides:</dt>
<dd><code>getParserForType</code>&nbsp;in class&nbsp;<code>com.google.protobuf.GeneratedMessageV3</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDefaultInstanceForType()">
<h3>getDefaultInstanceForType</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="SatParameters.html" title="class in com.google.ortools.sat">SatParameters</a></span>&nbsp;<span class="element-name">getDefaultInstanceForType</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getDefaultInstanceForType</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.MessageLiteOrBuilder</code></dd>
<dt>Specified by:</dt>
<dd><code>getDefaultInstanceForType</code>&nbsp;in interface&nbsp;<code>com.google.protobuf.MessageOrBuilder</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2022. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>