Commit Graph

80 Commits

Author SHA1 Message Date
Laurent Perron
3ed32f3dd3 [CP-SAT] Add new scheduling lns; improve cover cuts; improve the propagation of the timetable constraint; speed-up domination detection (abort early if possible); remove deprecated knapsack cut code 2022-05-09 14:44:50 +02:00
Laurent Perron
13dbe6a387 [CP-SAT] fix crash in core search and in presolve; add more needed stl includes 2022-03-14 15:06:11 +01:00
Laurent Perron
c82cfdc9ad remove map_util from most of the code; absl::make_unique and absl::optional -> stl version 2022-03-09 09:08:40 +01:00
Laurent Perron
19667205a2 std::set/map -> absl::btree_set/map 2022-02-25 09:47:39 +01:00
Laurent Perron
57a84edf47 backtrack last PR 2022-02-24 17:58:22 +01:00
Laurent Perron
f1191a0e8f maintenance on the CP-SAT core 2022-02-24 17:41:17 +01:00
Laurent Perron
5e41f40c2f remove range-loop warnings from the sat code 2022-02-24 14:17:43 +01:00
Laurent Perron
6d7ea81ae7 few bugfixes in CP-SAT 2022-02-23 17:10:23 +01:00
Laurent Perron
951e8bbc1e bump pdlp; add log to linear_solver proto; fix bug in CP-SAT 2022-02-21 17:26:34 +01:00
Laurent Perron
3e271e778e [CP-SAT] fix cores 2022-02-17 17:12:15 +01:00
Laurent Perron
29662f2006 [CP-SAT] Improve assumptions algorithm; tweak lb_tree_search 2022-02-17 16:20:21 +01:00
Laurent Perron
f38a0418d1 [CP-SAT] polish code 2022-02-16 14:57:41 +01: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
9d97d2f73c misc rename 2022-02-14 16:42:38 +01:00
Laurent Perron
d78ce574fc [CP-SAT] inactive max_hs code; use better core code when the objective is pseudo-boolean 2022-02-14 13:31:52 +01:00
Laurent Perron
0274d021cc [CP-SAT] reduce amount of logging 2022-02-11 13:40:22 +01:00
Laurent Perron
89ea9e4eeb [CP-SAT] improve presolve on combinations of linear constraints; stricter validation of models coming from MPSolver; remove some contentions on the mutex regulating workers new info shared centrally; remove wrongs DCHECKs in the expansion phase; rewrite multithreading and workers control; allows specifying which workers to run in the portfolio; periodically import shared info in lb_tree_search 2022-02-09 10:52:29 +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
18d001912d remove ortools/base/random.h|cc; adapt code everywhere; increase robustness of glop preprocessor 2021-12-06 14:03:19 +01:00
Laurent Perron
dd85ab7a03 [CP-SAT] reorganize loader/linear_relaxation/cut code; improve SchedulingConstraintHelper; fix/speedup diffn propagation and cuts 2021-06-04 08:35:20 +02:00
Laurent Perron
9d916b7f55 [CP-SAT] rewrite diffn propagation; refactor completion time cut generation; add diffn cuts; fix rare bug with cores 2021-05-29 17:56:46 +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
Laurent Perron
bad5c2032b int64 -> int64_t 2021-03-04 18:26:01 +01:00
Laurent Perron
948476129c add support for model deep copy in C++ and python; increase the frequency of time limit checks in code solving 2021-02-17 16:42:54 +01:00
Laurent Perron
a922f677e6 simplify CP-SAT java code; incorporate loader in cp-sat java samples 2020-11-03 18:40:54 +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
76871a4403 fix bugs in CP-SAT 2020-10-06 17:57:20 +02:00
Laurent Perron
484aafb903 A few fixes on CP-SAT; work on scheduling LP cuts 2020-10-01 18:08:34 +02:00
Mizux Seiha
f087564d84 cpp: Format all files in ortools 2020-09-23 12:06:10 +02:00
Laurent Perron
2bb2115cdc add initial implementation of cover cuts 2020-09-03 17:50:04 +02:00
Laurent Perron
8ad3e58c6c [CP-SAT]: Fix overflow in feasibility pump; improve rounding heuristics in feasibility pump; implement better algorithm to provide explanation of infeasibility; work on max hitting set implementation for core based search 2020-07-13 17:10:13 +02:00
Laurent Perron
e28a499b0f [CP-SAT] improve feasibility pump; improve scaling of linear model; internal improvements 2020-07-05 00:29:47 +02:00
Laurent Perron
dd6fbc32b1 move MakeCleanup from gtl:: to absl::; CP-SAT improvements 2020-02-05 11:27:02 +01:00
Laurent Perron
f9f2d7b5b4 [CP-SAT] improve presolve; improve linear subsystem 2019-12-16 12:34:56 +01:00
Laurent Perron
2ff000ab9a bump abseil to the latest version, adapt the code all around 2019-11-20 14:28:11 -08:00
Laurent Perron
9a359a99c1 improve presolve in CP-SAT 2019-11-06 16:53:34 +01:00
Laurent Perron
7a32b16f12 speedup presolve and loader 2019-10-23 15:42:35 +02:00
Laurent Perron
5008ff2bed fix bazel 2019-10-18 15:50:55 +02:00
Laurent Perron
98b59bc5e2 continue re-architecture of CP-SAT search 2019-07-05 09:33:04 +02:00
Laurent Perron
739ae3d17f restructure LNS code in CP-SAT; add linear relaxation and dynamic cuts for product in CP-SAT; bug fixes 2019-06-20 17:16:59 +02:00
Laurent Perron
3a99c0ee1b fix bug in CP-SAT checker with sparse circuit constraint; continue re-architecture core code; minor reindent of cp_model.py 2019-06-17 18:27:56 +02:00
Laurent Perron
345f60d929 core 2019-06-17 16:12:29 +02:00
Laurent Perron
0eb9bd84c3 speed-up CP-SAT Scheduling code; remove doc made obsolete by github pages 2019-06-13 16:37:06 +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
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
f47f804a5b improve precision handling in CP-SAT/GLOP and in routing/GLOP 2019-04-18 13:29:21 +02:00