62 Commits

Author SHA1 Message Date
Laurent Perron
54b8c24839 big graph cleaning; rewrite CP-SAT python layer; rewrite model_builder python layer; reorganize CP-SAT scheduling and packing code 2025-01-15 13:51:40 +01:00
Corentin Le Molgat
a66a6daac7 Bump Copyright to 2025 2025-01-10 11:35:44 +01:00
Laurent Perron
dba2281f13 [CP-SAT] more work on no_overlap_2d; revisit all includes 2024-12-04 17:47:28 +01:00
Laurent Perron
503b038dfc [CP-SAT] optimize binary implication graph; rewrite some no_overlap_2d constraints; lot of spans 2024-11-28 15:52:59 +01:00
Mizux Seiha
a76bf1c5dd bump license boilerplate 2024-01-04 13:43:15 +01:00
Laurent Perron
224a38f87f cleanup code 2023-05-24 11:42:11 +02:00
Laurent Perron
87ca4f58ad [CP-SAT] bump license years; fix scheduling cuts; improve lb_tree_search 2022-06-16 15:21:00 +02:00
Laurent Perron
8fe2df9a18 [CP-SAT] regenerates all includes; improve core solver when the objective is pseudo-boolean 2022-02-15 18:00:11 +01:00
Laurent Perron
321d02c17c more strong integer types; use them in CP-SAT; polish shaving code; remove 1 overflow in cuts 2022-02-07 14:31:18 +01:00
Laurent Perron
068a71104a [CP-SAT] fix cumulative presolve; use strong_index 2022-02-04 14:20:08 +01:00
Corentin Le Molgat
4defaa23ed Export strong_int.h 2022-01-31 18:44:25 +01:00
Laurent Perron
f317305497 remove dead code 2021-10-21 14:35:28 +02:00
Laurent Perron
4482483be3 [CP-SAT] remove dead code 2021-10-21 13:37:15 +02:00
Laurent Perron
1c512fd12d change a bit the export code: propagate effect 2021-09-07 11:53:01 +02:00
Mizux Seiha
8bb54b04ef Bump Copyright to 2021
FYI:
find ortools \( -type d -name .git -prune \) -o -type f -print0 | xargs -0 sed -i 's/\(Copyright 2010\)-2018/\1-2021/g'
2021-04-01 21:00:53 +02:00
Corentin Le Molgat
a40143cdd2 cpp: Migrate int64 to int64_t 2021-04-01 20:20:43 +02:00
Laurent Perron
bad5c2032b int64 -> int64_t 2021-03-04 18:26:01 +01:00
Laurent Perron
6467dc69b0 reformat the code; [CP-SAT] add dominated columns presolve 2020-10-28 13:42:51 +01:00
Mizux Seiha
20d0496bfb reapply google format 2020-10-23 00:45:17 +02:00
Laurent Perron
a4258f2bdf switch flags setters and getters to the absl format 2020-10-21 00:21:54 +02:00
Laurent Perron
0ba997ada1 speed up cut management; expand negated table constraints 2020-03-11 17:53:22 +01:00
Laurent Perron
28cb8de52b CP-SAT loader improvements 2019-08-27 15:10:36 +02:00
Laurent Perron
09655b81ea add LinearExpr.Term() API; improve internals 2019-08-22 13:15:49 +02:00
Laurent Perron
5973e2bc1d make table deterministic 2019-05-20 14:31:01 +02:00
Laurent Perron
0f2fe9e578 better presolve of int_max, make extraction of size 2 table constraint deterministic; internal cleanup of CP-SAT search internals 2019-05-10 23:26:49 +02:00
Laurent Perron
71a85b4a0d more work on CP-SAT table 2019-04-19 18:26:29 +02:00
Laurent Perron
0d8a6aeb39 improve robustness of GLOP; continue rewriting of CP-SAT search internals; fix table extraction 2019-04-18 16:34:36 +02:00
Laurent Perron
e6cce4540a fix sat table 2019-04-17 22:43:39 +02:00
Laurent Perron
e6d9c3659e do not created negated table when too big 2019-04-16 13:10:45 -07:00
Laurent Perron
efe8925b38 remove extra space 2019-04-16 11:28:04 -07:00
Laurent Perron
6e3d1a2000 polish table extraction in CP-SAT 2019-04-16 11:19:21 -07:00
Laurent Perron
0d443c3569 split and rewrite CP-SAT search 2019-04-16 09:25:34 -07:00
Laurent Perron
6b230b3b83 rewrite internal search workflow for CP-SAT 2019-04-15 08:54:06 -07:00
Laurent Perron
6dba5ea7f0 simple tsp_sat example 2019-04-10 10:46:10 -07:00
Laurent Perron
fec0768323 use Pseudo-cost in parallel search; change automata to automaton in cp_model.proto 2019-02-01 18:32:13 +01:00
Laurent Perron
315f7e2050 fix wrong unsat 2019-01-24 07:21:50 -08:00
Laurent Perron
2976284069 simple heuristic to fully encode variables in negated table 2019-01-24 05:11:22 -08:00
Laurent Perron
f0e7b35433 rework table compression; merge two negated table code 2019-01-23 13:21:48 -08:00
Laurent Perron
7a7d5e4bdc fix 2019-01-23 03:58:10 +01:00
Laurent Perron
26ba124ce9 fix 2019-01-23 02:43:07 +01:00
Laurent Perron
cfbb84c60c compress tables in CP-SAT 2019-01-23 01:14:36 +01:00
Corentin Le Molgat
b027e57e95 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
2018-11-30 14:48:55 +01:00
Laurent Perron
87b9d55b21 update license headers 2018-11-10 18:00:53 +01:00
Laurent Perron
e323bba2e7 backport sat improvements from the abseil branch 2018-11-05 16:24:47 +01:00
Laurent Perron
d44fb1b423 add missing swig rule; remove redundant constraint in sat table implementation 2018-10-15 13:41:52 +02:00
Laurent Perron
4e893e5080 remove solow-halim glop preprocessor as the interface has changed a lot; add a proper domain class for CP-SAT integer variables, rewrite preprocessor and other parts of the solver to use it 2018-10-02 10:35:52 +02:00
Laurent Perron
428e272ccc add ModelStats and CpSolverResponseStats for SAT/{Python|Java|C#}; enable multiple enforcement literals for a few constraints; small fixes, typo corrections 2018-09-12 15:07:23 +02:00
Laurent Perron
cc9eb375d5 add int_mod implementation (for constant modulo) in sat and fz-sat 2018-07-26 12:01:59 -07:00
Laurent Perron
b3856b5105 fix 2018-07-05 16:56:25 +02:00
Laurent Perron
70e73d8754 clang-format 2018-06-08 16:40:43 +02:00