Documente Academic
Documente Profesional
Documente Cultură
Curs 4 Backtracking i
propagarea restriciilor
Bibliografie
http://ktiml.mff.cuni.cz/~bartak/constraints/i
ntro.html
Problema
2
7
9
9
4
4
2
5
8
3
2
7
3
2
6
8
9
3
SUDOKU
Generm toate
soluiile posibile
i le testm.
43 spaii de
completat, 9
posibiliti de
completare
pentru fiecare
csu => 943
soluii de testat.
1-9 2 1- 9 8
1 1-9 7
4 1-9
1 1-9 1-9
8 1-9 5
3 1-9 2
1-9 1-9 5
1-9 7
6 1-9 5
1 1-9 9 1-9
5
8 1
3 1
9
2 8
9
4
4
2
1 6
3
7 4
5
8 7
8
3
2 7
5 6
7 6
5 1
3
2
6
5
7
6
2
4
1
3
2
4
9
3
5
6
8
9
1
2
3
8
1
9
7
2
5
6
8
5
4
1
2
1
9
7
4
6
3
1
2
3
4
5
6
3
2
5
8
7
6
7
1
8
6
9
2
4
2
3
8
1
...
9
6
5
7
3
6
8
5 1
9
7
5
7
6
2
4
1
3
2
4
9
3
5
6
1
2
3
8
1
9
7
8
5
4
1
2
1
9
7
4
6
3
1
2
3
4
5
6
3
2
5
8
2 7
5 6
7 6
5 1
Se ncearc schimbarea
ultimei alegeri (n acest
caz nu se poate deci
revenim iar la alegerea
1
precedent).
7
1
8
6
9
2
4
2
3
8
...
9
6
5
7
3
6
8
Dac EEC-DEFINITIV
Sfrit.
mbuntirea revenirilor.
10
mbuntirea
revenirilor
5
7
6
2
4
1
3
2
4
9
3
5
6
7
Proiectarea Algoritmilor 2015
1
2
3 8
8 5
1 4
9 1
7 2
2 7
5 6
6
1
9
7
4
6
3
1
2
3
4
5
6
3
2
5
8
7
1
8
6
9
2
...
4 9
2 6
3 5
8 7
1 3
6
8
5
9
11
Evitarea redundanelor
n spaiul de cutare
5
7
Alegerea lui 8 pe aceast poziie va
6
produce un eec n viitor indiferent de
2
celelalte alegeri fcute deci n cazul
revenirii n aceast poziie nu are sens 4
s mai facem aceast alegere.
1
3
2
4
9
3
5
6
7
Proiectarea Algoritmilor 2015
1
2
3 8
8 5
1 4
9 1
7 2
2 7
5 6
6
1
9
7
4
6
3
1
2
3
4
5
6
3
2
5
8
7
1
8
6
9
2
...
4 9
2 6
3 5
8 7
1 3
6
8
9
12
13
Exprimarea restriciilor
Enumerarea tuplelor
restriciei.
(5,2,3,8,1,6,7,4,9);
(6,2,3,8,1,5,7,4,9); etc.
2
7
2 8
9
7 4
3 1
Formule matematice,
cum ar fi ecuaiile sau
inecuaiile.
8 1
4
2
1 6
5
8 7
3
2 7
2
6
5 6
7 6
8
5 1
9
14
Tipuri de restricii
Unare
Binare
ntre 2 variabile.
V1j V1k j k, 0 < j, k < 10
N-are
L1
ntre n variabile.
Regula triunghiului: L1 + L2 > L3.
Proiectarea Algoritmilor 2015
L3
L2
15
16
17
18
V11: {5;6}
V11
5;6
V13:{3}
V11V13
V11V19
V13V16
V11V16
V19
V19: {6; 9}
V19V16
V16
8 1
5;6;
9
7 4
3 1
2 8
V13
V13V19
6;9
5
8 7
4
2
8
3
1 6
3
2
3
2 7
6
5 6
8
7 6
5 1
9
V16: {5;6;9}
Proiectarea Algoritmilor 2015
19
Caracteristici
Rezolv PSR binare;
Variabilele au domenii finite de valori;
Prin propagarea restriciilor se filtreaz
mulimile de valori (se elimin elementele
din domeniu conform unui criteriu dat);
Procesul de propagare se oprete cnd:
20
21
Pentru fiecare x Di
Sfrit.
Complexitate NC-1? na
Proiectarea Algoritmilor 2015
22
23
3;
4;5;
8;
4;8;
6;
1;3;
4;
4
1
5;6;
9
6;9;
5
8
8
3
3
2
6
8
5
9
24
Atunci
ntoarce TERS.
Proiectarea Algoritmilor 2015
25
3;
4;5;
8;
4;8;
6;
1;3;4;
5;6;2;
4
2
9;
8;
5,6
4
1
3
5;6;
9
6;9;
5
7
3
8
3
2
5
6
7
6
6
8
5
Complexitate Revise ? a2
Proiectarea Algoritmilor 2015
26
REVISE - Concluzie
27
28
La fiecare iteraie
eliminm o singur
valoare (i avem maxim
na valori posibile).
Numrul maxim de
apelri al Revise.
Complexitate Revise.
29
Exemplu AC-1
2
3;
4;5;
8;
4;8;
6;
1;3;4;
5;6;2;
3,5
4
1
3
9
7
8
2
5
6
9;
8;
5,6
5;6;
9
4
2
8
8
6;9;
7
3
7
6
6
8
9
30
31
AC-3 Caracteristici
Complexitate: O(a3r).
Proiectarea Algoritmilor 2015
32
33
NTREBRI?
Proiectarea Algoritmilor 2015
34
Bibliografie Curs 5
http://www.dwheeler.com/chessopenings/#Sicilian%20Defense
http://mouserunner.com/MozllaTicTacToe/Mozilla
_Tic_Tac_Toe.htm
http://www.emunix.emich.edu/~evett/AI/AlphaBeta
_movie/index_movie.htm
35