Rapport de stage: Analyse et comparaison de paramétrage pour des algorithmes de recherche locale

Dimension: px
Commencer à balayer dès la page:

Download "Rapport de stage: Analyse et comparaison de paramétrage pour des algorithmes de recherche locale"

Transcription

1 Rapport de stage: Analyse et comparaison de paramétrage pour des algorithmes de recherche locale Wenjie Fang ENS Stage effectué au LINA, Université de Nantes sous la direction de Charlotte Truchet (LINA, Université de Nantes) et Frédéric Saubion (LERIA, Université d Angers) du 1 er juin 2010 au 24 e aout septembre 2010 Résumé Le but de ce stage était d étudier le paramétrage de WalkSAT, un algorithme de recherche locale pour le problème SAT. Cette étude nécessite un benchmark représentatif pour obtenir un panorama raisonnablement large des performances de WalkSAT. Suivant une méthode inspiré par le solveur SATzilla (méta-solveur qui choisit l algorithme de résolution sur des critères statistiques), l obtention d un tel benchmark a été abordée de façon statistique, à partir de critères intrinsèque à l instance. Un regroupement des instances SAT par clustering sur les caractéristiques statistiques des instances est proposé. Bien que l analyse n ait pas permis de retrouver un classement des instances selon leur nature et leur origine, les caractéristiques statistiques a montré leur importance dans une étude des instances 3SAT aléatoires autour du seuil de satisfaisabilité. Dans un deuxième temps, une étude de l influence des paramètres sur la performance de WalkSAT a été réalisée. Pour trouver le paramétrage optimal de WalkSAT, une version l algorithme Revac, qui est simplifiée et adaptée à WalkSAT, a été utilisée. L expérience a montré que le paramétrage optimal pourrait varier entre les instances différentes, ce qui est en accord avec le point de vue No Free Lunch. Afin d explorer d autres caratérisations des instances SAT, une nouvelle caractéristique ϕ 0, inspirée de travaux en physique statistique, a été étudiée. Le comportement de ϕ 0 et ϕ 0 a été étudié expérimentalement. Les liens possibles de ϕ 0 avec la difficulté des instances SAT et le problème MAXSAT ont été aussi explorés. Ces études ont produit des résultats intéressants, et ouvrent des pistes de recherche intéressantes. 1

2 Table des matières 1 Introduction Le problème SAT WalkSAT, parmi les algorithmes de recherche locale Instances SAT et la mesure de performance Autour des caractéristiques statistiques Motivations Statistical Analysis Toolkit for SAT (SAT4SAT) Regroupement des instances avec SAT4SAT Temps de calcul et caractéristiques statistiques La structure fine autour du seuil des instances 3SAT aléatoires Paramétrage de WalkSAT Implémentation modifiée de WalkSAT Distribution du temps de calcul de WalkSAT Evolution de la performance suivant les paramètres de WalkSAT Variation du nombre de flips par seconde de WalkSAT selon le paramètre de bruit p Paramétrage automatique de Walksat Découvrir une nouvelle caractéristique Un point de vue physique Mesure de ϕ Evolution de ϕ 0 suivant le nombre de variables avec c/v fixé Fluctuation de ϕ Corrélation avec la difficulté des instance aléatoire Corrélation avec la solution de MAXSAT Conclusion 32 2

3 1 Introduction Ce rapport présente les travaux effectués lors de sur mon stage de L3 à l Université de Nantes du 1 er juin au 24 août 2010, encadré par Charlotte Truchet à l Université de Nantes et Frédéric Saubion à l Université d Angers dans le projet RUBIS. Ce stage porte sur l étude du paramétrage d algorithmes de recherche locale dans le domaine d optimisation combinatoire, plus particulièrement, sur le problème SAT et l algorithme WalkSAT[20]. Le problème SAT est important et même canonique en optimisation combinatoire, et l algorithme WalkSAT est très connu et très performant parmi les algorithmes de recherche locale pour le problème SAT. Il est connu que les paramètres peuvent fortement influencer la performance des algorithmes de recherche locale. Cependant, le paramétrage de ces algorithmes a fin d obtenir la meilleure performance est encore un problème largement ouvert. Ce problème est aussi important car ces algorithmes de recherche locale sont très utilisés dans la recherche et dans l industrie. Durant ce stage, l algorithme WalkSAT a été étudié car il est représentatif des algorithmes visés pour le problème SAT. Afin de paramétrer l algorithme WalkSAT, il faut d abord étudier l influence des paramètres sur la performance de WalkSAT, et donc mesurer et comparer cette performance avec différents paramètres. Pour ne pas influencer les mesures, il faut choisir un ensemble représentatif d instances de SAT, ce qui nécessite une classification des instances de SAT. Le but de ce stage est de proposer une méthode de sélection des instances représentatives de SAT pour la mesure et la comparaison de la performance des algorithmes, et d étudier l influence des paramètres sur la performance de WalkSAT. Ce rapport est organisé en 5 sections. Le reste de cette section est consacrée à l introduction du problème SAT, l algorithme WalkSAT et l importance des problèmes à étudier dans ce stage. Dans la section 2 on décrira d une tentative de méthode pour classifier les instances de SAT et choisir celles qui sont les plus représentatives. La section 3 concerne l étude de l influence des paramètres sur la performance de WalkSAT et des résultats obtenus. La section 4 prśente une nouvelle caractérisation pour les instances de SAT, qui pourrait servir à la classification des instances. La dernière section conclut ce rapport. 1.1 Le problème SAT Le problème SAT est un problème de décision qui consiste à décider si une formule de la logique propositionnelle en forme normale conjonctive est satisfaisable. C est un problème au cœur de divers domaines, comme par exemple la complexité et l optimisation combinatoire. Il est le premier problème démontré NP-complet [8]. Beaucoup de problèmes NP-complets peuvent être ramenés à SAT par une réduction polynomiale, d où son importance, car ces réductions s appliquent aussi pour les versions d optimisation de ces problèmes. SAT a aussi diverses applications dans le domaine de l intelligence artificielle et dans l industrie. Son importance théorique et pratique incite beaucoup de chercheurs et programmeurs à inventer des algorithmes de plus en plus efficaces pour résoudre ce problème. Voici quelques exemples : SATzilla [24], glucose [1], WalkSAT [20]. Une instance de SAT est une formule logique propositionnelle F en forme 3

4 normale conjonctive, c est-à-dire une conjonction de clauses qui sont des disjonctions de littéraux, où un littéral est une variable booléenne ou une négation de variable booléenne. En notant E l ensemble des variables booléennes de l instance, on peut définir une valuation comme une fonction de E dans {0, 1}. En fixant l ordre des variables, une valuation peut être considérée comme un vecteur booléen. Une instance est dite satisfaisable si et seulement s il existe une valuation pour laquelle l instance soit logiquement vraie. On dit que cette valuation satisfait cette instance. Dans le cas contraire, l instance est dite non satisfaisable. Désormais, pour simplifier la notation, on appellera instance une instance SAT, et toutes les variables mentionnées sont booléennes sauf indication contraire. 1.2 WalkSAT, parmi les algorithmes de recherche locale Originellement problème de décision, le problème SAT a une forme d optimisation appelée MAXSAT, visant à trouver une valuation qui minimise le nombre de clauses fausses dans la formule. Si on trouve une valuation qui rend nul le nombre de clauses fausses de l instance proposée, on peut affirmer que cette instance est satisfaisable, et donc résoudre le problème SAT pour cette instance. Dans ce contexte, on peut appliquer des méthodes dans le domaine de l optimisation combinatoire. L optimisation combinatoire est un domaine de l informatique consacré à la résolution des problèmes d optimisation dans le contexte discret. Plus précisément, il s agit d optimiser une fonction objectif dans un espace discret de recherche. Dans ce domaine, il y a une famille d algorithmes simples et performants qui suscite beaucoup d intérêt de la part des chercheurs : les algorithmes de recherche locale. La recherche locale est une méta-heuristique permettant d optimiser la fonction objectif en se promenant itérativement dans l espace de recherche suivant une structure de voisinage. Les algorithmes et méta-heuristiques de recherche locale sont très utilisés et très performants en pratique, par exemple la recherche tabou et le recuit simulé [20]. Il est donc raisonnable d aborder le problème SAT par la recherche locale. Afin d adapter la recherche locale au problème SAT, on introduit une correspondance entre les ingrédients nécessaires pour la recherche locale et la structure d une instance SAT. Etant donné une instance avec n variables, une solution est un vecteur booléen de longueur n vu comme une valuation, l espace de recherche est l ensemble des vecteurs booléens de longueur n. La fonction objectif pour cette instance est le nombre de clauses fausses dans cette valuation. Si la fonction objectif est nulle pour une certaine valuation, par définition l instance est satisfaite par cette valuation. La structure de voisinage est donnée par la distance de Hamming, c est-à-dire le nombre de variables ayant deux valeurs différentes entre deux valuations. Le voisinage d une valuation est l ensemble des valuations ayant la distance de Hamming de 1 avec la valuation concernée. On se déplace dans cette structure de voisinage en changeant la valeur d une composante dans le vecteur courant, qui est compatible avec la définition de voisinage. Un tel déplacement en changeant la valuation d une variable est appelé un flip sur cette variable. On dit aussi flipper une variable dans la valuation. Pour mieux optimiser la fonction objectif, il est favorable que le déplacement soit glouton, c est-à-dire se déplacer toujours vers les voisins ayant une meilleure 4

