La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1 Où en sommes-nous ? Algorithmes De recherche Backtrack rétrospectifs mixtes Prospectifs FC MAC Quick RFL … Backjumping Backmarking Nogood Recording Conflict.

Présentations similaires


Présentation au sujet: "1 Où en sommes-nous ? Algorithmes De recherche Backtrack rétrospectifs mixtes Prospectifs FC MAC Quick RFL … Backjumping Backmarking Nogood Recording Conflict."— Transcription de la présentation:

1 1 Où en sommes-nous ? Algorithmes De recherche Backtrack rétrospectifs mixtes Prospectifs FC MAC Quick RFL … Backjumping Backmarking Nogood Recording Conflict Directed Backjumping Dynamic Backtracking … méthodes structurelles Classes polynomiales Réduction de lespace de recherche Ordres dinstanciation CSP Dynamiques CSP Statiques Compi- lation VCSP Prospectifs FC MAC Quick RFL …

2 2 Forward Checking Forward Checking(I, i, a) I=I {(i, a)} supprimer de D toutes les valeurs incompatibles avec i=a sialors si il nexiste pas de domaine vide alors choisir choisir j I pour toutfaire pour tout b D j faire ForwardChecking(I, j, b) restaurer les domaines Enjoliveurs Caisse Pare-chocs Capote Caisse Pare-chocs Capote Enjoliveurs Forward Checking Algorithmes prospectifs

3 3 Forward Checking – sur les N-reines Algorithmes prospectifs

4 4 Enjoliveurs Caisse Pare-chocs Capote Enjoliveurs Caisse Pare-chocs Capote BACKTRACK AC puis BACKTRACK FC

5 5 Sur contraints Seuil Sous contraints FC Backtrack Coût moyen dune recherche Algorithmes prospectifs

6 6 MAC MAC(I, i, a) I=I {(i, a)} supprimer et propager {(i, b) / b a} SiAlors Si il nexiste pas de domaine vide Alors Choisir Choisir j I pour toutfaire pour tout b D j faire MAC(I, j, b) restaurer les domaines supprimer et propager (i, a) Caisse Pare-chocs Capote Enjoliveurs Maintaining Arc Consistency Algorithmes prospectifs Enjoliveurs Caisse Pare-chocs Capote Enjoliveurs Caisse Pare-chocs Capote Enjoliveurs Caisse Pare-chocs Capote Enjoliveurs Caisse Pare-chocs Capote Enjoliveurs Caisse Pare-chocs Capote Enjoliveurs Caisse Pare-chocs Capote Enjoliveurs Caisse Pare-chocs Capote Enjoliveurs Caisse Pare-chocs Capote Enjoliveurs Caisse Pare-chocs Capote Enjoliveurs Caisse Pare-chocs Capote

7 7 Algorithmes prospectifs Enjoliveurs Caisse Pare-chocs Capote Enjoliveurs Caisse Pare-chocs Capote BACKTRACK AC puis BACKTRACK FCMAC

8 8 Sur contraints Seuil Sous contraints MAC FC Backtrack Coût moyen dune recherche Algorithmes prospectifs

9 9 Quelle consistance locale maintenir pendant la recherche ? Algorithmes prospectifs pour être rentable, la consistance locale doit avoir un bon rapport coût/puissance : on doit passer moins de temps à détecter quune branche ne même à aucune solution quà explorer cette branche Il faut donc : -comparer la puissance des consistances locales -comparer le coût des consistances locales comparer le rapport coût/puissance

10 DensitéDensité D u r e t é Les limites T all avec n=40 et d=15 PC Forte AC PIC RPC Max-RPC SAC SRPC Max-RPCEn Consistance globale Puissance des consistances locales Algorithmes prospectifs

11 11 1E-3 AC7 n=200, d=30 et densité=15% PC forte 1E-2 1E-1 1E0 1E+1 1E+2 1E+3 1E+4 1E sec h 40min dureté SRPC2 3h 53min 39min 43sec SAC6 RPC sec Max-RPC sec Temps cpu (sec.) Pentium II 266 Mhz 64 Mo Coût des consistances locales Algorithmes prospectifs

12 12 Sur contraints Seuil Sous contraints Quick MAC FC Backtrack Coût moyen dune recherche Algorithmes prospectifs

13 13 64 Quick MAC7ps Dureté Temps cpu(en secondes) n=200, d=20, 3 voisins, dom/deg 1E E-2 1E-1 1E0 1E+1 1E+2 1E min 22 sec ? Des problèmes exceptionnellement coûteux… Algorithmes prospectifs

14 14 64 Quick MAC7ps dureté Temps cpu requis maximum sur 1200 CN générés (en secondes) n=200, d=20, 3 voisins, dom/deg 1E E-1 1E0 1E+2 1E+3 1E+4 1E+6 75 h 49 min 1E+1 1E+5 44 h 15 h 15 s. 1h 29 >12 jours Des problèmes exceptionnellement coûteux… Algorithmes prospectifs

