dotnet: Remove reference to dotnet release command

- Currently not implemented...

Add abseil patch

- Add patches/absl-config.cmake

Makefile: Add abseil-cpp on unix

- Force abseil-cpp SHA1 to 45221cc
  note: Just before the PR #136 which break all CMake

Makefile: Add abseil-cpp on windows

- Force abseil-cpp SHA1 to 45221cc
  note: Just before the PR #136 which break all CMake

CMake: Add abseil-cpp

- Force abseil-cpp SHA1 to 45221cc
  note: Just before the PR #136 which break all CMake

port to absl: C++ Part

- Fix warning with the use of ABSL_MUST_USE_RESULT
  > The macro must appear as the very first part of a function
    declaration or definition:
    ...
    Note: past advice was to place the macro after the argument list.
  src: dependencies/sources/abseil-cpp-master/absl/base/attributes.h:418
- Rename enum after windows clash
- Remove non compact table constraints
- Change index type from int64 to int in routing library
- Fix file_nonport compilation on windows
- Fix another naming conflict with windows (NO_ERROR is a macro)
- Cleanup hash containers; work on sat internals
- Add optional_boolean sub-proto

Sync cpp examples with internal code
- reenable issue173 after reducing number of loops

port to absl: Python Part

- Add back cp_model.INT32_MIN|MAX for examples

Update Python examples

- Add random_tsp.py
- Run words_square example
- Run magic_square in python tests

port to absl: Java Part

- Fix compilation of the new routing parameters in java
- Protect some code from SWIG parsing

Update Java Examples

port to absl: .Net Part

Update .Net examples

work on sat internals; Add C++ CP-SAT CpModelBuilder API; update sample code and recipes to use the new API; sync with internal code

Remove VS 2015 in Appveyor-CI

- abseil-cpp does not support VS 2015...

improve tables

upgrade C++ sat examples to use the new API; work on sat internals

update license dates

rewrite jobshop_ft06_distance.py to use the CP-SAT solver

rename last example

revert last commit

more work on SAT internals

fix
This commit is contained in:
Corentin Le Molgat
2018-10-31 16:18:18 +01:00
parent 745906cb7c
commit b027e57e95
490 changed files with 92044 additions and 24779 deletions

View File

@@ -23,9 +23,12 @@ package operations_research;
// First solution strategies, used as starting point of local search.
message FirstSolutionStrategy {
enum Value {
// See the homonymous value in LocalSearchMetaheuristic.
UNSET = 0;
// Lets the solver detect which strategy to use according to the model being
// solved.
AUTOMATIC = 0;
AUTOMATIC = 15;
// --- Path addition heuristics ---
// Starting from a route "start" node, connect it to the node which produces
@@ -72,14 +75,20 @@ message FirstSolutionStrategy {
// optional nodes (with finite penalty costs).
BEST_INSERTION = 7;
// Iteratively build a solution by inserting the cheapest node at its
// cheapest position; the cost of insertion is based on the the arc cost
// cheapest position; the cost of insertion is based on the arc cost
// function. Is faster than BEST_INSERTION.
PARALLEL_CHEAPEST_INSERTION = 8;
// Iteratively build a solution by constructing routes sequentially, for
// each route inserting the cheapest node at its cheapest position until the
// route is completed; the cost of insertion is based on the arc cost
// function. Is faster than PARALLEL_CHEAPEST_INSERTION.
SEQUENTIAL_CHEAPEST_INSERTION = 14;
// Iteratively build a solution by inserting each node at its cheapest
// position; the cost of insertion is based on the the arc cost function.
// position; the cost of insertion is based on the arc cost function.
// Differs from PARALLEL_CHEAPEST_INSERTION by the node selected for
// insertion; here nodes are considered in their order of creation. Is
// faster than PARALLEL_CHEAPEST_INSERTION.
// insertion; here nodes are considered in decreasing order of distance to
// the start/ends of the routes, i.e. farthest nodes are inserted first.
// Is faster than SEQUENTIAL_CHEAPEST_INSERTION.
LOCAL_CHEAPEST_INSERTION = 9;
// --- Variable-based heuristics ---
@@ -100,8 +109,13 @@ message FirstSolutionStrategy {
// descent, they will try to escape local minima.
message LocalSearchMetaheuristic {
enum Value {
// Means "not set". If the solver sees that, it'll behave like for
// AUTOMATIC. But this value won't override others upon a proto MergeFrom(),
// whereas "AUTOMATIC" will.
UNSET = 0;
// Lets the solver select the metaheuristic.
AUTOMATIC = 0;
AUTOMATIC = 6;
// Accepts improving (cost-reducing) local search neighbors until a local
// minimum is reached.
@@ -116,8 +130,9 @@ message LocalSearchMetaheuristic {
// Uses tabu search to escape local minima
// (cf. http://en.wikipedia.org/wiki/Tabu_search).
TABU_SEARCH = 4;
// Uses tabu search on the objective value of solution to escape local
// minima
OBJECTIVE_TABU_SEARCH = 5;
// Uses tabu search on a list of variables to escape local minima. The list
// of variables to use must be provided via the SetTabuVarsCallback
// callback.
GENERIC_TABU_SEARCH = 5;
}
}