1 ordonnancement des mouvements de deux robots d'une machine d'analyse de produits...

28
1 onnancement des mouvements de deux robots ne machine d'analyse de produits sanguins. . Baptiste (École Polytechniques de Montréal), . Cheurfa (École des Mines de Saint Etienne)

Upload: viviane-monin

Post on 03-Apr-2015

103 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

1

Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins.         

P. Baptiste (École Polytechniques de Montréal), M. Cheurfa (École des Mines de Saint Etienne)

Page 2: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

2

plan

• Contexte du travail.

• Position du problème.

• Modélisations du problème.

• Méthodes de résolution.

• Conclusion.

Page 3: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

3

Contexte du travail

Page 4: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

4

NOVILOIRE18, avenue du Polygone

42300 RoanneTel : 04 77 44 49 80Fax : 04 77 44 49 88

•Créé au début des années 80;•Conception et fabrication des automates d'analyses.

Entreprise

Page 5: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

5

,

La machine d’analyse

P3Plaque d’analyse

P2 Réactifs

P1Échantillons

P4Plaque d’analyse

R2R1

N1 N2

Page 6: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

6

Caractéristiques de la machine

•À la fin de chaque prise, on procède à un nettoyage : ce temps de nettoyage est le même pour les deux robots.

• Le plateau P1 peut être accédé par R1et par R2 en même temps.

• Le plateau P2 ne peut être accédé par R1et par R2 en même temps.

• Le plateau P3 peut être accédé seulement par R1.

• Le plateau P4 peut être accédé seulement par R2.

•Le temps de déplacement des robots entre deux plateaux est identique.

Page 7: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

7

P4

P3

P2

P1

P’1

N1

N2

Passage des jobs traités par R1

Passage des jobs traités par R2

Schématisation des mouvements

Page 8: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

8

Types de Jobs

• Jobs affectés au robot R1.

• Jobs affectés au robot R2.

• Jobs non encore affectés.

Contraintes de précédences entre les jobs.

Page 9: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

9

Position du problème

Page 10: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

10

Ordonnancement des jobs en vue de minimiser la durée totale des analyses.

Objectif

Page 11: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

11

Modélisations du problème.

Page 12: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

12

Modélisation du problème (1)

1. Affecter les jobs non encore affectés;

2. Établir une partition des jobs devant se faire sur chaque robot;

3. Ordonnancer chacune des deux listes;

4. Simuler l'ordonnancement en choisissant dans chaque liste avec une règle de priorité.

Page 13: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

13

Liste des jobs sur R1 Liste des jobs sur R2

Mouvements sur R2 Ordonnancés

ordonnancementordonnancement

Mouvements sur R1 Ordonnancés

Règle de priorité

L’ensemble des Mouvements sur R1 et R2 Ordonnancés

Page 14: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

14

1. Affecter les jobs non encore affectés;

2. Créer une seule liste en combinant les deux types de Jobs;

3. Ordonnancer les jobs au plus tôt dans l'ordre d'apparition.

Modélisation du problème (2)

Liste des tous les jobs affectés

ordonnancement

L’ensemble des Mouvements sur R1 et R2 Ordonnancés

Page 15: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

15

L'algorithme de résolution

Remarque:

L’affectation des jobs aux robots influe considérablement sur la durée de réalisation des analyses.

Affecter les jobs non affectés

Choisir un ordre aléatoire initial

Optimiser l'ordre initial.

Page 16: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

16

Résolution du problème.

•Problème d’ordonnancement–Méthode descente;–Méthode Tabou.

•Problème d’affectation–Algorithme d équilibrage de charges;

–Algorithme exploitant importance de position;

–Algorithme exploitant la structure du graphe de precédences.

Page 17: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

17

DébutPasTrouvé:=0;Tant que PasTrouvé < BorneSup faire Début

Chercher un voisin de la solution;Si le voisin est meilleur alors

Débutadopter cette solution;PasTrouvé:=0;

SinonPasTrouvé:= PasTrouvé+1;

FinFin

Descente1

