Skip to content

Conversation

@cprudhom
Copy link
Member

@gadavidd I wasn't able to push to your branch so I created a new one, namely gadavidd-set-expression-improvements.
It is based on your work (#1107), rebased upon the current version of develop.
It also includes some modifications to align the structure with what was done for int expressions.

Other solution: add my last commit to your branch and update your PR (in that case, authorship is clear).
Let me know your choice.

cprudhom and others added 30 commits August 28, 2025 17:04
…izeOf fails at estimating the size of the model.
- interlace n arrays
- extract a sub-matrix from a matrix
* #1112 : fix bin packing initial propagation

* move code initialising P and sumP from constructor to fullPropagation in PropBinPacking

* clear R and P sets before full propagation in PropBinPacking
* Update maven-test.yml

The runner version was bumped to 2.321 which rely on Ubuntu 24.4 instead of Ubuntu 22.04. 
And the default version Python is 3.12 instead of 3.10, which seems to make waf fails
* Update maven-test.yml (ibex has its own job)
* Update maven-test.yml (simplification)
+ remove 'scores' structure from PickOnFil
cprudhom and others added 21 commits August 28, 2025 17:08
Fix issues relative to enteringVariable and leavingVariable and how values close to 0. are managed
+add model and decision path to AbstractStrategy
Can be used to map double to Identity-based objects
- Replace TObjectDoubleMap by Weightable for efficiency reason
- Dom/WDeg now manages futvars (via Element) for itself and Dom/WDegRef
- remove AbstractCriterionBasedVariableSelector#increase (only required by Dom/WDeg and Dom/WDegRef)
… The variables enqueued during each fixpoint that ends with failure are collected and their weights are update with the value `(l - i) / l` where l is the number of enqueued variables and i the position of the variable in the list.

- reduce variants to one
- remove PropagationInsight
…eActivity.

+ Change threshold to switch between Array and Map
+ remove call to `ensureCapacity` from `get`
Ibex: migrate script and workflow to v2.9.1
- update the installation steps from the ibex install script
- update pom.xml to make tests work
- change workflow to export LD_LIBRARY_PATH just before calling the test suite 
- add a dockerfile for test purpose
… existing structure for integer expressions.

+ update headers
Suggestion of improvements: detect constraints like `partition(SetVar[] sets, SetVar universe)`
… existing structure for integer expressions.

+ update headers
Suggestion of improvements: detect constraints like `partition(SetVar[] sets, SetVar universe)`
@cprudhom cprudhom added this to the 5.0.0 milestone Aug 28, 2025
@gadavidd
Copy link

@cprudhom I believe that the first solution is more suitable for choco-solver. As far as I'm concerned, this approach is fine. In any case, I agree with whatever you think is best. The important thing is that we continue to contribute to the development of choco-solver.

@cprudhom cprudhom changed the base branch from master to develop August 29, 2025 07:16
@cprudhom
Copy link
Member Author

Ok, so in that case, I'll cherry-pick the files and create a new PR.

@cprudhom cprudhom closed this Aug 29, 2025
@cprudhom cprudhom deleted the gadavidd-set-expression-improvements branch August 29, 2025 08:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants