42 Commits

Author SHA1 Message Date
Laurent Perron
56613156ce [CP-SAT] work on lrat; work in inprocessing; fix bug with reduced variables domains and hints 2025-12-01 17:44:18 +01:00
Corentin Le Molgat
1b4d75ceb3 sat: backport from main 2025-11-05 13:55:12 +01:00
Corentin Le Molgat
b4b226801b update include guards 2025-11-05 11:54:02 +01:00
Laurent Perron
df31847650 [CP-SAT] more model copy in its own library; few more fuzzer bugs fixed; add simple presolve rule 2025-01-24 14:11:24 +01:00
Corentin Le Molgat
a66a6daac7 Bump Copyright to 2025 2025-01-10 11:35:44 +01:00
Laurent Perron
663a591a32 [CP-SAT] move code around; add more tests 2024-10-23 15:47:31 +02:00
Laurent Perron
21a75638c2 partial sync with main (without the routing part) 2024-07-12 13:56:11 +02:00
Laurent Perron
642cda4599 [CP-SAT] improve presolve of linear aggregation 2024-02-09 10:34:21 -08:00
Mizux Seiha
a76bf1c5dd bump license boilerplate 2024-01-04 13:43:15 +01:00
Laurent Perron
9e2770f8bd [CP-SAT] extensive work on scheduling; add new cumulative with profile example 2023-10-08 11:21:00 +02:00
Laurent Perron
a7b26f6d8d [CP-SAT] new example; regroup some linear code 2023-09-23 10:16:08 +02:00
Laurent Perron
b8f224a8e1 [CP-SAT] tweak default search; improve scheduling cuts; move no_overlap_2d cuts in its own file; improve feasibility_jump; improve and speedup presolve 2023-09-21 13:07:09 +02:00
Laurent Perron
7d0d173a0f [CP-SAT] optimize feasibility jump; optimize linear presolve; better presolve logging; fix #3917; rewrite and simplify search heuristics code 2023-09-13 18:16:28 +02:00
Laurent Perron
407c9bb5dc [CP-SAT] fix overflow in presolve, check failed in feasibility_jump; remove obsolete macro 2023-08-30 10:04:11 -04:00
Laurent Perron
fa6883d544 mostly cleaning: remove integral_types.h and basictypes.h 2023-08-24 14:52:54 +02:00
Laurent Perron
224a38f87f cleanup code 2023-05-24 11:42:11 +02:00
Laurent Perron
8348ec8f94 [CP-SAT] Switch cut code to int128; more work on feasibility_jump and violation_ls 2023-05-03 09:33:50 +02:00
Laurent Perron
ddac12f639 [CP-SAT] more presolve 2022-12-05 12:11:02 +01:00
Laurent Perron
2264cb9059 [CP-SAT] more aggregate presolve; fix bug with no_overlap and duplicated intervals; add parameter for the probing time limit; use all threads to find the first solution while the lns workers are idle; tweak lb_tree_search by allowing more glop iterations at the root node 2022-11-29 14:39:27 +01:00
Laurent Perron
f1de8911ea [CP-SAT] fix fuzzer bugs; add presolve/merging of boolean constraints to help reduction/linear relation 2022-11-22 17:44:45 +01:00
Laurent Perron
49fbfe55af [CP-SAT] fix sat_interface after new parameter validation; support symmetry detection for bool_and with multiple enforcement literals 2022-11-18 16:54:28 +01:00
Laurent Perron
1dcb7e84f8 [CP-SAT] rewrite square relaxation on cut generation; remove dead presolve code 2022-10-13 12:53:55 +02:00
Laurent Perron
44df511ac5 [CP-SAT] bugfixes, better processing of overflows in cuts; add a few more dual reductions 2022-07-04 12:28:55 +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
d5c777ddfa [CP-SAT] detect connected components in the model and start using the info in LNS; display var/constraints stats during search; simplify model loader; improve presolve 2021-10-16 14:48:43 +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
d5c7c48e79 int_type_indexed_vector -> strong_vector; polish cp-sat probing workers 2020-11-19 00:17:26 +01:00
Corentin Le Molgat
c75ac92a5a Sync from Google to GitHub 2020-11-16 17:50:54 +01:00
Corentin Le Molgat
e4caaf96bc format file forcing the left alignment 2020-10-29 14:25:39 +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
b43d41b227 improve presolve for CP-SAT 2019-12-09 17:57:13 +01:00
Laurent Perron
7a32b16f12 speedup presolve and loader 2019-10-23 15:42:35 +02:00
Laurent Perron
5a0bf822fd improve sat solver 2019-10-18 14:39:25 +02:00
Laurent Perron
d0081e5409 more work on CP-SAT internals 2019-09-27 17:01:54 +02:00
Laurent Perron
fff236d800 work on CP-SAT internals 2019-09-11 12:50:25 +02:00
Laurent Perron
88054f79e6 big bang on CP-SAT: remove element and inverse constraints, expand them 2019-09-02 12:00:34 +02:00