N-Queens
The N-Queens problem is a classic demonstration of constraint programming. The goal is to place queens on a chessboard such that no two queens attack one another. This problem is well suited to CSPs because validity checks are computationally inexpensive, and the problem exhibits significant symmetry, allowing large portions of the search space to be safely pruned. The animations below show depth-first backtracking searches for various board sizes.
-
Board size: 4
-
Board size: 5
-
Board size: 6
-
Board size: 7
-
Board size: 8
-
Board size: 9
-
Board size: 10
-
Board size: 11
-
Board size: 12
-
Board size: 13
-
Board size: 14
-
Board size: 15
-
Board size: 16
-
Board size: 17
-
Board size: 18
-
Board size: 19
-
Board size: 20
-
Board size: 21
-
Board size: 22
-
Board size: 23
-
Board size: 24
-
Board size: 25
-
Board size: 26
-
Board size: 27
-
Board size: 28
-
Board size: 29
-
Board size: 30