universidade nove de julho programa de pÓs … · palavras-chave: job shop, algoritmo genético,...
TRANSCRIPT
UNIVERSIDADE NOVE DE JULHO
PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA DE PRODUÇÃO
OTIMIZAÇÃO POR ALGORITMOS GENÉTICOS DO SEQUENCIAMENTO DE
ORDENS DE PRODUÇÃO EM AMBIENTES JOB SHOP.
FLÁVIO GRASSI
SÃO PAULO
2014
FLÁVIO GRASSI
OTIMIZAÇÃO POR ALGORITMOS GENÉTICOS DO SEQUENCIAMENTO DE
ORDENS DE PRODUÇÃO EM AMBIENTES JOB SHOP
Dissertação de mestrado apresentada ao Programa de Pós-Graduação em Engenharia de Produção da Universidade Nove de Julho, como requisito parcial para a obtenção do grau de Mestre em Engenharia de Produção.
Prof. Fabio Henrique Pereira, Dr. – Orientador.
SÃO PAULO
2014
Grassi, Flávio.
Otimização por algoritmos genéticos do sequenciamento de ordens de
produção em ambientes job shop. /Flávio Grassi 2014.
126 f.
Dissertação (mestrado) – Universidade Nove de Julho, São Paulo, 2014.
Orientador (a): Prof. Dr. Fabio Henrique Pereira.
1. Job shop. 2. Algoritmo genético. 3. Otimização.
4. Sequenciamento da produção.
I. Pereira, Henrique Fabio. II. Título
CDU 658.5
Dedico este trabalho aos meus pais, por
todo o esforço e dedicação que tiveram
para que me tornasse uma pessoa de
bem, e ao meu filho Miguel, que desde
seu nascimento tem sido minha fonte de
inspiração para tudo que realizo.
AGRADECIMENTOS
Deixo aqui meus agradecimentos à todos que contribuíram para que esse
trabalho fosse realizado, aos meus colegas de mestrado, aos professores do
Programa de Pós-Graduação em Engenharia de Produção, e à UNINOVE, tanto
pela bolsa de estudos – que permitiu com que eu participasse desse programa de
mestrado, quanto pela qualidade do programa: sem dúvida superou em muito
minhas expectativas (e fez com que eu tivesse que estudar bastante para
acompanha-lo).
Dentre eles, gostaria de agradecer especialmente à meu orientador, Fabio
Henrique Pereira, pelas valiosas contribuições e conselhos ao longo desse trabalho.
Sem dúvida não fosse sua dedicação e comprometimento, esse trabalho não teria o
mesmo valor; bem como ao professor Sidnei Alves de Araújo, que à exemplo do
professor Fabio, prova a cada aula que ainda existem educadores apaixonados pelo
que fazem, e que de fato se preocupam com nossa educação. Espero que no futuro
eu possa ser um professor e pesquisador tão bom quanto eles, pois são exemplos à
serem seguidos, tanto pelo profundo conhecimento das áreas em que atuam, quanto
pela humildade que permite com que passem esse conhecimento adiante de uma
forma excepcional. Deixo também um agradecimento especial ao professor Pedro
Henrique Triguis Schimit, pela valiosa contribuição com relação à adaptação da
função de avaliação para linguagem C.
Agradeço ao professor Reinaldo Morabito Neto pelas valiosas considerações
durante a defesa desta dissertação, bem como as sugestões do professor Leonardo
Junqueira.
Agradeço também à compreensão da minha esposa Andréa, que por
inúmeras vezes ficou em segundo plano enquanto eu me dedicava ao mestrado, e
ao nosso filho, Miguel Ladeira Grassi, que mesmo sem saber, renovava minhas
energias a cada vez que me agraciava com seu carinho. Sem dúvida o amor à um
filho é um amor incondicional.
Agradeço também ao meu amigo Flávio Moreira da Costa: sem dúvida é mais
uma amizade boa que vou levar além dessa etapa.
E finalmente, agradeço ao nosso Pai Celestial, por permitir que eu vencesse
mais essa etapa.
“A educação é a arma mais poderosa que
você pode usar para mudar o mundo.”
(Nelson Mandela)
RESUMO
A otimização de processos produtivos é tema de grande relevância na
indústria, sendo portanto tratado por diversos pesquisadores ao redor do mundo, há
mais de cinquenta anos. Dentre os problemas a serem solucionados, tem grande
destaque a questão do sequenciamento de ordens de produção devido à sua vasta
aplicabilidade como, por exemplo, no aumento da produtividade de veículos em
indústrias automobilísticas ou na melhoria do desempenho de processadores em
computadores. No presente trabalho foram abordados estudos envolvendo a
otimização de problemas determinísticos de sequenciamento de ordens de produção
em ambientes Job Shop através do uso de algoritmos genéticos. Os problemas
testados pertencem à um grupo de exemplares disponíveis em uma biblioteca de
problemas de pesquisa operacional, largamente utilizada por pesquisadores neste
contexto, sendo que nesses exemplares todas as ordens de produção estão
disponíveis para alocação no instante zero e os tempos de processamento são fixos.
A função de avaliação das soluções geradas durante a otimização foi desenvolvida
em linguagem C. O algoritmo genético adotado utiliza operadores genéticos
convencionais e representação binária, promovendo melhorias em relação à
pesquisas que também se baseiam nesses operadores, através da escolha da
população inicial, que é realizada adotando um conceito de semente dinâmica
desenvolvido nesta dissertação. Inicialmente a semente geradora da população do
algoritmo genético adota uma regra simples de sequenciamento baseada na
sequência das ordens de produção em relação à sua rota, que é definida pelo
problema, e posteriormente novas sementes são utilizadas, considerando aquelas
que geraram os melhores indivíduos das gerações anteriores. Conforme
apresentado na seção de resultados, esse conceito de semente dinâmica
efetivamente gera um número maior de soluções factíveis. Os resultados qualitativos
demonstram que a abordagem desenvolvida se mostra competitiva em relação à
outras representações clássicas de ambientes de Job Shop, gerando soluções em
tempos aceitáveis para esse tipo de problema.
Palavras-chave: Job Shop, Algoritmo genético, Otimização, Sequenciamento
da produção.
ABSTRACT
The optimization of processes is a highly relevant topic in the industry, and
therefore treated by many researchers around the world for more than fifty years.
Among the problems to be solved, must highlight the issue of sequencing of the
production scheduling due its wide applicability, such as increasing productivity of
vehicles in automobile industry or improving the performance of processors in
computers. In the present work were conducted studies involving scheduling of
production orders of deterministic problems in Job Shop environments through the
use of genetic algorithms. The problems tested belong to a group available from an
operations research library, widely used by researchers in this context, and in such
instances all production orders are available for allocation since the instant zero, and
processing times are fixed. The fitness function of the solutions generated during
optimization was developed in C language. The adopted genetic algorithm uses
conventional genetic operators and binary representation, and promotes
improvements in relation to research which are also based on these operators,
through the choice of the initial population, which is performed by adopting a concept
of dynamic seed developed in this dissertation. Initially the generating seed of the
population in the genetic algorithm adopts a simple sequencing rule based on the
sequence of the production orders in relation to its route, which is defined by the
problem, and then new seeds are used, which are those that generated the best
individuals of previous generations. As presented in the results section, this concept
of dynamic seed effectively generates a larger number of feasible solutions. The
qualitative results show that the developed approach is competitive in relation to
other classic representations of Job Shop environments, providing solutions in
acceptable time for this sort of problem.
Keywords: Job Shop, Genetic algorithms, Optimization, Production
scheduling.
LISTA DE ILUSTRAÇÕES
Figura 1 – Cenário típico de sequenciamento de produção ...................................... 20
Figura 2 – Problema da Figura 1: dois sequenciamentos diferentes ......................... 21
Figura 3 – Matrizes para o problema 2 × 3 ................................................................ 26
Figura 4 – Gráfico disjuntivo para o problema 2 × 3 .................................................. 27
Figura 5 – Gráfico de Gantt para o problema 2 × 3 ................................................... 28
Figura 6 – Gráfico conjuntivo para o problema 2 × 3 ................................................ 39
Figura 7 – Caminho crítico ........................................................................................ 40
Figura 8 – Lista de preferência para o problema 2 × 3 .............................................. 41
Figura 9 – Exemplo de cycle crossover ..................................................................... 44
Figura 10 – Exemplo de cruzamento de único ponto ................................................ 44
Figura 11 – Exemplo de mutação swap .................................................................... 45
Figura 12 – Exemplo de mutação flip bit ................................................................... 45
Figura 13 – Representação por lista de prioridades: problema FT06 ........................ 48
Figura 14 – Transformação das rotas em sequência de jobs por máquina ............... 49
Figura 15 – Metodologia utilizando a representação binária ..................................... 50
Figura 16 – Exemplo de situação de travamento ...................................................... 53
Figura 17 – Acoplamento entre a função de avaliação e a GAlib .............................. 54
Figura 18 – Fluxograma da abordagem final proposta .............................................. 56
Figura 19 – FT06: representação por lista de prioridades ......................................... 59
Figura 20 – FT06: semente a partir das rotas do problema ...................................... 60
Figura 21 – Gráfico da convergência para o problema LA01 .................................... 62
Figura 22 – Valores mínimos, médios e máximos de makespan obtidos .................. 65
Figura 23 – Valores mínimos, médios e máximos de desvio obtidos ........................ 65
Quadro 1 – Regras de prioridade de despacho típicas de JSSP .............................. 33
Quadro 2 – Principais elementos de um AG ............................................................. 35
Quadro 3 – Parâmetros adotados no AG .................................................................. 61
LISTA DE TABELAS
Tabela 1 – Sequência tecnológica da Figura 1 ......................................................... 26
Tabela 2 – Exemplar de problema FT06 ................................................................... 30
Tabela 3 – Prioridades utilizadas na avaliação da rotina pelo LISA .......................... 58
Tabela 4 – Soluções factíveis versus não factíveis para o problema LA01 ............... 63
Tabela 5 – Valores de makespan obtidos ................................................................. 64
Tabela 6 – Desvio percentual em relação ao makespan ótimo conhecido ................ 64
Tabela 7 – Comparação das melhores soluções por representação ........................ 67
LISTA DE ABREVIATURAS E SIGLAS
ABZ – Conjunto de problemas de Job Shop proposto por Adams, Balas e Zawack
(1988)
ACO – Ant Colony Optimization
AG – Algoritmos Genéticos
CX – Cycle Crossover
FIFO – First In, First Out
FT – Conjunto de problemas de Job Shop proposto por Fisher e Thompson (1963)
GAlib – Genetic Algorithms Library
JB – Job-based
JSSP – Job Shop Scheduling Problem
LA – Conjunto de problemas de Job Shop proposto por Lawrence (1984)
LISA – Library of Scheduling Algorithms
LPT – Longest Processing Time
LWR – Least Work Remaining
MB – Machine-based
MWR – Most Work Remaining
OB – Operation-based
ORB – Conjunto de problemas de Job Shop proposto por Applegate e Cook (1991)
OR-Library – Operations Research Library
PL – Preference List-based
PMX – Partially Matched Crossover
PR – Priority Rule-based
RK – Random Key
SA – Simulated Annealing
SPT – Shortest Processing Time
SWV – Conjunto de problemas de Job Shop proposto por Storer, Wu e Vaccari
(1992)
TD – Conjunto de problemas de Job Shop proposto por Taillard (1993)
TS – Tabu Search
YN – Conjunto de problemas de Job Shop proposto por Yamada e Nakano (1992)
SUMÁRIO
1 INTRODUÇÃO ............................................................................................... 14
1.1 FORMULAÇÃO DO PROBLEMA................................................................... 16
1.1.1 Considerações ............................................................................................... 16
1.1.2 Delimitação do Estudo ................................................................................... 17
1.1.3 Problema de Pesquisa ................................................................................... 17
1.1.4 Hipótese de Pesquisa .................................................................................... 17
1.2 OBJETIVO...................................................................................................... 17
1.3 JUSTIFICATIVA E CONTRIBUIÇÕES........................................................... 18
1.4 ESTRUTURA DO TRABALHO....................................................................... 18
2 FUNDAMENTAÇÃO TEÓRICA .................................................................... 20
2.1 PROBLEMAS DE SEQUENCIAMENTO........................................................ 20
2.2 OTIMIZAÇÃO DE PROBLEMAS DE SEQUENCIAMENTO.......................... 22
2.3 CLASSIFICAÇÃO DOS PROBLEMAS DE SCHEDULING............................ 23
2.4 REPRESENTAÇÃO DE PROBLEMAS EM JSSP......................................... 25
2.4.1 Tabela de Sequência Tecnológica ................................................................. 25
2.4.2 Representação por Matrizes .......................................................................... 26
2.4.3 Gráfico Disjuntivo ........................................................................................... 26
2.4.4 Gráfico de Gantt ............................................................................................ 27
2.5 EXEMPLARES DE PROBLEMAS DE JOB SHOP........................................ 28
2.6 INDICADORES DE OTIMIZAÇÃO DE UM JSSP.......................................... 30
2.7 TÉCNICAS DE OTIMIZAÇÃO........................................................................ 31
2.8 MÉTODOS DETERMINÍSTICOS E HEURÍSTICOS...................................... 31
2.9 BUSCA TABU................................................................................................ 34
2.10 SIMULATED ANNEALING............................................................................. 34
2.11 COLÔNIA DE FORMIGAS............................................................................. 34
2.12 ALGORITMOS GENÉTICOS......................................................................... 35
2.12.1 Esquema Básico de um AG .......................................................................... 35
2.12.2 Representação .............................................................................................. 37
2.12.3 Seleção. ........................................................................................................ 42
2.12.4 Cruzamento ................................................................................................... 43
2.12.5 Mutação ........................................................................................................ 44
3 METODOLOGIA ........................................................................................... 46
3.1 METODOLOGIA ADOTADA.......................................................................... 46
3.2 MATERIAIS E MÉTODOS............................................................................. 47
3.2.1 Biblioteca de Algoritmo Genético .................................................................. 47
3.2.2 Representação do Job Shop na GAlib ......................................................... 47
3.2.3 Rotina para Cálculo da Aptidão .................................................................... 51
3.2.4 Tratamento de Soluções Não Factíveis ........................................................ 52
3.2.5 Fluxograma do Acoplamento da Rotina de Avaliação e a GALib ................. 53
3.2.6 Abordagem com Laços Externos e Semente Dinâmica ............................... 55
4 RESULTADOS E DISCUSSÕES ................................................................. 57
4.1 RESULTADOS DA AVALIAÇÃO DA FUNÇÃO DE APTIDÃO.......................57
4.2 ALTERAÇÃO DA REPRESENTAÇÃO DAS SOLUÇÕES NO AG................ 59
4.3 PARÂMETROS UTILIZADOS NO AG........................................................... 60
4.4 ABORDAGEM FINAL PROPOSTA................................................................ 61
5 CONCLUSÕES, LIMITAÇÕES E SUGESTÕES .......................................... 68
REFERÊNCIAS ............................................................................................ 69
APÊNDICE A.................................................................................................76
ANEXO A.....................................................................................................126
14
INTRODUÇÃO
Devido à crescente competitividade de mercado, a melhora dos processos
produtivos no ambiente industrial tem sido objeto de estudo e pesquisa nas mais
diversas áreas de conhecimento, como em gestão de negócios, economia, logística,
entre outras; sendo mais notoriamente estudada dentro da engenharia de produção
(KUNNATHUR; SUNDARARAGHAVAN; SAMPATH, 2004; HEINONEN;
PETTERSSON, 2007). Segundo Qing-dao-er-ji e Wang (2012), um dos problemas
que mais demandaram pesquisas nas últimas décadas foram os problemas de
sequenciamento das ordens de produção, conhecidos na literatura estrangeira como
scheduling problems.
Sequenciamento pode ser entendido como o processo de atribuir um ou mais
recursos para execução de determinadas atividades, cujo processamento irá
demandar certa quantidade de tempo (LUKASZEWICZ, 2005). Esses recursos em
um ambiente industrial podem ser associados à máquinas, sendo que as atividades
que serão processadas em uma máquina são conhecidas como operações ou
tarefas. Assim, uma ordem de produção (job) é um conjunto de uma ou mais tarefas.
Problemas de sequenciamento são difíceis de solucionar no ambiente real
devido à influência de diversas restrições, o que é especialmente válido em
ambientes industriais, nos quais o tempo de parametrização (setup) das máquinas,
espaço e disposição físicas, e uma série de outros fatores necessitam ser levados
em consideração (BRUCKER; BURKE; GROENEMEYER, 2012). Isso talvez
justifique o fato de que desde o surgimento das teorias acerca de sequenciamento
em ambientes produtivos na década de 50, esse assunto tenha tão grande destaque
nos campos de otimização e pesquisa operacional. Ao longo de mais de meio século
têm sido desenvolvidas diferentes técnicas para solução de problemas de
sequenciamento, visando reduzir os custos de produção e melhorar os processos
produtivos.
Ao trabalhar na otimização desses processos, muitos fatores precisam ser
avaliados para se chegar em uma solução satisfatória, como por exemplo a melhor
forma de representação de um ambiente de produção específico, a melhor técnica
de otimização a ser adotada para chegar à uma solução em um tempo aceitável,
bem como se a solução encontrada poderá de fato ser aplicada no cenário real de
15
um sistema produtivo. Esses são alguns dos principais pontos que o pesquisador
precisa levar em consideração.
Historicamente, os problemas de sequenciamento de ordens de produção em
cenários do tipo Job Shop (JSSP) têm sido tratados por meio de métodos de
otimização exatos – que visam encontrar a solução ótima – dentre os quais o Branch
and Bound (LAGEWEG; LENSTRA; KAN, 1977; CALIER; PINSON, 1989;
BRUCKER; JURISCH; SIEVERS, 1994; JAIN; MEERAN, 1999) e o Shifiting
Bottleneck (ADAMS; BALAS; ZAWACK, 1988). Embora relativamente desatualizado,
foi compilado um estudo sobre as várias abordagens para a resolução dos
problemas de Job Shop por Jain e Meeran (1999).
Nos últimos anos, entretanto, os chamados métodos metaheurísticos têm sido
largamente utilizados na resolução desse tipo de problema. Dentre esses métodos,
os que possuem maior destaque na literatura são a Busca Tabu (NOWICKI;
SMUTNICKI, 1996; CHAMBERS, 1996; PONNAMBALAM; ARAVINDAN; RAJESH,
2000), Simulated Annealing (VAN LAARHOVEN; AARTS; LENSTRA, 1992;
KOLONKO, 1999; SATAKE et. al., 1999; AYDIN; FOGARTY, 2004), Algoritmos
Genéticos (CROCE; TADEI; VOLTA, 1995; WANG; ZHENG, 2002; GONÇALVES;
MENDES; RESENDE, 2005) e Colônia de Formigas (VENTRESCA; OMBUK, 2004;
ZHANG et. al., 2006; MONTGOMERY; FAYAD; PETROVIC, 2006; HUANG; LIAO,
2008).
Desde então tem se trabalhado em avanços de cada técnica, a fim de
aperfeiçoá-las, visando diminuir os tempos computacionais do processo de
otimização por meio da modificação de certos operadores específicos de cada
técnica, ou associando-as a fim de criar técnicas híbridas. É interessante notar que
essa mudança de paradigma quanto as técnicas de otimização à serem adotadas,
que passou de técnicas determinísticas para técnicas heurísticas, se deve
basicamente ao custo computacional (LUKASZEWICZ, 2005).
Conforme Pinedo (2008), os métodos exatos – conhecidos como
determinísticos – não consideram o tempo para encontrar uma solução ótima, o que
é um fator importante quando se trata de um ambiente de produção real. Ainda
segundo o autor, não é interessante encontrar um sequenciamento ótimo para um
determinado conjunto de máquinas e pedidos de produção específicos (que estão
muitas vezes sujeitos a alterações ao longo do dia, devido à diferentes demandas
dos clientes) se essa solução levar muito tempo para ser identificada. Os métodos
16
heurísticos se baseiam em certas hipóteses e podem, a partir delas, encontrar uma
solução quase tão boa quanto a solução ótima, mas em um tempo bem menor,
permitindo, por exemplo, a adoção dessa técnica em um software que crie
sequenciamentos para diversas condições de máquinas e pedidos de produção de
maneira dinâmica.
Sendo assim, percebe-se que ainda há bastante espaço para pesquisas em
JSSP, tanto no sentido da busca pela melhor forma de representação da função que
avalia as soluções de alguma técnica heurística, quanto no sentido de descobrir
pontos chave na otimização de um JSSP que interfiram na qualidade e agilidade em
obter um solução satisfatória. Além de não haver um consenso de qual técnica
heurística seja a mais adequada para tratar esse tipo de problema, uma vez definida
a técnica de otimização a ser utilizada, existem diferentes representações de JSSP,
e ainda não está claro qual delas é a melhor (WERNER, 2013).
1.1 FORMULAÇÃO DO PROBLEMA
ESTA SEÇÃO DISCORRE SOBRE O PROBLEMA DE PESQUISA.
Considerações
Os trabalhos que utilizam algoritmos genéticos convencionais, alterando
somente o tipo de representação, parecem ter atingido seu limite, sendo que as
representações clássicas para problemas de Job Shop datam de mais de quinze
anos (CHENG; GEN; TSUJIMURA, 1996). Atualmente tem tido enfoque técnicas
híbridas, que são mais sofisticadas, fazendo uso de operadores genéticos
especializados e, não raro, dependem do ajuste de parâmetros muitas vezes de
maneira empírica sendo que, em geral, seus valores estão intimamente relacionados
à um problema específico de JSSP, e para outro problema, novos valores precisam
ser identificados, o que pode não ser adequado para aplicação em problemas reais,
onde os tempos de processamento não são fixos e os jobs são dinâmicos e,
portanto, encontrar valores adequados para esses parâmetros seria difícil. Qing-dao-
er-ji e Wang (2012), por exemplo, propuseram um eficiente algoritmo genético
híbrido, que supera os resultados obtidos por vários outros pesquisadores, mas que
depende da escolha de operadores específicos de busca local, entre outros
parâmetros.
17
Delimitação do Estudo
Não é objetivo deste trabalho investigar se a técnica de otimização adotada –
algoritmos genéticos – é mais eficiente do que outras técnicas de otimização para
problemas de sequenciamento de Job Shop. Como ressaltado por Wolpert (1995),
dificilmente existirá uma única técnica que seja melhor que todas as outras para uma
grande variedade de problemas.
Vale ressaltar também que a aplicação da abordagem apresentada neste
trabalho em um ambiente real de produção deverá ser devidamente investigada em
um trabalho futuro.
Problema de Pesquisa
Objetivando a aplicação prática das técnicas combinadas de representação e
otimização de um ambiente de produção no chão de fábrica, como uma ferramenta
de melhoria do processo produtivo, a pergunta que se busca responder com o
presente trabalho é a seguinte:
A otimização de problemas de Job Shop scheduling através de
algoritmos genéticos com operadores convencionais não seria suficiente,
considerando que tais algoritmos têm se mostrado eficazes em diversos
problemas de otimização combinatória?
Hipótese de Pesquisa
O presente trabalho buscou validar a seguinte hipótese ao problema de
pesquisa:
a) É possível obter soluções satisfatórias em tempo computacional aceitável
apenas atuando na escolha da população inicial e na representação das
soluções, utilizando operadores genéticos convencionais.
1.2 OBJETIVO
Proposição de uma representação da solução do algoritmo genético com uso
de operadores genéticos convencionais, que se mostre mais eficaz na qualidade das
soluções que outros métodos de representação usuais para problemas
18
determinísticos de JSSP, atuando na população inicial, dentro de tempos
computacionais aceitáveis para esse tipo de problema.
1.3 JUSTIFICATIVA E CONTRIBUIÇÕES
As pesquisas envolvendo algoritmos genéticos clássicos na solução de JSSP
datam de mais de quinze anos, mas dada a eficiência desse método em outros
problemas de otimização combinatória, acredita-se ainda ser possível atingir algum
ganho de desempenho.
Nesse sentido, a principal contribuição deste trabalho é a proposição de uma
representação da solução nos algoritmos genéticos (AG), relativamente simples de
ser implementada, bem como uma metodologia associada à escolha da população
inicial que visa a diminuição de soluções não factíveis, que se mostre
equivalentemente eficaz para problemas determinísticos de JSSP otimizados com
algoritmos genéticos quanto outras metodologias mais complexas.
O sucesso dessa abordagem possibilita estudos com luz à aplicação prática
no chão de fábrica, podendo ser considerada futuramente como uma ferramenta de
melhoria do processo produtivo em um ambiente fabril por parte dos gestores da
produção.
1.4 ESTRUTURA DO TRABALHO
O capítulo 2 trata da fundamentação teórica, familiarizando o leitor com o
problema de sequenciamento de ordens de produção, apresentando os critérios de
classificação dos problemas de sequenciamento, mostrando como um problema de
Job Shop difere de outros problemas de scheduling; bem como as diferentes formas
de representação desse tipo de problema e os exemplares de problemas disponíveis
para testes. Após essa introdução ao problema, o texto discorre sobre as principais
técnicas de otimização utilizadas em JSSP, apresentando desde conceitos iniciais
sobre otimização, descrição de algumas das técnicas mais utilizadas de acordo com
a revisão literária, até os detalhes de implementação de algoritmos genéticos, que
foi a técnica utilizada nesse trabalho para resolução dos JSSP. São explicadas as
principais representações desse tipo de problema com foco no AG, bem como
explicações relativas aos chamados operadores genéticos.
19
No capítulo 3, discorre-se sobre os materiais e métodos adotados. Nesse
capítulo é apresentada a biblioteca de algoritmos genéticos utilizada e são
detalhadas as representações de solução no AG elaboradas durante o
desenvolvimento do trabalho, bem como forma de alteração da população do AG
através do que o autor denominou por semente dinâmica.
O capítulo 4 trata da apresentação dos resultados e das discussões. Esse
capítulo apresenta de forma ordenada as etapas que foram atingidas conforme o
avanço dos testes, abrangendo desde o processo de verificação da função de
aptidão, os motivos que levaram à formulação de uma segunda forma de
representação de soluções dentro do AG, e por fim os testes realizados com
problemas determinísticos, comparando o desempenho da abordagem proposta com
o de outras representações de algoritmos genéticos encontradas na literatura.
No capítulo 5 são apresentadas as conclusões, bem como as limitações e
sugestões para continuidade e extensão dessa pesquisa.
20
FUNDAMENTAÇÃO TEÓRICA
Nesta seção é apresentada a revisão bibliográfica e fundamentação teórica
para familiarizar o leitor com o tema.
2.1 PROBLEMAS DE SEQUENCIAMENTO
Para entender a necessidade de encontrar uma melhor opção de
sequenciamento de ordens de produção, e assim justificar as pesquisas acerca
desse tipo de problema, é apresentada na Figura 1 uma ilustração que visa elucidar
um cenário típico de produção.
Figura 1 – Cenário típico de sequenciamento de produção
Fonte: Adaptado de SENAI (1999).
A figura demonstra duas sequências de produção – doravante denominadas
de ordens de produção – de dois diferentes produtos. Executando uma se produz
um determinado produto A, e executando a outra se produz um determinado produto
B. Os elementos acima das ordens representam máquinas que executam diferentes
ações, supondo que a primeira máquina é responsável por furar a matéria-prima que
nela chega, a segunda máquina corta a matéria-prima que nela chega e a terceira
máquina faz a gravação de um número de série na matéria-prima que nela chega.
Pode-se assumir alguns sequenciamentos diferentes para execução das duas
M1 M2 M3
21
ordens em cada uma das máquinas como, por exemplo, sempre executar nas
máquinas as tarefas do produto A e depois as tarefas do produto B, como na Figura
2(a), ou vice-versa, como na Figura 2(b). Supondo por exemplo que o tempo
necessário para processamento da ordem do produto A na máquina 1 seja de duas
unidades de tempo, e todos os demais tempos de processamento sejam de uma
unidade de tempo, observa-se que a sequência assumida nas máquinas influencia
no tempo total de produção das ordens, sendo que, no exemplo, citado adotar a
segunda sequência (que prioriza a ordem B em relação a ordem A) seria melhor,
pois a execução das duas ordens se daria em um tempo menor.
Figura 2 – Problema da Figura 1: dois sequenciamentos diferentes
Máquina 1 A B
Máquina 2
A
B
Máquina 3
A B
Tempo
Máquina 1 B A
Máquina 2
B A
Máquina 3
B
A
Tempo
Fonte: O autor.
Embora seja necessário obedecer a sequência pré-determinada de cada uma
das ordens para produzir os produtos conforme especificado, existem diferentes
prioridades de tarefas que podem ser assumidas nas máquinas, o que pode resultar
em um tempo total de produção menor. Ou seja, conhecer a melhor sequência de
prioridades das ordens de produção permite que sejam produzidos os mesmos
(a) prioriza tarefas do job A em relação às tarefas do job B
(b) prioriza tarefas do job B em relação às tarefas do job A
22
produtos em uma quantidade de tempo menor. Claro que para um problema tão
pequeno quanto esse, que possui apenas duas ordens de produção (n=2) e três
máquinas (m=3), ou seja, um problema 2 × 3, existem poucas possibilidades de
arranjo diferentes, pois o espaço de soluções para um JSSP é formado por (n!)m
sequências possíveis (LUKASZEWICZ, 2005; IVERS, 2006) e, sendo assim, um
problema 2 × 3 possui apenas 8 combinações. Mas para problemas reais,
tipicamente bem maiores e mais complexos, onde não é difícil encontrar ambientes
de Job Shop com, por exemplo, 10 jobs e 15 máquinas, existem 2,49 x 1098
combinações, e sendo assim torna-se mais difícil avaliar as várias possibilidades e
encontrar alguma solução satisfatória. Essa é a finalidade dos algoritmos que fazem
a otimização do sequenciamento de produção: identificar os melhores
sequenciamentos a serem adotados nas máquinas, de forma a reduzir os tempos de
produção.
2.2 OTIMIZAÇÃO DE PROBLEMAS DE SEQUENCIAMENTO
Segundo Luke (2010), otimização pode ser entendida como a ação de utilizar
melhor recursos que em geral são limitados. No contexto de sequenciamento de
ordens de produção, as máquinas são os recursos limitados, pois se o número de
máquinas fosse ilimitado, seria possível produzir no menor tempo possível
independentemente da prioridade adotada.
É comum que as soluções para problemas de sequenciamento de produção
(que são as definições de prioridades que as máquinas devem assumir para um
conjunto de jobs) sejam identificadas pela ação de técnicas de otimização. Em
geral, as pesquisas mesclam técnicas já existentes, gerando as chamadas técnicas
híbridas ou, com menor frequência, criando uma técnica inovadora. Nesse tipo de
abordagem, um cenário específico de produção ou um conjunto de cenários (quando
a abordagem é robusta o bastante para permitir tal generalização) é representado
por meio de expressões matemáticas, as quais nem sempre traduzem fácil e
adequadamente o ambiente de produção real.
Em uma proporção significativamente menor, alguns pesquisadores têm
adotado simuladores de ambientes produtivos no lugar dessas expressões
matemáticas, baseados em ferramentas computacionais de simulação à eventos
discretos (SILVA, 2011). Tais abordagens possibilitam uma representação mais
23
natural do ambiente, principalmente pelo fato de que na modelagem se aplicam
efetivamente objetos que representam máquinas, e as ordens de produção são
elementos que alocam essas máquinas, demandando tempo de processamento e
criando ocasionalmente filas de espera, inclusive. Esse comportamento intrínseco da
simulação é a razão dessa representação ser, em geral, mais fidedigna. Pode-se
então associar o modelo de simulação à técnicas de otimização, que efetivamente
tratam de identificar uma melhor solução para determinado cenário produtivo.
2.3 CLASSIFICAÇÃO DOS PROBLEMAS DE SCHEDULING
Os ambientes de produção formados pelas máquinas possuem diferentes
classificações, dependo do arranjo físico que essas máquinas possuem, dos tipos de
atividades que as máquinas podem executar e das características da ordem de
produção em relação a essas máquinas.
Eles podem ser classificados como ambientes de produção de única etapa,
nos quais existe apenas uma única operação para cada ordem, ou de múltiplas
etapas, onde para executar uma ordem são necessárias diferentes operações em
diferentes máquinas. Essa classificação foi inicialmente proposta por Graham et al.
(1979).
Em ambientes de uma única etapa, pode existir apenas uma única máquina
para executar cada tarefa, ou podem ainda existir várias máquinas com mesma
funcionalidade, executando operações em paralelo. Já em ambientes de múltiplas
etapas, cada ordem necessita que operações sejam executadas em várias
máquinas, e cada máquina possui diferentes funcionalidades. Segundo Mesquita et
al. (2008), esse grupo é subdividido em Flow Shop, Open Shop e Job Shop. Em um
Flow Shop, todas as ordens possuem as mesmas rotas, ou seja, as operações que
são executadas nas diferentes máquinas são as mesmas para todas as ordens. Em
um Open Shop, a rota das máquinas pode variar entre as diferentes ordens, sendo
que a ordenação das tarefas é indiferente (não existem restrições de precedência).
Por fim, no Job Shop – objeto deste estudo – cada ordem é única, com rotas pré-
estabelecidas e diferentes entre si, o que o diferencia dos outros dois tipos de
ambientes de scheduling apresentados. Ainda, cada tarefa é processada uma única
vez nas máquinas, e possuem restrições de precedência. Pode-se listar as
características e restrições de um JSSP, conforme segue (FAN; ZHANG, 2010):
24
a) todas as máquinas estão disponíveis no instante de tempo t0 = 0;
b) cada job pode ser processado em uma única máquina por vez;
c) não são permitidos processos simultâneos em qualquer uma das máquinas;
d) cada job é composto por várias tarefas a serem processadas;
e) a sequência de tarefas para cada job é pré-definida e não pode ser alterada;
f) não é permitida preempção, ou seja, interrupção de processamento da tarefa.
Considerando as características e o comportamento apresentado, o problema
de sequenciamento em um ambiente de produção do tipo Job Shop é
essencialmente um processo decisório, o qual busca identificar uma sequência que
otimiza algum tipo de critério, como minimizar o tempo de entrega ou maximizar o
uso da capacidade produtiva, pertencendo a classe de otimização combinatória,
conforme Pinedo (2008).
Problemas de otimização combinatória são aqueles onde se busca
determinar, dentre um subconjunto de possibilidades formado pela combinação dos
elementos do conjunto principal, aquele que tem o menor custo. No caso do JSSP,
isso significa determinar, dentre as várias combinações de escalonamento dos jobs
nas máquinas, a sequência que apresenta menor tempo total de produção.
Ainda conforme Pinedo (2008), os problemas de sequenciamento ainda
podem ser classificados quanto a aleatoriedade de seus parâmetros, a saber:
a) estático: número de jobs são conhecidos e todos estão disponíveis no instante
de tempo t0 = 0;
b) determinístico: não existe aleatoriedade nos parâmetros, como tempo de
processamento, instantes de disponibilidade, etc.
25
c) dinâmico: número de tarefas e instantes de disponibilidade são variáveis
aleatórias, ou ainda as tarefas podem ser disponibilizadas ao longo do tempo,
mas em instantes previamente conhecidos;
d) estocástico: tempo de processamento e outros parâmetros são variáveis
aleatórias (por exemplo, considerar que uma máquina pode apresentar falha
conforme uma certa distribuição de probabilidades).
Relacionado à sua complexidade, os JSSP são em geral classificados como
problemas NP-hard, o que significa na teoria de complexidade computacional que
são problemas difíceis de resolver, não podendo ser solucionados em um tempo
polinomial, ou seja, o consumo de tempo para resolver essa classe de problemas
não pode ser reduzido à uma função polinomial em relação do tamanho desses
problemas (FAN; ZHANG, 2010).
2.4 REPRESENTAÇÃO DE PROBLEMAS EM JSSP
De forma genérica, um JSSP pode ser representado na forma de n/m/G/Cmax,
onde n equivale ao número de ordens (jobs), m representa o número de máquinas,
G denota problemas de Job Shop e Cmax define o objetivo – minimizar o tempo total
de produção dos jobs, nesse caso (PINEDO, 2008).
Entretanto, essa representação não dá informações completas para que tal
problema possa ser submetido à uma técnica de otimização. Dentre as várias
formas de representação completa de um JSSP, destacam-se a representação por
tabela de sequência tecnológica, por matrizes e por gráfico disjuntivo. As soluções
para um JSSP geralmente são apresentadas em um gráfico de Gantt, apesar de
também poderem ser apresentadas em um gráfico conjuntivo (que é gerado
ordenando as rotas entre mesmas máquinas, a partir do gráfico disjuntivo), ou ainda
por uma matriz, também chamada de matriz solução. Essas formas de
representação são apresentadas a seguir (YAMADA, 2003).
2.4.1 Tabela de Sequência Tecnológica
As tabelas de sequência tecnológica são assim chamadas por apresentarem,
além do tempo de processamento de cada tarefa em cada máquina, a sequência de
26
tarefas de cada ordem, sendo uma forma fácil de apresentar os dados de um JSSP.
Um exemplo representando o problema fictício abordado na seção 2.1, pg. 20, é
apresentado na Tabela 1, sendo que os valores entre parênteses correspondem ao
tempo de processamento daquele determinado job naquela determinada máquina.
Devido à objetividade e simplicidade dessa tabela, os problemas de Job Shop em
geral são apresentadas dessa forma.
Tabela 1 – Sequência tecnológica da Figura 1
Job Máquina (Tempo de Processamento)
1 1 (2) 2 (1) 3 (1) 2 1 (1) 3 (1) 2 (1)
Fonte: O autor.
2.4.2 Representação por Matrizes
O problema da seção 2.1, pg. 20, também pode ser representado pelas
matrizes da Figura 3.
Figura 3 – Matrizes para o problema 2 × 3
{ } [
] , { } [
]
Fonte: O autor.
As matrizes de sequência de jobs e de tempo de processamento são dadas,
respectivamente, por Ojm, que representa o job j sendo processado na máquina m, e
por Pjm, que representa a duração do processamento do job j na máquina m.
2.4.3 Gráfico Disjuntivo
O gráfico disjuntivo é uma forma de representação visual capaz de
apresentar, além das informações da sequência tecnológica, as restrições ao
problema, representadas pelos arcos disjuntivos, conforme Figura 4.
27
Figura 4 – Gráfico disjuntivo para o problema 2 × 3
Fonte: O autor.
O gráfico disjuntivo é composto por nós Ojm, que representam as operações
de cada job j em cada máquina m, e associado a estes tem-se os elementos Pjm,
que representam o tempo de processamento de cada job j em cada máquina m. São
adicionados um nó inicial, representado pelo número zero, e um nó final,
representado por um asterisco, e as setas contínuas, chamadas de arcos
conjuntivos, representando a ordem tecnológica de cada job. As setas tracejadas,
chamadas de arcos disjuntivos (que dão origem ao nome do gráfico), indicam as
possibilidades de prioridades a serem adotadas pelas máquinas (seis possibilidades
nesse caso), e devem ser conectadas entre operações que devem ser executadas
em uma mesma máquina.
2.4.4 Gráfico de Gantt
O gráfico de Gantt é uma forma visual bastante objetiva e simples de
interpretar. Pela simplicidade, as soluções de um JSSP em geral são apresentadas
desta forma. Ele mostra as unidades de tempo no eixo da abscissa e o número das
máquinas no eixo da ordenada. Um exemplo desse tipo de gráfico para o problema
2 × 3 da seção 2.1, pg. 20, é apresentado na Figura 5.
0 *
O11 O12 O13
O21 O23 O22
P11 = 2 P12 = 1 P13 = 1
P21 = 1 P23 = 1 P22 = 1
28
Figura 5 – Gráfico de Gantt para o problema 2 × 3
Máquina 1 B A
Máquina 2
B A
Máquina 3
B
A
Tempo
Fonte: O autor.
2.5 EXEMPLARES DE PROBLEMAS DE JOB SHOP
Como mostra a literatura, o estudo e aplicação de técnicas para solucionar
um JSSP é frequentemente realizado com o uso de exemplares de problemas,
conhecidos como benchmarks. Os exemplares permitem determinar as
capacidades e limitações de um dado método testando-o contra esses problemas
(JAIN; MEERAN, 1999).
Vários pesquisadores propuseram grupos de problemas de diferentes
tamanhos e configurações para esse propósito. Juntos eles constituem um grupo de
mais de 240 tipos de cenários de JSSP. Cada exemplar têm suas características e
definições próprias, mas todas eles são prioritariamente classificados com um
determinado número de tarefas versus um determinado número de máquinas, com o
tempo de processamento de cada operação em cada máquina conhecido e, em
geral, têm seus nomes associados às iniciais dos pesquisadores que às
propuseram. Quanto ao acesso aos exemplares: FT, LA, ABZ, ORB, SWV e YN
estão disponíveis na OR-Library (BEASLEY, 1990), mantida atualmente por Dirk C.
Mattfeld e Rob J. M. Vaessens.
Essa coleção de exemplares envolve tanto os problemas que são otimamente
solucionados de maneira fácil, quanto aqueles que são ainda tidos como abertos,
com apenas limites máximos e mínimos conhecidos. Curiosamente existem
exemplares como o SWV 3 e 4, TD 3 à 9 ou ABZ 7 à 9, com até 300 operações, que
ainda estão sem uma solução ótima, e outras com 2.000 operações que foram
otimamente solucionadas em um período de tempo relativamente curto em relação a
1 2 3 4 5
29
data de sua publicação. Para auxiliar na classificação desses exemplares, vários
pesquisadores tentam encontrar características comuns aos problemas difíceis. Jain
e Meeran (1999) sumarizaram essas pesquisas nos seguintes fatos:
a) os exemplares são considerados fáceis quando a razão do número de jobs
pelo número de máquinas é maior que 4;
b) quando o número de jobs é maior que o número de máquinas é mais fácil
encontrar o chamado gargalo do processo e assim as chances de ficar preso
em um mínimo local é limitada;
c) em vários exemplares considerados fáceis, existe mais de um sequenciamento
ótimo;
d) problemas quadrados, nos quais o número de máquinas é igual ao número de
jobs, são bastante difíceis de resolver.
Jain e Meeran ainda concluem que qualquer exemplar de problema pode ser
considerado difícil quando o número de operações, jobs e máquinas é maior ou igual
a 200, 15 e 10 respectivamente e a razão entre o número de jobs e o número de
máquinas é menor que 2,5.
Uma última questão que vem à tona sobre os exemplares de problemas de
Job Shop é sua adaptação à ambientes reais. Por exemplo, todos os problemas são
construídos com base em tempos de processamento inteiros dos quais um pequeno
percentual esteja fora de contexto de aplicabilidade real. Após analisar a
complexidade dos problemas apresentados nos exemplares, Amar e Gupta (1986)
indicam que problemas no mundo real são mais fáceis de resolver do que os
exemplares disponíveis para teste. Inicialmente para o presente trabalho, foi
utilizado o problema FT06, apresentado na Tabela 2, para construção e testes da
rotina desenvolvida que avalia as soluções, que serve de função de aptidão para a
técnica de otimização. Posteriormente para avaliação da metodologia em si,
incluindo também uma nova representação de solução bem como uma execução
30
otimizada do próprio algoritmo genético para JSSP, foram utilizadas os problemas
do grupo LA, que aparecem em uma maior quantidade de trabalhos na literatura.
Tabela 2 – Exemplar de problema FT06
Job Máquina (Tempo de Processamento)
1 3 (1) 1 (3) 2 (6) 4 (7) 6 (3) 5 (6) 2 2 (8) 3 (5) 5 (10) 6 (10) 1 (10) 4 (4) 3 3 (5) 4 (4) 6 (8) 1 (9) 2 (1) 5 (7) 4 2 (5) 1 (5) 3 (5) 4 (3) 5 (8) 6 (9) 5 3 (9) 2 (3) 5 (5) 6 (4) 1 (3) 4 (1) 6 2 (3) 4 (3) 6 (9) 1 (10) 5 (4) 3 (1)
Fonte: Adaptado de OR-Library.
A razão por inicialmente ter sido adotado o problema FT06 é por este ser o
menor exemplar encontrado, com 6 jobs e 6 máquinas (36 operações), para assim
poder desenvolver a rotina de avaliação das soluções de maneira mais rápida. O
motivo pelo qual para os testes finais foram adotados os exemplares do grupo LA foi
que dentre os trabalhos pesquisados que apresentavam resultados passíveis de
comparação, vários exemplares do grupo LA estavam presentes, enquanto que
problemas de outros grupos apareciam em menor proporção.
O grupo LA possui um conjunto de problemas bastante diversificado,
agrupando tamanhos de 10 × 5, 15 × 5, 20 × 5, 10 × 10, 15 × 10, 20 × 10, 30 × 10 e
15 × 15; variando entre problemas fáceis e difíceis, conforme classifica Jain e
Meeran, e essa deve ser a razão dos trabalhos que apresentam resultados que
permitam comparação terem utilizado tal grupo.
2.6 INDICADORES DE OTIMIZAÇÃO DE UM JSSP
Dentre os parâmetros que servem para validar as diversas técnicas de
otimização, é possível citar o número total de ordens atrasadas, o tempo total de
ordens em atraso, e o tempo total de atravessamento, dentre outros (SANTORO;
MESQUITA, 2008).
O tempo total de atravessamento se refere ao maior tempo necessário para
completar todas as ordens que foram solicitadas, o que significa que é o tempo
desde o início da primeira tarefa do primeiro job até a conclusão da última tarefa do
último job (YAMADA, 2003). Esse parâmetro, conhecido como makespan, tem maior
31
destaque na literatura, sendo utilizado como um dos principais indicadores de
otimização, uma vez que consegue indicar se um determinado algoritmo de
otimização atingiu o resultado (ASADZADEH; ZAMANIFAR, 2010; FREITAS;
VIEIRA, 2010; ZHANG; SONG; WU, 2012). Uma vez atingido tal objetivo, podem
ser avaliados outros critérios, como tempo de execução do algoritmo de otimização
e facilidade de implementação, por exemplo. Na próxima seção são apresentadas as
principais técnicas de otimização utilizadas em JSSP.
2.7 TÉCNICAS DE OTIMIZAÇÃO
Uma técnica de otimização pode ser entendida como um programa
computacional que serve para identificar, a partir de uma função objetivo que
representa o problema a ser otimizado, boas soluções ao problema (soluções
subótimas), ou até a melhor solução (solução ótima), conforme Saramago e Steffen
(2008).
É claro que as chances de que a técnica utilizada para otimizar o problema
seja bem sucedida depende de vários fatores, desde a adequada representação do
problema até a escolha dos valores adequados dos parâmetros específicos de cada
técnica de otimização (GOLDBARG; LUNA, 2000).
Por meio da revisão literária é possível identificar quais técnicas são mais
adequadas para certos tipos de problemas comparando os resultados obtidos pelos
pesquisadores, embora não exista uma regra simples e universalmente válida. É
importante mencionar que existe um senso-comum quanto à especificidade de uma
técnica de otimização em relação ao problema a ser tratado (WOLPERT, 1995).
Linden (2012) sugere que um algoritmo deve ser melhor para resolver
determinado problema à medida que ele foi parametrizado em função daquele
específico problema, e este tende a não ser tão eficiente à medida que tenta-se
generalizar seu emprego a outros problemas.
2.8 MÉTODOS DETERMINÍSTICOS E HEURÍSTICOS
Embora existam métodos exatos que, em geral, trabalham testando e
exaurindo todas as soluções possíveis na tentativa de encontrar a melhor entre elas
(solução ótima), não é interessante resolver JSSP dessa forma, exceto para
problemas relativamente pequenos (JAIN; MEERAN, 1999). Segundo Lukaszewicz
32
(2005), em ambientes de produção reais, essa otimalidade não é necessariamente
um critério a ser atingido. É suficiente obter resultados próximos do ótimo, mas com
tempos razoáveis. Soluções próximas do ótimo (subótimas) podem ser obtidas por
meio de métodos heurísticos, baseados em probabilidades, os quais podem
encontrar soluções subótimas mais rapidamente por utilizar o conhecimento acerca
do problema evitando a avaliação de todas as soluções possíveis.
Basicamente, as técnicas ou métodos para solução de JSSP podem ser
divididos em métodos exatos, como a programação linear e o Branch and Bound –
que encontram a solução ótima; e métodos aproximados, que encontram soluções
subótimas (ou até mesmo a ótima, embora não haja garantias disso) (PINEDO,
2008). Conforme explicado anteriormente, os métodos exatos apenas são
adequados na solução de JSSP relativamente pequenos, pois para cenários
maiores, o custo computacional faz com que essas técnicas não sejam as mais
adequadas para solucionar problemas em tempo real no chão de fábrica
(FERREIRA; ALMADA-LOBO; MORABITO, 2013; KOLHARKAR; ZANWAR, 2013).
Assim, dada a complexidade dos JSSP no ambiente fabril, os métodos aproximados
são os mais adequados para tais problemas.
Segundo Saramago e Steffen Júnior (2008), métodos heurísticos são aqueles
baseados em informações acerca do problema para auxiliar na identificação da
solução sem que haja necessidade de testar todas as possibilidades Essas
informações são chamadas de heurísticas. Dentre os métodos heurísticos para
problemas de Job Shop, pode-se citar as regras de prioridade de despacho e os
métodos metaheurísticos.
As regras de prioridade de despacho são baseadas na teoria das filas, e uma
explicação mais detalhada pode ser encontrada em Silva (2011), seção 2.3.3. No
Quadro 1, segue um resumo das principais regras aplicadas ao Job Shop.
33
Quadro 1 – Regras de prioridade de despacho típicas de JSSP
Regra Descrição Autores
SPT (Shortest Processing
Time)
Prioriza a peça com o menor tempo de
processamento no processo em análise.
Conway et al. (1967) Baker (1974)
Panwalker e Iskander (1977) Lawrence e Sewell (1997)
Zhou et al. (2001) Silva et al. (2012)
LPT (Longest Processing
Time)
Prioriza a peça com o maior tempo de processamento no
processo em análise.
Lawrence e Sewell (1997) Silva et al. (2012)
MWR (Most Work Remaining)
Prioriza a peça que tem o maior tempo de trabalho
acumulado nos processos seguintes, incluindo o atual.
Conway et al. (1967) Baker (1974)
Panwalker e Iskander (1977) Lawrence e Sewell (1997)
Zhou et al. (2001) Silva et al. (2012)
LWR (Least Work Remaining)
Prioriza a peça que tem o menor tempo de trabalho acumulado nos processos
seguintes, incluindo o atual.
Baker (1974) Lawrence e Sewell (1997)
Silva et al. (2012)
Fonte: Adaptado de Montevechi et al. (2002).
Conforme apresentado por Glover e Kochenberger (2003), diferentemente
dos métodos exatos, os metaheurísticos permitem tratar problemas de tamanhos
considerados grandes e difíceis de resolver, apresentando soluções satisfatórias –
não necessariamente ótimas – em tempo computacional aceitável, através da
combinação de heurísticas que, juntas, exploram de maneira mais eficiente o espaço
de busca. Por outro lado, esses métodos metaheurísticos possuem a necessidade
de avaliar uma solução e descobrir se ela é ou não adequada aos objetivos. Para
atender esse último aspecto é necessário o uso de expressões matemáticas
analíticas, avaliação lógica através de algoritmos (como o desenvolvido nessa
dissertação), e até mesmo simulação computacional, para poder avaliar uma
solução obtida pelo algoritmo de otimização e dizer qual a sua aptidão em relação
ao problema tratado.
Dentre os métodos metaheurísticos mais empregados em JSSP de acordo
com a literatura, têm maior destaque a Busca Tabu, Simulated Annealing, Colônia
de Formigas e Algoritmos Genéticos.
34
2.9 BUSCA TABU
A Busca Tabu (TS) é um método metaheurístico que foi inicialmente
apresentado por Glover (1986) e, resumidamente, seu funcionamento se baseia em
manter uma lista das recentes soluções candidatas – lista tabu – se negando a
retornar a essa lista. Quando a busca atinge um ótimo local, o algoritmo não é
finalizado, ao contrário, ele continua selecionando uma solução mais próxima
(vizinha). A lista tabu serve para impedir a formação de loops durante a busca. Por
essa razão, essa característica também é chamada de memória de curto prazo
(PONNAMBALAM; ARAVINDAN; RAJESH, 2000).
2.10 SIMULATED ANNEALING
O uso do Simulated Annealing (SA) na solução de problemas de otimização
combinatória também surgiu na década de 80 (KIRKPATRICK; GELATT JR.;
VECCHI, 1983). O annealing é uma operação utilizada no processamento de metais,
onde o metal é rapidamente aquecido até uma temperatura extremamente alta e
então resfriado lentamente para obter estruturas cristalizadas com um mínimo de
energia, assim as fraturas e irregularidades são minimizadas. Seu funcionamento
em termos de problemas de otimização é baseado no fato de que se uma solução
nova é melhor que a solução anterior, ela será substituída, mas se a solução nova é
pior do que a solução anterior, ela não será necessariamente descartada, mas sim
terá uma probabilidade de continuar fazendo parte do espaço de soluções,
dependendo do quão pior é essa solução em relação à atual. A probabilidade de
uma solução pior continuar a ser selecionada também varia em função do principal
parâmetro do algoritmo, que é chamado de temperatura, e vai decrescendo ao longo
das iterações (VAN LAARHOVEN, AARTS, LENSTRA, 1992).
2.11 COLÔNIA DE FORMIGAS
A otimização por Colônia de Formigas (ACO) foi originalmente proposta por
Dorigo (1992). A ideia é utilizar agentes (formigas) na busca de possíveis soluções
no espaço de busca do problema. Existe um elemento chamado feromônio, que é
maior tanto quanto a solução apresentada é mais próxima do ótimo. Como formigas
tendem a caminhar por onde há maior presença de feromônio, haverá uma
35
tendência de encontrar soluções melhores com maior frequência (HUANG, LIAO,
2008).
2.12 ALGORITMOS GENÉTICOS
Os Algoritmos Genéticos (AG) foram introduzidos por Holland (1975), sendo
largamente utilizados como técnica de otimização nos mais variados tipos de
problemas. Um algoritmo genético pode ser entendido como uma classe de técnicas
metaheurísticas que consiste em encontrar soluções baseadas nos mecanismos de
seleção natural e genética. Em linhas gerais, os algoritmos genéticos operam sobre
um determinado conjunto de pontos, conhecido como população, e não sobre
pontos isolados; trabalham em um espaço de soluções codificadas do problema, e
não diretamente sobre o espaço de busca; e necessitam apenas da informação do
valor de uma função de aptidão (fitness), usando regras probabilísticas ao invés de
determinísticas (GOLDBERG, 1989).
2.12.1 Esquema Básico de um AG
Os elementos de um AG em relação ao seu significado são apresentados no
Quadro 2, contextualizado na resolução de problemas de otimização (LINDEN,
2012).
Quadro 2 – Principais elementos de um AG
Elemento Significado em Problemas de
Otimização
Cromossomo Representação de uma solução, podendo ser um vetor binário, um número real, etc.
Indivíduo Uma possível solução para o problema
tratado
População Um conjunto de possíveis soluções
Gene Parte da representação de uma solução,
ou seja, uma variável do problema
Alelo Valor que um gene pode assumir
Fonte: O autor.
Os procedimentos executados por um AG clássico se iniciam com a criação
uma população e o cálculo do valor de aptidão para cada possível solução, chamado
de indivíduo ou cromossomo. Operadores genéticos são então aplicados para,
36
probabilisticamente, selecionar os indivíduos com base no seu nível de aptidão,
criando uma nova geração de indivíduos. Melhores níveis de aptidão significam
maiores chances de seleção. A evolução das novas gerações também é conduzida
inserindo novos cromossomos na população atual utilizando os operadores
genéticos de cruzamento e mutação. O cruzamento determina o mecanismo de
combinação entre dois ou mais cromossomos para criar dois ou mais indivíduos
novos; o operador de mutação promove mudanças aleatórias nos cromossomos, a
fim de não ficar atrelado a algum máximo ou mínimo local e promovendo um maior
acesso ao espaço de busca. O esquema básico de um AG pode ser descrito da
seguinte forma (LINDEN, 2012):
a) inicializar a população de cromossomos;
b) avaliar cada cromossomo da população (fitness) de acordo com o objetivo do
problema tratado;
c) selecionar pais para gerar novos cromossomos;
d) aplicar operadores genéticos de cruzamento (crossover) e mutação (mutation)
nos pais selecionados para gerar novos cromossomos ou filhos;
e) descartar os antigos membros da população;
f) avaliar todos os novos cromossomos e inseri-los na população;
g) se o número de iterações (chamado também de gerações) foi atingido, ou o
melhor cromossomo é suficientemente satisfatório frente aos requisitos do
problema, retorne o melhor cromossomo, caso contrário, voltar à etapa “c”.
Existem vários aspectos e parâmetros na implementação de um AG, e nas
próximas seções serão apresentados somente aqueles que foram utilizados neste
trabalho. Para aprofundamento, recomenda-se a leitura de Linden (2012) na
literatura nacional, ou Eiben e Smith (2003) na literatura estrangeira.
37
2.12.2 Representação
O primeiro passo para criar um algoritmo genético é definir como será a
representação de uma possível solução para o problema, com vistas a gerar um
objeto que represente as soluções do problema tratado pelo AG. A forma mais típica
é a representação binária, na qual uma cadeia de zeros e uns é usada na
representação da solução, sofrendo normalmente uma alteração da base binária
para decimal quando a solução é encontrada. Cheng, Gen e Tsujimura (1996)
fizeram uma pesquisa bibliográfica acerca das principais formas de representação
de JSSP especificamente para serem aplicadas em AGs, classificando-as entre
representações diretas ou indiretas. Em um estudo mais recente, elaborado por
Abdelmaguid (2010), foram feitas comparações de desempenho entre a maioria
dessas representações.
As classificações abaixo, bem como as explicações acerca de cada
representação, foram baseadas no trabalho de Cheng, Gen e Tsujimura (1996).
Em representações diretas, a forma com que uma possível solução é
construída está estritamente ligada às variáveis do problema, e a interpretação da
solução pode ser feita diretamente sobre o indivíduo gerado. Nas representações
indiretas, o indivíduo do AG é um elemento que tem associação com a forma de
gerar possíveis soluções para um JSSP, mas precisa passar por algum algoritmo
(não de otimização, mas de tratamento) para gerar soluções propriamente ditas,
uma vez que uma interpretação direta não é possível.
Dentre as representações diretas, tem-se, por exemplo, a representação
baseada em operações (operation-based – OB), baseada em jobs (job-based – JB)
e a baseada em chaves aleatórias (random key – RK). Dentre as representações
indiretas, tem-se como mais utilizadas a representação por regras de despacho
(priority rule-based – PR), baseada em gráfico disjuntivo, baseada em lista de
preferência (preference list-based – PL) e baseada em máquina (machine-based –
MB).
Na representação OB, o cromossomo possui tamanho n × m e é formado por
uma permutação de n jobs com m repetições, gerando um vetor que é então
embaralhado. Para evitar a geração de indivíduos não factíveis (com relação à
sequência tecnológica que deve ser obedecida), é necessário adotar um certo
procedimento na interpretação do cromossomo. Como exemplo, toma-se o
38
cromossomo C = {1, 2, 1, 1, 2, 2}, que seria um possível indivíduo gerado pelo AG
para o problema 2 × 3 da Figura 1, pg. 20. A interpretação da solução deve ser feita
baseada na sequência tecnológica do problema, e o cromossomo deve ser lido da
esquerda para a direita, considerando a primeira operação do job que aparece
primeiro no cromossomo. Quando o alelo se repetir, deve-se considerar então a
segunda operação do job que repetiu, e assim por diante. Sendo assim, já que uma
operação é representada por Ojm, onde j refere-se ao número do job e m refere-se
ao número da máquina, a representação da solução para esse cromossomo,
considerando o problema da Figura 1, seria S = {O11, O21, O12, O13, O23, O22}.
Na representação JB, o cromossomo gerado pelo AG consiste em um vetor
de tamanho igual ao número de jobs. É realizado um sequenciamento completo de
cada job, obedecendo a sua sequência tecnológica, e antecedendo a operação na
máquina sempre que possível (ou seja, sempre que a máquina estiver livre). A
ordem em que a distribuição completa de cada job é feita deve respeitar a ordem em
que os jobs aparecem no cromossomo. Dois exemplos desse cromossomo poderiam
ser C = {1, 2} e C = {2, 1}. A distribuição do sequenciamento para esses dois
cromossomos foi apresentada na Figura 2 (acima e abaixo, respectivamente), na
seção de fundamentação teórica, pg. 21.
Na representação RK, o cromossomo é um vetor de tamanho n × m, no qual
cada gene é formado por duas partes: uma inteira, de tamanho m com n repetições,
representando a máquina por onde um determinado job deve passar; e uma
decimal, formada por números aleatórios entre 0 e 1, representando – após
ordenação em ordem crescente por máquina – a sequência de operações que deve
ser seguida. Um exemplo desse cromossomo para o problema 2 × 3 da Figura 1, pg.
20, seria C = {1.23, 1.02, 2.78, 2.67, 3.41, 3.56}. Ordenando a parte decimal e
adotando a representação da operação como sendo Ojm apresentada anteriormente,
ter-se-ia a seguinte solução S = {O21, O11, O22, O12, O13, O23}. Como pode-se notar,
esse tipo de representação por si só não considera a sequência tecnológica do
problema, podendo gerar soluções não factíveis que violem essa sequência. Desta
forma, ao adotar essa representação, sempre é necessário utilizar um procedimento
de transformação de soluções não factíveis em soluções factíveis, sendo
usualmente adotado o procedimento apresentado por Norman e Ben (1995).
Na representação PR, a cada etapa, todas as operações que estão
disponíveis para serem sequenciadas são associadas à alguma das diversas regras
39
de prioridade de despacho, e a operação que tiver a maior prioridade de acordo com
a regra de despacho, é sequenciada primeiro. Nessa representação, o cromossomo
é um vetor de tamanho n × m, contendo valores numéricos inteiros que são
associados às regras de despacho escolhidas. A decodificação do cromossomo em
uma solução é feita baseada no algoritmo de Giffler e Thompson (1960).
Na representação por gráfico disjuntivo, o cromossomo é um vetor binário de
tamanho n × m, que serve para definir uma orientação para os arcos disjuntivos,
para garantir que não haja operações simultâneas em uma mesma máquina, e
adotar um caminho para seguir, sem criar laços (loops) no gráfico (YAMADA, 2003).
Essa orientação é feita a partir do gráfico disjuntivo, onde um valor 0 significa definir
a orientação de Ojm para Okm, onde k representa um job sucessor do job j, e valor 1
representa definir orientação inversa. Tem-se como exemplo o gráfico disjuntivo
apresentado na seção 2.4.3, Figura 4, pg. 27. Supondo que o cromossomo fosse
dado por C = {0, 0, 1, 0, 1, 1}, o gráfico orientado ficaria como o da Figura 6.
Figura 6 – Gráfico conjuntivo para o problema 2 × 3
Fonte: O autor.
Para gerar uma solução, nessa representação, deve-se primeiramente
encontrar o caminho mais longo, considerando partir do início (zero) e chegar ao fim
(asterisco). Esse caminho, que equivale ao makespan, é conhecido como “caminho
crítico”, e está destacado com linha tracejada na Figura 7.
0 *
O11 O12 O13
O21 O23 O22
P11 = 2 P12 = 1 P13 = 1
P21 = 1 P23 = 1 P22 = 1
40
Figura 7 – Caminho crítico
Fonte: O autor.
Na representação PL, o cromossomo possui tamanho n × m, e é composto
por m sub-cromossomos, cada um deles formado por uma permutação de n jobs.
Esses sub-cromossomos são as chamadas listas de preferência de processamento
dos jobs em uma determinada máquina. Entretanto, para gerar uma possível
solução, a lista de preferência é obedecida sempre levando em conta a sequência
tecnológica do problema. Nesse caso, se uma operação preferencial é não factível,
ela é preterida e executada apenas ao final, após as operações factíveis, segundo a
ordem da sequência tecnológica.
Um exemplo desse tipo de representação, ainda tomando como base o
problema 2 × 3 da Figura 1, pg. 20, é o cromossomo dado por C = {(1, 2), (2, 1), (2,
1)}. Inicialmente, a preferência de operações é: job 1 na máquina 1, job 2 na
máquina 2 e job 2 na máquina 3. Considerando a sequência tecnológica (Tabela 1,
pg. 26) é possível observar que somente a primeira operação é factível, sendo
portanto agendada como ilustrado na Figura 8(a). Mesmo após executar esse
agendamento as operações representadas pelo job 2 na máquina 2 e job 2 na
máquina 3 não são factíveis, pois a máquina 1 é o primeiro passo na sequência
tecnológica do job 2. Passa-se, portanto, para as próximas operações, que seriam o
job 2 na máquina 1, job 1 na máquina 2 e job 1 na máquina 3, todas factíveis nesse
caso, visto na Figura 8(b). Por fim, restaram as operações job 2 na máquina 2 e job
2 na máquina 3, as quais são agendadas na ordem da sequência tecnológica,
concluindo assim o agendamento de todas as tarefas, conforme Figura 8(c).
0 *
O11 O12 O13
O21 O23 O22
P11 = 2 P12 = 1 P13 = 1
P21 = 1 P23 = 1 P22 = 1
41
Figura 8 – Lista de preferência para o problema 2 × 3
Máquina 1 1
Máquina 2
Máquina 3
Tempo
(a) agendamento da primeira operação
Máquina 1 1 2
Máquina 2
1
Máquina 3
1
Tempo
(b) agendamento das próximas operações
Máquina 1 1 2
Máquina 2
1 2
Máquina 3
1 2
Tempo
(c) agendamento das últimas operações
Fonte: O autor.
Na representação MB, o cromossomo é codificado como uma sequência de
máquinas e o sequenciamento dos jobs é construído por uma heurística conhecida
como Shifting Bottleneck1 com base na sequência do cromossomo. Essa heurística
sequencia as máquinas uma a uma sucessivamente, considerando, a cada vez, que
a máquina em questão é o gargalo da produção em relação às outras que ainda não
foram sequenciadas. Cada vez que uma nova máquina é sequenciada, todas as
sequências das outras máquinas são recalculadas e otimizadas. Como pode-se
perceber, ao adotar esse tipo de representação, o AG é utilizado para encontrar a
1 A heurística do Shifting Bottleneck foi proposta por Adams et al. (1988), desenvolvida
especificamente para auxiliar na solução de problemas de Job Shop.
42
melhor sequência de máquinas para serem sequenciadas pela heurística de Shifting
Bottleneck.
Importante mencionar que, conforme constatado por Ivers (2006), perde-se
muito tempo tratando soluções não factíveis para convertê-las em soluções factíveis.
Portanto, se a representação em si não eliminar soluções não factíveis,
necessitando de algum algoritmo para transformá-las em factíveis,
computacionalmente é mais indicado testar todas as soluções e, caso alguma não
seja factível, penalizá-la. O trabalho de Abdelmaguid (2010) corrobora essa
constatação, uma vez que os algoritmos que utilizaram a representação baseada em
regras de despacho e na representação baseada em máquina, levaram tempos
muito maiores para concluir a execução do AG.
2.12.3 Seleção
O método de seleção mais utilizado é o de roleta (roulette wheel), no qual
virtualmente colocam-se os cromossomos em uma roleta, na qual a probabilidade de
seleção é proporcional à sua aptidão. Gira-se a roleta e seleciona-se o indivíduo
apontado pela roleta. O processo é repetido de acordo com a quantidade de
indivíduos a serem selecionados. Esse processo garante que um indivíduo com
menor aptidão tenha menores chances de ser selecionado para o evento posterior,
que é o cruzamento (mas ainda possua alguma chance). Essa característica é
importante porque dentro de cromossomos com menos aptidão ainda podem estar
presentes características importantes para atingir um indivíduo ótimo.
Associado à seleção, existe um esquema de controle da população, que é o
espaço de busca do problema, ao que Linden (2012) chama de módulo da
população. Em geral, um AG básico utiliza o esquema de substituição total, o que
significa que após os operadores de cruzamento e mutação gerarem uma
quantidade de filhos equivalente a quantidade de pais, esses pais são desprezados.
Para problemas mais complexos, a literatura recomenda o esquema chamado de
steady state, que opera com base em uma substituição parcial dos cromossomos
pais. De acordo com Eiben e Smith (2003), esse esquema reproduz mais fielmente o
comportamento da natureza, pois possibilita a mistura de gerações, e impede que
alguma característica importante presente na geração anterior seja perdida. Outro
elemento associado à seleção é o elitismo, que é uma regra definida no AG para
43
que, no mínimo, uma cópia do melhor membro (membro com melhor valor de
aptidão) da geração atual seja mantida na próxima população (EIBEN, SMITH;
2003).
2.12.4 Cruzamento
Existem alguns operadores de cruzamento clássicos, como o de um ponto de
corte e de dois pontos de corte, mas que possuem uso limitado de acordo com a
representação, e outros mais elaborados, como o partially matched crossover (PMX)
e o cycle crossover (CX), os quais suportam trabalhar com representações mais
complexas, como de listas ordenadas, típicas em problemas de permutação como
os JSSP (SARAIVA; OLIVEIRA, 2010).
O operador CX, adotado nos experimentos iniciais deste trabalho, parte do
princípio de que cada gene pai herda sua posição na lista. O procedimento de
execução desse operador pode ser descrito da seguinte forma (EIBEN; SMITH,
2003):
a) começar a partir do primeiro alelo, partindo do primeiro pai (considerando o
cruzamento entre dois pais);
b) identificar o valor do elemento na mesma posição no cromossomo do segundo
pai;
c) ir para a posição no primeiro pai representada pelo valor do elemento anterior;
d) adicionar esse alelo na mesma posição no novo cromossomo filho;
e) repetir o ciclo de “b” à “d” até que atinja novamente o primeiro alelo do primeiro
pai;
f) gerar o segundo cromossomo filho com os alelos do cromossomo do segundo
pai que participaram do ciclo;
44
g) completar os alelos do primeiro filho com os alelos do segundo pai que não
participaram do ciclo e vice-versa.
Esse operador é chamado de ciclo, pois para gerar os filhos ele faz um ciclo
de busca nos cromossomos dos pais. A Figura 9 ilustra esse procedimento para um
cromossomo de seis indivíduos, representando o sequenciamento de uma máquina.
Figura 9 – Exemplo de cycle crossover
Fonte: O autor.
Para representação binária, um operador mais simples, chamado de
cruzamento de um ponto, é frequentemente utilizado. Esse cruzamento assume um
ponto aleatório entre dois genes a cada geração do AG e troca a primeira parte com
a segunda, como observado na Figura 10.
Figura 10 – Exemplo de cruzamento de único ponto
0 0 0 1 1 0
0 0 0 1 0 0
0 1 1 1 0 0
1 0 0 1 1 1
Fonte: O autor.
2.12.5 Mutação
Enquanto o operador de cruzamento visa gerar indivíduos que possuam uma
aptidão cada vez maior em relação ao problema tratado, sendo portanto um dos
1 2 3 4 5 6
1 2 3 5 4 6
2 3 6 5 4 1
2 3 6 4 5 1
Cromossomo Pai 1
Cromossomo Pai 2 Cromossomo Filho 2
Cromossomo Filho 2
Cromossomos Pai Cromossomos Filho
45
elementos responsáveis pela convergência do algoritmo, o operador de mutação
tenta evitar a convergência prematura do processo de busca (LINDEN, 2012).
Por convergência prematura entende-se que foi atingido um valor
aparentemente ótimo para o problema, mas que é ótimo apenas para um
determinada região local no espaço de soluções. Quando uma técnica
metaheurística fica “presa” nesse tipo de região, diz-se que o algoritmo estagnou em
um ótimo local. O operador de mutação atua alterando, aleatória ou de forma
sistêmica, um ou mais alelos do cromossomo, fazendo com que exista uma certa
diversidade populacional.
Destaca-se aqui o operador de mutação chamado swap mutator, adequado
em representações por permutação, que trabalha conforme Figura 11.
Figura 11 – Exemplo de mutação swap
3 4 5 6 1 2
3 6 5 4 1 2
Fonte: O autor.
Já para representações binárias, utiliza-se frequentemente a chamada
mutação por troca (também conhecida como flip bit). Baseado no percentual da taxa
de mutação, um ou mais bits do cromossomo têm seus valores trocados, conforme
ilustrado na Figura 12.
Figura 12 – Exemplo de mutação flip bit
0 0 1 1 0 1
0 1 1 1 1 1
Fonte: O autor.
Antes da Mutação
Após a Mutação
Antes da Mutação
Após a Mutação
46
METODOLOGIA
Esta seção apresentada a metodologia desenvolvida durante esse trabalho,
bem como um detalhamento dos materiais e métodos utilizados.
3.1 METODOLOGIA ADOTADA
Como primeira etapa para este trabalho foi realizada uma pesquisa
exploratória, utilizando a revisão bibliográfica que, segundo Gil (2008), serve para
proporcionar maior familiaridade com o problema.
Conforme orienta Fleury (2012), realiza-se uma primeira revisão (horizontal)
para nortear a definição do problema de pesquisa e a contribuição do trabalho,
seguida de uma revisão vertical para aprofundar o conhecimento sobre o tema e
balizar seu desenvolvimento. Durante a fase de levantamento bibliográfico,
procurou-se seguir as recomendações feitas por Silva e Menezes (2001) para
realizar pesquisas bibliográficas em engenharia de produção, que sugere fontes
confiáveis dentro do meio acadêmico.
Segundo Morabito Neto e Pureza (2012), as pesquisas quantitativas dentro da
gestão de produção e operações podem ser divididas de acordo com a orientação
do pesquisador e a fonte de dados. Nesse caso, a orientação é racional; dedutiva, e
a fonte de dados é artificial – uma representação de um cenário real, que são os
exemplares de teste disponíveis na OR-Libray. Ainda nessa classificação, se verifica
que quando são propostas novas formas de representação ou ainda adaptações de
representações existentes, provendo melhores resultados, são classificados como
elementos de pesquisa axiomática normativa. Os autores ainda enfatizam que nesse
tipo de pesquisa, um dos elementos notoriamente presentes é o uso da dedução,
para interpretar e comparar as soluções propostas por essa abordagem.
Quando se apresenta uma nova forma de representação ou se altera uma
previamente existente, um item que sempre deve ser levado em consideração é a
validação dessa representação. Nesse caso, como se trata de uma pesquisa
axiomática, essa validação é feita pela comparação com os resultados previamente
conhecidos dos JSSP elaborados exclusivamente para tal finalidade, conhecidos
como benchmarks.
47
A partir desse ponto é possível validar ou negativar as hipóteses, que como
Marconi e Lakatos (2010) apontam, são uma resposta provável e provisória para o
problema de pesquisa, e que, portanto, está sujeita a essas condições. É importante
evidenciar que foi definido aqui o termo “hipóteses” e não proposições, pois estão
sujeitas às análises estatísticas, com indicadores quantitativos (FLEURY, 2012).
3.2 MATERIAIS E MÉTODOS
Esta seção descreve sobre as bibliotecas utilizadas bem como sobre os
métodos desenvolvidos nessa dissertação.
3.2.1 Biblioteca de Algoritmo Genético
O processo de otimização foi realizado utilizando um ambiente de algoritmo
genético disponibilizado na biblioteca GAlib, escrita por Matthew Wall, do
Massachusetts Institute of Technology (GAlib, 1996). Trata-se de uma biblioteca em
C++ de componentes típicos de algoritmos genéticos, que inclui ferramentas de
suporte a diferentes representações de soluções e diversas variações de operadores
genéticos. A GAlib é uma biblioteca livre, largamente utilizada e, portanto, confiável.
3.2.2 Representação do Job Shop na GAlib
Inicialmente, para o problema FT06, foi utilizada uma representação inteira
codificada em uma lista de prioridades devido à sua fácil interpretação, que
determina a sequência dos jobs nas máquinas, na qual a ordem em que os
elementos aparecem na lista fazem parte da estrutura do problema, formando um
vetor de trinta e seis elementos, onde cada elemento desse vetor representa um
gene para o AG e cada grupo de seis elementos representam a prioridade a ser
dada para cada job em uma determinada máquina, conforme Figura 13. Analisando
as prioridades dos jobs no primeiro grupo de 6 elementos (que representam as
prioridades para a máquina 1), tem-se no primeiro gene o valor 3 – o que significa
prioridade 3, e os dois últimos elementos dessa série possuem prioridades 1 e 2.
Isso significa que a máquina 1 irá processar os jobs 5 e 6, respectivamente, antes de
processar o job 1.
48
Figura 13 – Representação por lista de prioridades: problema FT06
Fonte: O autor.
Após testes, observou-se que esse tipo de representação, apesar de bastante
objetiva, não obteve um desempenho satisfatório, conforme apresentação dos
resultados na seção 4.2, pg. 59.
Posteriormente, com base nas observações dos testes, foi proposta e
avaliada uma nova representação, baseada em uma matriz binária de dimensão m ×
(n-1). Diferentemente da primeira representação adotada, a nova representação
desenvolvida não permite uma interpretação direta de uma possível solução para o
problema. Assim, foram desenvolvidas rotinas computacionais para, a partir do
cromossomo binário, gerar uma solução.
Primeiramente a matriz de rotas, dada pelo problema, é convertida em uma
sequência de jobs por máquina, através da heurística FIFO, onde a primeira ordem
que chega na máquina é a primeira a ser executada. Para tal, é feita uma leitura da
matriz inicial por colunas, da esquerda para a direita, para cada máquina, em ordem
crescente, conforme observado na Figura 14. Sendo assim, para o problema FT06,
definido conforme Tabela 2, pg. 30, na máquina 1 chega primeiro o job 1, seguido
dos jobs 4, 3, 6, 2 e 5; gerando assim a primeira linha da segunda matriz. O
processo é repetido para a máquina 2, e assim sucessivamente, gerando a segunda
matriz na sequência da Figura 14, que é a semente geradora das soluções.
Importante salientar que essa transformação ocorre apenas uma vez, no início do
processo.
Prioridades dos jobs na
máquina 1
Prioridades dos jobs na
máquina 2 Prioridades dos jobs na
máquina 6
Cromossomo = vetor de 36 posições
3 4 5 6 1 2 1 2 3 5 4 6 2 3 1 4 5 6
49
Figura 14 – Transformação das rotas em sequência de jobs por máquina
Fonte: O autor.
Os indivíduos do AG, representados pela matriz binária da Figura 15, sobre a
qual os operadores genéticos atuam, determina a permutação na semente. É feita a
leitura da matriz binária por linhas, de cima para baixo, realizando uma permutação
na semente sempre que for identificado o valor 1. Essa permutação ocorre entre o
elemento da mesma posição onde foi identificado o valor 1 na matriz binária e seu
sucessor.
50
Figura 15 – Metodologia utilizando a representação binária
Fonte: O autor.
No exemplo da Figura 15, como o primeiro elemento da matriz binária tem
valor 1, é feita a permutação entre o primeiro e o segundo elemento da semente, ou
seja, entre os jobs 1 e 4, gerando o primeiro elemento da nova matriz de sequências
(matriz permutada), que é o job 4, e o segundo elemento, que é o job 1. Até esse
momento, o job 1 está temporariamente na posição 2, uma vez que sua
permanência nessa posição depende do alelo da segunda posição no cromossomo.
Como o valor da segunda posição no cromossomo é 0, significa que não
haverá permutação entre o segundo e terceiro elemento da matriz de sequência
original (semente). Desta forma, os dois primeiros elementos da nova matriz
permutada realmente são os jobs 4 e 1. Esse processo é repetido com todos os
elementos da primeira linha do cromossomo, e depois com todos os elementos da
segunda linha do cromossomo, e assim por diante. A razão pela qual só existem
cinco colunas na matriz binária é porque a permutação ocorre entre o elemento da
posição atual e seu sucessor, o que significa que um valor 1 na quinta posição já
51
gera permutação entre o quinto e sexto elemento da matriz original de sequências,
não fazendo sentido existir uma sexta coluna no cromossomo (considerando o
problema FT06).
Por fim, a matriz gerada por meio permutação é transformada em uma matriz
de prioridade de jobs por máquina (última matriz na sequência da Figura 15), que é
a forma como a rotina desenvolvida em linguagem C, responsável pela avaliação
dos indivíduos, interpreta as sequências. Analisando os três primeiros jobs da
primeira linha da matriz permutada, percebe-se que o job 4 é o job que deve ser
executado primeiro, seguido pelo job 1 e pelo job 6. Logo, na matriz de prioridades
(que é a representação da solução em si), esses jobs são os que recebem valores
de prioridade 1, 2 e 3, respectivamente. Esse processo é realizado com todos os
elementos da matriz. Importante notar que nem todas as soluções geradas por esse
processo são factíveis.
3.2.3 Rotina para Cálculo da Aptidão
A rotina para cálculo da aptidão das soluções geradas pelo AG foi
desenvolvida em linguagem C, que é uma linguagem de baixo nível e que pode ser
facilmente implementada dentro da própria GAlib. Esta rotina essencialmente calcula
o valor do makespan para cada nova solução gerada.
A rotina tem os seguintes parâmetros: uma matriz de tempo de
processamento de cada tarefa (operação) em cada máquina, uma matriz de rotas,
que é dada pelo problema e, por fim, a sequência de prioridades gerada pelo AG. A
estrutura de algoritmo é a própria sequência de execução do problema: as tarefas
são processadas em máquinas específicas de acordo com as suas prioridades.
Cada iteração no algoritmo corresponde a um passo de tempo na formulação do
problema. Caso a sequência gerada pelo AG não seja factível, um elevado valor fixo
de makespan é retornado ao AG, conforme detalhado na próxima seção. Caso a
sequência gerada pelo AG seja factível, o valor referente ao makespan daquela
sequência específica é retornado para o AG. Notar que essa rotina avalia de
maneira lógica o sequenciamento gerado pelo AG.
A avaliação dessa rotina foi realizada com auxílio do LISA, que é um software
open-source desenvolvido por um grupo de pesquisadores da Otto-von-Guericke
University (sob a supervisão do Prof. Dr. Frank Werner) para criação, edição e
52
solução de problemas de sequenciamento de ordens de produção determinísticos,
ou seja, uma biblioteca gráfica para problemas de scheduling (LISA, 2010).
3.2.4 Tratamento de Soluções Não Factíveis
Uma importante característica da função de aptidão desenvolvida em
linguagem C é a capacidade de lidar com soluções não factíveis, que podem ser
geradas pelo AG. Muitos autores tratam da questão de soluções não factíveis em
JSSP sob dois aspectos: garantindo que não haja jobs sendo processados em uma
mesma máquina ao mesmo tempo; e que a sequência de prioridades não viole a
sequência tecnológica do problema em questão.
Durante a elaboração desse trabalho, foi constatada uma terceira condição
que também pode gerar sequências não factíveis, quando da ocorrência de filas:
enviar uma sequência de prioridades que cause uma situação de travamento nas
máquinas durante o processamento dos jobs, o que é conhecido na literatura como
gridlock (PACHECO; SANTORO, 1999).
Como a rotina que avalia as soluções deve respeitar estritamente as
prioridades pré-definidas, um indivíduo do AG pode conter uma sequência de
prioridades impossível de ser executada nas máquinas por gerar espera simultânea
de jobs. Um exemplo simples desse tipo de situação é o caso de um cenário com
duas máquinas e dois jobs, com as rotas definidas como {M2, M1} e {M1, M2}, para
os jobs um e dois, respectivamente. Nesse caso, um conjunto de prioridades que
indique o processamento dos jobs na ordem {1,2} e {2,1}, nas máquinas M1 e M2,
faz com que o job 1 espere na fila da máquina M2 pelo job prioritário 2 enquanto
este, por sua vez, espera na fila da máquina M1 pelo job prioritário 1. Nessa
condição o sistema não consegue processar os jobs e ocorre o que chamou-se de
travamento. A Figura 16 demonstra tal situação. Esse é um fator importante que
deve ser levado em conta ao utilizar uma representação via expressões analíticas,
por exemplo.
53
Figura 16 – Exemplo de situação de travamento
Máquina 1 J1 J2
Máquina 2 J2 J1
Tempo Fonte: O autor.
A rotina desenvolvida neste trabalho trata soluções não factíveis associando
um valor de penalidade às mesmas, o que é comumente utilizado em técnicas de
otimização. Como parâmetro de penalidade, foi criada uma variável que refere-se ao
número de jobs que não foram processados ao final da rotina. Ao valor de aptidão
(makespan) gerado a cada rodada da rotina, é somado um fator igual a 1000 vezes
esse parâmetro de penalidade, podendo variar entre 2000 e 6000 para sequências
não factíveis, considerando o problema FT06 (em sequências factíveis todos os jobs
são atendidos, portanto esse parâmetro é igual a zero).
3.2.5 Fluxograma do Acoplamento da Rotina de Avaliação e a GALib
No intuito de apresentar uma visão geral do acoplamento entre a rotina de
avaliação dos indivíduos e a GAlib, é apresentado o fluxograma na Figura 17.
54
Figura 17 – Acoplamento entre a função de avaliação e a GAlib
Fonte: O autor.
Função de Aptidão(Rotina em C)
Representação(GAlib)
N
S
N
Geração da semente
Geração da matriz binária com valores aleatórios
(cromossomo)
O cromossomo é varrido e os elementos da
semente são permutados sempre que o elemento
do cromossomo = 1
A nova matriz permutada é transformada em uma
matriz de prioridades (solução)
Início
A solução gerada é enviada para a rotina em linguagem C, que então
simula o sequenciamento
A solução é factível?
A rotina em C retorna para o AG o makespan
da solução avaliada
Matriz de rotas, dada
pelo problema
Novos cromossomos gerados a partir da ação
dos operadores genéticos
Execução dos operadores genéticos: seleção, cruzamento e
mutação
A rotina em C retorna para o AG o makespan +
1000 * quantidade de jobs não processados
Número de gerações atingido?
SFim
55
3.2.6 Abordagem com Laços Externos e Semente Dinâmica
Foi criado um laço externo à execução do AG, de forma que cada rodada
interna do AG teve 50 gerações. Uma vez completadas essas 50 gerações, o melhor
indivíduo dessa rodada (que era o melhor dentre as 50 gerações), além da semente
que o gerou, era transferido para a próxima rodada, sendo executadas novamente
mais 50 gerações. Foram executados no total 25 laços externos à cada problema
testado, totalizando 1.250 gerações. Esse procedimento adicional foi associado ao
funcionamento do AG dito clássico, conforme proposto por Holland (1975).
O fluxograma da Figura 18 ilustra a abordagem final proposta, com a
alteração da semente através do que foi chamado de laços externos.
56
Figura 18 – Fluxograma da abordagem final proposta
Fonte: O autor.
S
N
S
N
Geração ou atualização da semente
Geração da matriz binária com valores aleatórios
(cromossomo)
O cromossomo é varrido e os elementos da
semente são permutados sempre que o elemento
do cromossomo = 1
A nova matriz permutada é transformada em uma
matriz de prioridades (solução)
Início
A solução gerada é enviada para a rotina em linguagem C, que então
simula o sequenciamento
A solução é factível?
A rotina em C retorna para o AG o makespan
da solução avaliada
Matriz de rotas, dada
pelo problema
Novos cromossomos gerados a partir da ação
dos operadores genéticos
Execução dos operadores genéticos: seleção, cruzamento e
mutação
A rotina em C retorna para o AG o makespan +
1000 * quantidade de jobs não processados
Número de gerações atingido?
S
Fim
Nível interno(AG clássico)
N Número de laços externos
atingido?
Retorna a semente geradora do melhor
indivíduo até o momento e o melhor indivíduo para
a próxima iteração
57
RESULTADOS E DISCUSSÕES
Este capítulo apresenta os resultados dos testes executados, e a discussão
acerca dos mesmos.
4.1 RESULTADOS DA AVALIAÇÃO DA FUNÇÃO DE APTIDÃO
Conforme apresentado na seção 3.2.3, pg. 51, no intuito de avaliar a rotina
desenvolvida em linguagem C que é responsável pela função de aptidão, o LISA foi
utilizado na avaliação da rotina. Foram apresentadas 10 sequências diferentes para
o problema FT06, geradas a partir do LISA, sendo que os resultados de makespan
coincidiram com os reportados pela biblioteca de scheduling, conforme Tabela 3.
Sendo assim, foi constatado que a rotina avalia as soluções apresentadas a ela de
maneira adequada.
58
Tabela 3 – Prioridades utilizadas na avaliação da rotina pelo LISA
FT06 Teste
1 Teste
2 Teste
3 Teste
4 Teste
5 Teste
6 Teste
7 Teste
8 Teste
9 Teste
10
J1, M1 1 2 1 1 1 1 1 1 1 1
J2, M1 5 5 5 5 4 4 4 5 5 5
J3, M1 3 3 2 2 2 2 2 3 3 3
J4, M1 2 1 3 4 5 5 5 2 2 2
J5, M1 6 6 6 6 6 6 6 6 6 6
J6, M1 4 4 4 3 3 3 3 4 4 4
J1, M2 4 4 4 4 4 6 6 4 4 4
J2, M2 1 1 1 1 1 1 1 1 1 1
J3, M2 6 6 6 6 6 5 5 6 6 6
J4, M2 2 2 2 2 2 2 2 2 2 2
J5, M2 5 5 5 5 5 4 4 5 5 5
J6, M2 3 3 3 3 3 3 3 3 3 3
J1, M3 1 1 1 1 1 1 1 1 1 1
J2, M3 3 3 3 3 3 3 3 3 3 3
J3, M3 2 2 2 2 2 2 2 2 2 2
J4, M3 5 5 5 5 5 5 5 5 5 5
J5, M3 4 4 4 4 4 4 4 4 4 4
J6, M3 6 6 6 6 6 6 6 6 6 6
J1, M4 4 4 4 4 4 4 4 4 4 4
J2, M4 5 5 5 5 5 5 5 5 5 5
J3, M4 1 1 1 1 1 1 1 1 1 1
J4, M4 3 3 3 3 3 3 3 3 3 3
J5, M4 6 6 6 6 6 6 6 6 6 6
J6, M4 2 2 2 2 2 2 2 2 2 2
J1, M5 6 6 6 6 6 6 6 6 6 6
J2, M5 1 1 1 1 1 1 2 1 2 2
J3, M5 3 3 3 3 3 3 1 2 1 1
J4, M5 4 4 4 4 4 4 4 4 4 4
J5, M5 2 2 2 2 2 2 3 3 3 3
J6, M5 5 5 5 5 5 5 5 5 5 5
J1, M6 4 4 4 4 4 4 4 4 4 4
J2, M6 3 3 3 3 3 3 3 3 3 2
J3, M6 1 1 1 1 1 1 1 1 1 1
J4, M6 6 6 6 6 6 6 6 6 6 6
J5, M6 5 5 5 5 5 5 5 5 5 5
J6, M6 2 2 2 2 2 2 2 2 2 3
Makespan pelo LISA
55 60 63 74 84 84 101 58 71 89
Makespan pela Rotina em C
55 60 63 74 84 84 101 58 71 89
Fonte: O autor.
59
4.2 ALTERAÇÃO DA REPRESENTAÇÃO DAS SOLUÇÕES NO AG
Foram avaliadas diferentes combinações de valores de alguns parâmetros do
AG, como o tamanho da população, taxa de cruzamento, mutação e número de
gerações. Apesar disso, a convergência para o ótimo global – melhor makespan
conhecido – não ocorreu. Percebeu-se que a representação utilizada até então, por
lista de prioridade, devia ser melhorada.
A título de referência, apresenta-se um gráfico na Figura 19 que mostra a
convergência do AG para o problema FT06 utilizando a representação por lista de
prioridades, que não atingiu as 55 unidades de tempo que a literatura reporta para
esse problema.
Figura 19 – FT06: representação por lista de prioridades
Fonte: O Autor
Com efeito, observou-se que essa representação de fato gerava muitas
soluções não factíveis: conforme já apresentado na seção 2.1, pg. 22, o espaço de
soluções para um JSSP é formado por (n!)m sequências possíveis, enquanto que a
representação adotada até então produzia um espaço de busca de (n×m)!
combinações. Isso significa que, para o problema FT06, das 3,72×1041 sequências
possíveis, somente 1,39×1017 pertencem ao espaço de interesse (LUKASZEWICZ,
2005; IVERS, 2006).
Como apresentado na seção 3.2.2, pg. 48, a nova representação por matriz
binária está baseada no fato de utilizar a própria sequência de rotas, dada pelo
problema, como ponto de partida para o AG e, então, utilizar os indivíduos gerados
70
170
270
370
470
570
670
0 250 500 750 1000 1250 1500
Make
span (
U.T
.)
Gerações
60
pelo AG para permutar essa sequência e, probabilisticamente, convergir para uma
solução melhor. Percebeu-se assim que partir de uma semente aparentemente boa
foram obtidos resultados bastante promissores. Importante notar que partindo de
uma sequência aleatória para gerar a semente, o algoritmo não convergiu, mesmo
utilizando a representação binária e alterando-se os parâmetros do AG para vários
valores típicos encontrados na literatura.
Ao adotar a sequência de rotas para gerar a semente, o AG convergiu em
todas as vezes testadas para o problema FT06, independentemente de variações
em relação aos parâmetros do AG. Sendo assim, foram adotados os parâmetros
descritos no Quadro 3 da próxima seção, pg. 61, tendo sido executadas dez rodadas
do AG para todos os problemas testados. A Figura 20 mostra o gráfico da
convergência. A título de referência, a média dos tempos de execução das dez
rodadas para o problema FT06 foi de 0,5746 segundos.
Figura 20 – FT06: semente a partir das rotas do problema
Fonte: O Autor
4.3 PARÂMETROS UTILIZADOS NO AG
No Quadro 3 são apresentados os parâmetros utilizados no algoritmo
genético nesse estudo, considerando a representação por matriz binária. Esses
foram os valores finais, sendo que com a metodologia adotada, não houveram
mudanças significativas ao utilizar diferentes valores desses parâmetros.
50
500
0 25 50 75 100 125
Makespan (
U.T
.)
Gerações
Semente a partir da rota
Semente aleatória
61
Quadro 3 – Parâmetros adotados no AG
Parâmetro Valor Adotado Justificativa
Codificação do cromossomo
Binária Testes
Tamanho do cromossomo
m × (n-1) Abordagem proposta
Módulo da população Steady State Yamada (2003)
Taxa de substituição da população
80% Mitchell (1997)
Santa Catarina (2009) Luke (2010)
Tamanho da população
100 Testes
Tipo de cruzamento 1 ponto de corte Abordagem proposta
Taxa de cruzamento 90% Mitchell (1997)
Santa Catarina (2009) Luke (2010)
Tipo de mutação Flip Bit Abordagem proposta
Taxa de mutação 5% Mitchell (1997)
Santa Catarina (2009) Luke (2010)
Seleção Roleta Mitchell (1997)
Santa Catarina (2009) Luke (2010)
Número de gerações 100 para FT06, 1250
para demais problemas Testes
Critério de parada Número de gerações Mitchell (1997)
Santa Catarina (2009) Luke (2010)
Função de aptidão Rotina criada em
linguagem C Abordagem proposta
Fonte: O autor.
4.4 ABORDAGEM FINAL PROPOSTA
Após a identificação da representação cromossômica adequada ao problema
FT06, o próximo passo foi testar essa abordagem com um conjunto mais
significativo de problemas e comparar o desempenho com outras representações
utilizadas na literatura. Foi adotado o trabalho de Abdelmaguid (2010), no qual foi
realizada uma comparação do desempenho de seis representações clássicas para
JSSP, descritas na seção 2.12.2, pg. 37. Para efeito de comparação com o artigo
previamente citado, foram utilizados os exemplares de problemas LA, apresentados
pela primeira vez por Lawrence (1984). Para cada problema foram executadas dez
62
rodadas do AG (cujos resultados são disponibilizados na seção de apêndices), com
parâmetros definidos conforme Quadro 3 apresentado anteriormente.
Embora a representação binária tenha produzido bons resultados para o
problema FT06, convergindo para o ótimo em todas as vezes, isso não foi
observado no problema LA01. Como a representação binária teve melhores
resultados, com base nos resultados da Figura 19 anteriormente apresentada na pg.
59, optou-se por mantê-la, e fazer uma alteração na forma como o AG operava.
Essa alteração foi o que se chamou de laços externos com semente dinâmica.
Importante notar que adotar essa abordagem apresentou resultados bastante
superiores em relação ao adotar uma única rodada de 1.250 gerações, chegando no
valor ótimo para o problema LA01. A Figura 21 ilustra essa diferença, lembrando que
o makespan ótimo conhecido para o LA01 é de 666 unidades de tempo.
Figura 21 – Gráfico da convergência para o problema LA01
Fonte: O Autor
Acredita-se que essa melhora de convergência se deva ao fato de que
diferentemente de executar as 1250 iterações seguidas com elitismo, a abordagem
proposta, além de preservar a melhor solução das gerações anteriores para a
geração atual (o que o elitismo já faria), também copia para as próximas 50
gerações a semente geradora que estava associada com esse melhor indivíduo, o
que permitiu ao AG gerar um número maior de soluções factíveis, pois a população
inicial após cada laço externo é baseada na melhor semente das gerações
650
680
710
740
770
800
830
860
890
0 250 500 750 1000 1250 1500
Makespan (
U.T
.)
Gerações
1250 gerações
50 / 25 gerações
AG clássico (com elitismo e representação binária) AG com semente dinâmica (com elitismo e mesma representação binária)
63
anteriores. A Tabela 4 compara as execuções da abordagem anterior e a
abordagem final, com semente dinâmica, corroborando tal afirmação.
Tabela 4 – Soluções factíveis versus não factíveis para o problema LA01
Abordagem com Semente Única Abordagem com Semente Dinâmica
Rodada Indivíduos Factíveis
Indivíduos Não Factíveis
Rodada Indivíduos Factíveis
Indivíduos Não Factíveis
1 103.377 21.623 1 115.866 9.134
2 102.310 22.690 2 116.068 8.932
3 101.788 23.212 3 114.116 10.884
4 101.450 23.550 4 115.649 9.351
5 102.594 22.406 5 114.525 10.475
6 103.293 21.707 6 118.684 6.316
7 104.061 20.939 7 118.174 6.826
8 102.746 22.254 8 115.275 9.725
9 101.706 23.294 9 116.231 8.769
10 103.665 21.335 10 116.218 8.782
Média Percentual
82,16% 17,84% Média
Percentual 92,86% 7,14%
Fonte: O autor.
Como pode-se perceber, de fato a abordagem de execução do AG com
semente dinâmica, com a herança da semente geradora do melhor indivíduo
associado ao elitismo, possibilitou um ganho de mais de 10% de soluções factíveis
no espaço de busca em relação à abordagem convencional, apenas com o elitismo.
Como o tamanho da população e o número de gerações foram iguais nas duas
situações, e sendo esses parâmetros que, em geral, têm maior impacto no tempo
computacional, os tempos de execução das abordagens foram equivalentes.
A Tabela 5 mostra os valores mínimos, máximos e médios de makespan
encontrados em cada um dos problemas testados com essa nova abordagem. Os
valores em negrito indicam que o algoritmo de otimização atingiu o valor ótimo de
makespan conhecido. Na tabela, a igualdade entre valores máximo, média e mínimo
para um mesmo problema indica a convergência para o mesmo resultado em todas
as dez rodadas. Os valores de tempo computacional para cada uma das dez
rodadas estão discriminados na seção de apêndices.
64
Tabela 5 – Valores de makespan obtidos
Problema LA01 LA02 LA03 LA04 LA05 LA06 LA07 LA08 LA09
Máximo 711,00 705,00 654,00 618,00 593,00 926,00 916,00 863,00 951,00
Médio 676,40 682,30 629,40 613,00 593,00 926,00 898,20 863,00 951,00
Mínimo 666,00 655,00 617,00 607,00 593,00 926,00 890,00 863,00 951,00
Fonte: O autor.
Tabela 5 – Valores de makespan obtidos (cont.)
Problema LA10 LA11 LA12 LA13 LA14 LA15 LA16 LA17
Máximo 958,00 1222,00 1039,00 1150,00 1292,00 1292,00 1053,00 835,00
Médio 958,00 1222,00 1039,00 1150,00 1292,00 1251,30 1039,20 824,80
Mínimo 958,00 1222,00 1039,00 1150,00 1292,00 1212,00 1016,00 807,00
Fonte: O autor.
Tabela 5 – Valores de makespan obtidos (cont.)
Problema LA18 LA19 LA20 LA21 LA22 LA23 LA24 LA25
Máximo 936,00 995,00 1095,00 1284,00 1204,00 1202,00 1155,00 1179,00
Médio 912,90 951,30 1029,90 1228,60 1175,60 1168,40 1128,30 1148,40
Mínimo 894,00 908,00 980,00 1195,00 1136,00 1149,00 1108,00 1122,00
Fonte: O autor.
A Tabela 6 mostra os percentuais de desvio em relação ao makespan ótimo
conhecido (abreviado para MKP*), encontrados em cada um dos problemas testados
com a abordagem proposta. Os problemas LA05 e LA06, bem como o LA08 até o
LA14 não foram inseridos na Tabela 6 pois não houve desvio em relação ao
makespan ótimo conhecido, ou seja, os desvios em relação ao ótimo foram nulos
nesses problemas.
Tabela 6 – Desvio percentual em relação ao makespan ótimo conhecido
Problema LA01 LA02 LA03 LA04 LA07 LA15 LA16 LA17 LA18
Mínimo 0,00 0,00 3,35 2,88 0,00 0,41 7,51 2,93 5,42
Médio 1,56 4,17 5,43 3,90 0,92 3,67 9,97 5,20 7,65
Máximo 6,76 7,63 9,55 4,75 2,92 7,04 11,43 6,51 10,38
MKP* 666 655 597 590 890 1207 945 784 848
Fonte: O autor.
65
Tabela 6 – Desvio percentual em relação ao makespan ótimo conhecido (cont.)
Problema LA19 LA20 LA21 LA22 LA23 LA24 LA25
Mínimo 7,84 5,53 14,90 22,55 11,34 18,50 14,84
Médio 12,98 14,18 18,13 26,82 13,22 20,67 17,54
Máximo 18,17 7,22 23,46 29,88 16,47 23,53 20,68
MKP* 842 902 1040 927 1032 935 977
Fonte: O autor.
Para uma rápida visualização, são apresentados gráficos gerados a partir das
Tabelas 5 e 6, nas Figuras 22 e 23, respectivamente.
Figura 22 – Valores mínimos, médios e máximos de makespan obtidos
Fonte: O Autor
Figura 23 – Valores mínimos, médios e máximos de desvio obtidos
Fonte: O Autor
500
600
700
800
900
1000
1100
1200
1300
LA
01
LA
02
LA
03
LA
04
LA
05
LA
06
LA
07
LA
08
LA
09
LA
10
LA
11
LA
12
LA
13
LA
14
LA
15
LA
16
LA
17
LA
18
LA
19
LA
20
LA
21
LA
22
LA
23
LA
24
LA
25
Makespan (
U.T
.)
Exemplares de JSSP testados
0
10
20
30
40
LA
01
LA
02
LA
03
LA
04
LA
05
LA
06
LA
07
LA
08
LA
09
LA
10
LA
11
LA
12
LA
13
LA
14
LA
15
LA
16
LA
17
LA
18
LA
19
LA
20
LA
21
LA
22
LA
23
LA
24
LA
25
Desvio
em
rela
ção a
o
makespan ó
tim
o (
%)
Exemplares de JSSP testados
66
De acordo com Abdelmaguid (2010), a representação por máquina foi a que
gerou o menor desvio em relação ao makespan ótimo conhecido (de 2,35% na
média), embora tenha levado mais do que 1.100 segundos para resolver problemas
com número de operações igual a 100. Como essa representação usa a heurística
de Shifting Bottleneck para gerar as soluções, isso justifica o elevado valor de tempo
computacional. A título de referência em termos de tempo computacional, os testes
executados por Abdelmaguid foram realizados em um computador pessoal com
processador Intel Pentium Core 2 Duo 2.67 GHz e 512MB de memória RAM,
conforme reportado no artigo.
Nos resultados obtidos nesta dissertação, o desvio médio em relação ao
makespan ótimo foi de 4,72%, sendo que a abordagem proposta levou uma média
de 60,753 segundos para resolver problemas com número de operações igual a 100
(LA11 até o LA20). A título de referência em termos de tempo computacional, todos
os testes desta dissertação foram executados em uma máquina virtual com
Windows 7 64 bits - SP1, configurada com processador Intel® Core™ i5-2467M
1.60GHz e 1024MB de memória RAM.
A Tabela 7 mostra uma comparação entre os melhores valores de makespan
obtidos dentre as representações testadas por Abdelmaguid (2010), conforme
apresentadas na seção 2.12.2, pg. 37, e a representação proposta neste trabalho.
Novamente, os valores em negrito indicam que o algoritmo de otimização atingiu o
valor ótimo de makespan conhecido.
67
Tabela 7 – Comparação das melhores soluções por representação
Problemas Testados Melhores Resultados das Representações
Problema Tamanho
(J x M)
Número de
Operações
Makespan Ótimo
Conhecido OB RK PL PR MB JB
Matriz Binária
Proposta
LA01 10 x 5 50 666 666 666 675 671 666 700 666
LA02 10 x 5 50 655 676 686 715 675 684 718 655
LA03 10 x 5 50 597 631 637 669 650 625 645 617
LA04 10 x 5 50 590 607 614 633 629 590 675 607
LA05 10 x 5 50 593 593 593 593 593 593 605 593
LA06 15 x 5 75 926 926 926 926 926 926 941 926
LA07 15 x 5 75 890 947 910 931 894 890 903 890
LA08 15 x 5 75 863 863 863 895 866 863 905 863
LA09 15 x 5 75 951 951 951 951 951 951 1009 951
LA10 15 x 5 75 958 958 958 958 958 958 987 958
LA11 20 x 5 100 1222 1222 1222 1242 1222 1222 1264 1222
LA12 20 x 5 100 1039 1039 1039 1088 1039 1039 1069 1039
LA13 20 x 5 100 1150 1150 1150 1189 1150 1150 1213 1150
LA14 20 x 5 100 1292 1292 1292 1292 1292 1292 1300 1292
LA15 20 x 5 100 1207 1274 1303 1390 1274 1207 1294 1212
LA16 10 x 10 100 945 1014 1021 1078 1003 994 1080 1016
LA17 10 x 10 100 784 820 816 906 822 792 868 807
LA18 10 x 10 100 848 933 928 977 901 857 986 894
LA19 10 x 10 100 842 937 910 956 892 869 980 908
LA20 10 x 10 100 902 989 1035 958 944 941 980 980
LA21 15 x 10 150 1046 1224 1230 1353 1189 1105 1285 1195
LA22 15 x 10 150 927 1078 1074 1270 1078 963 1160 1136
LA23 15 x 10 150 1032 1157 1199 1332 1124 1032 1228 1149
LA24 15 x 10 150 935 1084 1147 1178 1059 1000 1179 1108
LA25 15 x 10 150 977 1109 1184 1270 1070 1053 1174 1122
Fonte: Adaptado de Abdelmaguid (2010).
68
CONCLUSÕES, LIMITAÇÕES E SUGESTÕES
A presente dissertação buscou propor uma representação de solução para
JSSP através da otimização por AG com o uso de operadores genéticos
convencionais, bem como a alteração da população inicial, baseada na
transformação da própria rota dos jobs, utilizando a heurística FIFO, criando assim
uma semente inicial a partir da qual a população é criada, e posteriormente
alterando essa semente dinamicamente conforme a evolução do algoritmo,
utilizando para tal a semente geradora do melhor indivíduo das gerações anteriores
do AG, adicionando laços externos à otimização. Essa abordagem de semente
dinâmica se mostrou eficaz na qualidade das soluções, dentro de tempos
computacionais aceitáveis para esse tipo de problema. Obteve-se um ganho médio
percentual de mais de 10% em termos de geração de soluções factíveis, se
comparado com o uso do AG com o mesmo tipo de representação e elitismo, porém
sem aplicar o conceito da semente dinâmica.
Apesar de não encontrar as melhores soluções conhecidas para todos os
exemplares de problemas testados, as outras representações clássicas de JSSP
também mostram que a convergência para alguns problemas é de fato mais difícil, o
que é especialmente verdadeiro para problemas onde o número de jobs e o número
de máquinas são iguais, ou cujo número de operações é maior que 100.
Embora tenha sido adotada uma representação através de uma matriz
binária, no intuito de manter uma relativa simplicidade na implementação da
metodologia em qualquer biblioteca de algoritmos genéticos, o conceito de semente
dinâmica desenvolvido neste trabalho independe da representação em si, e sendo
assim, essa abordagem pode ser associada à diferentes representações, inclusive
acredita-se que o conceito possa ser estendido para outros métodos metaheurísticos
bio-inspirados, o que motiva futuras investigações.
Sendo assim, como continuidade do trabalho, é sugerida a aplicação da
semente dinâmica à diferentes representações encontradas na literatura atual, bem
como outras técnicas metaheurísticas baseadas em população, que se mostrem
eficazes na otimização de JSSP. Também sugere-se a implementação da
metodologia à JSSP dinâmicos, com aleatoriedade dos tempos de processamento,
obedecendo alguma distribuição de probabilidades.
69
REFERÊNCIAS
ABDELMAGUID, T. F. Representations in genetic algorithm for the job shop scheduling problem: a computational study. Journal of Software Engineering and Applications, n. 3, p. 1155-1162, 2010.
ADAMS, J.; BALAS, E.; ZAWACK, D. The shifting bottleneck procedure for job shop scheduling. Management Science, v. 34, n. 3, p. 391-401, 1988.
AMAR, A. D.; GUPTA, J. N. D. Simulated versus real life data in testing the efficiency of scheduling algorithms. IIE Transactions, v. 18, n. 1, p. 16-25, 1986.
APPLEGATE, D.; COOK, W. A computational study of the job-shop scheduling problem instance. ORSA Journal on Computing, v. 27, n. 3, p. 149-156, 1991.
ASADZADEH, L.; ZAMANIFAR, K. An agent-based parallel approach for the job shop scheduling problem with genetic algorithms. Mathematical and Computer Modelling, v. 52, n. 11-12, p. 1957-1965, 2010.
AYDIN, M. E.; FOGARTY, T. C. A simulated annealing algorithm for multi-agents systems: A job shop scheduling application. Journal of Intelligent Manufacturing, v. 15, n. 6, p. 805-814, 2004.
BAKER, K. R. Introduction to sequencing and scheduling. New York: John Wiley & Sons, 1974.
BEASLEY, J. E. Operations research library. Disponível em: <http://people.brunel. ac.uk/~mastjjb/jeb/orlib/files/jobshop1.txt>. Acesso em: 29 jun. 2013.
BRUCKER, P.; BURKE, E. K.; GROENEMEYER, S. A branch and bound algorithm for the cyclic job-shop problem with transportation. Computers & Operations Research, v. 39, n. 12, p. 3200-3214, 2012.
BRUCKER, P.; JURISCH, B.; SIEVERS, B. A branch and bound algorithm for job-shop scheduling problem. Discrete Applied Mathematics, v. 49, n. 1-3, p. 107-127, 1994.
CALIER, J.; PINSON, E. An algorithm for solving the job-shop problem, Management Science, v. 35, n. 2, p. 164-176, 1989.
CHAMBERS, J. B. Classical and flexible job shop scheduling by tabu search. 1996. 232 f. Dissertação (Mestrado) – University of Texas, Austin, 1996.
70
CHENG, R.; GEN, M; TSUJIMURA, Y. A tutorial survey of job shop scheduling problems using genetic algorithms I - Representation. Computers & Industrial Engineering, v. 30, n. 4, p. 983-997, 1996.
CONWAY, R. W.; PHILLIPS, D. T.; HOGG, G. L. Theory of scheduling. New York: Addison-Wesley, 1967.
CROCE, F. D.; TADEI, R.; VOLTA, G. A genetic algorithm for the job shop problem. Computers & Operations Research, v. 22, n. 1, p. 15-24, 1995.
DORIGO, M. Optimization, learning and natural algorithms. 1992. 140 f. Tese (Doutorado em Eletrônica e Informação) – Politecnico di Milano, Milan, 1992.
EIBEN, A. E.; SMITH, J. E. Introduction to evolutionary computing (natural computing series). Berlim: Springer Verlag Publishers, 2003.
FAN, K.; ZHANG, R. An analysis of research in job shop scheduling problem (2000-2009). In: IEEE International Conference on Advanced Management Science. Chengdu, v. 1, p. 282-288, 2010.
FERREIRA, D.; ALMADA-LOBO, B.; MORABITO, R. Formulações monoestágio para o problema de programacão da produção de bebidas dois estágios com sincronia. Produção, v. 23, n.1, p. 107-119, 2013.
FISHER, H.; THOMPSON, G. L. Probabilistic learning combinations of local job-shop scheduling rules. In: MUTH, J. F.; THOMPSON, G. L. (Ed.). Industrial scheduling. Englewood Cliffs: Prentice-Hall, 1963. p. 225-251.
FLEURY, A. Planejamento do projeto de pesquisa e definição do modelo teórico. In: MIGUEL, P. A. C. (Coord.). Metodologia de pesquisa em engenharia de produção e gestão de operações. 2. ed. São Paulo: Elsevier, 2012.
FREITAS, F. F. T.; VIEIRA, G. E. Tendências de aplicações da otimização por colônia de formigas na programação de job-shops. Revista Produção Online. v. 10, n. 1, p. 95-123, 2010. Disponível em: <http://producaoonline.org.br/rpo/articl e/view/441/578>. Acesso em: 19 nov. 2012.
GAlib: A C++ library of genetic algorithm components. Mechanical Engineering Department, Massachussetts Institute of Technology, 1996. Disponível em: <http://lancet.mit.edu/ga/dist/>. Acesso em: 19 nov. 2012.
GIFFLER, B., THOMPSON, G. L. Algorithms for solving production scheduling problems. Operations Reasearch, v. 8, n. 4, p. 487-503, 1960.
71
GIL, A. C. Como elaborar projetos de pesquisa. 4. ed. São Paulo: Atlas, 2008.
GLOVER, F. W. Future paths for integer and links to artificial intelligence. Computers & Operations Research, v. 13, n. 5, p. 533-549, 1986.
GLOVER, F. W., KOCHENBERGER, G. A. Handbook of metaheuristics. Massachussetts: Springer, 2003.
GOLDBARG, M. C.; LUNA, H. P. L. Otimização combinatória e programação linear: modelos e algoritmos. São Paulo: Campus, 2000.
GOLDBERG, D. E. Genetic algorithms in search, optimization and machine learning. New York: Addison-Wesley, 1989.
GONÇALVES, J. F.; MENDES, J. J. M.; RESENDE, M. G. C. A hybrid genetic algorithm for the job shop scheduling problem. European Journal of Operational Research, v. 167, n. 1, p. 77-95, 2005.
GRAHAM, R. L. et al. Optimization and approximation in deterministic sequencing and scheduling: a survey. Annals of Discrete Mathematics. v. 5, p. 287-326, 1979.
HEINONEN, J.; PETTERSSON, F. Hybrid ant colony optimization and visibility studies applied to a job-shop scheduling problem. Applied Mathematics and Computation, v. 187, n. 2, p. 989-998, 2007.
HOLLAND, J. H. Adaptation in natural and artificial systems. Ann Arbor: The University of Michigan Press, 1975.
HUANG, K.; LIAO, C. Ant colony optimization combined with taboo search for the job shop scheduling problem. Computers & Operations Research, v. 35, n. 4, p. 1030-1046, 2008.
IVERS, B. Job shop optimization through multiple independent particle swarms. 2006. 110 f. Dissertação (Mestrado em Engenharia Elétrica) – Oklahoma State University, Stillwater, 2006.
JAIN, A. S.; MEERAN, S. Deterministic job-shop scheduling: past, present and future. European Journal of Operational Research, v. 113, n. 2, p. 390-434, 1999.
KIRKPATRICK, S.; GELATT JUNIOR., C. D.; VECCHI, M. P. Optimization by simulated annealing. Decision Science, v. 220, n. 4598, p. 671-680, 1983.
KOLHARKAR, S.; ZANWAR, D. R. Scheduling in job shop process industry. IOSR Journal of Mechanical and Civil Engineering, v. 5, n. 1, p. 1-17, 2013.
72
KOLONKO, M. Some new results on simulated annealing applied to job-shop scheduling problem. European Journal of Operational Research, v. 113, p 123-136, 1999.
KUNNATHUR, A. S.; SUNDARARAGHAVAN, P. S.; SAMPATH, S. Dynamic rescheduling using a simulation-based expert system. Journal of Manufacturing Technology Management, v. 15, n. 2, p. 199-212, 2004.
LAGEWEG, B. J.; LENSTRA, J. K.; KAN, A. H. G. R. Job shop scheduling by implicit enumeration. Management Science, v. 24, n. 4, p. 441-450, 1977.
LAWRENCE, S. Resource constrained project scheduling: an experimental investigation of heuristic scheduling techniques (Supplement). 1984. Tese (Doutorado em Administração Industrial) – Carnegie-Mellon University, Pittsburgh, 1984.
LAWRENCE, S. T.; SEWELL, E. C. Heuristic, optimal, static, and dynamic schedules when processing times are uncertain. Journal of Operations Management, v. 15, n. 1, p. 71-82, 1997.
LINDEN, R. Algoritmos genéticos. Rio de Janeiro: Ciência Moderna, 2012.
LISA: A Library of scheduling Algorithms. Faculdade de Matemática, Otto-von-Guericke University, 2010. Disponível em: <http://lisa.math.uni-magdeburg.de/index. php>. Acesso em: 22 jun. 2013.
LUKASZEWICZ, P. P. Metaheuristics for job shop scheduling problem, comparison of effective methods. 2005. 123 f. Dissertação (Mestrado em Logística) – Aarhus School of Business, Aarhus, 2005.
LUKE, S. Essentials of Metaheuristics. 2010. Disponível em: <http://cs.gmu.edu/~ sean/book/metaheuristics/>. Acesso em: 19 nov. 2012.
MARCONI, M. A.; LAKATOS, E. M. Fundamentos de metodologia científica. 7. ed. São Paulo: Atlas, 2010.
MESQUITA, M. et al. Programação detalhada da produção. In: LUSTOSA, L. J. et al. Planejamento e Controle da Produção. Rio de Janeiro: Elsevier, 2008.
MITCHELL, T. M. Machine Learning. New York: McGraw-Hill, 1997.
MONTEVECHI, J. A. et al. Análise comparativa entre regras heurísticas de sequenciamento da produção aplicada em job shop. Produto & Produção, v. 6, n. 2, p. 12-18, 2002.
73
MONTGOMERY, J.; FAYAD, C; PETROVIC, S. Solution representation for job shop scheduling problems in ant colony optimization. In: DORIGO, M. et al. (Ed.). Ant Colony Optimization and Swarm Intelligence. Berlim: Springer Verlag Publishers, 2006. p. 484-491.
MORABITO NETO, R; PUREZA, V. Modelagem e simulação. In: MIGUEL, P. A. C. (Coord.). Metodologia de pesquisa em engenharia de produção e gestão de operações. 2. ed. São Paulo: Elsevier, 2012. p. 169-198.
NORMAN, B. A.; BEAN, J. C. Random keys genetic algorithm for job-shop scheduling: unabridged version. Technical Report 95-10. Ann Arbor: University of Michigan, 1995.
NOWICKI, E.; SMUTNICKI, C. A fast taboo search algorithm for the job-shop problem. Management Science, v. 42, n. 6, p. 797-813, 1996.
PACHECO, R. F.; SANTORO, M. C. Proposta de classificação hierarquizada dos modelos de solução para problemas de job shop scheduling. Gestão & Produção, v. 6, n. 1, 0. 1-15, 1999.
PANWALKER, S. S.; ISKANDER, W. A survey of scheduling rules. Operations Research, v. 25, n.1, p. 45-61, 1977.
PINEDO, M. L. Scheduling: Theory, algorithms, and systems. 3. ed. New York: Springer, 2008.
PONNAMBALAM, S. G.; ARAVINDAN, P.; RAJESH, S. V. A tabu search algorithm for job shop scheduling. International Journal of Advanced Manufacturing Technology, v. 16, n.10, p. 765-771, 2000.
QING-DAO-ER-JI, R.; WANG, Y. A new hybrid genetic algorithm for job shop scheduling problem. Computers & Operations Research, v. 39, p. 2291-2299, 2012.
SANTA CATARINA, A. SAHAG - Um algoritmo genético híbrido com representação explicita de relacionamentos espaciais para análise de dados geoespaciais. 2009. 112 f. Tese (Doutorado em Computação Aplicada) – Instituto Nacional de Pesquisas Espaciais, São José dos Campos, 2009.
SANTORO, M. C.; MESQUITA, M. A. The effect of the workload on due date performance in job shop scheduling. Brazilian Journal of Operations & Production Management, v. 5, n. 1, p. 75-88, 2008.
74
SARAIVA, F. O.; OLIVEIRA, A. C. Uma comparação empírica de operadores de crossover para o problema de job shop com datas de entrega. In: ENCONTRO NACIONAL DE ENGENHARIA DE PRODUÇÃO, 30., 2010, São Carlos. Anais eletrônicos... São Carlos, 2010, p. 1-14. Disponível em <http://www.abepro.org.br/bi blioteca/enegep2010_TN_STO_118_772_15277.pdf>. Acesso em: 29 jun. 2013.
SARAMAGO, S. P.; STEFFEN JR., V. Introdução às técnicas de otimização em engenharia. Horizonte Científico, v. 1, p. 1-30, 2008.
SATAKE, T. et al. Simulated annealing approach for minimizing the makespan of the general job-shop. International Journal of Production Economics, v. 60-61, p. 515-522, 1999.
SENAI. Processos de Fabricação. Vitória: SENAI, 1999.
SILVA, M. F. S. Abordagem para otimização multiobjetivo de regras heurísticas de sequenciamento em sistemas de manufatura job shop por meio de simulação computacional acoplada ao algoritmo genético. 2011. 116 f. Dissertação (Mestrado em Engenharia de Produção) - Universidade Nove de Julho, São Paulo, 2011.
SILVA, E. B.; COSTA, M. G.; SILVA, M. F. S.; PEREIRA, F. H. Avaliação de regras de sequenciamento da produção em ambientes job shop e flow shop por meio de simulação computacional. Exacta, v. 10, p. 70-81, 2012.
SILVA, E. L.; MENEZES, E. M. Metodologia da pesquisa e elaboração de dissertação. 3. ed. Florianópolis: PPGEP/LED, 2001.
STORER, R. H.; WU, S. D.; VACCARI, R. New search spaces for sequencing problems with application to job shop scheduling. Management Science, v. 38, n. 10, p. 1495-1509, 1992.
TAILLARD, E. Benchmarks for basic scheduling problems. European Journal of Operational Research, v. 64, n. 2, p. 278-285, 1993.
VAN LAARHOVEN, P. J. M.; AARTS, E. H. L.; LENSTRA, J. K. Job shop scheduling by simulate annealing. Institute for Operations Research and the Management Sciences, v. 40, n. 1, p. 113-125, 1992.
VENTRESCA, M.; OMBUKI, B. Ant colony optimization for job shop scheduling problem. Technical Report CS-04-04. Ontario: Brock University, 2004.
WANG, L.; ZHENG, D. Z. A modified genetic algorithm for job shop scheduling. International Journal of Advanced Manufacturing Technology, v. 20, n. 1, p. 72-76, 2002.
75
WERNER, F. A survey of genetic algorithms for shop scheduling problems. In: SIARRY, P. (Ed.). Heuristics: theory and applications. Hauppauge: Nova Science Publishers, 2013, p. 161-222.
WOLPERT, D. H.; MACREADY, W. G. No free lunch theorems for search. Technical Report SFI-TR-95-02-010. Santa Fe: Santa Fe Institute, 1995.
YAMADA, T. Studies on metaheuristics for jobshop and flowshop scheduling problems. 2003. 133 f. Tese (Doutorado em Informática) – Kyoto University, Kyoto, 2003.
YAMADA, T.; NAKANO, R. A genetic algorithm applicable to large-scale job-shop instances. In: MANDERICK, B. (Ed.). Parallel Problem Solving from Nature, 2: Proceedings of the Second Conference on Parallel Problem Solving from Nature. Brussels: North-Holland, 1992, p. 281-290.
ZHANG, J. et. al. Implementation of an ant colony optimization technique for job shop scheduling problem. Transactions of the Institute of Measurement and Control, v. 28, n. 1, p. 93-108, 2006.
ZHANG, R.; SONG, S.; WU, C. A two-stage hybrid particle swarm optimization algorithm for the stochastic job shop scheduling problem. Knowledge-Based Systems, v. 27, p. 393-406, 2012.
ZHOU, H.; FENG, Y.; HAN, L. The hybrid heuristic genetic algorithm for job shop scheduling. Computers & Industrial Engineering, v. 40, n. 3, p. 191-200, 2001.
76
APÊNDICE A – Prioridades de jobs por máquina, geradas pela abordagem proposta, makespan e tempo de execução do AG
LA01 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 4 5 2 5 3 6 3 1 3 3
J2, M1 2 3 4 1 2 2 1 2 1 1
J3, M1 9 10 6 6 8 10 10 7 10 7
J4, M1 3 4 5 4 5 3 4 4 5 4
J5, M1 1 1 1 2 1 1 2 3 2 2
J6, M1 6 6 7 7 6 5 6 6 6 6
J7, M1 8 7 10 9 9 7 8 10 9 10
J8, M1 5 2 3 3 4 4 5 5 4 5
J9, M1 7 8 8 8 7 8 7 8 7 8
J10, M1 10 9 9 10 10 9 9 9 8 9
J1, M2 2 2 2 2 3 4 2 1 3 2
J2, M2 10 10 10 10 10 10 10 10 10 10
J3, M2 5 8 5 4 5 9 5 5 5 6
J4, M2 3 3 3 3 2 2 3 2 1 1
J5, M2 8 9 9 8 7 6 7 7 7 8
J6, M2 1 1 1 1 1 1 1 3 2 3
J7, M2 6 4 6 5 6 3 6 4 6 5
J8, M2 7 6 7 7 8 5 8 8 8 7
J9, M2 4 5 4 6 4 7 4 6 4 4
J10, M2 9 7 8 9 9 8 9 9 9 9
J1, M3 10 10 10 10 10 10 10 10 10 10
J2, M3 8 7 8 5 8 7 8 6 8 5
J3, M3 4 8 5 4 5 8 4 5 4 6
J4, M3 7 6 7 8 7 6 7 8 7 7
J5, M3 3 3 3 3 3 3 3 4 3 4
J6, M3 1 2 2 1 1 2 1 2 2 2
J7, M3 6 5 6 7 6 4 6 7 6 8
J8, M3 2 1 1 2 2 1 2 1 1 1
J9, M3 9 9 9 9 9 9 9 9 9 9
J10, M3 5 4 4 6 4 5 5 3 5 3
J1, M4 10 9 10 9 10 9 10 9 9 9
J2, M4 4 6 6 5 6 5 6 6 5 4
J3, M4 1 3 1 2 1 2 1 2 1 2
J4, M4 9 8 9 8 9 8 9 10 8 8
J5, M4 5 4 4 4 4 4 3 4 3 6
J6, M4 8 10 8 10 8 10 8 8 10 10
J7, M4 2 1 3 3 3 1 2 1 2 1
J8, M4 7 7 7 7 7 7 7 7 7 7
J9, M4 3 2 2 1 2 3 4 5 4 3
J10, M4 6 5 5 6 5 6 5 3 6 5
J1, M5 8 8 8 8 8 8 8 8 8 8
J2, M5 7 7 7 4 7 7 7 5 7 4
J3, M5 2 5 2 2 2 5 2 3 2 3
J4, M5 6 4 6 6 6 4 6 7 5 6
J5, M5 9 10 10 10 9 9 9 10 9 9
J6, M5 4 3 4 5 4 3 4 4 4 5
J7, M5 3 2 3 3 3 2 3 2 3 2
J8, M5 10 9 9 9 10 10 10 9 10 10
J9, M5 5 6 5 7 5 6 5 6 6 7
J10, M5 1 1 1 1 1 1 1 1 1 1
Makespan 668 666 667 686 668 666 668 678 686 711
Tempo (s) 18,515 18,250 18,296 18,812 18,062 18,609 18,875 18,593 18,609 18,953
77
LA02 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 1 1 1 1 1 1 1 1 1 1
J2, M1 3 7 4 5 4 4 4 4 5 4
J3, M1 6 5 7 4 5 6 5 6 7 5
J4, M1 8 8 8 8 8 9 8 8 9 8
J5, M1 2 2 2 2 2 2 2 2 2 2
J6, M1 4 3 3 3 3 3 3 3 3 3
J7, M1 9 10 9 9 9 8 9 9 10 9
J8, M1 5 4 5 6 6 5 6 5 4 6
J9, M1 7 6 6 7 7 7 7 7 6 7
J10, M1 10 9 10 10 10 10 10 10 8 10
J1, M2 8 6 6 5 5 7 7 7 6 6
J2, M2 4 8 7 7 7 6 6 6 7 7
J3, M2 5 4 2 2 2 5 2 5 5 2
J4, M2 7 7 8 8 8 8 8 8 8 8
J5, M2 10 10 9 9 10 10 10 10 10 10
J6, M2 1 1 1 1 1 1 1 1 1 1
J7, M2 2 3 3 3 3 2 3 2 2 3
J8, M2 3 2 4 6 6 3 5 3 3 5
J9, M2 9 9 10 10 9 9 9 9 9 9
J10, M2 6 5 5 4 4 4 4 4 4 4
J1, M3 10 9 10 10 9 9 8 8 10 9
J2, M3 1 4 3 4 3 3 3 2 2 4
J3, M3 4 3 2 3 2 4 2 4 4 3
J4, M3 2 1 1 1 4 1 4 1 1 1
J5, M3 7 5 6 5 5 6 7 7 6 5
J6, M3 8 8 8 8 8 8 9 9 8 8
J7, M3 9 10 9 9 10 10 10 10 9 10
J8, M3 5 6 5 6 6 5 5 5 5 6
J9, M3 6 7 7 7 7 7 6 6 7 7
J10, M3 3 2 4 2 1 2 1 3 3 2
J1, M4 1 2 1 1 1 1 1 3 3 1
J2, M4 4 8 6 6 7 5 6 6 6 7
J3, M4 7 6 8 5 6 7 7 8 8 6
J4, M4 9 10 9 9 9 10 9 10 10 9
J5, M4 2 1 2 2 2 3 2 1 1 2
J6, M4 5 4 4 7 5 6 5 5 4 5
J7, M4 3 3 3 3 3 2 3 2 2 3
J8, M4 8 7 7 8 8 8 8 7 7 8
J9, M4 10 9 10 10 10 9 10 9 9 10
J10, M4 6 5 5 4 4 4 4 4 5 4
J1, M5 9 9 10 7 7 9 8 8 9 8
J2, M5 2 2 4 4 4 4 4 3 3 5
J3, M5 7 7 7 5 5 6 6 7 7 6
J4, M5 8 8 8 9 9 8 9 9 8 9
J5, M5 1 1 1 1 1 1 1 1 1 1
J6, M5 6 6 6 6 6 5 7 6 6 7
J7, M5 3 4 3 3 2 2 3 2 2 2
J8, M5 10 10 9 10 10 10 10 10 10 10
J9, M5 5 3 2 8 8 7 5 5 5 4
J10, M5 4 5 5 2 3 3 2 4 4 3
Makespan 655 705 705 669 669 674 669 704 704 669
Tempo (s) 20,990 20,839 20,694 23,902 21,107 20,503 20,406 19,951 21,093 19,328
78
LA03 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 5 5 6 3 7 5 3 5 7 5
J2, M1 7 8 3 7 5 6 6 6 4 7
J3, M1 9 9 10 10 9 9 9 9 9 9
J4, M1 3 1 2 2 1 1 1 2 1 3
J5, M1 1 2 1 1 2 2 2 1 2 1
J6, M1 2 3 4 5 3 3 4 3 3 2
J7, M1 6 6 7 6 6 7 7 7 6 6
J8, M1 8 7 9 8 8 8 10 8 8 8
J9, M1 4 4 5 4 4 4 5 4 5 4
J10, M1 10 10 8 9 10 10 8 10 10 10
J1, M2 1 2 1 1 2 2 1 1 1 3
J2, M2 2 1 2 2 1 1 2 2 2 1
J3, M2 10 10 10 10 10 10 9 10 10 10
J4, M2 7 4 7 6 4 4 7 7 4 7
J5, M2 4 5 4 4 5 5 4 4 5 4
J6, M2 6 6 6 7 6 6 6 6 6 6
J7, M2 9 9 9 8 8 9 8 9 9 9
J8, M2 3 3 3 3 3 3 3 3 3 2
J9, M2 8 8 8 9 9 8 10 8 8 8
J10, M2 5 7 5 5 7 7 5 5 7 5
J1, M3 3 5 3 4 4 5 2 3 4 2
J2, M3 1 1 2 1 1 1 1 1 1 1
J3, M3 2 3 1 2 2 2 3 2 2 3
J4, M3 5 4 5 5 3 3 5 4 3 5
J5, M3 9 9 9 10 9 10 10 10 10 9
J6, M3 7 7 7 7 7 7 7 7 7 7
J7, M3 4 2 4 3 5 4 4 5 5 4
J8, M3 8 8 10 9 8 8 9 8 8 8
J9, M3 6 6 6 6 6 6 6 6 6 6
J10, M3 10 10 8 8 10 9 8 9 9 10
J1, M4 6 7 9 6 8 6 7 5 8 6
J2, M4 7 8 5 7 5 7 5 8 6 8
J3, M4 1 2 2 2 1 2 1 2 1 2
J4, M4 5 5 7 5 6 5 6 6 5 5
J5, M4 4 4 4 3 4 4 4 3 4 4
J6, M4 9 6 6 8 7 8 9 7 7 7
J7, M4 2 1 1 1 2 1 2 1 2 1
J8, M4 8 10 10 10 9 10 10 10 10 9
J9, M4 3 3 3 4 3 3 3 4 3 3
J10, M4 10 9 8 9 10 9 8 9 9 10
J1, M5 7 7 8 7 10 8 8 7 10 8
J2, M5 10 10 7 10 8 10 9 10 7 10
J3, M5 8 9 10 8 5 7 7 8 8 7
J4, M5 5 1 3 3 1 1 1 3 1 5
J5, M5 2 3 1 1 3 3 2 1 3 2
J6, M5 3 4 4 6 4 4 4 4 4 3
J7, M5 9 8 9 9 9 9 10 9 9 9
J8, M5 1 2 2 2 2 2 3 2 2 1
J9, M5 6 5 6 5 6 5 6 6 5 6
J10, M5 4 6 5 4 7 6 5 5 6 4
Makespan 629 617 630 645 617 617 654 639 617 629
Tempo (s) 19,515 18,531 18,531 18,562 18,312 18,218 18,656 18,593 18,093 18,468
79
LA04 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 1 2 2 1 2 2 2 5 2 1
J2, M1 10 8 9 10 10 9 10 9 10 9
J3, M1 2 1 1 2 1 1 1 1 1 2
J4, M1 3 3 5 5 3 5 4 3 3 3
J5, M1 7 9 6 7 8 6 8 8 6 6
J6, M1 5 4 3 3 4 3 3 2 4 7
J7, M1 8 7 8 6 7 8 6 6 8 8
J8, M1 6 5 4 4 5 4 5 4 5 5
J9, M1 4 6 7 8 6 7 7 7 7 4
J10, M1 9 10 10 9 9 10 9 10 9 10
J1, M2 10 10 10 10 10 10 10 10 10 10
J2, M2 1 1 1 1 1 2 1 1 1 1
J3, M2 2 3 2 2 2 1 2 2 2 2
J4, M2 9 9 9 8 8 8 8 9 6 7
J5, M2 4 2 4 4 3 3 3 4 4 4
J6, M2 8 8 8 9 9 9 9 8 9 9
J7, M2 5 5 5 5 5 5 5 5 5 5
J8, M2 3 4 3 3 4 4 4 3 3 3
J9, M2 7 7 6 7 7 6 7 6 8 8
J10, M2 6 6 7 6 6 7 6 7 7 6
J1, M3 6 6 6 6 6 6 6 6 6 6
J2, M3 7 7 7 7 7 7 7 7 8 7
J3, M3 10 8 9 10 8 9 8 8 7 9
J4, M3 1 1 2 1 1 1 1 1 1 1
J5, M3 8 9 8 9 10 10 9 9 9 8
J6, M3 3 3 3 2 3 3 2 2 3 5
J7, M3 4 4 4 3 4 4 3 3 4 4
J8, M3 9 10 10 8 9 8 10 10 10 10
J9, M3 2 2 5 4 2 5 4 4 5 2
J10, M3 5 5 1 5 5 2 5 5 2 3
J1, M4 8 8 8 9 8 8 9 9 8 8
J2, M4 1 1 1 1 1 1 1 1 1 1
J3, M4 5 5 7 5 5 5 3 5 3 6
J4, M4 7 7 5 7 6 7 7 6 7 5
J5, M4 4 2 3 4 3 3 4 4 4 4
J6, M4 2 3 2 2 2 2 2 2 2 2
J7, M4 9 9 9 8 9 10 8 8 9 9
J8, M4 3 4 4 3 4 4 5 3 5 3
J9, M4 10 10 10 10 10 9 10 10 10 10
J10, M4 6 6 6 6 7 6 6 7 6 7
J1, M5 9 9 9 9 9 9 9 9 9 9
J2, M5 1 1 2 1 1 1 1 1 1 1
J3, M5 6 5 8 5 8 8 5 4 5 7
J4, M5 2 2 3 2 2 3 2 2 2 2
J5, M5 4 4 4 3 4 2 3 3 3 4
J6, M5 7 7 6 8 6 6 7 7 7 8
J7, M5 10 10 10 10 10 10 10 10 10 10
J8, M5 8 8 7 7 7 7 8 8 8 6
J9, M5 3 3 5 4 3 5 4 5 6 3
J10, M5 5 6 1 6 5 4 6 6 4 5
Makespan 613 618 618 607 618 618 607 607 611 613
Tempo (s) 20,453 18,359 18,390 19,015 17,468 17,968 18,953 18,734 18,421 18,562
80
LA05 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 4 3 4 3 4 3 4 4 3 4
J2, M1 5 5 5 5 5 5 5 5 4 5
J3, M1 7 6 7 7 7 7 6 7 8 6
J4, M1 1 1 1 1 1 1 1 1 1 1
J5, M1 9 9 9 10 8 9 10 10 9 8
J6, M1 3 4 3 4 3 4 3 3 5 3
J7, M1 2 2 2 2 2 2 2 2 2 2
J8, M1 10 10 10 9 10 10 9 9 10 10
J9, M1 8 8 8 8 9 8 8 8 7 9
J10, M1 6 7 6 6 6 6 7 6 6 7
J1, M2 2 1 2 1 2 1 2 2 1 2
J2, M2 9 9 10 9 10 10 9 10 9 9
J3, M2 1 2 1 2 1 2 1 1 2 1
J4, M2 5 4 5 5 5 4 8 8 4 5
J5, M2 6 6 8 6 6 7 5 5 6 7
J6, M2 7 7 6 7 7 6 6 6 7 6
J7, M2 3 3 3 3 3 3 3 3 3 3
J8, M2 8 8 7 8 8 8 7 7 8 8
J9, M2 4 5 4 4 4 5 4 4 5 4
J10, M2 10 10 9 10 9 9 10 9 10 10
J1, M3 6 7 6 6 6 5 6 7 6 6
J2, M3 7 6 7 7 7 7 7 6 7 7
J3, M3 5 4 5 5 5 6 4 5 5 4
J4, M3 9 8 10 9 8 9 10 10 9 8
J5, M3 3 3 2 3 3 3 2 2 4 2
J6, M3 8 9 8 8 10 8 8 8 8 9
J7, M3 10 10 9 10 9 10 9 9 10 10
J8, M3 4 5 4 4 4 4 3 4 3 5
J9, M3 2 1 3 2 1 1 1 1 1 1
J10, M3 1 2 1 1 2 2 5 3 2 3
J1, M4 10 10 10 10 10 10 10 10 10 10
J2, M4 2 2 2 1 1 1 2 2 2 2
J3, M4 4 4 3 8 4 4 3 3 4 4
J4, M4 3 3 4 3 3 3 5 4 3 3
J5, M4 9 7 8 7 8 9 7 8 8 7
J6, M4 1 1 1 2 2 2 1 1 1 1
J7, M4 5 5 5 4 5 5 4 5 5 5
J8, M4 8 8 9 9 9 8 9 9 9 8
J9, M4 6 6 7 5 6 7 6 6 7 6
J10, M4 7 9 6 6 7 6 8 7 6 9
J1, M5 5 5 7 5 5 5 6 6 5 5
J2, M5 2 1 2 1 1 2 1 1 2 3
J3, M5 8 9 9 8 9 9 9 10 9 9
J4, M5 4 4 4 4 4 4 4 4 4 4
J5, M5 1 2 1 2 2 1 2 2 1 1
J6, M5 6 6 5 6 6 7 5 5 6 6
J7, M5 7 7 6 7 7 6 7 8 7 7
J8, M5 3 3 3 3 3 3 3 3 3 2
J9, M5 9 10 10 10 10 10 10 9 10 10
J10, M5 10 8 8 9 8 8 8 7 8 8
Makespan 593 593 593 593 593 593 593 593 593 593
Tempo (s) 17,375 17,468 17,156 17,093 17,156 17,328 17,062 17,343 17,109 17,312
81
LA06 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 11 11 11 11 10 9 10 11 9 10
J2, M1 12 13 13 14 15 13 13 12 13 14
J3, M1 5 5 5 5 6 5 6 5 5 6
J4, M1 10 10 10 10 12 11 12 10 12 11
J5, M1 14 14 14 13 13 14 14 14 14 13
J6, M1 8 7 7 9 7 7 7 7 8 7
J7, M1 3 2 3 4 2 3 3 3 1 1
J8, M1 1 1 1 1 1 1 1 1 2 3
J9, M1 13 12 12 12 11 12 11 13 11 12
J10, M1 2 3 2 2 3 2 2 2 3 2
J11, M1 7 8 8 7 8 8 8 9 7 8
J12, M1 4 4 6 3 4 4 4 6 4 4
J13, M1 15 15 15 15 14 15 15 15 15 15
J14, M1 9 9 9 8 9 10 9 8 10 9
J15, M1 6 6 4 6 5 6 5 4 6 5
J1, M2 1 1 1 1 1 1 2 1 1 2
J2, M2 6 6 6 6 6 6 6 6 6 6
J3, M2 7 7 8 7 8 7 9 8 7 8
J4, M2 5 2 3 3 3 2 1 3 3 1
J5, M2 13 11 11 11 12 11 13 11 11 11
J6, M2 2 3 2 2 2 4 3 2 2 3
J7, M2 9 8 9 9 9 8 8 9 9 9
J8, M2 3 5 4 4 4 3 4 4 4 5
J9, M2 15 14 14 15 15 15 15 14 13 14
J10, M2 11 13 13 12 11 13 11 13 14 13
J11, M2 14 15 15 14 14 14 14 15 15 15
J12, M2 12 12 12 13 13 12 12 12 12 12
J13, M2 10 10 10 10 10 10 10 10 10 10
J14, M2 4 4 5 5 5 5 5 5 5 4
J15, M2 8 9 7 8 7 9 7 7 8 7
J1, M3 5 3 3 4 5 4 4 5 5 4
J2, M3 9 10 9 10 10 10 10 9 10 10
J3, M3 3 2 2 2 1 1 1 3 2 1
J4, M3 13 13 13 13 15 15 14 12 14 14
J5, M3 8 6 6 5 8 6 6 6 6 5
J6, M3 1 1 1 1 2 2 2 1 1 2
J7, M3 15 15 14 14 13 13 13 14 13 13
J8, M3 6 8 7 8 6 8 7 7 8 9
J9, M3 2 4 4 3 3 3 3 2 3 3
J10, M3 14 14 15 15 14 14 15 15 15 15
J11, M3 4 5 5 6 4 5 5 4 4 6
J12, M3 7 7 8 7 7 7 8 10 7 7
J13, M3 11 11 12 12 12 11 12 11 11 12
J14, M3 12 12 11 11 11 12 11 13 12 11
J15, M3 10 9 10 9 9 9 9 8 9 8
J1, M4 14 12 12 12 12 11 11 12 12 11
J2, M4 2 3 3 3 1 2 2 1 3 3
J3, M4 8 9 9 8 10 10 10 9 7 8
J4, M4 1 1 1 1 2 1 1 2 1 1
J5, M4 3 2 2 2 4 3 3 3 2 2
J6, M4 10 8 8 10 8 8 8 8 10 9
J7, M4 7 5 4 4 3 6 4 7 4 4
J8, M4 11 11 11 11 11 12 15 11 11 12
J9, M4 4 4 5 5 5 4 5 4 5 5
J10, M4 6 7 7 7 7 7 6 6 8 7
J11, M4 9 10 10 9 9 9 9 10 9 10
J12, M4 12 14 13 15 14 15 12 15 14 15
J13, M4 5 6 6 6 6 5 7 5 6 6
J14, M4 13 13 14 13 13 13 13 13 13 13
J15, M4 15 15 15 14 15 14 14 14 15 14
82
LA06 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M5 7 9 7 9 10 8 8 7 8 8
J2, M5 4 4 4 5 5 5 4 5 4 5
J3, M5 13 15 15 15 13 15 14 15 14 15
J4, M5 10 8 9 8 8 9 10 8 9 10
J5, M5 1 1 1 1 1 2 2 4 1 1
J6, M5 15 14 14 14 15 14 15 14 15 14
J7, M5 12 13 11 13 12 10 11 12 11 11
J8, M5 11 11 12 11 11 11 12 11 12 12
J9, M5 9 10 10 10 9 13 9 9 10 9
J10, M5 6 6 6 6 6 6 6 6 6 6
J11, M5 5 2 2 2 2 1 1 1 2 4
J12, M5 8 7 8 7 7 7 7 10 7 7
J13, M5 2 5 5 3 3 3 5 2 3 2
J14, M5 3 3 3 4 4 4 3 3 5 3
J15, M5 14 12 13 12 14 12 13 13 13 13
Makespan 926 926 926 926 926 926 926 926 926 926
Tempo (s) 27,562 26,781 26,25 26,812 27,140 26,734 26,265 26,609 26,765 26,296
83
LA07 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 2 4 3 3 5 2 1 3 3 2
J2, M1 1 1 1 1 1 1 3 2 1 1
J3, M1 6 6 7 5 3 5 5 6 4 4
J4, M1 4 2 2 2 2 3 2 1 2 3
J5, M1 14 10 10 10 11 10 14 9 11 12
J6, M1 8 9 8 7 8 9 9 10 8 11
J7, M1 10 12 12 11 14 11 10 14 14 9
J8, M1 15 15 15 15 15 15 15 15 15 15
J9, M1 7 7 6 8 7 8 7 5 6 8
J10, M1 3 3 4 6 4 4 6 4 7 7
J11, M1 9 8 9 9 9 7 8 7 9 6
J12, M1 13 14 14 14 13 14 12 13 13 13
J13, M1 11 11 11 12 10 12 11 11 10 10
J14, M1 5 5 5 4 6 6 4 8 5 5
J15, M1 12 13 13 13 12 13 13 12 12 14
J1, M2 7 6 6 6 8 6 4 6 5 9
J2, M2 3 2 4 2 3 1 2 3 1 3
J3, M2 11 10 11 12 12 12 14 12 13 11
J4, M2 6 3 5 5 6 4 1 1 2 5
J5, M2 4 5 1 7 1 3 5 2 3 2
J6, M2 1 1 2 1 4 2 3 4 4 1
J7, M2 5 4 7 4 2 7 7 7 8 4
J8, M2 15 15 15 15 15 15 15 15 15 15
J9, M2 12 11 9 11 10 11 11 10 11 12
J10, M2 8 9 8 8 5 9 9 8 6 10
J11, M2 9 8 10 10 11 8 8 9 9 8
J12, M2 14 14 14 14 14 14 13 14 14 14
J13, M2 2 7 3 3 9 5 6 5 7 6
J14, M2 13 13 13 13 13 13 12 13 12 13
J15, M2 10 12 12 9 7 10 10 11 10 7
J1, M3 11 14 13 8 8 11 10 9 14 9
J2, M3 9 8 10 10 15 10 8 15 10 11
J3, M3 4 4 7 4 5 4 4 6 4 4
J4, M3 15 15 12 13 11 13 12 11 15 13
J5, M3 14 10 9 11 12 9 15 8 11 12
J6, M3 3 3 2 1 4 2 3 3 3 3
J7, M3 2 2 4 2 1 5 2 2 1 1
J8, M3 1 1 1 3 3 1 1 1 2 2
J9, M3 7 5 5 7 6 7 5 4 6 7
J10, M3 13 12 15 15 14 15 14 14 13 15
J11, M3 8 6 8 9 9 6 7 7 8 8
J12, M3 5 7 3 5 2 3 6 5 5 5
J13, M3 10 11 11 12 10 12 11 12 9 10
J14, M3 6 9 6 6 7 8 9 10 7 6
J15, M3 12 13 14 14 13 14 13 13 12 14
J1, M4 7 8 7 7 9 8 7 7 7 8
J2, M4 5 4 6 6 4 4 6 5 5 6
J3, M4 1 2 2 1 2 1 3 2 1 2
J4, M4 8 7 8 9 8 7 8 6 8 7
J5, M4 3 1 1 4 1 2 2 1 2 1
J6, M4 10 11 9 10 10 10 11 12 9 12
J7, M4 11 14 14 13 15 13 12 15 15 10
J8, M4 4 5 3 3 5 5 1 3 3 4
J9, M4 14 12 12 12 11 11 13 11 13 11
J10, M4 9 10 10 8 6 9 10 8 10 9
J11, M4 12 9 11 11 13 12 9 10 11 14
J12, M4 2 3 4 2 3 3 4 4 4 3
J13, M4 13 13 13 14 12 14 14 13 12 13
J14, M4 6 6 5 5 7 6 5 9 6 5
J15, M4 15 15 15 15 14 15 15 14 14 15
84
LA07 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M5 7 6 6 6 8 7 3 6 6 8
J2, M5 6 4 7 7 6 5 7 5 5 6
J3, M5 14 12 13 13 15 15 14 14 15 15
J4, M5 9 8 8 9 9 8 9 7 8 9
J5, M5 15 15 14 14 12 13 15 15 12 14
J6, M5 10 11 9 11 11 10 10 11 10 11
J7, M5 11 13 12 12 14 12 11 13 14 10
J8, M5 12 9 11 10 10 11 12 9 11 12
J9, M5 5 1 5 4 1 6 1 1 2 1
J10, M5 3 2 2 1 2 1 5 3 7 3
J11, M5 2 5 3 5 7 3 8 4 3 5
J12, M5 13 14 15 15 13 14 13 12 13 13
J13, M5 1 7 1 3 5 2 6 2 4 2
J14, M5 4 3 4 2 3 4 2 8 1 4
J15, M5 8 10 10 8 4 9 4 10 9 7
Makespan 890 897 897 897 896 911 890 896 892 916
Tempo (s) 28,750 27,656 27,218 28,468 28,000 27,953 28,531 27,734 28,390 29,187
85
LA08 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 8 8 8 8 8 8 8 8 8 8
J2, M1 6 5 5 5 5 7 6 6 5 5
J3, M1 9 10 13 11 9 9 11 11 9 10
J4, M1 7 7 7 7 7 6 7 7 6 7
J5, M1 13 12 12 14 13 14 14 14 13 14
J6, M1 15 15 15 15 15 15 15 15 15 13
J7, M1 10 9 9 9 11 12 10 9 12 9
J8, M1 12 11 10 12 10 10 9 12 10 11
J9, M1 4 4 4 3 4 4 5 5 3 4
J10, M1 14 14 14 13 14 13 13 13 14 15
J11, M1 2 2 1 4 1 3 3 1 2 2
J12, M1 3 3 3 1 2 1 1 3 1 1
J13, M1 1 1 2 2 3 2 2 2 4 3
J14, M1 11 13 11 10 12 11 12 10 11 12
J15, M1 5 6 6 6 6 5 4 4 7 6
J1, M2 9 11 14 13 9 13 11 11 11 12
J2, M2 1 3 2 2 1 2 3 2 2 1
J3, M2 2 1 1 1 2 3 1 4 3 2
J4, M2 5 5 5 6 5 5 6 6 5 5
J5, M2 7 7 6 5 6 7 5 5 7 9
J6, M2 6 12 7 7 7 6 8 8 6 7
J7, M2 8 6 9 8 10 10 10 7 9 6
J8, M2 11 9 8 11 8 8 7 10 8 8
J9, M2 12 10 11 10 15 11 12 12 10 10
J10, M2 13 14 12 14 13 12 14 14 13 15
J11, M2 3 2 3 4 3 1 2 1 1 3
J12, M2 15 13 13 12 14 15 13 15 14 14
J13, M2 14 15 15 15 12 14 15 13 15 13
J14, M2 4 4 4 3 4 4 4 3 4 4
J15, M2 10 8 10 9 11 9 9 9 12 11
J1, M3 5 5 5 5 5 5 5 6 5 5
J2, M3 3 2 2 1 3 4 4 2 2 2
J3, M3 13 14 11 14 12 12 14 11 10 13
J4, M3 4 1 1 3 4 1 3 4 1 1
J5, M3 1 4 3 2 1 3 1 1 3 3
J6, M3 7 9 7 8 7 7 7 8 6 7
J7, M3 12 11 13 12 14 14 13 14 14 12
J8, M3 6 7 6 6 8 6 6 7 7 8
J9, M3 10 8 9 9 10 11 9 9 11 10
J10, M3 8 6 8 7 6 8 8 5 8 6
J11, M3 15 15 12 13 15 13 12 13 15 15
J12, M3 9 10 10 10 9 9 10 12 9 9
J13, M3 11 13 15 11 11 10 11 10 12 11
J14, M3 14 12 14 15 13 15 15 15 13 14
J15, M3 2 3 4 4 2 2 2 3 4 4
J1, M4 3 3 3 3 2 2 2 3 2 2
J2, M4 10 13 11 10 10 11 10 10 11 10
J3, M4 7 5 6 6 5 5 6 4 6 6
J4, M4 13 15 15 15 13 15 15 14 15 14
J5, M4 8 8 7 7 8 7 7 7 8 9
J6, M4 6 10 5 8 6 6 8 5 5 5
J7, M4 5 6 8 5 7 9 5 6 9 4
J8, M4 2 2 4 4 3 3 4 8 3 7
J9, M4 1 1 1 1 1 1 1 1 1 1
J10, M4 12 11 12 12 11 12 12 12 12 11
J11, M4 14 12 13 14 15 13 13 13 13 15
J12, M4 15 14 14 13 14 14 14 15 14 12
J13, M4 9 7 9 9 9 8 9 9 7 8
J14, M4 4 4 2 2 4 4 3 2 4 3
J15, M4 11 9 10 11 12 10 11 11 10 13
86
LA08 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M5 9 9 9 9 9 8 8 9 9 8
J2, M5 11 14 12 13 12 13 11 13 13 12
J3, M5 10 11 13 12 11 12 12 12 10 9
J4, M5 6 3 4 5 7 3 6 6 5 3
J5, M5 3 8 5 4 3 5 5 3 8 4
J6, M5 2 2 2 1 1 1 2 2 3 1
J7, M5 1 1 3 2 2 2 1 4 1 2
J8, M5 15 15 14 15 14 14 15 15 14 14
J9, M5 7 6 7 7 5 9 9 7 7 10
J10, M5 4 7 1 3 4 6 3 1 2 5
J11, M5 8 5 8 6 8 7 7 8 6 7
J12, M5 5 4 6 8 6 4 4 5 4 6
J13, M5 12 10 10 10 10 10 10 10 11 11
J14, M5 13 13 11 11 13 11 13 11 12 13
J15, M5 14 12 15 14 15 15 14 14 15 15
Makespan 863 863 863 863 863 863 863 863 863 863
Tempo (s) 25,359 26,047 26,031 26,468 26,234 25,859 25,265 27,484 27,343 25,765
87
LA09 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 7 7 7 8 7 7 7 7 7 7
J2, M1 13 10 12 10 15 10 10 10 11 10
J3, M1 11 11 11 11 11 12 14 14 15 12
J4, M1 1 1 2 1 2 2 1 1 1 2
J5, M1 3 4 1 3 1 1 3 3 2 1
J6, M1 2 2 3 2 4 3 2 2 3 3
J7, M1 12 12 15 12 12 14 12 12 12 13
J8, M1 14 14 13 15 13 13 13 13 13 15
J9, M1 6 6 5 6 6 6 6 6 6 5
J10, M1 15 15 14 14 14 15 15 15 14 14
J11, M1 10 13 8 9 8 11 9 8 8 11
J12, M1 5 5 6 5 5 5 5 5 5 6
J13, M1 8 8 9 7 9 8 8 9 9 8
J14, M1 9 9 10 13 10 9 11 11 10 9
J15, M1 4 3 4 4 3 4 4 4 4 4
J1, M2 2 2 1 1 1 1 1 1 1 1
J2, M2 5 4 2 4 2 2 4 3 3 2
J3, M2 11 8 9 7 8 7 7 9 7 8
J4, M2 3 3 5 3 3 3 3 4 4 5
J5, M2 15 15 15 15 15 15 15 15 15 15
J6, M2 8 11 8 9 10 11 11 8 8 11
J7, M2 9 9 10 10 9 9 9 10 10 9
J8, M2 4 5 4 5 5 6 5 5 5 4
J9, M2 10 10 11 11 11 10 10 11 11 10
J10, M2 13 13 12 13 12 13 13 12 12 13
J11, M2 14 14 14 14 14 14 14 14 14 14
J12, M2 1 1 3 2 4 4 2 2 2 3
J13, M2 12 12 13 12 13 12 12 13 13 12
J14, M2 6 6 7 8 6 5 8 7 6 7
J15, M2 7 7 6 6 7 8 6 6 9 6
J1, M3 4 6 5 5 5 5 5 5 8 4
J2, M3 6 5 6 6 8 6 7 7 5 5
J3, M3 12 12 11 13 12 13 11 12 12 12
J4, M3 7 8 7 7 6 7 6 6 6 7
J5, M3 8 7 9 8 7 9 9 8 7 10
J6, M3 13 13 12 12 13 12 13 13 13 13
J7, M3 5 3 3 4 3 3 4 3 4 6
J8, M3 1 1 1 1 1 4 3 2 3 1
J9, M3 3 2 4 3 2 1 1 1 1 3
J10, M3 2 4 2 2 4 2 2 4 2 2
J11, M3 11 9 8 11 9 8 8 9 9 8
J12, M3 14 15 14 14 14 14 15 14 14 15
J13, M3 15 14 15 15 15 15 14 15 15 14
J14, M3 9 11 13 9 11 11 12 10 10 9
J15, M3 10 10 10 10 10 10 10 11 11 11
J1, M4 4 5 4 4 4 4 3 3 5 3
J2, M4 1 3 1 1 1 1 1 2 1 1
J3, M4 6 4 6 5 7 5 5 5 4 4
J4, M4 12 12 12 12 12 12 12 12 12 13
J5, M4 13 13 13 13 13 13 13 13 13 12
J6, M4 5 9 5 6 5 9 9 6 6 9
J7, M4 2 1 2 2 3 2 4 1 3 5
J8, M4 8 8 8 8 8 8 8 8 8 8
J9, M4 15 15 14 14 14 15 14 15 14 15
J10, M4 10 11 10 10 9 11 11 10 10 10
J11, M4 9 6 7 9 6 6 6 7 7 6
J12, M4 11 10 11 11 11 10 10 11 11 11
J13, M4 7 7 9 7 10 7 7 9 9 7
J14, M4 3 2 3 3 2 3 2 4 2 2
J15, M4 14 14 15 15 15 14 15 14 15 14
88
LA09 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M5 13 11 13 11 12 12 12 11 12 12
J2, M5 8 8 7 8 8 8 9 8 8 7
J3, M5 2 1 1 1 1 3 3 2 1 1
J4, M5 12 13 12 13 13 14 13 14 13 14
J5, M5 5 5 5 3 3 4 4 3 4 3
J6, M5 15 14 15 15 14 13 14 13 15 13
J7, M5 6 6 6 6 7 6 7 7 7 8
J8, M5 9 9 9 9 9 9 8 9 9 9
J9, M5 4 4 4 5 5 5 5 4 5 4
J10, M5 7 7 8 7 6 7 6 5 6 6
J11, M5 1 2 3 4 2 1 1 1 2 2
J12, M5 11 12 11 12 11 11 11 12 11 11
J13, M5 3 3 2 2 4 2 2 6 3 5
J14, M5 14 15 14 14 15 15 15 15 14 15
J15, M5 10 10 10 10 10 10 10 10 10 10
Makespan 951 951 951 951 951 951 951 951 951 951
Tempo (s) 26,296 26,593 26,593 24,488 26,468 26,312 26,437 26,343 26,281 26,625
89
LA10 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 8 10 8 8 9 10 8 9 8 8
J2, M1 3 8 5 5 3 6 3 3 3 4
J3, M1 5 3 1 1 2 2 1 2 2 2
J4, M1 11 9 11 10 10 9 9 12 9 9
J5, M1 4 4 4 4 8 4 6 8 6 12
J6, M1 10 13 10 11 12 11 11 10 11 10
J7, M1 6 6 9 7 6 8 10 6 7 6
J8, M1 15 15 13 13 13 13 15 14 13 13
J9, M1 1 1 3 2 1 1 4 1 1 1
J10, M1 12 11 12 14 11 14 13 11 12 11
J11, M1 2 2 2 3 4 3 2 4 4 3
J12, M1 7 5 6 6 5 5 5 5 5 5
J13, M1 14 14 15 15 15 15 14 15 14 15
J14, M1 13 12 14 12 14 12 12 13 15 14
J15, M1 9 7 7 9 7 7 7 7 10 7
J1, M2 7 1 1 5 3 1 1 1 4 3
J2, M2 1 2 3 1 1 4 2 3 1 1
J3, M2 4 4 4 4 4 5 13 5 6 4
J4, M2 5 6 5 6 5 8 5 9 5 6
J5, M2 6 8 6 8 7 6 6 6 8 12
J6, M2 11 13 13 11 14 11 11 11 11 11
J7, M2 2 5 2 2 2 2 3 2 2 2
J8, M2 9 7 9 7 8 7 7 7 7 7
J9, M2 10 10 11 10 11 10 10 15 10 10
J10, M2 14 12 12 13 12 12 12 12 15 13
J11, M2 13 14 14 14 13 14 15 13 13 14
J12, M2 8 9 8 12 9 13 8 8 9 8
J13, M2 12 11 10 9 10 9 9 10 12 9
J14, M2 3 3 7 3 6 3 4 4 3 5
J15, M2 15 15 15 15 15 15 14 14 14 15
J1, M3 5 8 5 4 6 5 4 4 4 5
J2, M3 13 14 13 15 13 13 15 15 13 15
J3, M3 9 9 8 10 8 9 8 8 8 9
J4, M3 11 10 9 9 9 15 9 9 9 13
J5, M3 1 1 1 1 3 3 2 1 1 1
J6, M3 10 13 12 11 10 10 10 10 11 10
J7, M3 15 11 11 13 11 11 12 11 12 11
J8, M3 4 2 3 3 1 1 1 12 3 3
J9, M3 14 15 15 14 15 14 14 14 15 14
J10, M3 2 4 2 2 2 2 3 2 2 2
J11, M3 12 12 14 12 12 12 13 13 14 12
J12, M3 3 3 4 5 4 4 5 3 6 4
J13, M3 8 5 10 8 5 6 7 5 5 6
J14, M3 6 6 6 6 7 8 6 6 7 7
J15, M3 7 7 7 7 14 7 11 7 10 8
J1, M4 6 8 6 10 7 6 8 7 9 6
J2, M4 9 9 12 9 10 12 15 9 12 11
J3, M4 11 14 11 14 11 11 11 11 11 12
J4, M4 3 2 1 2 1 1 2 1 1 1
J5, M4 10 10 10 11 14 10 10 10 10 10
J6, M4 1 1 2 1 2 4 1 2 2 7
J7, M4 14 12 13 12 12 14 12 13 13 15
J8, M4 5 4 4 4 4 5 4 6 4 4
J9, M4 8 5 5 5 5 7 5 5 5 5
J10, M4 7 7 7 7 8 9 7 12 7 8
J11, M4 12 11 8 8 9 8 9 8 8 9
J12, M4 13 13 14 13 13 13 13 15 15 13
J13, M4 2 6 3 6 6 2 3 3 6 2
J14, M4 15 15 15 15 15 15 14 14 14 14
J15, M4 4 3 9 3 3 3 6 4 3 3
90
LA10 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M5 15 13 15 13 12 15 12 12 13 12
J2, M5 4 4 5 5 4 4 4 4 6 5
J3, M5 12 8 7 7 7 7 8 8 7 8
J4, M5 13 14 13 14 13 13 13 13 14 13
J5, M5 14 15 14 15 14 14 15 15 15 15
J6, M5 3 1 2 4 2 5 2 2 1 3
J7, M5 1 3 1 1 1 1 1 1 4 1
J8, M5 8 11 9 9 8 10 9 10 11 9
J9, M5 7 5 6 6 6 6 7 7 5 7
J10, M5 2 2 4 2 5 2 5 3 2 2
J11, M5 5 7 3 3 3 3 3 5 3 4
J12, M5 9 9 11 12 15 9 14 9 9 14
J13, M5 10 10 10 10 10 11 10 14 10 10
J14, M5 6 6 8 8 9 8 6 6 8 6
J15, M5 11 12 12 11 11 12 11 11 12 11
Makespan 958 958 958 958 958 958 958 958 958 958
Tempo (s) 25,843 25,515 29,156 24,921 24,75 25,078 24,765 29,094 25,453 25,437
91
LA11 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 10 10 10 10 10 10 10 10 10 10
J2, M1 2 1 4 1 1 1 1 1 4 1
J3, M1 1 4 1 3 3 2 2 2 1 3
J4, M1 14 15 15 15 15 15 15 15 15 15
J5, M1 3 2 2 2 2 3 4 4 2 2
J6, M1 11 12 11 12 12 12 11 11 12 11
J7, M1 6 3 3 4 4 4 3 3 3 4
J8, M1 19 19 20 20 20 19 19 19 20 18
J9, M1 13 13 13 13 13 13 14 13 13 13
J10, M1 4 5 5 5 6 5 5 5 7 5
J11, M1 5 6 6 6 5 6 6 6 5 6
J12, M1 17 14 14 14 14 14 13 14 14 14
J13, M1 15 17 16 16 17 18 16 17 16 17
J14, M1 16 16 18 17 16 16 17 16 17 16
J15, M1 9 9 7 8 7 7 7 7 6 7
J16, M1 7 7 9 7 9 8 8 8 9 9
J17, M1 18 18 17 18 18 17 18 18 18 19
J18, M1 8 8 8 9 8 9 9 9 8 8
J19, M1 12 11 12 11 11 11 12 12 11 12
J20, M1 20 20 19 19 19 20 20 20 19 20
J1, M2 3 5 5 4 3 3 4 3 4 4
J2, M2 10 11 11 9 9 11 9 10 10 10
J3, M2 6 4 4 5 6 6 6 5 5 5
J4, M2 18 19 19 17 17 18 17 18 18 18
J5, M2 14 13 13 16 15 13 14 15 14 14
J6, M2 20 18 18 18 20 19 20 19 19 19
J7, M2 15 15 15 14 14 15 16 14 15 15
J8, M2 11 10 10 11 11 10 12 12 11 11
J9, M2 5 6 6 6 5 5 5 6 6 6
J10, M2 7 9 8 7 7 7 10 7 9 9
J11, M2 12 12 12 13 13 12 11 11 13 13
J12, M2 17 16 16 15 16 17 15 16 17 16
J13, M2 1 2 3 2 4 4 1 1 2 3
J14, M2 8 7 7 10 8 8 7 8 7 7
J15, M2 19 20 20 19 19 20 19 20 20 20
J16, M2 2 1 1 1 1 1 3 2 1 1
J17, M2 9 8 9 8 10 9 8 9 8 8
J18, M2 4 3 2 3 2 2 2 4 3 2
J19, M2 16 17 17 20 18 16 18 17 16 17
J20, M2 13 14 14 12 12 14 13 13 12 12
J1, M3 1 2 1 2 1 3 1 3 2 1
J2, M3 15 15 15 15 15 15 16 19 16 20
J3, M3 8 7 7 8 9 7 8 7 9 8
J4, M3 2 1 2 1 3 1 4 1 1 3
J5, M3 17 16 18 18 16 16 17 16 17 16
J6, M3 4 4 8 3 5 4 3 5 5 4
J7, M3 10 9 9 9 8 8 9 10 8 11
J8, M3 12 13 12 14 12 14 12 12 15 12
J9, M3 14 14 14 13 14 13 15 15 13 14
J10, M3 9 10 10 12 11 11 11 9 11 9
J11, M3 18 17 17 17 19 20 19 17 20 17
J12, M3 5 5 4 5 4 6 6 4 4 5
J13, M3 6 6 5 6 6 5 5 6 7 6
J14, M3 3 3 3 4 2 2 2 2 3 2
J15, M3 16 19 16 16 17 17 14 14 14 15
J16, M3 19 18 19 19 18 18 18 18 18 18
J17, M3 20 20 20 20 20 19 20 20 19 19
J18, M3 11 11 11 10 10 10 10 11 10 10
J19, M3 13 12 13 11 13 12 13 13 12 13
J20, M3 7 8 6 7 7 9 7 8 6 7
92
LA11 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M4 7 8 8 8 7 7 8 7 8 8
J2, M4 1 1 1 1 1 1 1 3 3 1
J3, M4 20 13 13 13 13 20 13 14 14 15
J4, M4 2 2 3 2 2 2 3 1 1 2
J5, M4 5 5 7 4 4 6 6 4 5 4
J6, M4 12 11 10 11 12 11 12 10 11 10
J7, M4 13 14 14 14 14 13 14 13 13 13
J8, M4 3 4 2 3 3 4 2 2 2 5
J9, M4 14 15 18 15 15 14 16 16 15 14
J10, M4 15 16 15 16 16 15 15 15 19 16
J11, M4 4 3 4 5 5 3 4 5 4 3
J12, M4 16 18 16 17 18 16 19 17 16 19
J13, M4 17 17 17 18 17 17 17 18 17 17
J14, M4 18 20 20 19 19 18 18 19 18 18
J15, M4 6 7 5 6 6 5 5 6 6 6
J16, M4 9 9 9 9 9 9 9 9 9 9
J17, M4 8 6 6 7 8 8 7 8 7 7
J18, M4 10 10 12 10 10 10 10 11 10 11
J19, M4 19 19 19 20 20 19 20 20 20 20
J20, M4 11 12 11 12 11 12 11 12 12 12
J1, M5 19 20 19 19 19 18 19 19 19 19
J2, M5 15 15 14 14 15 15 15 16 15 16
J3, M5 17 16 16 16 16 17 16 15 16 15
J4, M5 14 14 15 15 14 14 14 14 14 14
J5, M5 9 9 8 8 8 10 9 9 10 9
J6, M5 1 2 1 2 4 1 3 1 5 1
J7, M5 10 10 9 10 10 9 10 10 9 10
J8, M5 3 1 3 1 1 2 1 3 1 3
J9, M5 2 3 2 3 2 5 2 2 2 2
J10, M5 16 17 18 17 18 16 18 17 17 17
J11, M5 18 18 17 18 17 20 17 18 18 18
J12, M5 4 4 5 4 3 3 4 4 3 5
J13, M5 11 11 11 11 11 11 11 11 11 11
J14, M5 12 12 12 12 12 12 12 12 12 12
J15, M5 5 6 4 5 5 4 5 5 4 4
J16, M5 13 13 13 13 13 13 13 13 13 13
J17, M5 6 5 6 7 6 8 7 7 7 6
J18, M5 20 19 20 20 20 19 20 20 20 20
J19, M5 8 8 10 6 9 6 6 6 6 8
J20, M5 7 7 7 9 7 7 8 8 8 7
Makespan 1222 1222 1222 1222 1222 1222 1222 1222 1222 1222
Tempo (s) 38,078 37,437 38,109 38,156 37,781 37,781 36,953 35,703 37,781 35,953
93
LA12 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 4 4 4 4 4 4 3 4 3 4
J2, M1 11 13 12 12 11 11 13 13 12 11
J3, M1 16 16 20 18 16 18 17 17 16 20
J4, M1 20 18 17 17 18 17 18 19 18 17
J5, M1 15 12 16 13 12 14 12 12 13 13
J6, M1 13 17 13 16 13 13 15 15 15 16
J7, M1 5 5 5 5 5 5 5 5 5 5
J8, M1 14 15 14 14 14 16 14 14 14 15
J9, M1 1 3 1 1 1 1 1 1 4 1
J10, M1 3 1 3 2 3 3 2 2 1 3
J11, M1 2 2 2 3 2 2 4 3 2 2
J12, M1 18 20 18 19 20 19 20 18 20 19
J13, M1 7 11 7 7 7 7 7 7 7 8
J14, M1 6 6 6 6 6 6 6 6 6 6
J15, M1 17 14 15 15 17 15 16 16 17 14
J16, M1 8 7 8 8 8 8 8 8 8 7
J17, M1 9 10 11 9 9 9 9 11 9 9
J18, M1 12 8 10 10 15 12 10 9 11 12
J19, M1 10 9 9 11 10 10 11 10 10 10
J20, M1 19 19 19 20 19 20 19 20 19 18
J1, M2 1 1 1 2 2 1 1 1 1 1
J2, M2 11 13 13 11 10 12 11 11 13 12
J3, M2 12 12 11 13 13 11 13 12 11 11
J4, M2 7 3 2 1 1 2 2 4 2 5
J5, M2 10 10 10 10 11 10 10 9 10 10
J6, M2 2 5 4 6 6 7 6 2 6 3
J7, M2 3 2 3 3 3 3 3 3 3 2
J8, M2 16 18 17 19 18 18 16 16 17 19
J9, M2 13 11 12 12 12 13 12 13 12 13
J10, M2 17 16 15 16 16 16 19 19 16 16
J11, M2 19 17 20 17 17 17 17 17 20 18
J12, M2 4 4 8 4 4 4 4 7 4 4
J13, M2 5 8 5 5 5 5 5 5 5 6
J14, M2 18 20 18 18 20 19 18 18 18 17
J15, M2 6 7 6 7 7 6 7 6 7 7
J16, M2 20 19 19 20 19 20 20 20 19 20
J17, M2 9 9 9 9 9 9 9 10 9 9
J18, M2 8 6 7 8 8 8 8 8 8 8
J19, M2 14 14 14 14 14 14 14 14 14 14
J20, M2 15 15 16 15 15 15 15 15 15 15
J1, M3 12 14 10 11 10 10 11 11 14 9
J2, M3 16 16 16 17 16 15 15 15 16 15
J3, M3 11 11 12 12 12 12 12 13 11 11
J4, M3 13 12 14 14 14 14 13 12 12 14
J5, M3 10 10 9 10 11 11 9 9 10 12
J6, M3 8 7 8 8 8 8 8 8 8 5
J7, M3 17 18 20 16 17 16 16 18 17 20
J8, M3 9 9 11 9 9 9 10 10 9 8
J9, M3 5 5 5 5 5 5 5 5 5 10
J10, M3 14 13 13 13 13 13 14 14 13 13
J11, M3 6 8 6 6 6 6 6 6 6 7
J12, M3 15 15 15 15 15 17 17 16 15 16
J13, M3 18 19 17 18 20 18 19 17 18 17
J14, M3 1 2 1 1 1 2 2 1 1 1
J15, M3 19 17 18 20 18 19 18 20 19 18
J16, M3 7 6 7 7 7 7 7 7 7 6
J17, M3 4 1 2 2 2 1 1 2 2 2
J18, M3 20 20 19 19 19 20 20 19 20 19
J19, M3 2 4 3 3 4 4 3 3 3 4
J20, M3 3 3 4 4 3 3 4 4 4 3
94
LA12 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M4 20 18 18 18 20 18 17 18 18 19
J2, M4 1 3 1 2 1 1 2 1 1 1
J3, M4 5 5 6 7 5 5 5 5 4 3
J4, M4 8 8 5 5 6 6 6 6 6 7
J5, M4 3 1 4 1 4 2 1 2 5 4
J6, M4 9 10 11 9 9 11 10 10 10 10
J7, M4 11 13 10 11 10 10 12 12 11 11
J8, M4 2 2 2 4 2 3 4 4 2 2
J9, M4 18 20 19 19 18 20 18 20 19 18
J10, M4 12 12 13 12 12 13 11 11 13 13
J11, M4 14 11 12 13 13 12 15 13 12 12
J12, M4 6 6 9 6 7 7 7 9 7 6
J13, M4 13 15 14 15 16 14 13 15 15 14
J14, M4 16 16 17 16 15 15 16 17 16 16
J15, M4 7 9 7 8 8 8 8 7 8 8
J16, M4 4 4 3 3 3 4 3 3 3 5
J17, M4 17 17 16 17 17 17 19 16 17 17
J18, M4 10 7 8 10 11 9 9 8 9 9
J19, M4 19 19 20 20 19 19 20 19 20 20
J20, M4 15 14 15 14 14 16 14 14 14 15
J1, M5 9 8 7 8 7 7 8 7 7 8
J2, M5 1 4 1 1 2 2 1 2 2 4
J3, M5 2 2 2 2 1 1 2 1 1 1
J4, M5 8 9 9 10 9 8 9 9 8 10
J5, M5 20 18 17 19 20 18 17 17 18 20
J6, M5 18 20 20 18 18 19 19 19 19 18
J7, M5 13 10 11 17 11 12 11 12 12 11
J8, M5 6 1 3 4 5 3 4 3 3 3
J9, M5 12 14 13 12 12 14 12 14 14 14
J10, M5 3 3 4 3 3 5 3 6 6 2
J11, M5 17 12 16 13 14 13 13 13 13 12
J12, M5 11 13 10 9 10 10 15 10 10 9
J13, M5 14 15 14 14 15 15 14 15 17 15
J14, M5 4 5 5 5 4 4 5 4 4 5
J15, M5 10 11 12 11 13 11 10 11 11 13
J16, M5 15 17 15 15 16 16 18 18 15 17
J17, M5 19 19 19 20 19 20 20 20 20 19
J18, M5 16 16 18 16 17 17 16 16 16 16
J19, M5 5 6 6 6 6 9 7 5 5 7
J20, M5 7 7 8 7 8 6 6 8 9 6
Makespan 1039 1039 1039 1039 1039 1039 1039 1039 1039 1039
Tempo (s) 32,953 31,937 33,515 34,125 33,671 34,109 32,937 34,546 32,468 33,312
95
LA13 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 5 6 6 5 7 6 6 4 5 4
J2, M1 6 5 5 6 5 5 5 5 6 5
J3, M1 9 8 10 9 9 8 9 10 9 9
J4, M1 7 7 7 8 6 7 8 8 7 7
J5, M1 12 12 11 12 11 12 12 11 13 12
J6, M1 13 13 13 13 13 13 13 12 12 13
J7, M1 16 18 18 16 16 16 17 16 16 16
J8, M1 17 16 16 17 17 17 16 17 17 17
J9, M1 2 1 3 2 2 1 1 1 1 1
J10, M1 1 2 1 1 1 2 4 2 2 2
J11, M1 3 3 2 4 4 3 2 3 3 3
J12, M1 18 17 17 18 19 18 18 18 18 18
J13, M1 19 19 20 19 18 20 19 19 19 19
J14, M1 10 11 9 10 12 10 10 9 11 10
J15, M1 20 20 19 20 20 19 20 20 20 20
J16, M1 14 15 14 14 14 14 14 14 14 14
J17, M1 8 9 8 7 8 9 7 7 8 8
J18, M1 11 10 12 11 10 11 11 13 10 11
J19, M1 15 14 15 15 15 15 15 15 15 15
J20, M1 4 4 4 3 3 4 3 6 4 6
J1, M2 10 9 9 9 10 9 10 10 10 10
J2, M2 1 2 1 2 2 3 5 1 1 4
J3, M2 4 4 3 4 8 5 3 4 4 3
J4, M2 14 17 15 14 14 14 14 13 14 14
J5, M2 11 10 11 10 11 13 11 11 11 11
J6, M2 2 1 2 1 1 1 1 2 2 1
J7, M2 5 7 5 6 4 4 4 6 5 7
J8, M2 12 13 12 12 13 11 12 12 12 12
J9, M2 6 5 7 5 5 6 7 5 6 5
J10, M2 19 19 18 19 19 18 19 18 19 19
J11, M2 13 12 13 13 12 12 13 14 13 13
J12, M2 15 14 14 15 15 15 15 15 15 15
J13, M2 7 6 6 7 6 8 6 7 7 6
J14, M2 16 15 17 16 16 16 16 16 16 16
J15, M2 17 16 16 17 17 17 18 17 17 17
J16, M2 20 20 20 20 20 20 20 20 20 20
J17, M2 3 3 4 3 3 2 2 3 3 2
J18, M2 18 18 19 18 18 19 17 19 18 18
J19, M2 8 8 10 11 7 7 8 8 8 8
J20, M2 9 11 8 8 9 10 9 9 9 9
J1, M3 18 17 18 18 17 18 18 19 18 18
J2, M3 7 6 7 7 7 8 7 6 8 7
J3, M3 15 15 16 15 14 14 15 16 15 15
J4, M3 1 3 2 1 1 2 2 1 1 1
J5, M3 2 1 1 2 2 1 1 2 2 4
J6, M3 8 7 8 8 9 7 8 10 7 8
J7, M3 9 8 9 9 8 11 9 8 9 9
J8, M3 16 16 15 16 15 16 16 15 16 16
J9, M3 10 9 10 10 10 9 10 9 10 10
J10, M3 11 11 11 11 11 10 11 11 11 12
J11, M3 17 18 17 17 18 17 17 17 17 17
J12, M3 6 10 6 6 5 6 6 7 6 5
J13, M3 3 2 4 3 3 4 4 3 3 2
J14, M3 5 5 3 5 4 3 3 4 4 3
J15, M3 4 4 5 4 6 5 5 5 5 6
J16, M3 12 14 12 12 12 12 12 12 12 11
J17, M3 19 19 19 19 20 19 19 18 19 19
J18, M3 20 20 20 20 19 20 20 20 20 20
J19, M3 13 12 13 13 13 15 13 13 13 13
J20, M3 14 13 14 14 16 13 14 14 14 14
96
LA13 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M4 1 3 1 1 2 1 2 1 1 1
J2, M4 16 16 16 16 15 15 16 15 15 16
J3, M4 2 1 2 2 1 2 1 2 2 2
J4, M4 12 12 12 12 13 13 13 12 12 13
J5, M4 6 5 5 6 8 6 6 5 6 7
J6, M4 8 6 8 7 6 8 8 7 7 6
J7, M4 3 2 3 3 3 3 3 3 3 3
J8, M4 7 8 7 8 7 7 7 8 8 8
J9, M4 17 18 20 17 19 17 17 20 17 17
J10, M4 18 17 17 18 17 18 20 17 18 20
J11, M4 10 9 9 9 9 9 11 10 9 9
J12, M4 4 7 6 4 4 5 5 4 4 4
J13, M4 13 13 13 13 12 12 12 13 13 12
J14, M4 19 20 18 19 18 19 18 18 19 18
J15, M4 15 15 15 15 16 16 14 16 14 14
J16, M4 9 11 10 10 10 10 9 9 10 10
J17, M4 14 14 14 14 14 14 15 14 16 15
J18, M4 11 10 11 11 11 11 10 11 11 11
J19, M4 5 4 4 5 5 4 4 6 5 5
J20, M4 20 19 19 20 20 20 19 19 20 19
J1, M5 8 7 8 8 8 8 9 8 8 7
J2, M5 13 19 13 13 12 12 12 13 13 16
J3, M5 14 13 14 14 13 13 16 14 14 13
J4, M5 15 14 15 16 14 15 14 15 15 14
J5, M5 16 15 17 15 16 16 15 16 16 15
J6, M5 17 16 16 17 17 20 17 17 17 17
J7, M5 9 9 9 9 9 9 8 9 9 9
J8, M5 1 1 2 1 1 4 1 1 1 1
J9, M5 18 17 20 20 20 17 18 18 18 18
J10, M5 4 3 3 4 4 3 4 4 4 4
J11, M5 19 18 18 18 18 18 19 19 20 19
J12, M5 7 8 7 7 6 6 7 7 7 8
J13, M5 10 10 10 10 10 10 10 10 10 10
J14, M5 5 4 5 5 5 5 5 5 5 5
J15, M5 6 6 6 6 7 7 6 6 6 6
J16, M5 2 5 1 2 2 1 2 3 2 2
J17, M5 11 12 11 11 11 11 13 11 12 12
J18, M5 3 2 4 3 3 2 3 2 3 3
J19, M5 20 20 19 19 19 19 20 20 19 20
J20, M5 12 11 12 12 15 14 11 12 11 11
Makespan 1150 1150 1150 1150 1150 1150 1150 1150 1150 1150
Tempo (s) 34,343 33,546 33,75 32,828 33,312 32,242 33,875 35,046 34,078 33,718
97
LA14 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 13 14 13 17 14 13 14 13 13 14
J2, M1 6 6 6 9 6 6 8 6 6 9
J3, M1 18 17 19 18 17 17 17 18 18 18
J4, M1 5 2 1 6 2 1 1 2 2 1
J5, M1 15 16 16 14 15 14 15 14 14 15
J6, M1 1 1 2 1 1 8 3 1 1 2
J7, M1 3 7 4 3 3 3 6 3 3 3
J8, M1 20 18 18 20 18 18 18 19 19 20
J9, M1 17 15 15 15 19 16 20 15 15 16
J10, M1 7 8 9 7 7 7 7 9 9 7
J11, M1 9 9 8 8 8 9 9 8 8 8
J12, M1 14 10 10 11 9 15 12 10 10 12
J13, M1 10 11 12 10 10 10 10 11 11 10
J14, M1 4 4 5 4 4 4 4 5 5 4
J15, M1 19 19 20 19 20 20 19 20 20 19
J16, M1 16 20 17 16 16 19 16 16 16 17
J17, M1 8 5 7 5 11 5 5 7 7 5
J18, M1 2 3 3 2 5 2 2 4 4 6
J19, M1 11 13 11 12 13 11 11 17 17 11
J20, M1 12 12 14 13 12 12 13 12 12 13
J1, M2 15 15 17 16 15 15 16 15 15 15
J2, M2 2 1 2 1 1 2 2 1 1 1
J3, M2 9 10 14 9 11 11 13 11 11 10
J4, M2 12 12 12 12 12 12 12 17 17 12
J5, M2 16 16 16 17 16 17 17 16 16 17
J6, M2 18 17 19 20 17 19 18 20 20 19
J7, M2 10 13 10 10 10 10 10 10 10 13
J8, M2 13 11 11 13 18 14 11 12 12 11
J9, M2 1 3 1 2 2 1 1 2 2 7
J10, M2 20 18 18 18 19 18 19 18 18 18
J11, M2 14 14 13 15 13 13 14 13 13 16
J12, M2 6 5 6 11 6 7 6 5 5 5
J13, M2 5 2 3 4 4 3 3 3 3 2
J14, M2 19 20 20 19 20 20 20 19 19 20
J15, M2 11 7 9 6 8 6 7 7 7 6
J16, M2 7 9 7 7 7 8 9 9 9 9
J17, M2 3 6 4 3 3 4 4 6 6 3
J18, M2 17 19 15 14 14 16 15 14 14 14
J19, M2 4 4 5 5 5 5 5 4 4 4
J20, M2 8 8 8 8 9 9 8 8 8 8
J1, M3 8 8 8 9 8 9 8 8 8 8
J2, M3 11 10 10 10 10 10 12 10 10 10
J3, M3 2 4 3 1 1 5 1 4 4 2
J4, M3 17 15 16 19 16 20 16 16 16 15
J5, M3 1 1 1 3 4 1 5 1 1 1
J6, M3 12 13 11 12 12 14 11 12 12 12
J7, M3 3 2 2 2 2 2 2 2 2 3
J8, M3 5 5 5 4 5 4 4 5 5 5
J9, M3 6 7 6 7 7 8 7 6 6 9
J10, M3 10 6 9 6 6 6 6 11 11 6
J11, M3 7 9 7 8 11 7 9 7 7 7
J12, M3 15 12 13 14 13 12 13 13 13 13
J13, M3 16 16 19 16 18 16 18 18 18 18
J14, M3 13 17 14 13 15 13 14 15 15 14
J15, M3 4 3 4 5 3 3 3 3 3 4
J16, M3 18 18 17 17 17 17 17 17 17 17
J17, M3 20 20 18 18 20 18 20 20 20 20
J18, M3 9 11 12 11 9 11 10 9 9 11
J19, M3 19 19 20 20 19 19 19 19 19 19
J20, M3 14 14 15 15 14 15 15 14 14 16
98
LA14 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M4 1 5 1 2 1 1 4 1 1 3
J2, M4 19 16 16 15 20 15 15 16 16 16
J3, M4 7 7 5 5 5 5 5 7 7 8
J4, M4 6 6 6 7 6 7 8 6 6 6
J5, M4 12 8 8 10 9 8 9 9 9 9
J6, M4 9 11 10 9 11 13 10 10 10 10
J7, M4 16 19 18 17 16 16 16 17 17 18
J8, M4 2 1 2 1 2 2 1 2 2 1
J9, M4 17 17 17 20 17 17 18 18 18 17
J10, M4 5 2 9 3 3 4 2 5 5 2
J11, M4 18 18 19 18 18 18 19 20 20 20
J12, M4 3 3 3 4 8 3 3 3 3 5
J13, M4 8 9 7 8 7 9 7 8 8 7
J14, M4 10 10 12 12 10 10 11 13 13 11
J15, M4 13 13 14 13 13 12 12 12 12 12
J16, M4 11 12 11 11 12 11 13 11 11 13
J17, M4 14 15 13 16 14 19 17 14 14 14
J18, M4 20 20 20 19 19 20 20 19 19 19
J19, M4 15 14 15 14 15 14 14 15 15 15
J20, M4 4 4 4 6 4 6 6 4 4 4
J1, M5 3 3 4 3 3 3 4 3 3 3
J2, M5 4 7 6 12 6 4 6 5 5 6
J3, M5 13 13 13 16 13 13 14 13 13 13
J4, M5 10 9 10 9 9 10 10 12 12 11
J5, M5 5 5 5 5 5 7 5 9 9 5
J6, M5 6 6 7 6 8 6 8 6 6 9
J7, M5 17 15 16 14 17 15 15 15 15 15
J8, M5 15 17 15 15 15 18 17 18 18 16
J9, M5 11 10 14 10 11 14 11 10 10 10
J10, M5 16 16 17 17 16 16 16 16 16 18
J11, M5 1 1 1 1 1 1 1 4 4 1
J12, M5 19 19 18 20 20 20 20 20 20 19
J13, M5 18 18 19 18 18 17 18 17 17 17
J14, M5 8 2 3 2 2 5 3 1 1 2
J15, M5 14 14 11 11 12 11 13 11 11 14
J16, M5 2 4 2 4 4 2 2 2 2 4
J17, M5 12 12 12 13 14 12 12 14 14 12
J18, M5 7 11 8 7 7 9 7 7 7 7
J19, M5 9 8 9 8 10 8 9 8 8 8
J20, M5 20 20 20 19 19 19 19 19 19 20
Makespan 1292 1292 1292 1292 1292 1292 1292 1292 1292 1292
Tempo (s) 40,031 43,309 38,734 38,031 39,250 38,703 38,046 39,515 39,515 37,921
99
LA15 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 2 1 1 2 2 3 1 2 4 1
J2, M1 14 12 13 13 13 12 13 13 14 13
J3, M1 19 19 18 20 19 19 18 18 20 20
J4, M1 13 14 15 15 15 14 15 14 13 16
J5, M1 11 9 11 12 9 9 12 9 12 9
J6, M1 3 11 6 4 5 5 6 3 7 7
J7, M1 20 20 19 19 20 18 20 20 19 19
J8, M1 7 3 3 6 12 4 11 4 1 4
J9, M1 5 4 7 9 7 8 5 8 6 8
J10, M1 12 13 12 11 10 13 10 11 11 12
J11, M1 1 10 4 10 11 6 3 6 2 3
J12, M1 8 5 5 5 6 7 7 5 8 5
J13, M1 10 8 10 3 1 1 4 7 9 11
J14, M1 4 2 2 1 4 2 2 1 3 2
J15, M1 9 7 9 7 8 11 8 10 10 10
J16, M1 17 16 20 14 17 17 17 17 16 18
J17, M1 16 18 17 17 16 16 14 19 18 15
J18, M1 15 15 14 16 14 15 16 15 15 14
J19, M1 6 6 8 8 3 10 9 12 5 6
J20, M1 18 17 16 18 18 20 19 16 17 17
J1, M2 5 6 8 6 6 4 5 9 7 5
J2, M2 15 19 15 19 15 18 18 15 18 16
J3, M2 1 2 2 3 3 2 2 1 3 4
J4, M2 20 18 17 16 17 16 20 19 17 19
J5, M2 11 10 11 11 9 9 12 10 13 9
J6, M2 9 14 9 15 8 7 8 8 8 15
J7, M2 16 13 16 14 18 13 14 13 16 17
J8, M2 12 8 13 9 14 14 13 14 11 10
J9, M2 19 15 20 18 19 19 17 18 19 18
J10, M2 8 1 3 2 2 11 3 2 2 8
J11, M2 4 9 6 13 11 6 7 7 9 11
J12, M2 14 16 14 12 13 17 15 16 15 12
J13, M2 13 11 12 8 10 12 10 11 12 13
J14, M2 17 17 18 17 16 15 16 17 14 14
J15, M2 3 4 5 5 5 1 6 3 6 2
J16, M2 2 3 4 4 4 5 4 4 4 1
J17, M2 7 7 1 1 7 8 1 6 1 3
J18, M2 18 20 19 20 20 20 19 20 20 20
J19, M2 10 12 10 10 12 10 11 12 10 7
J20, M2 6 5 7 7 1 3 9 5 5 6
J1, M3 3 4 5 4 3 5 2 6 6 4
J2, M3 6 1 1 2 1 1 1 2 1 2
J3, M3 5 5 6 7 8 6 6 5 5 7
J4, M3 1 6 2 3 5 4 3 1 2 3
J5, M3 2 3 4 6 6 3 5 4 3 5
J6, M3 19 20 20 20 17 19 16 19 18 19
J7, M3 20 19 17 15 19 14 17 17 17 20
J8, M3 8 8 7 8 12 7 12 7 4 8
J9, M3 17 12 19 18 20 20 15 18 19 15
J10, M3 16 18 15 16 10 15 19 12 14 14
J11, M3 14 11 10 13 11 11 9 10 11 13
J12, M3 4 2 3 1 2 2 4 3 7 1
J13, M3 10 9 12 5 4 9 7 9 9 12
J14, M3 12 10 9 14 15 16 13 14 13 11
J15, M3 18 15 18 19 18 17 18 20 20 18
J16, M3 7 7 11 9 9 10 8 11 8 6
J17, M3 13 17 14 11 14 13 11 13 16 16
J18, M3 15 16 16 17 16 18 20 16 15 17
J19, M3 11 14 13 12 13 12 14 15 12 10
J20, M3 9 13 8 10 7 8 10 8 10 9
100
LA15 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M4 6 8 7 7 8 8 5 9 7 7
J2, M4 4 4 1 4 1 4 3 1 1 2
J3, M4 7 7 6 6 7 5 7 6 5 6
J4, M4 13 16 15 14 16 16 15 14 16 17
J5, M4 11 12 11 12 11 9 12 10 14 10
J6, M4 9 15 9 16 10 10 10 7 9 15
J7, M4 1 2 2 2 3 2 6 4 3 3
J8, M4 14 10 17 11 17 15 16 16 18 12
J9, M4 5 5 8 10 6 7 4 8 6 8
J10, M4 17 17 13 18 12 14 19 13 12 16
J11, M4 19 13 16 17 14 18 18 19 15 14
J12, M4 8 6 5 5 5 6 8 5 8 5
J13, M4 15 11 14 9 13 13 11 12 13 13
J14, M4 3 3 4 1 4 3 1 3 4 4
J15, M4 10 9 10 8 9 11 9 11 10 11
J16, M4 20 19 20 15 20 17 17 17 17 20
J17, M4 16 20 18 19 18 19 14 20 19 19
J18, M4 2 1 3 3 2 1 2 2 2 1
J19, M4 12 14 12 13 15 12 13 15 11 9
J20, M4 18 18 19 20 19 20 20 18 20 18
J1, M5 14 14 13 12 19 15 16 19 17 14
J2, M5 13 17 11 13 12 10 11 12 12 12
J3, M5 3 3 3 4 4 3 2 3 4 5
J4, M5 5 4 5 2 5 4 5 6 6 2
J5, M5 12 15 17 19 15 14 19 13 20 15
J6, M5 4 10 6 6 3 5 4 4 5 6
J7, M5 1 2 2 1 2 1 3 1 3 1
J8, M5 11 8 15 10 14 13 13 14 13 10
J9, M5 2 1 1 3 1 2 1 2 1 3
J10, M5 10 12 10 11 9 11 10 10 10 11
J11, M5 15 9 12 14 11 12 12 9 9 13
J12, M5 18 20 16 15 13 19 14 15 19 16
J13, M5 16 13 18 16 17 18 15 20 15 19
J14, M5 19 18 20 18 20 17 17 18 16 18
J15, M5 8 5 7 7 7 8 6 7 8 9
J16, M5 6 6 8 8 10 7 8 11 7 7
J17, M5 7 7 4 5 6 6 7 8 2 4
J18, M5 17 16 14 17 16 16 18 17 14 17
J19, M5 20 19 19 20 18 20 20 16 18 20
J20, M5 9 11 9 9 8 9 9 5 11 8
Makespan 1272 1214 1259 1212 1217 1292 1265 1266 1276 1240
Tempo (s) 39,046 44,078 39,750 41,156 39,687 40,640 38,609 40,265 40,031 39,000
101
LA16 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 6 6 5 5 5 4 4 5 5 6
J2, M1 4 4 4 4 4 5 5 4 6 4
J3, M1 9 9 9 9 9 9 9 9 9 9
J4, M1 8 8 6 6 7 6 8 8 8 8
J5, M1 1 3 3 1 2 1 1 1 2 2
J6, M1 7 5 8 8 8 8 7 7 7 7
J7, M1 2 2 1 2 3 3 3 3 3 3
J8, M1 3 1 2 3 1 2 2 2 1 1
J9, M1 10 10 10 10 10 10 10 10 10 10
J10, M1 5 7 7 7 6 7 6 6 4 5
J1, M2 1 1 3 2 2 1 3 3 2 1
J2, M2 6 6 8 7 7 7 8 7 7 9
J3, M2 4 4 5 5 4 4 4 4 4 3
J4, M2 3 3 1 3 3 3 1 2 3 4
J5, M2 7 8 6 6 6 8 6 6 6 7
J6, M2 9 7 9 9 10 9 9 9 9 10
J7, M2 5 5 4 4 5 5 5 5 5 5
J8, M2 2 2 2 1 1 2 2 1 1 2
J9, M2 8 9 7 8 8 6 7 8 8 6
J10, M2 10 10 10 10 9 10 10 10 10 8
J1, M3 9 9 9 9 9 8 8 9 9 9
J2, M3 4 3 3 3 3 3 4 2 2 3
J3, M3 3 4 5 5 4 4 3 3 3 2
J4, M3 8 7 6 6 7 6 9 8 8 8
J5, M3 2 2 1 2 1 2 1 1 1 4
J6, M3 1 1 4 1 2 1 2 4 4 1
J7, M3 5 5 2 4 6 5 5 5 5 5
J8, M3 10 10 10 10 10 10 10 10 10 10
J9, M3 7 6 7 7 5 7 6 6 7 7
J10, M3 6 8 8 8 8 9 7 7 6 6
J1, M4 8 8 8 8 8 8 8 8 8 8
J2, M4 10 10 10 10 10 10 10 10 10 10
J3, M4 2 2 3 2 2 2 1 1 2 1
J4, M4 3 5 2 3 4 4 5 3 3 5
J5, M4 9 9 9 9 9 9 9 9 9 9
J6, M4 4 3 4 4 3 1 3 5 5 3
J7, M4 1 1 1 1 1 3 2 2 1 2
J8, M4 5 4 5 5 5 5 4 4 4 4
J9, M4 7 7 6 7 7 6 6 6 7 7
J10, M4 6 6 7 6 6 7 7 7 6 6
J1, M5 7 7 6 8 7 8 6 7 8 7
J2, M5 1 2 2 2 2 1 1 1 1 1
J3, M5 3 4 4 5 4 4 3 4 4 2
J4, M5 10 10 9 9 10 10 10 10 10 10
J5, M5 8 8 8 7 9 9 9 8 6 9
J6, M5 6 5 7 3 5 5 7 5 7 6
J7, M5 9 9 10 10 8 7 8 9 9 8
J8, M5 5 3 3 4 3 2 4 3 3 4
J9, M5 2 1 1 1 1 3 2 2 2 3
J10, M5 4 6 5 6 6 6 5 6 5 5
J1, M6 6 7 8 8 7 8 6 6 6 7
J2, M6 1 1 1 1 1 3 1 1 1 1
J3, M6 9 9 9 9 10 9 10 10 10 10
J4, M6 8 8 6 6 8 7 8 8 8 9
J5, M6 2 3 3 2 2 2 3 2 2 2
J6, M6 3 2 2 3 4 1 2 3 3 3
J7, M6 5 6 5 5 5 5 5 5 5 5
J8, M6 7 5 7 7 6 6 7 7 7 6
J9, M6 4 4 4 4 3 4 4 4 4 4
J10, M6 10 10 10 10 9 10 9 9 9 8
102
LA16 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M7 1 1 1 1 1 1 1 1 1 1
J2, M7 10 10 10 10 10 10 10 10 10 10
J3, M7 7 6 6 6 7 8 6 8 7 8
J4, M7 6 7 4 4 6 5 7 6 6 7
J5, M7 2 4 2 2 4 3 2 2 2 2
J6, M7 4 3 7 7 3 4 5 3 5 4
J7, M7 5 5 5 5 5 6 4 5 4 5
J8, M7 3 2 3 3 2 2 3 4 3 3
J9, M7 9 9 8 8 9 7 9 9 9 9
J10, M7 8 8 9 9 8 9 8 7 8 6
J1, M8 2 2 2 2 1 1 1 1 1 1
J2, M8 5 3 4 4 4 5 7 4 6 3
J3, M8 6 5 5 5 3 6 5 7 4 7
J4, M8 3 1 1 1 2 2 3 2 3 4
J5, M8 1 4 3 3 5 3 2 5 2 2
J6, M8 8 8 9 10 10 10 8 8 10 9
J7, M8 9 9 10 9 9 8 10 10 8 8
J8, M8 10 10 8 8 8 9 9 9 9 10
J9, M8 4 6 6 6 6 4 4 3 5 5
J10, M8 7 7 7 7 7 7 6 6 7 6
J1, M9 3 4 3 3 4 3 3 4 3 3
J2, M9 8 9 8 8 8 8 9 9 9 9
J3, M9 2 2 2 2 2 2 2 2 2 2
J4, M9 6 5 4 4 5 4 6 6 6 6
J5, M9 10 10 10 10 10 10 10 10 10 10
J6, M9 9 8 9 9 9 9 8 7 7 8
J7, M9 5 6 5 6 6 6 5 5 5 5
J8, M9 7 7 7 7 7 7 7 8 8 7
J9, M9 4 3 6 5 3 5 4 3 4 4
J10, M9 1 1 1 1 1 1 1 1 1 1
J1, M10 1 1 2 1 2 2 2 3 1 1
J2, M10 3 4 3 3 3 3 3 2 3 3
J3, M10 6 6 6 7 5 8 6 5 4 6
J4, M10 7 8 5 6 7 6 7 7 7 8
J5, M10 9 9 10 9 9 9 9 9 8 9
J6, M10 4 3 7 4 4 4 4 4 5 5
J7, M10 5 5 4 5 6 5 5 6 6 4
J8, M10 8 7 8 8 8 7 8 8 9 7
J9, M10 10 10 9 10 10 10 10 10 10 10
J10, M10 2 2 1 2 1 1 1 1 2 2
Makespan 1032 1029 1053 1053 1046 1052 1016 1047 1046 1018
Tempo (s) 84,070 80,703 87,218 88,484 89,140 77,421 90,843 86,031 91,062 84,015
103
LA17 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 9 10 9 9 9 9 9 10 10 9
J2, M1 10 9 10 10 10 10 10 9 9 10
J3, M1 7 7 7 8 8 8 7 7 7 7
J4, M1 1 2 2 1 1 1 1 2 2 1
J5, M1 2 1 1 2 2 3 2 1 1 3
J6, M1 4 4 4 3 4 6 4 4 5 6
J7, M1 8 8 8 7 7 7 8 8 8 8
J8, M1 5 3 3 5 5 5 5 5 4 4
J9, M1 6 6 6 6 6 4 6 6 6 5
J10, M1 3 5 5 4 3 2 3 3 3 2
J1, M2 7 6 6 6 7 7 7 7 6 7
J2, M2 4 4 3 3 4 4 4 4 4 4
J3, M2 5 5 5 5 5 5 5 5 5 5
J4, M2 10 9 9 9 9 10 9 10 9 9
J5, M2 9 10 10 10 10 9 10 9 10 10
J6, M2 6 8 7 8 6 6 6 8 8 6
J7, M2 1 2 2 2 2 3 1 1 1 3
J8, M2 3 1 1 1 3 1 3 2 3 1
J9, M2 8 7 8 7 8 8 8 6 7 8
J10, M2 2 3 4 4 1 2 2 3 2 2
J1, M3 4 6 5 4 5 5 5 5 5 5
J2, M3 6 5 6 5 6 6 6 6 6 7
J3, M3 2 2 2 1 2 2 2 1 1 1
J4, M3 8 7 7 7 8 7 7 8 8 8
J5, M3 7 8 8 8 7 8 8 7 7 6
J6, M3 3 4 3 3 3 3 3 3 3 4
J7, M3 10 10 10 10 10 9 10 10 10 10
J8, M3 5 3 4 6 4 4 4 4 4 3
J9, M3 1 1 1 2 1 1 1 2 2 2
J10, M3 9 9 9 9 9 10 9 9 9 9
J1, M4 6 7 7 6 6 4 6 6 7 6
J2, M4 7 6 6 7 7 8 8 7 6 8
J3, M4 3 3 3 2 3 3 3 3 3 3
J4, M4 4 4 4 5 4 5 4 4 4 4
J5, M4 10 10 10 10 10 10 10 10 10 10
J6, M4 1 1 1 1 1 1 1 1 1 1
J7, M4 5 5 5 3 5 6 5 5 5 5
J8, M4 9 9 9 9 9 9 9 9 9 9
J9, M4 2 2 2 4 2 2 2 2 2 2
J10, M4 8 8 8 8 8 7 7 8 8 7
J1, M5 1 1 1 2 1 1 1 2 2 2
J2, M5 8 8 8 8 8 8 8 8 8 8
J3, M5 2 3 3 1 2 2 2 3 1 1
J4, M5 7 7 7 6 7 7 7 7 6 7
J5, M5 4 2 2 3 4 3 4 1 3 4
J6, M5 6 6 6 7 6 6 6 6 7 6
J7, M5 5 5 5 5 5 5 5 5 5 5
J8, M5 9 9 9 9 9 9 9 9 9 9
J9, M5 3 4 4 4 3 4 3 4 4 3
J10, M5 10 10 10 10 10 10 10 10 10 10
J1, M6 6 6 6 6 5 6 6 4 6 6
J2, M6 1 1 1 1 1 1 1 1 1 1
J3, M6 10 10 10 10 10 10 10 10 10 10
J4, M6 4 4 4 4 6 5 5 5 4 5
J5, M6 7 7 7 7 7 7 7 7 7 7
J6, M6 2 2 2 2 2 2 2 2 2 3
J7, M6 5 5 5 5 4 4 4 6 5 4
J8, M6 8 8 8 8 8 8 8 8 9 8
J9, M6 9 9 9 9 9 9 9 9 8 9
J10, M6 3 3 3 3 3 3 3 3 3 2
104
LA17 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M7 7 7 7 7 7 7 6 5 7 7
J2, M7 6 4 4 6 6 6 7 4 5 6
J3, M7 2 3 3 2 2 2 2 2 3 2
J4, M7 8 8 8 8 8 8 8 8 8 8
J5, M7 1 1 1 1 1 1 1 1 1 1
J6, M7 9 9 9 9 9 9 9 9 9 9
J7, M7 5 5 5 5 5 5 4 7 4 5
J8, M7 4 2 2 3 4 3 5 3 2 4
J9, M7 3 6 6 4 3 4 3 6 6 3
J10, M7 10 10 10 10 10 10 10 10 10 10
J1, M8 1 2 2 2 1 1 1 3 1 3
J2, M8 4 4 4 4 4 4 4 4 4 4
J3, M8 7 7 7 7 7 7 7 7 7 8
J4, M8 5 5 6 6 6 5 5 5 5 5
J5, M8 10 10 10 10 10 10 10 10 10 10
J6, M8 6 6 5 5 5 6 6 6 6 6
J7, M8 2 3 1 1 2 3 2 1 2 2
J8, M8 3 1 3 3 3 2 3 2 3 1
J9, M8 9 9 9 8 8 9 9 9 9 7
J10, M8 8 8 8 9 9 8 8 8 8 9
J1, M9 7 7 7 7 7 6 7 7 7 7
J2, M9 1 1 1 1 1 1 2 1 1 1
J3, M9 5 6 6 5 5 5 5 5 6 5
J4, M9 3 2 3 4 2 4 1 4 2 3
J5, M9 2 4 2 2 3 2 4 3 4 2
J6, M9 8 10 8 10 8 8 8 10 8 8
J7, M9 4 3 4 3 4 3 3 2 3 4
J8, M9 6 5 5 6 6 7 6 6 5 6
J9, M9 10 9 10 9 10 10 10 9 10 10
J10, M9 9 8 9 8 9 9 9 8 9 9
J1, M10 3 3 2 2 3 2 1 3 2 3
J2, M10 5 4 4 5 5 6 6 5 5 5
J3, M10 7 7 7 7 7 7 7 7 7 7
J4, M10 10 10 10 10 9 10 10 10 9 10
J5, M10 1 1 1 1 1 1 2 1 1 1
J6, M10 8 8 8 8 10 9 8 9 8 8
J7, M10 9 9 9 9 8 8 9 8 10 9
J8, M10 6 6 6 6 6 5 5 6 6 6
J9, M10 2 2 3 3 2 3 3 2 3 2
J10, M10 4 5 5 4 4 4 4 4 4 4
Makespan 833 807 807 822 834 833 834 826 817 835
Tempo (s) 82,406 87,438 79,546 91,828 86,546 85,859 69,921 90,437 77,953 88,312
105
LA18 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 1 1 2 1 1 2 2 2 1 2
J2, M1 6 6 6 6 6 6 6 6 6 6
J3, M1 4 3 4 3 3 4 4 4 4 4
J4, M1 9 9 9 9 9 9 9 9 9 9
J5, M1 8 8 8 8 8 8 8 8 7 8
J6, M1 3 4 3 5 4 3 5 5 3 3
J7, M1 5 5 5 4 5 5 3 3 5 5
J8, M1 7 7 7 7 7 7 7 7 8 7
J9, M1 2 2 1 2 2 1 1 1 2 1
J10, M1 10 10 10 10 10 10 10 10 10 10
J1, M2 8 8 7 8 8 8 8 8 6 8
J2, M2 10 9 10 10 10 10 10 10 10 10
J3, M2 4 4 4 4 2 3 4 3 5 4
J4, M2 6 5 5 5 6 5 3 5 4 5
J5, M2 9 10 9 9 9 9 9 9 9 9
J6, M2 2 3 2 2 1 2 5 4 3 2
J7, M2 1 2 3 1 4 4 2 2 2 3
J8, M2 5 6 6 6 5 6 6 6 7 6
J9, M2 3 1 1 3 3 1 1 1 1 1
J10, M2 7 7 8 7 7 7 7 7 8 7
J1, M3 7 7 8 7 6 7 7 7 8 7
J2, M3 6 6 7 6 7 5 6 5 6 5
J3, M3 9 9 9 9 9 9 9 9 9 9
J4, M3 5 5 5 5 5 6 5 6 5 6
J5, M3 1 1 2 1 1 1 1 1 1 1
J6, M3 3 3 3 4 3 3 4 4 3 3
J7, M3 4 4 4 3 4 4 3 3 4 4
J8, M3 8 8 6 8 8 8 8 8 7 8
J9, M3 10 10 10 10 10 10 10 10 10 10
J10, M3 2 2 1 2 2 2 2 2 2 2
J1, M4 4 5 5 5 5 5 5 5 4 5
J2, M4 3 3 2 1 3 1 1 3 1 2
J3, M4 9 9 9 9 9 9 10 9 9 9
J4, M4 7 6 6 8 7 6 7 7 6 7
J5, M4 1 1 1 2 1 2 2 1 2 1
J6, M4 10 10 10 10 10 10 9 10 10 10
J7, M4 5 4 4 4 4 4 3 2 3 4
J8, M4 2 2 3 3 2 3 4 4 5 3
J9, M4 8 8 8 7 8 8 8 8 8 8
J10, M4 6 7 7 6 6 7 6 6 7 6
J1, M5 3 3 4 3 4 4 3 4 3 4
J2, M5 7 7 8 7 7 7 7 7 7 7
J3, M5 1 2 3 1 1 1 2 1 1 2
J4, M5 5 5 5 5 5 5 5 6 5 5
J5, M5 9 8 7 9 8 8 8 8 8 8
J6, M5 4 4 2 4 3 3 4 3 4 3
J7, M5 8 9 9 8 9 9 9 9 9 9
J8, M5 10 10 10 10 10 10 10 10 10 10
J9, M5 6 6 6 6 6 6 6 5 6 6
J10, M5 2 1 1 2 2 2 1 2 2 1
J1, M6 4 5 5 4 4 5 4 5 6 5
J2, M6 2 2 2 2 2 2 2 2 2 2
J3, M6 5 4 3 5 8 4 7 3 4 4
J4, M6 10 8 8 10 10 10 9 9 10 10
J5, M6 6 7 7 7 6 6 6 7 5 8
J6, M6 8 6 6 6 5 7 5 8 7 6
J7, M6 9 10 10 8 9 9 10 10 8 9
J8, M6 1 1 1 1 1 1 1 1 1 1
J9, M6 3 3 4 3 3 3 3 4 3 3
J10, M6 7 9 9 9 7 8 8 6 9 7
106
LA18 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M7 1 1 1 1 1 1 1 1 1 1
J2, M7 3 2 4 3 4 4 2 2 3 3
J3, M7 7 5 5 5 5 5 5 5 5 5
J4, M7 8 7 7 9 8 8 8 8 7 8
J5, M7 4 3 3 4 2 3 3 3 2 2
J6, M7 5 6 6 6 6 6 6 6 6 6
J7, M7 9 9 9 8 9 9 9 9 9 9
J8, M7 2 4 2 2 3 2 4 4 4 4
J9, M7 10 10 10 10 10 10 10 10 10 10
J10, M7 6 8 8 7 7 7 7 7 8 7
J1, M8 2 2 3 3 4 4 3 3 2 3
J2, M8 9 10 10 8 10 9 9 9 10 9
J3, M8 3 1 2 2 2 2 2 2 3 2
J4, M8 10 9 9 10 9 10 10 10 9 10
J5, M8 4 4 5 5 3 3 4 5 4 4
J6, M8 6 7 7 7 6 7 7 6 7 7
J7, M8 5 5 4 4 5 5 5 4 5 5
J8, M8 8 6 6 6 8 6 6 8 6 6
J9, M8 1 3 1 1 1 1 1 1 1 1
J10, M8 7 8 8 9 7 8 8 7 8 8
J1, M9 3 4 3 3 4 5 3 4 3 3
J2, M9 4 5 6 4 3 4 4 3 4 4
J3, M9 2 2 2 2 2 2 2 1 2 2
J4, M9 5 3 4 6 5 3 5 5 5 5
J5, M9 10 10 10 10 10 10 10 10 10 10
J6, M9 7 8 8 8 7 8 7 7 8 7
J7, M9 6 6 5 5 6 6 6 6 6 6
J8, M9 8 7 7 7 8 7 8 8 7 8
J9, M9 9 9 9 9 9 9 9 9 9 9
J10, M9 1 1 1 1 1 1 1 2 1 1
J1, M10 9 10 9 10 10 9 9 10 9 9
J2, M10 1 2 2 1 2 2 1 2 1 2
J3, M10 10 8 10 9 9 10 10 7 10 10
J4, M10 2 1 1 2 1 1 2 1 2 1
J5, M10 4 3 3 3 3 3 3 3 3 4
J6, M10 3 4 5 5 4 4 5 5 4 3
J7, M10 5 5 4 4 5 5 4 4 5 5
J8, M10 8 7 6 7 8 7 8 9 7 8
J9, M10 6 6 7 6 6 6 6 6 6 6
J10, M10 7 9 8 8 7 8 7 8 8 7
Makespan 897 934 934 907 906 932 894 895 936 894
Tempo (s) 80,547 81,453 89,984 81,171 85,578 80,281 81,296 81,468 81,265 82,140
107
LA19 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 3 3 2 4 3 3 2 3 2 3
J2, M1 4 4 4 6 5 4 4 4 4 4
J3, M1 5 6 5 5 4 5 5 5 5 6
J4, M1 7 7 7 7 7 8 8 7 7 7
J5, M1 2 2 3 2 2 2 3 2 3 2
J6, M1 8 8 8 8 8 9 7 8 8 8
J7, M1 10 10 10 10 9 10 10 9 9 9
J8, M1 1 1 1 1 1 1 1 1 1 1
J9, M1 9 9 9 9 10 7 9 10 10 10
J10, M1 6 5 6 3 6 6 6 6 6 5
J1, M2 8 8 8 9 7 8 7 7 7 7
J2, M2 3 3 4 4 4 3 3 4 4 3
J3, M2 5 5 5 5 5 5 4 5 5 5
J4, M2 1 1 1 1 1 1 1 1 1 1
J5, M2 2 2 2 2 2 2 2 2 2 2
J6, M2 6 6 6 6 6 7 6 6 6 6
J7, M2 4 4 3 3 3 4 5 3 3 4
J8, M2 9 10 9 8 10 10 10 9 10 10
J9, M2 7 7 7 7 8 6 8 8 8 8
J10, M2 10 9 10 10 9 9 9 10 9 9
J1, M3 1 2 1 1 1 1 1 1 1 1
J2, M3 7 8 7 7 8 9 9 7 7 7
J3, M3 8 9 8 8 9 8 8 9 10 9
J4, M3 2 1 2 2 3 2 2 3 3 2
J5, M3 5 5 5 5 6 6 5 5 5 5
J6, M3 4 4 4 4 4 4 4 4 4 4
J7, M3 6 6 6 6 5 5 6 6 6 6
J8, M3 10 10 10 10 10 10 10 10 9 10
J9, M3 3 3 3 3 2 3 3 2 2 3
J10, M3 9 7 9 9 7 7 7 8 8 8
J1, M4 1 1 1 1 1 1 1 1 1 1
J2, M4 6 6 6 8 8 8 8 6 6 7
J3, M4 5 5 4 3 4 2 4 5 5 5
J4, M4 7 7 7 6 7 7 6 7 7 6
J5, M4 2 2 2 2 3 4 2 2 2 3
J6, M4 9 9 9 9 9 9 7 9 9 9
J7, M4 8 8 8 7 6 6 9 8 8 8
J8, M4 4 4 5 5 5 5 5 4 4 4
J9, M4 3 3 3 4 2 3 3 3 3 2
J10, M4 10 10 10 10 10 10 10 10 10 10
J1, M5 3 3 3 5 5 4 4 4 3 3
J2, M5 1 1 2 1 1 2 1 1 2 1
J3, M5 4 4 4 4 3 1 3 5 4 4
J4, M5 9 10 8 7 7 6 7 9 9 7
J5, M5 8 9 9 8 9 9 9 7 10 9
J6, M5 6 7 5 6 6 8 5 6 7 5
J7, M5 5 5 6 3 4 5 8 3 5 6
J8, M5 10 8 10 10 10 10 10 8 8 10
J9, M5 7 6 7 9 8 7 6 10 6 8
J10, M5 2 2 1 2 2 3 2 2 1 2
J1, M6 4 4 3 3 3 4 3 4 2 3
J2, M6 7 9 7 7 9 8 8 7 7 7
J3, M6 10 10 9 10 10 10 9 9 9 10
J4, M6 5 5 5 6 5 5 5 6 6 5
J5, M6 9 8 10 8 7 9 10 10 10 9
J6, M6 3 2 4 2 4 3 2 3 4 4
J7, M6 6 6 6 5 6 6 6 5 5 6
J8, M6 2 3 2 4 2 2 4 2 3 2
J9, M6 1 1 1 1 1 1 1 1 1 1
J10, M6 8 7 8 9 8 7 7 8 8 8
108
LA19 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M7 9 9 9 10 9 9 9 9 9 9
J2, M7 10 10 10 9 10 10 10 10 10 10
J3, M7 4 4 4 4 3 2 3 3 4 3
J4, M7 8 8 7 7 7 8 7 8 8 8
J5, M7 1 1 1 1 1 1 1 1 1 1
J6, M7 7 7 6 6 6 7 6 7 7 7
J7, M7 2 2 2 2 2 3 2 2 2 2
J8, M7 6 6 8 8 8 5 8 6 6 6
J9, M7 5 5 5 5 4 4 5 5 5 5
J10, M7 3 3 3 3 5 6 4 4 3 4
J1, M8 5 4 4 5 5 4 5 4 5 5
J2, M8 2 3 3 2 2 3 2 2 2 2
J3, M8 10 10 9 10 10 10 9 10 10 9
J4, M8 4 2 2 4 3 2 3 3 3 3
J5, M8 9 7 8 8 7 8 7 6 9 8
J6, M8 1 1 1 1 1 1 1 1 1 1
J7, M8 6 8 7 7 6 7 8 8 8 7
J8, M8 8 9 10 9 9 9 10 9 6 10
J9, M8 7 5 5 6 8 5 6 7 7 6
J10, M8 3 6 6 3 4 6 4 5 4 4
J1, M9 6 6 4 6 5 6 5 6 5 5
J2, M9 3 3 3 3 4 4 3 3 3 3
J3, M9 7 9 7 8 7 8 7 7 6 8
J4, M9 4 4 5 4 3 3 4 4 4 4
J5, M9 5 5 6 5 6 7 6 5 7 7
J6, M9 2 2 2 1 2 2 1 2 2 2
J7, M9 9 10 10 10 10 10 10 9 9 9
J8, M9 1 1 1 2 1 1 2 1 1 1
J9, M9 8 7 8 7 9 5 8 8 8 6
J10, M9 10 8 9 9 8 9 9 10 10 10
J1, M10 4 4 4 4 4 5 4 4 4 4
J2, M10 9 10 8 9 10 10 10 9 10 10
J3, M10 2 2 2 2 2 1 1 2 2 2
J4, M10 5 6 6 6 5 6 5 5 5 5
J5, M10 10 8 10 7 6 8 9 10 9 8
J6, M10 7 7 7 8 8 7 6 7 6 7
J7, M10 8 9 9 10 9 9 8 8 7 9
J8, M10 3 3 3 3 3 3 3 3 3 3
J9, M10 6 5 5 5 7 4 7 6 8 6
J10, M10 1 1 1 1 1 2 2 1 1 1
Makespan 959 977 957 995 957 908 932 945 945 938
Tempo (s) 82,703 85,109 81,828 92,562 71,609 83,031 81,343 72,781 72,953 82,437
109
LA20 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 6 8 7 8 9 8 7 8 6 9
J2, M1 9 7 8 7 7 10 8 7 8 7
J3, M1 4 3 3 5 3 4 3 2 5 3
J4, M1 5 5 5 4 4 3 5 3 4 5
J5, M1 1 2 2 2 2 1 1 1 1 1
J6, M1 7 6 6 6 6 6 6 6 7 6
J7, M1 10 9 10 10 10 9 10 10 10 8
J8, M1 8 10 9 9 8 7 9 9 9 10
J9, M1 3 4 4 3 5 5 4 5 3 4
J10, M1 2 1 1 1 1 2 2 4 2 2
J1, M2 2 1 2 2 1 2 2 2 3 2
J2, M2 8 6 5 4 5 4 5 7 7 7
J3, M2 7 4 8 7 7 8 7 8 8 4
J4, M2 9 9 9 9 9 9 9 9 9 9
J5, M2 4 7 4 5 6 6 4 4 6 5
J6, M2 6 5 7 6 4 5 6 6 5 6
J7, M2 3 2 3 3 3 3 3 3 2 3
J8, M2 1 3 1 1 2 1 1 1 1 1
J9, M2 5 8 6 8 8 7 8 5 4 8
J10, M2 10 10 10 10 10 10 10 10 10 10
J1, M3 6 5 5 4 5 4 4 4 6 5
J2, M3 4 3 4 3 4 1 3 2 4 4
J3, M3 1 2 1 2 2 2 1 3 1 1
J4, M3 5 6 8 5 8 5 8 6 7 6
J5, M3 8 7 7 7 7 8 7 8 8 7
J6, M3 3 1 2 1 1 3 2 1 3 3
J7, M3 10 9 10 10 10 10 10 10 10 9
J8, M3 9 10 9 9 9 9 9 9 9 10
J9, M3 7 8 6 8 6 7 6 7 5 8
J10, M3 2 4 3 6 3 6 5 5 2 2
J1, M4 7 7 6 5 8 7 8 8 8 10
J2, M4 10 10 10 10 10 10 10 9 10 9
J3, M4 5 5 8 6 6 6 6 5 6 4
J4, M4 9 9 9 9 9 9 9 10 9 8
J5, M4 8 8 7 8 7 8 7 7 7 7
J6, M4 4 3 4 4 2 3 3 4 3 3
J7, M4 2 1 2 2 3 1 2 2 1 1
J8, M4 3 6 5 3 5 2 4 3 5 5
J9, M4 1 2 1 1 1 4 1 1 2 2
J10, M4 6 4 3 7 4 5 5 6 4 6
J1, M5 5 3 3 3 2 3 3 4 4 4
J2, M5 6 4 5 4 5 5 4 3 5 5
J3, M5 8 7 8 8 8 8 8 8 8 8
J4, M5 2 2 2 2 3 2 2 2 2 2
J5, M5 3 5 4 6 4 6 5 6 3 3
J6, M5 10 10 10 10 10 9 10 10 10 10
J7, M5 1 1 1 1 1 1 1 1 1 1
J8, M5 4 6 6 5 6 4 6 5 6 6
J9, M5 7 8 7 7 7 7 7 7 7 7
J10, M5 9 9 9 9 9 10 9 9 9 9
J1, M6 8 8 8 8 8 8 8 7 7 8
J2, M6 7 5 5 4 5 5 4 6 6 5
J3, M6 1 1 1 1 2 1 1 1 4 1
J4, M6 5 7 7 7 7 7 7 8 8 7
J5, M6 9 9 9 9 10 9 9 9 9 9
J6, M6 3 4 4 3 1 3 3 3 2 3
J7, M6 2 2 3 2 4 2 2 2 1 2
J8, M6 10 10 10 10 9 10 10 10 10 10
J9, M6 6 6 6 6 6 6 6 5 5 6
J10, M6 4 3 2 5 3 4 5 4 3 4
110
LA20 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M7 1 1 1 1 1 1 1 1 2 1
J2, M7 9 9 10 9 10 10 9 10 9 9
J3, M7 8 7 8 8 8 8 8 8 8 8
J4, M7 4 2 3 2 4 2 4 3 4 3
J5, M7 2 4 2 3 3 4 2 4 1 2
J6, M7 3 3 4 4 2 3 3 2 3 4
J7, M7 6 5 6 6 6 6 5 6 5 5
J8, M7 5 8 7 5 7 5 6 5 7 6
J9, M7 10 10 9 10 9 9 10 9 10 10
J10, M7 7 6 5 7 5 7 7 7 6 7
J1, M8 10 10 9 9 10 10 10 10 10 8
J2, M8 1 1 1 1 1 1 1 1 2 1
J3, M8 6 5 6 6 6 5 6 5 6 5
J4, M8 3 4 4 3 3 3 3 3 3 3
J5, M8 8 9 10 10 9 8 9 9 9 10
J6, M8 9 8 8 8 8 9 8 7 8 9
J7, M8 4 3 3 4 4 4 4 4 4 4
J8, M8 2 2 2 2 2 2 2 2 1 2
J9, M8 5 6 5 5 5 6 5 8 5 7
J10, M8 7 7 7 7 7 7 7 6 7 6
J1, M9 2 1 2 2 1 2 2 2 2 2
J2, M9 6 5 5 4 4 5 4 4 4 4
J3, M9 8 6 7 8 8 8 8 7 8 8
J4, M9 10 10 10 10 10 10 10 10 10 10
J5, M9 9 9 9 9 9 9 9 9 9 9
J6, M9 3 4 3 3 3 3 3 3 5 3
J7, M9 5 3 4 5 6 4 5 5 3 5
J8, M9 4 8 8 6 7 6 7 8 6 6
J9, M9 1 2 1 1 2 1 1 1 1 1
J10, M9 7 7 6 7 5 7 6 6 7 7
J1, M10 9 9 9 9 9 9 9 8 9 9
J2, M10 1 1 1 1 1 1 1 1 1 1
J3, M10 10 10 10 10 10 10 10 10 10 10
J4, M10 7 8 8 7 8 8 8 9 8 8
J5, M10 3 5 3 3 5 6 3 3 3 3
J6, M10 8 7 6 6 6 5 6 6 7 4
J7, M10 6 3 7 8 7 4 7 5 6 7
J8, M10 2 4 4 2 3 2 2 2 4 2
J9, M10 5 6 5 5 4 7 5 7 5 6
J10, M10 4 2 2 4 2 3 4 4 2 5
Makespan 1008 1029 980 1027 983 1059 1031 1066 1021 1095
Tempo (s) 87,156 91,328 76,156 90,437 79,109 96,187 82,000 106,437 90,031 106,375
111
LA21 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 8 9 10 9 9 10 9 9 10 8
J2, M1 2 2 3 3 3 3 2 3 3 4
J3, M1 1 1 1 1 1 1 1 1 1 1
J4, M1 15 15 13 14 14 15 15 15 14 15
J5, M1 9 8 8 8 8 8 8 8 9 9
J6, M1 12 13 12 13 12 12 13 14 12 13
J7, M1 6 6 7 7 7 6 6 6 6 6
J8, M1 10 11 9 11 10 11 10 11 8 10
J9, M1 3 7 6 2 2 2 4 4 2 2
J10, M1 11 10 11 10 11 9 11 10 11 11
J11, M1 4 3 2 6 4 4 5 2 5 3
J12, M1 5 5 4 4 6 5 7 5 4 5
J13, M1 13 12 14 12 13 13 12 13 13 12
J14, M1 7 4 5 5 5 7 3 7 7 7
J15, M1 14 14 15 15 15 14 14 12 15 14
J1, M2 11 13 14 12 11 12 12 14 12 12
J2, M2 5 5 5 5 5 5 5 5 4 5
J3, M2 2 1 2 1 2 1 1 2 1 2
J4, M2 9 11 8 9 8 9 7 8 9 8
J5, M2 13 15 12 14 13 13 13 13 15 13
J6, M2 7 8 10 8 9 8 8 9 6 9
J7, M2 15 14 13 15 15 14 14 12 14 15
J8, M2 6 7 6 7 6 7 6 6 7 6
J9, M2 1 3 1 2 1 4 4 1 2 1
J10, M2 8 6 7 6 7 6 9 7 8 7
J11, M2 3 2 4 3 4 2 2 3 3 4
J12, M2 12 9 11 11 12 11 11 11 11 11
J13, M2 14 12 15 13 14 15 15 15 13 14
J14, M2 4 4 3 4 3 3 3 4 5 3
J15, M2 10 10 9 10 10 10 10 10 10 10
J1, M3 1 2 1 1 2 3 1 1 1 1
J2, M3 3 3 3 3 3 2 2 2 4 3
J3, M3 12 14 14 13 13 13 14 14 14 13
J4, M3 5 4 4 4 4 4 5 5 5 4
J5, M3 4 5 7 6 6 8 6 4 7 6
J6, M3 8 8 11 10 9 11 8 11 6 10
J7, M3 14 13 12 15 14 14 13 13 12 14
J8, M3 6 7 5 5 5 6 4 7 2 5
J9, M3 9 11 8 11 10 5 11 8 11 8
J10, M3 2 1 2 2 1 1 3 3 3 2
J11, M3 7 9 6 7 7 7 7 6 8 7
J12, M3 13 12 13 12 12 12 12 12 13 12
J13, M3 15 15 15 14 15 15 15 15 15 15
J14, M3 11 6 10 8 8 10 10 10 10 9
J15, M3 10 10 9 9 11 9 9 9 9 11
J1, M4 1 2 3 2 2 4 3 2 1 1
J2, M4 2 1 1 1 1 1 1 1 2 2
J3, M4 3 3 4 3 4 6 2 3 3 3
J4, M4 7 8 7 6 6 7 6 8 6 7
J5, M4 9 7 8 7 8 8 8 7 8 8
J6, M4 15 15 15 15 15 15 15 15 15 15
J7, M4 5 4 5 5 3 3 4 4 4 5
J8, M4 13 14 11 13 13 14 13 14 14 14
J9, M4 6 6 6 9 7 5 7 6 7 6
J10, M4 10 9 9 8 9 9 11 10 9 10
J11, M4 14 11 13 14 10 13 12 12 12 13
J12, M4 8 10 10 11 12 10 9 9 10 9
J13, M4 12 13 14 12 14 12 14 13 13 11
J14, M4 11 12 12 10 11 11 10 11 11 12
J15, M4 4 5 2 4 5 2 5 5 5 4
112
LA21 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M5 9 9 8 9 8 8 9 9 9 9
J2, M5 12 11 12 12 11 12 11 11 12 12
J3, M5 5 6 7 5 6 7 6 6 7 6
J4, M5 1 1 3 3 5 3 3 5 4 1
J5, M5 8 7 9 8 9 9 8 7 8 8
J6, M5 11 12 11 11 12 11 12 12 10 11
J7, M5 2 2 1 1 1 1 1 1 3 3
J8, M5 6 4 5 4 2 5 4 4 1 4
J9, M5 13 15 14 15 15 15 15 15 15 14
J10, M5 15 14 15 13 14 14 14 14 14 15
J11, M5 4 3 4 6 3 4 5 3 2 5
J12, M5 7 8 6 7 7 6 7 8 6 7
J13, M5 10 10 10 10 10 10 10 10 11 10
J14, M5 14 13 13 14 13 13 13 13 13 13
J15, M5 3 5 2 2 4 2 2 2 5 2
J1, M6 5 8 7 7 7 7 7 7 7 7
J2, M6 14 11 13 11 12 12 12 13 13 12
J3, M6 12 14 11 13 14 14 14 14 14 13
J4, M6 8 7 9 9 9 8 8 8 8 8
J5, M6 15 15 15 15 15 15 15 15 15 15
J6, M6 10 13 12 10 11 11 10 12 9 11
J7, M6 6 5 4 5 5 3 4 3 5 6
J8, M6 3 2 2 3 2 5 3 1 2 3
J9, M6 4 6 6 4 3 4 5 5 4 4
J10, M6 7 4 5 6 6 6 6 6 6 5
J11, M6 13 10 10 12 10 10 11 10 11 10
J12, M6 2 1 1 1 1 1 1 4 3 1
J13, M6 1 3 3 2 4 2 2 2 1 2
J14, M6 11 12 14 14 13 13 13 11 12 14
J15, M6 9 9 8 8 8 9 9 9 10 9
J1, M7 7 7 6 7 6 9 8 8 8 7
J2, M7 10 8 10 8 7 8 9 9 9 9
J3, M7 3 4 7 5 5 7 4 4 6 5
J4, M7 11 13 11 11 10 12 13 11 11 11
J5, M7 12 11 12 12 13 13 11 12 14 12
J6, M7 1 1 1 1 1 2 5 1 2 2
J7, M7 8 9 8 10 9 6 7 10 7 10
J8, M7 5 5 4 4 4 3 1 5 1 4
J9, M7 13 15 15 15 15 14 15 15 15 14
J10, M7 4 2 3 3 2 1 3 3 3 1
J11, M7 15 14 14 14 14 15 14 14 13 15
J12, M7 6 6 5 6 8 4 6 6 4 6
J13, M7 9 10 9 9 11 10 10 7 10 8
J14, M7 14 12 13 13 12 11 12 13 12 13
J15, M7 2 3 2 2 3 5 2 2 5 3
J1, M8 10 13 14 11 13 11 10 15 11 12
J2, M8 13 10 11 10 11 9 13 11 12 10
J3, M8 12 14 12 14 12 12 15 12 13 15
J4, M8 3 4 4 3 2 3 3 3 3 4
J5, M8 7 6 6 6 6 4 6 5 7 6
J6, M8 1 1 1 1 1 1 1 1 1 1
J7, M8 6 7 7 8 7 5 7 8 4 9
J8, M8 4 5 3 4 3 6 4 6 2 5
J9, M8 5 3 5 5 5 7 5 4 6 3
J10, M8 9 9 8 7 9 8 11 10 10 11
J11, M8 11 8 9 12 8 13 8 7 9 8
J12, M8 14 12 13 13 15 14 12 13 14 13
J13, M8 2 2 2 2 4 2 2 2 5 2
J14, M8 15 15 15 15 14 15 14 14 15 14
J15, M8 8 11 10 9 10 10 9 9 8 7
113
LA21 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M9 12 14 13 13 13 12 11 13 11 12
J2, M9 7 6 6 6 6 8 7 8 6 7
J3, M9 9 12 10 12 11 11 13 11 12 11
J4, M9 5 5 4 5 5 5 4 5 5 4
J5, M9 1 2 2 1 2 1 1 1 1 1
J6, M9 2 1 1 2 1 2 3 2 3 3
J7, M9 6 7 8 7 7 6 6 7 7 6
J8, M9 15 15 14 15 14 15 15 15 15 15
J9, M9 13 11 12 11 12 14 14 12 14 13
J10, M9 11 9 11 9 9 9 10 10 10 10
J11, M9 8 8 7 8 8 7 8 6 8 8
J12, M9 14 13 15 14 15 13 12 14 13 14
J13, M9 4 4 5 4 4 4 5 4 2 2
J14, M9 3 3 3 3 3 3 2 3 4 5
J15, M9 10 10 9 10 10 10 9 9 9 9
J1, M10 5 9 7 9 7 6 6 6 7 6
J2, M10 7 6 5 4 6 5 5 8 6 5
J3, M10 10 11 10 11 11 11 11 11 10 10
J4, M10 15 13 14 14 13 13 13 14 13 13
J5, M10 2 2 2 2 3 2 1 1 3 2
J6, M10 6 4 4 8 5 7 7 5 5 8
J7, M10 4 5 6 5 4 3 3 4 4 4
J8, M10 14 15 12 13 14 14 14 13 14 14
J9, M10 13 14 15 15 15 15 15 15 15 15
J10, M10 9 7 9 6 8 9 9 9 8 7
J11, M10 8 8 8 7 9 8 8 7 9 9
J12, M10 3 1 1 1 1 1 2 3 2 3
J13, M10 1 3 3 3 2 4 4 2 1 1
J14, M10 11 10 11 10 10 10 10 10 11 11
J15, M10 12 12 13 12 12 12 12 12 12 12
Makespan 1284 1215 1247 1204 1213 1201 1228 1232 1195 1267
Tempo (s) 116,921 127,437 129,781 124,359 114,,156 139,171 141,375 122,687 109,031 120,687
114
LA22 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 11 12 10 12 13 12 13 9 12 12
J2, M1 7 8 9 8 7 8 9 7 9 9
J3, M1 4 3 3 5 5 4 4 3 2 5
J4, M1 14 13 14 13 12 13 14 14 14 14
J5, M1 9 10 11 10 9 9 10 11 8 10
J6, M1 2 2 4 2 2 1 1 1 3 2
J7, M1 8 7 8 7 8 6 7 10 7 4
J8, M1 5 5 6 6 6 7 3 4 6 7
J9, M1 13 14 13 14 14 14 12 13 13 13
J10, M1 12 9 12 11 11 11 11 12 11 11
J11, M1 3 4 5 3 4 3 5 5 5 6
J12, M1 6 6 1 4 1 5 6 6 4 1
J13, M1 10 11 7 9 10 10 8 8 10 8
J14, M1 1 1 2 1 3 2 2 2 1 3
J15, M1 15 15 15 15 15 15 15 15 15 15
J1, M2 11 10 10 11 9 11 12 11 11 11
J2, M2 7 7 7 6 7 7 7 6 8 7
J3, M2 12 14 12 12 13 12 14 12 13 13
J4, M2 14 15 14 13 12 14 15 15 14 14
J5, M2 5 4 5 4 4 5 6 5 4 4
J6, M2 10 9 11 9 11 10 10 9 9 10
J7, M2 15 13 15 15 15 15 13 14 15 15
J8, M2 4 6 6 7 5 2 4 3 6 6
J9, M2 6 5 4 5 6 6 5 7 5 5
J10, M2 13 12 13 14 14 13 11 13 12 12
J11, M2 2 2 3 3 2 1 2 2 2 1
J12, M2 1 3 2 1 1 4 1 1 1 2
J13, M2 8 8 8 8 10 9 8 8 7 8
J14, M2 3 1 1 2 3 3 3 4 3 3
J15, M2 9 11 9 10 8 8 9 10 10 9
J1, M3 6 5 7 5 8 5 6 6 6 6
J2, M3 4 3 4 2 1 2 3 3 5 2
J3, M3 5 2 2 4 4 4 2 4 3 5
J4, M3 2 1 1 1 2 1 1 1 1 1
J5, M3 7 6 8 6 5 7 7 7 4 8
J6, M3 13 13 11 13 14 14 12 12 12 12
J7, M3 12 11 12 10 13 10 11 11 11 11
J8, M3 14 15 14 14 15 15 14 15 15 14
J9, M3 10 10 10 11 10 11 10 10 10 10
J10, M3 1 4 3 3 3 3 5 2 2 4
J11, M3 9 7 9 7 7 8 8 9 8 7
J12, M3 8 8 6 9 9 6 9 8 9 9
J13, M3 11 12 13 12 11 12 13 13 13 13
J14, M3 15 14 15 15 12 13 15 14 14 15
J15, M3 3 9 5 8 6 9 4 5 7 3
J1, M4 11 11 11 11 10 11 11 10 11 11
J2, M4 2 2 3 2 1 1 3 4 1 4
J3, M4 14 12 12 13 13 14 13 13 13 14
J4, M4 1 1 1 1 2 3 1 3 2 1
J5, M4 13 14 15 14 15 13 14 14 15 12
J6, M4 7 7 9 7 8 7 7 7 7 7
J7, M4 4 4 6 4 4 2 4 1 3 2
J8, M4 12 13 13 12 12 12 12 12 12 13
J9, M4 8 8 8 8 9 8 8 9 8 9
J10, M4 3 3 2 3 5 4 6 5 4 5
J11, M4 15 15 14 15 14 15 15 15 14 15
J12, M4 6 6 5 5 3 5 2 2 5 3
J13, M4 5 5 4 6 6 6 5 6 6 6
J14, M4 9 9 10 9 11 9 10 11 9 10
J15, M4 10 10 7 10 7 10 9 8 10 8
115
LA22 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M5 6 3 3 4 6 4 5 7 3 3
J2, M5 7 8 8 6 5 9 4 5 8 9
J3, M5 15 15 14 14 15 15 14 15 15 14
J4, M5 8 5 7 7 7 8 7 10 6 7
J5, M5 1 2 1 1 1 2 3 1 1 2
J6, M5 5 7 9 8 8 5 8 4 7 5
J7, M5 13 12 11 11 13 11 12 12 11 13
J8, M5 2 1 4 5 2 1 1 2 5 6
J9, M5 9 9 6 9 10 7 9 8 9 8
J10, M5 12 11 12 12 11 12 11 11 12 11
J11, M5 4 4 5 3 4 3 6 3 4 4
J12, M5 11 13 13 13 12 13 13 13 13 12
J13, M5 14 14 15 15 14 14 15 14 14 15
J14, M5 10 6 10 10 9 10 10 9 10 10
J15, M5 3 10 2 2 3 6 2 6 2 1
J1, M6 1 2 2 2 2 2 2 2 1 1
J2, M6 8 8 7 11 9 8 9 11 10 8
J3, M6 3 4 4 4 5 4 4 4 4 4
J4, M6 6 5 5 6 4 6 5 6 8 6
J5, M6 10 11 11 9 13 9 10 10 7 9
J6, M6 9 9 9 8 8 10 8 8 9 11
J7, M6 4 3 3 3 3 3 3 3 2 3
J8, M6 5 7 6 7 6 7 6 5 6 5
J9, M6 15 15 14 15 15 15 13 15 15 14
J10, M6 12 10 10 10 10 11 11 12 11 10
J11, M6 11 12 12 12 11 12 12 9 12 12
J12, M6 13 13 15 14 14 13 15 13 14 15
J13, M6 2 1 1 1 1 1 1 1 3 2
J14, M6 7 6 8 5 7 5 7 7 5 7
J15, M6 14 14 13 13 12 14 14 14 13 13
J1, M7 15 13 14 15 14 15 13 14 15 14
J2, M7 9 10 9 9 10 9 10 10 9 9
J3, M7 12 9 12 10 11 11 9 12 11 12
J4, M7 4 3 2 3 4 4 2 6 4 3
J5, M7 1 2 1 2 2 2 3 2 2 4
J6, M7 2 1 3 1 1 1 1 1 1 1
J7, M7 6 4 5 4 3 3 4 3 3 2
J8, M7 7 8 7 8 9 8 8 7 8 7
J9, M7 10 11 10 12 12 12 11 11 12 11
J10, M7 3 5 6 5 5 5 5 4 6 5
J11, M7 8 6 8 7 8 7 7 9 7 10
J12, M7 13 14 13 13 13 13 14 13 14 13
J13, M7 5 7 4 6 6 6 6 5 5 6
J14, M7 14 15 15 14 15 14 15 15 13 15
J15, M7 11 12 11 11 7 10 12 8 10 8
J1, M8 7 3 3 3 6 3 5 5 4 4
J2, M8 15 15 14 14 13 14 15 15 13 15
J3, M8 1 1 1 1 1 1 1 1 1 1
J4, M8 4 4 5 4 4 5 4 7 5 5
J5, M8 8 5 4 5 3 6 6 8 2 7
J6, M8 3 7 7 6 7 4 7 2 6 3
J7, M8 14 13 15 15 15 15 13 13 15 13
J8, M8 5 6 6 7 5 7 3 6 7 6
J9, M8 13 14 13 13 14 13 14 14 14 14
J10, M8 6 9 9 8 9 8 9 4 9 8
J11, M8 10 10 10 11 10 10 11 10 11 11
J12, M8 9 8 8 9 8 9 10 9 8 9
J13, M8 11 11 11 10 11 11 8 11 10 10
J14, M8 2 2 2 2 2 2 2 3 3 2
J15, M8 12 12 12 12 12 12 12 12 12 12
116
LA22 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M9 11 11 11 12 11 15 13 13 15 11
J2, M9 15 15 15 15 14 14 15 15 14 15
J3, M9 1 1 1 1 1 1 1 1 1 2
J4, M9 5 3 5 4 4 6 4 6 4 5
J5, M9 9 9 8 9 7 8 9 11 7 7
J6, M9 4 6 7 6 6 7 6 4 6 6
J7, M9 7 5 6 7 10 4 7 7 9 9
J8, M9 3 2 3 2 3 2 3 2 3 3
J9, M9 6 8 4 5 5 5 5 5 5 4
J10, M9 14 14 13 14 15 13 14 14 13 14
J11, M9 10 10 9 11 9 9 10 9 11 10
J12, M9 8 7 12 8 8 10 11 8 8 8
J13, M9 12 12 10 10 12 11 8 12 10 12
J14, M9 13 13 14 13 13 12 12 10 12 13
J15, M9 2 4 2 3 2 3 2 3 2 1
J1, M10 1 1 1 1 1 1 2 1 1 1
J2, M10 6 7 6 4 4 6 4 4 7 6
J3, M10 5 3 4 5 6 4 5 6 4 5
J4, M10 9 9 9 9 9 10 10 10 10 9
J5, M10 12 14 15 12 15 14 14 15 15 14
J6, M10 15 15 14 15 14 15 15 14 12 15
J7, M10 2 4 3 2 2 2 3 2 3 2
J8, M10 14 12 13 13 11 11 12 13 14 13
J9, M10 4 2 2 3 3 3 1 3 2 3
J10, M10 3 5 5 6 5 5 7 5 6 4
J11, M10 7 6 7 7 8 7 6 8 5 7
J12, M10 8 8 8 8 7 9 8 7 8 8
J13, M10 11 11 10 10 12 12 11 11 11 10
J14, M10 10 10 11 14 10 8 9 9 9 11
J15, M10 13 13 12 11 13 13 13 12 13 12
Makespan 1168 1136 1171 1203 1190 1169 1167 1151 1204 1197
Tempo (s) 110,703 127,937 106,687 111,906 131,031 122,640 118,125 128,921 127,906 127,968
117
LA23 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 12 11 15 12 11 12 9 13 14 13
J2, M1 11 14 11 11 12 11 12 11 12 11
J3, M1 1 1 2 1 1 1 1 1 1 1
J4, M1 14 12 12 14 13 14 14 15 13 14
J5, M1 7 6 6 7 7 5 6 6 6 6
J6, M1 8 9 9 9 8 9 10 8 9 9
J7, M1 3 3 4 3 3 4 3 3 3 3
J8, M1 10 10 10 13 10 10 11 10 11 10
J9, M1 2 2 1 2 2 2 2 2 2 2
J10, M1 9 8 8 8 9 8 8 9 8 7
J11, M1 5 5 5 6 4 6 5 5 5 5
J12, M1 4 4 3 4 5 3 4 4 4 4
J13, M1 6 7 7 5 6 7 7 7 7 8
J14, M1 13 13 13 10 14 13 13 12 10 12
J15, M1 15 15 14 15 15 15 15 14 15 15
J1, M2 8 9 8 9 8 8 8 10 8 8
J2, M2 3 3 2 3 2 3 3 3 3 2
J3, M2 14 15 14 15 14 14 15 14 14 15
J4, M2 13 10 9 13 12 13 13 13 12 13
J5, M2 15 14 15 14 15 15 14 15 15 14
J6, M2 4 5 5 6 5 5 5 5 4 4
J7, M2 7 7 7 7 6 6 6 7 7 6
J8, M2 5 6 6 5 4 7 4 6 5 5
J9, M2 11 12 13 12 13 11 11 12 13 12
J10, M2 1 2 4 2 3 2 2 2 2 3
J11, M2 9 8 10 11 9 10 10 8 9 10
J12, M2 6 4 3 4 7 4 7 4 6 7
J13, M2 12 13 12 8 10 9 9 11 11 9
J14, M2 10 11 11 10 11 12 12 9 10 11
J15, M2 2 1 1 1 1 1 1 1 1 1
J1, M3 7 7 5 7 7 6 7 7 7 7
J2, M3 8 8 9 9 9 8 9 8 9 9
J3, M3 15 14 15 15 15 15 15 14 15 15
J4, M3 4 3 3 5 4 4 2 4 4 3
J5, M3 11 10 11 11 10 11 11 11 12 11
J6, M3 13 15 14 14 13 14 14 15 13 14
J7, M3 9 9 8 8 8 9 8 9 8 8
J8, M3 10 12 10 13 11 12 10 10 10 10
J9, M3 5 6 7 4 5 7 6 6 5 6
J10, M3 1 1 6 1 3 2 3 1 2 1
J11, M3 6 5 4 6 6 5 5 5 6 5
J12, M3 2 4 1 3 2 3 1 2 1 2
J13, M3 14 11 13 10 12 10 12 12 11 12
J14, M3 3 2 2 2 1 1 4 3 3 4
J15, M3 12 13 12 12 14 13 13 13 14 13
J1, M4 6 7 6 7 6 7 6 7 7 7
J2, M4 7 8 7 6 8 6 7 5 8 6
J3, M4 3 4 3 4 3 4 3 3 3 4
J4, M4 1 2 1 2 1 1 2 2 2 2
J5, M4 11 12 12 12 12 13 12 13 11 12
J6, M4 13 13 13 13 15 14 13 14 13 14
J7, M4 9 9 11 9 11 10 10 9 10 11
J8, M4 2 1 2 1 2 2 1 1 1 1
J9, M4 14 14 14 14 13 15 14 12 14 13
J10, M4 12 11 9 11 10 9 11 10 12 10
J11, M4 8 6 8 8 7 8 8 8 6 8
J12, M4 10 10 10 10 9 11 9 11 9 9
J13, M4 15 15 15 15 14 12 15 15 15 15
J14, M4 4 3 4 3 4 3 4 4 4 3
J15, M4 5 5 5 5 5 5 5 6 5 5
118
LA23 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M5 6 6 6 7 6 6 7 7 6 8
J2, M5 3 3 5 4 3 3 3 3 5 3
J3, M5 11 13 12 12 13 11 10 12 12 11
J4, M5 7 8 7 8 7 4 5 6 8 7
J5, M5 2 2 2 2 2 1 2 1 1 1
J6, M5 12 10 9 10 9 9 11 10 10 12
J7, M5 5 5 4 5 5 7 6 5 4 5
J8, M5 10 11 10 11 10 12 12 11 11 10
J9, M5 9 7 8 6 8 8 9 8 9 6
J10, M5 8 9 11 9 11 10 8 9 7 9
J11, M5 13 12 13 13 12 13 14 13 13 13
J12, M5 15 15 15 15 15 15 15 15 14 15
J13, M5 1 1 1 1 1 2 1 2 2 2
J14, M5 4 4 3 3 4 5 4 4 3 4
J15, M5 14 14 14 14 14 14 13 14 15 14
J1, M6 4 5 3 4 3 3 3 4 4 2
J2, M6 7 6 7 8 8 8 8 7 8 8
J3, M6 2 4 4 5 2 2 2 2 2 5
J4, M6 1 1 1 1 1 1 1 1 1 1
J5, M6 11 12 12 13 11 13 13 14 11 12
J6, M6 6 8 5 6 7 7 7 5 5 7
J7, M6 15 14 14 15 15 14 15 13 15 15
J8, M6 5 3 6 2 4 6 5 6 6 4
J9, M6 10 10 10 11 10 10 11 10 12 10
J10, M6 13 11 11 10 12 11 10 12 10 11
J11, M6 8 7 8 7 6 5 6 8 7 6
J12, M6 14 15 15 14 14 15 14 15 13 14
J13, M6 9 9 9 9 9 9 9 9 9 9
J14, M6 3 2 2 3 5 4 4 3 3 3
J15, M6 12 13 13 12 13 12 12 11 14 13
J1, M7 9 9 9 9 9 10 10 9 9 9
J2, M7 1 1 3 1 1 1 1 2 3 1
J3, M7 10 13 11 10 10 9 9 10 10 10
J4, M7 4 4 6 7 4 4 4 6 4 5
J5, M7 3 3 2 2 3 3 3 3 2 3
J6, M7 2 2 1 3 2 2 2 1 1 2
J7, M7 14 14 14 14 14 14 14 13 14 14
J8, M7 13 12 12 13 13 12 13 12 13 12
J9, M7 11 10 10 11 11 11 11 11 11 11
J10, M7 7 6 8 6 8 7 6 5 6 6
J11, M7 15 15 15 15 15 15 15 15 15 15
J12, M7 12 11 13 12 12 13 12 14 12 13
J13, M7 6 7 7 5 6 8 8 8 8 8
J14, M7 5 5 4 4 5 5 5 4 5 4
J15, M7 8 8 5 8 7 6 7 7 7 7
J1, M8 1 1 1 2 1 1 1 2 2 1
J2, M8 11 12 11 11 11 11 11 11 11 11
J3, M8 13 13 13 14 13 12 15 13 14 12
J4, M8 9 10 9 10 10 9 8 10 10 10
J5, M8 5 5 8 7 6 5 7 7 6 7
J6, M8 8 9 7 8 8 8 9 8 8 9
J7, M8 2 2 3 1 3 2 2 1 1 2
J8, M8 15 15 15 15 15 14 14 14 15 14
J9, M8 4 4 4 4 2 6 4 5 3 3
J10, M8 6 3 6 3 7 3 3 3 5 4
J11, M8 10 8 10 9 9 10 10 9 9 8
J12, M8 14 14 14 13 14 15 13 15 13 15
J13, M8 3 7 2 5 4 7 5 4 4 5
J14, M8 12 11 12 12 12 13 12 12 12 13
J15, M8 7 6 5 6 5 4 6 6 7 6
119
LA23 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M9 4 4 3 3 4 3 4 5 5 3
J2, M9 12 11 11 12 12 10 12 10 12 11
J3, M9 3 3 4 5 3 4 3 3 3 5
J4, M9 9 10 10 10 11 8 10 9 10 9
J5, M9 11 12 12 11 9 13 11 13 11 13
J6, M9 8 8 8 9 8 7 8 8 7 8
J7, M9 5 5 5 4 5 5 6 4 4 4
J8, M9 6 9 9 7 7 9 7 6 8 7
J9, M9 7 6 6 6 6 6 5 7 6 6
J10, M9 15 15 15 15 15 15 15 15 15 15
J11, M9 1 1 2 2 1 1 1 2 1 1
J12, M9 10 7 7 8 10 11 9 12 9 10
J13, M9 14 14 14 14 13 12 13 14 14 12
J14, M9 13 13 13 13 14 14 14 11 13 14
J15, M9 2 2 1 1 2 2 2 1 2 2
J1, M10 10 10 11 11 9 11 9 11 11 12
J2, M10 11 11 10 10 11 10 10 10 12 11
J3, M10 4 4 4 5 4 5 4 4 4 4
J4, M10 9 9 7 9 10 9 11 9 8 9
J5, M10 2 2 2 1 1 1 1 1 1 1
J6, M10 13 14 12 14 13 14 12 14 10 10
J7, M10 8 8 8 6 8 8 7 8 9 8
J8, M10 5 5 5 4 5 3 5 5 5 5
J9, M10 12 15 15 13 14 13 14 12 14 13
J10, M10 14 12 14 15 12 15 13 15 13 15
J11, M10 15 13 13 12 15 12 15 13 15 14
J12, M10 3 3 3 3 2 2 3 2 3 3
J13, M10 1 1 1 2 3 4 2 3 2 2
J14, M10 6 6 6 7 6 7 8 6 7 6
J15, M10 7 7 9 8 7 6 6 7 6 7
Makespan 1172 1150 1162 1156 1202 1187 1165 1166 1175 1149
Tempo (s) 123,734 126,921 158,843 113,781 127,640 112,093 103,156 112,875 109,921 120,828
120
LA24 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 5 5 4 4 5 5 3 5 5 4
J2, M1 6 6 6 5 6 6 6 6 6 6
J3, M1 7 7 8 7 8 8 7 7 8 7
J4, M1 9 9 9 9 9 9 9 9 10 8
J5, M1 11 11 11 12 10 10 11 11 9 10
J6, M1 2 4 3 3 1 3 2 2 2 2
J7, M1 12 12 12 11 12 12 10 10 12 12
J8, M1 13 15 14 14 14 13 14 15 14 14
J9, M1 4 2 1 2 4 2 5 3 4 3
J10, M1 3 3 5 6 3 4 4 4 3 5
J11, M1 10 10 10 10 11 11 13 13 11 11
J12, M1 1 1 2 1 2 1 1 1 1 1
J13, M1 14 13 13 13 13 14 12 12 13 13
J14, M1 15 14 15 15 15 15 15 14 15 15
J15, M1 8 8 7 8 7 7 8 8 7 9
J1, M2 10 9 12 11 13 11 12 12 9 11
J2, M2 6 5 5 5 5 5 5 5 5 4
J3, M2 1 1 1 1 1 1 1 1 1 2
J4, M2 3 2 2 2 2 2 2 2 2 1
J5, M2 5 6 6 6 6 6 6 6 6 6
J6, M2 7 7 10 8 9 8 8 7 7 8
J7, M2 4 4 4 4 4 3 4 4 3 5
J8, M2 9 12 8 9 8 10 9 11 13 10
J9, M2 15 14 15 15 15 15 15 15 15 15
J10, M2 8 8 7 7 7 7 7 8 8 7
J11, M2 14 15 13 13 11 12 14 13 11 14
J12, M2 11 10 9 12 12 9 11 9 12 9
J13, M2 2 3 3 3 3 4 3 3 4 3
J14, M2 13 11 11 10 10 13 10 10 10 12
J15, M2 12 13 14 14 14 14 13 14 14 13
J1, M3 9 11 10 10 9 10 10 8 9 8
J2, M3 13 13 13 13 13 14 13 13 13 13
J3, M3 8 8 7 9 10 9 9 10 10 10
J4, M3 14 15 14 14 14 13 15 15 14 14
J5, M3 3 4 4 3 4 2 1 2 3 2
J6, M3 15 14 15 15 15 15 14 14 15 15
J7, M3 2 2 2 2 2 3 2 3 2 3
J8, M3 6 7 6 6 6 6 6 6 6 6
J9, M3 12 10 11 12 11 11 12 11 12 11
J10, M3 11 12 12 11 12 12 11 12 11 12
J11, M3 7 6 8 7 7 7 8 7 7 9
J12, M3 5 5 3 5 5 5 4 4 5 4
J13, M3 10 9 9 8 8 8 7 9 8 7
J14, M3 4 3 5 4 3 4 5 5 4 5
J15, M3 1 1 1 1 1 1 3 1 1 1
J1, M4 15 15 14 14 14 14 13 13 11 15
J2, M4 3 3 4 4 5 4 3 4 4 3
J3, M4 1 1 1 1 1 1 1 1 1 2
J4, M4 12 11 13 11 11 11 11 10 13 10
J5, M4 9 10 9 8 9 9 9 9 8 8
J6, M4 14 13 15 13 13 13 14 14 14 13
J7, M4 13 14 12 15 15 15 15 15 15 14
J8, M4 6 6 7 7 6 6 7 6 7 7
J9, M4 8 9 8 10 10 8 8 8 9 9
J10, M4 5 5 6 6 3 5 5 5 5 5
J11, M4 4 2 3 3 4 3 4 3 3 4
J12, M4 2 4 2 2 2 2 2 2 2 1
J13, M4 7 7 5 5 7 7 6 7 6 6
J14, M4 10 8 10 9 8 10 10 11 10 12
J15, M4 11 12 11 12 12 12 12 12 12 11
121
LA24 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M5 9 6 6 6 6 6 7 7 8 5
J2, M5 8 10 7 9 10 10 8 8 6 7
J3, M5 5 7 8 8 4 7 6 6 7 6
J4, M5 4 5 3 4 5 3 4 5 4 2
J5, M5 11 14 14 12 12 12 15 15 12 13
J6, M5 3 3 4 3 2 4 1 2 3 3
J7, M5 10 9 9 7 7 9 10 9 9 10
J8, M5 7 8 10 10 9 8 9 10 10 8
J9, M5 2 2 2 1 3 2 3 3 2 1
J10, M5 12 11 12 11 11 11 11 11 11 11
J11, M5 6 4 5 5 8 5 5 4 5 9
J12, M5 14 12 11 15 15 13 12 12 13 14
J13, M5 15 15 15 13 14 15 14 13 14 15
J14, M5 1 1 1 2 1 1 2 1 1 4
J15, M5 13 13 13 14 13 14 13 14 15 12
J1, M6 12 12 11 12 12 12 12 11 12 12
J2, M6 10 11 12 10 11 11 11 9 9 10
J3, M6 2 1 1 1 2 1 1 2 2 2
J4, M6 9 9 8 9 10 10 7 10 11 7
J5, M6 3 7 4 6 5 3 4 6 5 3
J6, M6 6 8 7 3 7 6 8 5 6 8
J7, M6 14 14 14 15 15 13 13 14 15 13
J8, M6 4 3 3 4 4 5 3 3 4 4
J9, M6 7 6 5 5 6 7 6 7 8 6
J10, M6 13 13 13 13 13 14 14 13 13 14
J11, M6 8 5 9 7 9 8 9 8 7 11
J12, M6 11 10 10 11 8 9 10 12 10 9
J13, M6 15 15 15 14 14 15 15 15 14 15
J14, M6 5 4 6 8 3 4 5 4 3 5
J15, M6 1 2 2 2 1 2 2 1 1 1
J1, M7 3 3 3 3 3 4 3 3 3 3
J2, M7 1 1 2 1 2 1 2 1 2 1
J3, M7 11 9 10 10 10 10 10 10 11 11
J4, M7 5 5 4 4 5 3 4 5 4 4
J5, M7 8 8 7 7 7 7 7 7 7 7
J6, M7 12 14 13 13 13 12 13 11 12 13
J7, M7 2 2 1 2 1 2 1 2 1 2
J8, M7 15 15 15 15 15 15 15 15 15 15
J9, M7 14 12 14 12 12 14 14 14 14 14
J10, M7 9 10 8 8 9 8 8 9 10 8
J11, M7 7 7 9 9 8 9 9 8 9 9
J12, M7 13 13 12 14 14 13 12 13 13 12
J13, M7 6 6 5 5 6 6 6 6 6 6
J14, M7 4 4 6 6 4 5 5 4 5 5
J15, M7 10 11 11 11 11 11 11 12 8 10
J1, M8 1 1 1 1 2 3 1 2 2 3
J2, M8 13 12 13 14 12 13 14 12 13 13
J3, M8 15 14 15 15 15 15 13 15 12 14
J4, M8 5 5 4 3 5 4 4 5 4 2
J5, M8 2 4 3 4 1 1 2 1 1 1
J6, M8 10 11 11 11 11 10 11 9 11 11
J7, M8 9 9 9 8 9 9 8 7 8 9
J8, M8 4 3 5 5 4 5 5 4 5 5
J9, M8 7 8 6 7 7 7 6 8 7 7
J10, M8 14 15 14 13 14 14 15 14 15 15
J11, M8 3 2 2 2 3 2 3 3 3 4
J12, M8 6 6 7 6 6 6 7 6 6 6
J13, M8 11 10 10 10 10 11 10 10 10 10
J14, M8 8 7 8 9 8 8 9 11 9 8
J15, M8 12 13 12 12 13 12 12 13 14 12
122
LA24 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M9 10 9 10 10 8 9 10 9 10 10
J2, M9 3 3 3 3 4 5 3 4 4 2
J3, M9 13 14 13 13 13 13 13 13 13 13
J4, M9 11 12 14 12 12 11 12 12 12 11
J5, M9 4 5 5 5 5 3 5 3 5 3
J6, M9 1 2 1 2 1 2 1 1 1 1
J7, M9 5 4 4 4 3 4 4 5 3 5
J8, M9 2 1 2 1 2 1 2 2 2 4
J9, M9 14 13 12 14 14 14 14 14 14 14
J10, M9 7 8 7 7 9 8 7 7 7 9
J11, M9 15 15 15 15 15 15 15 15 15 15
J12, M9 8 10 8 8 7 7 9 11 8 7
J13, M9 12 11 11 11 11 12 11 10 11 12
J14, M9 9 7 9 9 10 10 8 8 9 8
J15, M9 6 6 6 6 6 6 6 6 6 6
J1, M10 3 3 2 1 3 2 3 2 3 3
J2, M10 8 9 10 9 9 9 10 10 10 10
J3, M10 13 14 12 13 14 14 11 13 12 14
J4, M10 14 11 14 12 13 12 12 12 14 12
J5, M10 12 13 13 14 12 13 14 15 13 13
J6, M10 6 7 7 7 7 7 7 7 7 8
J7, M10 7 6 6 6 6 6 6 6 6 6
J8, M10 9 8 8 10 10 8 8 8 8 7
J9, M10 5 5 3 5 5 5 5 4 5 5
J10, M10 2 1 5 3 1 3 1 3 1 1
J11, M10 10 12 11 11 11 11 13 11 11 11
J12, M10 11 10 9 8 8 10 9 9 9 9
J13, M10 1 2 1 2 2 1 2 1 2 2
J14, M10 15 15 15 15 15 15 15 14 15 15
J15, M10 4 4 4 4 4 4 4 5 4 4
Makespan 1133 1118 1133 1113 1108 1146 1112 1151 1155 1114
Tempo (s) 100,046 114,812 125,921 106,281 109,656 104,421 102,343 121,640 98,546 109,156
123
LA25 Rodada
1 Rodada
2 Rodada
3 Rodada
4 Rodada
5 Rodada
6 Rodada
7 Rodada
8 Rodada
9 Rodada
10
J1, M1 6 6 6 6 6 6 6 6 6 6
J2, M1 9 7 7 8 7 8 8 8 8 7
J3, M1 2 1 2 2 4 2 2 3 2 1
J4, M1 3 3 3 4 2 3 4 1 3 3
J5, M1 14 14 14 14 15 15 15 13 13 15
J6, M1 4 4 5 3 3 4 3 4 4 4
J7, M1 1 2 1 1 1 1 1 2 1 2
J8, M1 5 5 4 5 8 5 7 5 5 5
J9, M1 11 12 11 11 12 12 12 12 12 12
J10, M1 8 8 8 9 5 7 5 7 7 8
J11, M1 10 9 10 7 10 11 11 9 10 10
J12, M1 7 10 9 10 9 10 9 10 9 11
J13, M1 12 11 12 12 11 9 10 11 11 9
J14, M1 13 15 15 15 13 13 14 14 14 14
J15, M1 15 13 13 13 14 14 13 15 15 13
J1, M2 8 8 8 8 9 9 9 11 11 10
J2, M2 10 9 9 9 10 8 10 8 8 8
J3, M2 3 2 2 2 3 2 2 2 1 1
J4, M2 2 3 1 4 2 3 3 1 2 2
J5, M2 9 10 10 10 8 11 7 9 9 9
J6, M2 12 12 12 13 14 14 13 15 12 12
J7, M2 15 13 14 14 11 13 14 14 15 13
J8, M2 11 11 11 11 12 10 11 10 10 11
J9, M2 4 6 6 5 6 5 4 4 6 4
J10, M2 13 14 13 12 13 12 12 12 13 14
J11, M2 14 15 15 15 15 15 15 13 14 15
J12, M2 1 1 3 1 1 1 1 3 4 3
J13, M2 6 5 5 7 4 4 5 5 5 6
J14, M2 7 7 7 6 7 7 8 7 7 7
J15, M2 5 4 4 3 5 6 6 6 3 5
J1, M3 9 9 9 9 9 9 9 9 9 9
J2, M3 6 6 6 7 7 7 6 5 6 6
J3, M3 15 15 15 15 14 15 15 14 15 15
J4, M3 2 1 1 4 3 2 2 1 1 2
J5, M3 5 5 4 5 5 5 4 7 8 3
J6, M3 4 4 5 3 4 4 5 4 3 5
J7, M3 7 7 7 6 6 6 7 6 5 7
J8, M3 10 11 10 10 12 11 11 10 10 10
J9, M3 1 2 3 2 1 3 1 3 4 1
J10, M3 12 13 11 13 11 12 12 12 12 11
J11, M3 14 14 13 12 13 13 14 13 13 13
J12, M3 13 12 14 14 15 14 13 15 14 14
J13, M3 3 3 2 1 2 1 3 2 2 4
J14, M3 8 8 8 8 8 8 8 8 7 8
J15, M3 11 10 12 11 10 10 10 11 11 12
J1, M4 6 5 4 5 5 2 5 4 3 6
J2, M4 3 3 2 2 2 4 3 2 2 2
J3, M4 10 11 10 10 9 12 9 10 10 10
J4, M4 13 13 13 14 15 14 15 12 13 12
J5, M4 4 4 5 6 4 6 4 6 7 4
J6, M4 8 9 8 9 8 8 8 8 8 8
J7, M4 5 6 6 4 6 5 6 5 5 5
J8, M4 2 1 1 1 1 1 1 1 1 1
J9, M4 1 2 3 3 3 3 2 3 4 3
J10, M4 12 14 11 11 12 11 13 13 14 14
J11, M4 9 8 9 7 10 9 11 9 9 9
J12, M4 11 10 12 12 11 10 12 14 11 11
J13, M4 14 12 14 13 13 13 10 11 12 13
J14, M4 15 15 15 15 14 15 14 15 15 15
J15, M4 7 7 7 8 7 7 7 7 6 7
124
LA25 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M5 2 1 2 2 1 1 3 2 2 3
J2, M5 5 6 5 5 5 8 5 5 5 5
J3, M5 8 4 8 6 6 6 8 6 6 8
J4, M5 7 9 7 8 8 7 9 7 7 6
J5, M5 10 8 12 11 10 10 6 11 13 9
J6, M5 13 13 13 12 13 14 13 14 12 13
J7, M5 9 10 9 9 9 9 10 9 9 11
J8, M5 12 14 14 13 14 13 14 12 14 12
J9, M5 4 2 3 3 2 3 2 3 3 4
J10, M5 3 5 4 4 4 4 4 4 4 2
J11, M5 6 7 6 7 7 5 7 8 8 7
J12, M5 11 12 11 10 11 12 12 13 10 14
J13, M5 14 11 10 14 12 11 11 10 11 10
J14, M5 15 15 15 15 15 15 15 15 15 15
J15, M5 1 3 1 1 3 2 1 1 1 1
J1, M6 8 8 7 8 9 8 8 8 8 8
J2, M6 2 1 1 2 1 2 2 1 1 1
J3, M6 11 11 10 12 10 11 11 11 11 11
J4, M6 3 3 2 3 3 3 3 2 4 2
J5, M6 13 14 13 11 11 12 13 13 13 13
J6, M6 7 6 6 7 7 5 6 4 6 6
J7, M6 4 4 4 4 4 4 4 5 3 5
J8, M6 10 10 11 10 12 10 10 9 10 10
J9, M6 12 12 12 13 13 14 12 12 12 12
J10, M6 9 9 8 9 8 9 9 10 9 9
J11, M6 6 7 9 6 6 7 7 7 7 7
J12, M6 1 2 3 1 2 1 1 3 2 3
J13, M6 15 15 15 15 15 15 15 14 15 15
J14, M6 5 5 5 5 5 6 5 6 5 4
J15, M6 14 13 14 14 14 13 14 15 14 14
J1, M7 15 14 13 15 14 14 14 14 15 15
J2, M7 9 7 7 9 8 9 8 7 8 7
J3, M7 6 4 5 6 7 5 7 5 6 4
J4, M7 13 13 15 14 15 13 15 13 14 14
J5, M7 2 1 2 1 3 1 2 3 1 1
J6, M7 11 10 10 12 12 10 11 12 11 11
J7, M7 12 12 11 11 11 11 12 11 12 10
J8, M7 14 15 14 13 13 15 13 15 13 13
J9, M7 5 6 6 5 4 7 5 4 5 6
J10, M7 8 8 8 8 6 6 9 9 9 8
J11, M7 4 2 3 2 2 4 4 6 2 2
J12, M7 7 9 9 7 10 8 6 8 7 9
J13, M7 3 5 4 4 5 2 3 1 4 5
J14, M7 1 3 1 3 1 3 1 2 3 3
J15, M7 10 11 12 10 9 12 10 10 10 12
J1, M8 11 10 10 10 12 12 11 12 13 12
J2, M8 14 13 13 13 13 11 13 13 12 11
J3, M8 6 4 8 6 8 8 8 9 8 8
J4, M8 8 8 7 8 7 7 9 7 7 7
J5, M8 10 11 11 11 9 10 7 10 10 10
J6, M8 3 7 5 3 3 5 4 2 4 4
J7, M8 12 12 12 12 11 13 12 11 11 13
J8, M8 2 2 2 4 1 2 1 5 3 3
J9, M8 15 14 15 15 15 15 15 15 14 15
J10, M8 1 1 1 2 2 1 2 1 1 1
J11, M8 4 5 4 5 4 3 5 6 5 6
J12, M8 13 15 14 14 14 14 14 14 15 14
J13, M8 7 6 6 7 5 4 6 3 6 5
J14, M8 9 9 9 9 10 9 10 8 9 9
J15, M8 5 3 3 1 6 6 3 4 2 2
125
LA25 (cont.)
Rodada 1
Rodada 2
Rodada 3
Rodada 4
Rodada 5
Rodada 6
Rodada 7
Rodada 8
Rodada 9
Rodada 10
J1, M9 3 4 1 2 1 1 2 4 1 3
J2, M9 15 15 15 15 15 13 15 15 15 15
J3, M9 12 13 14 14 12 14 14 13 14 13
J4, M9 11 11 12 12 14 12 12 12 12 12
J5, M9 7 7 7 8 7 7 7 7 9 5
J6, M9 2 1 2 3 2 2 3 1 3 1
J7, M9 9 10 9 10 10 11 10 11 10 10
J8, M9 14 14 13 13 13 15 13 14 13 14
J9, M9 10 12 11 9 9 10 11 9 8 11
J10, M9 4 3 5 6 5 4 6 3 4 2
J11, M9 1 2 3 1 3 3 1 2 2 4
J12, M9 5 6 6 4 4 5 4 6 6 7
J13, M9 13 9 10 11 11 9 9 10 11 9
J14, M9 8 8 8 7 8 8 8 8 7 8
J15, M9 6 5 4 5 6 6 5 5 5 6
J1, M10 7 7 7 7 7 7 7 7 9 7
J2, M10 4 4 4 4 4 5 4 4 4 4
J3, M10 1 1 1 1 1 1 1 1 1 1
J4, M10 6 6 6 5 5 4 5 5 6 5
J5, M10 14 14 14 14 14 15 15 13 14 15
J6, M10 10 9 10 11 11 11 10 14 8 9
J7, M10 5 5 5 6 6 6 6 6 5 6
J8, M10 3 2 2 2 2 2 2 2 2 2
J9, M10 2 3 3 3 3 3 3 3 3 3
J10, M10 9 11 8 9 9 8 9 10 11 10
J11, M10 12 12 12 12 12 12 12 11 12 12
J12, M10 15 15 15 15 15 14 14 15 15 14
J13, M10 13 13 13 13 13 13 13 12 13 13
J14, M10 8 8 9 8 8 9 8 9 7 8
J15, M10 11 10 11 10 10 10 11 8 10 11
Makespan 1179 1155 1142 1150 1150 1142 1156 1141 1122 1147
Tempo (s) 119,031 146,734 135,750 134,156 119,875 123,437 132,125 124,015 129,218 129,312
126
ANEXO A – Tabela utilizada como referência comparativa entre a abordagem proposta e as representações usuais (ABDELMAGUID, 2010)