Problèmes à machines parallèles avec serveur Samuel Guirchoun.

22
Problèmes à machines parallèles avec serveur Samuel Guirchoun

Transcript of Problèmes à machines parallèles avec serveur Samuel Guirchoun.

Page 1: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

Problèmes à machines parallèles avec serveur

Samuel Guirchoun

Page 2: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

2

Plan

Présentation Définitions et Objectifs

Etude de cas

Algorithme Présentation et optimalité

Conclusion et perspectives

Page 3: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

3

Introduction

Serveur

Salle Réseau

Applicationrépartie

Modules

Modules terminésM machines identiques

Bus

Page 4: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

4

Introduction

Nous nous intéressons : aux problèmes d’ordonnancement de processus

distants dans les systèmes informatiques

En particulier : Un réseau LAN constitué de plusieurs machines

clientes et un serveur

Lien atelier-informatique : Existe-t-il des modèles d’ordonnancement de

problèmes d’atelier utilisables pour les problèmes client-serveur?

Page 5: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

5

Le problème

Hypothèses Machines distantes identiques Temps de communication/transport négligeables Pas d’interruption des processus (pas de préemption

possible) Chaque processus est chargé par le serveur/robot

sur une machine qui l’exécute (deux opérations par tâche)

Chargement du processus immédiatement suivi de son exécution (contrainte no-wait)

Critère Minimiser l’occupation des machines distantes : Ci

Page 6: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

6

Le problèmeAtelier Réseau LAN

Serveur Deux classes de problèmes abordées : Les problèmes à machines parallèles avec serveur notés

P,S (Hall et al., PMS 1996) Les flow shop hybrides : notés FH2 (Vignier et al., 1999)

Page 7: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

7

Etat de l’art : PS

C. P. Koulamas (1996) P2,S1||Cmax Beam Search

S. A. Kravchenko et F. Werner (1997), N. G. Hall et al. (1996), P. Brucker et al. (2002)

Résultats de complexité : si=s, pi=p et/ou ri

Glass et al. (2000) travaux dédiés

Kravchenko et Werner (2001) Heuristique : si=1 et Ci

Abdekhodaee et Wirth (2002) Heuristiques : si+pi=s+p et Ci

Page 8: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

8

Définition des problèmes P,S

Problèmes à machines parallèles avec serveur : M machines parallèles identiques et un serveur noté S n travaux avec des temps d’exécution pi Chargement, durée si, est réalisé par le serveur si est immédiatement suivi de pi pour tout i (no-wait) M et S ne peuvent réaliser qu’une opération à la fois Chargement si possible si S et une des machines M sont disponibles

(multiressource)

Environnements de production

Informatique : pas de Multiressource

s1

p4

s5 s4 s2 s3

p1

p5 p2

p3

S

M1

M2

Page 9: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

9

Etat de l’art : FH Gupta (1988)

fortement NP-difficiles

Hoogeveen et al. (1996) même pour les version préemptives

Vignier et al. (1999) , Linn et Zhang (1999) état de l’art sur les problèmes de flow shop hybrides

Pinedo (1995) solution optimale avec la règle SPT (Shortest Processing

Time) pour Ci avec : toutes les opérations d’un même travail ont la même durée.

résultat non valide avec le no-wait.

Page 10: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

10

Définition des problèmes FH

Problèmes de type Flow shop hybride : 1 machine au premier étage (le serveur) M machines parallèles identiques au deuxième étage n travaux avec deux opérations oi,1 et oi,2 de durée d’exécution

pi,1 et pi,2. oi,1 est exécutée au premier étage et oi,2 au deuxième oi,1 est immédiatement suivie de oi,2 (no-wait) Toutes les machines ne peuvent exécuter qu’une opération à

la fois

Ces problèmes FH sont connus pour être NP-difficiles.

p1,1

p4,2

p5,1 p4,1 p2,1 p3,1

p1,2

p5,2 p2,2

p3,2

M1,1

M2,1

M2,2

Page 11: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

11

Exemple Diagramme de Gantt P,S

Diagramme de Gantt FH

Serveur

p1,1

p4,2

p5,1 p4,1 p2,1 p3,1

p1,2

p5,2 p2,2

p3,2

M1,1

M2,1

M2,2

s1

p4

s5 s4 s2 s3

p1

p5 p2

p3

S

M1

M2

Page 12: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

12

Reduction

Réduction : FH2,(1,P)|pi,1=s, no-wait| Ci se réduit au

problème P,S1|si=s| Ci (Guirchoun et al., 2003) P2,S1|si=1| Ci O(nlog(n))

Pm,S1|si=1| Ci O(nlog(n))

pi≥m-2

P,S1|si=1| Ci NP-difficile

P2,S1|si=s| Ci NP-difficile

P,S1|pi=1, si=s| Ci O(n)

FH2,(1,P2)|pi,1=1, no-wait| Ci ?

FH2,(1,Pm)|pi,1=1, no-wait| Ci ?

FH2,(1,P)|pi,1=1, no-wait| Ci NP-difficile

FH2,(1,P2)|pi,1=s, no-wait|Ci NP-difficile

FH2,(1,P)|pi,1=s, pi,2=1, no-wait| Ci ?O(n)

Page 13: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

13

Plusieurs cas !

SPT/FAM optimal pour P2||Ci

Trois cas pour FH2,(1,P2)|pi,1=1, no-wait|Ci :

Lorsque pi,2 2 pour tout travail i

Lorsque pi,2 >2 pour tout travail i

Algorithme pour pi,2 >0 pour tout travail i

Page 14: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

14

pi,22 pour tout i Théorème :

Tout ordonnancement semi-actif est une solution optimale pour le problème FH2,(1,P2)|pi,1=1, pi,22, no-wait| Ci.

