128 Commits

Author SHA1 Message Date
Laurent Perron
c8d7710fd7 [CP-SAT] more work on lrat, regroup linear1 presolve methods 2026-01-07 15:57:21 +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
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
Corentin Le Molgat
b05315de21 sat: backport from main 2025-09-22 17:24:20 +02:00
Laurent Perron
f9b6212649 [CP-SAT] experimental routing cuts; new cumulative cuts; improve no_overlap_2d code all around 2025-02-05 18:12:33 +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
Laurent Perron
9cb88905e8 [CP-SAT] regroup all hint preservation code in a SolutionCrunch class; more work on no_overlap_2d propagator; add exception processing if an exceptions is raised in a python callback (solution, log, best_bound) 2025-01-20 15:00:46 +01:00
Laurent Perron
c71e734199 [CP-SAT] rewrite python memory management; optimize object creation in the python layer; fix plenty of fuzzer bugs; better processing of fixed rectangles in no_overlap_2d 2025-01-19 12:04:23 +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
87b144f3d2 [CP-SAT] more work on hints; speed up memory allocation in LNS 2024-12-17 14:58:23 +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
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
83a434dc47 [CP-SAT] improve propagation; more hint preservation; polish last sample 2024-12-06 11:49:16 +01:00
Laurent Perron
4455ecf928 [CP-SAT] add new scheduling example; improve hint preservation; add rare crash in presolve 2024-12-05 18:41:15 +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
Laurent Perron
78d5ba5941 [CP-SAT] more work on hints; control complexity of 2d packing constraints and presolve 2024-11-26 17:55:57 +00:00
Laurent Perron
df2811878a [CP-SAT] fix bug with reservoir expansion; improve hint processing; improve work sharing 2024-11-25 14:50:09 +01:00
Laurent Perron
c37d185d6b [CP-SAT] more defensive coding 2024-11-18 11:46:20 +01:00
Corentin Le Molgat
00885d45bd sat: backport from main 2024-11-15 14:40:47 +01:00
Laurent Perron
ee241f30b5 [CP-SAT] supports affine expression in automaton 2024-10-25 13:15:40 +02:00
Laurent Perron
663a591a32 [CP-SAT] move code around; add more tests 2024-10-23 15:47:31 +02:00
Laurent Perron
55ff5cf534 [CP-SAT] change element and table protos, API to support affine expressions 2024-10-23 05:59:17 +02:00
Laurent Perron
c930dd656e [CP-SAT] check the time limit more frequently; experimental support for lp folding; more pedantic tests in presolve 2024-10-16 14:13:02 +02:00
Laurent Perron
c402757678 [CP-SAT] cleanup presolve code around affine relations 2024-10-09 15:58:24 +02:00
Laurent Perron
d6de78c923 [CP-SAT] vivification after import; remove unused affine in presolve; remove obsolete ThreadPool usage 2024-10-08 16:06:05 +02: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
21a75638c2 partial sync with main (without the routing part) 2024-07-12 13:56:11 +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
9eddf037c5 [CP-SAT] fix #4176 2024-05-30 10:52:45 +02:00
Laurent Perron
4521996ca4 [CP-SAT] more work on 2d packing; fix bugs 2024-05-30 10:52:44 +02:00
Laurent Perron
642cda4599 [CP-SAT] improve presolve of linear aggregation 2024-02-09 10:34:21 -08:00
Laurent Perron
dd268623a6 [CP-SAT] improve presolve in the context of hints 2024-01-22 17:22:38 +01:00
Laurent Perron
ce58010fb2 memory optimization; speed optimization; fix #4047 2024-01-12 16:31:18 +01:00
Mizux Seiha
a76bf1c5dd bump license boilerplate 2024-01-04 13:43:15 +01:00
Laurent Perron
5b6c803db3 [CP-SAT] convert to PEP8 convention 2023-11-16 19:46:56 +01:00
Laurent Perron
41bdec18d5 [CP-SAT] more presolve around int_abs 2023-11-09 13:46:44 +01:00
Laurent Perron
35684c95f4 [CP-SAT] improve presolve on lin_max and int_mod 2023-11-08 16:33:17 +01:00
Laurent Perron
e96b934908 [CP-SAT] remove unused function 2023-11-06 16:24:47 +01: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
af879c6d17 big cleanup of includes 2023-08-24 17:14:58 +02:00
Laurent Perron
249b3286cd [CP-SAT] improve super-additive function for cuts; fix bug in int_prod presolve 2023-06-07 17:11:45 +02:00
Laurent Perron
7ff7fe8a56 [CP-SAT] revisit cut code; add new API to MaxBoundedSubsetSum 2023-06-06 13:14:57 +02:00
Laurent Perron
ebb88d9c50 [CP-SAT] fix corner cases in presolve; rewrite part of the cut management; automatic fixes 2023-05-30 23:25:31 +02:00
Laurent Perron
dbaef62eb5 [CP-SAT] improvements to feasibility_jump, better presolve on lin_max; tuning 2023-04-21 12:48:03 +02:00
Laurent Perron
e506fce590 [CP-SAT] merge proto dumping code; small scheduling presolve rules 2023-03-08 15:50:12 +01:00
Laurent Perron
77868b5d61 [CP-SAT] rewrite cut helper; add flexibility in all_diff expansion; improve all_diff cut generator and add relaxation 2023-01-16 13:26:55 +01:00
Laurent Perron
cf53ee3c9f reformat bazel java code; CP-SAT: fix corner case in presolve, zero very small coefficients in translate from math model, more parameter validation 2023-01-05 13:38:42 +01:00