5 valeur de fonction objectif. Un obstacle majeur de cette approche est l existence de minima locaux, qui peuvent coincer une recherche locale trop gloutonne. Pour contourner cet obstacle, des mécanismes dédiés à faire sortir la recherche de minima locaux sont proposés. Deux stratégies souvent utilisées sont la perturbation stochastique et le restart, qui sont aussi utilisées dans l algorithme WalkSAT. Une autre utilité du restart est de diversifier la recherche, qui nous permet d explorer plus complètement l espace de recherche. WalkSAT est un algorithme de recherche locale pour le problème SAT proposé par Selman, Kautz et Cohen qui améliore leur algorithme précédent, GSAT [20]. Cet algorithme possède plusieurs variantes. La variante étudiée dans ce stage est WalkSAT/SKC, la version de l implémentation maintenue par Kautz [19]. Voici son pseudo-code dans l Algorithme 1. Algorithm 1 WalkSAT Require: Une instance SAT F Ensure: Renvoyer une valuation qui satisfait F si l algorithme termine loop T := une valuation tirée aléatoirement for i := 1 to Maxiter do if T satisfait F then return T else C := une clause de F aléatoirement choisie non satisfaite par T if rand(0, 1) < p then Flipper dans T une variable aléatoirement choisie dans C else Flipper dans T une variable dans C qui minimise le nombre de clauses rendues fausses après le flip end if end if end for end loop WalkSAT décrit ici ne garantit pas la terminaison, mais la validité de la solution est évidente en cas de terminaison. Dans la pratique, il y a souvent une contrainte de temps de calcul pour que l algorithme ne boucle pas indéfiniment. Dans WalkSAT il y a deux paramètres, Maxiter et p, qui correspondent respectivement à deux stratégie pour contourner le problème des minima locaux, le restart et la perturbation stochastique. En fait le restart aussi sert à diversifier la recherche. Ces deux paramètres influencent beaucoup la performance de WalkSAT [13]. Dans la pratique, ces paramètres sont souvent déterminés empiriquement. Dans l implémentation maintenue par Kautz, les valeurs par défaut de M axiter et p sont respectivement et 0.5. D autres ont déjà travaillé sur le paramétrage automatique [12, 18]. 1.3 Instances SAT et la mesure de performance Pour étudier l influence des paramètres sur la performance de WalkSAT, il faut choisir des instances assez représentatives comme benchmarks, ce qui nécessite une compréhension des instances de SAT courantes. 5

6 Une source importante de benchmarks de SAT est la Compétition SAT et la SAT Race [3]. Ce sont des compétitions entre des solvers de SAT lors de la conférence annuelle SAT. Les instances utilisées sont publiées sur leur site web, avec la performance des solvers les plus avancés. Dans la Compétition SAT, les instances sont divisées selon leur origine en trois catégories : industrielle, fabriquée et random. Les instances industrielles viennent de l application de SAT dans l industrie, par exemple la vérification automatique de circuits intégrés. Ces instances sont souvent de taille très grande et difficiles. Les instances fabriquées sont des instances issues d autre problèmes de décision, mais codées comme des instances de SAT. Ces instances sont structurées dû au codage de problème. Quant aux instances random, comme leur nom l indique, ce sont des instances générées de façon aléatoire. Ces instances sont, par nature, non structurées. Les instances sont en plus regroupées selon leur satisfaisabilité. Généralement, une instance satisfaisable est plus facile à résoudre, car il suffit de proposer une valuation satisfaisante. Quant à une instance non satisfaisable, il faut prouver la non-satisfaisabilité. Un autre composant important de la Compétition SAT est une collection de solvers. Il y a en général deux types de solvers, complet et incomplet. Les instances dans les différentes catégories se comportent différemment sur ces solvers. Presque tout les solvers complets sont basés sur l algorithme Davis Putnam - Logemann Loveland(DPLL) renforcé avec de l apprentissage de clauses. Ces solvers complets explorent systématiquement toutes les possibilités et sont capables de distinguer les instances satisfaisables et non satisfaisables. Un exemple de solveur complet est glucose [1], développé par G. Audemard et L. Simon. Les solvers complets sont plus performants dans la catégorie industrielle et fabriquée, mais souvent échouent dans la catégorie random. Les solvers incomplets, quant à eux, utilisent tous la stratégie de recherche locale pour trouver une valuation qui satisfait l instance donnée. Par construction ces solvers ne sont pas capables de résoudre une instance non satisfaisable, mais ils peuvent résoudre des instances satisfaisables très rapidement. WalkSAT est un solveur incomplet. Les solvers incomplets sont extrêmement efficaces sur les instances aléatoires satisfaisables, mais ils sont beaucoup moins efficaces dans les autres catégories. En raison de cette diversité d instances de SAT, dans la mesure de performance d un algorithme, il faut être capable de classer les instances automatiquement et de choisir des représentants pour éviter des biais. A priori les instances doivent être classées selon leur nature. Cependant, la nature d une instance n est pas une notion bien définie, même si elle existe, par exemple une instance peut être plus ou moins structurée. Cet aspect de regroupement des instances de SAT est étudié dans ce stage pour choisir des benchmarks. Le résultat peut être utile pour la suite concernant l étude de l influence des paramètres sur la performance de WalkSAT, qui nécessite beaucoup de mesure de performance. Dans ce stage, on s intéresse à l algorithme WalkSAT, qui est probabiliste. Plus précisément, on voudrait comprendre la sensibilité de WalkSAT au paramétrage. L influence des paramètres sur la performance de WalkSAT n admet pas encore une analyse théorique assez satisfaisante, à cause de la nature probabiliste de WalkSAT. Par conséquent, il est raisonnable, même favorable, d essayer une approche pratique. 6

7 1. La taille d instance Nombre de clauses, noté c Nombre de variables, noté v Ratio clause/variable, noté c/v 2. Le graphe variable-clause Statistiques sur le degré des nœuds de variables : moyen, coefficient de variation, min, max et entropie Statistiques sur le degré des nœuds de clauses : moyen, coefficient de variation, min, max et entropie 3. Le graphe des variables Statistiques sur le degré des nœuds : moyen, coefficient de variation, min et max 4. Statistiques sur la balance Ratio de littéraux positifs et négatifs dans chaque clause : moyen, coefficient de variation, min, max et entropie Ratio d occurrences positives et négatives de chaque variable : moyen, coefficient de variation, min, max et entropie Fraction des clauses binaires et ternaires 5. Proximité d une formule de Horn Fraction de clauses de Horn Nombre d occurrences dans une clause de Horn pour chaque variable : moyen, coefficient de variation, min, max et entropie 6. Sondage par algorithme DPLL Nombre de propagations unitaires : à la profondeur 1, 4, 16, 64 et 256 Estimation de la taille de l espace de recherche : profondeur moyenne d une contradiction, estimation du logarithme de nombre de nœuds 7. Sondage par algorithme de recherche locale Nombre de flips au meilleur minimum local dans une exécution : moyen, médiane, 10 e et 90 e centiles pour l algorithme SAPS Amélioration moyenne de chaque flip au meilleur minimum local dans une exécution : mesurée pour l algorithme SAPS Fraction moyenne d amélioration due au premier minimum local : mesurée pour l algorithme SAPS et GSAT Coefficient de variation de nombre de clauses fausses au chaque minimum local : moyenné parmi plusieurs exécution de SAPS Figure 1 Les caractéristiques considérées par SATzilla, étudiées et expliquées dans [16] Dans les sections suivantes, toujours avec une approche pratique, on étudiera des aspects différents du problème SAT et de WalkSAT. On cherchera à obtenir plus de connaissances sur les instances SAT et sur les algorithmes probabilistes à l aide d une approche statistique. On cherche aussi à comprendre le lien entre les paramètres et la performance de WalkSAT, qui pourrait servir à l amélioration du paramétrage et au paramétrage automatique ou semi-automatique. 2 Autour des caractéristiques statistiques 2.1 Motivations La différence de performance de solvers sur les instances de différents types a inspiré les chercheurs à créer des solvers de type portfolio. Un solveur portfolio est composé d une collection de solvers et d un contrôleur qui sélectionne un solveur approprié pour résoudre efficacement une instance donnée. Un exemple de solveur portfolio est SATzilla [24], qui est très performant dans la Compétition SAT. Comme les solvers ont une différence de performance sur les instances de différente nature, cette procédure de sélection de solveur peut être considérée comme un regroupement d instance. Typiquement un solveur portfolio utilise des caractéristiques extraites de l instance donnée pour la sélection du solveur. La Figure 1 liste les caractéristiques considérées par SATzilla [24]. On peut distinguer deux types de caractéristiques d une instance, les ca- 7

8 ractéristiques statistiques qui sont des grandeurs statistiques extraites directement de la structure de l instance, et les caractéristiques de sondage qui sont dynamiquement obtenues en appliquant des algorithmes sur l instance. Par exemple, dans la liste des caractéristiques considérées par SATzilla, les 5 premiers groupes sont des caractéristiques statistiques, et les 2 derniers sont des caractéristiques de sondage. Inspiré par SATzilla, nous allons poursuivre cette approche statistique pour étudier le regroupement des instances à partir des caractéristiques. L analyse est concentrée sur les caractéristiques statistiques car elles reflètent directement la structure d une instance et donc sa nature, de plus elles sont plus facile à obtenir. On utilisera une méthode de clustering pour classer les instances, qui nécessite un outil d extraction automatique de caractéristiques statistiques et de clustering automatique. Avec cet outil, on essayera d obtenir un ensemble de benchmark représentatif pour la mesure de performance. Cette approche consistante à étudier les instance SAT par leurs caractéristiques statistiques est aussi applicable aux autres questions sur la nature des instances de SAT. Un outil d extraction automatique de caractéristiques statistiques peut aussi servir dans ce genre d étude. 2.2 Statistical Analysis Toolkit for SAT (SAT4SAT) Statistical Analysis Toolkit for SAT (SAT4SAT) est un outil développé pendant ce stage. Il est composé de deux composants, l un pour l extraction de caractéristiques statistiques, l autre le pour le clustering automatique. Pour l extraction, les caractéristiques statistiques considérées sont celles de SATzilla, c est-à-dire celles des groupes 1-5 dans la Figure 1. La partie de clustering est adaptée d une implémentation de David Arthur de K-means++ [2], un algorithme de clustering k-means. Cet outil est principalement conçu pour la collection automatique de caractéristiques statistiques des instances. Il énumère toute instances sous son répertoire d exécution et extrait leurs caractéristiques statistiques, puis offre l option de poursuivre un clustering selon un ensemble de caractéristiques statistiques choisi interactivement par l utilisateur. Il demande aussi le nombre de clusters pour le clustering nécessaire pour l algorithme K-means++. Dans l implémentation de l extraction de caractéristiques statistiques, il y a un problème de mémoire concernant la construction du graphe des variables. Le graphe des variables d une instance est un graphe dont chaque nœud représente une variable. Si deux variables apparaissent dans une même clause, les deux nœuds correspondants sont reliés. Les caractéristiques statistiques extraites de ce graphe concernent la distribution de degré du nœud, il suffit donc de calculer le degré de chaque nœud. Il existe deux approches possibles pour calculer le degré de chaque nœud, soit par construction directe d une liste d adjacence du graphe en une passe sur toutes les clauses, soit en scannant pour un nœud donné toutes les clauses dans lesquelles la variables correspondante apparaît. L approche par liste d adjacence est très rapide, mais demande beaucoup de mémoire, elle n est donc pas capable de traiter les instances de taille très grande, comme par exemple certaines instances industrielles. L autre approche demande peu de mémoire, mais avec une perte significative de vitesse. 8

9 Afin d avoir un compromis entre la consommation de mémoire et la vitesse, une stratégie mixte est utilisée dans SAT4SAT. La demande de mémoire d une liste d adjacence est estimée avant le calcul sur le graphe de variables. Si la demande est inférieure à un certain seuil, l approche par liste d adjacence est utilisée ; sinon, la secondes approche est utilisée. Cette stratégie garantit une bonne vitesse sur la plupart des instances sans perte de généralité. Cependant, dans le pratique, les très grandes instances prennent beaucoup de temps, donc leur calcul est souvent interrompu par l utilisateur ou par le système. Cet outil est temporairement hébergé sur wfang/sat4sat/toolkit.html, avec le code de source disponible dans lequel il y a plus de détails. Il sera aussi disponible sur le site web du projet RUBIS (en cours de construction à l Université de Nantes). D autres caractéristiques pourraient être ajoutées à l avenir. SAT4SAT est destiné à servir à la collection et à l analyse de données dans ce stage. L utilisation montre que cet outil est très pratique pour la collection massive des caractéristiques statistiques car il est totalement automatique et performant. Pour la collection des caractéristiques statistiques des 570 instances dans la catégorie random de la compétition SAT 2009, SAT4SAT sous cygwin prend environ 150 secondes sur une machine de Core 2 Duo T Regroupement des instances avec SAT4SAT On choisit les instances de la Compétition SAT 2007 [3] pour étudier le regroupement des instances par caractéristiques statistiques. Le regroupement est fait avec le clustering k-means ; SAT4SAT est utilisé pour le calcul de caractéristiques statistiques et le clustering. Cette approche est inspirée par le succès de SATzilla, qui utilise un modèle de difficulté empirique obtenu avec l apprentissage sur un ensemble de caractéristiques pour estimer le temps de calcul des solvers et pour la sélection de solveur. Les instances de la Compétition SAT 2007 sont organisées selon leur catégorie et leur origine, ce qui facilite l interprétation des résultats, car les instances de même origine sont a priori de même nature. Pour la plupart des instances, SAT4SAT est très performant. Généralement, les instances industrielles sont plus grandes, et donc prennent plus de temps pour SAT4SAT que les autres instances. Il y a même des instances industrielles de taille gigantesques pour lesquelles SAT4SAT échoue en raison d une limite de temps de calcul imposée par le système. Ces instances sont exclues dans l analyse suivante. Le choix des caractéristiques statistiques à considérer est aussi important pour le résultat. Le clustering k-means a pour but de regrouper les points d un espace euclidien en minimisant la somme des carrés des distances euclidiennes des points dans un même cluster. Par conséquent, la dispersion de la distribution d une dimension influence l importance de cette dimension dans le clustering k- means. En d autres termes, plus les données sur une dimension sont dispersées, plus cette dimension est importante. Par exemple, le nombre de variables est plus important que le ratio clause/variable pour les instances de la Compétition SAT 2007, car la taille de ces instances varie énormément. Ce phénomène n est pas souhaité en absence d information a priori sur l importance de chaque caractéristique statistique. Pour minimiser ce phénomène, on choisit des caractéristiques qui sont moins dispersées dans la distribution des instances. On veut aussi que ces caractéristiques soient insensibles à la taille des 9

10 Figure 2 Résultat de l analyse cluster sur les instances de la Compétition SAT Le nombre de clusters est fixé à 25. Chaque couleur correspond à un cluster. instances, car on peut construire des instances de tailles diverses ayant la même nature. Pour éviter ce phénomène, il est aussi possible de normaliser les caractéristiques. Cependant, par la nature de K-Means++, la longueur d intervalle de chaque caractéristique normalisée a une influence très importante sur l importance de cette caractéristique dans le clustering. Puisque l importance de chaque caractéristique est inconnue, choisir a priori des facteurs pour la normalisation peut introduire un risque la validité du clustering. Un autre problème du clustering k-means est qu il demande le nombre de clusters. Cependant, le nombre de types d instances n est pas connu a priori. Il faut estimer empiriquement cette valeur. Malgré ces efforts, l analyse cluster des instances de la Compétition SAT 2007 n aboutit pas à un résultat assez significatif. Le résultat de cette analyse est présenté dans la Figure 2. Le nombre de clusters donné à l algorithme est 25. Les axes sont les caractéristiques avec les plus grands écarts types. Les points de même couleur représentent les instances d un même groupe. On voit bien qu il y a des regroupements distinctifs, mais aussi certains groupes dispersés même dans cette projection sur les caractéristiques les plus importantes. On constate que les instances de même origine sont souvent classées dans le même groupe. C est toujours le cas pour les instances aléatoires. On voit des exceptions dans les deux autres catégories. Parmi les instances de même origine, il peut en exister une ou deux classées différemment. Nous avons un cas extrême où chaque instance est classée dans un groupe différent, bien qu elles soient de même origine. Cette exception n invalide pas cette méthode de regroupement, 10

11 mais pose quand même une doute sur l utilisation d un tel résultat. La diversité des instances soulève un autre problème. Les instances, surtout celles de la catégorie fabriquée et la catégorie industrielle, présentent une diversité trop riche pour la méthode de clustering. Des instances d origines différentes peuvent être classées dans le même groupe. Une des raisons est que l estimation du nombre des différent types d instance est trop restreinte, ce qui introduit forcément des collisions. Une autre explication est que les caractéristiques considérées ne sont pas suffisantes pour séparer ces instances mal classées. Ces deux problèmes concernent la catégorie fabriquée et la catégorie industrielle. Une amélioration possible consisterait à introduire des caractéristiques qui ont une chance de séparer plus correctement les instances. Cependant, l analyse par clustering marche très bien sur les instances aléatoires. On peut identifier assez clairement quelques types d instances dans la catégorie random. Toutes les instances de même origine sont classées dans un même groupe. Les problèmes dans les deux autres catégories ne sont pas apparus, probablement grâce à une faible diversité des types d instances. De plus, les instances aléatoires sont caractérisées par quelques paramètres, leur caractéristiques statistiques varient peu, qui permet un bon regroupement par clustering. Dans la catégorie random, il y a plusieurs types d instance : les instances dites 2 + p composées de clauses binaires et ternaires, les instances 7SAT de grande taille et régulière (chaque nœud dans le graphe des variables est de même degré), les instances (3SAT, 5SAT) aléatoires ayant un ratio c/v au seuil de la séparation de satisfaisabilité [9]. Dans l analyse par clustering, les différentes classes sont assez bien identifiées, mais il y a aussi des erreurs, par exemple les instances 2+p sont regroupées avec celles 3SAT aléatoires. Il y a aussi des instances fabriquées qui sont classées avec les instances aléatoires. Cette expérience montre que cette méthode de regroupement des instances SAT n est pas assez discriminante. La validité du résultat n est pas garantie pour un ensemble d instances de grande diversité, ni quand il n y a pas d informations a priori sur le nombre de types d instance (afin de préciser le nombre de classes souhaité). Etant donné un regroupement des instances, on peut choisir des instances parmi chaque groupe pour établir un ensemble de jeux de test assez représentatif de l ensemble initial des instances. Cependant, la validité de cette approche est liée directement à celle du regroupement, qui est mise en doute pour les instances industrielles et fabriquées. De plus, on souhait d avoir un jeux de test plus synthétique pour gagner du temps de calcul. Pour les instances industrielles et fabriquées, leur diversité empêche d avoir un échantillonnage synthétique et représentatif, ce qui est aussi reflété par cette analyse par clustering précédemment présentée. Malgré tout, cette analyse reste valable pour les instances aléatoires. Cependant, dans cette catégorie, la façon la plus simple de choisir des instances représentatives est de les générer aléatoirement, car il n y a pas beaucoup de type d instances, et de plus ces types sont assez distinctifs entre eux. En conclusion, théoriquement cette méthode pour choisir des instances représentatives parmi un ensemble d instances est faisable, mais en pratique, son utilisation et sa validité sont mises en doute pour les instances industrielles et les instances fabriquées qui sont de grande diversité. Pour rendre plus efficiente cette approche, des raffinements seront nécessaires. 11

12 2.4 Temps de calcul et caractéristiques statistiques Toujours inspiré par SATzilla, on souhait chercher un lien entre temps de calcul et caractéristiques statistiques des instances. SATzilla utilise des méthodes d apprentissage automatique pas toujours bien explicitées, qui le rendent difficile à étudier. Pour faciliter le travail, dans ce stage on se concentrera sur une approche par des relations linéaires. Les données de la Compétition SAT 2007 obtenues dans la Section 2.3 seront utilisées. A priori, il faut faire une analyse pour chaque algorithme, car les algorithmes visent des aspects différents de SAT, qui peuvent beaucoup influencer la performance. Plus précisément, les algorithmes DPLL visent la question de la satisfaction de SAT et les algorithmes de recherche locale l aspect optimisation. Pour l analyse, le temps de calcul de chaque algorithme est extrait avec des scripts Perl. Les coefficients de corrélation entre le temps de calcul et des caractéristiques statistiques sont calculés. Cette analyse est élaborée sur les algorithmes gagnants de la Compétition SAT En général, les corrélations sont souvent faibles. Le temps de calcul est bien corrélé avec la taille d instance. Les autres caractéristiques sont peu corrélées au temps de calcul, avec quelques exceptions peu significatives. En conclusion, l analyse est trop simple et naïve pour découvrir correspondance entre le temps de calcul et les caractéristiques statistiques. Il faut utiliser des techniques plus avancées, comme dans SATzilla. 2.5 La structure fine autour du seuil des instances 3SAT aléatoires Cette sous-partie décrit l étude de la distribution des instances 3SAT aléatoires à l aide de l outil SAT4SAT. On sait depuis les années 1990 que, pour les instances 3SAT aléatoires, il existe une valeur critique du ratio clauses/variables notée α c, autour duquel une transition de phase SAT/UNSAT a lieu [9]. Au-dessous de ce seuil, les instances 3SAT aléatoires sont satisfaisables avec une grande probabilité. Au contraire, au-dessus de ce seuil, les instances sont non-satisfaisables avec une grande probabilité. Les instances autour de ce seuil présentent souvent une difficulté significative pour les solvers qu ils soient complets ou non. C est pourquoi cette zone intéresse beaucoup de chercheurs. On veut essayer d observer une structure plus fine de cette zone avec d autres caractéristiques statistiques. Un ensemble d instances 3SAT aléatoires est échantillonné avec l outil makewff (disponible sur le site de WalkSAT [19]) et traitées avec WalkSAT. Les modifications effectuées seront expliquées dans la section suivante. Pour déterminer la satisfiabilité, le solveur march hi est utilisé. Ce solveur est le champion dans la catégorie random non satisfaisable de la Compétition SAT 2009 [3]. C est un algorithme de type DPLL, mais renforcé avec une technique de Look-Ahead [10]. Les caractéristiques statistiques sont récupérées avec SAT4SAT. Le nombre de variables des instances générées est fixé à 360 en considérant la performance de march hi. Les tests sont conçus sous l hypothèse que α c Cette valeur est en accord avec [9] et les instances de la Compétition SAT [3]. Le premier test explore la région de ratio c/v autour de α c, plus précisément l intervalle [4.05, 4.47]. Dans cet intervalle 49 valeurs de ratio c/v sont échantillonnées, avec 20 instances générées pour chaque valeur de c/v. Sur la Figure 12

13 Figure 3 Distribution des instances aléatoires satisfaisables et non satisfaisables dans la région critique autour du seuil de c/v. L axe Y est choisi a fin de faciliter la distinction entre la région satisfaisable et non satisfaisable. 3 on voit bien la transition de phase. On veut trouver une relation simple qui sépare au mieux les instances satisfaisables et non satisfaisables que le ratio c/v. Une technique possible pour effectuer ce genre de classification est la méthode Support Vector Machine(SVM), qui calcule un hyperplan séparant au mieux deux classes de points, pour deux ensembles de points déjà classés dans un espace. Le résultat peut être utilisé pour classifier de nouveaux points. L outil libsvm [7] est utilisé pour l analyse SVM. On a effectué une phase d apprentissage puis une phase de test. L exactitude obtenue dans la phase de test est environ de 89%, ce qui n est pas significativement meilleure que celle de la prédiction par le ratio c/v, qui est de 81% avec la séparation c/v = La difficulté des instances dans cette région a été aussi étudiée. On mesure la difficulté d une instance par le temps de calcul utilisé pour la résoudre. Cette mesure de difficulté est définie par rapport à l algorithme utilisé. Dans ce test WalkSAT et march hi sont utilisés pour cette mesure de difficulté. Les résultats sont présentés dans la Figure 4. Selon ce graphe, il n existe pas de corrélation significative entre le temps de calcul et le ratio c/v pour WalkSAT. Ce n est pas un résultat définitif à cause du problème de précision de la mesure de temps de calcul pour WalkSAT dont on discutera dans la section suivante. De plus, il est probable que l échantillonnage ne soit pas suffisamment large. Le résultat pour march hi est beaucoup plus intéressant. On constate qu en moyenne les instances non satisfaisables sont significativement plus difficiles que celles satisfaisables, ce qui est en accord avec la discussion dans la Section 1.3. Pourtant il n y a pas de corrélation significative pour les instances satisfaisables, on voit une corrélation assez claire entre le temps de calcul et le ratio c/v pour 13

14 Figure 4 Temps de calcul des instances aléatoire dans la région critique pour WalkSAT et pour march hi. Le temps de calcul est mesuré en seconde. Le temps de calcul pour WalkSAT est la moyenne de 100 exécutions dont la limite de temps de calcul est 120 secondes. les instances non satisfaisables. Plus le ratio c/v est grand, c est-à-dire plus l instance est surcontrainte, plus vite march hi résout cette instance. Ce résultat est aussi naturel, car plus une instance est contrainte, plus elle est facile pour un algorithme de type DPLL de trouver des conflits et donc gagner du temps pour démontrer l insatisfaisabilité. Revenons à la structure fine autour du ratio c/v critique. Il existe peutêtre d autres caractéristiques statistiques indépendantes du ratio c/v qui ont un lien avec la satisfiabilité d une instance. Même si l analyse SVM n aboutit pas à un résultat assez significatif : il est possible que l influence des autres caractéristiques statistiques soit masquée par celle du ratio c/v qui est très forte. Le deuxième test envisage plus précisément l influence des autres caractéristiques statistiques sur la satisfaisabilité des instances instances 3SAT aléatoires sont générées, chacune avec 360 variables et 1533 clauses, donc le ratio c/v est près de α c. La satisfaisabilité est déterminée avec march hi, et les caractéristiques statistiques sont collectées avec SAT4SAT. Une seule caractéristique qui semble avoir un lien visible avec la satisfaisabilité est le coefficient de variation du ratio d occurrences positives et négatives de chaque variable. Cependant, cette liaison est très faible, comme ce que l on peut voir dans la Figure 5. Cette séparation, bien qu elle existe, est vraiment souple et peu significative par rapport au ratio c/v. Il est difficile d obtenir une valeur de séparation optimale. De plus, il est possible que cette valeur de séparation optimale soit en fonction de ratio c/v. Il n existe pas encore d explication théorique pour cette séparation. Une étude plus approfondie sur cette séparation dépasse le cadre de ce stage. 14

15 Figure 5 Séparation très souple de satisfaisabilité des instances avec le ratio c/v fixé à α c. La caractéristique séparant est le coefficient de variation du ratio d occurrences positives et négatives de chaque variable. 3 Paramétrage de WalkSAT Dans cette section on discutera de l influence des paramètres sur la performance de WalkSAT et du paramétrage de WalkSAT, comme déjà motivé dans la Section 1.2. Puisque la validité de la méthode pour choisir un benchmark représentatif précédemment proposée n est pas complètement concluante, la mesure de performances dans cette section utilise toujours les instances 3SAT aléatoires, sauf indication contraire. Ce choix est aussi justifié par le fait que 3SAT est NPcomplet et que les algorithmes de recherche locale sont performants sur les instances 3SAT aléatoires. L influence du paramètre p de perturbation stochastique sur la performance de WalkSAT est étudiée théoriquement dans [22] et expérimentalement dans [12, 18]. L influence du paramètre M axiter est étudiée théoriquement dans [22], mais les études expérimentales sont rares. On essayera d étudier expérimentalement l influence de ces deux paramètres dans la suite. Le résultat peut servir comme indication pour obtenir un paramétrage optimal de WalkSAT, par exemple il peut indiquer une région plus restreinte contenant une combinaison de paramètres optimale. Il existe des études sur le paramétrage adaptatif de WalkSAT [12, 18]. Il existe aussi des méthodes génériques pour paramétrer un algorithme, comme par exemple Revac [15]. Dans [18] on constate que les combinaisons de paramètres adaptées aux résolutions d instances différentes sont différentes. On reprend ici une modification de l algorithme Revac pour constater ce même phénomène similaire sur la performance, ce qui est en accord avec le point de vue No Free Lunch Theorems de la communauté d optimisation [23], qui suggère qu il n existe pas de meilleur algorithme de recherche adapté pour toutes les instances. 15