15 15 Où en sommes-nous ? Algorithmes De recherche Backtrack rétrospectifs mixtes Backjumping Backmarking Nogood Recording Conflict Directed Backjumping Dynamic Backtracking … méthodes structurelles Classes polynomiales Réduction de lespace de recherche Ordres dinstanciation CSP Dynamiques CSP Statiques Compi- lation VCSP Prospectifs FC MAC Quick RFL …

16 16 Heuristiques sur lordre dinstanciation Si on sengouffre dans un branche sans solutions, on peut passer énormément de temps avant de sen apercevoir Les premiers choix sont particulièrement importants car on doit potentiellement faire davantage de backtracks avant de revenir sur eux Il vaut mieux commencer par instancier les variables les plus Contraintes : -Celles qui ont un petit domaine -Celles qui sont impliquées dans de nombreuses contraintes -Celles qui sont impliquées dans les contraintes les plus dures -… Il vaut mieux commencer par affecter la valeur la plus prometteuse: -Celle qui a le plus de supports -Celle qui a le plus de supports chemin consistants -… Lordre sur les variables a plus dimpact que lordre sur les valeurs

17 17 Heuristiques sur lordre dinstanciation CL+Dom Dom + Deg Dom/Deg 3CL+Dom Dom + Deg Dom/Deg 1E-1 1E-0 1E+1 1E+2 Temps cpu (en sec.) de FC au seuil pour n de 40 à 160 et D=15 1E-2

18 18 Heuristiques sur lordre dinstanciation E-1 1E-0 1E+1 1E+2 Temps cpu (en sec.) Quick au seuil pour n de 40 à 160 et D=15 1E-2 3CL+Dom Dom + Deg Dom/Deg 3CL+Dom Dom + Deg Dom/Deg

19 19 Où en sommes-nous ? Algorithmes De recherche Backtrack rétrospectifs mixtes Backjumping Backmarking Nogood Recording Conflict Directed Backjumping Dynamic Backtracking … méthodes structurelles Classes polynomiales Réduction de lespace de recherche Ordres dinstanciation CSP Dynamiques CSP Statiques Compi- lation VCSP Prospectifs FC MAC Quick RFL …

20 20 Une classe polynomiale Si le graphe des contraintes ne contient pas de cycles, on peut résoudre le CSP sans Backtrack Sil ny a pas de cycles : - on réalise la consistance darc - la recherche sera sans Backtrack Cest la principale classe polynomiale mais il y a dautres classes Où lon peut constater un nombre limiter de backtracks

21 21 Uilisation de la structure du graphe : coupe cycles Propriété : Un réseau de contraintes acyclique peut être résolu sans backtracks Méthode du coupe cycle : Instancier dabord un ensemble de variables tel qui si on déconnecte ces variables on obtient un réseau de contraintes acyclique Résolution sans retour arrières Difficulté : - Si le coupe cycle est de grande taille, l intérêt est limité - Limite les heuristiques sur l ordre d instanciation - On ne sait pas trouver rapidement un coupe cycle de taille minimal

22 22 Uilisation de la structure du graphe : cons. adaptative Un graphe des contraintes est ordonné sil possède un ordre total sur les sommets. La largeur dun sommet dans un graphe ordonné est le nombre darc reliant ce sommet aux sommets précédents. La largeur dun ordre est la largeur la plus grande parmi celles des sommets largeur(3, )= largeur(2, )=1 largeur(3, )=2 La largeur dun graphe est le minimum des largeurs sur tous les ordres possibles largeur( )=3largeur( )=2 largeur=2 largeur(2, )=1

23 23 Uilisation de la structure du graphe : cons. adaptative Un ordre dinstanciation garantit une recherche sans retour arrière si le niveau de K-consistance forte est supérieur à la largeur de cet ordre. Un réseau est k-consistant ssi toute instanciation de longueur (k-1) peut être étendu à nimporte quelle k ième variable (2-Consistance consistance darc) Avec un ordre de largeur 2, la 3-consistance forte est nécessaire. Problèmes : - la réalisation de la k-consistance exige un temps exponentiel en k. - la réalisation de la k-consistance peut entraîner l ajout de contraintes (k-1)-aires et donc modifier la largeur de l ordre (et même du graphe). Consistance adaptative : adapter le niveau de k-consistance à chaque sommet. - On considère les sommets dans l ordre inverse - Soit k la largeur du sommet ; on réalise la (k+1)-consistance entre les sommets qui le précède dans l ordre et lui même. Lordre est backtrack-free Problèmes : - la complexité de la k-consistance. - lordre dinstanciation est statique.

