Automating Reformulation of Essence Specifications via Graph Rewriting
Ian Miguel, Andr\'as Z. Salamon, Christopher Stone

TL;DR
This paper introduces an automated system that uses graph rewriting techniques to reformulate Essence constraint models, aiming to improve their solving performance by leveraging high-level variable structures.
Contribution
The work presents a novel graph rewriting approach integrated with Essence to automatically optimize constraint models for better efficiency.
Findings
Effective reformulation improves solving performance
System successfully translates solutions back to original models
Demonstrated with a detailed case study
Abstract
Formulating an effective constraint model of a parameterised problem class is crucial to the efficiency with which instances of the class can subsequently be solved. It is difficult to know beforehand which of a set of candidate models will perform best in practice. This paper presents a system that employs graph rewriting to reformulate an input model for improved performance automatically. By situating our work in the Essence abstract constraint specification language, we can use the structure in its high level variable types to trigger rewrites directly. We implement our system via rewrite rules expressed in the Graph Programs 2 language, applied to the abstract syntax tree of an input specification. We show how to automatically translate the solution of the reformulated problem into a solution of the original problem for verification and presentation. We demonstrate the efficacy of…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSemantic Web and Ontologies · Model-Driven Software Engineering Techniques · Formal Methods in Verification
MethodsSparse Evolutionary Training
