Azly Santos Amorim de Santana

104 

Full text

(1)

Universidade Federal da Bahia Instituto de Matem´atica

Curso de P´os-graduac¸˜ao em Matem´atica Dissertac¸˜ao de Mestrado

etodo de Decomposic

¸˜

ao de Dantzig-Wolfe aplicado ao

problema combinat´

orio de Job-Shop

Azly Santos Amorim de Santana

(2)

etodo de Decomposic

¸˜

ao de Dantzig-Wolfe aplicado ao

problema combinat´

orio de Job-Shop.

Disserta¸c˜ao apresentada ao colegiado do curso de P´os-Gradua¸c˜ao em Matem´atica da Universidade Federal da Bahia, como requisito parcial para obten¸c˜ao do T´ıtulo de Mestre em Matem´atica Pura.

Banca examinadora

Profa. Dra Isamara Carvalho Alves (Orientadora).

Prof. Dr. Isaac Costa L´azaro

(3)

Santana, A.

“M´etodo de Decomposic¸˜ao de Dantzig-Wolfe aplicado ao

prob-lema combinat´orio de Job-shop” / Azly Santos Amorim de Santana. Salvador-Ba, 2003.

Orientadora: Dra. Isamara Carvalho Alves (Universidade Federal da Bahia).

Disserta¸c˜ao de Mestrado apresentada ao curso de P´os-graduac˜ao em

Matem´atica da UFBA, 91 p´aginas.

Palavras-Chave:M´etodos de Decomposi¸c˜ao, Decomposi¸c˜ao de Problemas Combinat´orios, M´etodo de Decomposi¸c˜ao de Dantzig-Wolfe, Problemas de

(4)
(5)

“Vocˆe ´e do tamanho do seus sonhos.”

(6)

Agradecimentos

Nesta etapa da vida, algumas pessoas contribu´ıram para o meu crescimento profissional e

espiritual. Agrade¸co com carinho aos meus pais pela incondicional credibilidade e apoio em todas

as minhas decis˜oes. A “Mˆo” pela confian¸ca, paciˆencia e amor. A Ana Rita e Simone por me fazer

entender o verdadeiro conceito de amizade. Aos meus primeiros e eternos amigos acadˆemicos Adriana

(Di), Ana Paula (Paulinha), Ab´ılio (Bilol˜ao), Gilson (Ligeirinho), Luciano (Neg˜ao), Moema (M´o),

Osvaldo (Junico) e Rog´erio (Mancha). Agrade¸co com muitas saudades os momentos de apoio e divers˜ao

aos queridos companheiros, Adriano (Didi), Alex (Pig), Andr´ea (D´ea), Ariadne, Calit´eia (Baixinha),

Concei¸c˜ao (Cei¸ca), Cla´udio (Mano), ´erica (Kinha), Gilmar (Tchˆe), Ivana (Moc´o), Ismar (Dindo),

Jorge (Gump), Jos´e Joaquim, Juceli (J´u), Laura (Gospel), Maur´ıcio (Tio Mau), Odete (Amanda),

Paulo (Nasci), Reinaldo (Amigo), Rosely (Rosy), Stela (Pr´o), Rui. Aos professores Bahiano, Enaldo,

Elinalva, Isaac, Marco Antonio, pelo profissionalismo e car´ater, ao professor J´es pela disponibilidade e

