Propagation Algorithms for the Minimum-Distance Constraint
display math
paragraph
Mikael Z. Lagerkvist · ModRef 2026
Choose five sites.
Modelling min distance problems
layout: grid
Direct decomposition
display math
unordered list
- one distance variable per selected pair
- quadratic count of variables
- quadratic number of propagators
- (potentially) quadratic domain sizes
Dedicated constraint
display math
unordered list
- single constraint
- global view of problem
- smarter propagation choices
Pair-check checks on assignment
Forward-bound scans on assignment
Pair support starts on the site graph
Pair support removes D
Detail: one relation, four kernels
table
| Kernel | When it can act | What it does |
|---|---|---|
| Pair-check | both endpoints fixed | measures the selected pair |
| Forward-bound | one endpoint fixed | prunes inside the active radius |
| Full pair support | before either is fixed | finds a partner for every value |
| Advisors | after relevant domain events | revisits affected pairs and witnesses |
Pairwise and global variants package these kernels differently. Matching is a separate upper-bound pass.
Detail: one relation, three model views
table
| Model view | Decision variables | What the propagator sees |
|---|---|---|
| Indexed | p site-valued variables | one current site domain per position |
| Site-boolean | n selection booleans | selected and possible sites |
| Assignment-boolean | p × n assignment booleans | a Boolean encoding of each position domain |
paragraph
The pictures use the indexed view. The matching graph uses the union of its
current position domains.
Distance four solution
Build the conflicts for z = 5
A matching proves z < 5
Advisors and matching are useful
Parting remarks
unordered list
- Some propagators are easy to implement
- Advisors are useful
- Avoid quadratic numbers of propagators and variables
- Matching gives a useful upper bound for