Vous êtes sur la page 1sur 16

Ordonnancement dans les ateliers. Cours donn par le Dr.

DERBALA Ali

Chapitre 8 : Rsolution approche des problmes difficiles Le but de ce chapitre est de prsenter une classe de mthodes pour rsoudre les problmes d'optimisation combinatoire NP-difficiles : les heuristiques et les mta-heuristiques. 1. Les heuristiques : Prsentation gnrale Une mthode approche ou heuristique pour un POC est un algorithme qui a pour but de trouver une solution ralisable, tenant compte de la fonction objectif, mais sans garantie

problmes NP-difficiles et la conjecture P NP fait qu'il est peu probable qu'il en existe. Les mthodes exactes ont une complexit exponentielle sur ces problmes, et seules les heuristiques peuvent rsoudre des cas de grande taille. En pratique, on trouve beaucoup de problmes mal formuls, ou ayant de nombreuses contraintes, ou encore de complexit inconnue. Mme si le problme est facile, l'ajout de dpart une approche heuristique, beaucoup plus facile modifier. inventer. On distingue cependant les grands types suivants qui vont tre dtaills. nouvelles contraintes peut le rendre NP-difficile. Dans ces conditions, il vaut mieux ds le Il existe un trs grand nombre d'heuristiques selon les problmes traiter, et il est ais d'en a) mthodes construisant une seule solution, par une suite de choix partiels et dfinitifs. On faire le choix le plus avantageux.

b) Recherches locales, appeles recherches de voisinages (neighborhood or local search). On solutions de cots dcroissants. Le processus s'arrte quand on ne peut plus amliorer la solution courante. c) Recherches globales ( global search ). Une recherche locale peut tre pige dans un heuristiques" sortent de ces piges en construisant aussi une suite de solutions, mais dans

2. Evaluation des heuristiques Le problme de l'valuation des heuristiques est crucial. Elles n'offrent aucune garantie d'optimalit : elles peuvent trouv l'optimum pour certaines donnes ou en tre trs loignes.

laquelle la fonction conomique peut temporairement remonter.

minimum local. Les mthodes dites de recherche globale, appeles aussi " mta-

IV

ER

SI

part d'une solution initiale et par transformations successives, on construit une suite de

TE

SA

les appelle " mthodes gloutonnes " ( greedy ) quand elles cherchent chaque itration

Rsolution approche des problmes difficiles

129

LA

BL

d'optimalit. On a vu prcdemment qu'on ne connat pas d'algorithmes polynomiaux pour les

ID

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

Supposons qu'on tudie un POC pour lequel on dispose dj d'une mthode exacte, optimale, de rfrence. Pour une heuristique H et une donne d, on note H(d) le cot de la solution heuristique et OPT(d) le cot optimal. On appelle " performance relative " de H sur d le quotient RH(d) = de minimisation, RH(d) 1. On prfre parfois " la distance l'optimum " en % : de l'algorithme. H (d ) . Pour un problme opt (d)

relative peut tre borne priori ou tre imprvisible et constate posteriori, aprs excution

2.1. Evaluation priori : performance relative au pire ( worst case performance ratio ) On appelle performance relative au pire PH d'une heuristique H sa plus mauvaise performance relative sur l'ensemble des donnes possibles, PH = max{R H (d)} . {d}

une heuristique H avec un PH = 1.5 pour un POC donn signifie que cette heuristique n'est un cart de 50% semble dcevant mais certains problmes difficiles n'ont mme pas d'heuristique avec une performance relative au pire gale une constante c. Les pires carts l'optimum sont souvent obtenus sur des problmes thoriques construits Les heuristiques peuvent tre trs bonnes en moyenne sur des problmes pratiques. exprs.

On n'a pas pu trouver pour les performances relatives au pire, l'quivalent de la transformation polynomial des problmes NP-complets. Par consquent, une bonne heuristique pour un problme NP-difficile ne permet pas d'en dduire une aussi bonne pour un autre problme NP-complet. 2.2. Evaluation posteriori a) bornes infrieures de l'optimum

IV

ER

SI

TE

jamais plus de 50% de l'optimum.

SA

rsultat est en gnral trs difficile obtenir et on n'en connat que pour quelques problmes.

construit une donne montrant que ce pire cas peut tre effectivement atteint. Ce genre de

Rsolution approche des problmes difficiles

Les dmonstrations se font en deux temps : on borne RH(d) pour toute donne d, puis on

130

