Commit Graph

71 Commits

Author SHA1 Message Date
Laurent Perron
7ff7fe8a56 [CP-SAT] revisit cut code; add new API to MaxBoundedSubsetSum 2023-06-06 13:14:57 +02:00
Laurent Perron
224a38f87f cleanup code 2023-05-24 11:42:11 +02:00
Laurent Perron
beb54c2d98 [CP-SAT] improve code of last commits 2023-05-16 10:26:07 +02:00
Laurent Perron
f28ee9a594 fix shared worker trees; experimental LS code (just starting). 2023-03-22 19:37:00 +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
b77a1a465c [CP-SAT] fix 3 bugs 2022-11-16 18:03:37 +01:00
Laurent Perron
1ca305fa1c [CP-SAT] improve processing of hints; fix bug with median_value heuristic; misc cleanup 2022-11-15 16:47:05 +01:00
Laurent Perron
75ef9c611a [CP-SAT] better fix for int_prod 2022-11-15 14:48:57 +01:00
Laurent Perron
56f10616a7 [CP-SAT] add more parameter validation; fix fuzzer bug on int_prod 2022-11-15 11:43:11 +01:00
Laurent Perron
779d5912c5 [CP-SAT] fix bug in lb_tree_search 2022-09-26 15:37:33 +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
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
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
d78ce574fc [CP-SAT] inactive max_hs code; use better core code when the objective is pseudo-boolean 2022-02-14 13:31:52 +01:00
Laurent Perron
79f2c45c33 [CP-SAT] Use AddExactly/AtMostOne in examples/samples; add int_square presolve; add multiplication constraint with target = left * right 2022-01-01 19:26:39 +01:00
Laurent Perron
2a7c41c64f [CP-SAT] improve int_prod presolve code; fix bug in square propagator 2021-12-06 16:43:35 +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
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
Laurent Perron
99a06cf328 [CP-SAT] remove division expansion; implement general division propagator; improve internal APIs; fix bug and simplify code on lb_tree_search 2021-10-27 13:22:27 +02:00
Laurent Perron
93c7e252eb [CP-SAT] Cleanup propagator API 2021-10-25 16:30:57 +02:00
Laurent Perron
4a8c993703 [CP-SAT] better detection of encoding and element constraint; improve linearization for them; start rewriting postsolve code; misc presolve improvements; remove bounds from CpSolverResponse; support storing multiple solutions in CpSolverResponse 2021-10-01 13:44:11 +02:00
Laurent Perron
703f4c52d6 fix 2021-09-29 16:36:42 +02:00
Laurent Perron
6758c73d2f fix 2021-09-29 16:18:52 +02:00
Laurent Perron
80987d328b [CP-SAT] rewrite element expand; improve lin_max linear relaxation; detect value element and add linear relaxation; plenty of bug fixes 2021-07-23 21:59:20 +02:00
Mizux Seiha
8bb54b04ef Bump Copyright to 2021
FYI:
find ortools \( -type d -name .git -prune \) -o -type f -print0 | xargs -0 sed -i 's/\(Copyright 2010\)-2018/\1-2021/g'
2021-04-01 21:00:53 +02:00
Corentin Le Molgat
a40143cdd2 cpp: Migrate int64 to int64_t 2021-04-01 20:20:43 +02:00
Laurent Perron
bad5c2032b int64 -> int64_t 2021-03-04 18:26:01 +01:00
Laurent Perron
7ed855af90 remove near zero terms when converting MIP models for CP-SAT; add small presolve, and root node propagation 2020-11-16 17:01:21 +01:00
Laurent Perron
94d61a273b [GLOP] add solution polishing to increase its integrality; [CP-SAT] new stats exported, fix java samples, add quick_restart_no_lp to search diversification 2020-11-16 08:44:14 +01:00
Laurent Perron
6467dc69b0 reformat the code; [CP-SAT] add dominated columns presolve 2020-10-28 13:42:51 +01:00
Mizux Seiha
20d0496bfb reapply google format 2020-10-23 00:45:17 +02:00
Laurent Perron
a4258f2bdf switch flags setters and getters to the absl format 2020-10-21 00:21:54 +02:00
Laurent Perron
bcb7b3073d large synchro with internal code: linear solver: introduce intermediate SCIP layer called gscip; sat: more work on slow propagation detection; base: remove statusor, use abseil version; constraint solver: more work on internal local search 2020-10-18 16:38:25 +02:00
Laurent Perron
76871a4403 fix bugs in CP-SAT 2020-10-06 17:57:20 +02:00
Laurent Perron
484aafb903 A few fixes on CP-SAT; work on scheduling LP cuts 2020-10-01 18:08:34 +02:00
Laurent Perron
456a73d213 improve cut numerical precision; speed up presolve; fix bug with inverse constraint expansion 2020-02-03 16:21:57 +01:00
Laurent Perron
45a04053e4 polish integer reasons 2020-01-20 10:51:53 +01:00
Laurent Perron
76cf068598 remove most of flatzinc presolve; fix missing presolve in cp-sat; improve cut managements in cp-sat 2020-01-07 16:51:46 +01:00
Laurent Perron
f9f2d7b5b4 [CP-SAT] improve presolve; improve linear subsystem 2019-12-16 12:34:56 +01:00
Laurent Perron
248210b21c full sync cp-sat 2019-10-25 14:26:16 +02:00
Laurent Perron
8572f97c28 reindent cp_model.py; fix Domain swig; rename test 2019-05-17 10:27:41 +02:00
Laurent Perron
95e89c5175 more work on CP-SAT presolve, and CP-SAT - GLOP connection 2019-05-14 17:55:28 +02:00
Laurent Perron
39cae88902 add new routing LS operator; add Abs() propagator + presolve to CP-SAT; cache RINS info in CP-SAT 2019-04-25 18:12:35 +02:00
Laurent Perron
9038067e67 minor improvements in CP-SAT 2019-02-28 17:07:29 +01:00
Laurent Perron
7c87356c17 internal cleaning 2019-02-28 15:42:50 +01:00