Utilisation de la grille CONFIIT pour la résolution du problème de car-sequencing



Documents pareils
L exclusion mutuelle distribuée

Cours de Master Recherche

Equilibrage de charge pour les grilles de calcul : classe des tâches dépendantes et indépendantes.

Chapitre 5 : Flot maximal dans un graphe

Programmation Par Contraintes

Algorithmes de recherche

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO)

Ebauche Rapport finale

L apprentissage automatique

Les structures de données. Rajae El Ouazzani

Introduction aux algorithmes répartis

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO)

Cryptographie RSA. Introduction Opérations Attaques. Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1

1.Introduction - Modèle en couches - OSI TCP/IP

Druais Cédric École Polytechnique de Montréal. Résumé

Agents mobiles pour la recherche d'informations sur des réseaux hétérogènes. D.Picard & A.Revel

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

Les risques HERVE SCHAUER HSC

Installation ou mise à jour du logiciel système Fiery

Maarch V1.4

TP de réseaux : Domain Name Server.

USERGATE PROXY & FIREWALL. Protection exhaustive de réseau corporate, optimisation de trafic Internet, administration flexible

Protection exhaustive de réseau corporate, optimisation de trafic Internet, administration flexible

Groupe Eyrolles, 2004 ISBN :

Menu Fédérateur. Procédure de réinstallation du logiciel EIC Menu Fédérateur d un ancien poste vers un nouveau poste

Serveur de sauvegarde à moindre coût

escan Entreprise Edititon Specialist Computer Distribution

Chapitre VII : Principes des réseaux. Structure des réseaux Types de réseaux La communication Les protocoles de communication

4.2 Unités d enseignement du M1

Utilisation du backtrack intelligent dans un branch-and-bound Application au problème d Open-Shop

Efficacité énergétique des réseaux de cœur et d accès

La gestion de données dans le cadre d une application de recherche d alignement de séquence : BLAST.

OmniVista 2700 Application complémentaires pour l OmniVista 2500 Network Management

Organisation du parcours M2 IR Les unités d enseignements (UE) affichées dans la partie tronc commun sont toutes obligatoires, ainsi que le stage et

M1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia

DG-ADAJ: Une plateforme Desktop Grid

L'AAA, késako? Bruno Bonfils, fr.org>, Novembre Sous ce terme d'apparence barbare est regroupé l'ensemble des concepts suivants :

le nouveau EAGLEmGuard est arrivé. Dissuasion maximum pour tous les pirates informatiques:

Hubert & Bruno Lundi 12 octobre 2009 SAINT-QUENTIN (02)

Packet Tracer : configuration des listes de contrôle d'accès étendues, scénario 1

Sessions en ligne - QuestionPoint

Prise en compte des ressources dans les composants logiciels parallèles

Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose, Keith Ross Addison-Wesley, July ENPC.

Rapport du projet Qualité de Service

Sauvegarde collaborative entre pairs Ludovic Courtès LAAS-CNRS

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

Informatique Générale Les réseaux

Grid Technology. ActiveMQ pour le grand collisionneur de hadrons (LHC) Lionel Cons Grid Technology Group Information Technology Department

Introduction à la Programmation par Contraintes (PPC) Ruslan Sadykov LIX, École Polytechnique

Iyad Alshabani SysCom - CReSTIC Université de Reims 17/02/2011 1

Projet INF242. Stéphane Devismes & Benjamin Wack. Pour ce projet les étudiants doivent former des groupes de 3 ou 4 étudiants.

Conception des systèmes répartis

Catalogue & Programme des formations 2015

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

Services OSI. if G.Beuchot. Services Application Services Présentation - Session Services Transport - Réseaux - Liaison de Données - Physique

PROGRAMME DETAILLE. Parcours en première année en apprentissage. Travail personnel CC + ET réseaux

Utilisation du client de messagerie Thunderbird

Introduction à la sécurité Cours 8 Infrastructure de clés publiques. Catalin Dima

7.1.2 Normes des réseaux locaux sans fil

Pré-requis techniques

Efficacité énergétique pour les particuliers : une solution pour le monitoring énergétique

XtremWeb-CH : Une plateforme Global Computing pour les applications de haute performance

Synthèse d'images I. Venceslas BIRI IGM Université de Marne La

Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services

Plan du Travail. 2014/2015 Cours TIC - 1ère année MI 30

Stéphanie Lacerte. Document technique. Connextek. 31 mai Cloudtel

