Commit Graph

52 Commits

Author SHA1 Message Date
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
74d5a10f50 minor sync 2022-04-08 11:01:13 +02:00
Laurent Perron
2a5a2b7069 remove types warnings; add stronger scheduling cuts 2022-04-06 17:33:00 +02:00
Laurent Perron
1605046dba remove diffn energetic propagator, use the cumulative_energy overload checker 2022-03-21 17:37:47 +01: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
c82cfdc9ad remove map_util from most of the code; absl::make_unique and absl::optional -> stl version 2022-03-09 09:08:40 +01:00
Laurent Perron
19667205a2 std::set/map -> absl::btree_set/map 2022-02-25 09:47:39 +01:00
Laurent Perron
5e41f40c2f remove range-loop warnings from the sat code 2022-02-24 14:17:43 +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
5e9d7ab240 simplify random code 2021-11-27 21:55:58 +01:00
Laurent Perron
1c512fd12d change a bit the export code: propagate effect 2021-09-07 11:53:01 +02:00
slowy07
2e0ec51049 fix: typo spelling grammar 2021-08-16 10:49:00 +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
4d1b9d227f capture CP-SAT log in python/java/.NET; visual tweak of the log; tweak the logging facilities for CP-SAT 2021-03-11 21:07:17 +01:00
Laurent Perron
9de99d789e improve logging facilities, use it in the CP-SAT solver 2021-03-10 11:40:28 +01:00
Laurent Perron
bad5c2032b int64 -> int64_t 2021-03-04 18:26:01 +01:00
Laurent Perron
3f177174a8 [CP-SAT] rewrite random management; experimental support for affine expressions in the interval definition; cache precedence literals and constraints across reservoir constraints; fix presolve for the element constraint 2020-12-18 10:16:56 +01:00
Laurent Perron
d5c7c48e79 int_type_indexed_vector -> strong_vector; polish cp-sat probing workers 2020-11-19 00:17:26 +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
7268ce5589 add incremental in-search preprocessing to SAT; fix #2040; fix rare check in glop 2020-06-03 12:07:07 +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
a0cc52731e expand table constraints; improve cut management; speed up presolve 2020-03-19 00:24:10 +01:00
Laurent Perron
6ec3362ad0 speed up presolve 2019-10-24 18:24:11 +02:00
Laurent Perron
2dbf3895f2 remove more usage of 0LL and 1LL; reformat code 2019-09-12 10:11:02 +02:00
Laurent Perron
9e0f52f562 improve cp-sat internals 2019-03-12 17:41:26 +01:00
Corentin Le Molgat
b027e57e95 dotnet: Remove reference to dotnet release command
- Currently not implemented...

Add abseil patch

- Add patches/absl-config.cmake

Makefile: Add abseil-cpp on unix

- Force abseil-cpp SHA1 to 45221cc
  note: Just before the PR #136 which break all CMake

Makefile: Add abseil-cpp on windows

- Force abseil-cpp SHA1 to 45221cc
  note: Just before the PR #136 which break all CMake

CMake: Add abseil-cpp

- Force abseil-cpp SHA1 to 45221cc
  note: Just before the PR #136 which break all CMake

port to absl: C++ Part

- Fix warning with the use of ABSL_MUST_USE_RESULT
  > The macro must appear as the very first part of a function
    declaration or definition:
    ...
    Note: past advice was to place the macro after the argument list.
  src: dependencies/sources/abseil-cpp-master/absl/base/attributes.h:418
- Rename enum after windows clash
- Remove non compact table constraints
- Change index type from int64 to int in routing library
- Fix file_nonport compilation on windows
- Fix another naming conflict with windows (NO_ERROR is a macro)
- Cleanup hash containers; work on sat internals
- Add optional_boolean sub-proto

Sync cpp examples with internal code
- reenable issue173 after reducing number of loops

port to absl: Python Part

- Add back cp_model.INT32_MIN|MAX for examples