H et non par des statistiques ou par numration des donnes possibles.

C'est une garantie de performance, qu'on obtient mathmatiquement par analyse thorique de

LA B

BL I

100 ( RH(d) -1 ). La performance

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

Le plus souvent, on ne sait pas tablir mathmatiquement le comportement au pire. On ne peut alors valuer les rsultats qu'aprs excution de l'heuristique H. Pour valuer le rsultat pour une donne d, on peut calculer la performance relative RH(d) condition de connatre l'optimum. Mais il n'existe pas de mthode exacte de complexit polynomiale pour les problmes NP-difficile. La valeur exacte de l'optimum n'est donc pas calculable en une dure acceptable pour les POC de grande taille. On peut cependant obtenir une valuation moins serre si on dispose d'une "valuation par dfaut", un minorant, B(d) pour l'optimum opt(d). H (d ) H (d ) . opt (d) B(d)

toujours trouver des bornes infrieures, mmes grossires, de l'optimum opt(d). b) Evaluation statistique

Mme si on connat la performance relative au pire, elle peut tre trs mauvaise ou atteinte seulement sur des cas particuliers. L'heuristique peut tre bonne en moyenne. Une valuation alatoirement une srie de problmes, qui comprend typiquement 100 problmes. Pour chaque sur un fichier le numro du problme, la borne infrieure calcule, et l'optimum opt(d) si on statistique est recommande. Pour valuer k heuristiques H1, H2,, Hk, on gnre

pour une srie de problmes peut se faire par le programme qui a excut les heuristiques, par un programme spar ou par un logiciel de statistiques. 3. Recherches locale et globales 3.1. Mthodes de recherche locale procder, itrativement en examinant le voisinage de la solution courante, dans l'espoir d'y

dtecter des directions de recherche prometteuses. Dans les problmes d'optimisation sur un espace continu, cette ide se concrtise, dans des mthodes de gradient ( steepest descent ) dont on peut prouver, sous certaines hypothses ( rgularit, convexit ou concavit de la

fonction optimiser, la convexit de l'ensemble des solutions admissibles ), qu'elles conduisent un optimum global. Lorsqu'on travaille sur un ensemble discret de solutions, on peut appliquer, un algorithme de descente ( ou de plus forte descente ) si l'on dispose :
Rsolution approche des problmes difficiles 131

IV

Une des ides les plus fcondes et les plus utilises dans les mthodes d'optimisation est de

ER

SI

TE

SA

rsultats de chaque heuristiques tester et le temps d'excution. L'exploitation des rsultats

dispose d'une mthode exacte. Pour chaque problme et chaque heuristique, on note les

matrice de donnes, on excute les k heuristiques valuer. On stocke dans des tableaux ou

LA

BL

En particulier si H(d) = B(d), alors on s'est " posteriori" qu'on a atteint l'optimum. On peut

ID

Alors RH(d) =

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

d'une notion de voisinage qui structure l'espace de solutions; d'un moyen efficace pour trouver la meilleure ( ou une bonne ) solution dans le voisinage d'une solution quelconque.

son voisinage. Ce qui est la dfinition d'un optimum local. Un schma gnral d'algorithme de descente est du type: Algorithme 1 ( de descente )

Si = ( 1, 2, , n ) est une permutation de tches : le voisinage " k-opt" : toutes les permutations qui peuvent s'obtenir en rejetant k tches

3.2. Mthodes de recherche globale

minimum local. Leur conception commence par l'tude d'une recherche locale, dfinition d'un voisinage avec transformations simples, que l'on promet en recherche globale si elle s'avre insuffisante. Il s'agit des mthodes appeles aussi " Mta-heuristiques ".

Ces mthodes sont des recherches locales modifies dans l'espoir d'viter le pigeage dans un

IV

ER

C'est ce type de voisinage qui est utilis dans une heuristique de descente.

SI

de la permutation courante.

TE

le voisinage " 2-change" consiste en la permutation de 2 tches quelconques

SA

On suppose que pour toute solution x , il est dfini un ensemble V() de solution voisines de x . Initialisation : soit x0 , une solution courante; Etape n : soit xn , la solution courante; Slectionner une solution x* V(xn ); Si F(x*) F(xn ); Faire xn+1 = x* et passer l'tape n + 1 Sinon xn est la meilleure solution trouve; Stop.

Rsolution approche des problmes difficiles

132

LA

BL I

L'algorithme s'arrte lorsque la solution courante est meilleure que la solution courante dans