Installation du SLIS 4.1

La réforme du permis de construire et des autorisations d urbanisme

Tutoriel d utilisation du Back-Office du site de la ligue

Master d'informatique. Réseaux. Supervision réseaux

Virtual Private Network WAFA GHARBI (RT4) CYRINE MAATOUG (RT4) BOCHRA DARGHOUTH (RT4) SALAH KHEMIRI (RT4) MARWA CHAIEB (RT3) WIEM BADREDDINE (RT3)

Intelligence Artificielle Planification

Conception. Génie Logiciel. Renaud Marlet. LaBRI / INRIA (d'après A.-M. Hugues) màj 17/04/2007

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

Présentation SafeNet Authentication Service (SAS) Octobre 2013

Programmation par contraintes. Laurent Beaudou

Plateforme de capture et d analyse de sites Web AspirWeb

PocketNet SNMP/Modbus

Réseaux Mobiles et Haut Débit

Ce que nous rencontrons dans les établissements privés : 1-Le réseau basique :

Annexe 5. Kaspersky Security For SharePoint Servers. Consulting Team

Guide d utilisation. Version document 0.8. Trouver toute la documentation sur :

Cours des réseaux Informatiques ( )

Masses de données. 1. Introduction 2. Problématiques 3. Socle de formation (non présenté) 4. Liens avec Formation INSA

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

MISE EN ŒUVRE MOVEIT DMZ V1.8

Définition des Webservices Ordre de paiement par . Version 1.0

Console de supervision en temps réel du réseau de capteurs sans fil Beanair

M Études et développement informatique

Symantec Endpoint Protection

Windows Server 2008 Sécurité ADMINISTRATION ET CONFIGURATION DE LA SECURITE OLIVIER D.

PRÉSENTATION DES DIFFÉRENTS RÉSEAUX LOCAUX DU MARCHÉ

PLAN DE COURS. GPA750 Ordonnancement des systèmes de production aéronautique

MABioVis. Bio-informatique et la

MEAD : temps réel et tolérance aux pannes pour CORBA

contact@nqicorp.com - Web :

Sécurité des réseaux Firewalls

Rapport d activité. Mathieu Souchaud Juin 2007

Audits Sécurité. Des architectures complexes

Transcription:

Utilisation de la grille CONFIIT pour la résolution du problème de car-sequencing Pierre-Paul Mérel, Michaël Krajecki, Olivier Flauzac, Simon Boivin. NP-Par'05 05/04/05

Plan de l'exposé Problème de car-sequencing. L'intergiciel CONFIIT. Résolution dans CONFIIT. Expérimentations. Conclusion.

Problème de car-sequencing Car-sequencing CONFIIT Résolution Expérimentations Conclusion Ordonner des véhicules dans une chaine d'assemblage. Contraintes de capacité des options. Catégories de véhicules. Demandes de chaque catégorie. Contrainte de capacité C i = q i / p i : q i = véhicules maximum sur une sous séquence. p i = taille de la sous séquence.

Exemple de problème Car-sequencing CONFIIT Résolution Expérimentations Conclusion Catégories Option Contrainte 1 2 3 4 5 6 7 8 9 10 11 12 1 1 / 2 2 2 / 3 3 1 / 3 4 2 / 5 5 1 / 5 Demande 3 1 2 4 3 3 2 1 1 2 2 1

Formalisation CSP Car-sequencing CONFIIT Résolution Expérimentations Conclusion Variable X i = véhicule produit à la position i. Domaine D i = catégories de véhicules. Contraintes de capacité C j = q j / p j : Sur chaque p j -uplet de X. Contraintes de demande des catégories : Globales sur X.

Résolution séquentielle Car-sequencing CONFIIT Résolution Expérimentations Conclusion Résolution complète : Forward Checking. Arbre de recherche déséquilibré.

L'intergiciel CONFIIT Car-sequencing CONFIIT Résolution Expérimentations Conclusion Applications FIIT : Finite number of Independent and Irregular Tasks. Pour chaque tâche, on a : Tâches indépendantes : pas de communications. Temps d'exécution inconnu a priori. Algorithme identique pour chaque tâche. Programmation FIIT : Comment diviser le problème? Comment calculer une tâche?

L'intergiciel CONFIIT Car-sequencing CONFIIT Résolution Expérimentations Conclusion Computation Over a Network for FIIT. Objectifs : Distribution des tâches sur le réseau. Résolution des tâches. Collecte des résultats. Caractéristiques : Totalement distribué (réseau dynamique). Hétérogène (système, matériel, architecture). Ecrit en Java. Ordre de calcul aléatoire des tâches.

Topologie CONFIIT Car-sequencing CONFIIT Résolution Expérimentations Conclusion 1 ordinateur = 1 nœud. Gestion de topologie et des communications. Gestion des tâches. Gestion calcul(s). Anneau logique : Connaissance des voisins. Circulation d'un jeton. Calc. Tâches Comm. Comm. Tâches Calc. Calc. Calc. Calc. Calc. Tâches Comm.

Mode de programmation Car-sequencing CONFIIT Résolution Expérimentations Conclusion Application batch : Lanceur ponctuel. Résultats stockés. Lanceur Réception séparée. Code exécutable Java : Fourni par le lanceur. Diffusé sur l'anneau. Récepteur

Conception d'une application Car-sequencing CONFIIT Résolution Expérimentations Conclusion Classe Java implémentant les fonctionnalités. Division du problème initial : Fonction nbtasks. Résolution d'une tâche : Fonction runtask. Collecte du résultat final : Méthode initializeaccumulator. Méthode addresult. Méthode finalizeaccumulator.

Résolution dans CONFIIT Car-sequencing CONFIIT Résolution Expérimentations Conclusion Cadre : confluence de deux domaines : Recherche arborescente. Algorithmique distribuée. Objectif : efficacité en limitant les recoupements des domaines. Algorithmique distribuée : agrégation de ressources. Transparence, efficacité... Recherche arborescente : améliorer le parcours. Filtrage, heuristiques d'ordre...

Division de l'arbre de recherche Car-sequencing CONFIIT Résolution Expérimentations Conclusion Generate-and-Test avec vérification de consistance. Nombre dépend de la profondeur et de la consistance vérifiée.

Problématique de distribution Car-sequencing CONFIIT Résolution Expérimentations Conclusion Recherche arborescente : indépendante de CONFIIT. Programmation C++. CONFIIT développé en Java. Tâches indépendantes (branches de recherche). Mise en commun de la solution globale Arrêt de la recherche si une solution est trouvée. Tâches variables selon l'ordre de résolution. Exploration d'une tâche bornée dans le temps.

Recherche arborescente Car-sequencing CONFIIT Résolution Expérimentations Conclusion Adaptations mineures : Parcours en largeur pour la génération des tâches. Résolution avec pré-instanciation de variables. Une tâche définie par : Problème initial. Chemin d'instanciation des premières variables. Développement du parcours indépendant de CONFIIT.

Architecture de résolution Car-sequencing CONFIIT Résolution Expérimentations Conclusion Lancement : Appel du diviseur externe. Tâches stockées sur un serveur FTP. Résolution : Lanceur Chargement du fichier. Appel du solveur externe. Récepteur

Gestion des résultats Car-sequencing CONFIIT Résolution Expérimentations Conclusion Objectif : arrêter la recherche quand une solution est trouvée. Initialisation de l'accumulateur : Aucune solution. Ajout d'un résultat intermédiaire : Seulement si c'est une solution globale. Calcul d'une tâche : Uniquement si aucune solution globale connue. Sinon, renvoyer le résultat global.

Expérimentations Car-sequencing CONFIIT Résolution Expérimentations Conclusion Problèmes résolus : CSPLib. http://4c.ucc.ie/~tw/csplib/prob/prob001/index.html. Deux séries de problèmes : Série 1 : taux d'utilisation variable. Série 2 : problèmes difficiles satisfiables. Première série : 70 problèmes au total. 1 tâche = 1 problème. Résolution limitée à 15' par tâche.

Taux d'utilisation variable Car-sequencing CONFIIT Résolution Expérimentations Conclusion 59 problèmes résolus (sur 70). 1 nœud : 2h 53' 28''. 2 nœuds : 1h 34' 43''. 3 nœuds : 1h 00' 30''. Taux d'utilisation 1 2 3 4 5 6 7 8 9 10 60 4'' 2'' 2'' 2'' 2'' 2'' 3'' 11'' 3'' 15' 00'' 65 4'' 2'' 2'' 4'' 2'' 6'' 2'' 2' 38'' 2'' 15' 00'' 70 2'' 2'' 3'' 3'' 2'' 8'' 1' 30'' 15' 00'' 3'' 1' 04'' 75 2'' 3'' 3'' 3'' 2'' 3'' 2'' 15' 00'' 15' 00'' 7'' 80 1'' 2'' 15' 00'' 2'' 2'' 3'' 3'' 4'' 15' 00'' 15' 00'' 85 2'' 3'' 3'' 25'' 3'' 2'' 15' 00'' 15' 00'' 2'' 15' 00'' 90 2'' 2'' 2'' 2'' 2'' 2'' 2'' 2'' 3'' 3''

Problèmes difficiles Car-sequencing CONFIIT Résolution Expérimentations Conclusion Deuxième série : 4 problèmes satisfiables. Profondeur 1 et 2. Résolution limitée dans le temps. Résolution non mesurée en séquentiel. Lancement sur un anneau de 3 Pentium 4 à 2,8 GHz. 5 exécutions pour chaque problème.

Profondeur 1, 15' par tâche Car-sequencing CONFIIT Résolution Expérimentations Conclusion 04-72 16-81 26-82 41-66 Exécution Tâches Temps Tâches Temps Tâches Temps Tâches Temps 1 22 1' 35'' 26 45' 19'' 24 25' 17'' 19 59'' 2 22 16' 40'' 26 1h 30' 17'' 24 14' 16'' 19 30' 50'' 3 22 7' 30'' 26 33'' 24 16'' 19 16' 07'' 4 22 24'' 26 1h 44' 20'' 24 45' 19'' 19 15' 34'' 5 22 45' 32'' 26 1h 14' 04'' 24 1h 15' 27'' 19 1' 19'' Moyenne 22 14' 14'' 26 1h 02' 54'' 24 32' 07'' 19 12' 57'' Variation importante de la durée de résolution. Tâche satisfiable trouvée très rapidement (< 1'). Diminution du temps limite par tâche?