sugest˜oes e, em especial, a Isamara pela credibilidade e dedicada orienta¸c˜ao. Finalmente, `a secret´aria

Tˆania por ter sido sempre t˜ao prestativa e a grande amiga C´ıntia L´e que tanto torceu por este t´ıtulo

de mestre.

(7)

Resumo

Neste trabalho, ´e abordado o m´etodo de decomposi¸c˜ao de Dantzig-Wolfe aplicado ao

prob-lema de seq¨uenciamento do tipo job-shop. Este problema tem como caracter´ıstica principal sua

com-plexidade computacional na categoria de um problema NP-dif´ıcil(Jonhson[16] e Zwaneveld[35]). Tais

problemas est˜ao sujeitos a um conjunto de restri¸c˜oes envolvendo as opera¸c˜oes nos produtos e nas

m´aquinas, cujo objetivo ´e diminuir o custo de produ¸c˜ao. A metodologia aplicada consiste em

decom-por o problema de job-shop em blocos (i ´e, subproblemas), reduzindo um grande volume de c´alculo

central por c´alculos locais. Estes subproblemas s˜ao resolvidos separadamente e as suas solu¸c˜oes s˜ao

supervisionadas por um n´ıvel coordenador denominado Problema Mestre. Desta forma, o Problema

Mestre gerencia as solu¸c˜oes fazendo com que as combina¸c˜oes convexas destas gerem a solu¸c˜ao do

problema global.

Sendo assim, a partir do problema de job-shop, podemos formular o Problema Mestre e os

sub-problemas correspondentes. Cada subproblema ´e associado ao conjunto de restri¸c˜oes de uma m´aquina

e ao Problema Mestre est´a associado as restri¸c˜oes de acoplamento representadas pelas restri¸c˜oes de

precedˆencia nos produtos. Contudo, ocorre que o conjunto de solu¸c˜oes vi´aveis de cada subproblema

´e ilimitado e pode acontecer infactibilidade. Conseq¨uentemente, propomos algumas modifica¸c˜oes que

permitem a aplicabilidade do m´etodo aos problemas de seq¨uenciamento do tipo job-shop. Os

resul-tados encontrados por meio de testes num´ericos em problemas de pequeno porte mostraram que a

convergˆencia do m´etodo ´e poss´ıvel, desde que sejam adotados limites adequados para as vari´aveis do

problema.

(8)

Abstract

This work, address the Dantzig-Wolfe decomposition method applied in job-shop

schedul-ing problems. These problems are well known as NP-hard in the strong sense (Johnson [16] and

Zwaneveld [35]) constrained by capacity and precedence constraints, whose objective is decreasing

the manufacturing cost. The use of this method is justified by the block angular structure of the

technological coefficients matrices. Hence, the applied methodology decomposes the original problem

into blocks (subproblems) supervisioned by a coordinator level (master problem) decreasing a large

volume of central calculus by several local calculus. These subproblems receive a set of parameters

from the master problem and their solutions are sent to the master problem, which combines these

with previous solutions in the optimal way and computes new prices.

From the job-shop problem, the master problem can be modelled considering link constraints

the precedence constraints and the each subproblem is associated with one machine. However, the

viable solution set of each subproblem is unbounded and the method may converge to an unfeasible

solution. Consequently, we propose an modification which will allow us the applicability of this method

in the job-shop problem. The results obtained from numeric tests of lower dimensions showed us that

the convergence of the method is possible since adequate limit are adopted is possible since adequate

limits are adopted.

(9)

Sum´

ario

Resumo vii

Abstract viii

Lista de Figuras xi

Lista de Tabelas xiii

Introdu¸c˜ao 1

1 M´etodo de Decomposi¸c˜ao de Dantizg-Wolfe 3

1.1 Princ´ıpio da Decomposi¸c˜ao de Dantzig-Wolfe . . . 5

1.2 Algumas considera¸c˜oes sobre o algoritmo de Dantzig-Wolfe . . . 11

1.3 Problema Mestre Restrito . . . 12

1.4 Estrat´egia alternativa para decompor o primal . . . 12

1.5 Regi˜ao Xi ilimitada . . . 14

1.6 Limite inferior para o custo m´ınimo . . . 17

1.7 Interpreta¸c˜ao econˆomica do m´etodo . . . 19

1.8 Exemplo num´erico . . . 19

2 Os Problemas de Job-Shop 27 2.1 Os problemas de f´abrica . . . 28

2.1.1 Os produtos e os crit´erios . . . 28

2.1.2 As m´aquinas . . . 29

2.2 O Problema de Job-Shop . . . 29

2.2.1 Formula¸c˜ao Matem´atica . . . 33

2.2.2 M´etodos de Resolu¸c˜ao . . . 34

3 M´etodo de Dantzig-Wolfe e o Problema de Job-Shop 37 3.1 Decomposi¸c˜ao do Job-Shop . . . 37

(10)

Sum´ario x

3.1.1 Modelagem Matem´atica . . . 37

3.1.2 M´etodo de Dantizg-Wolfe . . . 38

3.1.3 Aplica¸c˜ao do m´etodo de Dantzig-Wolfe ao Job-Shop . . . 40

3.1.4 Regi˜aoXk ilimitada . . . 44

3.2 Problemas Testes . . . 46

3.2.1 Problema Teste 1 . . . 46

3.2.2 Problema Teste 2 . . . 65

Conclus˜ao 81

Apˆendice 83

Referˆencias Bibliogr´aficas 86

(11)

Lista de Figuras

1.1 Comportamento dos m´etodos de decomposi¸c˜ao. . . 3

1.2 Estrutura bloco-angular com restri¸c˜oes de acoplamento. . . 5

1.3 Estrutura bloco-angular com vari´aveis de acoplamento. . . 5

1.4 Estrutura bloco-angular com restri¸c˜oes e vari´aveis de acoplamento. . . 5

1.5 Regi˜ao fact´ıvel do conjunto X1. . . 20

1.6 Regi˜ao fact´ıvel do conjunto X2. . . 20

2.1 Grafo potencial-tarefa representando o exemplo do job-shop. . . 32

2.2 Diagrama de Gantt representando duas solu¸c˜oes para o exemplo do job-shop. . . 32

2.3 Grafo conjuntivo da solu¸c˜aoS2 para o exemplo do job-shop. . . 33

3.1 Convergˆencia do m´etodo do problema teste 1. . . 64

3.2 Diagrama de Gantt representando as solu¸c˜oes encontradas do problema teste 1. . . 64

3.3 Convergˆencia do m´etodo do problema teste 2. . . 79

3.4 Diagrama de Gantt representando as solu¸c˜oes encontradas do problema teste 2. . . 79

A.5 Dire¸c˜oes e dire¸c˜oes extremas . . . 85

(12)

Lista de Tabelas

1.1 Tabela do M´etodo Simplex Revisado referente ao problema mestre. . . 15

1.2 Tabela inicial do simplex revisado do problema mestre. . . 21

1.3 Entra na base a vari´avel λ22,sai λ12. . . 23

1.4 Entra na base a vari´avel λ21,sai s. . . 23

1.5 Solu¸c˜ao ´otima do exemplo 1. . . 23

1.6 Entraλ31 e sai λ11. . . 24

1.7 Solu¸c˜ao ´otima do exemplo 2. . . 25

2.1 Dados do problema-exemplo de job-shop. . . 31

3.1 Tabela do simplex revisado do problema mestre. . . 45

3.2 Dados do problema teste 1. . . 47

3.3 Tabela inicial do simplex revisado do P.M do problema teste 1. . . 52

3.4 Entra na base a vari´avel λ22, sais4. . . 54

3.5 Entra na base a vari´avel λ32, sais2. . . 54

3.6 Tabela final na itera¸c˜ao 1 do problema teste 1. . . 55

3.7 Entra na base a vari´avel λ33,saiλ32. . . 58

3.8 Tabela final na itera¸c˜ao 2 do problema teste 1. . . 58

3.9 Entra na base a vari´avel λ34,saiλ33. . . 60

3.10 Tabela final da itera¸c˜ao 3 do problema teste 1. . . 61

3.11 Limites por itera¸c˜ao do problema teste 1. . . 63

3.12 Compara¸c˜ao das solu¸c˜oes do problema teste 1. . . 63

3.13 Dados do problema teste 2. . . 65

3.14 Tabela inicial do simplex revisado do P.M do problema teste 2. . . 71

3.15 Entra λ32, sai s2. . . 74

3.16 Entra λ12,saiλ11. . . 74

(13)

Lista de tabelas xiii

3.17 Entra λ22, sai s1. . . 74

3.18 Tabela final na itera¸c˜ao 1 do problema teste 2. . . 75

3.19 Entra λ23,saiλ22. . . 76

3.20 Tabela final na itera¸c˜ao 2 do problema teste 2. . . 76

3.21 Limites por itera¸c˜ao do problema teste 2. . . 78

(14)

Introdu¸

ao

Em geral os m´etodos de decomposi¸c˜ao consistem em decompor um problema inicial de grande

porte em problemas com dimens˜oes menores, denominadossubproblemas (ou problemas escravos). Tais

subproblemas s˜ao supervisionados por um n´ıvel de coordena¸c˜ao denominado Problema Mestre (ou

problema coordenador). O procedimento consiste de um conjunto de subproblemasindependentes cuja

fun¸c˜ao objetivo e/ou vetor dos recursos (composta dos multiplicadores simplex do problema mestre)

s˜ao atualizados a cada ITERAC¸ ˜AO de acordo com os parˆametros recebidos do problema coordenador.

Assim, a cada ITERAC¸ ˜AO, os subproblemas s˜ao resolvidos separadamente e, em seguida, enviam suas

solu¸c˜oes ao Problema Mestre.Esta troca de informa¸c˜oes entre o Problema Mestre e os subproblemas

´e realizada em um n´umero finito de itera¸c˜oes, garantindo a convergˆencia para o valor ´otimo, ou

um sub-´otimo, do problema global. Dentre os principais m´etodos de decomposi¸c˜ao podemos citar:

as t´ecnicas da Relaxa¸c˜ao Lagrangeana[17][19][27]; o m´etodo de Dantzig-Wolfe [10][27]; o m´etodo de

Benders[5][18][27]; e o m´etodo de Rosen[27]. A aplica¸c˜ao desses m´etodos depender´a da estrutura

matricial dos coeficientes que envolvem o problema.

Este trabalho aborda, em particular, o m´etodo de decomposi¸c˜ao de Dantzig-Wolfe. Este

m´etodo ´e aplicado em problemas lineares de grandes dimens˜oes onde a matriz de coeficientes possui

uma estrutura especial do tipo bloco angular, isto ´e, um ou mais blocos independentes s˜ao acoplados

por um conjunto de restri¸c˜oes. As restri¸c˜oes de acoplamento, juntamente com a propriedade que

permite reescrever elementos de um conjunto convexo como combina¸c˜ao linear convexa dos seus pontos

extremos, possibilita a forma¸c˜ao de um problema equivalente com um n´umero menor de restri¸c˜oes

denominado Problema Mestre. Este problema ´e resolvido por meio do m´etodo simplex revisado ([4]).

O procedimento de resolu¸c˜ao tem uma interpreta¸c˜ao econˆomica a qual diz que o problema mestre

coordena as a¸c˜oes dos subproblemas enviando os valores dos multiplicadores do simplex associados

aos recursos usados no problema.

(15)

Introdu¸c˜ao 2

por sua complexidade na categoria de um problema NP-dif´ıcil (Johnson[16] e Zwaneveld [35]). Al´em

disso, os coeficientes das suas restri¸c˜oes apresentam uma estrutura matricial bloco angular. Tais

caracter´ısticas justificam a aplica¸c˜ao de um m´etodo de decomposi¸c˜ao. Podemos ent˜ao a partir do

problema de job-shop, formular um problema equivalente em dois n´ıveis conforme apresentado no

m´etodo de Dantzig-Wolfe. Para isso, construiremos o problema mestre considerando como restri¸c˜oes

de acoplamento as restri¸c˜oes de precedˆencia (restri¸c˜oes nos produtos), e a cada conjunto de restri¸c˜oes

de m´aquina associaremos um subproblema. No entanto, o conjunto de solu¸c˜oes vi´aveis ´e ilimitado e

pode acontecer subproblemas infact´ıveis. Conseq¨uentemente, s˜ao necess´arias algumas modifica¸c˜oes nos

espa¸cos de solu¸c˜oes para garantir a aplicabilidade do m´etodo ao problema de job-shop. Primeiramente,

propomos a cria¸c˜ao de limites relacionadas `as vari´aveis envolvidas nas restri¸c˜oes de acoplamento a fim

de limitar os conjuntos de solu¸c˜oes. Em seguida, efetuamos o ajuste das solu¸c˜oes obtidas para garantir

a converg encia ao valor ´otimo do problema global. O texto est´a organizado da seguinte forma:

O Cap´ıtulo 1 come¸ca descrevendo brevemente os m´etodos de decomposi¸c˜ao e em quais

ca-sos podem ser utilizados. Em seguida, enfatizamos o m´etodo de decomposi¸c˜ao de Dantzig-Wolfe,

mostrando de que forma o mesmo ´e estruturado e quais as altera¸c˜oes necess´arias para o caso no qual o

conjunto de solu¸c˜oes ´e ilimitado. Al´em disso, mostramos como podemos determinar um limite inferior

para a solu¸c˜ao ´otima do problema original bem como a interpreta¸c˜ao econˆomica do m´etodo.

O Cap´ıtulo 2 tem como objetivo definir o problema de job-shop e apresentar a formula¸c˜ao

matem´atica adotada. apresentamos as restri¸c˜oes adotada para o job-shop e as suas principais

carac-ter´ısticas, assim como a sua representa¸c˜ao pelo grafo potencial-tarefa e pelo Diagrama de Gantt.