l'on trouve une solution meilleure que la solution courante dans le voisinage de celle-ci.

Partant d'une solution initiale quelconque, on progresse alors " de proche en proche ", tant que

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

LE RECUIT SIMULE ( simulated annealing )


Le " recuit simul" a t invent par Kirkpatrick, Gelatt et Vecchi ( 1983 ). Ils ont pu rsoudre quasi-optimalement des problmes de voyageur de commerce 5000 sommets. Ils s'inspirent de la mthode de simulation de Mtropolis ( 1950 ) en mcanique statistique. L'analogie s'inspire du " recuit des mtaux " en mtallurgie. Un mtal refroidi trop vite prsente de le refroidit lentement, les atomes se rarrangent, les dfauts disparaissent et le mtal a une L'nergie d'un systme est reprsente par un rel T, la temprature. Une mthode de recuit On tire au sort une transformation, une solution s' de V(s) au lieu de chercher la On construit la solution rsultante s' et sa variation de cot f = f(s') - f(s). recherche locale ( s : = s' ).

puis on tire au sort une valeur p de [ 0, 1]. Si p a, la transformation est accepte bien qu'elle dgrade le cot, et on fait s : = s'. Sinon, la transformation est rejete : on conserve s pour l'itration suivante. = n T, k < 1 mais proche de un. On peut aussi dcrotre T par paliers. Pour tre efficace, un recuit doit diminuer T assez lentement, en plusieurs milliers ou dizaines de milliers d'itrations. Il dure beaucoup plus longtemps qu'une recherche locale. On s'arrte quand T atteint un seuil fix , proche de zro. Le rglage des paramtres est Pour assurer la convergence, T est diminue lentement chaque itration, par exemple T :

assez dlicat. Il est prudent de prvoir deux tests d'arrt supplmentaires : un limitant le nombre d'itrations une valeur MaxIter, et un limitant le nombre d'itrations sans changement de cot une valeur MaxGel. MaxGel doit tre assez grand. Contrairement une recherche locale, un recuit simul o un refroidissement trop rapide donne une solution finale qui n'est pas la meilleure trouve.

IV

ER

SI

TE

SA

dsires. On calcule une probabilit d'acceptation ( fonction de Bolzman ) a = e(f) /

temprature est basse et que (f) est grand. Une fonction exponentielle a les proprits
T

Si (f) > 0, le cot remonte, c'est un rebond, qu'on va pnaliser d'autant plus que la

Si (f) 0, le cot diminue et on affecte la transformation amliorante comme dans une

LA

meilleure ou la premire solution voisine amliorante.

E
,
133

simul s'obtient :

Rsolution approche des problmes difficiles

BL

structure ordonne, quivalent du minimum global pour un POC.

ID

nombreux dfauts microscopiques, c'est l'quivalent d'un minimum local pour un POC. Si on

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

Il vaut mieux stocker en cours de route toute solution amliorante. Les valeurs typiques sont MaxIter = 10.000, = 10-2, MaxGel = 200, k = 0.9995. Algorithme 2 ( Gnral du recuit simul ) Le schma gnral du recuit est : Construire une solution initiale quelconque s Z* : = f(s) { meilleur cot obtenu } S* : = s { meilleure solution connue } Initialiser T et Initialiser MaxIter et MaxGel NIter : = 0 { nombre d'itrations} NGel : = 0 { nombre d'itrations sans amliorations } Rpter NIter : = NIter + 1 Tirer au sort une solution s' dans V(s) Calculer la variation de cot (f). Si (f) < 0 Alors Accept : = vrai Sinon Tirer au sort p dans [ 0, 1] Accept : = p exp(-(f)/T) FS Si Accept alors Si (f) = 0 alors NGel : = Ngel + 1 Sinon NGel : = 0 Si f(s') < Z' alors Z* : = f(s') S* : = s' FS S : = S' FS T : = kT Jusqu' ( T ) ou ( NbIter = MaxIter ) ou ( NGel = MaxGel )

U N

IV

ER

SI

TE

SA

Rsolution approche des problmes difficiles

134

LA

BL I

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

LES METHODES TABOUES


a) principe Les recherches taboues ont t invent par Glover ( 1985 ). Elles sont de conception plus rcente que le recuit, n'ont aucun caractre stochastique et paraissent meilleures temps d'excution gal. Elles sont caractrises par trois points: A chaque itration, on examine compltement le voisinage V(S) de la solution actuelle s, et on va sur la meilleure solution s', mme si le cot remonte. On s'interdit de revenir sur une solution visite dans un pass proche grce une liste dans V(s) - T. -

