156 Commits

Author SHA1 Message Date
Laurent Perron
0fe7cb5dbd fixes 2026-01-07 15:48:58 +01:00
Laurent Perron
562ffd7eed [CP-SAT] more work on lrat; cleanup memory management in scheduling clauses; improve encoded only variable expansion; fix a few bugs 2025-12-15 13:07:29 +01:00
Laurent Perron
b7d1dc65dc [CP-SAT] more work on lrat; canonicalize Boolean variables in a few more places 2025-12-08 11:24:06 +01:00
Laurent Perron
7adffccc0d [CP-SAT] more work on encodings, lrat 2025-11-21 11:21:34 +01:00
Laurent Perron
72d75ca109 [CP-SAT] work on lrat; better expansion of variables only appearing in encoding constraints 2025-11-18 16:24:18 +01:00
Corentin Le Molgat
1b4d75ceb3 sat: backport from main 2025-11-05 13:55:12 +01:00
Corentin Le Molgat
b05315de21 sat: backport from main 2025-09-22 17:24:20 +02:00
Laurent Perron
a841258da7 [CP-SAT] misc improvements to the internals; more work on general constraints with enforcements 2025-09-17 07:47:03 +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
4151254eba sat: backport from main 2025-07-23 15:04:05 +02:00
Laurent Perron
0a5e8db6af [CP-SAT] lots of bugfixes, improvement to primary variables heuristics; cleanup scheduling cuts code 2025-05-14 13:34:04 +02:00
Laurent Perron
3e1d3d7da9 [CP-SAT] disambiguate shaving parameters 2025-04-15 21:10:19 +02:00
Laurent Perron
467091fe92 [CP-SAT] cleanups; tweaks shaving limits 2025-04-15 17:19:58 +02:00
Corentin Le Molgat
62dca6e486 backport vlog_is_on.h patch from main 2025-03-13 15:56:35 +01:00
Mizux Seiha
068359c162 ortools: backport from main 2025-03-04 21:09:32 +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
32bcb0e213 [CP-SAT] more work on hints 2024-12-13 14:51:20 +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
873e0b47f8 [CP-SAT] improve diffn clustering; more work on hints 2024-12-04 15:29:53 +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
ef8716241a backport from main 2024-10-01 12:48:20 +02:00
Laurent Perron
701cc87e1e backport from main: sat, graph, lp_data, glop 2024-09-13 13:29:25 -07:00
Laurent Perron
76f2f4c383 [CP-SAT] internal protocol improvements; bug fixes 2024-09-03 18:19:19 +02:00
Laurent Perron
99d869a4a1 [CP-SAT] more span; minor scheduling optims 2024-08-02 19:57:27 +02:00
Laurent Perron
21a75638c2 partial sync with main (without the routing part) 2024-07-12 13:56:11 +02:00
Laurent Perron
ec453aafb6 [CP-SAT] fix best bound callback non C++ code; more work on pseudo-costs 2024-05-30 10:52:46 +02:00
Laurent Perron
d28edd701c [CP-SAT] code cleanup; more pseudo-cost experimental code; add objective best bound callback 2024-05-30 10:52:46 +02:00
Laurent Perron
4fa0d282ac [CP-SAT] fix overflow in search heuristic evaluation; improve pseudo-cost implementation; use it in lb_tree_search; propagate hints when creating encoding literals 2024-05-30 10:52:46 +02:00
Laurent Perron
9339193629 [CP-SAT] fixes and speed improvements 2024-02-15 08:46:38 +01:00
Laurent Perron
b2ea6266f6 [CP-SAT] code cleanup: remove optional integer variables 2024-01-23 14:15:38 +01:00
Mizux Seiha
a76bf1c5dd bump license boilerplate 2024-01-04 13:43:15 +01:00
Laurent Perron
946f9453d9 [CP-SAT] more code cleanup; add inline log callbacks for C++ 2023-12-21 09:37:59 +01:00
Laurent Perron
5bd09c376e [CP-SAT] fix c++ decision strategy API; fix #4013; tweak in processing and its parameters; tweak energetic diffn code 2023-12-12 16:20:02 +01:00
Laurent Perron
47fcebdea6 [CP-SAT] fix sharing bug where some fixed Boolean variables were not shared; use new no_overlap_2d propagator in scheduling workers; improve probing code 2023-12-06 14:15:16 +01:00
Laurent Perron
00fd31bd6d [CP-SAT] rewrite clause management; improve probing by probing clauses and at_most_ones from the SAT engine; experimental no_overlap_2d energetic propagator code 2023-12-04 15:06:08 +01:00
Laurent Perron
ddec42c60c enable simplification in probing 2023-11-27 11:36:33 +01:00
Laurent Perron
990fc9eb4a [CP-SAT] simplify clauses periodically (off by default); remove pure sat code path 2023-11-22 14:48:08 +01:00
Laurent Perron
199af98e3f [CP-SAT] fix feasibility_jump bug 2023-11-02 18:06:20 +01:00
Laurent Perron
185b77cea0 [CP-SAT] limit effort in feasibility_jump; new experimental scheduling search on cumulative 2023-10-29 15:31:06 +01:00
Laurent Perron
bcf402180b [CP-SAT] better logging of infeasible constraint during presolve; improved scheduling search 2023-10-27 13:47:04 +02: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
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
fa6883d544 mostly cleaning: remove integral_types.h and basictypes.h 2023-08-24 14:52:54 +02:00
Laurent Perron
ff8e0d249b tweak subsolvers list; add focus on terms parameters to lb_objective_search; fix bug in shared_tree 2023-08-09 14:25:48 -07:00
Laurent Perron
c3fdb12908 Switch algorithms and scheduling python libraries from swig to pybind11; switch protobuf support from forced serialization to pybind11_protobuf -- with patch; [CP-SAT] rewrite cut management; reformat samples with black 2023-06-30 22:49:35 +02:00
Laurent Perron
09d534a2b7 [CP-SAT] rewrite Rins/Rens; fix #3825; cleanups 2023-06-17 12:10:17 +02:00
Laurent Perron
24ea806809 [CP-SAT] work on scheduling 2023-06-14 15:13:14 +02:00
Laurent Perron
224a38f87f cleanup code 2023-05-24 11:42:11 +02:00