Laurent Perron
|
044bc5ebce
|
speed up sat scheduling code
|
2023-10-25 17:05:22 +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
|
5024c23691
|
[CP-SAT] new lns (graph_dec_lns); internal code cleaning
|
2023-06-22 15:43:31 +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 |
|
Laurent Perron
|
0f58934ab8
|
re-add diffn checker
|
2023-05-12 18:17:23 +02:00 |
|
Laurent Perron
|
d5938972fc
|
[CP-SAT] remove dead code; fix bug in zero-half cut
|
2023-05-11 22:06:00 +02:00 |
|
Laurent Perron
|
b45067a569
|
fix #3770
|
2023-05-11 21:09:09 +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
|
34161f7cff
|
[CP-SAT] reduce memory used in the integer encoding; fix worker info not being displayed in the log
|
2023-02-14 17:35:45 -08:00 |
|
Laurent Perron
|
329c7b1270
|
[CP-SAT] polish alldiff expansion and cuts; improve cut tooling
|
2023-02-03 16:13:06 +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
|
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
|
300e5db82f
|
[CP-SAT] move routing cuts it their own files; more work on new linear propagation
|
2022-10-11 14:28:56 +02:00 |
|
Laurent Perron
|
363a6fb198
|
[CP-SAT] more work on experimental linear propagation; fix #3483; start cleaning up the synchronization code
|
2022-10-03 18:12:14 +02: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
|
5b44519e94
|
[CP-SAT] various bugfixes from fuzzer
|
2022-08-29 17:47:30 +02:00 |
|
Laurent Perron
|
0f122297a9
|
fix scheduling cuts
|
2022-08-21 18:05:35 +02:00 |
|
Laurent Perron
|
0b0f33b8ce
|
[CP-SAT] add diophantine equation solver; improve CumulativeTimeTable cuts
|
2022-08-18 17:32:24 +02:00 |
|
Laurent Perron
|
29a9e59653
|
[CP-SAT] more dual reductions
|
2022-07-28 00:22:33 +02:00 |
|
Laurent Perron
|
4a0cf8b9e7
|
[CP-SAT] fix detection of makespan interval; add more presolve on nearly equivalent constraints
|
2022-07-19 23:30:50 +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
|
8af04faff5
|
[CP-SAT] introduce decomposed energy and use it in scheduling propagation and cuts; remove duplicate code in presolve; simplify the name of a few parameters; add SchedulingDemandHelper class; re-enable model status in search log
|
2022-06-16 07:45:19 +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
|
ba15d312ba
|
[CP-SAT] improve cuts diversity; fix infinite loop in the ttef constraint; improve var domination; remove wrong DCHECK
|
2022-05-11 17:23:59 +02:00 |
|
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
|
d99e3c679c
|
fix #3253
|
2022-04-25 15:35:31 +02:00 |
|
Laurent Perron
|
5b87373be5
|
[CP-SAT] work on scheduling cuts
|
2022-04-21 17:29:56 +02:00 |
|
Laurent Perron
|
20b1c7eeab
|
[CP-SAT] Speedup timetable, fix bug in base SAT engine, improve scheduling cuts
|
2022-04-20 17:38:59 +02:00 |
|
Laurent Perron
|
3ba6968b67
|
[CP-SAT] improve scheduling cuts and explanations
|
2022-04-14 16:42:13 +02:00 |
|
Laurent Perron
|
2a5a2b7069
|
remove types warnings; add stronger scheduling cuts
|
2022-04-06 17:33:00 +02:00 |
|
Laurent Perron
|
2df403eff8
|
fix fuzzer bugs
|
2022-03-26 16:40:53 +01:00 |
|
Laurent Perron
|
19667205a2
|
std::set/map -> absl::btree_set/map
|
2022-02-25 09:47:39 +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
|
a1b369d4c8
|
[CP-SAT] speedup presolve; fix platform non determinism fix @2056; add symmetry detection for model with scheduling constraints
|
2022-01-08 14:44:59 +01:00 |
|
Laurent Perron
|
bd1b682010
|
[CP-SAT] presolve remove size 0 intervals from no_overlap; no_overlap_2d improvements to the propagator; remove spurrious check in linear_relaxation; improve code the code of energetic cuts; force 1 worker when using assumptions
|
2021-12-22 09:52:46 +01:00 |
|
Laurent Perron
|
457cc1432e
|
[CP-SAT] add lifted energetic cuts for no_overlap_2d; remove implicit ctor BoolVar -> IntVar; better presolve for LinMax; improve reservoir doc
|
2021-12-17 10:28:26 +01:00 |
|
Laurent Perron
|
0c22a715b2
|
[CP-SAT] improve doc on C++ builder API; rewrite python API to remove the DoubleLinearExpr class
|
2021-12-14 17:15:17 +01:00 |
|
Laurent Perron
|
9989323661
|
[CP-SAT] Polish NoOverlap2d new code
|
2021-12-13 14:24:57 +01:00 |
|
Laurent Perron
|
dbe177a0fb
|
[CP-SAT] Support optional intervals in no_overlap_2d; add energetic cut to no_overlap_2d; disable cumulative relaxation of no_overlap_2d by default; fix #3012
|
2021-12-13 10:47:57 +01:00 |
|
Laurent Perron
|
50e38f1750
|
[CP-SAT] accept affine expressions as argument of AllDiff
|
2021-11-23 21:38:20 +01:00 |
|
Laurent Perron
|
5b1a99e330
|
[CP-SAT] allow double coefficients in the objective
|
2021-11-19 00:28:44 +01:00 |
|
Laurent Perron
|
b42582de27
|
[CP-SAT] better use of symmetries; better presolve of products; add affine API in the python API; fix linearization of products
|
2021-11-16 23:55:30 +01:00 |
|
Laurent Perron
|
fc4cbe4a34
|
[CP-SAT] polish no_overlap_2d relaxation code
|
2021-11-15 19:42:38 +01:00 |
|
Laurent Perron
|
62088d593b
|
[CP-SAT] polish code
|
2021-11-14 17:24:37 +01:00 |
|
Laurent Perron
|
f76c909bc4
|
[CP-SAT] add no_overlap_2d linear relaxation
|
2021-11-14 15:45:37 +01:00 |
|
Laurent Perron
|
3c591609bf
|
[CP-SAT] change primal integral to gap integral; change arguments of product, division, modulo to be affine expression instead of variables
|
2021-11-13 08:38:21 +01:00 |
|
Laurent Perron
|
5b6ecfcc0b
|
fix #2889
|
2021-11-10 11:54:27 +01:00 |
|