Semi-matching algorithms for scheduling parallel tasks under resource constraints
Résumé
We study the problem of minimum makespan scheduling when tasks are restricted to subsets of the processors (resource constraints), and require either one or multiple distinct processors to be executed (parallel tasks). This problem is related to the minimum makespan scheduling problem on unrelated machines, as well as to the concurrent job shop problem, and it amounts to finding a semi-matching in bipartite graphs or hypergraphs. The problem is known to be NP-complete for bipartite graphs with general vertex (task) weights, and solvable in polynomial time for unweighted graphs %with unit weights (i.e., unit-weight tasks). We prove that the problem is NP-complete for hypergraphs even in the unweighted case. We design several greedy algorithms of low complexity to solve two versions of the problem, and assess their performance through a set of exhaustive simulations. Even though there is no approximation guarantee for these low-complexity algorithms, they return solutions close to the optimal (or a known lower bound) in average.
On étudie le problème d'ordonnancement visant à minimiser le temps d'exécution lorsque les tâches peuvent être exécutées soit sur un seul processeur, soit sur plusieurs processeurs en parallèle, et sont restreintes à cer- tains sous-ensembles de processeurs. Le problème se ramène à devoir trouver un couplage partiel dans un graphe biparti ou dans un hypergraphe. Sur les graphes bipartis, le problème général est NP-complet, mais il est possible de résoudre en temps polynomial les instances de problèmes où toutes les tâches sont de poids unitaire. Nous montrons dans ce rapport que le problème devient NP-complet pour les hypergraphes même dans le cas unitaire. Nous proposons plusieurs algorithmes gloutons pour résoudre deux versions du problème, et nous étudions leur performance à travers des simulations. Bien qu'il n'y ait aucune garantie d'approximation sur ces algorithmes, ils retournent en moyenne des so- lutions proches de l'optimal (ou d'une borne inférieure connue), avec un temps d'exécution très rapide.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...