Commit Graph

68 Commits

Author SHA1 Message Date
Laurent Perron
7a46833a12 fix #3283: implement clear objective method in CP-SAT 2022-05-07 10:37:29 +02:00
Laurent Perron
5b87373be5 [CP-SAT] work on scheduling cuts 2022-04-21 17:29:56 +02:00
Laurent Perron
e3eb35132b [CP-SAT] add more CpModel C++ methods; fix #3248; fix #3251; specify restrictions in cp_model.proto 2022-04-21 16:28:13 +02:00
Laurent Perron
13dbe6a387 [CP-SAT] fix crash in core search and in presolve; add more needed stl includes 2022-03-14 15:06:11 +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
da246501e7 [CP-SAT] more work on binary clauses sharing between workers 2022-01-27 16:59:54 +01:00
Laurent Perron
a130b9aad5 [CP-SAT] remove unused API 2022-01-12 10:31:55 +01:00
Laurent Perron
be8c2f9c79 [CP-SAT] improve C++ modeling layer; allow chaining incremental constraint filling methods in C#/Java 2022-01-11 17:52:27 +01:00
Laurent Perron
8f3fd9cff2 Remove deprecated methods 2022-01-05 09:41:54 +01:00
Laurent Perron
ceabca677c [CP-SAT] ScalProd -> WeightedSum 2022-01-04 19:35:22 +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
b9cd938c16 [CP-SAT] add AddAtLeastOne/AtMostOne/ExactlyOne API in all languages 2021-12-31 11:12:22 +01:00
Laurent Perron
2f86d7a2b0 [CP-SAT] fix C++ CpModel operator 2021-12-30 09:53:47 +01:00
Laurent Perron
a50c3c697f [CP-SAT] Remove deprecated methods from the C++ layer 2021-12-29 13:13:17 +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
60b3dd7a36 fix compilation 2021-12-14 17:47:05 +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
683565613e [CP-SAT] CpModel::AddAllDifferentExpr -> AddAllDifferent 2021-12-13 11:42:38 +01:00
Laurent Perron
a7a4d84f42 [CP-SAT] improve cp_model.h; improve examples with arithmetic operators 2021-12-11 12:24:04 +01:00
Laurent Perron
6ae332569b natural API for Cp_SAT C++ 2021-12-09 15:29:49 +01:00
Laurent Perron
2d22667f30 [CP-SAT] deprecate BooleanSum and BooleanScalProd in favor of Sum and ScalProd 2021-12-08 16:29:40 +01:00
Laurent Perron
7e74268ded [CP-SAT] another overflow fix; remove AddLinMin/Max in favor of AddMin/Max 2021-12-08 15:26:17 +01:00
Laurent Perron
9f7c1d28db [CP-SAT] fix bugs in checker, lp_utils; improve english in doc 2021-11-30 08:53:42 +01:00
Laurent Perron
cfeb2e49d7 [CP-SAT] Reservoir constraint uses affine expression for the time part; rename fields in the reservoir constraint 2021-11-25 14:53:05 +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
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
1eec259105 [CP-SAT] Cleanup intervals (remove start/size/end fields, remove _view from the other ones); change demands and capacity of the cumulative constraint to affine expressions; remove the experimental energies field from the cumulative constraint; first pass at detecting linear encoding of product of variab;es. This happens when both variables are encoded by the same literals, in an exactly_one relation; speed up the lb_tree_search worker 2021-10-20 19:50:09 +02:00
Laurent Perron
d5c777ddfa [CP-SAT] detect connected components in the model and start using the info in LNS; display var/constraints stats during search; simplify model loader; improve presolve 2021-10-16 14:48:43 +02:00
Laurent Perron
ef59381229 [CP-SAT] Enable linear expressions in AddMinEquality/AddAbsEquality/AddMaxEquality, and/or add AddLinMinEquality/AddLinMaxEquality; detect more encoding and remove variables only used in encodings 2021-10-05 17:20:38 +02:00
Laurent Perron
8f5bfbc252 [CP-SAT] Fix performance bug on product/square cuts; polish new interval code 2021-09-10 15:11:11 +02:00
Laurent Perron
41a9c08fa2 [CP-SAT] polish new interval code and samples 2021-09-09 06:41:35 +02:00
Laurent Perron
8aa13ac64a [CP-SAT] revamp interval APIs 2021-09-08 21:19:57 +02:00
Laurent Perron
43da47a463 [CP-SAT] polish no_overlap presolve; add LinearExpr.Affine() API in java/C#; tweak LinearExpr C++ API 2021-06-09 11:16:48 +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
Laurent Perron
bad5c2032b int64 -> int64_t 2021-03-04 18:26:01 +01:00
Laurent Perron
948476129c add support for model deep copy in C++ and python; increase the frequency of time limit checks in code solving 2021-02-17 16:42:54 +01:00
Laurent Perron
ce52397ccf fix doc for assumptions new API 2021-02-05 17:18:58 +01:00
Xiang Chen
2d5cd894c7 Add ClearHints() and ClearAssumptions() 2021-02-05 11:21:57 +01:00
Xiang Chen
b34ceefb86 Wrap CP-SAT assumptions 2021-02-04 23:53:50 +01:00
Corentin Le Molgat
e4caaf96bc format file forcing the left alignment 2020-10-29 14:25:39 +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
581d5606e0 fix #2005; massive rewrite of pure sat processing; RINS/RENS improvements in CP-SAT; get rid of base/status.h in favor of the absl version 2020-05-06 18:22:10 +02:00
Laurent Perron
cdf6d283e5 improve pseudo-cost branching in CP-SAT 2020-01-23 16:06:18 -08:00
Laurent Perron
5516eb6a54 add IntVar::AddConstant to cp_model.h 2020-01-20 13:23:56 +01:00
Laurent Perron
f9f2d7b5b4 [CP-SAT] improve presolve; improve linear subsystem 2019-12-16 12:34:56 +01:00
Laurent Perron
2ff000ab9a bump abseil to the latest version, adapt the code all around 2019-11-20 14:28:11 -08:00
Laurent Perron
bec1d01562 improve sat internals 2019-10-21 16:50:31 +02:00
Xiang Chen
7445311467 Add AddHint to cpp and csharp, port hinting samples 2019-09-09 01:56:19 +02:00