Abstract
Constraint programming (CP) is mainly based on filtering algorithms; their association with global constraints is one of the main strengths of CP because they exploit the specific structure of each constraint. This chapter is an overview ofthese two techniques. A collection of the most frequently used global constraints is given and some filtering algorithms are detailed. In addition, we try to identify how filtering algorithms can be designed. At last, we identify some problems that deserve to be addressed in the future.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Van Hoeve and Régin gave an example of a scheduling alternative: consider a set of activities and suppose that each activity can be processed either on the factory line 1 formed by the set of unary resources R1, or on the factory line 2 formed by the set of unary resources R2. Thus, at the beginning, the set of resources that will be used by an activity is not known. Also the set of activities that will be processed by a resource is not known. However, it is useful to express that the activities that will be processed on each line must be pairwise different. This can be done by defining two alldiff constraints, involving the start variables of each activity, and by stating that a start variable will be involved in exactly one alldiff constraint. Van Hoeve and Régin shown how arc consistency can be efficiently establish for the conjunction of these 2 alldiff constraints.
- 2.
This complexity comes from the integer capacities. In this case, the flow is augmented by at least one for each iteration.
- 3.
This algorithm can be viewed as a generalization of the constructive disjunction in the case where several constraints must be satisfied and not only one.
- 4.
Note that imposing an item means that the problem is equivalent to the problem where the item is ignored and K becomes K−w i and B becomes B−p i.
- 5.
A partial function δ(q,x) does not have to be defined for any combination of q∈Q and x∈Σ; and if δ(q,x) is defined and equal to q′ then it does not exist another symbol y such that δ(q,y)=q′.
- 6.
This is really at the same time because the two papers were presented during the same session at the same conference: CP’04.
- 7.
Once again it was exactly at the same time, because the two papers were presented at the same conference : CP’06
References
Ågren M, Beldiceanu N, Carlsson M, Sbihi M, Truchet C, Zampelli S (2009) Six ways of integrating symmetries within non-overlapping constraints. In: CPAIOR’09, pp 11–25
Ahuja RK, Magnanti TL, Orlin JB (1993) Network flows. Prentice Hall, NJ
Amilhastre J (1999) Reprsentation par un automate d’ensemble de solutions de problme de satisfaction de contraintes. PhD thesis, University of Montpellier II
Aron I, Van Hentenryck P (2002) A constraint satisfaction approach to the robust spanning tree problem with interval data. In: Proceedings of UAI, pp 18–25
Artiouchine K, Baptiste P (2005) Inter-distance constraint: an extension of the all-different constraint for scheduling equal length jobs. In: CP, pp 62–76
Artiouchine K, Baptiste P (2007) Arc-b-consistency of the inter-distance constraint. Constraints 12(1):3–19
Beldiceanu N (2000) Global constraints as graph properties on a structured network of elementary constraints of the same type. In: Proceedings CP, pp 52–66
Beldiceanu N (2001) Pruning for the minimum constraint family and for the number of distinct values constraint family. In: Proceedings CP’01. Pathos, Cyprus, pp 211–224
Beldiceanu N (2005) Global constraint catalog. In: SICS technical report, pp T–2005–08
Beldiceanu N, Carlsson M (2001) Revisiting the cardinality operator and introducing the cardinality-path constraint family. In: Proceedings ICLP, vol 2237, pp 59–73
Beldiceanu N, Carlsson M (2001) Sweep as a generic pruning technique applied to the non-overlapping rectangles constraints. Proceedings CP’01, pp 377–391
Beldiceanu N, Carlsson M, Debruyne R, Petit T (2005) Reformulation of global constraints based on constraint checkers. Constraints 10(4):339–362
Beldiceanu N, Carlsson M, Demassey S, Petit T (2006) Filtrage bas sur des proprits de graphes. In: Proceedings of JFPC’06
Beldiceanu N, Carlsson M, Demassey S, Petit T (2006) Graph-based filtering. In: Proceedings of CP’06, pp 59–74
Beldiceanu N, Carlsson M, Petit T (2004) Deriving filtering algorithms from constraint checkers. In: CP’04, pp 107–122
Beldiceanu N, Carlsson M, Rampon J-X, Truchet C (2005) Graph invariants as necessary conditions for global constraints. In: Proceedings of CP’05, pp 92–106
Beldiceanu N, Contejean E (1994) Introducing global constraints in chip. Math Comput Model 20(12):97–123
Beldiceanu N, Flener P, Lorca X (2005) The tree constraint. In: Proceedings of CPAIOR05, pp 64–78
Beldiceanu N, Flener P, Lorca X (2008) Combining tree partitioning, precedence, and incomparability constraints. Constraints 13(4):459–489
Beldiceanu N, Guo Q, Thiel S (2001) Non-overlapping constraints between convex polytopes. In: Proceedings CP’01, Pathos, Cyprus, 2001, pp 392–407
Beldiceanu N, Katriel I, Lorca X (2006) Undirected forest constraints. In: CPAIOR’06, pp29–43
Beldiceanu N, Lorca X (2007) Necessary condition for path partitioning constraints. In: CPAIOR’07, pp 141–154
Beldiceanu N, Petit T, Rochart G (2005) Bornes de caractristiques de graphes. In: Proceedings of JFPC’05
Beldiceanu N, Petit T, Rochart G (2005) Bounds of graph characteristics. In: Proceedings of CP’05, pp 742–746
Beldiceanu N, Carlsson M, Poder E, Sadek R, Truchet C (2007) A generic geometrical constraint kernel in space and time for handling polymorphic k-dimensional objects. In: CP’07, pp 180–194
Berge C (1970) Graphe et Hypergraphes. Dunod, Paris
Bessiere C, Hebrard E, Hnich B, Kiziltan Z, Quimper C-G, Walsh T (2007) Reformulating global constraints: the slide and regular constraints. In: Proceedings of SARA’07, pp 80–92
Bessière C, Régin J-C (1996) Mac and combined heuristics: two reasons to forsake fc (and cbj?) on hard problems. In: CP96, second international conference on principles and practice of constraint programming, Cambridge, USA, pp 61–75
Bessière C, Régin J-C (1997) Arc consistency for general constraint networks: preliminary results. In: Proceedings of IJCAI’97, Nagoya, pp 398–404
Bessière C, Régin J-C (1999) Enforcing arc consistency on global constraints by solving subproblems on the fly. In: Proceedings of CP’99, Alexandria, VA, USA, pp 103–117
Bessière C, Régin J-C (2001) Refining the basic constraint propagation algorithm. In: Proceedings of IJCAI’01, Seattle, WA, USA, pp 309–315
Bleuzen-Guernalec N, Colmerauer A (1997) Narrowing a 2n-block of sortings in o(nlog(n)). In: Proceedings of CP’97, Linz, Austria, pp 2–16
Brand S, Narodytska N, Quimper C-G, Stuckey P, Walsh T (2007) Encodings of the sequence constraint. In: Proceedings of CP 2007, pp 210–224
Carlsson M, Beldiceanu N (2002) Arc-consistency for a chain of lexicographic ordering constraints. Technical Report T2002:18, SICS
Carlsson M, Beldiceanu N (2002) Revisiting the lexicographic ordering constraint. Technical Report T2002:17, SICS
Carlsson M, Beldiceanu N (2004) From constraints to finite automata to filtering algorithms. In: European Symposium on Programming (ESOP’04), pp 94–108
Caseau Y, Guillo P-Y, Levenez E (1993) A deductive and object-oriented approach to a complex scheduling problem. In: Proceedings of DOOD’93
Caseau Y, Laburthe F (1997) Solving various weighted matching problems with constraints. In: Proceedings CP97, Austria, pp 17–31
Cormen TH, Leiserson CE, Rivest RL (1990) Introduction to algorithms. MIT Press, Cambridge
Damaschke P, Müller H, Kratsch D (1990) Domination in convex and chrodal bipartite graphs. Inform Process Lett 36:231–236
Dantzig G (1957) Discrete variable extremum problems. Oper Res 5:226–277
Dechter R, Meiri I, J Pearl (1991) Temporal constraint network. Artif Intell 49(1–3):61–95
Dixon B, Rauch M, Tarjan R (1992) Verification and sensitivity analysis of minimum spanning trees in linear time. SIAM J Comput 21(6):1184–1192
Dooms G, Deville Y, Dupont P (2005) Cp(graph): introducing a graph computation domain in constraint programming. In: Proceedings of CP’05
Dooms G, Katriel I (2006) The minimum spanning tree constraint. In: CP’06, pp 152–166
Dooms G, Katriel I (2007) The not-too-heavy spanning tree constraint. In: Proceedings of CPAIOR07, pp 59–70
Earley J (1970) An efficient context-free parsing algorithm. Commu ACM 2(13):94–102
Fahle T, Sellmann M (2002) Cost based filtering for the constrained knapsack problem. Ann Oper Res 115(1–4):73–93
Focacci F, Lodi A, Milano M (1999) Cost-based domain filtering. In: Proceedings CP’99, Alexandria, VA, USA, pp 189–203
Focacci F, Lodi A, Milano M (1999) Integration of cp and or methods for matching problems. In: Proceedings CP-AI-OR 99, Ferrara, Italy
Freuder E, Wallace R (1992) Partial constraint satisfaction. Artif Intell 58:21–70
Frisch A, Hnich B, Kiziltan Z, Miguel I, Walsh T (2002) Global constraints for lexicographic orderings. In: CP’02, pp 93–108
Gellermann T, Sellmann M, Wright R (2005) Shorter path constraints for the resource constrained shortest path problem. In: CPAIOR’05, pp 201–216
Gent I, Jefferson C, Miguel I, Nightingale P (2007) Data structures for generalised arc consistency for extensional constraints. In: Proceedings of AAAI’07, Vancouver, Canada, pp191–197
Gervet C (1994) Conjunto: constraint logic programming with finite set domains. In: Proceedings ILPS-94
Gervet C (2006) Constraints over structured domains. In: Handbook of constraint programming. Elsevier, Amsterdam
Gervet C (2006) Programmation par Contraintes sur Domaines Ensemblistes. Habilitation à diriger des Recherches, Université de Nice-Sophia Antipolis
Gervet C, Van Hentenryck P (2006) Length-lex ordering for set csps. In: AAAI
Gomes C, Regin J-C (2003) The alldiff matrix. Technical report, Intelligent Information Institute – Cornell University
Hanak D (2003) Implementing global constraints as structured graphs of elementary constraints. Sci J Acta Cybern 16:241–258
Hellsten L, Pesant G, van Beek P (2004) A domain consistency algorithm for the stretch constraint. In: Proceedings of CP’04, pp 290–304
Henz M, Müller T, Thiel S (2003) Global constraints for round robin tournament scheduling. Eur J Oper Res 153(1):92–101
ILOG (1999) ILOG Solver 4.4 User’s manual. ILOG S.A
Janssen P, Vilarem M-C (1988) Problmes de satisfaction de contraintes: Techniques de rsolution et application la synthse de peptides. Technical Report 54, CRIM
Jégou P (1991) Contribution à l’Etude des Problèmes de Satisfaction de Contraintes: Algorithmes de Propagation et de Résolution, Propagation de Contraintes dans les Réseaux dynamiques. PhD thesis, Université de Montpellier II
Kadioglu S, Sellmann M (2008) Efficient context-free grammar constraints. In: AAAI-08, pp310–316
Kadioglu S, Sellmann M (2009) Grammar constraints. Constraints 15(1):117–144
Katriel I (2004) Dynamic heaviest paths in dags with arbitrary edge weights. In: CPAIOR’04, pp 190–199
Katriel I, Michel L, Van Hentenryck P (2005) Maintaining longest paths incrementally. Constraints 10(2):159–183
Katriel I, Sellmann M, Upfal E, Van Hentenryck P (2007) Propagating knapsack constraints in sublinear time. In: AAAI-07, pp 231–236
Katriel I, Thiel S (2003) Fast bound consistency for the global cardinality constraint. In:Proceedings CP’03, Kinsale, Ireland, pp 437–451
Katsirelos G, Narodytska N, Walsh T (2009) Reformulating global grammar constraints. In:CPAIOR’09, pp 132–147
Katsirelos G, Walsh T (2007) A compression algorithm for large arity extensional constraints. In:Proceedings of CP’07, Providence, USA, pp 379–393
Kocjan W, Kreuger P (2004) Filtering methods for symmetric cardinality constraints. In: First international conference, CPAIOR 2004, Nice, France, pp 200–208
Kowalski R (1979) Algorithm=logic+control. Comm ACM 22(7):424–436
Labbé M, Laporte G, Martello S (2003) Upper bounds and algorithms for the maximum cardinality bin packing problem. Eur J Oper Res 149(3):490–498
Larrosa J, Meseguer P, Schiex T, Verfaillie G (1998) Reversible DAC and other improvements for solving Max-CSP. In:Proceedings AAAI, pp 347–352
Larrosa J, Meseguer P (1996) Exploiting the use of DAC in Max-CSP. In:CP
Lawler E (1976) Combinatorial optimization: networks and matroids. Holt, Rinehart and Winston
Le Pape C, Perron L, Régin J-C, Shaw P (2002) Robust and parallel solving of a network design problem. In:CP’02, Ithaca, NY, USA, pp 633–648
Leconte M (1996) A bounds-based reduction scheme for constraints of difference. In:Constraint-96, second international workshop on constraint-based reasoning, Key West, FL, USA
Lecoutre C, Szymanek R (2006) Generalized arc consistency for positive table constraints. In:Proceedings of CP’06, Providence, USA, pp 284–298
Lhomme O (2004) Arc-consistency filtering algorithms for logical combinations of constraints. In:Proceedings of CP-AI-OR’04, Nice, France
Lhomme O, Régin J-C (2005) A fast arc consistency algorithm for n-ary constraints. In: Proceedings of AAAI’05, Pittsburgh, USA, pp 405–410
Lopez-Ortiz A, Quimper C-G, Tromp J, van Beek P (2003) A fast and simple algorithm for bounds consistency of the alldifferent constraint. In: IJCAI’03, Acapulco, Mexico, pp 245–250
Maher M (2009) Open constraints in a boundable world. In: CPAIOR, pp 163–177
Maher M, Narodytska N, Quimper C-G, Walsh T (2008) Flow-based propagators for the sequence and related global constraints. In: Proceedings CP 2008, pp 159–174
Manku G (1994) An o(m+n log* n) algorithm for sensitivity analysis of minimum spanning trees. citeseer.ist.psu.edu/manku94om.html
Martello S, Toth P (1990) Knapsack problems. Wiley, New York
Melhorn K, Thiel S (2000) Faster algorithms for bound-consistency of the sortedness and the alldifferent constraint. In: Proceedings of CP’00, Singapore, pp 306–319
Micali S, Vazirani VV (1980) An \(O(\sqrt{\vert V \vert }\vert E\vert )\) algorithm for finding maximum matching in general graphs. In: Proceedings 21st FOCS, pp 17–27
Michel L, Van Hentenryck P (2003) Maintaining longest paths incrementally. In: CP’03, pp 540–554
Pachet F, Roy P (1999) Automatic generation of music programs. In: Proceedings of CP’99, Alexandria, VA, USA, pp 331–345
Pesant G (2001) A filtering algorithm for the stretch constraint. In: Proceedings CP’01, Pathos, Cyprus, pp 183–195
Pesant G (2003) A regular language membership constraint for sequence of variables. In: Workshop on modelling and reformulation constraint satisfaction problems, pp 110–119
Pesant G (2004) A regular language membership constraint for finite sequences of variables. In: Proceedins of CP’04, pp 482–495
Pesant G, Régin J-C (2005) Spread: a balancing constraint based on statistics. In: CP’05, pp 460–474
Petit T, Régin J-C, Bessière C (2001) Specific filtering algorithms for over-constrained problems. In: Proceedings CP’01, Pathos, Cyprus, pp 451–465
Petit T, Régin J-C, Bessière C (2002) Range-based algorithms for max-csp. In: Proceedings CP’02, Ithaca, NY, USA, pp 280–294
Puget J-F (1994) A c++ implementation of clp. Technical report, ILOG S.A
Quimper C-G, López-Ortiz A, Pesant G (2006) A quadratic propagator for the inter-distance constraint. In: AAAI-06
Quimper C-G, van Beek P, López-Ortiz A, Golynski A, Sadjad SB (2003) An efficient bounds consistency algorithm for the global cardinality constraint. In: Proceedings CP’03, Kinsale, Ireland, pp 600–614
Quimper C-G, Walsh T (2006) Global grammar constraints. In: CP’06, pp 751–755
Quimper C-G, Walsh T (2006) Global grammar constraints. Technical report, Waterloo University
Quimper C-G, Walsh T (2007) Decomposing global grammar constraints. In: CP’07, pp590–604
Quimper C-G, Walsh T (2008) Decomposing global grammar constraints. In: NECTAR, AAAI-08, pp 1567–1570
Régin J-C (1994) A filtering algorithm for constraints of difference in CSPs. In: Proceedings AAAI-94, Seattle, Washington, pp 362–367
Régin J-C (1995) Développement d’outils algorithmiques pour l’Intelligence Artificielle. Application à la chimie organique. PhD thesis, Université de Montpellier II
Régin J-C (1996) Generalized arc consistency for global cardinality constraint. In: Proceedings AAAI-96, Portland, Oregon, pp 209–215
Régin J-C (1997) The global minimum distance constraint. Technical report, ILOG
Régin J-C (1999) Arc consistency for global cardinality with costs. In: Proceedings of CP’99, Alexandria, VA, USA, pp 390–404
Régin J-C (1999) The symmetric alldiff constraint. In: Proceedings of IJCAI’99, Stockholm, Sweden, pp 425–429
Régin J-C (2002) Cost based arc consistency for global cardinality constraints. Constraints 7(3-4):387–405
Régin J-C (2003) Global constraints and filtering algorithms. In: Milano M (ed) Constraints and integer programming combined Kluwer, Dordrecht
Régin J-C (2003) Using constraint programming to solve the maximum clique problem. In:CP’03, Kinsale, Ireland, pp 634–648
Régin J-C (2004) Modeling problems in constraint programming. In: Tutorial CP’04 Available at www.constraint-programming.com/people/regin/papers/modelincp_OnlinePDF.pdf
Régin J-C (2004) Modélisation et Contraintes globales en programmation par contraintes. Habilitation à diriger des Recherches, Université de Nice-Sophia Antipolis
Régin J-C (2005) Combination of among and cardinality constraints. In: Proceedings of CP-AI-OR’05
Régin J-C (2008) Simpler and incremental consistency checking and arc consistency filtering algorithms for the weighted spanning tree constraint. In: CPAIOR’08, pp 233–247
Régin J-C, Gomes C (2004) The cardinality matrix constraint. In: CP’04, Toronto, Canada, pp 572–587
Régin J-C, Petit T, Bessière C, Puget J-F (2000) An original constraint based approach for solving over constrained problems. In: Proceedings of CP’00, Singapore, pp 543–548
Régin J-C, Petit T, Bessière C, Puget J-F (2001) New lower bounds of constraint violations for over-constrained problems. In: Proceedings CP’01, Pathos, Cyprus, pp 332–345
Régin J-C, Puget J-F (1997) A filtering algorithm for global sequencing constraints. In: CP97: Third international conference on principles and practice of constraint programming, pp32–46
Régin J-C, Rueher M (2000) A global constraint combining a sum constraint and difference constraints. In: Proceedings of CP’00, Singapore, pp 384–395
Sadler A, Gervet C (2004) Hybrid set domains to strengthen constraint propagation and reduce symmetries. In: CP, pp 604–618
Sadler A, Gervet C (2008) Enhancing set constraint solvers with lexicographic bounds. JHeuristics 14(1):23–67
Schaus P (2009) Solving balancing and bin-packing problems with constraint programming. PhD thesis, Universit catholique de Louvain Louvain-la-Neuve
Schaus P, Deville Y, Dupont P, Régin J-C (2007) The deviation constraint. In: CPAIOR’07, pp 260–274
Schaus P, Deville Y, Dupont P, Rgin J-C (2006) Simplification and extension of the spread constraint. In: CP’06, Workshop on constraint propagation and implementation, pp 72–92
Schaus P, Deville Y, Dupont P, Rgin J-C (2007) Simplification and extension of the SPREAD constraint. In: Future and trends of constraint programming, ISTE, Washington DC, pp 95–99
Schaus P, Deville Y (2008) A global constraint for bin-packing with precedences: application to the assembly line balancing problem. In: AAAI-08, pp 369–374
Sellmann M (2003) Approximated consistency for knapsack constraints. In: CP’03, pp679–693
Sellmann M (2003) Cost-based filtering for shorter path constraints. In: CP’03, pp 694–708
Sellmann M (2004) The practice of approximated consistency for knapsack constraints. In: AAAI-04, pp 179–184
Sellmann M (2006) The theory of grammar constraints. In: CP’06, pp 530–544
Sellmann M, Gellermann T, Wright R (2007) Cost-based filtering for shorter path constraints. Constraints 12(2):207–238
Shaw P (2004) A constraint for bin packing. In: CP’04, pp 648–662
Simonis H (1996) Problem classification scheme for finite domain constraint solving. In: CP96, Workshop on constraint programming applications: an inventory and taxonomy, Cambridge, USA, pp 1–26
Sorlin S, Solnon C (2004) A global constraint for graph isomorphism problems. In: CPAIOR’04, pp 287–302
Sorlin S, Solnon C (2008) A parametric filtering algorithm for the graph isomorphism problem. Constraints 13(4):518–537
Stergiou K, Walsh T (1999) The difference all-difference makes. In: Proceedings of IJCAI’99, Stockholm, Sweden, pp 414–419
Tarjan R (1982) Sensitivity analysis of minimum spanning trees and shortest path trees. Inform Process Lett 14(1):30–33
Tarjan RE (1983) Data structures and network algorithms. In: CBMS-NSF regional conference series in applied mathematics. SIAM, Philadelphia
Trick M (2001) A dynamic programming approach for consistency and propagation for knapsack constraints. In: CPAIOR’01
Trick M (2003) A dynamic programming approach for consistency and propagation for knapsack constraints. Ann Oper Res 118:73–84
Van Hentenryck P, Deville Y (1991) The cardinality operator: a new logical connective for constraint logic programming. In: Proceedings of ICLP-91, Paris, France, pp 745–759
Van Hentenryck P, Deville Y, Teng CM (1992) A generic arc-consistency algorithm and its specializations. Artif Intell 57:291–321
Van Hentenryck P, Michel L (2003) Control abstractions for local search. In: CP’03, pp 66–80
van Hentenryck P, Saraswat V, Deville Y (1998) Design, implementation, and evaluation of the constraint language cc(fd). J Logic Program 37(1–3):139–164
Van Hentenryck P, Yip J, Gervet C, Dooms G (2008) Bound consistency for binary length-lex set constraints. In: AAAI, pp 375–380
van Hoeve W-J, Katriel I (2006) Global constraints. In: Handbook of constraint programming. Elsevier, Amsterdam
van Hoeve W-J, Pesant G, Rousseau L-M, Sabharwal A (2006) Revisiting the sequence constraint. In: Proceedings of CP 2006, Nantes, France, pp 620–634
van Hoeve W-J, Pesant G, Rousseau L-M, Sabharwal A (2009) New filtering algorithms for combinations of among constraints. Constraints 14:273–292
Vempaty N (1992) Solving constraint satisfaction problems using finite state automata. In: AAAI-92, pp 453–458
Wallace R (1994) Directed arc consistency preprocessing as a strategy for maximal constraint satisfaction. In: Proceedings ECAI, pp 69–77
Zampelli S, Deville Y, Solnon C, Sorlin S, Dupont P (2007) Filtering for subgraph isomorphism. In: CP, pp 728–742
Zhou J (1996) A constraint program for solving the job-shop problem. In: Proceedings of CP’96, Cambridge, pp 510–524
Zhou J (1997) Computing smallest cartesian products of intervals: application to the jobshop scheduling problem. PhD thesis, Université de la Méditerranée, Marseille
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer Science+Business Media LLC
About this chapter
Cite this chapter
Régin, JC. (2011). Global Constraints: A Survey. In: van Hentenryck, P., Milano, M. (eds) Hybrid Optimization. Springer Optimization and Its Applications, vol 45. Springer, New York, NY. https://doi.org/10.1007/978-1-4419-1644-0_3
Download citation
DOI: https://doi.org/10.1007/978-1-4419-1644-0_3
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4419-1643-3
Online ISBN: 978-1-4419-1644-0
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)