Finalmente, no Cap´ıtulo 3, reescrevemos o m´etodo de Dantzig-Wolfe adaptando-o `a nota¸c˜ao

adotada ao problema de job-shop e aplicando ajustes ao conjunto das solu¸c˜oes vi´aveis de forma tal

que garanta a factibilidade do problema mestre e dos subproblemas. Conclu´ımos apresentando testes

num´ericos e as respectivas an´alises que validam a aplicabilidade do m´etodo em problemas de pequenas

(16)

Cap´ıtulo 1

etodo de Decomposi¸

ao de

Dantizg-Wolfe

Em geral, os m´etodos de decomposi¸c˜ao consistem em decompor um problema inicial de grande

porte em problemas com dimens˜oes menores, denominados subproblemas ( ou problemas escravos )

permitindo substituir um grande volume de c´alculo central por c´alculos locais. Tais subproblemas

trabalham de forma paralela, seq¨uencial ou interativa, supervisionados por um n´ıvel de coordena¸c˜ao,

denominado problema mestre (ou problema coordenador). O problema mestre recebe informa¸c˜oes dos

subproblemas e altera, a cada itera¸c˜ao, os parˆametros que atualiza a fun¸c˜ao custo e/ou o vetor de

recursos de cada subproblema, permitindo atrav´es de suas solu¸c˜oes uma aproxima¸c˜ao para a solu¸c˜ao

´

otima global, se esta existir. Na Figura 1.1, este processo ´e representado considerando o problema

original particionado empsubproblemas, ondet1, t2,· · · , tp s˜ao as solu¸c˜oes locais dos correspondentes

subproblemas e os λ′s´e o vetor-solu¸c˜ao do problema mestre.

SUBPROBLEMA

N p p

λ λ

1

t t

N 1 SUBPROBLEMA

o o

PROBLEMA MESTRE

(17)

Princ´ıpio da Decomposi¸c˜ao de Dantizg-Wolfe 4

Os m´etodos de decomposi¸c˜ao s˜ao utilizados quando temos um/ou mais dos seguintes

obje-tivos:

Reduzira dimens˜ao do problema quando o n´umero de vari´aveis e/ou de restri¸c˜oes ´e muito elevado

a fim de efetuar a resolu¸c˜ao dos subproblemas de dimens˜oes menores;

Hierarquizarum processo de decis˜ao em v´arios n´ıveis, onde cada unidade econˆomica possui uma

unidade de controle que garante a coordena¸c˜ao entre os subsistemas dos n´ıveis inferiores;

Descentralizarum problema de decis˜ao decompondo-o em subproblemas com suficiente

autono-mia para tomar suas pr´oprias decis˜oes;

Particionar um problema com dados heterogˆeneos em subproblemas homogˆeneos;

Paralelizarde acordo com a evolu¸c˜ao do material para o c´alculo paralelo (multitarefa,

multipro-cessador).

O Princ´ıpio da decomposi¸c˜ao, consiste inicialmente em analisar a estrutura do problema e,

a partir desta informa¸c˜ao, fazer a escolha do m´etodo de decomposi¸c˜ao mais adequado. Dentre os

princi-pais m´etodos cl´assicos de decomposi¸c˜ao podemos citar: as t´ecnicas da Relaxa¸c˜ao Lagrangeana[17][19][27];

o m´etodo de Dantzig-Wolfe [10][27]; o m´etodo de Benders[5][18][27] e o m´etodo de Rosen[27]:

(i) O m´etodo da Relaxa¸c˜ao Lagrangeana e o de Dantzig-Wolfe s˜ao aplicados aos problemas que

apresentam a matriz de coeficientes com aestrutura bloco-diagonal com restri¸c˜oes de acoplamento

conforme apresentada na Figura 1.2;

(ii) O m´etodo de Benders ´e aplicado aos problemas que apresentam a matriz de coeficientes com a

estrutura bloco-angular com vari´aveis de acoplamento conforme a Figura 1.3;

(iii) O m´etodo de Rosen ´e aplicados aos problemas que apresentam a matriz de coeficientes com a

estrutura bloco-angular com restri¸c˜oes e vari´aveis de acoplamento conforme a Figura 1.4.

Este trabalho enfatiza o m´etodo de Dantzig-Wolfe. Sendo assim, este cap´ıtulo aborda o

(18)

Princ´ıpio da Decomposi¸c˜ao de Dantizg-Wolfe 5

{

RESTRIÇÕES DE 2 A 1 A B P A P ACOPLAMENTO 1 B 2 B

Figura 1.2: Estrutura bloco-angular com restri¸c˜oes de acoplamento.

{

VARIA´VEIS DE BP ACOPLAMENTO 1 B 2 B b 1 b 2 b P

Figura 1.3: Estrutura bloco-angular com vari´aveis de acoplamento.

{

{

VARIA´VEIS DE RESTRIÇÕES DE B P A P ACOPLAMENTO ACOPLAMENTO A1

1 B 2 A 2 B 0 b1 b2 b P b

Figura 1.4: Estrutura bloco-angular com restri¸c˜oes e vari´aveis de acoplamento.

1.1

Princ´ıpio da Decomposi¸

ao de Dantzig-Wolfe

Consideremos o Programa Linear:

(P L)               

minz=cx

Sujeito a :

Ax=b x≥0

(1.1)

cuja matriz dos coeficientes das restri¸c˜oes tem estruturap-bloco angular, com p≥1,na forma:

A=            

A1 A2 · · · Ap

(19)

Princ´ıpio da Decomposi¸c˜ao de Dantizg-Wolfe 6

Notemos que qualquer programa linear pode ser visto nesta forma se for considerado p=1.

Assim, particionando o conjunto de restri¸c˜oes em dois subconjuntos, de acordo com a matrizA,temos o (P L) (1.1) como segue

            

           

minz=cx (1.2)

Sujeito a:

ˆ

A1x = b1 (r1 restri¸c˜oes) (1.3)

A2x = b2 (r2 restri¸c˜oes) (1.4)

x ≥ 0 (1.5)

Assumiremos que o poliedro convexo (Ver defini¸c˜ao no Apˆendice)

S2={x|A2x=b2,x≥0}

´e limitado, e chamaremos o conjuntoE ={x1,· · ·,xj,· · · ,xr}dosrpontos extremos deS2. Portanto,

qualquerx∈S2 pode ser escrito como combina¸c˜ao convexa destes pontos extremos:

x=

r X

j=1

λjxj (1.6)

onde

r X

j=1

λj = 1, (1.7)

λj ≥0; j= 1,· · · , r. (1.8)

O problema original (1.2) - (1.5) dever´a ser visto como segue: selecionemos, de todas as

solu¸c˜oes de (1.4) e (1.5), aquelas que satisfazem (1.3) e minimize z. Substituindo (1.2) em (1.6) e (1.3), obtemos

r X

j=1

( ˆA1xj)λj =b1, (1.9)

e

z=

r X

j=1

(cxj)λj. (1.10)

Definindo,

pj = Aˆ1xj, (1.11)

e

(20)

Princ´ıpio da Decomposi¸c˜ao de Dantizg-Wolfe 7

teremos o Programa Linear (1.2)-(1.5) na vari´avelλj:                                 

minz =

r X

j=1

fjλj (1.13)

Sujeito a:

r X

j=1

pjλj = b1 (1.14)

r X

j=1

λj = 1 (1.15)

λj ≥ 0; j= 1,· · · , r. (1.16)

Este novo problema (1.13)-(1.16), denominado Problema Mestre (PM), ´e equivalente ao

problema original (1.2) - (1.5). O PM cont´em apenas (r1+ 1) restri¸c˜oes, enquanto que o problema

original possu´ıa (r1+r2), significando assim uma consider´avel redu¸c˜ao no n´umero de restri¸c˜oes para

r2 muito grande.

Particularmente, a t´ecnica do M´etodo Simplex Revisado [4] ´e usado para resolver o PM.

Veremos ent˜ao como isto ´e feito considerando o coeficiente docusto relativof¯j para a vari´avelλj do

seguinte modo:

¯

fj =fj−π      pj − − − 1      ; (1.17)

onde o vetor π=fBB−1, para fB=cBxB,ou seja, π ´e o vetor dos multiplicadores do simplex.

Agora, vamos particionarπ: π = (π1, π0) ondeπ1´e ovetor das vari´aveis duais correspondentes `

as restri¸c˜oes(1.14) e π0 ´e a vari´avel dual correspondente `a ´unica restri¸c˜ao (1.15). Ent˜ao, usando as

defini¸c˜oes (1.11) e (1.12) de fj e pj em ¯fj podemos reescrevˆe-lo na forma,

¯

fj = (c−π1Aˆ1)xj−π0. (1.18)

O crit´erio usual do m´etodo simplex considera

min

j

¯

fj = ¯fs= (c−π1Aˆ1)xs−π0; (1.19)

indicando desta forma a vari´avel λs para entrar na base. Relembremos quexj ´e um ponto extremo

de S2, e notemos que ¯fj ´e linear em xj. Sabendo-se que uma solu¸c˜ao ´otima de um programa linear

convexo, cujo conjunto de restri¸c˜oes ´e limitado, sempre ocorre em um ponto extremo deste conjunto,

(21)

Princ´ıpio da Decomposi¸c˜ao de Dantizg-Wolfe 8

          

         

min (c−π1Aˆ1)x (1.20)

Sujeito a :

A2x=b2, (1.21)

x≥0. (1.22)

Seja xs o ponto ´otimo do subproblema (1.20) - (1.22) com valor objetivo ¯f

s. Se ¯fs ≥ 0

significa que todos os custos relativos `a baseλj s˜ao n˜ao positivos, logo n˜ao podemos mais melhorar a

solu¸c˜ao do PM. Em decorrˆencia, assumiremos que a solu¸c˜ao ´otima do problema original PL(1.1) ´e

x0=

r X

j=1

λjxj (1.23)

onde osxj’s s˜ao pontos extremos deS

2 correspondentes `a base λj.

Caso contr´ario, se ¯fs <0 ainda podemos melhorar a solu¸c˜ao do PM. Da´ı, λs entra na base

e a coluna correspondente

ˆ A1xs

1

´e atualizada, pr´e-multiplicando-a pelo inverso da base de λj,ou

sejaB−1, originando a nova colunays=B−1 

ˆ A1xs

1

. Notemos queys ≤0 n˜ao pode ocorrer visto

queS2 foi assumido como limitado produzindo um problema mestre limitado.

A vari´avelλB a sair da base ´e determinada pela raz˜ao m´ınima usual, ou seja, deixa a base a

vari´avelλr onde o ´ındicer ´e determinado como segue:

¯br yrs

= min

1≤i≤(m+1){

¯bi yis

, yis >0}; (1.24)

onde yrs ´e denominado elemento pivˆo. Com o pivoteamento, a base inversa,(B−1), as vari´aveis

duais,(π), e o valor objetivo (z) s˜ao atualizados.

(22)

Princ´ıpio da Decomposi¸c˜ao de Dantizg-Wolfe 9                                                 

minz=c1x1+c2x2+· · ·+cpxp (1.25)

Sujeito a:

A1x1 + A2x2 + · · · + Apxp = b0

B1x1 = b1

B2x2 = b2

. .. = ...

Bpxp = bp

(1.26)

x1≥0, x2 ≥0,· · · ,xp ≤0. (1.27)

com o subproblema (1.20) - (1.22)

                           min p X i=1

(ci−π1Aˆ1)xi (1.28)

Sujeito a:

Bixi=bi, i= 1,· · ·, p

(1.29)

xi ≥0, i= 1,· · · , p. (1.30)

O objetivo (1.28) ´e uma soma separ´avel emxie as restri¸c˜oes (1.29) s˜ao independentes. Desta

forma, este problema pode ser reduzido a p-subproblemas independentes, onde o i-´esimo subproblema

pode ser representado como segue:

                        

min (ci−π1Ai)xi. (1.31)

Sujeito a :

Bixi =bi,

(1.32)

xi ≥0. (1.33)

Adotando-se

Xi={xi|Bixi=bi;xi≥0}, (1.34)

o i-´esimo subproblema apresenta-se:

min

xi∈Xi

(ci−π1Ai)xi. (1.35)

Um algoritmo de dois n´ıveis para resolver o problema de (1.25) - (1.27) dever´a agora ser

(23)

Algoritmo de Dantzig-Wolfe 10

no segundo. Assumiremos que uma solu¸c˜ao inicial do problema mestre ´e conhecida com a matriz base

correspondente,B, e as vari´aveis duaisπ1, π0.

Neste caso, o algoritmo de decomposi¸c˜ao de Dantzig-Wolfe pode ser visto como segue:

Algoritmo 1.1. Algoritmo de Decomposi¸c˜ao de Dantzig-Wolfe

1. Usando as vari´aveis duaisπ1, resolvemos cada subproblemai(1.31) - (1.33) obtendo

as suas respectivas solu¸c˜oesxi(π1), e o valor ´otimo objetivo,zi0. Seja

x(π1) = (x1(π1),· · · ,xp(π1))t.

2. Calculamos os valores dos custos relativos das vari´aveisλ′js,f¯j (1.18), e escolhemos

o m´ınimo entre eles:

min

j

¯ fj =

p X

i=1

zi0−π0; (1.36)

onde

zi0 = min (ci−π1Ai)xi.

(1.37)

Se este valor m´ınimo for um valor n˜ao negativo, ou seja ,

min ¯fj ≥0, (1.38)

significa que podemos parar o algoritmo, pois n˜ao existem mais candidatas a entrar na

base. Assim, a solu¸c˜ao ´otima para (1.25) - (1.27) ´e

x0 =

r X

j=1

λjxj, (1.39)

onde xj s˜ao pontos extremos deS

2 correspondentes `a vari´avel b´asicaλj.

3. Se minf¯j <0, constru´ımos a coluna

  

p X

i=1

Aixi(π1)

1

  

(1.40)

atualizada atrav´es da multiplica¸c˜ao pela inversa da antiga base,B−1, e usando a opera¸c˜ao

pivˆo do simplex usual, obtemos uma nova base inversa e um novo vetor dos multiplicadores

(24)

Observa¸c˜oes 11

Se o problema mestre ´e n˜ao degenerado[4], ent˜ao cada itera¸c˜ao decrescezpara um valor n˜ao

nulo. Isto se deve ao fato que existe um n´umero finito de bases poss´ıveis e nenhuma se repete. Sendo

assim, o princ´ıpio da decomposi¸c˜ao de Dantzig-Wolfe encontrar´a a solu¸c˜ao ´otima em um n´umero finito

de itera¸c˜oes.

Observe que a solu¸c˜ao ´otima do problema original,x0, n˜ao ´e necessariamente qualquer uma

das solu¸c˜oes dos subproblemas. Por (1.39) temos quex0´e alguma combina¸c˜ao convexa de tais solu¸c˜oes. Portanto, o problema mestre n˜ao pode obter o ´otimo do problema original simplesmente enviando os

correspondentes custosπ1 aos subproblemas. O problema mestre dever´a combinar estas solu¸c˜oes para

obter a solu¸c˜ao global.

1.2

Algumas considera¸

oes sobre o algoritmo de Dantzig-Wolfe

1. Observamos que o seguinte algoritmo ´e uma implementa¸c˜ao direta do m´etodo simplex revisado.

Exceto o c´alculo dos custos relativos ¯fij que ´e obtido resolvendo o subproblemai. Entretanto, o

algoritmo converge em um n´umero finito de itera¸c˜oes.

2. Em cada itera¸c˜ao, uma melhor solu¸c˜ao b´asica fact´ıvel para o problema mestre, (1.47)-(1.53),

´e obtida ao introduzir a vari´avel n˜ao b´asica λsj, gerada pela solu¸c˜ao do subproblema, (1.55)

- (1.57). Sendo assim, o subproblema fornece um ponto extremo xjs, que corresponde a uma

coluna atualizada

¯ fsj

ysj 

.

3. Em cada itera¸c˜ao um novo vetor dual ´e passado do problema mestre para o subproblema. A base

´otima da ´ultima itera¸c˜ao ´e utilizada, a fim de atualizar a sua fun¸c˜ao, modificando seus custos.

4. Em cada itera¸c˜ao, o subproblema n˜ao precisa ser otimizado completamente. ´e necess´ario apenas

que o corrente ponto extremoxjs satisfa¸ca ¯fsj ≤0. Neste caso λsj ´e candidato a entrar na base. 5. Se as restri¸c˜oes do problema mestre s˜ao desigualdades, ent˜ao n´os devemos verificar os custos das

vari´aveis de folga que foram adicionadas resolvendo os subproblemas. Para as restri¸c˜oes i do

problema mestre do tipo≤ associada `a vari´avel de folgasi,n´os temos,

fsi−zsi = (π1, π0) 

e1

0

−0 =π1. (1.41)

Assim, para um problema de minimiza¸c˜ao uma vari´avel de folga associada com a restri¸c˜ao do

tipo ≤ ´e eleita a entrar na base se π1 > 0. ( Note que o crit´erio de entrada ´e π1 < 0 para

(25)

Problema Mestre Restrito 12

6. Para darmos in´ıcio ao m´etodo, deveremos partir de uma solu¸c˜ao b´asica fact´ıvel inicial. Caso,

esta solu¸c˜ao n˜ao seja poss´ıvel ao ser acrescentado as vari´aveis de folga, devemos usar algum

m´etodo para obter tal solu¸c˜ao; como por exemplo o M´etodo das Duas Fases ou do Big-M[4].

1.3

Problema Mestre Restrito

Como previamente formulado, o princ´ıpio da decomposi¸c˜ao de Dantzig-Wolfe, resolve

proble-ma de otimiza¸c˜ao em dois n´ıveis. Ao n´ıvel chamadoProblema Mestre (1.13) - (1.16), ´e poss´ıvel

apre-sentar uma nova formula¸c˜ao denominada de Problema Mestre Restrito. Tal problema apresenta al´em das colunas referente `a vari´avel de entrada, as colunas das vari´aveis que foram retiradas. Ent˜ao

o problema mestre restrito pode ser escrito na forma

                

               

minf1λ1+· · ·+fmλm+f λ (1.42)

Sujeito a:

p1λ1+· · ·+pmλm+pλ=b0

(1.43)

λ1+· · ·+λm+λ= 1 (1.44)

λi ≥0, i= 1,· · · , m, λ≥0 (1.45)

ondem=m1+ 1,osλ′iss˜ao as vari´aveis b´asicas corrente eλ´e a vari´avel que est´a entrando na base.

Assumindo que a vari´avel λ tem um custo relativo ¯f < 0, se a base corrente ´e n˜ao degenerada, a vari´avel que deixar a base ter´a um ¯f positivo, e portanto, a nova solu¸c˜ao ser´a ´otima. O ´unico caso no

qual mais de uma itera¸c˜ao ´e necess´aria para passar o teste de otimalidade ´e quando a base corrente

´e degenerada e o elemento pivˆo, (1.24), na coluna de entrada ´e negativo. Neste caso, n˜ao ´e muito

vantajoso resolver o problema na forma (1.42) - (1.45).

1.4

Estrat´

egia alternativa para decompor o primal

Uma outra forma de decompor o problema primal (1.25) - (1.27), alterando a forma do

problema mestre (1.13) - (1.16), ´e considerar as solu¸c˜oes para o conjunto de restri¸c˜oes do subproblema

iescritas como:

xi= r X

j=1

λijxji (1.46)

com o xji ponto extremo de Xi(1.34); i= 1,2,· · ·, p. Ent˜ao, ´e f´acil verificar que o problema mestre

(26)

Estrat´egia alternativa para decompor o primal 13                                                  min p X i=1 r X j=1

fijλij (1.47)

Sujeito a: p X i=1 r X j=1

pijλij =b0

(1.48)

r X

j=1

λij = 1, i= 1,2,· · ·, p, (1.49)

λij ≥0 (1.50)

(1.51)

onde

fij = cixji

(1.52)

pij = Aixji (1.53)

Este novo problema apresenta algumas vantagens computacionais que podem ser vistas

quando consideramos as solu¸c˜oes de (1.47) - (1.53) pelo m´etodo simplex revisado. Al´em disso, difere

do problema mestre (1.13) - (1.16) obtido inicialmente, em dois aspectos: (1) particularmente, ele

tem p linhas convexas;(2) cada subsistema Bixi =bi,xi ≥0, ´e representado separadamente por um

conjunto de vari´aveisλij.

SejamB uma matriz b´asica fact´ıvel (m1+p)×(m1+p) eπ1, π01,· · ·, π0p as vari´aveis duais

para esta base, comπ1 associado `a restri¸c˜ao (1.48) e osπ0i associados `a restri¸c˜ao (1.49). Atualizando

