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 :

Ordonnancement de tâches


Sujet :

Algorithmes et structures de données

  1. #1
    Rédacteur

    Inscrit en
    Septembre 2004
    Messages
    626
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 626
    Points : 848
    Points
    848
    Par défaut Ordonnancement de tâches
    Bonjour,


    Pouvez-vous m'indiquer s'il existe un algo pour résoudre ce genre de pb : j'ai un ensemble de tâches T(i). Certaines tâches ont des contraintes et ne doivent être exécutées qu'après que d'autres tâches se soient terminées.
    J'ai une durée d'exécution pour chaque tâche, et je peux exécuter au plus N tâches en parallèle.
    Comment ordonnancer ces tâches de sorte que le temps total soit minimum ?


    Merci pour votre aide.


    Laly.
    In the heart of the truly greats, perfection is never achieved but endlessly pursued.

    Mon article sur les fonctions analytiques d'Oracle (calcul de moyennes mobiles, de quartiles et bien d'autres...)

  2. #2
    Membre confirmé
    Profil pro
    Directeur Scientifique
    Inscrit en
    Avril 2005
    Messages
    419
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur Scientifique

    Informations forums :
    Inscription : Avril 2005
    Messages : 419
    Points : 554
    Points
    554
    Par défaut
    C'est un problème NP - complet. Un résultat théorique classique dû à Graham dit que n'importe quel ordonnement de liste (cela consiste à exécuter une tâche dès que possible) donne un résultat dont la durée est au plus 2-1/N fois celle de l'optimum. (N est dans ton message le nombre de tâche max qu'on peut exécuter en parallèle).
    Pour avoir un bon ordonnancement en pratique, il peut être utile de faire un peu de recherche par voisinage pour améliorer un tel ordonnancement de liste.

  3. #3
    Membre expérimenté
    Avatar de Patriarch24
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    1 047
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2003
    Messages : 1 047
    Points : 1 640
    Points
    1 640
    Par défaut
    Il doit exister une tonne et demi d'articles sur le net sur le sujet.
    Je préconise google... car je suis pas en mesure d'expliquer maintenant comment on peut faire ca !

    http://mathematiques.ac-bordeaux.fr/...htm#Exercice38
    un exo traitant d'un truc semblable (algorithmes de flots minimum) est sur ce lien.
    En premier lieu, utilisez un moteur de recherche.
    En second lieu, postez sur le forum adéquat !

  4. #4
    Rédacteur

    Inscrit en
    Septembre 2004
    Messages
    626
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 626
    Points : 848
    Points
    848
    Par défaut
    Merci bcp pour ces réponses qui vont me permettre de démarrer.

    Par contre au niveau des méthodes Pert et MPM, je ne vois pas de limitation par rapport au nb max de tâches pouvant être exécutées concurremment. Mais je vais voir s'il existe une variation de ces algo me permettant de mettre rapidement qqchose en place.


    Laly.
    In the heart of the truly greats, perfection is never achieved but endlessly pursued.

    Mon article sur les fonctions analytiques d'Oracle (calcul de moyennes mobiles, de quartiles et bien d'autres...)

  5. #5
    Membre confirmé
    Profil pro
    Directeur Scientifique
    Inscrit en
    Avril 2005
    Messages
    419
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur Scientifique

    Informations forums :
    Inscription : Avril 2005
    Messages : 419
    Points : 554
    Points
    554
    Par défaut
    Effectivement, le PERT donne un ordonnancement qui peut avoir plus de N tâches en parallèle. A partir de là, il est possible de repérer un ensemble de plus de N tâches qui ont lieu en même temps puis de rajouter des précédences (de manière heuristique) entre quelques unes de ces tâches. Pour l'heuristique, on peut utiliser les marges.

Discussions similaires

  1. Ordonnancement de tâches dans GWT avec la classe Scheduler
    Par Mickael Baron dans le forum GWT et Vaadin
    Réponses: 0
    Dernier message: 03/04/2012, 22h37
  2. Ordonnancement de tâches
    Par logo98 dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 30/06/2009, 15h24
  3. ordonnancement des tâches en c
    Par Moine dans le forum C
    Réponses: 4
    Dernier message: 12/09/2007, 21h37
  4. ordonnancement, graphes, tâches
    Par AP dans le forum Algorithmes et structures de données
    Réponses: 8
    Dernier message: 12/09/2006, 10h13

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