Le voisinage retenu est une permutation aléatoire de deux jobs dans la liste

Page 18: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

18

DébutPasTrouvé:=0;Tant que PasTrouvé < BorneSup faire Début

Chercher un voisin de la solution;Si le voisin est meilleur ou égal alors

Débutadopter cette solution;

Si le voisin est strictement meilleur alors PasTrouvé:=0;

SinonPasTrouvé:= PasTrouvé+1;

FinFin

Descente2

Nous avons accepté "d'explorer" des plateaux de solutions équivalentes pour trouver une "meilleure".

Page 19: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

19

•L ’efficacité de la Descente 2 par rapport à la Descente 1 se justifie par l’existence de nombreuses solutions équivalentes.

•Le système doit parcourir un grand espace de solutions avant de trouver la meilleure.

Remarques

Page 20: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

20

La méthode Tabou

Le voisinage: une permutation de deux jobs de la liste.

Liste tabou: • Taille de la liste: fixée 7 éléments;

• Contenu de la liste: la relation d'antécédence qui existait entre les deux opérations permutées.

•La fonction de coût est très plate.

•La méthode Tabou est moins efficace que les méthodes de descentes.

Remarque:

Page 21: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

21

Algorithmes de pré-affectation

Une bonne affectation des jobs nous permettra de diminuer la borne inférieure, et d’améliorer la qualité de la solution.

Borne inférieure théorique:

BI= (T1+T2+T3)/2

T1: total des jobs affectés au robot R1;T1: total des jobs affectés au robot R2;T1: total des jobs non affectés;

Page 22: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

22

Algorithme1: équilibrage des charges des robots.

 

DébutCalculer la charge de chaque robot;Tant qu'il reste des tâches non

affectées faire Début

Prendre la première non affectée;

L’affecter au robot le moins chargé;

Mettre à jour l'affectation de ce robot.

FinFin.

Inconvénient Cet algorithme induit des problèmes lorsque des tâches affectées à un seul robot précèdent les autres : le second robot ne travaille pas au début de l'ordonnancement et équilibrer la charge revient à surcharger le second dans la suite.

Page 23: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

23

Exemple

1 2 3

4 19 29 39 49 59 69 79 89 99 109 119 129 139 149

5 6 7 8

10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160

Jobs affectés au R1

R1

Jobs à affecter au R2.

R2

Page 24: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

24

Algorithme2:importance de position.

Début Calculer pour chaque tâche la somme des durées de tous ses successeurs (importance de position); Classer les tâches par ordre décroissant de cet indicateur ; Tant qu'il reste des tâches non affectées faire

Début Chercher le robot qui s'arrête le premier;

Chercher la première tâche plaçable dans la liste; Affecter cette tâche à ce robot.

Fin Fin.

Inconvénient Si les dernières tâches sont toutes affectées au même robot, le résultat sera mauvais.

Page 25: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

25

Exemple

1 2 3

4 19 29 39 49 59 69 79 89 99 109 119 129 139 149

5 6 7 8

10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160

Jobs affectés au R1

R1R2

Jobs à affecter au R1.

R1

Jobs à affecter au R2.

Page 26: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

26

Algorithme3: structure du graphe de precédences.

DébutClasser les tâches en deux groupes : G1 : tâches ayant dans leur successeurs au moins une tâche affectée;

G2 : les autres;Classer les groupes G1 et G2 par ordre décroissant de la sommes des

durées des successeurs;Tant qu'il reste des tâches non affectées faire Début

Prendre le premier robot qui s’arrête;Chercher dans G1 la première tâche affectable à ce robot;Si trouvé alors la placerSinon Chercher une dans G2 et la placer.

FinFin

Page 27: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

27

Conclusion

Page 28: 1 Ordonnancement des mouvements de deux robots d'une machine d'analyse de produits sanguins. P. Baptiste (École Polytechniques de Montréal), M. Cheurfa

28

Résolution préconisée

• 3 ème Algorithme d’affectation;

• Descente 2 (acceptation des voisins égaux).