16 3.1 Implémentation modifiée de WalkSAT Dans ce stage, on utilise une version modifiée de l implémentation de Selman et Kautz, disponible sur le site web de Kautz [19]. Afin de simplifier le code, les fonctionnalités superflues sont supprimées, le format d entrée-sortie est aussi modifié pour un meilleur enchaînement avec les autres programmes. WalkSAT est un algorithme stochastique, donc l utilisation de générateur de nombres aléatoires est nécessaire dans son implémentation. Dans l implémentation originale de Selman et Kautz, le générateur de nombres aléatoires utilisé est celui de la bibliothèque standard. Pour obtenir un nombre aléatoire entre 0 et n 1, on utilise rand()%n dans l implémentation. Cette méthode risque parfois une perte de qualité des nombres aléatoires générés. Dans la plus part des compilateurs, le générateur de nombres aléatoires fourni par la bibliothèque standard est un générateur congurentiel linéaire (linear congruential generator, LCG) [17]. Un LCG est défini par la relation de récurrence suivante. X n+1 = (ax n + c) mod m Ces paramètres a, c et m caractérisent un LCG. Le terme initial X 0, appelé seed (graine aléatoire), peut être initialisé par le programme. Dans glibc, les paramètres a = , c = 12345, m = 2 32 sont pris, et la sortie de rand() est composée des 31 bits de poids faible de X n courant [4]. Les paramètres et les bits utilisés peuvent varier entres des bibliothèques. Avec un LCG, l utilisation de rand()%n pourrait perdre en qualité des nombres aléatoires générés. Si n m, le résultat de rand()%n suivra la relation de récurrence Y n+1 = (ay n+1 + c) mod n, qui a une période d au plus n, qui peut être significativement plus petite que m. Dans le cas du LCG de glibc, ce problème a lieu quand n est une puissance de 2. Même si dans WalkSAT la valeur de n change souvent donc cet effet n est pas fortement présent, c est mieux d abandonner cette méthode pour générer des nombres aléatoires entre 0 et n 1. Une autre méthode de génération de nombres aléatoires entre 0 et n 1 est avec l expression (double)rand()/rand MAX*n, où RAND MAX-1 est la sortie maximale de rand(). Dans la modification de WalkSAT pour ce stage, cette méthode remplace la méthode originale pour assurer la qualité des nombres aléatoires générés. Cette substitution est aussi faite sur l outil makewff, générateur des instances k-sat aléatoires. Pour facilement contrôler le temps de calcul, une fonctionnalité de terminaison automatique avec une limite de temps de calcul donnée par la ligne de commande est ajoutée à WalkSAT. La limite par défaut est de 5 minutes. 3.2 Distribution du temps de calcul de WalkSAT S agissant d un algorithme stochastique, le temps de calcul de WalkSAT sur une instance varie entre les exécutions. Par conséquent, on mesure la performance en moyenne du le temps de calcul sur plusieurs exécutions. Pour avoir une idée sur le nombre d exécutions nécessaire pour bien mesurer la performance, il est préférable d envisager expérimentalement la distribution du temps de calcul. Ceci est étudié dans [13]. 16

17 Figure 6 Distribution du temps de calcul de WalkSAT(p = 0.5, Maxiter = ) sur 600 exécutions Une distribution du temps de calcul de WalkSAT mesurée expérimentalement est présentée dans la Figure 6. Cette distribution est un échantillonnage de 600 exécutions de WalkSAT avec pour paramètres p = 0.5 et Maxiter = sur une instance 3SAT aléatoire satisfaisable. On voit que le temps de calcul de WalkSAT peut énormément varier. Pour bien mesurer la performance, il faut faire tourner WalkSAT plusieurs fois. Cependant, des exécutions répétées demandent beaucoup de puissance de calcul. Il faut choisir le nombre de répétitions selon la nature de mesure pour balancer l exactitude et la puissance de calcul demandée. En général, le nombre de répétitions est au moins 20 dans ce stage, car on demande une relativement bonne exactitude de mesure pour étudier la performance de WalkSAT. 3.3 Evolution de la performance suivant les paramètres de WalkSAT On a des observations et des spéculations qualitatives sur la manière dont la performance peut évoluer selon les paramètres. Quand p 0, l algorithme est trop glouton, donc facilement piégé dans un minimum local ; quand p 1, il y a trop de bruit qui empêche l algorithme d atteindre à un minimum local. Quand Maxiter est petit, l algorithme n a pas assez de temps pour descendre vers un minimum ; quand M axiter est trop grand, l algorithme peut perdre du temps en se promenant dans un zone sans solution. Il existe aussi des analyses théoriques et expérimentales sur l évolution de la performance de WalkSAT. Par exemple dans [22], on suggère p = 0.5 ou p = 0.55 comme valeur optimale pour p sur les instances aléatoires étudiées dans [13]. La même recherche propose aussi une analyse raisonnablement spéculative qui suggère que le mécanisme de restart perdra rapidement son intérêt quand M axiter devient trop grand. On veut mesurer et visualiser la performance de WalkSAT en fonction des paramètres pour vérifier les analyses précédemment mentionnées. L instance choisie pour cette mesure est une instance 3SAT aléatoire satisfaisable de la Compétition SAT 2007 avec 650 variables et un ratio c/v critique. Etant donné 17

18 Figure 7 Evolution de performance de WalkSAT suivant les paramètres, échantillonné avec p de 0 à 1 à un pas 0.05, Maxiter de 1 à à un pas Le temps de calcul est mesuré en moyenne parmi 20 exécutions, avec une limite de 300 secondes. Cette mesure est faite sur le cluster du LINA. que cette mesure demande un calcul exhaustif extrêmement lourd, on n effectue pas ici une moyenne de la performance sur des instances différentes. Une limite de temps de calcul de 300 secondes est mise en place, le temps moyen de calcul mesuré est donc inférieur ou égal à la valeur réelle. Sur la Figure 7, on voit une structure qui rassemble à une vallée. On voit un zone de bonne performance avec des points autour de p = 0.45 et Maxiter > Dans cette zone, les points sont proche en performance. Autour de cette zone il y a des falaises abruptes. Le temps de calcul croît rapidement quand p s éloigne de la zone de bonne performance. Pour Maxiter, son effet sur la performance reste secondaire dans la zone de bonne performance. Cependant, la Figure 7 n est pas assez précise pour conclure. Il faut une mesure plus précise avec un échantillonnage plus fin, qui demande une puissance de calcul très grande. Pour réduire ce besoin, on constate dans le graphe précédent que les effets de p et de Maxiter ne sont pas a priori très corrélés, on étudiera donc l évolution de la performance séparément selon ces deux paramètres. L évolution de performance suivant le paramètre p est mesurée sur la même instance que précédemment, avec un échantillonnage plus fin et une mesure plus précise. Le résultat est présenté dans la Figure 8. On voit que la performance est meilleure autour de p = 0.5, mais elle reste relativement bonne dans la zone [0.35, 0.55], dans laquelle la moyenne du temps de calcul reste inférieure 18

19 Figure 8 Evolution de performance de WalkSAT suivant p, échantillonné avec p de 0 à 1 à un pas 0.01, avec Maxiter = Le temps de calcul est mesuré en moyenne parmi 100 exécutions, avec une limite de 300 secondes. On note que le temps de calcul est en échelle logarithmique. Cette mesure est faite sur le cluster du LERIA. au double du meilleur obtenu. En raison de la fluctuation sévère du temps de calcul mentionnée dans la Section 3.2, il est difficile de distinguer le meilleur p dans ce graphe. Pour l influence de Maxiter sur la performance de WalkSAT, la Figure 9 présente le résultat d une mesure. On voit bien une fluctuation significative, qui empêche une analyse précise. Cependant, il est clair que le temps de calcul descend très vite selon la croissance de Maxiter, puis se stabilise vers le point Maxiter = , après lequel la différence de temps de calcul entre les valeurs différentes de M axiter est petite devant la fluctuation. Cependant, car la valeur testé de Maxiter est limitée, le jugement de tendance de la performance de M axiter au delà de cette limite est encore spéculatif. En combinant ces deux résultats, on voit que, pour avoir une bonne performance, il suffit de choisir Maxiter assez grand, et p assez près de la valeur optimale. Cependant, il faut avoir conscience que la validité de ces résultats repose sur l instance analysée. De toute manière, ces résultats sont seulement indicatifs pour la suite. 3.4 Variation du nombre de flips par seconde de WalkSAT selon le paramètre de bruit p La performance de WalkSAT est parfois exprimée en nombre de flips, comme dans l article original de WalkSAT [20]. Le nombre de flips est une mesure robuste car il est indépendant de l implémentation de l algorithme et est invariant entre des machines différentes. Cependant, si le nombre de flips est utilisé dans le 19

