Feuille 1 : Autour du problème SAT



Documents pareils
La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

Théorie des Graphes Cours 3: Forêts et Arbres II / Modélisation

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Introduction à la théorie des graphes. Solutions des exercices

Resolution limit in community detection

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

Plus courts chemins, programmation dynamique

Chapitre 5 : Flot maximal dans un graphe

Jean-Philippe Préaux

Annexe 6. Notions d ordonnancement.

Cercle trigonométrique et mesures d angles

Eléments de Théorie des Graphes et Programmation Linéaire

Eteindre. les. lumières MATH EN JEAN Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

Big Data et Graphes : Quelques pistes de recherche

Programmation linéaire

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/ Présentation. 1.2 Ressources

Big Data et Graphes : Quelques pistes de recherche

EVALUATIONS MI-PARCOURS CM2

Cours 1 : Qu est-ce que la programmation?

Cours Optimisation Partie Optimisation Combinatoire. Année scolaire Gérard Verfaillie ONERA/DCSD/CD, Toulouse

Année 2014/ er septembre Version de Anca Muscholl, issue du poly de Marc Zeitoun. 1/143

Programmation linéaire

Modélisation multi-agents - Agents réactifs

Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé.

Théorie des graphes et optimisation dans les graphes

Introduction à la théorie des graphes

Comparer des surfaces suivant leur aire en utilisant leurs propriétés géométriques Découverte et manipulation

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2


Problèmes de dénombrement.

Les Angles. I) Angles complémentaires, angles supplémentaires. 1) Angles complémentaires. 2 Angles supplémentaires. a) Définition.

Faculté des sciences Département de mathématiques. Théorie des graphes

Site internet de la ville de Sautron Tutoriel 1

FaceBook aime les Maths!

LE PROBLEME DU PLUS COURT CHEMIN

OLYMPIADES ACADEMIQUES DE MATHEMATIQUES. 15 mars 2006 CLASSE DE PREMIERE ES, GMF

1 Position du problème

Cours de Master Recherche

Problème d ordonnancement de véhicules en variables booléennes

EXERCICE 2 : SUIVI CINETIQUE D UNE TRANSFORMATION PAR SPECTROPHOTOMETRIE (6 points)

Fondements de l informatique Logique, modèles, et calculs

Une nouvelle approche de détection de communautés dans les réseaux sociaux

Cours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. address: Nicolas.Thiery@u-psud.fr URL:

Feuille d exercices 2 : Espaces probabilisés

Colorations identiantes de graphes

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Indications pour une progression au CM1 et au CM2

Problèmes autour des graphes

CARTE DE VOEUX À L ASSOCIAEDRE

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Correction ex feuille Etoiles-Spectres.

Triangle de Pascal dans Z/pZ avec p premier

4. Exercices et corrigés

THÈSE. En vue de l obtention du DOCTORAT DE L UNIVERSITÉ DE TOULOUSE. Touria CHAFQANE BEN RAHHOU

Une nouvelle technique d'analyse : La spectrophotométrie

Comment se connecter au VPN ECE sous vista

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

CCI Génie Logiciel UFR - IMA. Objectifs du cours d'aujourd'hui. Génie Logiciel Validation par le test. Qu est-ce que tester un programme?

MIS 102 Initiation à l Informatique

Chapitre 02. La lumière des étoiles. Exercices :

Designer d escalier GUIDE DE L UTILISATEUR. Stair Designer-1

1 radian. De même, la longueur d un arc de cercle de rayon R et dont l angle au centre a pour mesure α radians est α R. R AB =R.

SPECIFICATIONS TECHNIQUES : Gestion des Médicaments et des commandes de médicaments

Université Paris-Dauphine DUMI2E 1ère année, Applications

Modélisation et Simulation

DETERMINATION DE LA CONCENTRATION D UNE SOLUTION COLOREE

Comprendre l Univers grâce aux messages de la lumière

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Travaux pratiques avec RapidMiner

TD 1 - Structures de Traits et Unification

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1

La spectrophotométrie

Systèmes décisionnels et programmation avancée

Probabilités Loi binomiale Exercices corrigés


5 ème Chapitre 4 Triangles

Service des ressources informatiques - Conseil Scolaire de District Catholique Centre-Sud Page 1

Tâche complexe produite par l académie de Clermont-Ferrand. Mai 2012 LE TIR A L ARC. (d après une idée du collège des Portes du Midi de Maurs)

COMPTE-RENDU «MATHS EN JEANS» LYCEE OZENNE Groupe 1 : Comment faire une carte juste de la Terre?

SVE 222 & PCL-442. Fascicule de Travaux Pratiques

Travaux pratiques Configuration d un pare-feu sous Windows XP

ils entretiennent entre eux des flux, ils partagent des perceptions sur l environnement

Séquence 9. Étudiez le chapitre 11 de physique des «Notions fondamentales» : Physique : Dispersion de la lumière

