UNIVERSITE PARIS VII - DENIS DIDEROT U.F.R. D'INFORMATIQUE THESE

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

Download "UNIVERSITE PARIS VII - DENIS DIDEROT U.F.R. D'INFORMATIQUE THESE"

Transcription

1 UNIVERSITE PARIS VII - DENIS DIDEROT U.F.R. D'INFORMATIQUE Année 1998 N attribué par la bibliothèque _ THESE pour obtenir le grade de DOCTEUR DE L'UNIVERSITE PARIS VII Discipline : Informatique présentée et soutenue publiquement par François Laburthe le Titre : Contraintes et Algorithmes en Optimisation Combinatoire Directeur de thèse : Yves Caseau M. Nivat : président JURY

2 J.-L. Lambert : rapporteur C. Roucairol : rapporteur Y. Caseau : directeur de thèse F. Fages : examinateur E. Jacquet Lagrèze : examinateur P. Van Hentenryck : examinateur 2

3 3

4 Table des matières 0. Introduction Sujet...Erreur! Signet non défini. 0.2 Motivations...Erreur! Signet non défini. 0.3 Méthode...Erreur! Signet non défini. 0.4 Historique...Erreur! Signet non défini. 0.5 Plan de l étude...erreur! Signet non défini. 1. Chapitre 1. Formalismes pour l optimisation combinatoire...erreur! Signet non défini. 1.1 Programmation linéaire...erreur! Signet non défini. 1.2 Programmation par contraintes...erreur! Signet non défini. 1.3 Recherche arborescente globale...erreur! Signet non défini. 1.4 Algorithmes approchés, recherche locale...erreur! Signet non défini. 1.5 Un exemple : la couverture d ensembles...erreur! Signet non défini. 2. Chapitre 2. Couplages et allocation...erreur! Signet non défini. 2.1 Les problèmes de couplages bipartis...erreur! Signet non défini. 2.2 Couplages bipartis et flots...erreur! Signet non défini. 2.3 Modélisation linéaire, méthode Hongroise...Erreur! Signet non défini. 2.4 Programmation par contraintes...erreur! Signet non défini. 2.5 Variations...Erreur! Signet non défini. 2.6 Bilan...Erreur! Signet non défini. 3. Chapitre 3. Ordonnancement disjonctif...erreur! Signet non défini. 3.1 Ordonnancement...Erreur! Signet non défini. 3.2 Contraintes...Erreur! Signet non défini. 3.3 Techniques de Recherche Opérationnelle...Erreur! Signet non défini. 3.4 Solution heuristique et optimisation locale...erreur! Signet non défini. 3.5 Bilan...Erreur! Signet non défini. 4. Chapitre 4. Le voyageur de commerce (TSP)...Erreur! Signet non défini. 4.1 Circuits Hamiltoniens...Erreur! Signet non défini. 4.2 Algorithmes de résolution exacte...erreur! Signet non défini. 4

5 4.3 Contraintes...Erreur! Signet non défini. 4.4 Solutions heuristiques...erreur! Signet non défini. 4.5 Optimisation locale...erreur! Signet non défini. 4.6 Bilan...Erreur! Signet non défini. 5. Chapitre 5. Problèmes de grilles d emplois du temps...erreur! Signet non défini. 5.1 Introduction, typologie...erreur! Signet non défini. 5.2 Un problème académique : l'allocation matricielle...erreur! Signet non défini. 5.3 Contraintes redondantes...erreur! Signet non défini. 5.4 Application à des problèmes réels d'emplois du temps....erreur! Signet non défini. 5.5 Conclusion...Erreur! Signet non défini. 6. Chapitre 6. Ordonnancement cumulatif...erreur! Signet non défini. 6.1 Ordonnancement et ressources...erreur! Signet non défini. 6.2 Techniques de propagation de contraintes...erreur! Signet non défini. 6.3 Stratégies d énumération...erreur! Signet non défini. 6.4 Expériences et résultats...erreur! Signet non défini. 6.5 Autres techniques...erreur! Signet non défini. 6.6 Bilan...Erreur! Signet non défini. 7. Chapitre 7. Problèmes de tournées...erreur! Signet non défini. 7.1 Tournées de véhicules...erreur! Signet non défini. 7.2 Algorithmes de résolution...erreur! Signet non défini. 7.3 Insertion et optimisation locale incrémentale...erreur! Signet non défini. 7.4 Cas du VRPTW...Erreur! Signet non défini. 7.5 Application à des applications réelles de tournées...erreur! Signet non défini. 7.6 Bilan...Erreur! Signet non défini. 8. Chapitre 8. Bilan...Erreur! Signet non défini. 8.1 Cartographie de la résolution de problèmes combinatoires...erreur! Signet non défini. 8.2 P.P.C. et Optimisation Combinatoire...Erreur! Signet non défini. 8.3 Algorithmes hybrides...erreur! Signet non défini. 8.4 Perspectives...Erreur! Signet non défini. 9. Chapitre 9. Un langage pour les algorithmes hybrides : programme de recherches....erreur! Signet non défini. 5

6 9.1 Un langage de modélisation et de simulation...erreur! Signet non défini. 9.2 Structures de données algorithmiques additionnelles...erreur! Signet non défini. 9.3 Description déclarative de comportements...erreur! Signet non défini. 9.4 contrôle...erreur! Signet non défini. 9.5 Environnement...Erreur! Signet non défini. 9.6 Conclusion...Erreur! Signet non défini. 10. Chapitre 10. Définition du langage SaLSA...Erreur! Signet non défini Pourquoi et comment décrire le flot de contrôle...erreur! Signet non défini Décisions locales...erreur! Signet non défini Composition des choix...erreur! Signet non défini Grammaire du langage SaLSA...Erreur! Signet non défini. 11. Chapitre 11. Utilisation de SaLSA pour résoudre des problèmes combinatoires...erreur! Signet non défini Stratégies de recherche globale pour un résolveur de contraintes sur les domaines finis....erreur! Signet non défini GSAT...Erreur! Signet non défini Algorithmes d insertion pour des problèmes de tournées...erreur! Signet non défini Heuristiques en ordonnancement....erreur! Signet non défini Méthodes complètes en ordonnancement et shaving...erreur! Signet non défini Optimisation locale et solutions partielles : «Shuffling»...Erreur! Signet non défini Jeux d échecs...erreur! Signet non défini Recherche de bonnes cliques maximales en ordonnancement cumulatif...erreur! Signet non défini La procédure d optimisation locale de Lin & Kernighan pour le TSPErreur! Signet non défini. 12. Chapitre 12. Sémantique opérationnelle et implémentation...erreur! Signet non défini Préliminaires et notations...erreur! Signet non défini Transitions du calcul de processus...erreur! Signet non défini Implémentation du générateur de code...erreur! Signet non défini. 13. Conclusion...Erreur! Signet non défini. 14. Bibliographie...Erreur! Signet non défini. 6

7 7

8 Remerciements Je remercie Maurice Nivat de me faire l'honneur de présider ce jury, témoignant ici de son intérêt pour mes travaux. Je souhaite remercier très particulièrement Yves Caseau pour le plaisir que j'ai eu à travailler avec lui, pour sa vision scientifique et ses conseils avisés, pour sa direction efficace et confiante et enfin, pour l'attention et la disponibilité dont il a fait preuve. Je remercie François Fages et Guy Cousineau de m'avoir chaleureusement accueilli au LIENS. Mon intégration à l'équipe Langages Logiques, Contraintes et Optimisation m'a permis d'avoir un cadre bien agréable pour mener cette thèse, et la collaboration amicale avec l'équipe a été fructueuse. Je remercie Jean Jourdan et Béatrice Bacconnet de m'avoir accueilli au Laboratoire Central de Recherches de Thomson-CSF. J'ai beaucoup apprécié notre collaboration et la confiance qu'ils m'ont accordée en décidant d'utiliser Claire, Eclair et SaLSA. Je remercie particulièrement Éric Jacopin, Jean-Luc Lambert et Catherine Roucairol qui ont relu ce mémoire avec une minutie bienveillante, pour leurs suggestions pertinentes. Je remercie Krysztof Apt et Monique Laurent pour leur invitation à venir présenter mes travaux aux CWI. L'intérêt qu'ils leur ont porté est une reconnaissance chaleureuse. Je remercie Eric Jacquet-Lagrèze et Pascal Van Hentenryck d'avoir accepté de prendre de leur temps pour participer à ce jury. Je remercie enfin tous ceux avec lesquels j'ai eu le plaisir de reflechir au tableau ou devant une feuille blanche. Ces moments d'échange comptent parmi les meilleurs souvenirs de ces quatre années. Pour ces passionantes discussions, pour le plaisir de chercher et argumenter ensemble, je souhaiterais remercier Philippe Baptiste, Hervé Chibois, Simon De Givry, Akim D le, Sébastien Desreux, Francois Fages, Éric Jacopin, Tibor Kökény, Claude Le Pape, Domitile Lourdeaux, Laurent Perron, Pierre Savéant, Vincent Schächter et Mark Wallace. Enfin, merci à celui, qui m'a montré, il y a maintenant longtemps, en faisant dessiner une maison à une petite tortue, que l'informatique, c'est cool. 8

