MiniZinc: Some new implemented global constraints (decompositions)
For some reason I have implemented some more (decompositions of) global constraints from the great Global constraint catalog; all models use the stated example from that site.
I have tried as much as possible - and mostly succeeded - to make the predicates fully multi-directional, i.e. so that each and every parameter of a predicate can either be fix or free (decision variable).
See my other implementations of global constraint in MiniZinc here. Right now there are now about 150 of them, about of half of the 313 listed in the Global constraint catalog.
I have tried as much as possible - and mostly succeeded - to make the predicates fully multi-directional, i.e. so that each and every parameter of a predicate can either be fix or free (decision variable).
See my other implementations of global constraint in MiniZinc here. Right now there are now about 150 of them, about of half of the 313 listed in the Global constraint catalog.
- binary_tree.mzn: binary_tree
- change.mzn: change
- differs_from_at_least_k_pos.mzn: differs_from_at_least_k_pos
- distance_change.mzn: distance_change
- element_greatereq.mzn: element_greatereq
- element_lesseq.mzn: element_lesseq
- element_matrix.mzn: element_matrix
- element_product.mzn: element_product
- element_sparse.mzn: element_sparse
- elementn.mzn: elementn
- elements.mzn: elements
- elements_alldifferent.mzn: elements_alldifferent
- global_cardinality_no_loop.mzn: global_cardinality_no_loop
- global_cardinality_table.mzn: global_cardinality, using a table for the occurrences instead of an array
- element_product.mzn: element_product
- max_n.mzn: max_n
- max_nvalue.mzn: max_nvalue
- max_size_of_consecutive_var.mzn: max_size_of_consecutive_var
- maximum_modulo.mzn: maximum_modulo
- min_n.mzn: min_n
- min_nvalue.mzn: min_nvalue
- minimum_except_0.mzn: minimum_except_0
- minimum_greater_than.mzn: minimum_greater_than
- minimum_modulo.mzn: minimum_modulo
- minimum_weight_alldifferent.mzn: minimum_weight_alldifferent
- nequivalence.mzn: nequivalence
- next_element.mzn: next_element
- next_greater_element.mzn: next_greater_element
- not_all_equal.mzn: not_all_equal
- not_in.mzn: not_in
- npair.mzn: npair
- nvalue_on_intersection.mzn: nvalue_on_intersection
- nvalues_except_0.mzn: nvalues_except_0
- open_among.mzn: open_among
- open_atleast.mzn: open_atleast
- open_atmost.mzn: open_atmost
- open_global_cardinality.mzn: open_global_cardinality
- open_global_cardinality_low_up.mzn: open_global_cardinality_low_up
- orth_link_ori_siz_end.mzn: orth_link_ori_siz_end
- orth_on_the_ground.mzn: orth_on_the_ground
- product_ctr.mzn: product_ctr
- range_ctr.mzn: range_ctr
- same_and_global_cardinality.mzn: same_and_global_cardinality
- same_and_global_cardinality_low_up.mzn: same_and_global_cardinality_low_up
- sum_of_weights_of_distinct_values.mzn: sum_of_weights_of_distinct_values
- number_of_regions.mzn: Number of regions puzzle
- traffic_lights_table.mzn: Traffic lights problem using the table constraint