Preuve : Ci=Ci,1+pi,2 1 machine toujours disponible au deuxième

étage Ci = Ci,1+ pi,2 pi,2= K1 et Ci,1= n(n+1)/2 =K2 Ci = K

Exemple :i pi,1 pi,2

1 1 1/3

2 1 1

3 1 2

4 1 2

5 1 2

Ci = 67/3

1

4

5 42

3 1

5

3M1,1

M2,1

M2,2

t1=1 t2=2

2

Page 15: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

15

pi,2>2 pour tout i

Théorème : SPT/FAM donne une solution optimale pour le problème

FH2,(1,P2)|pi,1=1, pi,2>2, no-wait| Ci en O(n log(n)).

Démonstration SPT/FAM les Ci de deux travaux consécutifs ne coïncident jamais Pas de temps morts sur M2,1 et M2,2 (sauf [0,t1] sur M2,1 et [0,t2] sur

M2,1) On se ramène au problème Pm||Ci pour lequel SPT/FAM donne

l’optimal (Kaspi et Montreuil, 1988)

Exemple :i pi,1 pi,2

1 1 3

2 1 4

3 1 6

4 1 3

5 1 3

1

4

5 4 2 3

1

5

3

M1,1

M2,1

M2,2t1

t2

Ci=33

2

Page 16: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

16

pi,2 quelconques

SPT ne donne pas une solution optimale pour le problème FH2,(1,P2)|pi,1=1,no-wait| Ci

Contre exemple

i pi,1 pi,2

1 1 1

2 1 1

3 1 2

4 1 3

5 1 4

6 1 6

3

1

4

2

1

3

5

4

2

5

6

6Ci=38

1

1

2

2

3

3

4

4

5

5

6

6Ci=39

M1,1

M2,1

M2,2

M1,1

M2,1

M2,2

Page 17: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

17

Algorithme en O(n log(n)): 1=1, 2=2

Déterminer A={ i | pi,2 =1} et B={ i | pi,2 2}

Tant que AB Soit Mk,2 la machine telle que k=min{k | k = 1, 2}

Si (B = ou i compatible de A alors) Placer l’opération oi,2 sur Mk,2 A A \ {i} et k= k+ pi,2

Sinon Placer l’opération oi,2 de B de plus petit pi,2 sur Mk,2 B B \ {i} et k= k+ pi,2

Fin si

Fin tant que

pi,2 >0≥m-1 Algorithme en O(n log(n)):

1=1, 2=2 ,…, m=m

Déterminer A={ i | pi,2 =m-1} et B={ i | pi,2 m}

Tant que AB Soit Mk,2 la machine telle que k=min{k | k = 1, …, m}

Si (B = ou i compatible de A alors) Placer l’opération oi,2 sur Mk,2 A A \ {i} et k= k+ pi,2

Sinon Placer l’opération oi,2 de B de plus petit pi,2 sur Mk,2 B B \ {i} et k= k+ pi,2

Fin si

Fin tant que

Page 18: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

18

Exemple

1 2

M1,1

M2,2

M2,3

M2,1

i 1 2 3 4 5 6 7 8 9 10

pi,1 1 1 1 1 1 1 1 1 1 1

pi,2 2 2 2 2 3 3 4 4 5 6

5 6 7

5

6

73

1

1

8

8

2

2

9

9

3

3

4

4

10

10

1 2 2 23 31 1 1 1

Ci=88

Page 19: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

20

Optimalité de l’Algorithme Deux sous ensembles :

1 =AB1 sous ensemble des travaux ordonnancés jusqu’au dernier travail appartenant à A={ i | pi,2 =m-1}

2 =B2 sous ensemble des travaux ordonnancés restant Avec B=B1B2

M1,1

M2,2

M2,3

M2,1

5 6 7

5

6

7

1

1

8

8

2

2

9

9

3

3

4

4

10

10

11

11

12

12

13

13

1=AB1 2=B2

Page 20: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

22

Reduction

P2,S1|si=1| Ci O(nlog(n)) FH2,(1,P2)|pi,1=1, no-wait| Ci O(nlog(n))

Pm,S1|si=1| Ci O(nlog(n)) pi≥m-2

FH2,(1,Pm)|pi,1=1, no-wait| Ci O(nlog(n)) pi,2≥m-1

P,S1|si=1| Ci NP-difficile

FH2,(1,P)|pi,1=1, no-wait| Ci NP-difficile

P2,S1|si=s| Ci NP-difficile

FH2,(1,P2)|pi,1=p, no-wait| Ci NP-difficile

P,S1|si=s, pi=1| Ci

O(n) FH2,(1,P)|pi,1=s, pi,2=1, no-wait| Ci

O(n)

Page 21: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

23

Conclusion

Algorithme en O(n log(n)) pour résoudre FH2,(1,Pm)|pi,1=1, pi,2m-1, no-wait| Ci

Les problèmes PS et FH2 avec nowait sont très voisins Contrainte de multiressource

Ces deux modèles sont proches d’un réseau LAN Réseau simplifié

Page 22: Problèmes à machines parallèles avec serveur Samuel Guirchoun.

24

Perspectives Modification de l’algorithme pour qu’il soit optimal dans le

cas des pi,2 quelconques Ou tester ses performances en tant qu’Heuristique

Etendre la réduction à d’autres critères : Cmax,…

Se rapprocher d’un réseau informatique : En supprimant le no-wait En incluant des temps de communication En ajoutant les contraintes de précédence En autorisant la préemption (systèmes multitâches) …

D’autres modélisations: Environnement client-serveur : Blazewizc et al.(1996), mémoire

tampon et recirculation « Multiprocessor tasks »