Update Python examples

- Add random_tsp.py
- Run words_square example
- Run magic_square in python tests

port to absl: Java Part

- Fix compilation of the new routing parameters in java
- Protect some code from SWIG parsing

Update Java Examples

port to absl: .Net Part

Update .Net examples

work on sat internals; Add C++ CP-SAT CpModelBuilder API; update sample code and recipes to use the new API; sync with internal code

Remove VS 2015 in Appveyor-CI

- abseil-cpp does not support VS 2015...

improve tables

upgrade C++ sat examples to use the new API; work on sat internals

update license dates

rewrite jobshop_ft06_distance.py to use the CP-SAT solver

rename last example

revert last commit

more work on SAT internals

fix
2018-11-30 14:48:55 +01:00
Laurent Perron
87b9d55b21 update license headers 2018-11-10 18:00:53 +01:00
Corentin Le Molgat
f2989d319d Replace non ASCII character '–' in comments
- Crash on ubuntu 16.04 during 'make java'...
2018-09-10 13:37:04 +02:00
Laurent Perron
4caaef3c23 deep sync with base library renaming; lint checking; Speedup sat; new crash procedure for glop 2018-08-28 11:19:49 +02:00
Laurent Perron
bd04f656b3 rename MODEL_SAT to FEASIBLE, MODEL_UNSAT to INFEASIBLE 2018-07-02 15:35:40 +02:00
Laurent Perron
c1ab121ff7 ITIVector -> gtl::ITIVector; experimental LNS code for SAT 2018-06-26 21:24:10 +02:00
Laurent Perron
70e73d8754 clang-format 2018-06-08 16:40:43 +02:00
Laurent Perron
df333efbcd rewrite drat checker for sat; make fz presolve deterministic; more optims on sat internals 2018-05-03 15:00:06 +02:00
Laurent Perron
ebee158577 small changes in SAT internals 2018-04-17 13:00:25 +02:00
Laurent Perron
8623fc3580 speed up sat cumulative; add namespaces to base library + fix code 2018-04-11 13:00:30 +02:00
Laurent Perron
9044de9355 new heuristics to minimize clauses in SAT; base library changes 2018-03-06 18:17:36 +01:00
Laurent Perron
b238ebbdda Some fixes in the pure-SAT part of the cp_model solver:
- Use the model time limit (to make ^C work)
- Take into account some part of the presolve in the deterministic time.
- Move the drat flag there.
2018-02-23 17:28:21 +01:00
Laurent Perron
6b8cd2cdc2 finish C$ Sat Integer API; Refactor Glop code; Add new option for Glop Scaling; speed improvements in the sat solver 2018-02-16 17:08:01 +01:00
Laurent Perron
05f03b33c1 improve sat/circuit; various reimplementations 2018-02-12 11:36:18 +01:00
Laurent Perron
604587eec7 minor changes; change the search parameters in the cp_model.proto 2018-01-15 10:41:09 +01:00
Laurent Perron
8d7320b962 deep sync with base library; prepare for abseil.io integration 2017-12-08 14:52:49 +01:00
Laurent Perron
e14ee86de3 move rcpsp parser to ortools/data; continue working on SAT 2017-11-07 15:45:52 +01:00
Laurent Perron
2c7a8bf8f6 change copyright date 2017-10-17 13:08:10 +02:00
Laurent Perron
394bbe232a move graph code around; improve internals of sat solver 2017-10-09 11:21:43 -07:00
Laurent Perron
086640da72 move graph code around; improve sat code 2017-09-29 15:08:48 +02:00
Laurent Perron
7155047b85 cleanup includes in sat 2017-07-27 11:28:55 -07:00
Laurent Perron
c6f128db17 simplify sat internals 2017-07-24 10:31:53 -07:00
Laurent Perron
0501a62221 add sat clause simplifications to cp_model solver 2017-07-20 11:30:17 -07:00