20 Figure 9 Evolution de performance de WalkSAT suivant M axiter, échantillonné avec Maxiter de 1 à à un pas 100 et de à à un pas 1000, avec p = 0.5. Le temps de calcul est mesuré en moyennant parmi 100 exécutions, avec une limite de 300 secondes. On note que le temps de calcul est en échelle logarithmique. Cette mesure est faite sur le cluster du LINA. paramétrage de WalkSAT ou dans l étude concernant l influence des paramètres sur la performance, il faut que le nombre de flips par seconde soit indépendant des paramètres, ce qui n est pas garanti car il dépend de l implémentation. Dans l étude décrit dans la Section 3.3, une anomalie a été observée. Les combinaisons de paramètres avec p = 0 et p = 1 ont de mauvaises performances et dépassent toujours la limite de temps de calcul. Cependant, même si les exécutions prennent le même temps, le nombre de flips effectués est différent entre les différentes combinaisons de paramètres. Les combinaisons avec p proche de 0 ont un nombre de flips clairement plus élevé. La Figure 10 montre une courbe représentant cette variation avec l implémentation de WalkSAT par Selman et Kautz [19]. On voit qu il peut y avoir une différence de 20% pour des valeurs de p différentes. Cette variation n existe pas théoriquement dans l algorithme WalkSAT, elle vient donc de l implémentation, qui fait des optimisations pour mieux suivre la satisfaction des clauses. Ces optimisations comportent typiquement des mises à jour compliquées, qui peuvent introduire un biais en terme de performance. La procédure de choix de variable à flipper n est pas pertinent pour expliquer cette variation, car elle prend le même temps sur chaque exécution dans cette implémentation. En étudiant le code, on voit que le nombre d occurrences de la variable flippée est un facteur important pour la performance de la mise à jour. Pour analyser cette influence, la Figure 11 montre une courbe du nombre d occurrences moyenne de variables flippées en fonction de p. On voit que, pour les instances 3SAT aléatoires, les flips gloutons de WalkSAT préfèrent les variables d occurrences faibles. Il n y a pas encore d explication rigoureuse de ce phénomène, mais il est possible que ceci soit du au fait qu un flip de variable d occurrence faible tend à rendre moins de clauses fausses. C est seulement un argument qualitatif, l analyse théorique n existe pas encore. 20

Programmation linéaire

Programmation linéaire 1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit

Plus en détail

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

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2) Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter

Plus en détail

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications A. Optimisation sans contrainte.... Généralités.... Condition nécessaire et condition suffisante

Plus en détail

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique DOMAINE P3.C3.D1. Pratiquer une démarche scientifique et technologique, résoudre des

Plus en détail

Introduction au datamining

Introduction au datamining Introduction au datamining Patrick Naïm janvier 2005 Définition Définition Historique Mot utilisé au départ par les statisticiens Le mot indiquait une utilisation intensive des données conduisant à des

Plus en détail

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation

Plus en détail

Systèmes de transmission

Systèmes de transmission Systèmes de transmission Conception d une transmission série FABRE Maxime 2012 Introduction La transmission de données désigne le transport de quelque sorte d'information que ce soit, d'un endroit à un

Plus en détail

données en connaissance et en actions?

données en connaissance et en actions? 1 Partie 2 : Présentation de la plateforme SPSS Modeler : Comment transformer vos données en connaissance et en actions? SPSS Modeler : l atelier de data mining Large gamme de techniques d analyse (algorithmes)

Plus en détail

EXPLOITATIONS PEDAGOGIQUES DU TABLEUR EN STG

EXPLOITATIONS PEDAGOGIQUES DU TABLEUR EN STG Exploitations pédagogiques du tableur en STG Académie de Créteil 2006 1 EXPLOITATIONS PEDAGOGIQUES DU TABLEUR EN STG Commission inter-irem lycées techniques contact : dutarte@club-internet.fr La maquette

Plus en détail

Développement itératif, évolutif et agile

Développement itératif, évolutif et agile Document Développement itératif, évolutif et agile Auteur Nicoleta SERGI Version 1.0 Date de sortie 23/11/2007 1. Processus Unifié Développement itératif, évolutif et agile Contrairement au cycle de vie

Plus en détail

La classification automatique de données quantitatives

La classification automatique de données quantitatives La classification automatique de données quantitatives 1 Introduction Parmi les méthodes de statistique exploratoire multidimensionnelle, dont l objectif est d extraire d une masse de données des informations

Plus en détail

Transmission d informations sur le réseau électrique

Transmission d informations sur le réseau électrique Transmission d informations sur le réseau électrique Introduction Remarques Toutes les questions en italique devront être préparées par écrit avant la séance du TP. Les préparations seront ramassées en

Plus en détail

Exploitation et analyse des données appliquées aux techniques d enquête par sondage. Introduction.

Exploitation et analyse des données appliquées aux techniques d enquête par sondage. Introduction. Exploitation et analyse des données appliquées aux techniques d enquête par sondage. Introduction. Etudes et traitements statistiques des données : le cas illustratif de la démarche par sondage INTRODUCTION

Plus en détail

Qualité du logiciel: Méthodes de test

Qualité du logiciel: Méthodes de test Qualité du logiciel: Méthodes de test Matthieu Amiguet 2004 2005 Analyse statique de code Analyse statique de code Étudier le programme source sans exécution Généralement réalisée avant les tests d exécution

Plus en détail

Etude des propriétés empiriques du lasso par simulations

Etude des propriétés empiriques du lasso par simulations Etude des propriétés empiriques du lasso par simulations L objectif de ce TP est d étudier les propriétés empiriques du LASSO et de ses variantes à partir de données simulées. Un deuxième objectif est

Plus en détail

Cours de Master Recherche

Cours de Master Recherche Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction

Plus en détail

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

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

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1 Exemples de problèmes et d applications INF6953 Exemples de problèmes Sommaire Quelques domaines d application Quelques problèmes réels Allocation de fréquences dans les réseaux radio-mobiles Affectation

Plus en détail

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

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France. La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of

Plus en détail

Introduction au Data-Mining

Introduction au Data-Mining Introduction au Data-Mining Alain Rakotomamonjy - Gilles Gasso. INSA Rouen -Département ASI Laboratoire PSI Introduction au Data-Mining p. 1/25 Data-Mining : Kèkecé? Traduction : Fouille de données. Terme

Plus en détail

Raisonnement probabiliste

Raisonnement probabiliste Plan Raisonnement probabiliste IFT-17587 Concepts avancés pour systèmes intelligents Luc Lamontagne Réseaux bayésiens Inférence dans les réseaux bayésiens Inférence exacte Inférence approximative 1 2 Contexte

Plus en détail

LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING»

LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING» LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING» Gilbert Saporta Professeur de Statistique Appliquée Conservatoire National des Arts et Métiers Dans leur quasi totalité, les banques et organismes financiers

Plus en détail

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,

Plus en détail

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

Chapitre 2 Le problème de l unicité des solutions Université Joseph Fourier UE MAT 127 Mathématiques année 2011-2012 Chapitre 2 Le problème de l unicité des solutions Ce que nous verrons dans ce chapitre : un exemple d équation différentielle y = f(y)

Plus en détail

Introduction au Data-Mining

Introduction au Data-Mining Introduction au Data-Mining Gilles Gasso, Stéphane Canu INSA Rouen -Département ASI Laboratoire LITIS 8 septembre 205. Ce cours est librement inspiré du cours DM de Alain Rakotomamonjy Gilles Gasso, Stéphane

Plus en détail

Fonctions de plusieurs variables

Fonctions de plusieurs variables Module : Analyse 03 Chapitre 00 : Fonctions de plusieurs variables Généralités et Rappels des notions topologiques dans : Qu est- ce que?: Mathématiquement, n étant un entier non nul, on définit comme

Plus en détail

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

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

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

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

Agrégation des portefeuilles de contrats d assurance vie

Agrégation des portefeuilles de contrats d assurance vie Agrégation des portefeuilles de contrats d assurance vie Est-il optimal de regrouper les contrats en fonction de l âge, du genre, et de l ancienneté des assurés? Pierre-O. Goffard Université d été de l

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

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

Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN Table des matières. Introduction....3 Mesures et incertitudes en sciences physiques

Plus en détail

Analyse de la vidéo. Chapitre 4.1 - La modélisation pour le suivi d objet. 10 mars 2015. Chapitre 4.1 - La modélisation d objet 1 / 57

Analyse de la vidéo. Chapitre 4.1 - La modélisation pour le suivi d objet. 10 mars 2015. Chapitre 4.1 - La modélisation d objet 1 / 57 Analyse de la vidéo Chapitre 4.1 - La modélisation pour le suivi d objet 10 mars 2015 Chapitre 4.1 - La modélisation d objet 1 / 57 La représentation d objets Plan de la présentation 1 La représentation

Plus en détail

Table des matières. I Mise à niveau 11. Préface

Table des matières. I Mise à niveau 11. Préface Table des matières Préface v I Mise à niveau 11 1 Bases du calcul commercial 13 1.1 Alphabet grec...................................... 13 1.2 Symboles mathématiques............................... 14 1.3

Plus en détail

Rappels sur les suites - Algorithme

Rappels sur les suites - Algorithme DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................

Plus en détail

Synthèse «Le Plus Grand Produit»

Synthèse «Le Plus Grand Produit» Introduction et Objectifs Synthèse «Le Plus Grand Produit» Le document suivant est extrait d un ensemble de ressources plus vastes construites par un groupe de recherche INRP-IREM-IUFM-LEPS. La problématique

Plus en détail

Processus d Informatisation

Processus d Informatisation Processus d Informatisation Cheminement de la naissance d un projet jusqu à son terme, deux grandes étapes : Recherche ou étude de faisabilité (en amont) L utilisateur a une idée (plus ou moins) floue

Plus en détail

Figure 3.1- Lancement du Gambit

Figure 3.1- Lancement du Gambit 3.1. Introduction Le logiciel Gambit est un mailleur 2D/3D; pré-processeur qui permet de mailler des domaines de géométrie d un problème de CFD (Computational Fluid Dynamics).Il génère des fichiers*.msh

Plus en détail

Coup de Projecteur sur les Réseaux de Neurones

Coup de Projecteur sur les Réseaux de Neurones Coup de Projecteur sur les Réseaux de Neurones Les réseaux de neurones peuvent être utilisés pour des problèmes de prévision ou de classification. La représentation la plus populaire est le réseau multicouche

Plus en détail

