sync after export tool change
This commit is contained in:
@@ -1027,6 +1027,7 @@ bool CoverCutHelper::TrySimpleKnapsack(const CutData& input) {
|
||||
alt_cut_.Clear();
|
||||
|
||||
base_ct_ = input;
|
||||
if (base_ct_.rhs < 0) return false;
|
||||
|
||||
// Now make each coeff positive.
|
||||
//
|
||||
|
||||
@@ -423,7 +423,7 @@ void GetOverlappingIntervalComponents(
|
||||
// If that becomes a performance bottleneck:
|
||||
// - One may want to sort the list outside of this function, and simply
|
||||
// have this function DCHECK that it's sorted by start.
|
||||
// - One may use std::stable_sort() with ComparatorByStart().
|
||||
// - One may use stable_sort() with ComparatorByStart().
|
||||
std::sort(intervals->begin(), intervals->end(),
|
||||
IndexedInterval::ComparatorByStartThenEndThenIndex());
|
||||
|
||||
|
||||
@@ -15,10 +15,10 @@ https://developers.google.com/optimization/cp/cp_solver
|
||||
* [Java code samples](#java-code-samples)
|
||||
* [C# code samples](#c-code-samples-1)
|
||||
|
||||
<!-- Created by https://github.com/ekalinin/github-markdown-toc -->
|
||||
|
||||
<!--te-->
|
||||
|
||||
|
||||
## Documentation structure
|
||||
|
||||
This document presents modeling recipes for the CP-SAT solver.
|
||||
@@ -184,7 +184,6 @@ public final class SimpleSatProgram {
|
||||
The C\# code implements the same interface as the Python code, with a
|
||||
**CpModel** and a **CpSolver** class.
|
||||
|
||||
|
||||
```cs
|
||||
using System;
|
||||
using Google.OrTools.Sat;
|
||||
|
||||
@@ -27,10 +27,10 @@ https://developers.google.com/optimization/
|
||||
* [Product of two Boolean Variables](#product-of-two-boolean-variables)
|
||||
* [Python code](#python-code-3)
|
||||
|
||||
<!-- Created by https://github.com/ekalinin/github-markdown-toc -->
|
||||
|
||||
<!--te-->
|
||||
|
||||
|
||||
## Introduction
|
||||
|
||||
The CP-SAT solver can express Boolean variables and constraints. A **Boolean
|
||||
|
||||
@@ -18,10 +18,10 @@ https://developers.google.com/optimization/
|
||||
* [Java code](#java-code-1)
|
||||
* [C# code](#c-code-3)
|
||||
|
||||
<!-- Created by https://github.com/ekalinin/github-markdown-toc -->
|
||||
|
||||
<!--te-->
|
||||
|
||||
|
||||
A *channeling constraint* links variables inside a model. They're used when you
|
||||
want to express a complicated relationship between variables, such as "if this
|
||||
variable satisfies a condition, force another variable to a particular value".
|
||||
|
||||
@@ -34,10 +34,10 @@ https://developers.google.com/optimization/
|
||||
* [Java code](#java-code-2)
|
||||
* [C# code](#c-code-5)
|
||||
|
||||
<!-- Created by https://github.com/ekalinin/github-markdown-toc -->
|
||||
|
||||
<!--te-->
|
||||
|
||||
|
||||
## Introduction
|
||||
|
||||
The CP-SAT solver can express integer variables and constraints.
|
||||
|
||||
@@ -17,10 +17,10 @@ https://developers.google.com/optimization/
|
||||
* [Python code](#python-code-1)
|
||||
* [C++ code](#c-code-2)
|
||||
|
||||
<!-- Created by https://github.com/ekalinin/github-markdown-toc -->
|
||||
|
||||
<!--te-->
|
||||
|
||||
|
||||
## Introduction
|
||||
|
||||
In all languages, the CpModel class is a thin wrapper around a
|
||||
|
||||
@@ -39,10 +39,10 @@ https://developers.google.com/optimization/
|
||||
* [Convex hull of a set of intervals](#convex-hull-of-a-set-of-intervals)
|
||||
* [Reservoir constraint](#reservoir-constraint)
|
||||
|
||||
<!-- Created by https://github.com/ekalinin/github-markdown-toc -->
|
||||
|
||||
<!--te-->
|
||||
|
||||
|
||||
## Introduction
|
||||
|
||||
Scheduling in Operations Research involves problems of tasks, resources and
|
||||
|
||||
@@ -28,10 +28,10 @@ https://developers.google.com/optimization/
|
||||
* [Java code](#java-code-2)
|
||||
* [C# code](#c-code-5)
|
||||
|
||||
<!-- Created by https://github.com/ekalinin/github-markdown-toc -->
|
||||
|
||||
<!--te-->
|
||||
|
||||
|
||||
## Changing the parameters of the solver
|
||||
|
||||
The SatParameters protobuf encapsulates the set of parameters of a CP-SAT
|
||||
|
||||
@@ -87,6 +87,7 @@ void RandomizeDecisionHeuristic(absl::BitGenRef random,
|
||||
namespace {
|
||||
|
||||
// This will be optimized into one division. I tested that in other places:
|
||||
// 3/ortools/sat/integer_test.cc;l=1223-1228;bpv=0
|
||||
//
|
||||
// Note that I am not 100% sure we need the indirection for the optimization
|
||||
// to kick in though, but this seemed safer given our weird r[i ^ 1] inputs.
|
||||
|
||||
Reference in New Issue
Block a user