Probabilistic Constraint Handling Rules

Abstract Classical Constraint Handling Rules (CHR) provide a powerful tool for specifying and implementing constraint solvers and programs. The rules of CHR rewrite constraints (non-deterministically) into simpler ones until they are solved. In this paper we introduce an extension of Constraint Handling Rules (CHR), namely Probabilistic CHRs (PCHR). These allow the probabilistic “weighting” of rules, specifying the probability of their application. In this way we are able to formalise various randomised algorithms such as for example Simulated Annealing. The implementation is based on source-to-source transformation (STS). Using a recently developed prototype for STS for CHR, we could implement probabilistic CHR in a concise way with a few lines of code in less than one hour.

[1]  John C. Mitchell,et al.  Stochastic interaction and linear logic , 1995 .

[2]  N. Metropolis,et al.  Equation of State Calculations by Fast Computing Machines , 1953, Resonance.

[3]  Slim Abdennadher,et al.  Operational Semantics and Confluence of Constraint Propagation Rules , 1997, CP.

[4]  Michael J. Maher,et al.  Constraint Logic Programming: A Survey , 1994, J. Log. Program..

[5]  Slim Abdennadher,et al.  Essentials of Constraint Programming , 2010, Cognitive Technologies.

[6]  S. Muggleton Stochastic Logic Programs , 1996 .

[7]  V. S. Subrahmanian,et al.  Probabilistic Logic Programming , 1992, Inf. Comput..

[8]  Alessandra Di Pierrodipierro,et al.  Ergodic Average in Constraint Programming (Extended Abstract) , 1999 .

[9]  Herbert Wiklicky,et al.  An operational semantics for probabilistic concurrent constraint programming , 1998, Proceedings of the 1998 International Conference on Computer Languages (Cat. No.98CB36225).

[10]  John N. Tsitsiklis,et al.  Introduction to Probability , 2002 .

[11]  Thom W. Frühwirth,et al.  Theory and Practice of Constraint Handling Rules , 1998, J. Log. Program..

[12]  Charles M. Grinstead,et al.  Introduction to probability , 1999, Statistics for the Behavioural Sciences.

[13]  Prakash Panangaden,et al.  The semantic foundations of concurrent constraint programming , 1991, POPL '91.

[14]  Ehl Emile Aarts,et al.  Simulated annealing and Boltzmann machines , 2003 .

[15]  Peter J. Stuckey,et al.  Programming with Constraints: An Introduction , 1998 .

[16]  Herbert Wiklicky,et al.  Quantitative Observables and Averages in Probabilistic Constraint Programming , 1999, New Trends in Constraints.

[17]  Luc De Raedt,et al.  Bayesian Logic Programs , 2001, ILP Work-in-progress reports.

[18]  Radha Jagadeesan,et al.  Stochastic Processes as Concurrent Constraint Programs (An Extended Abstract) , 1999 .

[19]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[20]  Radha Jagadeesan,et al.  Stochastic processes as concurrent constraint programs , 1999, POPL '99.

[21]  Dorit S. Hochba,et al.  Approximation Algorithms for NP-Hard Problems , 1997, SIGA.

[22]  Krzysztof R. Apt,et al.  From Chaotic Iteration to Constraint Propagation , 1997, ICALP.

[23]  G. Grimmett,et al.  Probability and random processes , 2002 .

[24]  Rajeev Motwani,et al.  Randomized Algorithms , 1995, SIGA.

[25]  Vijay A. Saraswat,et al.  Concurrent constraint programming , 1989, POPL '90.