UNIVERSIDADE ESTADUAL DE CAMPINAS Faculdade de Ciências Aplicadas GUSTAVO CASARINI LANDGRAF OTIMIZAÇÃO E SIMULAÇÃO DISCRETA EM LOGÍSTICA: UM ESTUDO NA ÁREA DE PICKING LOGISTIC OPTIMIZATION AND DISCRETE SIMULATION: A STUDY IN THE PICKING AREA Limeira 2016
137
Embed
UNIVERSIDADE ESTADUAL DE CAMPINAS Faculdade de Ciências ...
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
UNIVERSIDADE ESTADUAL DE CAMPINAS Faculdade de Ciências Aplicadas
GUSTAVO CASARINI LANDGRAF
OTIMIZAÇÃO E SIMULAÇÃO DISCRETA EM LOGÍSTICA: UM ESTUDO NA ÁREA
DE PICKING
LOGISTIC OPTIMIZATION AND DISCRETE SIMULATION: A STUDY IN THE
PICKING AREA
Limeira 2016
1
GUSTAVO CASARINI LANDGRAF
OTIMIZAÇÃO E SIMULAÇÃO DISCRETA EM LOGÍSTICA: UM ESTUDO NA ÁREA
DE PICKING
LOGISTIC OPTIMIZATION AND DISCRETE SIMULATION: A STUDY IN THE
PICKING AREA
Dissertação apresentada à Faculdade de Ciências
Aplicadas da Universidade Estadual de Campinas
como parte dos requisitos exigidos para obtenção
do título de Mestre em Engenharia de Produção e
de Manufatura, na área de concentração de
Pesquisa Operacional e Gestão de Processos.
Orientador: Prof. Dr. Cristiano Torezzan
Co-orientador: Prof. Dr. Alessandro Lucas da Silva
ESTE EXEMPLAR CORRESPONDE À VERSÃO
FINAL DA DISSERTAÇÃO DEFENDIDA PELO
ALUNO GUSTAVO CASARINI LANDGRAF E
ORIENTADO PELOS PROFS. DR. CRISTIANO
TOREZZAN E ALESSANDRO LUCAS DA SILVA
________________________ Assinatura
Limeira 2016
2
Agência(s) de fomento e nº(s) de processo(s): Não se aplica.
Ficha catalográfica
Universidade Estadual de Campinas
Biblioteca da Faculdade de Ciências Aplicadas
Renata Eleuterio da Silva - CRB 8/9281
Landgraf, Gustavo Casarini, 1978-
L234o LanOtimização e simulação discreta em logística : um estudo na área de picking / Gustavo Casarini Landgraf. – Limeira, SP : [s.n.], 2016.
LanOrientador: Cristiano Torezzan.
LanCoorientador: Alessandro Lucas da Silva. LanDissertação (mestrado) – Universidade Estadual de Campinas, Faculdade de
Ciências Aplicadas.
Lan1. Layout. 2. Centros de distribuição. 3. Otimização. 4. Simulação. 5. Metaheurística. I. Torezzan, Cristiano,1976-. II. Silva, Alessandro Lucas da. III. Universidade Estadual de Campinas. Faculdade de Ciências Aplicadas. IV. Título.
Informações para Biblioteca Digital
Título em outro idioma: Logistic optimization and discrete simulation : a study in the picking area
Palavras-chave em inglês: Layout Distribution centers
Optimization
Simulation
Metaheuristic
Área de concentração: Pesquisa Operacional e Gestão de Processos Titulação: Mestre em Engenharia de Produção e de Manufatura Banca examinadora: Cristiano Torrezan
Anibal Tavares de Azevedo
Marcos Ricardo Rosa Georges
Data de defesa: 25-08-2016
Programa de Pós-Graduação: Engenharia de Produção e de Manufatura
3
COMISSÃO JULGADORA – DISSERTAÇÃO DE MESTRADO
Candidato: Gustavo Casarini Landgraf.
Data da defesa: 25 de agosto de 2016.
Título da dissertação: Otimização e simulação discreta em logística: um estudo na
área de picking
Prof. Dr. Cristiano Torezzan (Orientador, FCA/UNICAMP)
Prof. Dr. Anibal Tavares de Azevedo (FCA/UNICAMP)
Prof. Dr. Marcos Ricardo Rosa Georges (PUC- Campinas)
A ata de defesa, com as respectivas assinaturas dos membros da Comissão
Julgadora, encontra-se no processo de vida acadêmica do aluno.
4
Dedico este trabalho aos meus pais, irmã, esposa e ao meu filho que acreditaram e me apoiaram em todos os momentos.
5
AGRADECIMENTOS
Agradeço a Deus por me dar saúde e forças para sempre seguir em frente.
Agradeço ao professor Cristiano Torezzan pela orientação e motivação
para levar esse trabalho até o fim.
Agradeço ao professor Alessandro Silva pelos comentários e ajuda no tema
desse trabalho.
Agradeço a banca pelos valiosos comentários e direcionamentos
fornecidos durante a fase de qualificação desse trabalho.
Agradeço a minha esposa, Leilane, pelo suporte emocional, nos afazeres
de casa e com o nosso filho Lucas para que eu pudesse dedicar tempo para esse
trabalho.
Agradeço ao meu filho Lucas por me dar energia para continuar escrevendo
quando sentava comigo para aprender as “letrinhas” que eu digitava no computador e
que pouco a pouco iam construindo esse trabalho.
Agradeço à minha mãe, Neusa, e a minha irmã, Patrícia, que sempre me
motivaram a escrever essa dissertação e que me ajudaram com correções em
algumas versões desse trabalho.
Agradeço a empresa Grupo Engenho e em especial ao Marcos pelas
discussões e apoio no desenvolvimento das ideias.
Agradeço a empresa que cedeu os dados e permitiu o desenvolvimento e
a aplicação método.
Agradeço a todos os amigos e colegas que, de uma forma ou outra,
contribuíram com ideias, técnicas, orientações e palavras de motivação para que eu
pudesse desenvolver esse trabalho.
6
RESUMO
Os Centros de Distribuição (CDs) têm papel central nas modernas Redes de
Suprimentos (Supply Chain). Em função disso, muitas empresas têm buscado reduzir
custos e aumentar a produtividade nos seus CDs. A área de montagem das ordens
de venda (picking area) tem sido identificada como a área que mais demanda mão de
obra e também uma das responsáveis pelo nível de satisfação dos clientes. Neste
trabalho propõe-se um método para alteração do leiaute da área de picking de um CD,
combinado com uma metaheurística de otimização, baseada em Simulated Annealing,
para o reposicionamento dos produtos no novo leiaute gerado, buscando a redução
da distância média percorrida pelos separadores. Para validar a solução gerada e
dimensionar o número de separadores propõe-se a utilização de um modelo de
simulação discreta para simular o processo de montagem de ordens nos CDs. O
método desenvolvido neste trabalho foi aplicado em 37 CDs do ramo de bebidas no
Brasil e os resultados obtidos indicaram reduções entre 7% e 40% na distância total
percorrida pelos separadores e no tempo para a montagem das ordens, permitindo
aumentar em até 35% a eficiência operacional dos CDs.
Palavras-chave: Leiautes; Centros de distribuição; Otimização; Simulação; Metaheurística.
7
ABSTRACT
The Distribution Centers (DCs) play a key role in modern Supply Networks
(Supply Chain). Because of this, many companies have sought to reduce costs and
increase productivity in their DCs. The sales orders assembly area (picking area) has
been identified as the area which most demands labor-intensive work and also one of
the responsible for the level of Customer satisfaction. In this dissertation we propose
a method for changing the layout of the picking area of a DC, combined with an
optimization metaheuristic, based on Simulated Annealing, for the repositioning of the
products in the new layout generated, seeking to reduce the average distance traveled
by the labors. To validate the solution generated and to calculate the number of labors
it is proposed the use of a discrete simulation model to simulate the sales order
assembly process in the DC. The method developed in this study was applied to 37
beverage branch DCs in Brazil and the results indicated reductions of between 7% and
40% in the total distance traveled by the labors and also the time for the sales orders
assembly, which increased up to 35% the operating efficiency of the DCs.
Keywords: Layout; Distribution Centers; Optimization; Simulation; Metaheuristic.
8
LISTA DE ILUSTRAÇÕES
Figura 1 – A cadeia de suprimentos e os principais processos nos Centros de Distribuição. ................................. 20
Figura 2 - Os quatro principais processos operacionais em um Centro de Distribuição. ....................................... 21
Figura 3 - Distribuição dos custos operacionais em um Centro de Distribuição. ................................................... 21
Figura 4 - Atividades que compõe o processo de montagem de ordens e seus respectivos impactos em
porcentagem do tempo para montar uma ordem. ............................................................................................... 23
Figura 5 - Visão espacial de um leiaute de CD. ...................................................................................................... 24
Figura 6 - Detalhe da área de picking. ................................................................................................................... 25
Figura 7 - Alocação aleatória dos SKUs. ................................................................................................................ 26
Figura 8 - O local disponível mais perto (Closest open location storage). ............................................................. 27
Figura 9 – Fixo ou dedicado ................................................................................................................................... 28
Figura 10 – Full turnover ....................................................................................................................................... 28
Figura 11 – Baseado em famílias. .......................................................................................................................... 29
Figura 12 - Leiaute tipo blocado. ........................................................................................................................... 39
Figura 13 - Leiautes tradicionais para sistema de picking manual. a) Leiaute com um bloco e b) Leiaute com dois
Figura 14 - Leiaute em formato "U". ..................................................................................................................... 42
Figura 15 - Leiaute com corredores transversais. .................................................................................................. 43
Figura 16 - Leiaute com corredores em ângulos.................................................................................................... 44
Figura 17 - Desenho esquemático das células fractais no leiaute. ........................................................................ 45
Figura 18 - Exemplo de um leiaute fractal aplicado no estoque da área de montagem de um CD....................... 46
Figura 19 - Posicionamento não coincidente, centralizado e opostos dos pontos de recebimento e expedição no
leiaute da área de picking. .................................................................................................................................... 47
Figura 20 - Posicionamento coincidente e centralizado dos pontos de recebimento e expedição no leiaute da
área de picking ...................................................................................................................................................... 48
Figura 21 - Exemplo de uma rota de montagem usando caminhos em formato de "S". ...................................... 50
Figura 22 - Métodos clássicos de otimização ........................................................................................................ 56
Figura 23 - Exemplo de busca do menor caminho entre dois pontos. ................................................................... 57
Figura 24 – a) Exemplo de um caminho, com a menor distância entre os nós de “Início” e “Fim”, encontrado
utilizando o algoritmo A*. b) Vértices dos quadrados da malha. .......................................................................... 58
Figura 25 - Nós pesquisados pelo método de cálculo da distância Manhattan até atingir o ponto “Fim”. .......... 61
Figura 26 - Nós pesquisados pelo método de cálculo da distância Euclidiana até atingir o ponto “Fim”. ............ 62
Figura 27 - Pseudocódigo do algoritmo A* ........................................................................................................... 63
Figura 28 - Simulated Annealing escapando do ótimo local. ................................................................................ 67
Figura 29 - Existência de duas sub-rotas entre as 7 cidades. ................................................................................ 71
Figura 30 - Exemplo de uma solução do TSP para percorrer cidades do continente africano. .............................. 72
9
Figura 31 - Fluxograma do método desenvolvido - FPAI. ...................................................................................... 77
Figura 32 - Leiaute inicial da área de picking. ....................................................................................................... 79
Figura 33 - Detalhe das posições de palete com produtos na área de picking ...................................................... 80
Figura 34 - Atividades para a realização do processo de picking. ......................................................................... 82
Figura 35 – Exemplo de um palete montado com cinco SKUs diferentes. ............................................................. 83
Figura 36 - Posicionamento dos SKUs no leiaute inicial. ....................................................................................... 85
Figura 37 - Perfil da demanda de paletes montados por dia. ............................................................................... 86
Figura 38 - Exemplo de tempos para coletar SKUs da família 1002. ..................................................................... 93
Figura 39 - Leiaute com um bloco, 12 corredores e pontos de E/S centrais. ......................................................... 94
Figura 40 - Leiaute com 2 fractais, resultado da aplicação do método para novos desenhos de leiaute. ............ 95
Figura 41 – O SKPA, em 4 camadas, para resolver o problema de minimizar a distância percorrida pelos
separadores por meio do reposicionamento dos SKUs. ......................................................................................... 97
Figura 42 - Fluxograma do método SKPA. ............................................................................................................. 98
Figura 43 - Perfil da quantidade de SKUs por palete montado. .......................................................................... 102
Figura 44 - Resultados da aplicação do SKPA no CD Nordeste com leiaute na situação inicial. ......................... 105
Figura 45 - As informações necessárias para a construção do modelo de simulação. ........................................ 107
Figura 46 - Modelo de simulação desenvolvido e aplicado ao leiaute inicial do CD Nordeste. ........................... 108
Figura 47 - Modelo de simulação da operação de montagem de ordem no software FlexSim®. ........................ 110
Figura 48 - Tempos das atividades de montagem de ordens para o cenário inicial. ........................................... 112
Figura 49 - Tempos das atividades de montagem de ordens para o cenário inicial após aplicação dos módulos 2
e 3 do FPAI. .......................................................................................................................................................... 113
Figura 50 - Resultados da aplicação do SKPA no CD Nordeste com leiaute fractal. ............................................ 115
Figura 51 - Tempos das atividades de montagem de ordens para o cenário com o leiaute fractal após do FPAI.
Tabela 1 - Comparação entre as estratégias de montagem de ordem. ................................................................ 34
Tabela 2 - Efeito do número de cidades no tamanho do espaço de busca ............................................................ 71
Tabela 3 - Quantidade de SKUs e de paletes por família. ...................................................................................... 87
Tabela 4 - Quantidade de paletes por SKU na área de picking .............................................................................. 88
Tabela 5 - Quantidade de posições de coleta para cada SKU. ............................................................................... 88
Tabela 6 - Os SKUs que representam 80% da demanda. ....................................................................................... 89
Tabela 7 - Curvas estatísticas resultantes da coleta de dados para as atividades independentes da quantidade
de produtos coletados. .......................................................................................................................................... 91
Tabela 8 - Exemplo da construção das curvas dos tempos de coleta para subfamília 1002, pertencente à família
Essa formulação busca encontrar o mínimo valor de ����, �, ��, variando o
número de corredores, �, o tamanho dos corredores, �, de forma que o tamanho total
dos corredores verticais seja igual a I e que os pontos de entrada e saída desse
leiaute seja no mesmo ponto e localizado no corredor frontal.
3.4.2 Formulação matemática para leiautes com dois ou mais blocos
Nesta formulação proposta por Roodbergen et al. (2008), a distância média
percorrida, dada por ����, S, �, ��, é calculada por propriedades estatísticas utilizando
a roteirização em forma de “S”. O modelo matemático é análogo ao anterior, onde as
variáveis de decisão são: número de corredores, �, corredores verticais de tamanho,
�, agora considerando uma variável S para o número de blocos de leiaute. Dessa forma
o problema pode ser formulado como:
Min ����, S, H, ��
Sujeito a:
�. H � I
� ≥ 1 �4�A64GJ�
S ≥ 1 �4�A64GJ�
H ≥ 1.0
1 ≤ � ≤ �
3.4.3 Comparação entre os resultados da simulação e da formulação
matemática
Além de resolver os problemas de otimização apresentados nas seções
3.4.1 e 3.4.2, Roodbergen et al. (2008) propuseram modelos de simulação para
calcular a distância média percorrida pelo separador e, comparar com os resultados
obtidos dos valores das distâncias médias percorridas pelos modelos analíticos.
54
Nessas simulações foram variadas as quantidades de corredores verticais,
quantidade de corredores transversais e número de blocos de leiaute. Foram tratados
como constante a largura dos corredores, o número de locais de picking para todas
as rotas e a quantidade de ordens para serem coletadas.
Os resultados das diferenças foram:
• Leiaute de um bloco: a diferença absoluta ficou entre 0,03 e 1.21%.
• Leiaute de dois ou mais blocos: a diferença absoluta ficou entre 0,01%
e 3,39%.
Os resultados obtidos das diferenças entre os modelos analíticos e o
modelo de simulação foram, em porcentagem, muito pequenos sendo que no pior
caso foi obtido uma diferença na ordem de 3%. Esses resultados, sugerem que os
modelos criados em simuladores podem ser utilizados no cálculo da distância média
percorrida sem que seja necessária toda uma formulação matemática algébrica.
Nesta dissertação é utilizado um método de otimização dos leiautes da área
de picking em CDs, baseado no método de Roodbergen et al. (2008) com derivações
do conceito de leiaute fractal apresentado na seção 3.1.5. Esse método é apresentado
no Capítulo 5.
No próximo capítulo são apresentados algoritmos, metaheurística e a
técnica de simulação, que foram a base para posicionar de forma otimizada os SKUs,
nos desenhos de leiaute.
55
4 A PESQUISA OPERACIONAL
Segundo a SOBRAPO a Pesquisa Operacional (PO) é:
Uma ciência aplicada voltada para a resolução de problemas reais. Tendo como foco a tomada de decisões, aplica conceitos e métodos de outras áreas científicas para concepção, planejamento ou operação de sistemas para atingir seu objetivo. Através de desenvolvimentos de base quantitativa, visa também introduzir elementos de objetividade e racionalidade nos processos decisórios, sem descuidar, no entanto, dos elementos subjetivos e do enquadramento organizacional que caracterizam os problemas.
O impulso para o desenvolvimento da PO aconteceu durante a II Guerra
Mundial, com a necessidade de se resolver problemas de logística em operações
militares. Já no pós-guerra, estas técnicas desenvolvidas foram absorvidas pelas
indústrias e a PO se popularizou como ferramenta de tomada de decisão (Colin, 2011).
Existem várias maneiras para se classificar os diversos ramos de pesquisa
da PO. Segundo Rao (2009) são três grandes ramos: as técnicas de programação
matemática, processos estocásticos e métodos estatísticos.
Na programação matemática, onde os problemas de otimização são
classificados, com base na natureza da função-objetivo e suas restrições, encontram-
se: a programação linear e não linear, os métodos baseados em redes, a teoria dos
jogos, os algoritmos genéticos, redes neurais, o Simulated Annealing dentre outros.
Nos processos estocásticos encontram-se: as cadeias de Markov, a teoria
das filas e os métodos de simulação. Fazem parte dos métodos estatísticos: a análise
de regressão, análise de agrupamentos, reconhecimento de padrões, entre outros.
Os métodos de otimização podem ser subdivididos em métodos exatos e
métodos aproximados. Nos métodos exatos soluções ótimas são obtidas após um
número finito de operações. Já os métodos aproximados, ou heurísticos, procura-se
gerar boas soluções, em tempo razoável para o uso prático, mas não há garantias que
o resultado seja o ótimo global (Talbi, 2009).
56
Figura 22 - Métodos clássicos de otimização
Fonte: Adaptado de Talbi (2009).
A Figura 22 apresenta uma ramificação dos métodos de otimização exatos
e aproximados. É interessante notar que no ramo dos métodos aproximados, existem
os algoritmos heurísticos, que subdividem em metaheurística e heurística de
problemas específicos.
As metaheurísticas são algoritmos que buscam uma combinação entre
melhoria local da solução e fuga de pontos minimizadores locais. Estes algoritmos são
mais genéricos e podem ser aplicados a muitos problemas desde que os parâmetros
desse algoritmo sejam calibrados. Suas principais ideias envolvem a vizinhança da
solução e técnicas avançadas de não estabilização (Gendreau e Potvin, 2010).
Nas próximas seções desse capítulo são apresentadas as teorias dos
métodos de otimização (Simulated Annealing (SA) e A*), o processo estocástico
(simulação) e o problema do caixeiro viajante ou Travelling Sales Man (TSP). A
combinação desses métodos compõe o método FPAI, que foi desenvolvido nesta
dissertação para o posicionamento dos SKUs nos diferentes desenhos de leiaute, o
qual tem como função-objetivo minimizar a distância média percorrida pelos
separadores.
57
4.1 O algoritmo A*
O A* é um algoritmo de busca amplamente utilizado para encontrar um
caminho, entre dois pontos, que possua o menor custo de deslocamento considerando
um sistema de barreiras entre eles (Nosrati, 2012).
O desenvolvimento desse algoritmo foi feito por Hart et al. (1968), com a
introdução de uma heurística apropriada, que consegue um comportamento ótimo,
com aumento da performance, com respeito ao tempo, do algoritmo desenvolvido por
Dijkstra (1959).
Este algoritmo apresenta solução exata e suas variantes são aplicadas em
diversas finalidades, tais como: percurso mais curto ou mais rápido entre duas
cidades, transmissão de dados em uma rede de computadores, reconhecimento de
voz e também na indústria de jogos computadorizados, entre outros (Stanford, 2016).
De modo a exemplificar o problema da busca do caminho entre dois nós,
veja a Figura 23, onde é apresentado duas estratégias que buscam encontrar uma
forma de sair do nó de “Início” e atingir o nó “Fim”, existindo entre esses dois pontos
uma barreira no formato “U”.
Na primeira estratégia (I), o movimento inicia no nó “Início” e segue, em
linha reta, menor distância entre dois nós, em direção ao nó “Fim”, esse movimento é
interrompido quando se atinge a barreira. Neste momento, há uma decisão de
continuar o deslocamento margeando a barreira, virando para direita, podendo dessa
forma continuar o movimento até atingir finalmente o nó “Fim”.
Figura 23 - Exemplo de busca do menor caminho entre dois pontos.
58
Fonte: Adaptado de Stanford,2016.
Na segunda estratégia (II), um algoritmo que faz uma varredura em uma
área, cor azul-claro descrita com “Área analisada”, é utilizado para atingir o nó “Fim”
de tal forma a encontrar a menor distância entre os nós: “Início” e “Fim”.
A importância, para essa dissertação, de um algoritmo de busca da menor
distância entre dois pontos está relacionada ao trajeto que os separadores têm que
percorrer, em um dado leiaute, de forma a coletar todos os SKUs para completar a
montagem da ordem de venda.
Como será visto no Capítulo 5, para que se possa otimizar o
posicionamento dos SKUs em um determinado leiaute, se faz necessário primeiro
montar uma matriz de distâncias que contenha as distâncias entre todos os pontos
marcados no leiaute que possuam SKUs.
4.1.1 O funcionamento do A*
O texto que será descrito nesta seção é baseado no texto de Stanford
(2016). A Figura 24.a apresenta um gráfico plano, onde foi introduzido uma malha
quadriculada, e onde pode-se ser visualizado dois nós: o nó de “Início” e o nó de “Fim”.
Cada nó dessa malha possui vértices, Figura 24.b, que são usados para calcular a
distância entre um nó e outro da malha.
Figura 24 – a) Exemplo de um caminho, com a menor distância entre os nós de “Início” e “Fim”,
encontrado utilizando o algoritmo A*. b) Vértices dos quadrados da malha.
59
Fonte: Adaptado de Stanford.
O que se busca, quando se utiliza o algoritmo A*, é encontrar a menor
distância entre dois nós, com coordenadas conhecidas, desviando das barreiras, entre
esses nós, caso elas existam.
A equação usada para calcular o custo total do deslocamento, T���, para
sair do nó “Início” e chegar no nó “Fim” é assim definida:
T��� � U��� � ℎ��� (3)
Onde:
U��� – Representa o custo exato do caminho que tem início em um nos
vértices do nó “Início” até um dado vértice do nó �;
ℎ��� – Representa o custo estimado da heurística saindo do vértice do nó
� até o vértice do nó “Fim”.
O custo para sair de um nó a outro é, de forma simplificada, a quantidade
de quadros que os separam vezes comprimento da aresta de um quadrado da malha.
Como exemplo, se a aresta do quadrado for igual a um metro e a distância entre dois
pontos for de dez quadrados, o custo total será de 10 x 1m, totalizando 10m.
Ao sair do nó “Início”, a função U���, terá um valor pequeno quando
comparado com a função ℎ���. Ao se mover em direção ao nó “Fim”, esses valores
irão se invertendo de tal forma que se estiver muito perto do nó “Fim”, o valor de U���
será grande, quando comparado com a função ℎ��� que terá seu valor tendendo a
zero.
Na Figura 24.a o nó inicial, “Início”, possui ao redor dele oito nós
numerados, começando no 1 e indo até o 8. Esses nós são os vizinhos do nó “Início”.
Para iniciar o cálculo da distância entre os nós escolhidos como o início e
fim da trajetória, duas decisões precisam ser tomadas: a quantidade de vizinhos que
serão explorados para cada um dos nós analisados e qual o método de cálculo da
distância entre eles.
4.1.2 A quantidade de vizinhos
Para a decisão da quantidade de vizinhos a serem explorados tem-se as
seguintes opções:
60
• Explorar quadro direções, iniciando no nó de “Início”, como exemplo
os nós: 2, 4, 6 e 8;
• Explorar oito direções, iniciando no nó de “Início”, como exemplo os
nós: 1, 2, 3, 4, 5, 6, 7 e 8;
• Mudar a malha de quadrados para uma malha em forma de
hexágonos e, dessa forma, explorar todos os seis vizinhos desse
ponto “Início”.
4.1.3 Método de cálculo da distância
Os métodos mais comuns para o cálculo da distância entre dois nós que
fazem parte do algoritmo A* são as distâncias: Manhattan e Euclidiana.
4.1.3.1 Distância Manhattan
A distância Manhattan é tida como a heurística padrão quando se tem uma
malha quadrada. A função que representa a distância estimada, ℎ��� entre um nó � e
o quadrado “Fim”, dado por:
ℎ��� � � ∗ � |�. W − X4�. W| � |�. H − X4�. H|) (4)
Onde:
� – Comprimento da aresta dos quadrados da malha;
�. W – Coordenada do nó � no eixo x;
�. H – Coordenada do nó � no eixo y;
X4�. W – Coordenada do nó “Fim” no eixo x;
X4�. H – Coordenada do nó “Fim” no eixo y.
61
Figura 25 - Nós pesquisados pelo método de cálculo da distância Manhattan até atingir o
ponto “Fim”.
Fonte: Adaptado de Stanford, 2016.
A Equação (4) define a função ℎ��� como o módulo das diferenças entre
as coordenadas x e y dos nós analisados, multiplicado pelo comprimento da aresta do
quadrado da malha.
A Figura 25 apresenta os nós pesquisados pela heurística A* utilizando o
cálculo da distância Manhattan, onde os nós coloridos são os nós explorados como
opção para encontrar o menor caminho entre os nós “Início” e “Fim”.
As cores mais claras dos nós explorados significam nós mais distantes do
nó “Fim”. Os nós com a cor cinza não foram explorados pela heurística no cálculo da
distância.
4.1.3.2 Distância Euclidiana
Usando a distância Euclidiana é possível calcular o custo total do
deslocamento partindo do nó � e deslocando até o ponto “Fim” em qualquer ângulo
em linha reta, não estando preso aos quadrados da malha.
Dessa forma a função, ℎ���, fica definida como:
ℎ��� � � ∗ Y ��. W − X4�. W�; � ��. H − X4�. H�; (5)
62
Comparado com o cálculo da distância Manhattan, a distância Euclidiana é
mais curta por poder caminhar nas diagonais, por outro lado, a quantidade de nós
pesquisado por esse método é maior, o que faz a heurística levar mais tempo para
convergir na solução do menor caminho.
A observação da maior quantidade de nós explorados, nós coloridos
excluindo os nós em cinza, durante o cálculo do caminho mais curto, é apresentado
na Figura 26.
Figura 26 - Nós pesquisados pelo método de cálculo da distância Euclidiana até atingir o ponto
“Fim”.
Fonte: Adaptado de Stanford.
O pseudocódigo do algoritmo utilizado para construir um caminho entre os
nós de “Início” e “Fim” é apresentado da subseção seguinte.
4.1.4 O pseudocódigo do A*
A Figura 27 apresenta o pseudocódigo do algoritmo A*. Esse pseudocódigo
é dividido em três partes: a primeira parte é onde são definidas as variáveis que serão
utilizadas no código, a segunda parte contém vários laços do código onde utiliza-se
duas listas com os nós a serem explorados, lista aberta, e os nós já explorados e que
foram escolhidos como possíveis nós que construíram o caminho entre os nós “Início”
e “Fim”, na terceira parte, é definida uma função que ao se atingir o nó “Fim” faz a
reconstrução de todo o caminho percorrido desde o nó de “Início” até o nó “Fim”.
63
Figura 27 - Pseudocódigo do algoritmo A*
Fonte: Adaptado de Stanford, 2016.
Função A*(Inicio, Fim)
FECHADO := {Vazio}
ABERTO := {Inicio}
Vem_de := Vazio
Mapa := Infinito
Custo_g := Mapa
Custo_g[Inicio] := 0
Custo_f := Mapa
Custo_f[Inicio] := Custo_h(Inicio, Fim)
Enquanto ABERTO não é vazio:
No_Atual := pegar o no em ABERTO com o menor valor do Custo_f
Em resumo, o algoritmo A* é um muito eficiente e traz uma resposta exata,
desde que o nó objetivo esteja totalmente acessível, para o problema de encontrar a
menor distância entre dois pontos que possuam ou não barreiras entre eles.
Mesmo que a complexidade no tempo desse algoritmo seja polinomial, a
expansão dos nós forma uma árvore de busca, sendo que essa árvore cresce de
acordo com uma função exponencial. Dependendo da distância e da quantidade de
barreiras entre os pontos de início e fim, pode-se ter um tempo computacional muito
alto para conseguir obter uma resposta.
A aplicação desse método será discutida na seção 5.3.1.
Com o algoritmo A* constrói-se a matriz de distâncias entre os pontos do
leiaute que possuem SKUs, para otimizar o posicionamento dos SKUs nesse leiaute
foi utilizado uma metaheurística chamada Simulated Annealing. Essa metaheurística
será apresentada na próxima seção.
4.2 Simulated Annealing (SA)
Segundo Gendreau e Potvin (2010) o SA é um algoritmo de busca local
capaz de escapar de ótimos locais. Esse algoritmo é uma metaheurística que deriva
do ramo onde são encontrados métodos aproximados de otimização, veja a
ramificação dos métodos de otimização na Figura 22.
Segundo Suman e Kumar (2006) o SA é uma técnica robusta e compacta,
a qual fornece excelente soluções para problemas de otimização, com único ou
múltiplos objetivos, e também com uma significativa redução no tempo computacional.
A implementação é relativamente fácil, quando comparado com outras
metaheurística de busca local e usa o chamado movimento entre vales e picos para
escapar dos ótimos locais (Gendreau e Potvin, 2010).
São muitos os campos da pesquisa operacional onde o SA vem sendo
aplicado. Sridhar e Rajendran (1993) descrevem três esquemas de perturbação para
gerar novas sequências para a resolver o problema de sequenciamento de ordens em
um processo de manufatura celular.
65
Meller e Bozer (1996) aplicam o SA no problema de facility layout problem
(FLP). O FLP se refere ao problema de posicionar diversas áreas em um layout fabril.
Os autores consideram neste trabalho que o problema criação do layout fabril consiste
em encontrar um arranjo ortogonal para “n” áreas retangulares dentro de uma planta
retangular de tal forma a minimizar a distância entre as “n” áreas. O problema de
layout é altamente combinatório por natureza e geralmente possui muitos mínimos
locais o que justifica a utilização do SA.
Kim et al (2002) consideram um problema de planejamento de transporte
para um centro de distribuição considerando múltiplos períodos, múltiplas paradas e
múltiplos varejistas, buscando otimizar as rotas dos veículos e as quantidades
entregues para cada varejista. Para resolver esse problema os autores sugerem uma
heurística em dois estágios baseado no SA.
McCormick e Powell (2004) descrevem um algoritmo de SA, em dois
estágios, para o planejamento das bombas que fazem a distribuição de água para os
diversos reservatórios em uma cidade usados para o abastecimento das residências.
O modelo construído pode produzir um planejamento discreto perto do ótimo em um
tempo bastante curto para ser usado nas rotinas operacionais.
4.2.1 A História e o funcionamento do SA
O interesse na utilização do SA começou com a publicação do trabalho de
Kirkpatrick et al. (1983) e Cerny (1985). Eles mostraram como o modelo recozimento
dos sólidos, como proposto por Metropolis et al. (1953), poderia ser usado para
problemas de otimização, onde a função-objetivo a ser minimizada corresponde a
energia dos estados sólidos.
O nome Simulated Annealing foi dado por causa da analogia com o
processo físico de recozimento dos sólidos, no qual um sólido é aquecido e então
deixado resfriar bem lentamente até que atinja a mais regular configuração de
estrutura cristalina, isto é, o mínimo estado de energia para as suas moléculas ficarem
livres de tensões.
66
Se o plano de resfriamento é suficientemente lento, a configuração final
resulta em um sólido com uma integridade estrutural superior. O SA estabelece a
conexão entre esse tipo de comportamento termodinâmico e a pesquisa por mínimos
globais em problemas de otimização discreta.
A cada iteração, o algoritmo compara duas soluções, a solução atual e uma
nova solução selecionada. Soluções melhores são sempre aceitas, enquanto uma
fração de soluções piores são aceitas no intuito de escapar dos ótimos locais e seguir
na busca do ótimo global.
A probabilidade de aceitar soluções piores depende do parâmetro
temperatura, o qual é tipicamente diminuído a cada iteração do algoritmo. A
característica chave do SA é permitir soluções piores da função-objetivo, entre as
iterações, de forma a permitir movimentos de picos e vales buscando escapar dos
ótimos locais.
Com o parâmetro temperatura caminhando para o valor zero, a cada
iteração, esses movimentos de picos e vales vão ocorrendo com menor frequência
fazendo com o algoritmo convirja para uma forma a qual todas as probabilidades
estejam concentradas em um conjunto de soluções globalmente ótimas.
A Figura 28 apresenta o comportamento do algoritmo SA onde pode se
notar a tentativa, com maior ou menor probabilidade, de escapar dos ótimos locais
aceitando piorar o objetivo, na busca de valores que minimizem a função-objetivo,
com o aceite de soluções vizinha x’. Neste gráfico o espaço de busca está no eixo x e
o objetivo no eixo y.
67
Figura 28 - Simulated Annealing escapando do ótimo local.
Fonte: Adaptado de Talbi (2009).
4.2.2 Definições matemáticas
Para descrever as características específicas do algoritmo SA para
problemas de otimização discreta e descrever o pseudocódigo na próxima seção,
serão feitas algumas definições que foram baseadas nos textos de Talbi, 2009 e
Eglese (1990).
Seja Ω o espaço de solução, isto é, o conjunto de todas as soluções
possíveis. Seja f: Ω→ℜ uma função-objetivo definida no espaço das soluções. O
objetivo é encontrar um mínimo global, 2′ (onde, 2\∈ Ω tal que T�2′�≤ T�2�para todo 2′ ∈ Ω). A função objetivo deve ser limitada para garantir que 2′ exista. Define-se N(2)
a função vizinha para 2 ∈ Ω. Portanto, associada a cada solução, 2∈Ω, são soluções
vizinhas, N(2), que podem ser atingidas em uma única iteração do algoritmo de busca
local.
O SA começa com uma solução inicial 2 ∈ Ω. Uma solução vizinha 2′ ∈N(2) é então gerada (aleatoriamente ou usando alguma regra pré-especificada). A
solução candidata, 2′, é aceita como a solução atual baseada na probabilidade de
aceitação:
^�2\� � _6WF `*#abcde*a�c�)fg h , @6T�2\� $ T�2� i 01, @6T�2\� $ T�2� � 0. (6)
68
Define-se Aj como o parâmetro de controle o qual corresponde a
temperatura em analogia com o recozimento, na iteração S, tal que:
Aj i 0FDGDAJ�JS6 lim8→n Aj � 0. (7)
O elemento básico do mecanismo de busca no SA é dado pelo aceite da
probabilidade (P). Se a temperatura é reduzida de forma suficientemente lenta, então
o sistema pode atingir um equilíbrio (estado de equilíbrio) a cada iteração S. Seja T�2� e T�2\� os valores da função-objetivo associados com a solução ω ∈ Ω e ω’ ∈N(ω),
respectivamente.
4.2.3 O pseudocódigo do SA
O trabalho de Eglese (1990) foi utilizado como base para escrever o
pseudocódigo abaixo.
Definições iniciais
Defina uma solução inicial ω ∈ Ω
Defina o contador para a mudança de temperatura S � 0
Defina a temperatura de resfriamento Aj
Defina uma temperatura inicial � � Ao ≥ 0
Defina o número de iterações, pj, que será executada para cada
temperatura, Aj
Repita
Defina o contador � � 0
Repita
Gere uma solução ω’ ∈N(ω)
Calcule ∆c,cd� T�2\� $ T�2� Se ∆c,cd� 0, então 2 ← 2′ Se ∆c,cdi 0, então 2 ← 2′ com uma probabilidade exp�$∆c,cd/Aj�
� ← � + 1
Repetir até que � � pj
69
S ← S + 1
Repetir até que o critério de parada seja atingido
O algoritmo do SA ou qualquer outro algoritmo de busca local tem a sua
velocidade de convergência e a possibilidade de atingimento do ponto ótimo,
fortemente dependente da qualidade da solução inicial.
A escolha dos parâmetros iniciais é também muito importante para o SA,
tais como: a temperatura inicial (�), a escolha da função de decaimento da
temperatura �Aj�, O número de iteração para cada temperatura �pj� e o critério de
parada do algoritmo.
Outros dois pontos que em alguns casos podem influenciar o desempenho
do SA são: a dificuldade de geração de soluções vizinhas factíveis e na avaliação dos
valores das soluções.
O método desenvolvido nesta dissertação, que é explicado no Capítulo 5,
para resolver o problema do posicionamento dos SKUs na área do picking utiliza o SA
em duas camadas, sendo a primeira camada utilizada para resolver o problema global,
que consiste em minimizar a distância percorrida pelo separador e na segunda
camada para resolver cada uma das rotas associadas as ordens que devem ser
montadas pelo separador. Esta segunda camada equivale a resolver sucessivos
problemas de caixeiro viajante que será apresentado na próxima seção.
4.3 O problema do caixeiro viajante
O problema do caixeiro viajante ou Travelling Salesman Problem (TSP),
talvez seja o problema de otimização combinatória mais popular.
Segundo Talbi (2009) esse problema pode ser formulado da seguinte
maneira: dado um número, �, de cidades e uma matriz, �8,8, onde cada elemento �w,x representa a distância entre as cidades “i” e “j”, encontre um percurso que minimize a
distância percorrida, por um recurso, de forma que esse recurso passe somente uma
única vez por todas as cidades.
Segundo Laporte (1992) a formulação matemática para a solução exata do
problema do TSP é:
70
MinyCwxwzx Wwx Sujeito a:
yWwx8x+: � 1,4 � 1,… , �, �8� yWwx8w+: � 1,4 � 1,… , �, �9� y Wwx8w,x∈~ � |I| $ 1,I � 2,… , �, �10� Wwx ∈ �0, 1�, 4, � � 1,… , �,4 ≠ � Onde: Wwx: é a variável de decisão de utilizar, 1, ou não, 0, o caminho que sai de 4
para o local �. Cwx: é o custo para realizar o caminho que sai de 4 para o local �. �: número de cidades que deverão ser visitadas. I: número de nós dos sub-grafos.
Nessa formulação, a função-objetivo é descrita de tal forma a minimizar o
custo do percurso entre as � cidades.
A Equação 8 descreve que cada local de origem só poderá ter somente um
local de destino.
A Equação 9 descreve que cada local de destino só poderá ter somente um
local de origem.
A Equação 10 é uma restrição para eliminar sub-rotas como as
apresentadas como exemplo na Figura 29.
71
Figura 29 - Existência de duas sub-rotas entre as 7 cidades.
Fonte: Morabito et al. (2015).
Um exemplo de um percurso que minimiza a distância a ser percorrida entre
várias cidades do continente africano é apresentado na Figura 30.
O tamanho do espaço de busca para encontrar a melhor solução para esse
problema é de: �! Para que se consiga entender o tamanho da explosão combinatória para o
problema do TSP, veja a
Tabela 2:
Tabela 2 - Efeito do número de cidades no tamanho do espaço de busca
Fonte: Adaptado de Talbi (2009).
Infelizmente, enumerar todas as possíveis soluções para esse tipo de
problema se torna impraticável para números de cidades maiores que 15.
72
Figura 30 - Exemplo de uma solução do TSP para percorrer cidades do continente africano.
Fonte: Cook (2012).
O problema do TSP se enquadra no conjunto de problemas de otimização
combinatório NP-difícil, onde o tempo para obter a solução cresce exponencialmente
com número de cidades, isso é, 28. Ao longo dos anos têm-se estudado heurísticas e
metaheurísticas para resolver problemas de otimização.
Atualmente, encontram-se diversos algoritmos para resolver o problema do
TSP, segundo Gendreau e Potvin (2010), tais como:
• Busca Tabu.
73
• Busca Local Iterativa (ILS – Iterated Local Search).
• Busca em Estrutura de Vizinhança Variável (VNS – Variable
Para calcular as 21.945 distâncias foi utilizado o método A*, algoritmo de
busca de distância mínima entre dois pontos (STANFORD, 2016).
Esse algoritmo foi apresentado na seção 4.1 e considera as barreiras no
leiaute para o cálculo das distâncias. As barreiras no leiaute analisado são
representadas pelos paletes posicionados no leiaute e também os pilares da
construção civil do CD.
Para o algoritmo desenvolvido utilizou-se o modelo com 8 vizinhos e a
heurística da distância Manhattan com uma malha quadrada com quadrados de 0.2m
x 0.2m.
5.3.2 Otimizar o posicionamento dos SKUs, segunda camada
Nessa segunda camada do SKPA, encontra-se a função-objetivo que
busca minimizar a distância percorrida por cada um dos separadores, durante o
processo de montagem das ordens de venda.
Nesta etapa do método foi implementado a metaheurística SA para buscar
uma solução otimizada para a função-objetivo.
Como destacado na seção 4.2.3, o algoritmo do SA tem a sua velocidade
de convergência e a possibilidade de atingimento do ponto ótimo, fortemente
dependente da qualidade da solução inicial. Por isso, investiu-se em reposicionar os
SKUs utilizando uma heurística gulosa, proposta por Bartholdi e Hackman (2014),
para a criação de uma solução inicial onde os SKUs mais visitados são localizados
nos locais mais próximos do ponto “E/S”.
O pseudocódigo dessa heurística gulosa desenvolvida pode ser descrito
nos seguintes passos:
1. Separar as distâncias do ponto “E/S” da matriz de distância.
2. Construir o vetor de frequência dos produtos por meio da
multiplicação da matriz de ordem, matriz onde as linhas estão as
ordens de venda e na coluna os SKUs, pelo vetor de probabilidade
101
dos paletes, vetor com valores de probabilidade de um palete ser
recorrente em várias ordens.
3. Ordenar os locais do mais próximo ao mais distante do ponto “E/S”.
4. Ordenar os SKUs, dos mais frequentes para os menos frequente nas
ordens de venda.
5. Combinar os SKUs e os locais em que eles devem ficar.
Após a criação da solução inicial, o próximo passo foi dado na criação de
soluções vizinhas. Uma solução vizinha é uma solução que tem uma pequena
alteração quando comparada com a solução que se possui em um determinado
momento.
A solução vizinha aplicada no posicionamento dos SKUs é gerada
simplesmente pela troca da posição de picking entre um SKU “X”, posicionado na
posição de picking “P1”, por outro SKU “Y”, posicionado na posição de picking “P2”.
O pseudocódigo que representa esta operação é:
1. Selecionar aleatoriamente um SKU em uma posição de picking.
2. Selecionar um segundo SKU, diferente da primeira escolha, em uma
outra posição de picking.
3. Fazer a troca dos SKUs de posição.
A única restrição desse processo está em respeitar a restrição já
mencionada nessa seção onde, a quantidade de paletes dos dois SKUs escolhidos
tem que ser iguais.
A geração aleatória para a troca de SKUs é uma boa opção para trabalhar
em conjunto com o SA, pois este testa um número de vizinhos estipulados e tem
percentual de aceitação da solução, mesmo para soluções que venham a piorar o
valor da função-objetivo.
A avaliação da solução gerada é dada pela soma da distância dos
percursos mais curtos, passando por todos os produtos e voltando para a entrada,
para cada uma das ordens de venda.
O posicionamento dos SKUs tem grande dependência do perfil de produtos
demandados e o número de paletes montados por período.
Buscando representar o perfil de demanda do período analisado foi
utilizado, para o número de paletes montados, o terceiro quartil, isto é, 1.256 paletes,
102
como apresentado na Figura 37. Com essa quantidade de paletes, foram escolhidos
aleatoriamente entre os mais de 100.000 montados no período de 3 meses os 1.256
paletes para que o método desenvolvido pudesse posicionar os SKUs na área de
picking.
A Figura 43 apresenta o perfil da quantidade de SKUs montados por
paletes, onde, pode-se notar que quase 85% dos paletes montados possuem entre 1
a 6 diferentes SKUs. A soma de todos os paletes montados totaliza os 1.256 paletes.
Figura 43 - Perfil da quantidade de SKUs por palete montado.
Fonte: Figura do autor.
Escolhidos os paletes a serem montados o próximo passo é encontrar a
distância mais curta para fazer essa rota, para isso, é necessária a resolução de um
TSP, como visto na seção 4.3.
A próxima seção apresentará o desenvolvimento para a construção dessas
rotas.
5.3.3 Construção e solução das rotas de coleta, terceira e quarta camada
Cada uma das ordens de venda gera para o separador o planejamento de
uma rota para que ele possa fazer a coleta dos SKUs contidos na ordem em questão.
103
Quando uma ordem contém somente um SKU, a criação da rota é
relativamente simples, basta localizar todas as posições no leiaute do picking que
tenha aquele SKU e escolher a posição cuja distância total percorrida seja a menor
possível.
A complexidade para calcular todas as rotas e escolher a que possua
menor distância total a ser percorrida, cresce com o aumento do número de SKUs
contidos na ordem de venda. Esse problema se caracteriza como o problema do TSP.
Para cada ordem de venda é necessário resolver um TSP, a solução
desses TSPs somados compõe o valor da função-objetivo definido na segunda
camada desse método.
Apesar do modelo de TSP ser um modelo de Programação Linear Inteira,
ou seja, com solução ótima exata garantida por métodos de solução, estes métodos
são muito demorados quando o número de locais a serem visitados cresce. Para
reduzir este tempo computacional os TSPs, terceira camada, também foram
resolvidos através de um SA, quarta camada, que segue a mesma estrutura descrita
na seção 4.2.2 com suas devidas particularidades.
Serão descritas, de forma resumida, as funções desenvolvidas e
necessárias para a solução dos TSPs utilizando o SA:
• Geração de solução inicial: Para encontrar uma solução inicial dada
as posições é utilizado um algoritmo guloso simples. Como o objetivo
é minimizar a distância total percorrida, inicializa-se em um ponto e se
prossegue até o ponto mais próximo do atual, e assim sucessivamente
até o término da rota. Desta maneira tem-se uma solução factível para
o problema, que indica a ordem dos lugares a serem visitados;
• Geração de soluções vizinhas: neste problema o vizinho também é
gerado de maneira aleatória, seguindo os benefícios já descritos. Assim
o modo de gerar vizinhos é simplesmente trocar a ordem de coleta de
duas posições na rota, respeitando a hierarquia de montagem dos
SKUs apresentada na seção 5.1.4;
• Função avaliativa: A função avaliativa da solução do TSP é uma
simples soma da distância entre os locais sucessivos da solução.
Sendo que esses locais devem ser visitados na montagem da ordem,
104
em uma ordenação dada pela solução do TSP, obtida inicialmente ou
por vizinhança.
Em resumo, o SKPA desenvolvido em 4 camadas, utiliza uma primeira
camada que calcula a matriz de distância utilizando o algoritmo A*. Essa matriz é
usada como dado de entrada para seguintes camadas. Na segunda camada, foi
utilizado um SA para a solução da função-objetivo que busca minimizar a distância
percorrida pelos separadores na montagem das ordens. Para cada troca de posição
do SKU proporcionado pela segunda camada, gera � problemas de TSP, onde � é
igual ao número de ordens a serem montadas, terceira camada, onde se utiliza
novamente para avaliar cada uma das soluções dos TSPs um SA. Esse processo
acontece até que o critério de parada do SA da primeira camada seja atingido.
5.3.4 Os resultados obtidos com a utilização do SKPA
A aplicação do SKPA no CD Nordeste foi feita, primeiramente, com a
configuração encontrada em prática para que se pudesse ter a base de valores para
construir a comparação com outros cenários que foram construídos.
Nesse cenário inicial a camada que faz a combinação do posicionamento
dos SKUs não foi usada para preservar o posicionamento encontrado.
Para essa situação inicial foi dado o nome “V_Atual” e o valor encontrado
da distância média por ordem foi de 60.18m como apresentado na Figura 44.
Esse valor passou a ser a base de comparação (100%) e, por isso, foi
colocado no segundo eixo da Figura 44 a escala em porcentagem para poder
comparar os outros cenários com o valor da situação inicial.
105
Figura 44 - Resultados da aplicação do SKPA no CD Nordeste com leiaute na situação inicial.
Fonte: Figura do autor.
A criação dos outros 5 cenários foi feita para testar estratégias específicas
de posicionamento dos SKUs, atuando dessa forma no algoritmo da primeira camada
para fazê-lo rodar várias vezes com grupos de SKUs específicos da estratégia
escolhida para teste, no intuito de buscar ganhos ainda mais expressivos.
O segundo cenário chamado de “V_ABC_V” usou a estratégia de
posicionamento dos SKUs, priorizando os SKUs de maiores volumes ficarem mais
pertos do ponto de E/S no leiaute. Para essa condição o ganho sobre a situação inicial
foi de 6% na redução da distância média por ordem.
O terceiro cenário chamado de “V_ABC_VSet” buscou testar um
posicionamento do tipo ABC por volume de venda, mas setorizando os SKUs
conforme as 4 famílias encontradas no CD. Essa estratégia trouxe um ganho de 7%
comparada com a situação inicial, mas somente 1% a mais comparada a “V_ABC_V”.
O quarto cenário chamado de “V_ABC_FSet”, também, usa uma estratégia
de posicionamento ABC, mas agora sobre a frequência que cada SKU é consumido
não importando aqui o seu volume vendido, de forma que eles fiquem separados em
setores. O ganho ficou igual ao terceiro cenário em 7% com relação a situação inicial.
O quinto e último cenário chamado de “V_Db”, se difere dos outros cenários
pois utiliza uma estratégia de buscar deixar o mais próximo possível, duplas de SKUs
que frequentemente são vendidos na mesma ordem de venda.
106
Para esse quinto cenário foi feita uma análise nas mais de 100.000 ordens
coletadas no período analisado, criando assim um vetor com as duplas de SKUs e as
frequências que essas apareciam nas ordens de venda.
Esse vetor com as duplas e as frequências, interagiu com a primeira
camada para buscar uma solução de posicionamento que levava em conta essa
estratégia. O resultado dessa estratégia foi o ganho de 12% de redução da distância
média por ordem.
Com esse resultado a distância média por ordem ficou em 52.87m,
considerando 1.256 ordens, a redução total na distância percorrida foi de
aproximadamente 9.2km.
Como base de comparação um separador percorre em média 1.64km em
uma noite de trabalho. A redução conseguida com a aplicação do SKPA em conjunto
com a estratégia das duplas de SKUs equivale ao trabalho de quase 6 separadores.
Como será visto mais adiante, essa estratégia de manter as duplas de SKU
que saem mais frequentemente nas ordens de venda próximas, na maioria das vezes,
trouxe os melhores resultados na aplicação do SKPA.
De forma a testar o processo de picking utilizando o método desenvolvido
(SKPA) e também as outras atividades do processo de montagem das ordens foi
construído um modelo de simulação que será detalhado na próxima seção.
5.4 O modelo de simulação desenvolvido
No terceiro módulo do FPAI tem-se a criação do modelo de simulação que
considera todas as atividades para a montagem das ordens de venda, como
apresentado na Figura 34, na seção 5.1.5.
Por meio do modelo de simulação foi possível modelar o processo de
montagem de ordens, testar o SKPA, introduzir o estudo de cenários para buscar
melhorar o processo de montagem e também foi possível fazer cenários onde o leiaute
da área de picking fosse alterado e seus resultados pudessem ser medidos.
De forma geral o modelo de simulação recebe informações da matriz de
distância, das coordenadas dos pontos de coleta, vindo do tratamento do leiaute, e
posteriormente, o resultado do posicionamento dos SKUs após a aplicação do SKPA.
107
A Figura 45 apresenta um fluxograma contendo as informações
necessárias para a construção do modelo de simulação sem a aplicação do SKPA.
Figura 45 - As informações necessárias para a construção do modelo de simulação.
Fonte: Figura do autor.
Para a construção do modelo e as análises dos resultados foi utilizado o
software ProModel® com uma visualização 2D, vista aérea.
A construção do modelo de simulação seguiu as etapas descritas na seção
4.4.2, desde a coleta de dados até os resultados e posterior implantação do modelo.
A Figura 46 apresenta o modelo criado onde é enfatizado a rede de
caminhos que o separador pode utilizar para percorrer o leiaute e fazer a montagem
das ordens.
Em cada ponto de coleta, foi permitido que até dois separadores pudessem
fazer a coleta simultaneamente, para os pontos de coleta nas extremidades do
corredor foram permitidos até 3 separadores simultaneamente. Veja exemplos de
pontos de coleta na extremidade e interior do corredor na Figura 46.
Caso o separador seja direcionado para a posição do SKU que seja
permitido até dois separadores e, naquele momento, tenha dois separadores fazendo
a coleta, esse separador poderá seguir dois caminhos. O primeiro caminho é buscar
outra posição que tenha o mesmo SKU e que ele possa parar para coletar. A segunda
108
opção, caso o primeiro caminho não seja possível, é ficar na fila aguardando até que
ele possa entrar na posição e efetuar a coleta.
Figura 46 - Modelo de simulação desenvolvido e aplicado ao leiaute inicial do CD Nordeste.
A quantidade de produtos por posição de picking foi mapeada e coloca em
uma planilha em Excel que serve como dado de entrada do modelo. Durante o
processo de picking, essa planilha é atualizada com as quantidades de produtos
coletados. Uma outra função dessa planilha é servir para disparar os processos de
reabastecimento dos SKUs, quando esses são zerados durante o processo de coleta.
Caso o separador esteja fazendo a coleta de um SKU e, a quantidade
necessária para atender a ordem não esteja disponível naquela posição, mas exista
outra posição que tenha o mesmo SKU. O separador coleta todos os produtos daquela
109
posição, aciona o reabastecimento e segue para a outra posição que tem o mesmo
SKU para terminar a tarefa de coletar o SKU em questão.
Foi criado também um local no modelo onde foi colocado uma máquina
estrechadeira para testar o quanto a substituição do tempo manual de “fechar” o palete
com filme plástico, poderia ser vantajosa se utilizasse essa máquina.
As curvas estatísticas para cada uma das tarefas de montagem e suas
famílias de produtos foram inseridos no modelo de simulação conforme apresentado
na seção 5.1.9.
Para a obtenção dos resultados do modelo de simulação foi utilizado o
resultado de várias replicações do modelo. Para o cálculo do número de replicações,
�G, utilizou-se a Equação 12, segundo (Banks et al (2005)).
�G ≥ #���/��~� );
(12)
Onde:
O – é a função de distribuição normal.
I – é a variância amostral.
� – é o erro máximo admitido no resultado.
� – é a diferença entre 100% e o intervalo de confiança desejado.
Para que o modelo de simulação pudesse representar de forma mais real
o visual do processo de montagem de ordem, optou-se por construir um modelo em
3D utilizando o software FlexSim®, como apresentado na Figura 47.
110
Figura 47 - Modelo de simulação da operação de montagem de ordem no software FlexSim®.
Fonte: Figura do autor.
Este modelo no FlexSim® foi utilizado com o propósito de visualizar o
processo, mas sem o intuito de fazer as análises de resultados que foram feitas no
ProModel® e que serão apresentadas nas seções seguintes.
5.5 Os resultados obtidos com o design de layouts e a consolidação dos
resultados
Primeiramente, serão apresentados os resultados obtidos com a aplicação
do método FPAI no CD. Após a apresentação desses resultados, uma tabela com os
resultados dos outros 36 CDs será apresentada.
Para a apresentação dos resultados a seguir foi utilizada a Equação 12
para calcular o número de replicações a serem feitas no modelo de simulação para
que o erro (�) fosse no máximo 3%, e um intervalo de confiança de 95%, ou seja, � �5%. O número de replicações para as condições colocadas acima aplicadas na
Equação 12 foi de: 28 replicações.
111
5.5.1 Os resultados para o CD Nordeste, aplicação dos módulos 2 e 3 do FPAI
Os primeiros resultados obtidos aplicando os módulos 2 e 3 do método
FPAI, isto é, sem um novo desenho de leiaute, é apresentado na Tabela 10.a.
Com o modelo de simulação representando todas as atividades do
processo de montagem de ordem e considerando o resultado do reposicionamento
dos SKUs, resultado do módulo SKPA, com a estratégia de posicionamento das
duplas de SKUs, tem os resultados apresentados na Tabela 10.b.
O cálculo da distância média percorrida por cada separador teve uma
redução de aproximadamente 7.5%, menor quando comparada ao resultado obtido
somente com a aplicação do SKPA que foi de 12%.
Contabilizando o tempo total de operação para completar as 1.256 ordens
de venda, a redução foi de aproximadamente 4.5%.
O número de paletes reabastecidos permaneceu praticamente constante
quando comparado ao cenário inicial.
Tabela 10 - a) Resultado do estado inicial do CD Nordeste. b) Resultado após a aplicação das
camadas 2 e 3 do FPAI.
Em resumo, os resultados trazidos pela simulação mostram a forte
interdependência entre os processos de montagem de ordem.
Quando se fez a aplicação do módulo SKPA, este não faz a consideração
no tempo da quantidade de estoque, e consequentemente não considera os tempos
de reabastecimentos, nem tampouco as esperas ou mudanças de ponto de coleta,
para os casos que já tenha 2 ou 3 separadores fazendo a coleta, obrigando o
separador a gastar mais tempo para terminar a rota por causa da espera ou por ter se
deslocado para outros pontos de coleta para conseguir terminar a sua ordem.
112
Dessa forma, encontrar resultado para distância média percorrida por
separador menor que os 12% encontrados somente com a aplicação do SKPA é
totalmente factível pelos pontos abordados acima.
Analisando também a distância média percorrida por palete montado ter
sido maior por meio do modelo de simulação, comparado com os 52.87m obtidos
como resultado do SKPA, esse número se mostra factível visto as interferências no
momento da coleta que pode fazer o separador buscar outro ponto de coleta,
deslocando dessa forma mais que o planejado, e a alta porcentagem no número de
paletes reabastecidos, aproximadamente 64% do número total de paletes
posicionados no leiaute da área de picking.
A Figura 48 apresenta um detalhamento do tempo médio gasto por
separador para executar as atividades necessárias para a montagem das ordens de
vendas, com o leiaute no cenário inicial.
Figura 48 - Tempos das atividades de montagem de ordens para o cenário inicial.
Fonte: Figura do autor.
É importante notar que as características dos produtos que são coletados
são de produtos com volume físico médio, aproximadamente 0.04m3, para
movimentação e com massa de aproximadamente 25kg, chegando algumas vezes ao
113
limite de segurança para movimentação manual sem lesões para o separador, e
relativamente poucos SKUs diferentes por ordens de vendas.
Por essas características elencadas acima observa-se que o tempo médio
de coleta por separador é de aproximadamente 44% do tempo total gasto pelo
separador.
Seguido, em segundo lugar, pela atividade de movimentação,
aproximadamente 24%
Em terceiro lugar, pelas atividades de “fechamento” do palete e análise da
ordem de venda para iniciar o processo de montagem.
É interessante notar que as porcentagens para as atividades de
reabastecimento e o congestionamento em certos pontos de coleta, gerando esperar
na desocupação da posição de coleta, são bem significativos.
Após a aplicação dos módulos 2 e 3 do método FPAI as reduções de tempo
não foram muito significativas para a maioria das atividades, quando comparado com
o cenário inicial e com a porcentagem de redução na distância média percorrida por
separador. A Figura 49 apresenta esses tempos por atividade.
Figura 49 - Tempos das atividades de montagem de ordens para o cenário inicial após
aplicação dos módulos 2 e 3 do FPAI.
Fonte: Figura do autor.
114
Vale ressaltar que os dois resultados apresentados na Figura 49, onde,
após a aplicação do reposicionamento dos SKUs, conseguiu-se uma melhora de
aproximadamente 4% no tempo de movimentação do separador e de quase 11% de
redução no tempo médio de espera para a desocupação da posição de coleta,
mostrando, dessa forma, o resultado proporcionado pelo uso do algoritmo
desenvolvido.
5.5.2 Os resultados para o CD Nordeste, aplicação do FPAI
Com a aplicação do método FPAI, com todos os módulos, no CD Nordeste,
foi possível obter resultados mais significativos na distância média percorrida pelos
separadores e consequentemente no tempo total do processo de montagem.
A grande diferença nos resultados que serão apresentados com relação
aos resultados apresentados na seção 5.5.1, está na aplicação do módulo do desenho
do leiaute.
Com a aplicação do modelo de leiaute fractal no leiaute inicial do CD
Nordeste, resultou no leiaute apresentado na Figura 40.
Neste leiaute fractal, criou-se dois leiautes com contém os mesmos SKUs,
sendo que cada um deles possui um local de E/S.
Aplicando o módulo do SKPA foram obtidos os resultados apresentados na
Figura 50.
Com base nesses resultados, pode se concluir que a estratégia de
reposicionamento que traz a maior redução da distância média percorrida é a
estratégia de posicionamento de SKUs em duplas, trazendo um ganho de 11% em
relação ao posicionamento original.
Esses cenários foram construídos com as mesmas 1.256 ordens de vendas
utilizadas no cenário da seção 5.5.1.
115
Figura 50 - Resultados da aplicação do SKPA no CD Nordeste com leiaute fractal.
Fonte: Figura do autor.
Aplicando o leiaute fractal e o posicionamento obtido com a aplicação do
módulo SKPA no modelo de simulação desenvolvido, foi possível obter os resultados
apresentados na Tabela 11.
Tabela 11 - Resultados obtidos pelo modelo de simulação do método FPAI no CD Nordeste.
Segue abaixo alguns comentários sobre os resultados importantes trazidos
pela tabela acima:
116
• A área total do leiaute teve que sofrer um aumento visto que a criação
de dois leiautes com as mesmas características e produtos,
demandaram a inserção de mais paletes e duplicação de alguns SKUs.
• Com o aumento no número de paletes foi obtido como resultado a
redução no número de paletes reabastecidos.
• Cada um dos leiautes recebeu a metade do número de separadores.
• Com a criação de dois leiautes, a distância a ser percorrida dentro de
cada leiaute diminuiu trazendo como consequência a redução
significativa no valor da distância média percorrida por palete
montado.
• O tempo total para a montagem das 1.256 ordens de venda também
teve queda significativa quando comparado ao leiaute inicial.
A Figura 51 traz os tempos de cada atividade de montagem
complementando as informações apresentadas na Tabela 11.
Figura 51 - Tempos das atividades de montagem de ordens para o cenário com o leiaute fractal
após do FPAI.
Fonte: Figura do autor.
117
Foi implementado, neste modelo de simulação, um equipamento para fazer
o “fechamento” do palete, estrechadeira, quando o processo exigia que o palete fosse
envolto com o filme plástico.
Lembrando que esse processo é feito manualmente pelo separador assim
que ele termina de montar a ordem de venda.
A Figura 52 apresenta um histograma da fila de paletes gerada com a
inserção desse equipamento.
No eixo x tem-se o número de paletes na fila e no eixo y tem-se a
porcentagem do tempo total de operação que a fila ficou com aquela quantidade de
paletes.
Figura 52 - Fila gerada na estrechadeira para o processo de "fechamento" de paletes com filme
plástico.
Fonte: Figura do autor.
Esse equipamento pode fazer o “fechamento” de somente um palete por
vez e a fila de entrada neste equipamento, foi limitada a 6 paletes por restrições
físicas.
Caso o separador terminasse a montagem da ordem e encontrasse a fila
com 6 paletes, ele mesmo fazia o “fechamento” do palete, caso contrário, entrava na
fila para o equipamento fazer essa tarefa.
118
Foi verificado, nos tempos de simulação, que a inserção desse
equipamento não trouxe ganhos significativos na redução do tempo total do processo
e também houve perda de um separador que passava a ficar dedicado a esse
equipamento, tanto para operá-lo quanto para fazer o processo de carga e descarga
do palete.
5.5.3 Os resultados conseguidos com a aplicação do FPAI nos outros 36 CDs
A Tabela 12 mostra de forma consolidada os resultados obtidos com a
aplicação do método FPAI para os outros 36 CDs da empresa de bebidas, objeto
desse trabalho.
Para cada CD, traz-se duas linhas onde a primeira é referente ao leiaute e
cenário inicial e na segunda linha são apresentados os resultados após a aplicação
do FPAI.
Os ganhos trazidos para a operação de montagem de ordens ficaram entre
7% e 35%.
Não houve alteração na forma que o separador fazia para realizar a coleta
dos SKUs e sim no desenho do leiaute atrelado a inteligência no posicionamento dos
SKUs dado o perfil de demanda.
119
Tabela 12 - Resultados obtidos com a aplicação do método FPAI para 36 CDs.
Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos) Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos)
Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos) Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos)
Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos) Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos)
Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos) Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos)
Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos) Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos)
Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos) Familia Subfamília Produtos coletados Curva da duração da atividade (em segundos)