diagramme de décision binaire exemple

La notion de BDD est maintenant généralement utilisée pour désigner cette structure de données particulière. Si nous avions une méthode intelligente pour représenter les familles sur un ordinateur, nous pourrions être en mesure de construire rapidement une représentation pour F à partir des familles de base. Avec les ZDD, nous pouvons y répondre efficacement. Cela est dû au fait que l`une des opérations précédentes pour deux BDDs peut entraîner un BDD d`une taille proportionnelle au produit de la taille des BDDs et, par conséquent, pour plusieurs BDDs, le format peut être exponentiel. Ensuite, trouver un ensemble d`États tels que deux membres de l`ensemble sont adjacents, et le poids total est maximisé. L`idée de base à partir de laquelle la structure de données a été créée est l`expansion de Shannon. Une autre forme normale importante identifiée par Darwiche est la forme normale de négation décomposable ou DNNF. Cela conduit au terminal 1, qui est la valeur de f (x1 = 0, x2 = 1, x3 = 1). Le problème de trouver la meilleure commande variable est NP-dur.

Il est d`une importance cruciale de se soucier de la commande variable lors de l`application de cette structure de données dans la pratique. Supposons que vous voulez visiter chaque Capitole de l`État exactement une fois, voyageant sur les autoroutes. Cependant, il existe des heuristiques efficaces pour s`attaquer au problème. Adnan Darwiche et ses collaborateurs ont montré que les BDDs sont l`une des formes normales pour les fonctions booléennes, chacune induite par une combinaison différente d`exigences. Dans sa vidéo de lecture fun with Binary Decision Diagrams (BDDs), [8] Donald Knuth appelle les BDDs “l`une des seules structures de données vraiment fondamentales qui sont sortis dans les vingt-cinq dernières années” et mentionne que le papier 1986 de Bryant a été pendant un certain temps l`un des plus cités papiers en informatique. Un tel BDD est appelé «ordonné» si différentes variables apparaissent dans le même ordre sur tous les chemins de la racine. Considérons la fonction booléenne f (x 1,…, x 2 n) = x 1 x 2 + x 3 x 4 + ⋯ + x 2 n − 1 x 2 n. Cette propriété le rend utile dans la vérification d`équivalence fonctionnelle et d`autres opérations telles que la cartographie fonctionnelle des technologies.

Il s`avère que nous pouvons décrire F en termes de familles de base qui par eux-mêmes sont faciles à décrire. Cependant, répéter ces opérations plusieurs fois, par exemple en formant la conjonction ou la disjonction d`un ensemble de BDDs, peut, dans le pire des cas, aboutir à un BDD exponentiellement volumineux. Les DS sont largement utilisés dans le logiciel de CAO pour synthétiser les circuits (synthèse logique) et dans la vérification formelle. Ceci tient e. Pour toute constante c > 1, il est même NP-dur pour calculer un ordre variable résultant en un OBDD avec une taille qui est au plus c fois plus grand qu`un optimal.

admin