Auto-tabling for subproblem presolving in MiniZinc

Jip J. Dekker, Gustav Björdal, Mats Carlsson, Pierre Flener, Jean Noël Monette

Research output: Contribution to journalArticleResearchpeer-review

Abstract

A well-known and powerful constraint model reformulation is to compute the solutions to a model part, say a custom constraint predicate, and tabulate them within an extensional constraint that replaces that model part. Despite the possibility of achieving higher solving performance, this tabling reformulation is often not tried, because it is tedious to perform; further, if successful, it obfuscates the original model. In order to encourage modellers to try tabling, we extend the MiniZinc toolchain to perform the automatic tabling of suitably annotated predicate definitions, without requiring any changes to solvers, thereby eliminating both the tedium and the obfuscation. Our experiments show that automated tabling yields the same tables as manual tabling, and that tabling is beneficial for solvers of several solving technologies.

Original languageEnglish
Pages (from-to)512-529
Number of pages18
JournalConstraints
Volume22
Issue number4
DOIs
Publication statusPublished - 1 Oct 2017
Externally publishedYes

Keywords

  • MiniZinc
  • Modelling methodology
  • Presolving
  • Tabling

Cite this