“…If we set l d = 0 and u d = 1 for all d ∈ D(X), the gcc is equal to the alldifferent constraint. A filtering algorithm for the gcc, establishing domain consistency, was developed in [7], making use of network flows.…”
Section: Open Global Cardinality Constraintsmentioning
confidence: 99%
“…In order to filter this constraint, we compute a flow in a particular graph, similar to the filtering of the original (closed) gcc [7]. Let X be a set of variables, and let S be a set variable with domain [L, U ], such that L ⊆ U ⊆ X.…”
Section: A Single Open Global Cardinality Constraintmentioning
confidence: 99%
“…Our work is based on the domain consistency filtering algorithm for the single gcc as developed in [7], and an extension of the algorithm presented above for a single open gcc. Again, we base our algorithm on finding a flow in a particular graph.…”
Section: Disjoint Set Variablesmentioning
confidence: 99%
“…For example, consider a conjunction of open weighted global cardinality constraints [8]. In that case, a weight is assigned to each pair (x, d), for all x ∈ X and d ∈ D(X).…”
Section: Optimization Constraintsmentioning
confidence: 99%
“…We can handle this case similar to the original filtering algorithm for weighted gccs [8]. With each arc (x i , d), for all x ∈ X i (i = 1, .…”
Abstract. We study domain filtering algorithms for open constraints, i.e., constraints that are not a priori defined on specific sets of variables. We present an efficient filtering algorithm, achieving set-domain consistency, for open global cardinality constraints. We extend this result to conjunctions of them, in case they are defined on disjoint sets of variables. We also analyze the case when the sets of variables may overlap. As establishing set-domain consistency is NP-complete in that case, we propose a weaker, though efficient, filtering algorithm instead. Finally, we extend our results to conjunctions of similar open constraints.
“…If we set l d = 0 and u d = 1 for all d ∈ D(X), the gcc is equal to the alldifferent constraint. A filtering algorithm for the gcc, establishing domain consistency, was developed in [7], making use of network flows.…”
Section: Open Global Cardinality Constraintsmentioning
confidence: 99%
“…In order to filter this constraint, we compute a flow in a particular graph, similar to the filtering of the original (closed) gcc [7]. Let X be a set of variables, and let S be a set variable with domain [L, U ], such that L ⊆ U ⊆ X.…”
Section: A Single Open Global Cardinality Constraintmentioning
confidence: 99%
“…Our work is based on the domain consistency filtering algorithm for the single gcc as developed in [7], and an extension of the algorithm presented above for a single open gcc. Again, we base our algorithm on finding a flow in a particular graph.…”
Section: Disjoint Set Variablesmentioning
confidence: 99%
“…For example, consider a conjunction of open weighted global cardinality constraints [8]. In that case, a weight is assigned to each pair (x, d), for all x ∈ X and d ∈ D(X).…”
Section: Optimization Constraintsmentioning
confidence: 99%
“…We can handle this case similar to the original filtering algorithm for weighted gccs [8]. With each arc (x i , d), for all x ∈ X i (i = 1, .…”
Abstract. We study domain filtering algorithms for open constraints, i.e., constraints that are not a priori defined on specific sets of variables. We present an efficient filtering algorithm, achieving set-domain consistency, for open global cardinality constraints. We extend this result to conjunctions of them, in case they are defined on disjoint sets of variables. We also analyze the case when the sets of variables may overlap. As establishing set-domain consistency is NP-complete in that case, we propose a weaker, though efficient, filtering algorithm instead. Finally, we extend our results to conjunctions of similar open constraints.
Although operations research (OR) and constraint programming (CP) have different roots, the links between the two communities have grown stronger in recent years. For solving combinatorial optimization problems, the techniques of CP and OR will become so interdependent that the two research communities could eventually merge. In this article, we first describe CP basic concepts, and then we show different ways of integrating CP and mathematical programming (MP). This article presents a CP perspective: MP is seen as a support to the CP decision process, even if existing approaches from the OR literatures consider a cooperation of CP and MP on an equal basis, but they are out of the scope of this article.
Constraint programming is a powerful paradigm for solving combinatorial search problems that draws on a wide range of techniques from artificial intelligence, operations research, algorithms, graph theory and elsewhere. The basic idea in constraint programming is that the user states the constraints and a general purpose constraint solver is used to solve them. Constraints are just relations, and a constraint satisfaction problem (CSP) states which relations should hold among the given decision variables. More formally, a constraint satisfaction problem consists of a set of variables, each with some domain of values, and a set of relations on subsets of these variables. For example, in scheduling exams at an university, the decision variables might be the times and locations of the different exams, and the constraints might be on the capacity of each examination room (e.g., we cannot schedule more students to sit exams in a given room at any one time than the room's capacity) and on the exams scheduled at the same time (e.g., we cannot schedule two exams at the same time if they share students in common). Constraint solvers take a real-world problem like this represented in terms of decision variables and constraints, and find an assignment to all the variables that satisfies the constraints. Extensions of this framework may involve, for example, finding optimal solutions according to one or more optimization criterion (e.g., minimizing the number of days over which exams need to be scheduled), finding all solutions, replacing (some or all) constraints with preferences, and considering a distributed setting where constraints are distributed among several agents.Constraint solvers search the solution space systematically, as with backtracking or branch and bound algorithms, or use forms of local search which may be incomplete. Systematic method often interleave search (see Section 4.3) and inference, where inference consists of propagating the information contained in one constraint to the neighboring constraints (see Section 4.2). Such inference reduces the parts of the search space that need to be visited. Special propagation procedures can be devised to suit specific constraints (called global constraints), which occur often in real life. Such global constraints are an important component in the success of constraint pro-
Backtracking SearchA backtracking search for a solution to a CSP can be seen as performing a depth-first traversal of a search tree. This search tree is generated as the search progresses. At a
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.