On conserve la meilleure solution trouve, contrairement au recuit, c'est rarement la dernire. On stoppe aprs un nombre maximal d'itrations sans amliorer la meilleure lequel le voisinage tout entier peut se retrouver enferm dans T. l'heuristique va s'chapper de la rgion V(s) en empruntant un " col ". solution ou quand V(s) - T = . Il ne se produit que sur de trs petits problmes pour

b) la liste tabou

Le point dlicat est la capacit NT de la liste taboue T. Glover montre que NT de 7 20 suffit pour empcher les cyclages, quelle que soit la taille du problme. A chaque itration, la NT-ime transformation de T, la plus ancienne, est crase par la file ". En thorie, il faudrait stocker les NT dernires solutions sur lesquelles l'algorithme est T fonctionne comme une " mmoire court terme ".

pass. En ordonnancement, il faudrait conserver les NT dernires permutations des n tches. Si la solution actuelle es " s ", la prochaine solution sur laquelle on va se dplacer doit tre

dans V(s) - T. Il faut vrifier que la permutation gnre n'est pas dj dans T.

IV

dernire effectue. En pratique, T se gre simplement avec une structure de donnes de type "

ER

SI TE

SA

minimum local. Les amliorations deviennent de plus en plus rares au cours des itrations.

Rsolution approche des problmes difficiles

recherche locale. On voit ensuite le cot osciller puis redescendre vers un meilleur

135

En dbut de calcul, la mthode trouve une suite de solutions amliores, comme une

Une mthode taboue chappe aux minima locaux, mme si s est un minimum local,

LA

BL

taboue T stockant de manire compacte la trajectoire parcourue. On cherche donc s'

ID

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

Les voisinages considrs tant souvent grands, il est vident que le test rptitif de prsence dans T est trs coteux, sans parler de la mmoire ncessaire pour coder le dtail de NT solutions. Le stockage explicite des solutions n'est donc jamais pratiqu. On recommande les critres moins coteux pour viter le cyclage. Ces critres sont aussi plus restrictifs : ils peuvent interdire certains mouvements qui ne conduiraient pas un cyclage. Les plus utiliss de ces critres consiste stocker dans T les transformations ayant permis de changer de solution, et d'interdire de faire les transformations inverses pendant NT itrations, dans une permutation pendant NT itrations. Un critre plus simple est d'interdire d'utiliser les on stockerait les deux tches permutes chaque itration, et on s'interdirait de les remettre NT dernires valeurs de la fonction objectif. Il suffit de stocker un nombre par itration. Algorithme 3 : ( gnral Tabou )

Construire une solution initiale " s " et calculer son cot Z = f(s) Z* : = Z { meilleur cot obtenu } S* : = s { meilleure solution connue } Initialiser MaxIter { nombre maximum d'itrations } T : = { la liste tabou T est vide } NIter : = 0 Rpter NIter : = NIter + 1 {exploration du voisinage V(s) de s } Z" : = + Pour toute solution s' de V(s) Si s' T alors { si s' n'est pas taboue } si f(s') < Z" alors { mise jour du voisin " le moins pire " } s" : = s' Z" : = f(s') Stocker l'inverse de la transformation dans u FS FS FP Si Z" < + alors { si un voisin non tabou a t trouv } S : = s" Z : == Z" Enlever la transformation en tte de T ( la plus ancienne ) Ajouter u en fin de T Si Z < Z" alors { mise jour de la meilleure solution } S* : = s Z* : = Z FS FS Jusqu' ( NIter = MaxIter ) ou ( Z" = + )

IV ER

SI TE

SA A

Rsolution approche des problmes difficiles

136

LA

BL

ID

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

Les algorithmes gntiques


Cette classe de mthodes a t invente par Holland dans les annes soixante, pour imiter les phnomnes d'adaptation des tres vivants. L'application aux problmes d'optimisation a t dveloppe ensuite par Goldberg. Par analogie avec la reproduction des tres vivants, on part d'une population initiale de N solutions alatoires. Le point dlicat est d'arriver coder chaque solution comme une chane de caractres ( analogue un chromosome d'une cellule vivante ). Le chromosome est form de sous chanes appeles " gnes ", chacun codant une caractristique de la solution. paires de chromosomes reproduire, avec une probabilit croissante avec leur adaptation. Chaque paire ( x, y) choisie subit une opration de "croisement" ( cross-over ). Un gne est choisi alatoirement dans x, puis permut avec le gne de mme position dans y. On pratique modification alatoire d'un gne. La nouvelle population est forme de la population On dfinit pour chaque solution une " mesure d'adaptation au milieu " appele " fitness ". adaptes pour maintenir un effectif constant de N solutions. On recommence le mme changer par croisement leurs caractristiques et engendrer des solutions encore meilleures. fournira donc un choix de plusieurs solutions possibles au dcideur. Notons G la fonction d'valuation choisie. Pour engendre la gnration X(n+1) de solutions Slectionner dans X(n) un ensemble de paires de solutions de hautes qualits. Appliquer chacune des paires de solutions slectionnes un oprateur de croisement qui produit une ou plusieurs solutions " enfants ". de bonne qualit; Remplacer une partie de X(n) forme de solutions de basse qualit par des solutions " enfants " La population X(n+1) est obtenue aprs avoir appliqu un oprateur de mutation aux solutions ainsi obtenues. partir de la population courante X(n), on applique le schma dcrit ci dessous. galement un faible " taux de mutation " : NM chromosomes sont choisis et subissent une prcdente et des chromosomes nouveaux gnrs par mutation ou croisement. Pour un POC, cette fonction est la fonction objectif. On limine alors les solutions les moins processus pour l'itration suivante. L'intrt est que les bonnes solutions sont encourages De plus, les solutions finales vont tre concentres autour des minima locaux, et la mthode Une itration est appele " gnration ". A chaque gnration, on choisit au hasard NC < N

IV

ER

SI

TE

SA

Rsolution approche des problmes difficiles

137

LA

BL I

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

Algorithme 4 ( gntique ) Initialisation : soit X(0) X, une population initiale; Etape n : soit X(n) X, la population courante; slectionner dans X(n) un ensemble de paires de solutions da haute qualit; appliquer chacune des paires de solutions slectionnes un oprateur de croisement qui produit une ou plusieurs solutions " enfants ". remplacer une partie de X(n) forme de solutions de basse qualit par des solutions enfants de haute qualit;

si la rgle d'arrt est satisfaite, stop; sinon, passer l'tape n + 1. a) La slection

basse qualit ", comporte gnralement un aspect alatoire. Chaque individu xi de la d'autant plus grande que son valuation est haute ( basse dans le cas d'une slection de " k 1 L'individu " k " est choisi tel que : i =1

p i < ri

La probabilit que xk soit choisi est aussi bien gale pk. Cette procdure est appele " la roulette russe ". La procdure est itre jusqu' ce que l'on chois un nombre fix d'individus. b) Le croisement

Soit deux solutions x et y slectionnes parmi les solutions de haute qualit. Un oprateur de croisement ( croosover) fabrique une ou deux nouvelles solutions x' et y' en combinant x et y. Si x et y sont deux vecteurs de 0 et 1, un oprateur de croisement classique ( two-point

crossover ) consiste slectionner alatoirement deux positions dans les vecteurs et permuter les squences de 0 et 1 figurant entre ces deux positions dans les deux vecteurs. Pour des vecteurs x = 0 1 1 0 1 1 0 0 et y = 1 1 0 0 1 0 1 0, si les positions " aprs 2 " et " aprs 5 " sont choisies, on obtient aprs croisement :
Rsolution approche des problmes difficiles 138

IV

ER

SI TE

SA

mauvais individus "). On tire un nombre " r " au hasard ( uniformment sur [ 0, 1] ).

i =1

pi .

population parmi laquelle se fait la slection se voit attribuer une probabilit pi d'tre choisi

LA

La slection aussi bien celle des individus de " haute qualit " que celle des individus de "

BL I

ventuellement mutes constituent la population X(n+1) ;

appliquer un oprateur de mutation aux solutions ainsi obtenues; les solutions

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

x' = 0 1 001100

et y' = 1 1 1 0 1 0 1 0.

De nombreuses variantes d'un tel oprateur peuvent tre imagines. Ces variantes doivent tre adaptes au codage des solutions et favoriser la transmission des " bonnes sous-structures " des solutions parents aux enfants. Pour le problme d'ordonnancement avec le codage liste des tches ne convient pas. x = A B C D E F G H et y = B E F H A D G C, en croisant entre les positions " aprs 2 " et " aprs 5 ", on obtiendrait : x' = A B F H A F G H et y' = B E C D E D G C qui ne sont pas des permutations.

