Projet de programmation
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.

Projet de programmation
 
AccueilAccueil  Dernières imagesDernières images  RechercherRechercher  S'enregistrerS'enregistrer  ConnexionConnexion  
Le deal à ne pas rater :
Funko POP! Jumbo One Piece Kaido Dragon Form : où l’acheter ?
Voir le deal

 

 Domaine: leurs représentations

Aller en bas 
AuteurMessage
Léo G




Messages : 12
Date d'inscription : 04/02/2015

Domaine: leurs représentations Empty
MessageSujet: Domaine: leurs représentations   Domaine: leurs représentations Icon_minitimeMar 10 Fév - 18:00

Dans le futur, on va implémenté l'arc consistance.
Les domaines ne seront pas figé, il doivent pouvoir être privé de certain(s) intervalle(s) de valeur ainsi qu'être restauré au moment de retour en arrière.
Pour cela on peut par exemple, au lieu de stocker un seule domaine dans une variable, stocker une liste des domaines.

On peut par exemple faire comme l'a dit le prof une pile des domaines pour chaque variable. Chaque pile de variable est initialisée avec une pile contenant son domaine initiale. On pourra au cours de l'algorithme empiler dans la pile des domaines d'une variable son nouveau domaine.
Il faut également sauvegardé le fait de l’empilement de domaines des variables; ensuite lors d'un appelle à la fonction variablePrecedente, il faut avec le changement de variable, dépiler pour chaque variable concerné le domaine pour retrouver le contexte précédent.

On pourra par exemple, pour chaque variables lors du retour arrière, leurs donné une liste des variable dont il faut dépiler le domaine. On ajouterai et supprimerai des variables dans cette liste au cours de l'algorithme. Il faudrai en plus dans la fonction variablePrecedente, dépiler un domaine pour chaque élément de cette liste.

On pourrai se passer de ces sauvegarde de "qui c'est à qui on va dépiler son domaine en backtrackant depuis cette variable ?" en faisant un algorithme récursif qui prendrai en entré un état actuelle du CSP (avec des domaines éventuellement modifié par rapport à l'appel récursif précédent). J'aime un peu moins cette méthode car dans ce cas récursif, on empilera très certainement des choses qui n'ont pas changé et cela consomme de l'espace. Je trouve de plus que ça cache le fait que de toute façon on doit sauvegarder les modifications apportés aux domaines, donc autant le faire explicitement nous même avec des petites piles, plutôt que d'empiler d'un coup tout le CSP de manière implicite via les "facilités" de langage.

Bon ensuite tous ça ne change pas la représentations brute d'un domaine: par énumération des valeurs, ou par énumérations des intervalles, ou bien autre choses.
Revenir en haut Aller en bas
 
Domaine: leurs représentations
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Projet de programmation :: Projet :: Partie Donnée-
Sauter vers: