Optimisation Logique GMEE329 Bruno Rouzeyre

Slides:



Advertisements
Présentations similaires
Tables de Karnaugh Table de vérité : Table de Karnaugh
Advertisements

ALGEBRE DE BOOLE Mohamed Yassine Haouam
Heuristiques C. Recherche de la meilleure branche . Branch And Bound
Exercices Numération Numération D.L.B.
METHODE DES CHAÎNONS Méthode permettant d’implanter des postes de travail dans les usines ou entrepôts. Optimisation recherchée Gain sur le temps de fabrication.
MinExplore l’outil de découverte de la bibliothèque de Mines ParisTech Mars 2016.
1 Programmation Orientée Objet ● Qu'est-ce qu'un objet ● Collaboration des objets ● Les classes ● Relations entre les classes – “Utilise”, “Contient”,
Nombres et calculs Attendus de fin de cycle: Attendus de fin de cycleÉclairages Cycle 3  Utiliser et représenter les grands nombres entiers, des fractions.
ARCHITECTURE MULTITENANT CONTAINER DATABASE ET PLUGGABLE DATABASES Pr. A. MESRAR
Cahier des charges.
Utiliser le calcul littéral pour résoudre ou démontrer
Projet de programme et recommandations
Programmer À l’École Le codage
Petits jeux numériques avec le gâteau d’anniversaire
tt Société Française de Médecine Générale ff
Lois fondamentales de l'algèbre de Boole
Université Abou Bakr Belkaid Faculté des Sciences Département d’informatique Algorithmique Avancée et Complexité Chap5: Les méthodes de résolution exactes.
Arrête 712 du 03 novembre 2011 (Evaluation, Progression, Orientation) Lecture pratique Prof. B. Bendoukha.
2°9 lycée Beauregard à Montbrison
Exercice 8 : résoudre √3 sin x - cos x = - √2 dans [ 10π ; 12π ].
Les « observables » ! Situation A de CCF : de la prise d’information à la constitution d’un profil.
VI. Tri par tas (Heap sort)
Les procédés métiers : conception, modélisation et systèmes
PARTIE 3 : Relations sociales dans les organisations   SÉQUENCE N° 1 (Thème): LES RESSOURCES HUMAINES   SÉANCE 2 (axe de réflexion) :
Université Abou Bakr Belkaid Faculté des Sciences Département d’informatique Algorithmique Avancée et Complexité Chap7: Les méthodes de résolution exactes.
Techniques du Data Mining
GRAPHISME PAR ORDINATEUR
Jeu de l’aquarium. Objectif: Décoder des syllabes écrites et les associer à des syllabes orales (syllabes d’attaque) Matériel: Le plateau de jeu. Cartes.
Eléments de la Théorie des Probabilités
TD2 Logique combinatoire F. Touchard Architecture des ordinateurs TD.
3.5 Lois continues 1 cours 16.
Quelles solutions juridiques pour le laboratoire de biologie?
Ordonnances du 22 septembre 2017
CHAPITRE 4: Simplification des fonctions
Techniques du Data Mining
Gestion du bruit : entendre, être entendu et se concentrer
Vérifier des papiers d’identité pour protéger vos bureaux
Espaces confinés / Autorisation d’accès
Cycle, Cocycle, Arbre et Arborescence
4°) Intervalle de fluctuation :
Jeux de calcul mental.
Aujourd’hui, Ensemble nous sommes traités,
Lois de Probabilité Discrètes
Pratique de créativité Urban Culture TP1
Élections locales probabilistes
Jeux de calcul mental.
CHAPITRE 8 Equations - Inéquations
Optimisation Logique Bruno Rouzeyre
Présentation 9 : Calcul de précision des estimateurs complexes
Optimisation Logique Bruno Rouzeyre
Titre du projet scientifique
Championnat de France individuel
Titre du projet scientifique
Disposition Titre Sous-titre.
Disposition Titre Sous-titre.
Disposition Titre Sous-titre.
Outil de description d’une fonction logique:
Exercices récapitulatifs
Les différents modes de démarrage de Windows
Chapter 11: Récursivité Java Software Solutions Second Edition
Arbres et arborescences
Disposition Titre Sous-titre.
Disposition Titre Sous-titre.
Les circuits en séries et en parallèle
INFORMATIONS FINANCIERES PPF
Vers la dimension 3. La géométrie dans l'espace ne fait qu'étendre les concepts qui vous sont familiers en dimension 2 à la dimension 3. Le plus difficile.
Elections locales probabilistes
1 fois
1 fois
Images Stage – Semaine 4.
Transcription de la présentation:

Optimisation Logique GMEE329 Bruno Rouzeyre rouzeyre@lirmm.fr http://www.lirmm.fr/~rouzeyre

Principe de minimisation Cas des fonctions incomplètes Cas des fonctions multiples Base première complète : Karnaugh Quine Mc Cluskey Consensus Base minimale : Table de choix (heuristique) Résolution Algébrique Branch & bound 1 f 00 01 11 10 dc ba