Profondeur 1, 2' par tâche Car-sequencing CONFIIT Résolution Expérimentations Conclusion 04-72 16-81 26-82 41-66 Exécution Tâches Temps Tâches Temps Tâches Temps Tâches Temps 1 22 1' 08'' 26 12' 10'' 24 11' 36'' 19 4' 41'' 2 22 5' 06'' 26 16' 09'' 24 4' 46'' 19 2' 56'' 3 22 5' 11'' 26 18' 12'' 24 4' 46'' 19 4' 37'' 4 22 6' 59'' 26 10' 24'' 24 3' 06'' 19 1' 13'' 5 22 1' 02'' 26 18' 12'' 24 1' 02'' 19 3' 12'' Moyenne 22 4' 53'' 26 15' 01'' 24 5' 03'' 19 3' 20'' Résolution plus rapide. Variation plus réduite entre les exécutions. Test à profondeur 2?

Profondeur 2, 2' par tâche Car-sequencing CONFIIT Résolution Expérimentations Conclusion 04-72 16-81 26-82 41-66 Exécution Tâches Temps Tâches Temps Tâches Temps Tâches Temps 1 223 17' 09'' 291 8' 11'' 255 5' 38'' 211 5' 48'' 2 223 5' 38'' 291 57' 16'' 255 16' 48'' 211 12' 57'' 3 223 29' 44'' 291 15' 49'' 255 6' 48'' 211 15' 52'' 4 223 8' 34'' 291 11' 40'' 255 8' 18'' 211 5' 16'' 5 223 6' 07'' 291 27' 27'' 255 10' 43'' 211 14' 47'' Moyenne 223 13' 26'' 291 24' 04'' 255 9' 39'' 211 10' 56'' Résolution moins rapide qu'à profondeur 1. Variation réduite entre les exécutions. Temps perdu après la solution trouvée.

Conclusion Car-sequencing CONFIIT Résolution Expérimentations Conclusion Utilisation de CONFIIT pour la résolution de CSP. Accès simple à une programmation parallèle. Calculs sur des machines hétérogènes. Efficace pour les problèmes satisfiables. Durée limitée sur une tâche. Compromis à trouver entre profondeur et durée. Intérêt moindre pour les problèmes non satisfiables. Pas d'efficacité > 100%.

Perspectives (CONFIIT) Car-sequencing CONFIIT Résolution Expérimentations Conclusion Expérimentations à plus grande échelle. Ordonnancement des tâches. Gestion des données : Base de données. Données distribuées? Autres cadres d'applications : CSP généraux. SAT.