a coluna associada `aλij, produzimos

¯

fij = (ci−πAi)xji −π0i. (1.54)

O problema encontrado para ifixo, min

j

¯

fij, ´e equivalente a resolver o i-´esimo subproblema                         

min (ci−π1Ai)xi (1.55)

Sujeito a:

Bixi =bi,

(1.56)

xi ≥0. (1.57)

(27)

O caso da regi˜ao Xi ilimitada 14

Sejaz0i o valor objetivo minimal do subproblema (1.55) - (1.57) acima. Se

¯

fsj = min i minj

¯

fij = min i (z

0

i −π0i)≥0 (1.58)

a solu¸c˜ao corrente ´e ´otima. Caso contr´ario, a coluna a entrar na base ´e aquela com

min

i (z

0

i −π0i). (1.59)

Se o m´ınimo acima ocorre parai=sexjs(π1) ´e solu¸c˜ao do subproblemas, a coluna

correspon-dente `a vari´avel a entrar na base ´e dada por

   

Asxjs(π1) − − − − − us     

,ondeus ´e um vetor p-componente com

um na posi¸c˜aose zeros nas outras. Esta nova coluna entra na base produzindo novos multiplicadores (π1, π0). Colunas similares poderiam ter sido gerados das solu¸c˜oes de outros subproblemas.

Sejam=m1+p, definimos{pij}como as colunas da base corrente, e sejap∗1,· · · , p∗pas colunas

geradas das ´ultimas solu¸c˜oes dos subproblemas correspondentes a λ∗1, λ∗2,· · · , λ∗p. O novo problema

mestre restrito ser´a

                                     min p X i=1 X j b´asico

fijλij + p X

i=1

fi∗λ∗i =b0 (1.60)

p X

i=1

X

j b´asico

pijλij + p X

i=1

p∗iλ∗i =b0 (1.61)

X

j b´asico

λij +λ∗i = 1; i= 1,2,· · · , p (1.62)

λij ≥0, i= 1,2,· · · , p j= 1,2,· · ·, r (1.63)

λ∗i ≥0, i= 1,2,· · · , p (1.64)

1.5

Regi˜

ao

X

i

ilimitada

Para um conjunto Xi = {xi|Bixi = bi;xi ≥ 0} ilimitado o algoritmo de decomposi¸c˜ao

de Dantzig-Wolfe deve ser modificado. Neste caso, os pontos de Xi ser˜ao representados como uma

combina¸c˜ao linear convexa dos pontos extremos deXi mais uma combina¸c˜ao linear n˜ao negativa das

(28)

O caso da regi˜ao Xi ilimitada 15

xi = r X

j=1

λijxji + l X

k=1

µikdki (1.65)

r X

j=1

λij = 1 (1.66)

λij ≥0, j= 1,2,· · · , r; i= 1,2,· · · , p (1.67)

µik ≥0, k= 1,2,· · ·, l; i= 1,2,· · · , p (1.68)

onde x1

i,x

2 i,· · · ,x

r

i s˜ao pontos extremos de Xi e d

1

i,d

2 i,· · · ,d

l

i s˜ao dire¸c˜oes extremas de Xi. O

problema original dever´a ser transformado no chamado problema mestre nas vari´aveis λij e µik como

segue:                                                    min p X i=1 r X j=1

(cixji)λij+ p X i=1 l X k=1

(cidki)µik (1.69)

Sujeito a: p X i=1 r X j=1

(Aixji)λij+ p X i=1 l X k=1

(Aidki)µik =b0

(1.70)

r X

j=1

λij = 1; i= 1,2,· · · , p (1.71)

λij ≥0, j= 1,2,· · · , r; i= 1,2,· · · , p (1.72)

µik ≥0, k= 1,2,· · · , l; i= 1,2,· · ·, p. (1.73)

Para resolver este problema (1.69)-(1.73) optamos por utilizar o m´etodo simplex revisado visto

que o n´umero de vari´aveis poder´a ser muito grande dependendo da quantidade de pontos extremos

e dire¸c˜oes extremas. A fim de iniciarmos tal m´etodo, devemos ter uma solu¸c˜ao b´asica fact´ıvel com

a sua matriz base correspondente, B, as vari´aveis duais π1 correspondentes `a restri¸c˜ao (1.70) e π0i

correspondente `a restri¸c˜ao (1.71). Lembremos que π = (π1, π01,· · · , π0i,· · ·, π0p) = fBB−1, fB ´e o

custo das vari´aveis b´asicas e ¯b=B−1

b0

1

, mostrado na Tabela 1.1.

(π1, π01,· · · , π0i,· · · , π0p) fB¯b

B−1 ¯b

Tabela 1.1: Tabela do M´etodo Simplex Revisado referente ao problema mestre.

Relembremos que a solu¸c˜ao ´e ´otima para o problema original se os custos relativos das

(29)

O caso da regi˜ao Xi ilimitada 16

de otimalidade devem satisfazer `as seguintes condi¸c˜oes:

(i) λij n˜ao b´asica⇒0≤f¯ij = cixji −π 

Aixji

1

= (ci−π1Ai)xji −π0i (1.74)

(ii) µik n˜ao b´asica⇒0≤f¯ik = cidki −π 

Aidki

0

= (ci−π1Ai)dki (1.75)

Devido ao elevado n´umero de vari´aveis n˜ao-b´asicas, verificar as condi¸c˜oes de otimalidade

(1.74) - (1.75) ´e computacionalmente invi´avel. Portanto devemos determinar se as condi¸c˜oes s˜ao

v´alidas ou n˜ao resolvendo os subproblemas. Determinamos inicialmente o conjunto solu¸c˜ao e o valor

objetivo minimal zi0, de cada subproblema i (1.31) - (1.33) e, em seguida, aplicamos o crit´erio usual do m´etodo simplex (1.58)

Suponhamos primeiramente que o valor da solu¸c˜ao ´otima do subproblema ´e ilimitada. Isto ´e

poss´ıvel se somente se, uma dire¸c˜ao extremadk

s ´e encontrada tal que (cs−π1As)dks <0. Isto significa

que a condi¸c˜ao (1.75) foi violada. Portanto, a vari´avel µsk ´e eleita a entrar na base. Neste caso, 

Asdks

0

 ´e atualizada pr´e-multiplicando-a por B−1 e a coluna resultante ´e inserida na Tabela 1.1.

Assim, o m´etodo simplex revisado continua com uma pr´oxima itera¸c˜ao.

Consideremos agora a solu¸c˜ao ´otima limitada. Neste caso, (ci −π1Ai)dki ≥ 0 ocorre para

todas as dire¸c˜oes extremas, ent˜ao a condi¸c˜ao necess´aria e suficiente (1.75) para que a solu¸c˜ao seja

limitada, ´e v´alida. Por outro lado observemos tamb´em a validade da equa¸c˜ao (1.74). Sejam xjs um

ponto extremo ´otimo e ¯fsj o objetivo ´otimo para o subproblemas(1.31)-(1.33). Se ¯fsj ≥0, a condi¸c˜ao

(1.74) ´e v´alida para o subproblema s, ou seja, pela otimalidade dexjs, para cada ponto extremoxji,

temos

¯

fij = (ci−π1Ai)xji −π0i≥(cs−π1As)xsj −π0s= ¯fsj (1.76)

e portanto, temos uma solu¸c˜ao ´otima do problema original.

Caso contr´ario, se ¯fsj <0 ent˜ao λsj ´e eleita a entrar na base. Isto ´e feito inserindo a coluna

¯ fsj

ysj 

 na Tabela 1.1, onde ysj =B−1 

   

Asxjs

− − − − −

us 

   

ondeus ´e um vetor p-componente com um

na posi¸c˜ao s e zeros nas outras. ´e importante salientar que se o problema mestre apresentar outras vari´aveis expl´ıcitas incluindo as vari´aveis de folga, ent˜ao deveremos verificar os custos reduzidos destas

(30)

Limite inferior para o custo m´ınimo 17

Em resumo, cada subproblemai´e resolvido separadamente. Se o subproblemasproduz uma

solu¸c˜ao ilimitada, ent˜ao uma dire¸c˜ao extremadks encontrada, ´e candidata a entrar na base do problema

mestre. Se o subproblema s produz um ponto ´otimo limitado e ¯fsj < 0, ent˜ao a vari´avel associada

ao ponto extremo ´e candidato a entrar na base mestre. Se nenhuma dessas condi¸c˜oes ocorre, ent˜ao

n˜ao existem candidatas a entrar na base do problema mestre, ou seja, temos o ´otimo. Caso contr´ario,

podemos aplicar a regra do ¯fsj mais negativo dentre as vari´aveis candidatas a entrar na base mestre.

Selecionando a candidata, atualizamos a coluna correspondente, fazemos os devidos pivoteamentos na

tabela mestre e repetimos o processo com as outras candidatas.

1.6

Limite inferior para o custo m´ınimo

Relembrando o Algoritmo de Dantzig-Wolfe(Se¸c˜ao 1.1) vimos que para satisfazermos o seu

crit´erio de parada t´ınhamos que efetuar muitos c´alculos nas itera¸c˜oes. Este fato nos levaria a consumir

muito tempo computacional quando o problema fosse de grande porte.

Por esta raz˜ao, desenvolveremos um limite inferior para o valor objetivo da solu¸c˜ao fact´ıvel do

problema original, e portanto, um limite inferior do objetivo ´otimo. Por outro lado, como o algoritmo

de Dantzig-Wolfe gera pontos fact´ıveis que n˜ao pioram o valor objetivo pelo problema mestre, n´os

temos uma seq¨uencia de limites superiores n˜ao crescente. Ent˜ao, devemos parar quando a diferen¸ca

entre o objetivo do ponto fact´ıvel corrente e o limite inferior estiver dentro de uma tolerˆancia aceit´avel.

Isto n˜ao dever´a fornecer o ponto ´otimo verdadeiro, mas garantir´a boas solu¸c˜oes fact´ıveis dentro de

qualquer precis˜ao desej´avel ao ´otimo.

Considere o problema mestre (1.47)-(1.53), reescrito abaixo;

                                                

minz=

p X i=1 r X j=1

fijλij (1.77)

Sujeito a: p X i=1 r X j=1

pijλij =b0

(1.78)

r X

j=1

λij = 1, i= 1,2,· · ·, p, (1.79)

λij ≥0 (1.80)

(31)

Limite inferior para o custo m´ınimo 18

onde

fij = cixji

(1.82)

pij = Aixji (1.83)

Multiplicando (1.78) pelos multiplicadores simplexπ1e (1.79) pelos multiplicadoresπ0i,somando

e subtraindo da equa¸c˜ao (1.77), produzimos

z−π1b0−X

i

π0i = X

i X

j

λij(fij−π1pij −π0i) (1.84)

O valor da express˜ao (fij −π1pij −π0i) na equa¸c˜ao (1.84) ´e o custo relativo para λij, f¯ij.

Resolvendo os subproblemas (1.55)- (1.57), calculamos min

j

¯

fij para cadai. Comoλij ´e n˜ao negativo,

¯

fij, poder´a ser substitu´ıdo por este valor minimal e portanto a equa¸c˜ao (1.84) pode ser vista como a

desigualdade (1.85) abaixo:

z−π1b0−

X

i

π0i ≥ X

i X

j

λijmin j

¯

fij (1.85)

z−π1b0−X

i

π0i ≥ X

i

(min

j

¯ fij)

X

j

λij (1.86)

Substituindo (1.79) a desigualdade (1.86) torna-se:

z ≥ X

i

(min

j

¯

fij) +π1b0+

X

i

π0i (1.87)

Sabendo que (1.87) ´e v´alida para todos os valores de z obtido do problema mestre (1.77)-(1.83), ent˜ao valer´a para o valor m´ınimo. Assim,

minz ≥ X

i

(min

j

¯

fij) +π1b0+π0ep (1.88)

ondeep ´e o vetor p-dimensional com componentes iguais ao valor um. A express˜ao (1.88) poder´a ser

escrito na forma mais compacta fazendo,

(π1, π0)

b0

ep 

=cBB−1 

b0

ep 

=cBxB=zB (1.89)

ondezB ´e o valor dezassociado ´a base corrente, B. Portanto (1.88) torna-se:

minz ≥ zB+ p X

i=1

(min

j fij) (1.90)

(32)

Interpreta¸c˜ao econˆomica do m´etodo 19

1.7

Interpreta¸

ao econˆ

omica do m´

etodo

Considere um n´ıvel central e um subn´ıvel de uma organiza¸c˜ao descentralizada. O n´ıvel

central opera em um primeiro conjunto de restri¸c˜oes

p X

i=1

Aixi=b0, e o subn´ıvel no segundo conjunto

de restri¸c˜oesBixi=bi, i= 1,2,· · · , p.Temos queb0ebi dever´a ser interpretado como recursos para o

n´ıvel central e subn´ıvel, respectivamente. Durante o curso do algoritmo, informa¸c˜oes s˜ao comunicadas

de um n´ıvel para o outro. O n´ıvel central resolve o Problema mestre e como resultado, valores marginais

π ou recursos centrais, s˜ao comunicados para os subn´ıveis. O subn´ıvel resolve os subproblemas nos quais a fun¸c˜ao objetivo incorpora os custos para utiliza¸c˜ao dos recursos centrais. O subn´ıvel ent˜ao

sugere atividadesxipara incorporar ao n´ıvel central. Durante as itera¸c˜oes, nenhuma informa¸c˜ao direta

correspondente aos coeficientes nas restri¸c˜oes ´e comunicada entre o n´ıvel central e o subn´ıvel. Al´em

disso, a informa¸c˜ao do custo ´e comunicado do n´ıvel central para o subn´ıvel.

Na maioria das aplica¸c˜oes, as restri¸c˜oes que n˜ao s˜ao de acoplamento formam a estrutura

diago-nal, nas quais as vari´aveis s˜ao agrupadas em blocos independentes. Isto significa que os subproblemas

s˜ao separados em v´arios problemas independentes. Em um contexto econˆomico, a estrutura bloco

angular reflete a divis˜ao em m´ultiplos subn´ıveis independentes, onde cada um comunica diretamente

com o n´ıvel central.

1.8

Exemplo num´

erico

Para ilustrar o princ´ıpio da decomposi¸c˜ao de Dantzig-Wolfe, consideremos o problema

min−x1−x2−2x3−x4

Sujeito a:

(1.91)

x1 + 2x2 + 2x3 + x4 ≤ 40

(1.92)

x1 + 3x2 ≤ 30

(1.93)

2x1 + x2 ≤ 20

(33)

Exemplo 20

x3 ≤ 10

(1.95)

x4 ≤ 10

(1.96)

x3 + x4 ≤ 15

(1.97)

xj ≥ 0 j= 1,· · ·,4

(1.98)

Este problema tem a primeira restri¸c˜ao, (1.92), identificada como de acoplamento e dois

blocos independentes, sendo o primeiro bloco formado pela segunda e terceira restri¸c˜ao (1.93) - (1.94)

e o segundo bloco formado pela quarta, quinta e sexta restri¸c˜ao, (1.95), (1.96) e (1.97) respectivamente,

cujas as regi˜oes fact´ıveis s˜ao mostradas nas Figuras 1.5 e 1.6, respectivamente.

x 1 2 x 10 10 20 30 (6,8)

Figura 1.5: Regi˜ao fact´ıvel do conjuntoX1.

10 15 (5,10) (10,5) 15 10 x 4 3 x

Figura 1.6: Regi˜ao fact´ıvel do conjuntoX2.

Al´em disso, o problema pode ser decomposto em dois problemas menores, incluindo ao

pro-blema mestre as restri¸c˜oes de convexidade

p X i=1 r X j=1

λij = 1. Seja x1 e x2 solu¸c˜oes fact´ıveis para os

blocos 1 e 2, respectivamente, escrevemosx=

p X

i=1

xi = p X i=1 r X j=1

λijxji,ondex j

i s˜ao pontos extremos do

subproblemai. A fun¸c˜ao objetivo e as restri¸c˜oes de acoplamento s˜ao escritas como

z=c1x1+c2x2

A1x1+A2x2+s=b

ondec1 = (−1,−1), c2 = (−2,−1), A1 =

h

1 2

i

,A2 =

h

2 1

i

,x1 = (x1, x2),x2 = (x3, x4), b= 40

e s= (s1, s2) tal que s≥0.O problema mestre ´e transformado em

minz=X

j

(c1xj1)λ1j + X

j

(34)

Exemplo 21

Sujeito a:

2

X

i=1

X

j

(Aixji)λij+s=b

(1.100)

2

X

i=1

X

j

λij = 1 (1.101)

λij ≥0, i= 1,2 (1.102)

Escolhendox1

1 =x12 = (0,0) e substituindo no problema mestre (1.99)-(1.102), devemos obter

como solu¸c˜ao b´asica inicial

λ11=λ21= 1, s= 40.

Assim, a tabela do simplex revisado ´e como segue:

Vari´avel b´asica Colunas do problema mestre

s λ11 λ12 −z Constantes

s 1 40

λ11 1 1

λ12 1 1

−z 1 0

Tabela 1.2: Tabela inicial do simplex revisado do problema mestre.

ITERAC¸ ˜AO 1

Os multiplicadores do simplex (vari´aveis duais) para o problema mestre est˜ao contidos no

topo da Tabela 1.2, os quais s˜ao todos nulos. Logo o primeiro conjunto de subproblemas ´e

minz1 =−x1−x2

Sujeito a:

B1x1 ≤b1

onde

B1 =

1 3

2 1

(35)

Exemplo 22

e

minz2 =−2x3+x4

Sujeito a:

B2x2 ≤b2

onde

B2 =

     1 0 0 1 1 1     

com solu¸c˜oes ´otimas:

x21 = (6,8) z10=−14, x22 = (10,5) z20=−25. Os custos m´ınimos relativos s˜ao:

min ˆfx1 =z 0

1 −π01=−14≤0,

min ˆfx2 =z 0

2 −π02=−25≤0.

Assim, temos associado a cada solu¸c˜ao dos subproblemas uma coluna do problema mestre.

As colunas correspondentes `a solu¸c˜ao corrente s˜ao:

       

c1x21

A1x21

1 0         =         −14 22 1 0         e        

c2x22

A2x22

0 1         =         −25 25 0 1        

O problema mestre restrito decorrente do problema mestre corrente mais as novas colunas ´e

como segue;

min−14λ21−25λ22 (1.103)

Sujeito a:

22λ2

1 + 25λ22 + s = 40

λ11 + λ21 = 1

λ12 + + λ22 = 1

(1.104)

com todas vari´aveis n˜ao negativas. O problema (1.103)-(1.104) ´e resolvido pelo M´etodo Simplex

(36)

Exemplo 23

Vari´avel b´asica Colunas do problema mestre Coluna de entrada

s λ11 λ12 −z Constantes λ22

s 1 40 25

λ11 1 1 0

λ12 1 1 1

−z 1 0 -25

Tabela 1.3: Entra na base a vari´avelλ22,sai λ12.

Vari´avel b´asica Colunas do problema mestre Coluna de entrada

s λ11 λ12 −z Constantes λ21

