MiniZinc Documentation - Standard Library

Sections:

Declarations in this section:

Functions and Predicates
annotation bool_search(array [int] of var bool: x, ann: select, ann: choice, ann: explore)

Specify search on variables x, with variable selection strategy select, value choice strategy choice, and exploration strategy explore.

annotation float_search(array [int] of var float: x, float: prec, ann: select, ann: choice, ann: explore)

Specify search on variables x, with precision prec, variable selection strategy select, value choice strategy choice, and exploration strategy explore.

annotation int_search(array [int] of var int: x, ann: select, ann: choice, ann: explore)

Specify search on variables x, with variable selection strategy select, value choice strategy choice, and exploration strategy explore.

annotation seq_search(array [int] of ann: s)

Sequentially perform the searches specified in array s

annotation set_search(array [int] of var set of int: x, ann: select, ann: choice, ann: explore)

Specify search on variables x, with variable selection strategy select, value choice strategy choice, and exploration strategy explore.

Parameters
annotation anti_first_fail

Choose the variable with the largest domain

annotation dom_w_deg

Choose the variable with largest domain, divided by the number of attached constraints weighted by how often they have caused failure

annotation first_fail

Choose the variable with the smallest domain

annotation impact

Choose the variable with the highest impact so far during the search

annotation input_order

Search variables in the given order

annotation largest

Choose the variable with the largest value in its domain

annotation max_regret

Choose the variable with largest difference between the two smallest values in its domain

annotation most_constrained

Choose the variable with the smallest domain, breaking ties using the number of attached constraints

annotation occurrence

Choose the variable with the largest number of attached constraints

annotation smallest

Choose the variable with the smallest value in its domain

Parameters
annotation indomain

Assign values in ascending order

annotation indomain_interval

If the domain consists of several contiguous intervals, reduce the domain to the first interval. Otherwise bisect the domain.

annotation indomain_max

Assign the largest value in the domain

annotation indomain_median

Assign the middle value in the domain

annotation indomain_middle

Assign the value in the domain closest to the mean of its current bounds

annotation indomain_min

Assign the smallest value in the domain

annotation indomain_random

Assign a random value from the domain

annotation indomain_reverse_split

Bisect the domain, excluding the lower half first

annotation indomain_split

Bisect the domain, excluding the upper half first

annotation indomain_split_random

Bisect the domain, randomly selecting which half to exclude first

annotation outdomain_max

Exclude the largest value from the domain

annotation outdomain_median

Exclude the middle value from the domain

annotation outdomain_min

Exclude the smallest value from the domain

annotation outdomain_random

Exclude a random value from the domain

Parameters
annotation complete

Perform a complete search