Apprentissage interactif de la théorie des graphes
Apprentissage interactif de la théorie des graphes
Guest User
Using app without sign in
Guides d'étude en théorie des graphes
Téléchargement immédiat · Accès à vie
Besoin d'un accompagnement personnalisé ?
Des séances individuelles sur RCPSP (Ordonnancement de Projet sous Contraintes de Ressources) pour vos études, un entretien ou un projet d'optimisation.
Solveur d'ordonnancement sous contraintes de ressources
Planifie les tâches du projet en respectant à la fois les contraintes d'antériorité et les limites globales des ressources.
Sélectionnez un algorithme et générez les étapes pour commencer la visualisation
Le problème d'ordonnancement de projet sous contraintes de ressources (RCPSP) ordonnance les activités d'un projet en respectant à la fois les contraintes de précedence et des ressources renouvelables limitées comme la main-d'œuvre, les machines ou le budget par période. Contrairement à la CPM, qui suppose des ressources illimitées, le RCPSP est fortement NP-difficile.
Les heuristiques par règles de priorité construisent des ordonnancements avec le schéma de génération série ou parallèle : les activités sont insérées au plus tôt où précédence et disponibilité des ressources sont toutes deux satisfaites, ordonnées par des règles comme le plus de successeurs totaux ou la marge minimale. Les approches exactes utilisent la séparation et évaluation avec des bornes inférieures fondées sur les ressources, et les métaheuristiques, notamment les algorithmes génétiques à codage en liste d'activités, dominent les benchmarks standard PSPLIB.
Le RCPSP pilote l'ordonnancement des équipes et équipements de chantier, la planification des sprints d'équipes logicielles sous limites d'effectifs, la programmation des arrêts de maintenance en raffinerie et la planification de production en fabrication à la commande. C'est le pont canonique entre les algorithmes de graphes et la recherche opérationnelle industrielle.
Le RCPSP, c'est CPM plus des ressources limitées, et ce seul ajout le fait passer de linéaire à NP-difficile. L'approche pratique est une heuristique d'ordonnancement en série guidée par une règle de priorité.
RCPSP(activites, dependances, capacites):
ordre = triTopologique(activites)
trier ordre selon une regle de priorite
// p. ex. marge minimale, ou plus longue duree d abord
pour chaque activite a dans l ordre priorise:
t = max(fin[p] pour p predecesseur de a)
tant qu une ressource r est saturee sur
[t, t + duree[a]):
t = t + 1 // repousser jusqu a ce que ca tienne
debut[a] = t; fin[a] = t + duree[a]
reserver les ressources de a sur cet intervalle
duree du projet = max(fin[a])La différence avec CPM est que le début d'une activité n'est plus fixé par ses seuls prédécesseurs: il peut être repoussé parce qu'une activité sans aucun lien occupe la machine. Cela détruit précisément la propriété qui rendait CPM linéaire, puisque la décision sur une activité affecte désormais des activités avec lesquelles elle n'a aucune dépendance. Aucune quantité de programmation dynamique sur l'ordre topologique ne suffit donc.
Ordonnance quatre activités qui se disputent une unique ressource de capacité 1, et compare le résultat à ce que prédirait CPM.
Graphe d'exemple: Activités A (3 jours), B (2 jours), C (4 jours) et D (2 jours), A et B précédant C, et C précédant D. Toutes requièrent la même machine, dont il n'existe qu'un exemplaire.
Avec des ressources illimitées le projet dure 9 jours; avec une seule machine il en dure 11. Les deux jours supplémentaires ne proviennent d'aucune dépendance mais purement de la contention de ressource. Note en outre que la notion de chemin critique devient glissante ici: la chaîne qui gouverne la date de fin inclut désormais l'attente de B pour la machine, ce qui n'est nullement une relation de précédence. C'est pourquoi les calendriers CPM sur des projets à ressources rares se révèlent systématiquement optimistes.
Temps: NP-difficile; heuristique en série O(V^2 · R) · Espace: O(V · R)
L'heuristique d'ordonnancement en série traite chacune des V activités une fois et peut devoir, pour chacune, repousser l'instant de début en vérifiant la disponibilité des R ressources, ce qui donne de l'ordre de O(V au carré fois R) au pire avec une implémentation directe. C'est rapide et cela passe à l'échelle sur des milliers d'activités. Ce que cela ne fournit pas, c'est une garantie d'optimalité. Le RCPSP exact est NP-difficile et compte parmi les problèmes d'ordonnancement les plus coriaces de la recherche opérationnelle: des instances de référence de 60 activités seulement sont restées non résolues pendant des années. La séparation et évaluation exacte reste viable autour de 30 à 60 activités selon la structure, et au-delà on se tourne vers des métaheuristiques comme les algorithmes génétiques ou la recherche tabou.
Choisis selon que les ressources sont réellement limitantes et selon que tu exiges une garantie d'optimalité.
| Alternative | À préférer quand | Coût |
|---|---|---|
| CPM | Les ressources sont abondantes et ne contraignent rien. Linéaire et exact. | O(V + E) |
| Heuristique d'ordonnancement en série | Grandes instances. Rapide, simple, et généralement à quelques pour cent de l'optimum avec une bonne règle de priorité. | O(V^2 · R) |
| Séparation et évaluation exacte | Quelques dizaines d'activités et tu veux le calendrier optimal démontrable. | exponentiel |
| Métaheuristiques | Des centaines d'activités où la qualité prime sur la garantie. Algorithmes génétiques, recherche tabou, recuit simulé. | variable |
| Nivellement des ressources | La durée est fixée et tu veux lisser les pics d'utilisation plutôt que minimiser le délai. | NP-difficile |
Lire l'article complet: Graph Theory in Project Management
Lire l'article complet: Operations Research and Graph Theory
Algorithmes associés: Méthode du Chemin Critique (CPM), PERT (Technique d'Évaluation et de Revue de Programme), Tri Topologique