s 1 -25 15 22

λ11 1 1 1

λ22 1 1 1

−z 25 1 25 -14

Tabela 1.4: Entra na base a vari´avelλ21,sais.

Vari´avel b´asica Colunas do problema mestre

s λ11 λ12 −z Constantes

λ21 221 −2522 1522

λ11221 1 2522 227

λ22 1 1

−z 1422 20022 1 34116

Tabela 1.5: Solu¸c˜ao ´otima do exemplo 1.

a nova solu¸c˜ao para o problema original ´e:

x1 = λ11x11+λ21x21=

7

22(0,0) + 15

22(6,8) (1.105)

x2 = λ22x22 = (10,5) (1.106)

z = −368

11 . (1.107)

ITERAC¸ ˜AO 2

Novos multiplicadores simplex s˜ao encontrados na Tabela 1.5

(π, π01, π02) =

µ

−14

22,0,− 200

22

(37)

Exemplo 24

Esses s˜ao usados para formar novos custos para os subproblemas

z1 = (c1−πA1)x1 = [(−1,−1) +

14

22(1,2)]x1 =− 8 22x1+

6

22x2 (1.108)

z2 = (c2−πA2)x2 = [(−2,−1) +

14

22(2,1)]x2=− 16

22x3+− 8

22x4 (1.109)

Minimizandoz1 ez2sobre o conjunto de restri¸c˜oes dos subsistemas obtemos a solu¸c˜ao ´otima:

x31 = (10,0) (1.110)

z10 =−80

22 (1.111)

x22 = (10,5) (1.112)

z20=−200

22 (1.113)

O novo problema mestre restrito ficar´a da forma

min−14λ21−25λ22−10λ31−25λ32 (1.114)

Sujeito a:

22λ21 + 25λ22 + 10λ31 + 25λ32 = 40

λ11 + λ21 + λ31 = 1 λ22 + λ32 = 1

(1.115)

A solu¸c˜ao ´otima para o problema restrito ´e uma solu¸c˜ao b´asica fact´ıvel para este problema,

com base inversa dada no final da Tabela 1.5 da Itera¸c˜ao 1. A solu¸c˜ao do problema (1.114) - (1.115)

´e apresentado nas Tabelas1.6 e 1.7.

Vari´avel b´asica Colunas do problema mestre Coluna de entrada

s λ11 λ12 −z Constantes λ31

λ21 221 −2522 1522 1022

λ11221 1 2522 227 1222

λ22 1 1 0

−z 1422 20022 1 34116 −8022

(38)

Exemplo 25

Vari´avel b´asica Colunas do problema mestre

s λ11 λ12 −z Constantes

λ21 121 −1012 −2512 125

λ31121 2212 2512 127

λ22 1 1

−z 124 8012 20012 1 −1103

Tabela 1.7: Solu¸c˜ao ´otima do exemplo 2.

A solu¸c˜ao fact´ıvel corrente para o problema original (1.91)-(1.98) ´e

x1 = λ21x12+λ31x31 =

5

12(6,8) + 7

12(10,0) =

µ

25 3 ,

10 3

(1.116)

x2 = λ22x22 = (10,5) (1.117)

z = −110

3 . (1.118)

ITERAC¸ ˜AO 3

Os novos multiplicadores do simplex (ver Tabela 1.7) e as fun¸c˜oes objetivos dos subproblemas

s˜ao

(π, π01, π02) =−

µ

4 12,

80 12,

200 12

(1.119)

z1 = (c1−πA1)x1 = [(−1,−1) +124(1,2)]x1=−23x1+−13x2

z2 = (c2−πA2)x2 = [(−2,−1) +2214(2,1)]x2=−43x3+−23x4

A solu¸c˜ao ´otima dos subproblemas ´e

x41 = (6,8) (1.120)

ou

x51 = (10,0) (1.121)

z10 =−20

3 (1.122)

x42 = (10,5); (1.123)

z20=−50

3 (1.124)

min ˆfx1 =z 0

1−π01= 0 (1.125)

min ˆfx2 =z 0

2−π02= 0 (1.126)

min ˆcs=−π01=

80

(39)

Exemplo 26

Visto que o valor de (1.125), (1.126) e (1.127) s˜ao n˜ao negativos, a solu¸c˜ao corrente do problema

mestre ´e ´otima, e a solu¸c˜ao ´otima do problema original conforme (1.116) - (1.118), ´e dada por:

x1 = (x1, x2) = (

25 3 ,

10

3 ) (1.128)

x2 = (x3, x4) = (10,5) (1.129)

z = −110

(40)

Cap´ıtulo 2

Os Problemas de Job-Shop

Os problemas de seq¨uenciamento do tipo job-shop s˜ao problemas combinat´orios classificados

NP-dif´ıcil[16]. Este problema de job-shop tem como dados: tarefas, restri¸c˜oes de potencialidade,

recursos e fun¸c˜ao econˆomica.

As tarefas podem ser ligadas porrestri¸c˜oes de potencialidade. Estas englobam: (i) as

restri-¸c˜oes de sucess˜ao, as quais significam, uma tarefa deve ser executada posteriormente a uma outra tarefa;

(ii) as restri¸c˜oes de localiza¸c˜ao no tempo , as quais significam,uma tarefa deve ser conclu´ıda em uma

determinada data ou sua execu¸c˜ao n˜ao deve come¸car antes e nem finalizar ap´os uma determinada data.

Estas tarefas requerem certosrecursospara a sua exe cu¸c˜ao. Estes recursos, por sua vez, introduzem

restri¸c˜oesdisjuntivasno problema. Uma restri¸c˜ao disjuntiva aparecer´a quando duas tarefas, utilizando

um mesmo recurso, n˜ao puderem ser executadas simultaneamente. Enfim, deve-se programar as tarefas

de forma a otimizar um determinado crit´erio que ser´a a minimiza¸c˜ao de uma determinada fun¸c˜ao

econˆomica.

De um ponto de vista industrial, num problema de f´abrica, as tarefas (chamadas opera¸c˜oes

elementares) s˜ao reagrupadas em entidades chamadas trabalhos (ou jobs). Um problema de f´abrica,

em geral, cont´em um conjunto de m´aquinas distintas e cada trabalho ´e um conjunto de opera¸c˜oes

elementares, onde cada uma delas deve ser executada numa m´aquina diferente.

Podemos distinguir trˆes tipos de problemas de f´abrica , segundo a natureza das restri¸c˜oes de

precedˆencia entre as opera¸c˜oes de um mesmo trabalho[3]: (1) se as opera¸c˜oes s˜ao independentes,

trata-se de um problema deopen-shop; (2) se as opera¸c˜oes s˜ao ligadas por uma ordem, n˜ao necessariamente

(41)

Os problemas de f´abrica 28

por uma mesma ordem para todos os trabalhos, trata-se de um problema deflow-shop.

Em particular, trataremos o problema de job-shop cujas caracter´ısticas ser˜ao mostradas nas se¸c˜oes

seguintes.

2.1

Os problemas de f´

abrica

