Commit Graph

176 Commits

Author SHA1 Message Date
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
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
Laurent Perron
e02b6a013c [CP-SAT] update code, mostly small bug fixes 2025-08-22 16:06:35 -07:00
Laurent Perron
f2cf147e79 [CP-SAT] rewrite and speed up the python layer; extend support for enforcement literals to more constraints 2025-07-24 23:51:00 +02:00
Laurent Perron
0ac20dfcd7 [CP-SAT] improve precedences; fix #4693; tweak shared tree workers 2025-06-23 17:33:30 +02:00
Laurent Perron
63b9ecdfd7 [CP-SAT] tweak and improve code 2025-06-13 13:14:13 +02:00
Laurent Perron
64fcba4be7 [CP-SAT] work on precedences; fix bug in scheduling cuts 2025-06-10 17:25:55 +02:00
Laurent Perron
d055baeca4 [CP-SAT] work on precedences; improve scheduling cuts 2025-05-27 13:49:29 +02:00
Laurent Perron
f4f39748a1 minor optims 2025-04-10 11:40:38 +02:00
Laurent Perron
1acdd5d6af massive cleanup of includes; work on CP-SAT routing cuts 2025-02-21 15:14:38 +01:00
Laurent Perron
3355831c89 [CP-SAT] more work on scheduling; collect more info from routing models; more presolve, simplification 2025-02-19 13:33:18 +01:00
Laurent Perron
cc9181db9d [CP-SAT] cleanup debug code; fix cumulative_energy_test 2025-02-17 07:21:52 +01:00
Laurent Perron
6a339f633f [CP-SAT] update routing/scheduling code; manu bug fixes; improve java doc 2025-02-16 15:22:41 +01:00
Laurent Perron
bf87fd8ad4 [CP-SAT] more minor improvements 2025-01-30 12:45:02 +01:00
Laurent Perron
4b26c84b48 [CP-SAT] more on scheduling reorg; polish python layer 2025-01-14 16:00:07 +01:00
Corentin Le Molgat
c34026b101 Bump copyright to 2025
note: done using
```sh
git grep -l "2010-2024 Google" | xargs sed -i 's/2010-2024 Google/2010-2025 Google/'
```
2025-01-10 11:33:35 +01:00
Laurent Perron
d8c3e49e5b [CP-SAT] more work on no_overlap_2d; revisit all includes 2024-12-04 17:47:10 +01:00
Laurent Perron
bf5e731d37 [CP-SAT] reorganize code 2024-11-29 14:27:36 +01:00
Laurent Perron
c709e98327 [CP-SAT] improve 2d packing presolve; improve MIR cuts; rewrite some of the cuts managements 2024-09-25 11:21:36 +01:00
Laurent Perron
66f808702a [CP-SAT] internal protocol improvements; bug fixes 2024-09-03 18:18:42 +02:00
Laurent Perron
3ec7b23b9d [CP-SAT] speed up circuit loading 2024-07-15 13:37:50 +02:00
Laurent Perron
819b9bc99e [CP-SAT] minor speedups 2024-07-10 17:41:32 +02:00
Laurent Perron
1f4e76642a [CP-SAT] fix struct packing; add missing example 2024-07-03 20:11:15 +02:00
Laurent Perron
c13d2af484 [CP-SAT] more absl::Stan; StrongVector namespace change; fix java best bound callback + tests; more presolve 2024-05-14 14:43:55 +02:00
Laurent Perron
42c6e3d6ca [CP-SAT] speedup precedences 2024-04-05 14:01:10 +02:00
Laurent Perron
29df35d3d7 [CP-SAT] improve diffn and linear loading 2024-03-26 12:35:12 +01:00
Laurent Perron
f48c111bea [CP-SAT] more work on python typing, tring to merge contradictory errors with mypy and pytype; better processing of at_most_one; optional flag to expand lin_max with a set of enforced linear 2024-03-12 17:24:29 +01:00
Laurent Perron
2f11ce5fa5 polish 2024-02-18 12:16:15 +01:00
Laurent Perron
d9036bffeb more work on 2d packing 2024-01-25 13:26:36 +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
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
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
01dd97f64e [CP-SAT] support int_prod with arity > 2; fix a few bugs, mostly around unsat models; add parameters for lp tolerance; optimize the code on hot spot 2023-10-18 15:47:37 +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
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
823ce1188c [CP-SAT] better management of cuts; better overflow detection; do not run feasibility_jump if search is globally finished; fix #3842 2023-07-04 14:11:25 +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
224a38f87f cleanup code 2023-05-24 11:42:11 +02:00
Laurent Perron
8f2d5de90b [CP-SAT] fix #3706, add experimental work-stealing workers, fix minor bugs; improve subsolver multi-thread code 2023-03-15 11:54:58 +01:00
Laurent Perron
e544d1d5e6 [CP-SAT] add debugging facilities; fix a few minor bugs 2023-03-02 17:05:04 +04:00
Laurent Perron
11f7c04f6c [CP-SAT] small memory reduction 2023-02-17 13:56:37 +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
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
acda5d226d [CP-SAT] reduce memory usage of integer variables; add option to save model in binary format 2023-02-09 16:18:46 -08:00
Laurent Perron
b43a75c88c [CP-SAT] fix integer reasons; use fast_hash to fingerprint equations 2022-11-17 16:28:49 +01:00
Laurent Perron
500cc2c701 [CP-SAT] polish scheduling code; add experimental new linear propagator 2022-09-23 18:09:18 +02:00