squences situes entre les deux positions choisies au hasard. villes F, H, A de y.

x' = D E F H A G B C et y' = H A C D E G B F. Un certain nombre de paires d'enfants sont ainsi gnrs et remplacent une partie des parents

Une mutation est une perturbation introduite pour modifier une solution individuelle, par Dans l'ordonnancement de type permutation, une mutation peut tre une permutation

arbitraire de deux tches. En gnral, on dcide de muter une solution avec une probabilit assez faible. Le but de la mutation est d'introduire un lment de diversification et d'innovation.

IV

exemple la transformation d'un 0 en un 1 ou inversement dans un vecteur binaire.

ER

c) La Mutation

SI

TE

choisis parmi les moins performants.

SA A

On procde alors l'change des squences, ce qui donne deux permutations enfants x' et y' :

Rsolution approche des problmes difficiles

mme pour y : B * F H A * G * devient H A * * * G B F.

139

d'change, alors que l'ordre de parcours des autres tches n'a pas t chang. On procde de

oubliant les *, ce qui donne : D E * * * G B C. Les * se retrouvent ds lors dans la zone

d'change, on tasse les tches restantes de la permutation dans l'ordre de la permutation x en

LA

symbolise par une *, soit * B C D E * G * et en commenant la droite de la zone

Pour ce faire, on remplace chacune des villes F, H et A dans le vecteur x par une place vide

Dans cette exemple de tches, la zone d'change de x est prpare accueillir la squence des

BL

implmente l'ide suivante. Les deux solutions parentes sont " prpares " avant l'change des

ID

Un oprateur de croisement spcialement conu pour les listes donnes ( OX-crossover )

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

Bibliographie et Rfrences [Aus03] Ausiello, G, Crescenzi, P, Gambosi, G, Kann, V, Marchetti-Spaccamela, A et Protasi, M. Complexity and Approximation. Combinatorial optimization problems and their approximability properties. Springer 2003. [Bak74] Baker, K.R. Introduction to sequencing and scheduling. John Wiley & sons, Inc. 1974. [Bla77] Blazewicz, J. Simple algorithms for multiprocessor scheduling to meet deadlines, [Bla76a] Blazewicz, J ; Cellary, W ; Slowinski, R and Weglarz, J. niezaleznych Podstawy sterowania, No. 6, pp. 155-178.1976. reduce schedule length, Acta Cybernitica 3, pp. 99-106, 1977. Deterministyczne Infor. Process. Lett.6, pp. 162-64, 1977.

[Bru95] Brucker, P. Scheduling algorithms. Springer, 1995.

[Bru76b] Brucker, P.J. Sequencing unit-time jobs with treelike precedence on m machines to Programming, Budapest, 1976.

[Bru77] Brucker, P ; Garey, M.R and Johnson, D.S. Scheduling equal-length tasks under treelike precedence constraints to minimize maximum lateness, Math. Oper. Res.2, pp. 275284, 1977. [Bru74] Bruno, J ; Coffman, E.J Jr. And Sethi, R. Scheduling independent tasks to reduce mean finishing time, Comm. ACM 17, pp. 382- 387, 1974. [Chen75] Chen, N.F and Liu, C.L. On a class of scheduling algorithms for multiprocessors science 24, Springer Verlag, pp. 1-16, 1975. [Con67]Conway, R.W, Maxwell, W.L and Miller, L.W. Theory of scheduling, AddisonWesley, Reading, Mass. 1967.

[Cof72] Coffman, E.G Jr. and Graham, R.L. Optimal scheduling for two-processor systems, Acta Informatica, NO1. , pp. 200-213, 1972. [Cof 76a] Coffman, E.G Jr. . Scheduling in computer and job shop systems. J. Wiley, 1976. [Cof76b] Coffman, E. Jr and Sethi, R. A generalized bound on LPT sequencing, RAIROInformatique, No10, pp. 17-25, 1976.
Rsolution approche des problmes difficiles 140

IV ER

computing systems, in T.Y Feng edition, Parallel processing, Lecture notes in computer

SI TE

SA A

minimize maximum lateness. Proceedings IX International Symposium o Mathematical

LA

manufacturing systems. Second revised Edition. Springer-verlag, 1994.

[Bla94] Blazewicz, J ; Ecker, K.H ; Schmidt, G and Weglarz, J. Scheduling in computer and

[Bla77] Blazewicz, J ; Cellary, W and Weglarz, J. A strategy for scheduling splittable tasks to