9 9

10 0. Introduction 0.1 Sujet Le but de cette thèse est d étudier les apports mutuels de la programmation par contraintes et de la recherche opérationnelle à résolution de problèmes d optimisation combinatoire réels. Cet objectif se décline selon deux axes : d une part trouver les techniques algorithmiques pertinentes pour la résolution de tels problèmes et en particulier celles relatives à la programmation par contraintes, et d autre part, les mettre en oeuvre dans un environnement informatique. La première direction de recherche veut répondre à la question «Que faut-il faire pour résoudre de tels problèmes combinatoires?», alors que la seconde vise la question «Comment faut-il le faire?». 0.2 Motivations Quand ce travail de recherche a commencé, les réponses à ces questions étaient mal connues, pressenties ou dispersées. Un certain nombre de techniques algorithmiques (i.e. la programmation linéaire, la programmation par contraintes, les algorithmes de graphes, la recherche tabou, etc.) étaient étudiées dans des communautés séparées. Chacune avait obtenu de bons résultats ou des résultats prometteurs sur certains problèmes. En particulier, la programmation par contraintes effectuait ses premières percées en milieu industriel, provoquant des réactions contrastées : réactions enthousiastes devant la flexibilité de son formalisme qui permet de décrire des problèmes fort complexes, prenant en compte de nombreux aspects spécifiques à une application; réactions sceptiques devant la piètre qualité des résultats obtenus par rapport à d autres techniques algorithmiques, lors de mises en œuvre naïves. Face à l'attrait de cette nouvelle technique qu'était la programmation par contraintes, la littérature était de peu d'aide à celui qui voulait résoudre un problème d'optimisation particulier. En effet, peu de comparaisons systématiques entre ces techniques algorithmiques étaient disponibles, et si un certain nombre de chercheurs savaient de manière expérimentale, pour un problème donné, quelles étaient les techniques pertinentes à utiliser, cette connaissance dispersée n'était pas accessible dans les publications. Enfin, une fois identifiés les algorithmes pertinents à la résolution du problème, l'expérimentation informatique pouvait s'avérer problématique. En effet, chacune des techniques étant décrite dans son formalisme propre, l'utilisateur, à moins d'investir beaucoup de temps en programmation, en était généralement réduit à l'utilisation d'un outil spécifique (système CLP, résolveur linéaire, bibliothèque d'algorithmes de graphe). Ces outils relativement rigides limitaient le brassage des algorithmes et l'expérimentation de combinaisons des méthodes de résolution. Cette situation nous a incité à proposer à la communauté une évaluation de la programmation par contraintes face aux autres grandes techniques algorithmiques, sur un ensemble de problèmes d'optimisation classiques, pour mettre à la disposition de celui qui envisage la résolution d'un problème similaire, une synthèse des techniques appropriées, directement utilisable. De plus, nous avons voulu apporter notre contribution aux problèmes de génie logiciel des algorithmes hybrides d'optimisation en proposant un langage pour la programmation d'algorithmes de recherche locale et globale. 0.3 Méthode La méthode suivie a consisté à répondre d'abord à la première question avant d'aborder la seconde. En effet, de manière pragmatique, nous voulions d'abord délimiter les algorithmes avant de proposer un langage pour les exprimer. Pour répondre à la première question, nous avons décidé de faire un tour d horizon des problèmes d optimisation combinatoire. On s est limité à un ensemble de problèmes qui semblaient revenir de 9

11 manière récurrente dans le contexte d applications réelles, comme l'ordonnancement, l'affectation de ressources, l'optimisation de parcours et les problèmes de grilles d'emplois du temps. Pour chacun de ces problèmes, nous avons voulu comparer les techniques algorithmiques classiques (du moins, celles programmables en un temps raisonnable), avec des techniques de programmation par contraintes, d un double point de vue : = celui de l efficacité. On veut comparer des algorithmes suivant leur rapidité et suivant la taille maximale des problèmes résolus. = celui de la robustesse. On veut évaluer, pour chaque algorithme, la capacité à résoudre des problèmes voisins, c est à dire des problèmes dont on a légèrement changé les spécifications de départ, en ajoutant certaines contraintes additionnelles spécifiques, ou en introduisant des dépendances nouvelles entre certaines parties du problème. Le premier objectif était d obtenir une cartographie pour ces problèmes d optimisation combinatoire qui mette en relation des zones d utilisation (taille du problème et présence ou non de contraintes additionnelles) avec des techniques algorithmiques particulières. En particulier, on cherche à évaluer les limites d une résolution en programmation par contraintes (et le cas échéant, à les repousser). Notons que ce premier objectif ne constitue pas exactement une évaluation de la programmation par contraintes pour la résolution de problèmes combinatoires réels. Notre méthode a introduit un biais en délaissant les problèmes vraiment difficiles à modéliser (souvent trop spécifiques pour être présenter un intérêt général) et en se concentrant sur de vrais problèmes combinatoires (sur lesquels on peut mener des comparaisons de manière rigoureuse). En pratique, il semble qu'il existe de nombreux problèmes où la difficulté réside bien plus dans la modélisation que dans la résolution, et qu'une approche naïve par contraintes parvient à résoudre de manière satisfaisante (quand ces problèmes sont soit petits, soit denses en solutions). Mais une telle affirmation étant difficile à étayer de manière scientifique, nous avons laissé de telles situations en dehors du champ d'expériences de ce travail. Le second objectif - fournir un environnement pour le développement des algorithmes pertinents - a été abordé au tout début de ce travail, puis plus tard dans la thèse. La première étape a consisté à proposer un langage de programmation simple et élégant, CLAIRE [CL 96a], dans lequel nous avons programmé tous les algorithmes décrits dans ce travail. Cette expérience de programmation ainsi que l'interaction avec d'autres utilisateurs de CLAIRE nous a permis d'aborder à nouveau la question du langage plus tard dans la thèse. Parmi les nombreuses possibilités ouvertes, nous aurions pu, par exemple, proposer une extension du cadre CLP, ou un système d'optimisation intégrant un certain nombre d'objets prédéfinis (des tâches, des ressources, des grilles, des réseaux, etc. ), ou encore un système avec des contraintes sur les relations dans la lignée d'alice [Lau 78]. En 1996, nous ne nous sommes pas senti assez mûrs pour franchir ce pas, et nous n'avons pas voulu proposer un système fermé proposant un ensemble non-extensible par l'utilisateur de mécanismes d'optimisation. Nous avons préféré nous concentrer sur une difficulté : l'expression du contrôle pour certains algorithmes hybrides. Nous avons proposé un langage, SaLSA, qui permet de décrire de manière élégante et très synthétique des algorithmes hybrides complexes et nous avons implémenté un compilateur de SaLSA vers CLAIRE. Cette approche de génération de code (ou compilation) a l'intérêt de pouvoir s'appliquer à n'importe quel langage cible de programmation et de ne pas se limiter à un système particulier. Pour proposer le langage SaLSA, notre démarche a été pragmatique et a commencé par réunir un cahier des charges rassemblant tous les algorithmes complexes de recherche arborescente que nous avions rencontrés. Le langage à proposer devait ainsi permettre de les exprimer tous de manière simple. Après avoir proposé et implémenté la première version de SaLSA, nous nous sommes rendu compte que les opérations de base de SaLSA étaient les mêmes que celles d'un langage pour l'optimisation locale, 10