24 24 Où en sommes-nous ? Algorithmes De recherche Backtrack rétrospectifs mixtes Backjumping Backmarking Nogood Recording Conflict Directed Backjumping Dynamic Backtracking … méthodes structurelles Classes polynomiales Réduction de lespace de recherche Ordres dinstanciation CSP Dynamiques CSP Statiques Compi- lation VCSP Prospectifs FC MAC Quick RFL …

25 25 == == Besoin dinteractivité CSP Dynamiques CSP Statiques : Lensemble des contraintes ne change pas - trouver une solution / toutes les solutions Problèmes intrinsèquement dynamiques : - emplois du temps, scheduling, design,... Si le CSP est sur-contraint Optimisation - trouver une solution optimale vis-à-vis dun critère sur les contraintes Rarement satisfaisant

26 = = + + = = = = + + = = = = + + = = = = = = - - = = = = = = + + Maintien dune consistance locale CSP Dynamiques

27 = = + + = = = = + + = = = = + + = = + + = = = = + + Maintien dune consistance locale CSP Dynamiques 1 ère Solution : -Pour supprimer une contrainte, on repart du réseau sans contraintes On doit pouvoir faire mieux ! + + = = = = = = = = = = = = = =

28 = = + + = = = = + + = = = = + + = = + + = = = = + + Maintien dune consistance locale CSP Dynamiques 2 ème Solution : -On mémorise létat du réseau Avant chaque ajout On ne repart pas toujours De zéro On doit pouvoir faire mieux ! = = = = = = = = = = = = = =

29 29 = = Maintien dune consistance locale CSP Dynamiques 3 ème Solution : utiliser un système de justifications = = = = + + = = = = = = = = - -

30 30 = = = = Maintien dune consistance locale CSP Dynamiques - - = = On remet les valeurs justifiées par la contrainte supprimée = = On propage les valeurs remises = = On vérifie la consistance locale des valeurs remises

31 31 Où en sommes-nous ? Algorithmes De recherche Backtrack rétrospectifs mixtes Backjumping Backmarking Nogood Recording Conflict Directed Backjumping Dynamic Backtracking … méthodes structurelles Classes polynomiales Réduction de lespace de recherche Ordres dinstanciation CSP Dynamiques CSP Statiques Compi- lation VCSP Prospectifs FC MAC Quick RFL …

32 32 Exemple montrant le thrashing Le thrashing Recherche rétrospective

33 33 Le thrashing Recherche rétrospective Exemple montrant le thrashing

34 Dynamic Backtracking Chaque échec sur le choix dune valeur est expliqué par les précédents choix qui entre en conflit. Si toutes les valeurs dun domaine ont été testées sans succès, lexplication de cet échec est lunion des explications des valeurs du domaine et on revient sur linstanciation la plus récente de cette explication. Conflict directed BackJumping (CBJ) Idem mais lors dun saut on supprime également les instanciations intermédiaires.

35 35 Dynamic Backtracking [Ginsberg, 93] - Instancier i à a Ajout de C i :(i=a) - Explication dune information I = ensemble de contraintes tel que I demeure vérifiée tant que ces contraintes figurent dans le système C 25 expl(5 )=C 2 C 15 expl(5 )=C 1 C 25 expl(5 )=C 2 expl(D 5 = )={C 1,C 2 }

36 36 Conflict Directed Backjumping Réduction partielle du thrashing

37 37 Dynamic Backtracking Plus une réparation quun saut - Additif sur les sous-problèmes indépendants indépendants - Compense « automatiquement » certaines lacunes de lheuristi- certaines lacunes de lheuristi- que sur lordre dinstanciation que sur lordre dinstanciation

38 38 Dynamic Backtracking 3 - Compense « automatiquement » certaines lacunes de lheuristi- certaines lacunes de lheuristi- que sur lordre dinstanciation que sur lordre dinstanciation

39 39 Les explications Le coût spatial des explications est en O(n 2 d) pour un CN de n variables ayant d pour taille maximale des domaines mais lespace requis en moyenne est loin de ce pire cas Le coût spatial des explications est en O(n 2 d) pour un CN de n variables ayant d pour taille maximale des domaines mais lespace requis en moyenne est loin de ce pire cas Les explications permettent également - de posséder une explication des retraits ce qui peut être précieux pour la mise au point - le traitement des problèmes sur-contraints et la résolution interactive Les explications permettent également - de posséder une explication des retraits ce qui peut être précieux pour la mise au point - le traitement des problèmes sur-contraints et la résolution interactive

40 40 Deux grandes familles daméliorations MAC-DBTMAC-DBT DBTDBT MAC-CBJMAC-CBJ MACMAC FCFC BTBT CBJCBJ FC-CBJFC-CBJ FC-DBTFC-DBT Recherche en Avant Recherche en Arrière


Télécharger ppt "1 Où en sommes-nous ? Algorithmes De recherche Backtrack rétrospectifs mixtes Prospectifs FC MAC Quick RFL … Backjumping Backmarking Nogood Recording Conflict."

Présentations similaires


Annonces Google