$SSOLFDWLRQGXNULJHDJHSRXUOD FDOLEUDWLRQPRWHXU

$SSOLFDWLRQGXNULJHDJHSRXUOD FDOLEUDWLRQPRWHXU $SSOLFDWLRQGXNULJHDJHSRXUOD FDOLEUDWLRQPRWHXU Fabien FIGUERES fabien.figueres@mpsa.com 0RWVFOpV : Krigeage, plans d expériences space-filling, points de validations, calibration moteur. 5pVXPp Dans le

Plus en détail

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé Baccalauréat ES Pondichéry 7 avril 204 Corrigé EXERCICE 4 points Commun à tous les candidats. Proposition fausse. La tangente T, passant par les points A et B d abscisses distinctes, a pour coefficient

Plus en détail

Baccalauréat ES/L Amérique du Sud 21 novembre 2013

Baccalauréat ES/L Amérique du Sud 21 novembre 2013 Baccalauréat ES/L Amérique du Sud 21 novembre 2013 A. P. M. E. P. EXERCICE 1 Commun à tous les candidats 5 points Une entreprise informatique produit et vend des clés USB. La vente de ces clés est réalisée

Plus en détail

NOTE SUR LA MODELISATION DU RISQUE D INFLATION

NOTE SUR LA MODELISATION DU RISQUE D INFLATION NOTE SUR LA MODELISATION DU RISQUE D INFLATION 1/ RESUME DE L ANALYSE Cette étude a pour objectif de modéliser l écart entre deux indices d inflation afin d appréhender le risque à très long terme qui

Plus en détail

I. Polynômes de Tchebychev

I. Polynômes de Tchebychev Première épreuve CCP filière MP I. Polynômes de Tchebychev ( ) 1.a) Tout réel θ vérifie cos(nθ) = Re ((cos θ + i sin θ) n ) = Re Cn k (cos θ) n k i k (sin θ) k Or i k est réel quand k est pair et imaginaire

Plus en détail

Rédiger et administrer un questionnaire

Rédiger et administrer un questionnaire Rédiger et administrer un questionnaire Ce document constitue une adaptation, en traduction libre, de deux brochures distinctes : l une produite par l American Statistical Association (Designing a Questionnaire),

Plus en détail

Projet SINF2275 «Data mining and decision making» Projet classification et credit scoring

Projet SINF2275 «Data mining and decision making» Projet classification et credit scoring Projet SINF2275 «Data mining and decision making» Projet classification et credit scoring Année académique 2006-2007 Professeurs : Marco Saerens Adresse : Université catholique de Louvain Information Systems

Plus en détail

Déroulement d un projet en DATA MINING, préparation et analyse des données. Walid AYADI

Déroulement d un projet en DATA MINING, préparation et analyse des données. Walid AYADI 1 Déroulement d un projet en DATA MINING, préparation et analyse des données Walid AYADI 2 Les étapes d un projet Choix du sujet - Définition des objectifs Inventaire des données existantes Collecte, nettoyage

Plus en détail

Principe d un test statistique

Principe d un test statistique Biostatistiques Principe d un test statistique Professeur Jean-Luc BOSSON PCEM2 - Année universitaire 2012/2013 Faculté de Médecine de Grenoble (UJF) - Tous droits réservés. Objectifs pédagogiques Comprendre

Plus en détail

L apprentissage automatique

L apprentissage automatique L apprentissage automatique L apprentissage automatique L'apprentissage automatique fait référence au développement, à l analyse et à l implémentation de méthodes qui permettent à une machine d évoluer

Plus en détail

Pourquoi l apprentissage?

Pourquoi l apprentissage? Pourquoi l apprentissage? Les SE sont basés sur la possibilité d extraire la connaissance d un expert sous forme de règles. Dépend fortement de la capacité à extraire et formaliser ces connaissances. Apprentissage

Plus en détail

MCMC et approximations en champ moyen pour les modèles de Markov

MCMC et approximations en champ moyen pour les modèles de Markov MCMC et approximations en champ moyen pour les modèles de Markov Gersende FORT LTCI CNRS - TELECOM ParisTech En collaboration avec Florence FORBES (Projet MISTIS, INRIA Rhône-Alpes). Basé sur l article:

Plus en détail

L utilisation d un réseau de neurones pour optimiser la gestion d un firewall

L utilisation d un réseau de neurones pour optimiser la gestion d un firewall L utilisation d un réseau de neurones pour optimiser la gestion d un firewall Réza Assadi et Karim Khattar École Polytechnique de Montréal Le 1 mai 2002 Résumé Les réseaux de neurones sont utilisés dans

Plus en détail

PRIME D UNE OPTION D ACHAT OU DE VENTE

PRIME D UNE OPTION D ACHAT OU DE VENTE Université Paris VII - Agrégation de Mathématiques François Delarue) PRIME D UNE OPTION D ACHAT OU DE VENTE Ce texte vise à modéliser de façon simple l évolution d un actif financier à risque, et à introduire,

Plus en détail

CAPTEURS - CHAINES DE MESURES

CAPTEURS - CHAINES DE MESURES CAPTEURS - CHAINES DE MESURES Pierre BONNET Pierre Bonnet Master GSI - Capteurs Chaînes de Mesures 1 Plan du Cours Propriétés générales des capteurs Notion de mesure Notion de capteur: principes, classes,

Plus en détail

Data Mining. Vincent Augusto 2012-2013. École Nationale Supérieure des Mines de Saint-Étienne. Data Mining. V. Augusto.

Data Mining. Vincent Augusto 2012-2013. École Nationale Supérieure des Mines de Saint-Étienne. Data Mining. V. Augusto. des des Data Mining Vincent Augusto École Nationale Supérieure des Mines de Saint-Étienne 2012-2013 1/65 des des 1 2 des des 3 4 Post-traitement 5 représentation : 6 2/65 des des Définition générale Le

Plus en détail

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique La programmation linéaire : une introduction Qu est-ce qu un programme linéaire? Qu est-ce qu un programme linéaire? Exemples : allocation de ressources problème de recouvrement Hypothèses de la programmation

Plus en détail

Résolution de systèmes linéaires par des méthodes directes

Résolution de systèmes linéaires par des méthodes directes Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.

Plus en détail

L analyse d images regroupe plusieurs disciplines que l on classe en deux catégories :

L analyse d images regroupe plusieurs disciplines que l on classe en deux catégories : La vision nous permet de percevoir et d interpreter le monde qui nous entoure. La vision artificielle a pour but de reproduire certaines fonctionnalités de la vision humaine au travers de l analyse d images.

Plus en détail

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée. ANALYSE 5 points Exercice 1 : Léonie souhaite acheter un lecteur MP3. Le prix affiché (49 ) dépasse largement la somme dont elle dispose. Elle décide donc d économiser régulièrement. Elle a relevé qu elle

Plus en détail

La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA)

La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA) La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA) I. L'intérêt de la conversion de données, problèmes et définitions associés. I.1. Définitions:

Plus en détail

IFT3245. Simulation et modèles

IFT3245. Simulation et modèles IFT 3245 Simulation et modèles DIRO Université de Montréal Automne 2012 Tests statistiques L étude des propriétés théoriques d un générateur ne suffit; il estindispensable de recourir à des tests statistiques

Plus en détail

Item 169 : Évaluation thérapeutique et niveau de preuve

Item 169 : Évaluation thérapeutique et niveau de preuve Item 169 : Évaluation thérapeutique et niveau de preuve COFER, Collège Français des Enseignants en Rhumatologie Date de création du document 2010-2011 Table des matières ENC :...3 SPECIFIQUE :...3 I Différentes

Plus en détail

Chapitre 7. Récurrences

Chapitre 7. Récurrences Chapitre 7 Récurrences 333 Plan 1. Introduction 2. Applications 3. Classification des récurrences 4. Résolution de récurrences 5. Résumé et comparaisons Lectures conseillées : I MCS, chapitre 20. I Rosen,

Plus en détail

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite

Plus en détail

Organigramme / Algorigramme Dossier élève 1 SI