BL

problemy szeregowania zadan na rownoleglych procesorach, Cz. II. Zbiory zadan

ID

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

[Cof84] Coffman, E.G Jr, Frederickson, N and Luecker, G.S. A note on expected makespan for largest-first sequences of independent task on two processors, Mathematics of Operations Research. No9, pp. 260-266, 1984. [Cof91] Coffman, E.G Jr. And Gary, M.R. Proof of the 4/3 conjecture for preemptive versus non-preemptive two-processor scheduling, Report Bell Laboratories, Murray Hill, 1991. [Du88] Du, J ; Leung, Y.T and Young, G.H. Minimizing mean flow time with release time constraints, Technical report, Computer Science Program , University of Texas, Dallas, [Du91] Du, J ; Leung, Y.T and Young, G.H. Scheduling chain structured tasks to minimize [Eas64] Eastman, W.L, Evon, S and Isaacs, I.M. Bounds for the optimal scheduling of n jobs on m processors. Management science, vol. 11, No.2, pp., Nov-1964. [Fed86] Federgruen, A and Groenevelt, H. Preemptive scheduling of uniform machines by [Gar76] Garey, M.R and Johnson, D.S. Scheduling tasks with non-uniform deadlines on two processors, J. Assoc. Comput. Mach. 23, pp. 461-426, 1976. deaadlines, SIAM J. Compt. 6, pp. 416-426. 1977. 1988. makespan and mean flow time, Inform. And Compt. 92, pp. 219-236, 1991.

[Gar81] Garey, M.R ; Johnson, D.S ; Simons, B.B and Tarjan, R.E. Scheduling unit time tasks [Gar83] Garey, M.R ; Johnson, D.S ; Tarjan, R.E and Yannakakis, M. Scheduling opposing forests, SIAM Journal Algebraic and discrete mathematics, No4. , pp. 72-93, 1983. [Gon77] Gonzalez, T. Optimal mean finish time preemptive schedules, Technical report 220 ; Computer science department, Pensylvania state Univ. 1977. J. Assoc. Comput. Mach. 27, pp. 287-312, 1980. [Gon78] Gonzalez, T and Sahni, R. Preemptive scheduling of uniform processor systems. J. Assoc. Comput. Mach., No. 25, pp.92-101, 1978. [Got04] Groupe Gotha. Sous la coordination de P. Baptiste, E. Nron et F. Sourd. Modles et [Gon80] Gonzalez, T and Johnson, D.S. A new algorithm for preemptive scheduling of trees,

algorithmes en ordonnancements. Exercices & problmes corriges. Ellipses, 2004. [Gra66] Graham, R.L. Bounds for certain multiprocessing anomalies, Bell System Technology Journal, No 45, pp. 1563-1581. 1966.

IV

ER SI

TE

SA

Rsolution approche des problmes difficiles

with arbitrary release times and deadlines, SIAM J. Comput. 10, pp. 256- 269, 1981.

141

[Gar77] Garey, M.R and Johnson, D.S. Two-processor scheduling tasks with start-times and

LA

ordinary network flow techniques, Management Sciences 32, pp. 341-349, 1986.

BL I

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

[Gra79] Graham, R.L ; Lawler, E.L ; Lenstra, J.K and Rinnooy Kan, A.H.G. Optimization and approximation in deterministic sequencing and scheduling theory : a survey, Annals of discrete mathematics, No. 5, pp. 287-326, 1979. [Hor74] Horn, W.A. Some simple scheduling algorithms, Naval Research Logistics Quarterly.21, pp. 177-185, 1974. [Hor76] Horowitz, E and Sahni, R. Exact and approximation algorithms for scheduling nonidentical processors, J. Assoc. Comput. Mach. 23, pp. 317-327, 1976. Journal of association computing machines, No. 24, pp. 32-43, 1977. vol.9, No.6, pp.841-848,Nov-1961. non-identical processors. J. Assoc. Comput. Mach., No. 24, PP. 280-289, 1977. Management Research Project, University of California, Los Angeles, 1955. [Kar72] Karp, R.M. Reducibility among combinatorial problems, in R.E.Miller, J.W.Thatcher edition, complexity of computer computations, Plenum Press, New York, pp. 85-104 ; 1972. [Kar74] Karzanov, A.W. Determining the maximal flow in a network by the method of preflow, Soviet Math. Dokl. 15, pp.434-37. 1974. [Kun76] Kunde, M. Beste Schranke beim LP scheduling, Bericht 7603, Institut fur informatik und praktische Mathematik, University Kiel, 1976. [Lab84] Labetoulle, J ; Lawler, E.L ; Lenstra, J.K and Rinnooy Kan, A.H.G. Preemptive in Combinatorial Optimization , Academic Press, 1984. [Lam77] Lam, S and Sethi, R. Worst case analysis of two scheduling algorithms, SIAM [Law82b] Lawler, E.L. Preemptive scheduling in precedence-constrained jobs on parallel machines, in : M.A.H Dempster ; J.K.Lenstra and A.H.G.Rinnooy Kan (eds.), Deterministic and stochastic scheduling, Reidel, Dordrecht, pp. 101-123, 1982. Journal of computing, No. 6, pp. 518-536, 1977. scheduling of uniform machines subject to release dates, in H.R. Pulleyblank(ed.) : Progress [Hor77] Horvath, E.G ; Lam, A and Sethi,R. A level algorithm for preemptive scheduling. [Hu61] Hu, T.C. Parallel sequencing and assembly line problems. Operations Research,

