Java

Disponible uniquement sur Etudier
  • Pages : 4 (913 mots )
  • Téléchargement(s) : 0
  • Publié le : 30 avril 2011
Lire le document complet
Aperçu du document
Tout au long de ce TP, nous devions implémenter les stratégies de parcours mixte et en profondeur d'un algorithme de résolution Branch & Bound à travers l'implémentation des classesEnsNoeudsActifsProf et EnsNoeudsActifsMixte et appliquer cet algorithme sur un exemple de problème du sac a dos.
Vu la spécification d'une stratégie de parcours en pronfondeur donnée dans l'énoncé et l'ordre danslequel les noeuds sont enlevés et ajoutés dans l'algorithme BranchAndBound, nous avons choisi d'implémenter EnsNoeudsActifProf comme une pile(LIFO). En effet dans ce cas lorsqu'un nœud est divisé,ses fils sont empilés et le prochain Noeud qui sera enlevé sera le dernier à avoir été empilé soit un des fils du Noeud divisé et ce n'est que lorsque tous les fils seront enlevés qu'on ira un cran audessus dans l'arbre. Une pile est donc bien adaptée à cette stratégie de parcours.
La spécification de la stratégie Mixte quant-à-elle nous a conduit à choisir de donner deux attributs à la classeEnsNoeudsActifsMixte: l'un nommé file qui est un ensemble de type TreeSet où sera ajouté et enlevé les noeuds tant qu'on n'a pas atteint un seuil fixé et un deuxième ensemble nommé pile implémentant unepile (LIFO) dans lequel sera ajouté ou enlevé les noeuds une fois qu'on a dépassé le seuil en nombre d'éléments. Dans l'ensemble de type TreeSet, lorsqu'un noeud est enlevé, il s'agit du meilleurcomparé aux autres de l'ensemble(la fonction compareTo que doit dans ce cas implémenter l'instance de Noeud ,compare en fait les évaluations des Noeuds entre elles). Le type TreeSet a été choisi commetype du premier ensemble parce qu'il s'agit à notre connaissance de la seule collection oordonnée qui permet d'enlever le maximum (meilleur Noeud dans notre cas) d'un ensemble et non le minimum. Parcontre le deuxieme ensemble implémente une pile(LIFO) parce qu'on a bien vu dans le cas d'une stratégie en profondeur que ce type est bien adapté à un parcours en profondeur. La taille de l'attribut...
tracking img