Organigramme / Algorigramme Dossier élève 1 SI Organigramme / Algorigramme Dossier élève 1 SI CI 10, I11 ; CI 11, I10 C24 Algorithmique 8 février 2009 (13:47) 1. Introduction Un organigramme (ou algorigramme, lorsqu il est plus particulièrement appliqué

Plus en détail

Formation PME Etude de marché

Formation PME Etude de marché Formation PME Etude de marché Fit for Business (PME)? Pour plus de détails sur les cycles de formation PME et sur les business-tools, aller sous www.banquecoop.ch/business L étude de marché ou étude marketing

Plus en détail

La qualité des services mobiles en France métropolitaine

La qualité des services mobiles en France métropolitaine Juin 2014 La qualité des services mobiles en France métropolitaine Synthèse de l enquête 2014 ISSN : 2258-3106 Synthèse des résultats de l enquête 2014 de l ARCEP sur la qualité des services mobiles Ce

Plus en détail

Théorie des Jeux Et ses Applications

Théorie des Jeux Et ses Applications Théorie des Jeux Et ses Applications De la Guerre Froide au Poker Clément Sire Laboratoire de Physique Théorique CNRS & Université Paul Sabatier www.lpt.ups-tlse.fr Quelques Définitions de la Théorie des

Plus en détail

1 Recherche en table par balayage

1 Recherche en table par balayage 1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément

Plus en détail

Représentation des Nombres

Représentation des Nombres Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...

Plus en détail

Analyse des coûts. 1 ère année DUT GEA, 2005/2006 Analyse des coûts

Analyse des coûts. 1 ère année DUT GEA, 2005/2006 Analyse des coûts Analyse des coûts Les techniques de calcul et d analyse des coûts portent le nom de comptabilité analytique ou comptabilité de gestion. Ces deux termes seront utilisés indifféremment dans ce cours. Contrairement

Plus en détail

COURS EULER: PROGRAMME DE LA PREMIÈRE ANNÉE

COURS EULER: PROGRAMME DE LA PREMIÈRE ANNÉE COURS EULER: PROGRAMME DE LA PREMIÈRE ANNÉE Le cours de la première année concerne les sujets de 9ème et 10ème années scolaires. Il y a bien sûr des différences puisque nous commençons par exemple par

Plus en détail

Arbres binaires de décision

Arbres binaires de décision 1 Arbres binaires de décision Résumé Arbres binaires de décision Méthodes de construction d arbres binaires de décision, modélisant une discrimination (classification trees) ou une régression (regression

Plus en détail

La nouvelle planification de l échantillonnage

La nouvelle planification de l échantillonnage La nouvelle planification de l échantillonnage Pierre-Arnaud Pendoli Division Sondages Plan de la présentation Rappel sur le Recensement de la population (RP) en continu Description de la base de sondage

Plus en détail

Utilisation d informations visuelles dynamiques en asservissement visuel Armel Crétual IRISA, projet TEMIS puis VISTA L asservissement visuel géométrique Principe : Réalisation d une tâche robotique par

Plus en détail

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com Intelligence Artificielle et Systèmes Multi-Agents Badr Benmammar bbm@badr-benmammar.com Plan La première partie : L intelligence artificielle (IA) Définition de l intelligence artificielle (IA) Domaines

Plus en détail

Annexe 6. Notions d ordonnancement.

Annexe 6. Notions d ordonnancement. Annexe 6. Notions d ordonnancement. APP3 Optimisation Combinatoire: problèmes sur-contraints et ordonnancement. Mines-Nantes, option GIPAD, 2011-2012. Sophie.Demassey@mines-nantes.fr Résumé Ce document

Plus en détail

INF6304 Interfaces Intelligentes

INF6304 Interfaces Intelligentes INF6304 Interfaces Intelligentes filtres collaboratifs 1/42 INF6304 Interfaces Intelligentes Systèmes de recommandations, Approches filtres collaboratifs Michel C. Desmarais Génie informatique et génie

Plus en détail

Enseignement secondaire technique

Enseignement secondaire technique Enseignement secondaire technique Régime technique Division technique générale Cycle moyen Informatique 11TG Nombre de leçons: 2.0 Nombre minimal de devoirs: - Langue véhiculaire: / Remarque générale:

Plus en détail

Relation entre deux variables : estimation de la corrélation linéaire

Relation entre deux variables : estimation de la corrélation linéaire CHAPITRE 3 Relation entre deux variables : estimation de la corrélation linéaire Parmi les analyses statistiques descriptives, l une d entre elles est particulièrement utilisée pour mettre en évidence

Plus en détail

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un

Plus en détail

Jade. Projet Intelligence Artificielle «Devine à quoi je pense»

Jade. Projet Intelligence Artificielle «Devine à quoi je pense» Jade Projet Intelligence Artificielle «Devine à quoi je pense» Réalisé par Djénéba Djikiné, Alexandre Bernard et Julien Lafont EPSI CSII2-2011 TABLE DES MATIÈRES 1. Analyse du besoin a. Cahier des charges

Plus en détail

CONSEILS POUR LA REDACTION DU RAPPORT DE RECHERCHE. Information importante : Ces conseils ne sont pas exhaustifs!

CONSEILS POUR LA REDACTION DU RAPPORT DE RECHERCHE. Information importante : Ces conseils ne sont pas exhaustifs! CONSEILS POUR LA REDACTION DU RAPPORT DE RECHERCHE Information importante : Ces conseils ne sont pas exhaustifs! Conseils généraux : Entre 25 et 60 pages (hormis références, annexes, résumé) Format d un

Plus en détail

Principes de mathématiques 12 SÉRIE DE PROBLÈMES. Septembre 2001. Student Assessment and Program Evaluation Branch

Principes de mathématiques 12 SÉRIE DE PROBLÈMES. Septembre 2001. Student Assessment and Program Evaluation Branch Principes de mathématiques 12 SÉRIE DE PROBLÈMES Septembre 2001 Student Assessment and Program Evaluation Branch REMERCIEMENTS Le Ministère de l Éducation tient à remercier chaleureusement les professionnels

Plus en détail

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique Objectifs Clustering On ne sait pas ce qu on veut trouver : on laisse l algorithme nous proposer un modèle. On pense qu il existe des similarités entre les exemples. Qui se ressemble s assemble p. /55

Plus en détail

Etude d un cas industriel : Optimisation de la modélisation de paramètre de production

Etude d un cas industriel : Optimisation de la modélisation de paramètre de production Revue des Sciences et de la Technologie RST- Volume 4 N 1 /janvier 2013 Etude d un cas industriel : Optimisation de la modélisation de paramètre de production A.F. Bernate Lara 1, F. Entzmann 2, F. Yalaoui

Plus en détail

Introduction à l étude des Corps Finis

Introduction à l étude des Corps Finis Introduction à l étude des Corps Finis Robert Rolland (Résumé) 1 Introduction La structure de corps fini intervient dans divers domaines des mathématiques, en particulier dans la théorie de Galois sur

Plus en détail

1 Complément sur la projection du nuage des individus

1 Complément sur la projection du nuage des individus TP 0 : Analyse en composantes principales (II) Le but de ce TP est d approfondir nos connaissances concernant l analyse en composantes principales (ACP). Pour cela, on reprend les notations du précédent

Plus en détail

Programmation linéaire

Programmation linéaire Programmation linéaire DIDIER MAQUIN Ecole Nationale Supérieure d Electricité et de Mécanique Institut National Polytechnique de Lorraine Mathématiques discrètes cours de 2ème année Programmation linéaire

Plus en détail

FONCTION DE DEMANDE : REVENU ET PRIX

FONCTION DE DEMANDE : REVENU ET PRIX FONCTION DE DEMANDE : REVENU ET PRIX 1. L effet d une variation du revenu. Les lois d Engel a. Conditions du raisonnement : prix et goûts inchangés, variation du revenu (statique comparative) b. Partie

Plus en détail

Texte Agrégation limitée par diffusion interne

Texte Agrégation limitée par diffusion interne Page n 1. Texte Agrégation limitée par diffusion interne 1 Le phénomène observé Un fût de déchets radioactifs est enterré secrètement dans le Cantal. Au bout de quelques années, il devient poreux et laisse

Plus en détail

Biostatistiques Biologie- Vétérinaire FUNDP Eric Depiereux, Benoît DeHertogh, Grégoire Vincke

Biostatistiques Biologie- Vétérinaire FUNDP Eric Depiereux, Benoît DeHertogh, Grégoire Vincke www.fundp.ac.be/biostats Module 140 140 ANOVA A UN CRITERE DE CLASSIFICATION FIXE...2 140.1 UTILITE...2 140.2 COMPARAISON DE VARIANCES...2 140.2.1 Calcul de la variance...2 140.2.2 Distributions de référence...3

Plus en détail

LES DECIMALES DE π BERNARD EGGER

LES DECIMALES DE π BERNARD EGGER LES DECIMALES DE π BERNARD EGGER La génération de suites de nombres pseudo aléatoires est un enjeu essentiel pour la simulation. Si comme le dit B Ycard dans le cours écrit pour le logiciel SEL, «Paradoxalement,

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université

Plus en détail

Logiciel XLSTAT version 7.0. 40 rue Damrémont 75018 PARIS

Logiciel XLSTAT version 7.0. 40 rue Damrémont 75018 PARIS Logiciel XLSTAT version 7.0 Contact : Addinsoft 40 rue Damrémont 75018 PARIS 2005-2006 Plan Présentation générale du logiciel Statistiques descriptives Histogramme Discrétisation Tableau de contingence

Plus en détail

CHAPITRE 5. Stratégies Mixtes

CHAPITRE 5. Stratégies Mixtes CHAPITRE 5 Stratégies Mixtes Un des problèmes inhérents au concept d équilibre de Nash en stratégies pures est que pour certains jeux, de tels équilibres n existent pas. P.ex.le jeu de Pierre, Papier,

Plus en détail

Transmission de données. A) Principaux éléments intervenant dans la transmission

Transmission de données. A) Principaux éléments intervenant dans la transmission Page 1 / 7 A) Principaux éléments intervenant dans la transmission A.1 Equipement voisins Ordinateur ou terminal Ordinateur ou terminal Canal de transmission ETTD ETTD ETTD : Equipement Terminal de Traitement

Plus en détail

Algorithme. Table des matières

Algorithme. Table des matières 1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............

Plus en détail

Le Data Mining au service du Scoring ou notation statistique des emprunteurs!

Le Data Mining au service du Scoring ou notation statistique des emprunteurs! France Le Data Mining au service du Scoring ou notation statistique des emprunteurs! Comme le rappelle la CNIL dans sa délibération n 88-083 du 5 Juillet 1988 portant adoption d une recommandation relative

Plus en détail

Structure typique d un protocole de recherche. Préparé par Johanne Desrosiers dans le cadre d une formation au réseau FORMSAV

Structure typique d un protocole de recherche. Préparé par Johanne Desrosiers dans le cadre d une formation au réseau FORMSAV Structure typique d un protocole de recherche Préparé par Johanne Desrosiers dans le cadre d une formation au réseau FORMSAV Introduction Planification et développement d une proposition de recherche Étape

Plus en détail