21
OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION Vers un cadre générique pour la recherche locale : application pour le Sudoku ROADEF 2007, Grenoble, France Tony LAMBERT, Eric MONFROY et Frédéric SAUBION LINA, Université de Nantes, France LERIA,Université d’Angers, France Universidad Santa María, Valparaíso, Chile Mardi 20 février 2007 1/21

Lambert Roadef2007 Slides

Embed Size (px)

DESCRIPTION

Vers un cadre générique pour la recherche locale : applicationpour le Sudoku

Citation preview

Page 1: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Vers un cadre générique pour la recherche locale :application pour le SudokuROADEF 2007, Grenoble, France

Tony LAMBERT, Eric MONFROY et Frédéric SAUBION

LINA, Université de Nantes, France

LERIA,Université d’Angers, France

Universidad Santa María, Valparaíso, Chile

Mardi 20 février 2007

1 / 21

Page 2: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

CSP (Constraint Satisfaction Problem)

X

Y

Constraints

VariablesU

TZ

C1

C2

C5C4

C3

2 / 21

Page 3: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Outline

• La recherche Locale pour la résolution deCSP

• Un cadre pour la Recherche Locale• Algorithme Générique Itératif avec

fonctions de réduction• Résultats pour le problème du Sudoku• Conclusion

3 5 1

1 5 6 3 7

6 9 1 4

3 6 9 8

8

1 9 7

9 5

8 4 6 7

9 5

1 63 4 5 7 8 9

2

2

2

2

2

3 / 21

Page 4: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Recherche Locale (RL) (1)

Définition :• Explore l’espace de recherche D1 × D2 × · · · × Dn

• Se déplace de voisins en voisins par rapport à une fonctiond’évaluation

• Intensification• Diversification

Propriétés :

• se concentrent sur des parties "prometteuses" de l’espacede recherche ;

• ne donnent pas de réponse face aux problèmesinsatisfiables ;

• aucune garantie d’optimum global ;• “rapides” pour trouver de “bonnes” solutions.

4 / 21

Page 5: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Recherche Locale (2)• Espace de Recherche : l’ensemble des configurations

possibles• Outils : voisinage et fonction d’évaluation

of sNeighborhood

Set ofpossibleconfigurations

5 / 21

Page 6: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Recherche Locale (3)• Espace de Recherche : l’ensemble des configurations

possibles• Outils : voisinage et fonction d’évaluation

of sNeighborhood

Set ofpossibleconfigurations

6 / 21

Page 7: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Recherche Locale (4)• Espace de Recherche : l’ensemble des configurations

possibles• Outils : voisinage et fonction d’évaluation

s 1

s 1

2s s n

2s s n s n+1

p = (

p’ = (

LS(p) = p’

,

, , ...,

, ..., )

, )

of sNeighborhood

Set ofpossibleconfigurations

ss

ss

s

s21

34

5

6

7 / 21

Page 8: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

A cadre pour les techniques de Recherche Locale

• Idée :• Contrôle fin• Plus de stratégies

• Technique :• Décomposer les solveurs en fonctions de bases ;• Utiliser un algorithme générique pour la résolution hybride.

8 / 21

Page 9: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Notre but :

• Utiliser un modèle théorique existant pour la résolution deCSP

• Définir le processus de résolution

9 / 21

Page 10: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Modèle abstrait de K.R. Apt [CP99]

CSP

Applicationof functions

Constraint Reduction functions

Fixed point

Partial Ordering

Abstraction

10 / 21

Page 11: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Un algorithme Générique

F = { ensemble de fonctions de réduction}

X =

X = initial CSPG = FWhile G 6= ∅

choose g ∈ GG = G − {g}G = G ∪ update(G, g, X )X = g(X )

EndWhile

11 / 21

Page 12: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Le modèle théorique pour la résolution de CSP

Relation d’ordre pour la recherche localeLS =⋃i>0

{p = (s1, · · · , si) ∈ Di | ∀j , 1 ≤ j < i−1, sj+1 ∈ N (sj) et s1 ∈ D}

12 / 21

Page 13: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Le modèle théorique pour la résolution de CSP

Relation d’ordre pour la recherche localeConsidérons une relation vls sur LSD définie par :