Nos problemas de f´abrica, as tarefas s˜ao asopera¸c˜oes elementaresrelativas `a fabrica¸c˜ao de um

produto; elas necessitam para sua realiza¸c˜ao de um recurso principal chamadom´aquina. A fabrica¸c˜ao

de um produto ´e sempre denominadotrabalho(job). Geralmente, as opera¸c˜oes de um mesmo trabalho

s˜ao organizadas em uma seq¨uˆencia denominadas gama operat´oria , enquanto que as opera¸c˜oes de

trabalhos diferentes s˜ao independentes.

Consideramos o caso no qual uma f´abrica cont´emm m´aquinas distintas enprodutos. Cada

produto Pi ´e um conjunto de ni opera¸c˜oes elementares. Assim, existem n0 =

n X

i=1

ni opera¸c˜oes na

f´abrica, cada uma delas tendo que ser executada, numa m´aquina diferente: a utiliza¸c˜ao de uma

m´aquinakpor uma opera¸c˜ao j ´e denotadaMk(Oj) =Mk; N´os utilizamos as seguintes nota¸c˜oes:

• P = o conjunto denprodutos (trabalhos) Pi.

• M= o conjunto dem m´aquinas Mk.

• O = o conjunto de todas as opera¸c˜oes(tarefas)Oj.

• O′

= O ∪ {O0, Of im} = o conjunto de todas as opera¸c˜oes (tarefas), incluindo as opera¸c˜oes

fict´ıcias,O0 e Of im, que n˜ao s˜ao executadas em m´aquinas e n˜ao aparecem nos produtos. Estas

opera¸c˜oes devem ser executadas respectivamente, antes e ap´os todas as opera¸c˜oes Oj ∈ O. O

conjuntoO cont´em n0 opera¸c˜oes enquanto que O′ cont´em (n0+ 2) opera¸c˜oes.

2.1.1 Os produtos e os crit´erios

Os produtos podem chegar na f´abrica numa mesma data ou de forma seq¨uenciada.

Esta-mos falando respectivamente dos problemas est´aticose dinˆamicos. Quando as datas de chegada dos

produtos s˜ao conhecidas de forma determinada podemos impor ao produtoPi,

(42)

O problema de Job-Shop 29

• uma “data mais tarde (di)” que representa o instante limite de fim de sua execu¸c˜ao.

A data de fim de execu¸c˜ao para cada produtoi´e comumente denotada por

Ci = max

1≤j≤ni

{Cj},

ondeCj representa a data de fim de execu¸c˜ao da opera¸c˜aoj na gama operat´oria do produto i.

2.1.2 As m´aquinas

As m´aquinas s˜ao recursos disjuntivos e assim, a execu¸c˜ao das opera¸c˜oes que utilizam a mesma

m´aquina deve ser planejada de tal sorte que as m´aquinas tenham uma opera¸c˜ao por vez para tratar. O

seq¨uenciamento dos problemas de f´abrica resulta freq¨uentemente na procura de seq¨uencias de opera¸c˜oes

sobre as m´aquinas.

Consideramos o caso onde uma opera¸c˜ao s´o pode ser executada numa ´unica m´aquina (f´abricas

com m´aquinas especializadas ), e os casos particulares onde todas as opera¸c˜oes s˜ao executadas numa

´

unica m´aquina existente na f´abrica (f´abricas com uma ´unica m´aquina).

Nas f´abricas com m´aquinas especializadas, podemos distinguir trˆes tipos de problemas de

f´abrica segundo a natureza das restri¸c˜oes de precedˆencia entre as opera¸c˜oes elementares de um mesmo

trabalho denominados[31]: (1) open-shop,(2) job-shop e(3) flow-shop.

O caso particular onde uma s´o m´aquina existe na f´abrica problemas com uma m´aquina foi

muito estudado na literatura [3]; a fabrica¸c˜ao de cada produto ´e ent˜ao reduzida a uma ´unica opera¸c˜ao

denominada simplesmente tarefa.

2.2

O Problema de Job-Shop

Consideremos os problemas de seq¨uenciamento do tipo job-shop constitu´ıdos por umconjunto

Mde m m´aquinas, umconjunto P de n produtos, um conjunto O de n0 opera¸c˜oes:

M={Mk|k= 1, . . . , m} ; P ={Pi|i= 1, . . . , n} ; e O={Oj|j= 1, . . . , n0}.

A utiliza¸c˜ao de uma m´aquina Mk por uma opera¸c˜ao Oj ´e denotado por M(Oj) = Mk. O

n´umero total de opera¸c˜oes executado por uma m´aquinaMk´e denotado pormk. A dura¸c˜ao de execu¸c˜ao

(43)

O problema de Job-Shop 30

ocupada e todas as outras opera¸c˜oes sobre a mesma m´aquina aguardar˜ao a sua vez de processamento.

Dessa forma, toda opera¸c˜ao numa m´aquina ter´a uma data de in´ıcio de execu¸c˜ao denotada por tj.

Esta data, calculada para cada opera¸c˜ao numa mesma m´aquina, depende do instante de finaliza¸c˜ao da

opera¸c˜ao precedente. O instante de t´ermino para uma opera¸c˜aoOj ´e denotadoCj, ondeCj =tj+pj.

Uma opera¸c˜ao pode ser ent˜ao caracterizada por seu produto, sua posi¸c˜ao na gama operat´oria,

sua m´aquina e sua dura¸c˜ao de execu¸c˜ao. A m´aquina deve ser ocupada durante um per´ıodo de tempo

conhecido a fim de processar a opera¸c˜ao.

A seguir apresentamos as principais caracter´ısticas de um produtoPi:

• ni = n´umero de opera¸c˜oes.

• Pi ={O1;O2;. . .;Oni} = seq¨uˆencia de opera¸c˜oes (gama operat´oria).

• pi = ni X

j=1

pj = dura¸c˜ao total de fabrica¸c˜ao dePi.

• ri = instante mais cedo de lan¸camento para toda opera¸c˜ao dePi.

• di = instante mais tarde do fim de execu¸c˜ao para todas as opera¸c˜oes dePi.

• Ci = instante para finalizar o processamento completo dePi, ondeCi= max

1≤j≤ni

{Cj}.

Nos limitamos aos problemas de job-shopest´aticos e determin´ısticos com m´aquinas

especia-lizadas. Dizemos que um problema ´e est´atico quando todos os seus dados s˜ao conhecidos a priori, e

determin´ıstico quando os tempos associados a cada opera¸c˜ao s˜ao perfeitamente determinados. Dizemos

que o problema ´e com m´aquinas especializadas quando possui uma lista de opera¸c˜oes, para cada

produto, e uma ordem de passagem nas m´aquinas, imposta inicialmente.

As restri¸c˜oes do problema de job-shop est˜ao relacionadas `as possibilidades de utiliza¸c˜ao das

m´aquinas e `as liga¸c˜oes que podem existir entre as opera¸c˜oes. As restri¸c˜oes que n´os adotamos s˜ao as

seguintes:

referentes `as m´aquinas

– As m´aquinas s˜ao independentes umas das outras, e est˜ao dispon´ıveis durante todo o per´ıodo

do seq¨uenciamento.

– Uma m´aquina n˜ao pode executar mais de uma opera¸c˜ao em um determinado instante. A

(44)

O problema de Job-Shop 31

– N˜ao pode existir apreemp¸c˜ao, isto ´e, uma opera¸c˜ao em execu¸c˜ao n˜ao pode ser interrompida

pois todas possuem a mesma prioridade.

referentes aos produtos

– Os produtos s˜ao independentes entre si e n˜ao existe uma ordem de prioridade entre eles.

– Um produto deve passar por uma ´unica m´aquina a cada vez, ou seja, cada opera¸c˜ao de sua

gama operat´oria deve passar por uma m´aquina diferente.

– Na gama operat´oria de um produto, cada opera¸c˜ao deve respeitar uma ordem de execu¸c˜ao:

a opera¸c˜ao Oj+1 n˜ao pode ser iniciada antes do t´ermino deOj.

A fim de tornar mais compreensiva todas as defini¸c˜oes vistas, apresentamos um exemplo de um

proble-ma de job-shop cujos dados s˜ao mostrados na Tabela 2.1. O crit´erio de otimiza¸c˜ao deste problema ´e a

n= 4 m= 3

n1=n2=n3= 3 m1=m2=m3= 4

produto opera¸c˜ao dura¸c˜ao m´aquina

1 1 3 2

1 2 3 3

1 3 1 1

2 4 3 3

2 5 2 2

2 6 3 1

3 7 1 2

3 8 4 1

3 9 4 3

4 10 4 1

4 11 3 2

4 12 2 3

Tabela 2.1: Dados do problema-exemplo de job-shop.

minimiza¸c˜ao do tempo total de seq¨uenciamento (makespan): min{max

i Ci}.Devemos ent˜ao determinar

a seq¨uˆencia das opera¸c˜oes em cada m´aquina, de tal sorte que ela seja a menor poss´ıvel respeitando

todas as restri¸c˜oes do problema.

Podemos tamb´em representar este problema de job-shop utilizando grafo potencial-tarefas

G = (X,C ∪ D) onde X ´e o conjunto de n´os do grafo associado a cada opera¸c˜ao de um determinado

produto, C representa o conjunto relativo aos arcos associados `as restri¸c˜oes de precedˆencia e D

rep-resenta o conjunto dos arcos associados `as restri¸c˜oes disjuntivas[31]. Desta forma, o problema acima,

ficar´a ilustrado pelo grafoG como mostra a Figura 2.1.

Na Figura 2.1, mostramos o grafo com o conjunto de arcos conjuntivosC representados pelas

(45)

O problema de Job-Shop 32 MAQUINA 1 1 3 4 2 O12

O 9

O 6

O 3

0 0 3 3 1 4

O 4

O 7

O10

3

2

4

3

O 2

5

O 8

O11

O 0

O 1

Ofin

O

MAQUINA 2 MAQUINA 3

´ ´ ´

Figura 2.1: Grafo potencial-tarefa representando o exemplo do job-shop.

arcos disjuntivos representam as m´aquinas. Cada opera¸c˜ao ´e representada por um n´o. Os arcos que

partem de cada n´o s˜ao ponderados pela dura¸c˜ao da opera¸c˜ao correspondente. Os arcos que est˜ao `a

origem do n´oO0 s˜ao ponderados pelo instante do lan¸camento da primeira opera¸c˜ao de cada produto.

Os arcos que chegam ao n´oOf im s˜ao ponderados pelo instante do t´ermino da ´ultima opera¸c˜ao de cada

produto. Neste exemplo, todos os produtos s˜ao lan¸cados inicialmente ao instante 0[31].

Para representar a solu¸c˜ao deste problema de job-shop utilizamos o diagrama de Gantt, que

nos permite visualizar um seq¨uenciamento representando a ocupa¸c˜ao das m´aquinas pelas opera¸c˜oes

em fun¸c˜ao do tempo[31]. Apresentamos, na Figura 2.2, duas solu¸c˜oes poss´ıveis para este problema

num diagrama de Gantt. Observamos que todas as restri¸c˜oes do problema s˜ao respeitadas; n˜ao existe

superposi¸c˜ao entre as opera¸c˜oes. Notemos que a solu¸c˜ao S1 forneceu um comprimento do seq¨

uencia-mento maior que a solu¸c˜aoS2: Cmax1 ≫Cmax2. Isto foi devido ao fato que, emS1, encontramos muito

mais tempo morto1 nas m´aquinas que em S

2. Estes tempos mortos s˜ao representados pelos espa¸cos

vazios de uma faixa antes do in´ıcio da execu¸c˜ao de alguma opera¸c˜ao numa mesma m´aquina.

tempo tempo M1 M2 M3 Cmax C max Solucao S 1

0 0 33 13 M3 M2 M1 P2 P3 P4 P1 P2 P3 P4 P1

: = 33

1

: = 13

2

Solucao S 2 ´ ´

~ ~

Figura 2.2: Diagrama de Gantt representando duas solu¸c˜oes para o exemplo do job-shop.

Figure

Updating...

References

Updating...

Download now (104 pages)