# Constraint satisfaction

constraintsconstraintconstraint satisfaction problemsconstraint programmingconstraint-basedsatisfaction of constraints
In artificial intelligence and operations research, constraint satisfaction is the process of finding a solution to a set of constraints that impose conditions that the variables must satisfy.wikipedia
107 Related Articles

### Constraint satisfaction problem

constraint solvingconstraint satisfactionconstraint satisfaction problems
Often used are constraints on a finite domain, to the point that constraint satisfaction problems are typically identified with problems based on constraints on a finite domain.
CSPs represent the entities in a problem as a homogeneous collection of finite constraints over variables, which is solved by constraint satisfaction methods.

### Local consistency

constraint propagationarc consistencybucket elimination
Constraint propagation are other methods used on such problems; most of them are incomplete in general, that is, they may solve the problem or prove it unsatisfiable, but not always. The most used techniques are variants of backtracking, constraint propagation, and local search.
In constraint satisfaction, local consistency conditions are properties of constraint satisfaction problems related to the consistency of subsets of variables or constraints.

### Local search (constraint satisfaction)

local searchlocal search algorithm
Such problems are usually solved via search, in particular a form of backtracking or local search.
In constraint satisfaction, local search is an incomplete method for finding a solution to a problem.

### Search algorithm

searchsearchingkeyword search
Such problems are usually solved via search, in particular a form of backtracking or local search.

### Constraint logic programming

CLPConstraint logicConstraint Programming
The constraints in the goal and in the clauses used to prove the goal are accumulated into a set called constraint store.
Constraint logic programming is a form of constraint programming, in which logic programming is extended to include concepts from constraint satisfaction.

### Local search (optimization)

local searchlocal optimizationlocal search algorithm
The most used techniques are variants of backtracking, constraint propagation, and local search.

### Satisfiability

satisfiablesatisfiability problemsatisfies
In artificial intelligence and operations research, constraint satisfaction is the process of finding a solution to a set of constraints that impose conditions that the variables must satisfy.

### Interval propagation

Interval Constraint Propagationbounded-error estimation
Problems that can be expressed as constraint satisfaction problems are the eight queens puzzle, the Sudoku solving problem and many other logic puzzles, the Boolean satisfiability problem, scheduling problems, bounded-error estimation problems and various problems on graphs such as the graph coloring problem.
Interval propagation considers an estimation problem as a constraint satisfaction problem.

### Mathematical optimization

optimizationmathematical programmingoptimal
These are typically solved as optimization problems in which the optimized function is the number of violated constraints.

### Prolog

SICStus PrologProlog IISICStus
Languages often used for constraint programming are Prolog and C++.
Constraint logic programming extends Prolog to include concepts from constraint satisfaction.

### Comet (programming language)

Comet
It offers a range of optimization algorithms: from mathematical programming to constraint programming, local search algorithm and "dynamic stochastic combinatorial optimization."

### Feasible region

candidate solutionfeasible setsearch space
A solution is therefore a set of values for the variables that satisfies all constraints—that is, a point in the feasible region.
Constraint satisfaction is the process of finding a point in the feasible region.

### Knowledge-based configuration

configuration systemproduct configuratorconfigurable products

### Artificial intelligence

AIA.I.artificially intelligent
In artificial intelligence and operations research, constraint satisfaction is the process of finding a solution to a set of constraints that impose conditions that the variables must satisfy.

### Operations research

operational researchoperation researchoperational analysis
In artificial intelligence and operations research, constraint satisfaction is the process of finding a solution to a set of constraints that impose conditions that the variables must satisfy.

### Constraint (mathematics)

constraintconstraintsconstrained
In artificial intelligence and operations research, constraint satisfaction is the process of finding a solution to a set of constraints that impose conditions that the variables must satisfy.

### Variable (mathematics)

variablesvariableunknown
In artificial intelligence and operations research, constraint satisfaction is the process of finding a solution to a set of constraints that impose conditions that the variables must satisfy.

### Backtracking

backtracking searchbacktracksbacktrack
Such problems are usually solved via search, in particular a form of backtracking or local search. The most used techniques are variants of backtracking, constraint propagation, and local search.

### Variable elimination

Other considered kinds of constraints are on real or rational numbers; solving problems on these constraints is done via variable elimination or the simplex algorithm.

### Simplex algorithm

simplex methodSimplexalgorithms
Other considered kinds of constraints are on real or rational numbers; solving problems on these constraints is done via variable elimination or the simplex algorithm.

### Programming language

programming languageslanguagedialect
During the 1980s and 1990s, embedding of constraints into a programming language were developed.

### Constraint programming

constraintconstraint solverconstraint programming language
Languages often used for constraint programming are Prolog and C++.

### C++

C++ programming languageC++98C with Classes
Languages often used for constraint programming are Prolog and C++.

### Eight queens puzzle

n''-queens problemn-Queens Problemn queens problem
Problems that can be expressed as constraint satisfaction problems are the eight queens puzzle, the Sudoku solving problem and many other logic puzzles, the Boolean satisfiability problem, scheduling problems, bounded-error estimation problems and various problems on graphs such as the graph coloring problem.

### Sudoku

wordokuGNOME SudokuPlatinum Sudoku
Problems that can be expressed as constraint satisfaction problems are the eight queens puzzle, the Sudoku solving problem and many other logic puzzles, the Boolean satisfiability problem, scheduling problems, bounded-error estimation problems and various problems on graphs such as the graph coloring problem.