1. (s1, . . . , sn) vls (s1, . . . , sn)

2. (s′1, . . . , s′

m) vls (s1, . . . , sn) si n > m et ∀j , 1 ≤ j ≤m, eval(s′

j ) 6= 0et ∀i , 1 ≤ i ≤ n, eval(si) 6= 0

3. (s′1, . . . , s′

m) vls (s1, . . . , sn) si eval(sn) = 0,∀i , 1 ≤ i ≤n − 1, eval(si) 6= 0et ∀j , 1 ≤ j ≤ m, eval(s′

j ) 6= 0

13 / 21

Page 14: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Le modèle théorique pour la résolution de CSP

Ordre Partiel :

1p

2p

3p

4p

p

Function to pass from one LSstate to another

5

Terminates with a fixed point : local minimum, maximum number of iteration

State of LS

14 / 21

Page 15: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Ordre RL

Caractéristiques d’un chemin de RL

• notion de solution• longueur maximale

Point de vue opérationnel : chemin = échantillonsUn échantillon :

• Dépend d’un CSP• Correspond à un état de recherche locale

15 / 21

Page 16: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Voisinages et fonctions de mouvement

Voisinages :

• FullNeighbor : V ′ = {s ∈ D|s 6∈ V}• TabuNeighbor : V ′ = {s ∈ D| 6 ∃k , n − l ≤ k ≤ n, sk = s}• DescentNeighbor : p = (s1, . . . , sn) and V ′ = s ⊂ D s.t. 6∃s′ ∈ V s.t eval(s′) < eval(sn)

Mouvements :

• BestMove : p′ = p ⊕ s′ and eval(s′) = mins′′∈V eval(s′′)

• ImproveMove : p = p′′ ⊕ sn and p′ = p ⊕ s s.t.eval(s′) < eval(sn)

• RandomMove : p′ = p ⊕ s′ and s′ ∈ V

16 / 21

Page 17: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Instantiation de l’algorithme GI

Nous pouvant maintenant introduire l’ensemble de fonctions F .

Tabu search :• TabuNeighbor• BestNeighBor

Random walk :• FullNeighbor• BestNeighBor• RandomNeighbor

Random walk + Descent :• FullNeighbor• BestNeighBor• RandomNeighbor• DescentNeighbor• ImproveNeighBor

TabuSearch + Descent :• TabuNeighbor• DescentNeighbor• ImproveNeighBor• BestNeighBor

17 / 21

Page 18: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Le problème du Sudoku

• problème n2 × n2

• n4 variables• contraintes AllDiff 3 5 1

1 5 7

8

6 9 8

1

9 5

1 9 7

8 4

4

6 7

6 3

6

9 5

3

9

2

2

2

2

18 / 21

Page 19: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

TabuSearch RandomWalkn2 x n2 16x16 25x25 36x36 16x16 25x25 36x36

cpu time 3,14 115,08 3289,8 3,92 105,22 2495deviations 1,28 52,3 1347,4 1,47 49,3 1099

mvts 405 3240 22333 443 2318 13975Descent + TabuSearch Descent +RandomWalk

n2 x n2 16x16 25x25 36x36 16x16 25x25 36x36cpu time 2,34 111,81 2948 2,41 82,94 2455

deviations 1,42 55,04 1476 1,11 36,99 1092mvts Avg 534 3666 20878 544 2581 14908

19 / 21

Page 20: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Conclusion et perspectives

• Un modèle générique pour la Recherche Locale• Définir des stratégies

• Apprendre des stratégies dynamiquement• Fournir plus d’outils dans un environnement générique

20 / 21

Page 21: Lambert Roadef2007 Slides

OUTLINE UN CADRE POUR LA RECHERCHE LOCALE RÉSULTATS POUR LE PROBLÈME DU SUDOKU CONCLUSION

Vers un cadre générique pour la recherche locale :application pour le SudokuROADEF 2007, Grenoble, France

Tony LAMBERT, Eric MONFROY et Frédéric SAUBION

LINA, Université de Nantes, France

LERIA,Université d’Angers, France

Universidad Santa María, Valparaíso, Chile

Mardi 20 février 2007

21 / 21