12 LOCALIZER [MVH 97]. Nous avons alors choisi d'étendre SaLSA et d'en proposer une version plus générale permettant d'exprimer aussi bien les algorithmes de recherche locale que globale. 0.4 Historique Les deux questions de la thèse s étaient posées de manière naturelle à l équipe d Yves Caseau. En effet, elle avait développé le système LAURE [Ca 91a] à Bellcore, qui proposait, au-dessus d un modèle objet issu de la représentation de connaissances, toute une série d outils pour faire de la résolution de problèmes (règles de production, règles déductives, contraintes, etc.). Ce système avait été utilisé pour réaliser des prototypes d applications industrielles en optimisation et avait, entres autres, remporté de beaux succès en enrichissant le cadre de la programmation par contraintes, soit par l utilisation d algorithmes de propagation spécialisés (en emplois du temps [CGL 92] ou en ordonnancement [CL 94]), soit par l utilisation de la propagation par contraintes dans le cadre d algorithmes plus généraux (application de LAURE à la gestion des tâches de maintenance sur un réseau téléphonique). Au cours de son utilisation, nous nous sommes rendu compte que LAURE était trop complexe et trop difficile à maîtriser pour un nouvel utilisateur. Dans les faits, une partie des technologies avancées offertes par le système n était que rarement utilisée. Le succès des applications fit apparaître un autre problème, lié à l explication d un programme à un utilisateur novice : à mesure que l'on programmait des algorithmes de plus en plus complexes, le code devenait de plus en plus difficile à comprendre, et Laure ne pouvait plus être utilisé à la fois comme langage de spécification et comme langage de programmation, comme cela avait été le cas lors d utilisations antérieures plus simples. Nous avons donc réfléchi en 1993 à la conception d un langage de spécifications formelles orientées-objets, CECILE [CL 93], qui permettrait de documenter le code LAURE. Faute de moyens, ce langage n a jamais été supporté, mais nous en avons gardé un goût fort pour les descriptions élégantes en pseudo-code de programmes complexes. A commencé alors le projet d un nouveau langage, CLAIRE [CL 96a], qui mettrait à la disposition de l utilisateur, les technologies de LAURE qui s étaient avérées utiles et dont le code serait aussi élégant et naturel que celui de CECILE. Avec un petit groupe d intéressés, nous avons passé l année à définir le langage dont Yves Caseau a réalisé la première implémentation à l été 94. A partir de ce moment, CLAIRE a été notre environnement informatique d'expérimentation. Le travail exploratoire de cartographie des méthodes de résolution par contraintes pour les problèmes d'optimisation combinatoire a été mené conjointement avec Yves Caseau, dont le cours Contraintes et Algorithmes au Magistère de l'école Normale Supérieure (MMFAI) aux printemps 95, 96 et 97 a joué le rôle d'aiguillon (il fallait pouvoir présenter dans un cours de trois heures une synthèse des techniques algorithmiques efficaces sur un problème combinatoire donné). Ce cours a aussi permis de mettre à l'épreuve le langage CLAIRE : nous avons systématiquement utilisé CLAIRE comme langage de pseudocode pour la description d'algorithmes d'optimisation qui ont pu être compris par des élèves sans formation préalable au langage. Le deuxième volet de la thèse a été abordé à partir de Après presque deux ans d'utilisation de CLAIRE et d'expérimentation en optimisation combinatoire, et d'interaction avec d'autres utilisateurs de Claire, nous pouvions commencer à considérer le pas suivant vers le système idéal de résolution de ces problèmes. Cette thématique a été explorée en liaison avec le projet ESPRIT CHIC-2 (consacré à la programmation d'algorithmes hybrides en optimisation combinatoire) auquel nous étions associés. De plus, j'ai fait ma troisième année de thèse au Laboratoire Central de Recherches de Thomson/CSF comme scientifique du contingent, où l'on m'a demandé de réfléchir à la résolution de problèmes combinatoires en temps réel avec des contraintes. Ce cadre d'utilisation rejoignait exactement nos préoccupations, puisqu'il passait par le développement d'algorithmes hybrides. Le travail lié à SaLSA a donc permis de collaborer avec de nombreuses personnes, dans le cadre du projet CHIC-2, au Laboratoire 11

13 Central de Recherches de Thomson/CSF et dans le cercle des utilisateurs de Claire (à l'ens, à Bouygues et ailleurs). Aujourd'hui, CLAIRE est utilisé dans des applications industrielles d'optimisation combinatoire à Bouygues et à Thomson-CSF et comme outil d'expérimentation dans de nombreux laboratoires universitaires (ENSAM, LIRMM, CMU,...) ainsi qu'à EDF, Lucent technologies, Axlog ingénierie, etc. 0.5 Plan de l étude Cette thèse se décompose en deux parties répondant aux deux objectifs visés : = la partie A est consacrée à l évaluation des techniques de programmation par contraintes par rapport aux techniques d algorithmique classique sur un certain nombre de problèmes d'optimisation discrète. = la partie B est consacrée à l étude de la description de tels algorithmes du point de vue du langage ou du système de programmation. On décrit maintenant, pour chaque chapitre, les principaux points abordés. Après cette introduction, le premier chapitre brosse un panorama des techniques algorithmiques disponibles pour l'optimisation combinatoire. On présente ainsi, rapidement, les principes de la programmation linéaire et de la programmation par contraintes. On montre comment ces deux techniques peuvent être utilisées dans le cadre d'algorithmes de recherche globale pour résoudre de manière exacte des problèmes d'optimisation. On présente ensuite des familles d'algorithmes approchés d optimisation, notamment les algorithmes gloutons et les méthodes de recherche locale. Enfin, on conclut en présentant la résolution d'un exemple simple, la couverture d'ensembles, en programmation linéaire et en programmation par contraintes. Partie A La partie A qui comporte sept chapitres (deux à huit), s'intéresse à un ensemble de problèmes d'optimisation. Chaque chapitre est consacré à un problème donné. Pour chacun d'entre eux, on s'efforce de présenter le problème, de motiver son étude et d'envisager les principaux algorithmes pour le résoudre. Dans ce cadre, on présente l'approche habituelle en programmation par contraintes, que l'on s'efforce d'améliorer, pour permettre une évaluation de la programmation par contraintes par rapport aux autres techniques algorithmiques sur le problème en question. Le chapitre deux présente le problème de l allocation de ressources. On commence par en décrire une formulation comme un problème de couplage maximal dans un graphe biparti et on présente dans ce cadre deux algorithmes de Recherche Opérationnelle, un algorithme de flot et un algorithme linéaire primal-dual, la méthode Hongroise. Après avoir décrit une formulation naïve par contraintes, on propose des améliorations du schéma de propagation qui permettent de résoudre des problèmes de taille moyenne (jusqu'à 2 40 noeuds), alors que la méthode Hongroise permet de résoudre des grands problèmes. On considère ensuite deux extensions du problème d'allocation pour lesquelles, contrairement au cas du problème pur, la programmation par contraintes devient compétitive avec la méthode Hongroise. On propose en conclusion l'ajout d'une nouvelle contrainte globale aux systèmes de P.P.C., dédiée aux problèmes d'affectation bijective et implémentée grâce à la méthode Hongroise. Le chapitre trois présente le problème de l ordonnancement disjonctif. Après avoir décrit une formulation linéaire, on présente un cadre complet pour sa résolution en programmation par contraintes. Celui-ci comporte des règles de propagation, basées sur l'analyse d' intervalles de tâches et un schéma de branchement, et permet une résolution exacte très compétitive des problèmes, grâce à laquelle nous avons résolu des problèmes ouverts. On aborde ensuite la famille des algorithmes approchés et on montre 12