point On obtient ainsi le ou les points d inter- entre deux objets».

Projet L1, S2, 2015: Simulation de fourmis, Soutenance la semaine du 4 mai.

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

LES TYPES DE DONNÉES DU LANGAGE PASCAL

Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN

Chapitre 2 Le problème de l unicité des solutions

Chapitre. Conquérant est une toile de 1930 qui se trouve au Centre Paul Klee à Berne (Suisse). Paul Klee (1879-

FAIRE UN PAIEMENT TIPI

Réservation de matériel

ALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII

Items étudiés dans le CHAPITRE N5. 7 et 9 p 129 D14 Déterminer par le calcul l'antécédent d'un nombre par une fonction linéaire

Microsoft Excel : tables de données

Rapport de stage de première année de Master Optimisation de cache d instructions

Définitions. Numéro à préciser. (Durée : )

Transcription:

Master-2 d Informatique 2014 2015 Complexit Algorithmique Applique. Feuille 1 : Autour du problème SAT 1 Rappels sur SAT Énoncé du problème. Le problème SAT (ou le problème de Satisfaisabilité) est le suivant : Instance : Une formule booléenne ϕ formée des variables booléennes x 1, x 2,..., x n et des opérations logiques,,,. Question : Existe-t-il un ensemble des valeurs des variables x i qui rend la formule ϕ vraie? Dans le cas où la réponse est positive on dit que la formule ϕ est satisfaisable. La forme suivante de la formule ϕ est le plus souvent utilisée : où chaque clause ϕ j est de la forme ϕ = ϕ 1 ϕ 2... ϕ m (1) ϕ j = u j,1 u j,2... u j,pj (2) où chaque littéral u j,l est soit une variable x i, soit sa négation x i. Pour déterminer si une formule ϕ ayant la forme (1), (2) est satisfaisable (et si oui, trouver une affectation des variables rendant ϕ vraie) on peut utiliser un SAT-solveur tel que minisat que l on peut trouver sur le site htpp://minisat.se Glucose, une optimisation de minisat, que l on trouve sur le site htpp://www.labri.fr/perso/lsimon/glucose/ On dit que la formule ϕ est sous forme k-sat si pour toute clause ϕ j dans (2) la longueur p j est la même et est égale à k. Exercice 1 Soit la formule booléenne ϕ = ((x 1 x 2 ) ( x 3 x 4 )) x 3. Expliquer en détail comment construire une formule ϕ ayant la forme 3-SAT et telle que ϕ est satisfaisable ϕ est satisfaisable. On ne demande pas d écrire la formule ϕ en totalité car elle serait trop longue, mais il faut expliquer comment estimer la longueur de ϕ en fonction de la longueur de ϕ. 1

2 Colorations Le problème de 3-Coloration de graphes est le suivant : Instance : Un graphe non-orienté G. Question : Existe-t-il une coloration des sommets du graphes G en 3 couleurs telle que les sommets adjacents soient toujours coloriés en couleurs différentes? D une manière analogue, on peut définir un problème de k-coloration pour tout entier k 2. Exercice 2 1. Montrer que le problème de 2-Coloration de graphes est polynomial. 2. Réduire le problème de 3-Coloration de graphes au problème SAT. 3 Ramsey Le problème de Triangle monochromatique est le suivant : Instance : Un graphe non-orienté G. Question : Existe-t-il une coloration d arêtes du graphes G en 2 couleurs, disons rouge et bleu, telle qu il n y ait pas de triangle rouge ni de triangle bleu? Exercice 3 1. Colorier les arêtes du graphe K 5 en 2 couleurs de telle sorte qu il n y ait pas de triangle monochromatique. 2. Montrer que, quelle que soit une coloration d arêtes du graphe K 6 en 2 couleurs, il existe toujours un triangle monochromatique. 3. Réduire le problème de Triangle monochromatique au problème SAT. Définition. Soit un graphe orienté G = (V, E) où V est l ensemble des sommets, et E est l ensemble des arcs du graphe. On dit qu un sous-ensemble U V est le noyau du graphe G si : 1. Quels que soient u 1, u 2 U, il n y a pas d arc u 1 u 2. 2. Pour tout v V \ U il existe un u U tel qu il y a un arc u v. 2

4 Noyau Le problème de Noyau est le suivant : Instance : Un graphe orienté G. Question : Existe-t-il un noyau dans G? Exercice 4 Réduire le problème de Noyau au problème SAT. Exercice 5 Voici une fausse solution de l exercice précédent. À toute paire de sommets i, j V on associe une variable Booléenne x ij dont la valeur est x ij = { 1 s il y a un arc i j, 0 sinon. Alors la première propriété du noyau s exprime ainsi : ϕ 1 = x ij, et la deuxième ainsi : ϕ 2 = i,j U j V \U x ij. Le noyau dans le graphe G existe si et seulement si la formule Booléenne ϕ = ϕ 1 ϕ 2 est satisfaisable. Critiquer cette solution. 5 Circuit Hamiltonien Définition. Un circuit Hamiltonien dans un graphe G est un circuit fermé qui passe une et une seule fois par chaque sommet du graphe. i U Le problème de Circuit Hamiltonien est le suivant : Instance : Un graphe non-orienté G. Question : Existe-t-il un circuit Hamiltonien dans G? Exercice 6 Réduire le problème Circuit Hamiltonien au problème SAT. Indication. Utiliser les variables x i,j, 1 i, j n. La variable x i,j sera vraie si le sommet i est le j-ème sommet d un circuit Hamiltonien. 3

6 2-SAT Exercice 7 (2-SAT) L objectif de cet exercice est de montrer que le problème 2-SAT est polynomial. L idée de la solution est la suivante. À chaque clause ϕ k = u k v k on associe deux implications qui lui sont équivalentes : u k v k et v k u k. On construit un graphe orienté G = (V, E) ayant 2n sommets et 2m arcs : les sommets correspondent aux variables x 1,..., x n et à leurs négations x 1,..., x n, tandis que les arcs correspondent aux implications u k v k et v k u k, k = 1,..., m. On cherche une valuation des sommets du graphe qui rend tous les arcs vrais. 1. Montrer que pour chaque composante fortement connexe du graphe G les valeurs booléenes correspondant aux sommets de cette composante doivent être égales. (Une composante fortement connexe d un graphe orienté est un sous-graphe maximal pour lequel il existe un chemin orienté de tout sommet à tout autre sommet de ce sous-graphe.) 2. Expliquer comment vérifier la satisfaisabilité de ϕ. 3. Appliquer la méthode si-dessus à la formule suivante : ϕ = (x 1 x 2 ) ( x 2 x 3 ) ( x 1 x 4 ) ( x 3 x 4 ) ( x 2 x 4 ). Trouver une valuation qui rend cette formule vraie. 4. Ajouter à la formule ϕ une clause ( x 1 x 3 ). Que c est-il passé? Remarque. Il existe un algorithme de calcul des composantes fortement connexes d un graphe orienté qui est linéaire en fonction du nombre d arcs du graphe. Vous souvenez-vous de cet algorithme? Définition. Soit G = (V, E) un graphe orienté, et soient V 1,..., V p ses composantes fortement connexes, V = V 1... V p. Le graphe des composantes est le graphe H ayant p sommets qui correspondent aux composantes du graphe G, et il existe un arc allant de V i à V j dans H si et seulement si il existe au moins un arc dans G allant d un sommet appartenant à V i à un sommet appartenant à V j. Exercice 8 1. Montrer que le graphe des composantes est une graphe orienté sans cycles. 2. Soit G un graphe correspondant à une formule 2-SAT, et soit H son graphe des composantes. Montrer les propriétés suivantes des composantes du graphe G : 4

Pour chaque composante U il existe une composante U qui contient les négations de tous les littéraux appartenant à U (et rien d autre). Un arc V i V j dans H existe si et seulement si il existe un arc V j V i. 3. L algorithme de recherche d une valuation rendant ϕ vraie procède comme suit : Trouver une composante U qui n a pas d arcs entrants dans H. Attribuer la valeur 0 à tous les littéraux de U, et la valeur 1 à tous les littéraux de U. Éliminer U et U, ainsi que tous les arcs incidents, du graphe H, et continuer avec le graphe restant. Expliquer le fonctionnement de cet algorithme. 4. Donner un exemple où la valuation n est pas unique. 7 Clique Le problème de Clique est le suivant : Instance : Un graphe non-orienté G et un entier m. Question : Existe-t-il un sous-graphe complet de G ayant m sommets (une m-clique)? Variante : Trouver une plus grande clique dans G. Exercice 9 Réduire le problème de Clique au problème SAT. Indication. Utiliser les variables x i,j, 1 i n, 1 j m. La variable x i,j sera vraie si le sommet i est le j-ème sommet d une clique. Exercice 10 Voici une fausse réduction du problème de Clique au problème 2-SAT. Soient les variables x i = { 1 si i appartient à la clique, 0 sinon. La proposition (x i x j ) implique que (i, j) est une arête du graphe. Par la contraposée, si (i, j) n est pas une arête, alors on doit avoir (x i x j ) = ( x i x j ). La formule qu il faut rendre vraie est donc ϕ = (i,j)/ E où E est l ensemble d arêtes du graphe. ( x i x j ) 5

1. Il est connu que le problème de Clique est NP-complet tandis que le problème 2-SAT est polynomial. Comment expliquer cette contradiction? 2. Quelle conclusion pouvez-vous tirer pour le problème MAX 2-SAT : trouver une valuation pour une formule 2-SAT qui rend la formule vraie et pour laquelle le nombre des variables vraies x i est maximal? 6