Cas des fonctions incomplètes Id[f(d,c,b,a)] = R1(0,7,10,11,12,15) + Rf(2,6,8,9) 1 f 00 01 11 10 dc ba ba 1 00 01 11 10 dc ba 00 01 11 10 dc 00 1 01 1 11 1 1 Il monomo in blu (d'ba') é l'unico che copre solo sommet do not care (ultima colonna prime due righe) 10 1 1 Bpinf(f) = c b a + d b a + d c' b + d' c' b' a' + d c' b a' Bpsup(f) = c' a' + d c' + d b' a' + d b a + d' c b + c b a + d' b a' Pour la minimisation Bp => Bpsup

Cas des fonctions incomplètes Id[f(d,c,b,a)] = R1(0,7,10,11,12,15) + Rf(2,6,8,9) Bp(f) = c' a' + d c' + d b' a' + d b a + d' c b + c b a 7 10 11 12 15 1 f 00 01 11 10 dc ba A = c' a' X B = d c' C = d b' a' D = d b a E = d' c b F = c b a G = d' b a' 1 - Prendre un sommet non encore couvert (choix aléatoire ou dirigé par une heuristique), 2 - Prendre un monôme couvrant ce sommet (choix aléatoire ou dirigé par une heuristique), 3 - Éliminer tous les sommets couverts par ce monôme, 4 - Réitérer la procédure jusqu'à avoir couvert tous les sommets.

Cas des fonctions multiples ba 1 00 01 11 10 dc ba 00 01 11 10 dc 00 1 01 1 11 1 1 1 1 10 d c d' b a a' f1 f2 Minimisation séparée => f1 = d c + d' b a Réalisation minimale => f1 = d c + d' b a f2 = b a' + d' b f2 = b a + d' b a

Cas des fonctions multiples Soit M = {m1, m2, … mq-1, mq} ensemble minimal de monôme distincts tel quel toute composante de F puisse s'exprimer comme une somme de termes de M Soit mi un monôme quelconque de M apparaissant dans p composants de F, fi1, fi2, …, fip => mi est donc un monôme de la fonction produit f = fi1*fi2*…*fip Principe : chercher les monômes des fonctions produits

Cas des fonctions multiples ba ba 00 01 11 10 ba dc 00 01 11 10 dc 00 01 11 10 dc 00 1 00 1 1 00 1 01 1 01 1 1 01 1 11 1 1 1 1 11 1 11 1 10 10 1 10 f1 f2 f1. f2 Bp complète => dcba' + d' b a + b a' + d' b + d c + c b a dcba' (14) -> f1 f2 d' b a (3,7) -> f1 f2 b a' (2,6,10,14) -> f2 d' b (2,3,6,7) -> f2 d c (12,13,14,15) -> f1 c b a (7,15) -> f1 In f1 considero il gruppo da due cba perché é un gruppo non coperto da nessu monom. Sempre in f1 il sommet d'c'ba non lo considero perche é gia coperto in f1 f2 La liste des monômes premiers de F est donnée en marquant chaque terme par la fonction produit dont il est monôme premier. Si un monôme premier est trouvé plusieurs fois, on ne considère que la première instance

Cas des fonctions multiples A= dcba' (14) -> f1 f2 B = d' b a (3,7) -> f1 f2 C = b a' (2,6,10,14) -> f2 D = d' b (2,3,6,7) -> f2 E = d c (12,13,14,15) -> f1 F = c b a (7,15) -> f1 f1 f2 3 7 12 13 14 15 2 3 6 7 10 14 A B C D E F B(f1,f2), E(f1), C(f2) Réalisation minimale => f1 = d c + d' b a f2 = b a' + d' b a

Cas des fonctions multiples Id(f1) = R1(3,9,10,11,12,13,14,15) Id(f2) = R1(1,3,5,9,10,13,15) Id(f3) = R1(1,3,5,6,12,14)

Cas des fonctions multiples 1 00 01 11 10 dc ba f1f2f3 f1f2 f1f3 f2f3 f1 f2 f3 Id(f1) = R1(3,9,10,11,12,13,14,15) Id(f2) = R1(1,3,5,9,10,13,15) Id(f3) = R1(1,3,5,6,12,14) A = d' c' b a (3) -> f1 f2 f3 B = d' c' a (1,3) -> f2 f3 C = d' b' a (1,5) -> f2 f3 D = d c a' (12,14) -> f1 f3 E = d c a (13,15) -> f1 f2 F = d b' a (9,13) -> f1 f2 G = d c' b a' (10) -> f1 f2 H = c b a' (6,14) -> f3 I = b' a (1,5,9,13) -> f2 J = d c (12,13,14,15) -> f1 K = d b (10,11,14,15) -> f1 L = d a (9,11,13,15) -> f1 M = c' b a (3,11) -> f1

Cas des fonctions multiples 3 9 10 11 14 12 13 15 1 3 5 9 10 13 15 1 3 5 6 12 14 A B C D E F G H I J K L M A = d' c' b a (3) -> f1 f2 f3 B = d' c' a (1,3) -> f2 f3 C = d' b' a (1,5) -> f2 f3 D = d c a' (12,14) -> f1 f3 E = d c a (13,15) -> f1 f2 F = d b' a (9,13) -> f1 f2 G = d c' b a' (10) -> f1 f2 H = c b a' (6,14) -> f3 I = b' a (1,5,9,13) -> f2 J = d c (12,13,14,15) -> f1 K = d b (10,11,14,15) -> f1 L = d a (9,11,13,15) -> f1 M = c' b a (3,11) -> f1