14 comment le cadre précédent de propagation de contraintes peut être réutilisé pour proposer une heuristique gloutonne ainsi qu'une procédure d'optimisation locale très efficaces. On conclut que la propagation de contraintes est une technique essentielle à la résolution de problèmes d'ordonnancement disjonctif, tant pour leur résolution exacte que leur résolution approchée. Le chapitre quatre présente le problème du voyageur de commerce. Après avoir décrit le modèle linéaire et présenté les méthodes de résolution associées, pour le cas d'un distance symmétrique ou d'une distance asymétrique, on propose un algorithme de propagation de contraintes basé sur une formulation issue des couplages bipartis. On décrit la propagation de la contrainte d'élimination de sous-cycles, la propagation croisée avec un modèle temporel (en présence d'éventuelles fenêtres de temps). Pour les petits problèmes (moins de 15 nœuds), la PPC est ainsi un des algorithmes génériques (s'appliquant en particulier aussi bien aux distances symétriques qu'aux distances asymétriques) les plus rapides actuellement disponibles. Enfin, on complète le schéma de propagation par plusieurs techniques de bornes inférieures, basées sur des relaxations (couplage Hongrois, arbre couvrant de poids minimum et relaxation Lagrangienne à la Held & Karp). L'ensemble de ces techniques permet de résoudre, de manière exacte, des problèmes jusqu'à 70 nœuds. Pour les problèmes plus grands, on passe en revue les heuristiques gloutonnes (par insertion) ainsi que les méthodes d'optimisation locale. Le chapitre cinq s'intéresse à la résolution de problèmes d'emplois du temps. On commence par délimiter deux formulations de problèmes différents, l'allocation matricielle et la gestion de personnel. On décrit le lien entre le problème de l'allocation matricielle et d'autres problèmes combinatoires comme les multiflots, l'ordonnancement ou la reconstruction de polyominos. On présente ensuite une modélisation simple par contraintes, puis quatre techniques de propagation redondante. Pour le problème de l'allocation matricielle, on montre comment analyser de manière globale les demandes minimales et maximales sur les lignes et les colonnes et on montre comment traiter le problème limité à une ligne (ou une colonne) comme un problème de flot maximal. Pour le problème de gestion de personnel, on montre comment résoudre de manière exacte le problème où tous les individus sont semblables et où tous les horaires sont des intervalles par un algorithme de flots, et on propose une technique de borne, basée sur la méthode Hongroise, applicable au cas de gestion de personnel en présence de préférences pour les personnes. Enfin, on utilise ces techniques dans deux applications réalistes, une pour les rotations en 3/8 du personnel dans un central téléphonique, l'autre pour la planification des horaires de personnel dans un centre d'appel. Le chapitre six présente le problème de l ordonnancement cumulatif. Après avoir motivé la généralisation du cadre de l'ordonnancement disjonctif pour la modélisation de problèmes réels de production, et décrit le problème général de l'ordonnancement cumulatif et sa restriction au cadre du RCPSP, on présente les deux techniques principales de propagation de contraintes, celle issue de l'analyse des fenêtres de temps (généralisation des intervalles de tâches) et celle issue de l'analyse des demandes de ressource (prise en compte des parties fixes des tâches). On décrit ensuite un cadre de recherche arborescente basé sur la construction chronologique de l'ordonnancement et enrichi par un apprentissage des échecs et l'utilisation de règles de dominance. On applique ensuite ces techniques à trois séries de problèmes, cumulatifs monoressource, cumulatif multi-ressource et RCPSP. Enfin, on évoque d'autres techniques de propagation dont l'apport est moins clair. On conclut, comme pour l'ordonnancement disjonctif, à l'importance des techniques de contraintes, en insistant sur la variété des problèmes et des techniques utilisées. Le chapitre sept présente le problème des tournées. Après avoir évoqué rapidement les méthodes exactes impropres à traiter de grands problèmes, on décrit les principales heuristiques ainsi que les procédures d'optimisation locale, issues du problème du voyageur de commerce (TSP). On propose ensuite une nouvel algorithme basé sur une procédure d'insertion enrichie par une phase d'optimisation locale incrémentale (O.L.I) après chaque insertion. On montre comment cet algorithme fournit des résultats de bonne qualité pour un temps de calcul très rapide, pour le problèmes de tournées, avec ou sans fenêtres de temps. On propose ensuite deux améliorations de cet algorithme : l'une, fait appel à un module 13

15 d'optimisation exact pour l'optimisation de chacune des routes individuelles (petits TSP), l'autre, plonge l'algorithme d'insertion dans un arbre de recherche à branchement limités (recherche LDS ). On montre ensuite comment la complexité de cet algorithme permet de résoudre des problèmes de grande taille (2 minutes pour mille nœuds). Enfin, sur une série de petits problèmes de tournées de taille plus petite, pour lesquels on dispose de résultats comparatifs, on montre que l'on obtient des résultats compétitfs avec le meilleur algorithme de recherche tabou, et on améliore l'état de l'art sur 4 instances. Enfin, on conclut en proposant des pistes pour prendre en compte d'autres contraintes (qualification de personnel, ressources, synchronisation de tâches, etc.) dans l'algorithme d'insertion. Enfin, on propose un bilan, dans le chapitre huit, de l'ensemble de ces expérimentations avec la programmation par contraintes sur ces problèmes combinatoires. D'une part, on présente, pour chacune des familles de problèmes, une cartographie synthétique des techniques considérées. D autre part, en faisant la synthèse des algorithmes qui se sont illustrés dans cette comparaison, on présente quelques conclusions méthodologiques, évoquant en particulier l'intérêt de la combinaison de différentes techniques algorithmiques, pour aboutir à la mise en œuvre d algorithmes hybrides. Partie B La partie B s'attache à la deuxième question de la thèse, celle de la mise en œuvre d'algorithmes complexes d'optimisation dans un environnement informatique. Elle comprend quatre chapitres (neuf à douze). Comme le sujet de cette deuxième partie est vaste et que l'état de l'art est beaucoup moins avancé que pour la première partie, on ne prétend pas chercher à y répondre de manière exhaustive. On commence par faire, dans le chapitre neuf, un tour d horizon des directions de recherche qui nous ont apparu importantes au cours de ce travail, pour la mise en œuvre de procédures de résolution. On retient cinq directions majeures, sur lesquelles on indique des pistes de travail. On commence par évoquer les problèmes liés à la modélisation d'un système et d'une situation. On discute ensuite les problèmes de programmation liés à l'utilisation de structures de données spécifiques à certains algorithmes. Puis, on examine les possibilités de spécification déclarative de comportements de composants algorithmiques. On aborde ensuite la question de la programmation d'algorithmes de recherche dont le flot de contrôle est complexe. Enfin, on évoque les problèmes d'environnement de programmation qui sont spécifiques au développement d'applications en optimisation combinatoire. Parmi ces cinq points, on choisit de se concentrer sur le quatrième (la spécification du contrôle pour des algorithmes de recherche complexe) que l'on traite en détail dans les deux chapitres suivants. Le chapitre dix présente le langage SaLSA dont le but est de permettre la spécification de manière élégante et très concise des algorithmes de recherche globale, locale ou hybride. Après avoir présenté les motivations à la définition d'un tel langage, ainsi que les solutions disponibles actuellement, on présente les briques du langage, les points de choix qui correspondent à la description de décisions indéterministes. On présente ensuite une algèbre permettant de composer ces points de choix pour décrire des arbres de recherche complexes. Le chapitre onze décrit l application de SaLSA à des algorithmes présentés dans la partie A. On commence par montrer comment SaLSA permet de décrire simplement un grand nombre d'algorithmes hybrides en optimisation combinatoire. On passe en revue une dizaine de problèmes, issus, pour la plupart, des expériences de la partie A, en évoquant entre autres la spécification des algorithmes de shuffle, de GSAT, d'optimisation locale incrémentale, de recherche LDS et la procédure de Lin et Kernighan. Le chapitre douze se penche sur l'utilisation pratique du langage SaLSA. On présente une sémantique opérationnelle du langage sous forme de règles de transitions dans un calcul de processus concurrents. 14

16 Enfin, on évoque quelques aspects liés à l'implémentation, qui génère du code Claire à partir de description SaLSA. Enfin, on conclut sur cette seconde partie liée à l'étude des problèmes de mise en œuvre et de génie logiciel des algorithmes hybrides. 15

17

18 17

19 1. Chapitre 1. Formalismes pour l optimisation combinatoire L'objet de ce premier chapitre est la description des principaux formalismes pour exprimer et résoudre des problèmes d optimisation combinatoire. On commencera par présenter le cadre le plus éprouvé, celui de la programmation linéaire, puis on s'attachera au cadre qui nous intéresse particulièrement, celui de la programmation par contraintes. On décrira ensuite la partie algorithmique commune à ces deux formalismes : les algorithmes de recherche par séparation et évaluation (branch and bound). Enfin, on survolera rapidement des grandes familles d algorithmes approchés. Ce chapitre se conclura par le développement d un exemple introductif : le problème de la couverture d ensembles. 1.1 Programmation linéaire Formalisme - description des problèmes La programmation linéaire (P.L.) [Chv 83] s'attache à la résolution de problèmes qui peuvent se décrire de la façon suivante : on cherche à affecter des valeurs réelles positives à un ensemble de variables x i de sorte qu'un certain nombre d'inéquations linéaires soient satisfaites. Chaque valuation admissible (respectant toutes les inégalités) du vecteur x est appelée solution. Parmi toutes les solutions, on en cherche une qui maximise un coût dont la donnée est une fonction linéaire de x. Le problème peut ainsi s'exprimer sous la forme suivante, appelée programme linéaire : max c.x sous les contraintes A.x b, x 0 Pour que les calculs restent dans les rationnels, on impose aux contraintes (la matrice A et le membre droit b) ainsi qu'à la fonction objective (vecteur c) d'être à coefficients entiers. Il existe de multiples versions équivalentes de cette formalisation, suivant que l'on minimise ou que l'on maximise la fonction objective, et que les contraintes sont des égalités ou des inégalités. Mentionnons enfin que l'on peut imposer aux variables x i de prendre des valeurs entières : on parle alors de programmation linéaire en nombres entiers (P.L.N.E) [Sch 86]. La traduction d'un problème combinatoire dans ce formalisme n'est pas toujours évidente. Il existe généralement de nombreux encodages possibles d'un problème sous forme linéaire, et la sélection d'un bon modèle demande une certaine expertise. Pour les problèmes d'optimisation discrète qui nous intéressent, cette traduction se fait au moyen de variables entières. Plus précisément, on est souvent amené à utiliser des variables à valeur dans {0,1} pour représenter des alternatives binaires. La traduction d'un problème en formalisme linéaire génère parfois un nombre important de variables [mat 97] L algorithme du simplexe Géométriquement, l'ensemble des solutions à un programme linéaire réside dans un polyèdre de R n (où n est le nombre de variables), défini par les inégalités linéaires de A. Dans le cas où ce polyèdre est borné (et ainsi la valeur maximale du programme linéaire est finie), on parle de polytope. Savoir si le programme admet une solution revient à savoir si ce polyèdre est vide ou non. Optimiser une fonction linéaire sous ces contraintes revient à trouver le(s) sommet(s) du polyèdre qui sont les plus éloignés de l'origine suivant une direction de l'espace (celle de c). Plusieurs algorithmes génériques ont été proposés pour résoudre les programmes linéaires. L algorithme du simplexe est un algorithme géométrique élémentaire qui part d un sommet quelconque du polytope et glisse le long des arêtes vers un (le) sommet optimal. Sa complexité, dans le cas le pire, est exponentielle. Suivant [Chv 83] et [Mau 92], décrivons de manière plus précise cet algorithme. En rajoutant à chaque inéquation linéaire une variable (appelée variable d'écart), on peut transformer les 1

20 inégalités linéaires en égalités, pourvu que ces variables d'écart prennent des valeurs positives. On peut ainsi réécrire le programme linéaire sous la forme suivante : max c.x sous les contraintes A.x = b, x 0 On peut aussi transformer A pour qu'elle soit de dimension m n, où m est son rang (m n). (Notons ici que n correspond au nombre de variables de départ, augmenté du nombre de contraintes, à cause des variables d'écart). Un ensemble d'indices B = {i 1,..., i m } forme une base si les colonnes A i1,..., A im sont linéairement indépendantes. Dans ce cas, la matrice carrée A B = A i1,..., A im est inversible. On va construire une solution au système linéaire de la manière suivante : on part du vecteur x B = A -1 B b, que l'on complète en une solution complète x* en fixant à 0 toutes les autres variables x i pour i B. On a ainsi Ax* = b. La solution x* est appelée solution basique, et, dans le cas où toutes ses composantes sont positives, solution basique réalisable. Enfin, on montre que l'ensemble des sommets du polytope défini par A et b correspond exactement à l'ensemble des solutions basiques réalisables, obtenues par une base B quelconque. On montre encore que deux sommets adjacents du polytope peuvent être obtenus par deux bases identiques à un indice près. On peut ainsi passer de la description géométrique de l'algorithme du simplexe à sa description algébrique. On part d'un sommet initial sur lequel on évalue la fonction objective. Cela revient à chercher une base qui fournisse une solution basique réalisable. Ensuite, on passe d'un sommet à un sommet adjacent de sorte que la fonction objective augmente (strictement) le long de l'arête entre les deux sommets. Ce déplacement le long d'une arête correspond au remplacement, dans la base courante, d'un indice par un autre. D'autres algorithmes géométriques plus complexes ont été proposés (méthode de l ellipsoïde [Kh 79] ou du point intérieur, [Ka 84] voir [Sch 86]) dont les complexités théoriques sont polynomiales. L algorithme du simplexe, bien qu'il puisse être, dans le cas le pire, de complexité exponentielle est, en pratique, plus rapide que la méthode de l ellipsoïde. En revanche, la méthode du point intérieur fournit, elle, dans certains cas, des résultats très compétitifs. Il existe aussi une théorie de la dualité pour les programmes linéaires, qui permet, à partir d'un programme linéaire P, d'en considérer un autre, D, (que l'on appelle son dual) : p = max{ c.x A.x b, x 0} (P) d = min{ b.u u.a c, u 0} (D) L'étude conjointe de ces deux programmes peut être particulièrement intéressante, car on a la relation d'ordre suivante : soit x une solution réalisable du programme primal P et u une solution du programme dual D, alors : c.x p = d b.u Ainsi, dans le cas où les deux programmes sont réalisables, leurs valeurs optimales coïncident. La connaissance de deux solutions x et u permet ainsi d'encadrer cet optimal. Enfin, on prouve encore que si p =, alors D est irréalisable, et réciproquement, si d = -, alors P est irréalisable Programmation entière Le cas de la P.L.N.E., où l'on cherche des solutions à coordonnées entières est beaucoup plus complexe. En effet, d'un point de vue géométrique, le domaine d'optimisation n'est plus un corps convexe continu, mais un ensemble discret de points. Alors que dans le cas précédent, il suffisait de parcourir l'ensemble des sommets du polytope, puisqu'ils correspondaient à des solutions, ici, cette approche n'est plus valable, car les sommets sont en général à coordonnées fractionnelles. 2

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

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

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

LE PROBLEME DU PLUS COURT CHEMIN

LE PROBLEME DU PLUS COURT CHEMIN LE PROBLEME DU PLUS COURT CHEMIN Dans cette leçon nous définissons le modèle de plus court chemin, présentons des exemples d'application et proposons un algorithme de résolution dans le cas où les longueurs

Plus en détail

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Leçon 11 PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Dans cette leçon, nous retrouvons le problème d ordonnancement déjà vu mais en ajoutant la prise en compte de contraintes portant sur les ressources.

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

Chapitre 1 : Introduction aux bases de données

Chapitre 1 : Introduction aux bases de données Chapitre 1 : Introduction aux bases de données Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes informatiques. Les Systèmes de Gestion de Bases de Données

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

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

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

Optimisation Discrète

Optimisation Discrète Prof F Eisenbrand EPFL - DISOPT Optimisation Discrète Adrian Bock Semestre de printemps 2011 Série 7 7 avril 2011 Exercice 1 i Considérer le programme linéaire max{c T x : Ax b} avec c R n, A R m n et

Plus en détail

Calculer avec Sage. Revision : 417 du 1 er juillet 2010

Calculer avec Sage. Revision : 417 du 1 er juillet 2010 Calculer avec Sage Alexandre Casamayou Guillaume Connan Thierry Dumont Laurent Fousse François Maltey Matthias Meulien Marc Mezzarobba Clément Pernet Nicolas Thiéry Paul Zimmermann Revision : 417 du 1

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

Date : 18.11.2013 Tangram en carré page

Date : 18.11.2013 Tangram en carré page Date : 18.11.2013 Tangram en carré page Titre : Tangram en carré Numéro de la dernière page : 14 Degrés : 1 e 4 e du Collège Durée : 90 minutes Résumé : Le jeu de Tangram (appelé en chinois les sept planches

Plus en détail

LES CARTES À POINTS : POUR UNE MEILLEURE PERCEPTION

LES CARTES À POINTS : POUR UNE MEILLEURE PERCEPTION LES CARTES À POINTS : POUR UNE MEILLEURE PERCEPTION DES NOMBRES par Jean-Luc BREGEON professeur formateur à l IUFM d Auvergne LE PROBLÈME DE LA REPRÉSENTATION DES NOMBRES On ne conçoit pas un premier enseignement

Plus en détail

INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES

INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES Dominique LAFFLY Maître de Conférences, Université de Pau Laboratoire Société Environnement Territoire UMR 5603 du CNRS et Université de Pau Domaine

Plus en détail

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes.

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes. Introduction L'objectif de mon TIPE est la reconnaissance de sons ou de notes de musique à l'aide d'un réseau de neurones. Ce réseau doit être capable d'apprendre à distinguer les exemples présentés puis

Plus en détail

Programmation Par Contraintes

Programmation Par Contraintes Programmation Par Contraintes Cours 2 - Arc-Consistance et autres amusettes David Savourey CNRS, École Polytechnique Séance 2 inspiré des cours de Philippe Baptiste, Ruslan Sadykov et de la thèse d Hadrien

Plus en détail

O b s e r v a t o i r e E V A P M. Taxonomie R. Gras - développée

O b s e r v a t o i r e E V A P M. Taxonomie R. Gras - développée O b s e r v a t o i r e E V A P M É q u i p e d e R e c h e r c h e a s s o c i é e à l ' I N R P Taxonomie R. Gras - développée Grille d'analyse des objectifs du domaine mathématique et de leurs relations

Plus en détail

2. RAPPEL DES TECHNIQUES DE CALCUL DANS R

2. RAPPEL DES TECHNIQUES DE CALCUL DANS R 2. RAPPEL DES TECHNIQUES DE CALCUL DANS R Dans la mesure où les résultats de ce chapitre devraient normalement être bien connus, il n'est rappelé que les formules les plus intéressantes; les justications

Plus en détail

Cours 02 : Problème général de la programmation linéaire

Cours 02 : Problème général de la programmation linéaire Cours 02 : Problème général de la programmation linéaire Cours 02 : Problème général de la Programmation Linéaire. 5 . Introduction Un programme linéaire s'écrit sous la forme suivante. MinZ(ou maxw) =

Plus en détail

Correction de l examen de la première session

Correction de l examen de la première session de l examen de la première session Julian Tugaut, Franck Licini, Didier Vincent Si vous trouvez des erreurs de Français ou de mathématiques ou bien si vous avez des questions et/ou des suggestions, envoyez-moi

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

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

Cours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. E-mail address: Nicolas.Thiery@u-psud.fr URL: http://nicolas.thiery. Cours de Recherche Opérationnelle IUT d Orsay Nicolas M. THIÉRY E-mail address: Nicolas.Thiery@u-psud.fr URL: http://nicolas.thiery.name/ CHAPTER 1 Introduction à l optimisation 1.1. TD: Ordonnancement

Plus en détail

Rapport d'analyse des besoins

Rapport d'analyse des besoins Projet ANR 2011 - BR4CP (Business Recommendation for Configurable products) Rapport d'analyse des besoins Janvier 2013 Rapport IRIT/RR--2013-17 FR Redacteur : 0. Lhomme Introduction...4 La configuration

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

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

CONCEPTION Support de cours n 3 DE BASES DE DONNEES CONCEPTION Support de cours n 3 DE BASES DE DONNEES Auteur: Raymonde RICHARD PRCE UBO PARTIE III. - LA DESCRIPTION LOGIQUE ET PHYSIQUE DES DONNEES... 2 A. Les concepts du modèle relationnel de données...

Plus en détail

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

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Loris MARCHAL Laboratoire de l Informatique du Parallélisme Équipe Graal Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Thèse réalisée sous la direction

Plus en détail

modélisation solide et dessin technique

modélisation solide et dessin technique CHAPITRE 1 modélisation solide et dessin technique Les sciences graphiques regroupent un ensemble de techniques graphiques utilisées quotidiennement par les ingénieurs pour exprimer des idées, concevoir

Plus en détail

Problèmes d ordonnancement dans les systèmes de production. Journée Automatique et Optimisation Université de Paris 12 20 Mars 2003

Problèmes d ordonnancement dans les systèmes de production. Journée Automatique et Optimisation Université de Paris 12 20 Mars 2003 Problèmes d ordonnancement dans les systèmes de production Michel Gourgand Université Blaise Pascal Clermont Ferrand LIMOS CNRS UMR 6158 1 Le LIMOS Laboratoire d Informatique, de Modélisation et d Optimisation

Plus en détail

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

Algorithmes de recherche

Algorithmes de recherche Algorithmes de recherche 1 Résolution de problèmes par recherche On représente un problème par un espace d'états (arbre/graphe). Chaque état est une conguration possible du problème. Résoudre le problème

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

Catalogue des connaissances de base en mathématiques dispensées dans les gymnases, lycées et collèges romands.

Catalogue des connaissances de base en mathématiques dispensées dans les gymnases, lycées et collèges romands. Catalogue des connaissances de base en mathématiques dispensées dans les gymnases, lycées et collèges romands. Pourquoi un autre catalogue en Suisse romande Historique En 1990, la CRUS (Conférences des

Plus en détail

Théorème du point fixe - Théorème de l inversion locale

Théorème du point fixe - Théorème de l inversion locale Chapitre 7 Théorème du point fixe - Théorème de l inversion locale Dans ce chapitre et le suivant, on montre deux applications importantes de la notion de différentiabilité : le théorème de l inversion

Plus en détail

2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE

2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE 2 Grad Info Soir Langage C++ Juin 2007 Projet BANQUE 1. Explications L'examen comprend un projet à réaliser à domicile et à documenter : - structure des données, - objets utilisés, - relations de dépendance

Plus en détail

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments Recherche Opérationnelle Optimisation combinatoire : Applications et compléments Pierre Delisle Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique 17 février 2014 Plan de

Plus en détail

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA 75. Un plombier connaît la disposition de trois tuyaux sous des dalles ( voir figure ci dessous ) et il lui suffit de découvrir une partie de chacun d eux pour pouvoir y poser les robinets. Il cherche

Plus en détail

CHAPITRE VIII : Les circuits avec résistances ohmiques

CHAPITRE VIII : Les circuits avec résistances ohmiques CHAPITRE VIII : Les circuits avec résistances ohmiques VIII. 1 Ce chapitre porte sur les courants et les différences de potentiel dans les circuits. VIII.1 : Les résistances en série et en parallèle On

Plus en détail

Brique BDL Gestion de Projet Logiciel

Brique BDL Gestion de Projet Logiciel Brique BDL Gestion de Projet Logiciel Processus de développement pratiqué à l'enst Sylvie.Vignes@enst.fr url:http://www.infres.enst.fr/~vignes/bdl Poly: Computer elective project F.Gasperoni Brique BDL

Plus en détail

Les diagrammes de modélisation

Les diagrammes de modélisation L approche Orientée Objet et UML 1 Plan du cours Introduction au Génie Logiciel L approche Orientée Objet et Notation UML Les diagrammes de modélisation Relations entre les différents diagrammes De l analyse

Plus en détail

COMMUNICATEUR BLISS COMMANDE PAR UN SENSEUR DE POSITION DE L'OEIL

COMMUNICATEUR BLISS COMMANDE PAR UN SENSEUR DE POSITION DE L'OEIL COMMUNICATEUR BLISS COMMANDE PAR UN SENSEUR DE POSITION DE L'OEIL J. TICHON(1) (2), J.-M. TOULOTTE(1), G. TREHOU (1), H. DE ROP (2) 1. INTRODUCTION Notre objectif est de réaliser des systèmes de communication

Plus en détail

ANNEXE 1 RÈGLEMENTS GÉNÉRAUX 1 ASSOCIATION DES ARCHÉOLOGUES PROFESSIONNELS DU QUÉBEC (AAQ) CODE D ÉTHIQUE ET DES NORMES PROFESSIONNELLES

ANNEXE 1 RÈGLEMENTS GÉNÉRAUX 1 ASSOCIATION DES ARCHÉOLOGUES PROFESSIONNELS DU QUÉBEC (AAQ) CODE D ÉTHIQUE ET DES NORMES PROFESSIONNELLES ANNEXE 1 RÈGLEMENTS GÉNÉRAUX 1 ASSOCIATION DES ARCHÉOLOGUES PROFESSIONNELS DU QUÉBEC (AAQ) CODE D ÉTHIQUE ET DES NORMES PROFESSIONNELLES Ce code fait partie intégrante du règlement de l'association des

Plus en détail

Annexe sur la maîtrise de la qualité

Annexe sur la maîtrise de la qualité Version du 09/07/08 Annexe sur la maîtrise de la qualité La présente annexe précise les modalités d'application, en matière de maîtrise de la qualité, de la circulaire du 7 janvier 2008 fixant les modalités

Plus en détail

MPI Activité.10 : Logique binaire Portes logiques

MPI Activité.10 : Logique binaire Portes logiques MPI Activité.10 : Logique binaire Portes logiques I. Introduction De nombreux domaines font appel aux circuits logiques de commutation : non seulement l'informatique, mais aussi les technologies de l'asservissement

Plus en détail

Le modèle de données

Le modèle de données Le modèle de données Introduction : Une fois que l étude des besoins est complétée, deux points importants sont à retenir : Les données du système étudié Les traitements effectués par le système documentaire.

Plus en détail

chapitre 4 Nombres de Catalan

chapitre 4 Nombres de Catalan chapitre 4 Nombres de Catalan I Dénitions Dénition 1 La suite de Catalan (C n ) n est la suite dénie par C 0 = 1 et, pour tout n N, C n+1 = C k C n k. Exemple 2 On trouve rapidement C 0 = 1, C 1 = 1, C

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

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

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML http://olivier-augereau.com Sommaire Introduction I) Les bases II) Les diagrammes

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

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

Systèmes de transport public guidés urbains de personnes

Systèmes de transport public guidés urbains de personnes service technique des Remontées mécaniques et des Transports guidés Systèmes de transport public guidés urbains de personnes Principe «GAME» (Globalement Au Moins Équivalent) Méthodologie de démonstration

Plus en détail

Fiche méthodologique Rédiger un cahier des charges

Fiche méthodologique Rédiger un cahier des charges Fiche méthodologique Rédiger un cahier des charges Plan de la fiche : 1 : Présentation de la fiche 2 : Introduction : les grands principes 3 : Contenu, 1 : positionnement et objectifs du projet 4 : Contenu,

Plus en détail

Baccalauréat technologique

Baccalauréat technologique Baccalauréat technologique Épreuve relative aux enseignements technologiques transversaux, épreuve de projet en enseignement spécifique à la spécialité et épreuve d'enseignement technologique en langue

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

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques. Logique binaire I. L'algèbre de Boole L'algèbre de Boole est la partie des mathématiques, de la logique et de l'électronique qui s'intéresse aux opérations et aux fonctions sur les variables logiques.

Plus en détail

4.2 Unités d enseignement du M1

4.2 Unités d enseignement du M1 88 CHAPITRE 4. DESCRIPTION DES UNITÉS D ENSEIGNEMENT 4.2 Unités d enseignement du M1 Tous les cours sont de 6 ECTS. Modélisation, optimisation et complexité des algorithmes (code RCP106) Objectif : Présenter

Plus en détail

Stages 2014-2015 ISOFT : UNE SOCIETE INNOVANTE. Contact : Mme Lapedra, stage@isoft.fr

Stages 2014-2015 ISOFT : UNE SOCIETE INNOVANTE. Contact : Mme Lapedra, stage@isoft.fr Stages 2014-2015 ISOFT : UNE SOCIETE INNOVANTE Contact : Mme Lapedra, stage@isoft.fr ISoft, éditeur de logiciels, est spécialisé dans l informatique décisionnelle et l analyse de données. Son expertise

Plus en détail

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

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1 CHAPTER 1 Ordonnancement 1.1. Étude de cas Ordonnancement de tâches avec contraintes de précédences 1.1.1. Exemple : construction d'une maison. Exercice. On veut construire une maison, ce qui consiste

Plus en détail

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin. Exo7 Matrice d une application linéaire Corrections d Arnaud odin. Exercice Soit R muni de la base canonique = ( i, j). Soit f : R R la projection sur l axe des abscisses R i parallèlement à R( i + j).

Plus en détail

Guide No.2 de la Recommandation Rec (2009).. du Comité des Ministres aux États membres sur la démocratie électronique

Guide No.2 de la Recommandation Rec (2009).. du Comité des Ministres aux États membres sur la démocratie électronique DIRECTION GENERALE DES AFFAIRES POLITIQUES DIRECTION DES INSTITUTIONS DEMOCRATIQUES Projet «BONNE GOUVERNANCE DANS LA SOCIETE DE L INFORMATION» CAHDE (2009) 2F Strasbourg, 20 janvier 2009 Guide No.2 de

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

GESTION DE PROJET SÉANCE 2 : LES CYCLE DE VIE D'UN PROJET

GESTION DE PROJET SÉANCE 2 : LES CYCLE DE VIE D'UN PROJET GESTION DE PROJET SÉANCE 2 : LES CYCLE DE VIE D'UN PROJET 1 Tianxiao LIU Licence Professionnelle Réseaux & Sécurité Université de Cergy-Pontoise http://depinfo.u-cergy.fr/~tliu/lpg.php PLAN Objectif et

Plus en détail

LES MÉTHODES DE POINT INTÉRIEUR 1

LES MÉTHODES DE POINT INTÉRIEUR 1 Chapitre XIII LES MÉTHODES DE POINT INTÉRIEUR 1 XIII.1 Introduction Nous débutons par un rappel de la formulation standard d un problème d optimisation 2 linéaire et donnons un bref aperçu des différences

Plus en détail

Programmation Linéaire - Cours 1

Programmation Linéaire - Cours 1 Programmation Linéaire - Cours 1 P. Pesneau pierre.pesneau@math.u-bordeaux1.fr Université Bordeaux 1 Bât A33 - Bur 265 Ouvrages de référence V. Chvátal - Linear Programming, W.H.Freeman, New York, 1983.

Plus en détail

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR Mickaël Bergem 25 juin 2014 Maillages et applications 1 Table des matières Introduction 3 1 La modélisation numérique de milieux urbains

Plus en détail

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. 1 Définitions, notations Calcul matriciel Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. On utilise aussi la notation m n pour le

Plus en détail

ÉdIteur officiel et fournisseur de ServIceS professionnels du LogIcIeL open Source ScILab

ÉdIteur officiel et fournisseur de ServIceS professionnels du LogIcIeL open Source ScILab ÉdIteur officiel et fournisseur de ServIceS professionnels du LogIcIeL open Source ScILab notre compétence d'éditeur à votre service créée en juin 2010, Scilab enterprises propose services et support autour

Plus en détail

Service de réplication des données HP pour la gamme de disques Continuous Access P9000 XP

Service de réplication des données HP pour la gamme de disques Continuous Access P9000 XP Service de réplication des données HP pour la gamme de disques Continuous Access P9000 XP Services HP Care Pack Données techniques Le service de réplication des données HP pour Continuous Access offre

Plus en détail

Axiomatique de N, construction de Z

Axiomatique de N, construction de Z Axiomatique de N, construction de Z Table des matières 1 Axiomatique de N 2 1.1 Axiomatique ordinale.................................. 2 1.2 Propriété fondamentale : Le principe de récurrence.................

Plus en détail

Analyse tarifaire en ligne (TAO) de l'omc

Analyse tarifaire en ligne (TAO) de l'omc Analyse tarifaire en ligne (TAO) de l'omc L'analyse tarifaire en ligne (TAO) permet d'effectuer des recherches et d'analyser les données tarifaires conservées dans deux bases de données de l'omc, à savoir

Plus en détail

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Julien Jorge julien.jorge@univ-nantes.fr Laboratoire d Informatique de Nantes Atlantique,

Plus en détail

OASIS www.oasis-open.org/committees/xacml/docs/docs.shtml Date de publication

OASIS www.oasis-open.org/committees/xacml/docs/docs.shtml Date de publication Statut du Committee Working Draft document Titre XACML Language Proposal, version 0.8 (XACML : XML Access Control Markup Language) Langage de balisage du contrôle d'accès Mot clé Attestation et sécurité

Plus en détail

FICHE UE Licence/Master Sciences, Technologies, Santé Mention Informatique

FICHE UE Licence/Master Sciences, Technologies, Santé Mention Informatique NOM DE L'UE : Algorithmique et programmation C++ LICENCE INFORMATIQUE Non Alt Alt S1 S2 S3 S4 S5 S6 Parcours : IL (Ingénierie Logicielle) SRI (Systèmes et Réseaux Informatiques) MASTER INFORMATIQUE Non

Plus en détail

Raisonnement par récurrence Suites numériques

Raisonnement par récurrence Suites numériques Chapitre 1 Raisonnement par récurrence Suites numériques Terminale S Ce que dit le programme : CONTENUS CAPACITÉS ATTENDUES COMMENTAIRES Raisonnement par récurrence. Limite finie ou infinie d une suite.

Plus en détail

Utilisation des médicaments au niveau des soins primaires dans les pays en développement et en transition

Utilisation des médicaments au niveau des soins primaires dans les pays en développement et en transition 09-0749 1 WHO/EMP/MAR/2009.3 Utilisation des médicaments au niveau des soins primaires dans les pays en développement et en transition Synthèse des résultats des études publiées entre 1990 et 2006 Organisation

Plus en détail

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN Les contenues de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information et ne peuvent en aucun cas

Plus en détail

Installation de Windows 2003 Serveur

Installation de Windows 2003 Serveur Installation de Windows 2003 Serveur Introduction Ce document n'explique pas les concepts, il se contente de décrire, avec copies d'écran, la méthode que j'utilise habituellement pour installer un Windows

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

Probabilités sur un univers fini

Probabilités sur un univers fini [http://mp.cpgedupuydelome.fr] édité le 7 août 204 Enoncés Probabilités sur un univers fini Evènements et langage ensembliste A quelle condition sur (a, b, c, d) ]0, [ 4 existe-t-il une probabilité P sur

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

Université de Lorraine Licence AES LIVRET DE STAGE LICENCE 2014-2015

Université de Lorraine Licence AES LIVRET DE STAGE LICENCE 2014-2015 Université de Lorraine Licence AES LIVRET DE STAGE LICENCE 2014-2015 1 LA REDACTION DU RAPPORT DE STAGE Le mémoire ne doit pas consister à reprendre tels quels des documents internes de l entreprise ou

Plus en détail

UNITE U 6.2 : PROJET TECHNIQUE OBJET DE L'EPREUVE.

UNITE U 6.2 : PROJET TECHNIQUE OBJET DE L'EPREUVE. UNITE U 6.2 : PROJET TECHNIQUE OBJET DE L'EPREUVE. Cette épreuve permet de valider les compétences C1, C2, C3 et T2 du référentiel au travers de la démarche de projet 15 que le candidat aura mis en œuvre.

Plus en détail

http://cri.univ-lille1.fr Virtualisation de Windows dans Ubuntu Linux

http://cri.univ-lille1.fr Virtualisation de Windows dans Ubuntu Linux http://cri.univ-lille1.fr Virtualisation de Windows dans Ubuntu Linux Version 1.0 Septembre 2011 SOMMAIRE 1. Introduction 3 2. Installation du logiciel de virtualisation VirtualBox 4 3. Création d'une

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

Championnat de France de Grilles Logiques Finale 7 juin 2014. Livret d'instructions

Championnat de France de Grilles Logiques Finale 7 juin 2014. Livret d'instructions Championnat de France de Grilles Logiques Finale 7 juin 0 Livret d'instructions Épreuve Thème Horaires Durée Points Déjà vu? h h minutes 0 Medley international h h 0 minutes 00 Futur proche? h h0 minutes

Plus en détail

IFT1215 Introduction aux systèmes informatiques

IFT1215 Introduction aux systèmes informatiques Introduction aux circuits logiques de base IFT25 Architecture en couches Niveau 5 Niveau 4 Niveau 3 Niveau 2 Niveau Niveau Couche des langages d application Traduction (compilateur) Couche du langage d

Plus en détail

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies Régis Boulet Charlie Demené Alexis Guyot Balthazar Neveu Guillaume Tartavel Sommaire Sommaire... 1 Structure

Plus en détail

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que Introduction. On suppose connus les ensembles N (des entiers naturels), Z des entiers relatifs et Q (des nombres rationnels). On s est rendu compte, depuis l antiquité, que l on ne peut pas tout mesurer

Plus en détail

1. Introduction...2. 2. Création d'une requête...2

1. Introduction...2. 2. Création d'une requête...2 1. Introduction...2 2. Création d'une requête...2 3. Définition des critères de sélection...5 3.1 Opérateurs...5 3.2 Les Fonctions...6 3.3 Plusieurs critères portant sur des champs différents...7 3.4 Requête

Plus en détail

2. Activités et Modèles de développement en Génie Logiciel

2. Activités et Modèles de développement en Génie Logiciel 2. Activités et Modèles de développement en Génie Logiciel Bernard ESPINASSE Professeur à l'université d'aix-marseille Plan Les Activités du GL Analyse des besoins Spécification globale Conceptions architecturale

Plus en détail

Généralités sur le Langage Java et éléments syntaxiques.

Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques....1 Introduction...1 Genéralité sur le langage Java....1 Syntaxe de base du Langage...

Plus en détail

Installation de Windows 2000 Serveur

Installation de Windows 2000 Serveur Installation de Windows 2000 Serveur Introduction Ce document n'explique pas les concepts, il se contente de décrire, avec copies d'écran, la méthode que j'utilise habituellement pour installer un Windows

Plus en détail

Université de Bangui. Modélisons en UML

Université de Bangui. Modélisons en UML Université de Bangui CRM Modélisons en UML Ce cours a été possible grâce à l initiative d Apollinaire MOLAYE qui m a contacté pour vous faire bénéficier de mes connaissances en nouvelles technologies et

Plus en détail

«Manuel Pratique» Gestion budgétaire

«Manuel Pratique» Gestion budgétaire 11/06/01 B50/v2.31/F/MP005.01 «Manuel Pratique» Gestion budgétaire Finance A l usage des utilisateurs de Sage BOB 50 Solution Sage BOB 50 2 L éditeur veille à la fiabilité des informations publiées, lesquelles

Plus en détail

Anticiper pour avoir une innovation d'avance : le leitmotiv de Pierre Jouniaux, entrepreneur du big data!

Anticiper pour avoir une innovation d'avance : le leitmotiv de Pierre Jouniaux, entrepreneur du big data! Anticiper pour avoir une innovation d'avance : le leitmotiv de Pierre Jouniaux, entrepreneur du big data! Pierre Jouniaux http://www.safety line.fr CV : Pierre Jouniaux, ingénieur aéronautique, pilote

Plus en détail