[Law78] Lawler, E.L and Labetoulle, J. Preemptive [Len77]Lenstra, J.K ;

IV

ER

SI TE

SA A

scheduling

LA

processors by linear programming. J. Assoc. Comput. Mach. 25, pp. 612-619, 1978. Rinnooy Kan, A.H.G and Brucker, P. Complexity of machine scheduling problems, Ann. Discrete. Math.1, pp. 343-362, 1977.

Rsolution approche des problmes difficiles

142

[Jac55] Jackson, J.R Scheduling a production line to minimize tardiness, Res. Report 43,

of unrelated parallel

[Iba77] Ibarra, O.H and Kim, C.E. Heuristic algorithms for scheduling independent tasks on

BL

ID

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

[Len78]Lenstra, J.K and Rinnooy Kan, A.H.G. Complexity of scheduling under precedence constraints, Oper. Res.26, pp. 22- 35, 1978. [Liu74] Liu, J.W.S and Liu, C.L. Performance analysis of heterogeneous multiprocessor computing systems, in E.Gelenbe, R.Mah edition, Computer architecture and networks, pp. 331-343, North Holland, Amsterdam, 1974. [McN59] McNaughton, R. Scheduling with deadlines and loss functions. Management science, vol.6, No.1, pp.1-12, Oct-1959. Operations Research, 30, pp. 116-124, 1982. systems. IEEE Transactions on computers, vol. 18, No.11, pp.1014-1029, Nov-1969. multiprocessor systems. Journal of the ACM, vol. 17, No.2, pp.324-338, April 1970. [Rot66] Rothkopt, M.H. Scheduling independent tasks on parallel processors. Management [Sch99] Schuurman, P and Woeginger, J. Polynomial time approximation algorithms for [Sim83] Simons, B. Multiprocessor scheduling of unit-time jobs with arbitrary release times [Slo78] Slowinski, R. Scheduling preemptive tasks on unrelated processors with additional resources to minimize schedule length, in G.Bracci, R.C.Lockermann(eds.), Lecture Notes in [Ull75] Ullman, J.D. NP-complete scheduling problems, J. Comput. System Sci.10, pp. 384393, 1975. [Ull76] Ullman, J.D. Complexity of sequencing problems, Chapter 4. In [ Cof76a]. computer Science, vol. 65, Springer Verlag, Berlin, pp. 536-547, 1978.

[Mun69] Muntz, R.R and Coffman, E.. Optimal preemptive scheduling on two-processor

N IV

ER

SI

TE

SA

and deadlines, SIAM J. Comput. 12, pp. 294-299. ( 1983)

Rsolution approche des problmes difficiles

143

machine scheduling : Ten open problems. Journal of scheduling, 2 , pp. 203-213, 1999.

science, vol. 12. No.5, pp., Jan-1966.

LA

[Pin95] Pinedo, M. Scheduling. Theory, Algorithms and systems. Prentice Hall, 1995

[Mun70] Muntz, R.R and Coffman, E.. Preemptive scheduling of real-time tasks on

BL I

[Mom82] Momma, C.L. Linear-time algorithms for scheduling on parallel processors,

Ordonnancement dans les ateliers. Cours donn par le Dr. DERBALA Ali

IV

ER

SI T

SA

Rsolution approche des problmes difficiles

144

LA

BL I

Vous aimerez peut-être aussi