IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

problème d'algorithme d'ordonnacement


Sujet :

Algorithmes et structures de données

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 116
    Points : 49
    Points
    49
    Par défaut problème d'algorithme d'ordonnacement
    Bonjour,

    voici un petit problème d'algorithmique : je souhaite placer n taches sur m machines selon la règle suivante placer la tache suivante sur la machine la disponible plus tot. On connait la date de début souhaité de chaque tache. Objectif minimiser la date de fin d'exécution de la dernière tache de projet.

    J'ai écris cet algorithme. Il ne me semble pas efficace!
    Avez-vous une autre idée d'algorithme pour traiter ce problème?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    i:compteur tache
    k =3: nombre de machine;
    k:machine;
    t(k): date de disponibilité de la machine;
    t(k)=0 quelque soit la machine k;
    J : {j1, j2, j3, j4, j5}ensemble de taches ordonnancées par ordre de priorité
    tant que J<>0 faire
    pour(i=0;i<2;i++) faire
    placer les j1, j2 et j3 respectivement sur k1, k2 et k3;
    corriger la date de disponibilité de la machine k1,k2 et k3;
    enlever j1, j2 et j3 de J;
    pour(i=3;i<5;i++)
    chercher une machine k* disponible au plus tôt(min t(k));
    placer j3 sur k*;
    corriger la date de disponibilité de k*;
    enlever j3 de J;
    fait
    voici un exemple :


    Liste de priorité des taches J: 3, 4, 1, 5, 2(par ordre de durée d'exécution croissant).
    Après, il s'agit de placer la tache qui a la plus petite durée d'exécution sur
    la machines disponible plus tot tant que J <> 0 pour déterminer la séquence
    d'ordonnancement optimale.
    la solution est représentée par ce diagramme :


    Merci d'avance;

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    301
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 301
    Points : 345
    Points
    345
    Par défaut
    Bonjour,

    Ton problème se note dans la littérature (notation de Graham): P|r_i|C_max : problème à machine parallèles identiques avec dates de début au plus tôt et minimisation de la date de fin. Sur le site de Peter Brucker, tu peux trouver la complexité de nombreux problèmes, d'après ce site, le problème P||C_max est NP difficile et tu as même la référence bibliographique:
    M.R. Garey and D.S. Johnson.
    ``Strong'' NP-completeness results: motivation, examples, and implications.
    J. Assoc. Comput. Mach., 25(3):499-508, 1978.
    Elle devrait t'aider à trouver une bonne méthode heuristique ou exacte dans la littérature (science direct, acm, ieee, ...). Tu peux également voir sur le site e-ocea qui propose plusieurs références bibliographiques pour différents types de problèmes d'ordonnancement.

Discussions similaires

  1. problème d'algorithme snake
    Par skysee dans le forum Développement 2D, 3D et Jeux
    Réponses: 7
    Dernier message: 14/11/2007, 20h41
  2. [linprog] Problème avec algorithme simplex
    Par barbylon dans le forum MATLAB
    Réponses: 4
    Dernier message: 12/11/2007, 18h29
  3. problème exo algorithme
    Par greg96 dans le forum Algorithmes et structures de données
    Réponses: 11
    Dernier message: 17/06/2007, 15h25
  4. Réponses: 10
    Dernier message: 23/05/2007, 09h30
  5. problème d'algorithme pour trouver les circuit d'un graphe
    Par marc_dd dans le forum Algorithmes et structures de données
    Réponses: 11
    Dernier message: 21/08/2006, 16h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo