Commit Graph

95 Commits

Author SHA1 Message Date
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
5d85f840b5 [CP-SAT] fix #4839; experimental code for lrat checker; experimental code to control the boolean expansion of small linear2 equations 2025-09-29 16:35:16 +02:00
Mizux Seiha
4f381f6d07 backport from main:
* bump abseil to 20250814
* bump protobuf to v32.0
* cmake: add ccache auto support
* backport flatzinc, math_opt and sat update
2025-09-16 16:25:04 +02:00
Corentin Le Molgat
0db80a34f6 sat: backport from main 2025-08-06 10:54:53 +02:00
Mizux Seiha
068359c162 ortools: backport from main 2025-03-04 21:09:32 +01:00
Laurent Perron
3a73fa1b3e [CP-SAT] fix cumulative cuts 2025-02-06 16:52:23 +01:00
Laurent Perron
5341feef73 [CP-SAT] add experimental routing constraint; more no_overlap_2d presolve; add random_half branching heuristics 2025-01-28 13:34:40 +01:00
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
198a4d3f12 [CP-SAT] fir rare bug in dependency graph and implications; speed up no_overlap_2d and cumulative relaxation 2024-12-16 14:20:09 +01:00
Laurent Perron
32bcb0e213 [CP-SAT] more work on hints 2024-12-13 14:51:20 +01:00
Laurent Perron
15a12a0c49 [CP-SAT] speed up no_overlap_2d (presolve, propagation); tweak shared tree workers; improve hint preservation during presolve; remove memory contention 2024-12-13 13:10:52 +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
Corentin Le Molgat
00885d45bd sat: backport from main 2024-11-15 14:40:47 +01:00
Laurent Perron
76f2f4c383 [CP-SAT] internal protocol improvements; bug fixes 2024-09-03 18:19:19 +02:00
Laurent Perron
21a75638c2 partial sync with main (without the routing part) 2024-07-12 13:56:11 +02:00
Laurent Perron
4521996ca4 [CP-SAT] more work on 2d packing; fix bugs 2024-05-30 10:52:44 +02:00
Laurent Perron
4cbd27dae9 sync with main 2024-05-30 10:52:42 +02:00
Laurent Perron
5828741c75 [CP-SAT] improve no_overlap_2d propagation; improve linear propagator + precedences + disjunctive connection; change the way maximization is implemented in python 2024-05-30 10:51:55 +02:00
Laurent Perron
f3f9bc44a2 [CP-SAT] improve diffn and linear loading 2024-05-30 10:51:55 +02:00
Laurent Perron
8d4b32967c [CP-SAT] cleanup diffn propagation; remove dead code 2024-01-31 14:44:02 +01:00
Laurent Perron
e9c81911c4 [CP-SAT] memory optimizations; improve no_overlap_2d; change default parameters 2024-01-10 16:42:04 +01:00
Mizux Seiha
a76bf1c5dd bump license boilerplate 2024-01-04 13:43:15 +01:00
Laurent Perron
044bc5ebce speed up sat scheduling code 2023-10-25 17:05:22 +02:00
Laurent Perron
f1bbd650ab [CP-SAT] add automatic cast Literal -> LiteralIndex; implement general division where the denominator can have any domain that does not contain 0 2023-10-12 10:06:27 +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
f28ee9a594 fix shared worker trees; experimental LS code (just starting). 2023-03-22 19:37:00 +01:00
Laurent Perron
4fd92d3075 [CP-SAT] fix wrong optimal on unison 2023-02-20 17:00:17 +01:00
Laurent Perron
0945e9a6fb [CP-SAT] export num integers in the stats; optimize large linear constraints 2023-02-16 15:31:27 +01:00
Laurent Perron
806fcd185e CP-SAT optimize LinMax propagator; linear constraint; adapt pybind11 to new protobuf API 2023-01-27 16:53:53 +01:00
Laurent Perron
c08b48d25b [CP-SAT] improve oveflow detection in cuts; fix fingerprint; add objective_lb_search 2022-12-12 17:19:20 +01:00
Laurent Perron
ba53ce319b [CP-SAT] fix experimental linear code; indent; do not create lb_tree_search when model does not contain objective; fix slow termination 2022-09-27 18:04:47 +02:00
Laurent Perron
500cc2c701 [CP-SAT] polish scheduling code; add experimental new linear propagator 2022-09-23 18:09:18 +02:00
Laurent Perron
9931205f7c [CP-SAT] prepare for reservoir with variable demand; internal tweakes 2022-09-09 16:48:39 +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
1deadc71d7 [CP-SAT] Improve scheduling lns; use linearized energy in cumulative_energy; more presolve with linear + at_most/exactly one constraints; validate a few more parameters 2022-05-31 15:40:47 +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
3b745ab2c1 [CP-SAT] tweak to lb_tree_search 2021-11-04 18:58:34 +01:00
Laurent Perron
34b26eb5b0 [CP-SAT] reorganize linear code; tweak lb_tree_search code 2021-10-29 14:02:25 +02:00
Laurent Perron
9a5986631e [CP-SAT] improve modulo propagator 2021-10-28 15:44:12 +02:00
Laurent Perron
bab11deddf [CP-SAT] implement proper modulo propagator (with fixed mod) 2021-10-27 20:56:28 +02:00