What's new
New constraints
AbsoluteDifferenceConstraint
Binary constraint enforcing |left - right| op bound over numeric variables, with full IntervalDomain support via symmetric interval-arithmetic bounds narrowing.
csp.absoluteDifferenceConstraint(x, y, Operator.LEQ, 2.0) // |x - y| <= 2
csp.absoluteDifferenceConstraint(x, y, Operator.EQ, 3.0) // |x - y| == 3MaxConstraint
N-ary constraint enforcing max(v1, v2, ..., vn) op bound, with full IntervalDomain support.
csp.maxConstraint(Set.of(x, y, z), Operator.LEQ, 10.0) // max(x,y,z) <= 10
csp.maxConstraint(Set.of(x, y, z), Operator.EQ, 5.0) // max(x,y,z) == 5
csp.maxConstraint(Set.of(x, y, z), Operator.GEQ, 3.0) // max(x,y,z) >= 3IntervalDomain propagation extended
- LexConstraint — bounds propagation now handles
IntervalDomainvariables, clipping bounds viawithBoundsinstead of value deletion. - CumulativeConstraint — timetabling propagation now supports
Variable<Double>start variables backed byIntervalDomainfor continuous scheduling.
Dependency updates
slf4j-api 2.0.17 → 2.0.18, maven-javadoc-plugin, maven-gpg-plugin, jacoco-maven-plugin, maven-source-plugin, actions/checkout.