• Nenhum resultado encontrado

Número de pontos

N/A
N/A
Protected

Academic year: 2022

Share "Número de pontos"

Copied!
107
0
0

Texto

(1)

1

ALEXANDRE CHECOLI CHOUEIRI

80$3523267$'(+(85Ë67,&$3$5$26,1*/(3,&.(55287,1*

352%/(0&216,'(5$1'25(675,d®(6'((03,/+$0(1720È;,02

CURITIBA 2018

(2)

2

80$ 3523267$ '( +(85Ë67,&$ 3$5$ 2 6,1*/( 3,&.(5 5287,1*

352%/(0&216,'(5$1'25(675,d®(6'((03,/+$0(1720È;,02

Dissertação de Mestrado apresentada ao Programa de Pós-Graduação em Métodos Numéricos em Engenharia, Setor de Tecnologia, Universidade Federal do Paraná, como requisito parcial à obtenção do título de Mestre em Métodos Numéricos.

Orientador: Prof. Dr. Cassius Tadeu Scarpin Coorientador: Prof. Dr. Gustavo Valentim Loch

CURITIBA 2018

(3)

! "#$%&'!(#

)%!*+%'!,*+ (%%!%* &.# (/!!+ &.!0#)(&* '!%&'!*+! 13*' ) #%)&+)5$ )#$%&'!(# ! 67! + 0%"89:6

986; #6(#!6<=8()6

**!+%1>?& @!* '%''!%#'%!%&5"+!'(&#. %"!.!%)%'A*?!%'%1>) B+'*)B! (*)&.&%! %"89:6

! &+%'!;%** *%'(%! &6

! &+%'!;*+%@C%#&+ )(6

96+%)&+)(&+!*'' *+! 0 1>66*+! 13*!5+ (%*6=6%!!.%)&+'(&+D &!*6 6& @!* '%''!%#'%!%&566(%! &"%** *%'66("*+%@C%#&+ )6C6,+#6

;96EF

0# +(5! %;) #'%%&+*??G99F

(4)
(5)

Was erschrickst du deshalb? – Aber es ist mit dem Menschen wie mit dem Baume. Je mehr er hinauf in die Höhe und Helle will, um so stärker streben seine Wurzeln erdwärts, abwärts, ins Dunkle, Tiefe – ins Böse (Zarathustras)

(6)

RESUMO

Neste trabalho apresenta-se uma nova heurística para o Problema de Roteirização para um Único Operador (“Single Picker Routing Problem”), abordando características complexas de problemas reais. Este problema consiste em determinar a menor rota a ser realizada, dentro de um armazém, de forma a coletar - manualmente, todas as caixas (ou itens) de um pedido. Os trabalhos na literatura que tratam sobre o tema, o abordam considerando somente a distância percorrida em uma rota. Na revisão da literatura realizada, não foi encontrado nenhum trabalho que apresente uma abordagem heurística que considere restrições de empilhamento máximo no carregamento em uma rota, integrado ao roteamento e a política LIFO na sequência de coleta. Deste modo, as heurísticas propostas abordam características e restrições reais, como o posicionamento das caixas nos paletes, o sequenciamento de coleta e a distância percorrida, as restrições de empilhamento máximo foram tratadas com uma abordagem recursiva e divisão e conquista do problema, junto a uma estrutura em árvore. As heurísticas desenvolvidas foram aplicadas ao problema de carregamento e ao problema de carregamento e roteamento integrado. Foram testadas em um variado conjuntos de dados, considerando diversos cenários e estratégias. As heurísticas de carregamento obtiveram um desempenho aceitável, pois foram processadas de forma rápida (menos de 1 segundo) e eficiente em relação ao volume total ocupado, com média de 85% de ocupação, considerando somente as restrições de carregamento simples, e a 64% de ocupação com todas as restrições práticas. Todas as soluções encontradas nas instâncias de carregamento e roteamento foram melhoradas por uma heurística de melhoria, também proposta neste trabalho.

Palavras-chave: Roteamento em Centros de Distribuição, Restrições práticas, Carregamento de contêineres (ou de paletes).

(7)

ABSTRACT

In this work, a heuristic approach for the single picker routing problem is proposed, along with more complex and practical constraints. This is the problem of determining the least cost tour for a warehouse worker, so that he can collect all item in a request. Literature on the theme shows that the problem is mostly considered only regarding the routes. The proposed heuristic deals with much more realistic considerations, such as pallet volume capacity, boxe´s positions inside of it and maximum stacking, considered here as box maximum weight, so far, it is unknown of a work that takes into account routing and stacking of the cargo, along with an LIFO policy.

Both loading and routing heuristics were extensively tested in a variety of scenario and strategy. The loading heuristic have performed well, achieving the results in a small period (less than one second) and effective regarding the total volume on those that considered all restrictions. For the routing and loading heuristic instances, all of them were optimized regarding their initial solution by a proposed improvement heuristic. Up to now, there is no knowledge of heuristic that perform the routing and also takes into account maximum stacking in their restrictions.

Keywords:.Warehouse Routing, Practical Restrictions, Container-Loading.

(8)

LISTA DE FIGURAS

FIGURA 1 – FLUXO DE ATIVIDADES EM CD´s ... 17

FIGURA 2 – TIPOS DE PICKING POR PEDIDO ... 18

FIGURA 3 – NÍVEIS ALTO E BAIXO EM UM CD... 19

FIGURA 4 – REPRESENTAÇÃO DE UM CD: FÍSICA E POR GRAFOS ... 20

FIGURA 5 – CENTRO DE DISTRIBUIÇÃO ... 21

FIGURA 6 – MEDIDAS UTILIZADAS NO CD ... 21

FIGURA 7 – ESPAÇO CENTRADO NA ORIGEM... 23

FIGURA 8 – RESTRIÇÕES DE EMPILHAMENTO MÁXIMO ... 24

FIGURA 9 –TIPOS DE ROTAÇÃO DAS CAIXAS ... 25

FIGURA 10 – DUPLICAÇÃO DE ARESTA ... 27

FIGURA 11 – SUBSTITUIÇÃO DE ARESTA ... 28

FIGURA 12 – GRAFO BIPARTIDO ... 32

FIGURA 13 – GRAFO E SUBGRAFO ... 33

FIGURA 14 – NÍVEIS DE UMA ÁRVORE ... 34

FIGURA 15 – MÉTODO HÚNGARO: CHRISTOFIDES ... 35

FIGURA 16 – MÉTODO HÚNGARO: PAPADIMITRIOU ... 36

FIGURA 17 – TIPOLOGIA DE MÉTODOS DE RESOLUÇÃO ... 39

FIGURA 18 – ABORDAGEM DO TSP VIA CONCEITO DE ÁRVORE ... 43

FIGURA 19 – MÉTODOLOGIA HEURÍSTICA CHRISTOFIDES 3/2 ... 44

FIGURA 20 – HEURÍSTICA VIZINHO MAIS PRÓXIMO ... 45

FIGURA 21 – HEURÍSTICA K-VIZINHO MAIS PRÓXIMO ... 45

FIGURA 22 – MOVIMENTO 3-OPT ... 46

FIGURA 23 – ESCOLHA DOS CONJUNTOS X E Y ... 47

FIGURA 24 – HEURÍSTICA S SHAPE ... 50

FIGURA 25 – HEURISTICA DO RETORNO ... 51

FIGURA 26 – HEURISTICA DO PONTOS MÉDIO ... 52

FIGURA 27 – HEURISTICA DO MAIOR GAP ... 52

FIGURA 28 – HEURISTICA COMBINADA ... 53

FIGURA 29 – DISCRETIZAÇÃO DE PONTOS CORREDOR ... 54

FIGURA 30 – COMPARAÇÃO MÉTODOS DE RESOLUÇÃO DESIGNAÇÃO ... 56

FIGURA 31 – ALTERAÇÃO 1 ... 57

FIGURA 32 – ALTERAÇÃO 2 ... 58

(9)

FIGURA 33 – ROTA INVIÁVEL SPRP ... 59

FIGURA 34 – TIPOS DE VIOLAÇÕES ... 62

FIGURA 35 – RELIGAÇÕES DE ROTA ... 63

FIGURA 36 – ARCOS A SEREM REMOVIDOS ... 65

FIGURA 37 – RELIGAÇÃO DE ARCOS ... 65

FIGURA 38 – INSERÇÃO DE ITEM NO OBJETO ... 67

FIGURA 39 – GERAÇÃO DE ESPAÇOS ... 68

FIGURA 40 – FLUXOGRAMA ROTINA EMPACOTAMENTO ... 69

FIGURA 41 – TIPOS DE ESPAÇOS ... 71

FIGURA 42 – EXPANSÃO ARVORE DE CARREGAMENTO ... 72

FIGURA 43 – EXPANSÃO ÁRVORE EMPILHAMENTO MÁXIMO ... 73

FIGURA 44 – FLUXOGRAMA ROTINA FACTIBILIZA ... 76

FIGURA 45 – VOLUME OCUPADO POR ROTAS ... 77

FIGURA 46 – ESCOAMENTO DE ROTAS MENOR ... 78

FIGURA 47 – VISUALIZAÇÃO DA HEURISTICA DE CORREÇÃO DE ROTAS ... 81

FIGURA 48 – GRÁFICO DE TEMPOS RESOLUÇÃO TSP ÁRVORES ... 84

FIGURA 49 – VISUALIZAÇÃO DE CARGA 1 ... 87

FIGURA 50 – VISUALIZAÇÃO DE CARGA 2 ... 88

FIGURA 51 – GRAFICO APROVEITAMENTO CARREGAMENTO MÉDIO ... 90

FIGURA 52 – INTERVALOS COM 95% DE CONFIANÇA PARA COMPARAÇÃO DE MÉDIAS... 91

FIGURA 53 – APROVEITAMENTO MÉDIO VOLUME PALETE ... 92

FIGURA 54 – PERCENTUAL DE MELHORIA ... 94

FIGURA 55 – GRÁFICO TEMPOS DE RESOLUÇÃO HEP ... 96

FIGURA 56 – GRÁFICO TEMPOS DE RESOLUÇÃO HEP ... 96

FIGURA 57 – EMPILHAMENTO MÁXIMO - PRESSÃO ... 99

(10)

LISTA DE TABELAS

TABELA 1 – METODOLOGIA LIN-KERNIGHAN ... 47

TABELA 2 – COMPARAÇÃO DE MÉTODOS DE RESOLUÇÃO PARA O AP ... 55

TABELA 3 – RESTRIÇÕES VIOLAÇÕES ... 60

TABELA 4 – PSEUDOCÓDIGO DA HEURÍSTICA DE CORREÇÃO DE ROTAS ... 60

TABELA 5 – LISTAS DE RESTRIÇÃO ... 63

TABELA 6 – LISTA DE VIOLAÇÕES ... 63

TABELA 7 – PSEUDOCÓDIGO EXPANDE_NO ... 70

TABELA 8 – PSEUDOCODIGO FUNÇÃO DE FACTIBILIZAÇÃO ... 75

TABELA 9 – ESCOAMENTO MENOR ... 77

TABELA 10 – PSEUDOCÓDIGO DA HEURISTICA HEP ... 79

TABELA 11 – RESULTADO HEURISTICA DE CORREÇÃO ... 83

TABELA 12 – TEMPOS RESOLUÇÃO TSP EM ARVORE ... 83

TABELA 13 – RESULTADOS HEURISTICA DE CORREÇÕES ... 84

TABELA 14 – RESULTADOS MÉDIA CARREGAMENTO ... 89

TABELA 15 – APROVEITAMENTO MÉDIO VOLUME PALETE ... 92

TABELA 16 – PORCENTAGEM DE MELHORIA POR ESTRATEGIAS ... 94

TABELA 17 – MÉDIAS DE TEMPOS RESOLUÇÃO HEP ... 95

(11)

LISTA DE SIGLAS

SPRP – Single Picker Routing Problem TSP – Traveling Salesman Problem AP – Assignment Problem

DFJ – Dantzig, Fulkerson, Johnson CD – Centro de Distribuição ANOVA – Análise de Variância LIFO – Last In First Out

(12)

SUMÁRIO

1 INTRODUÇÃO ... 12

1.1 OBJETIVOS... 13

1.1.1 Objetivo Geral ... 13

1.1.2 Objetivos Específicos ... 13

1.2 RELEVÂNCIA E IMPORTÂNCIA... 13

1.3 LIMITAÇÕES...15

1.4 ESTRUTURA... 15

2 DESCRIÇÃO DO PROBLEMA ... 16

2.1 ATIVIDADE DE PICKING (ORDER PICKING)………. 17

2.2 SINGLE PICKER ROUTING PROBLEM (SPRP)………. 20

2.3 O PROCESSO DE PICKING CAPACITADO (CSPRP)... 22

3 REVISÃO DE LITERATURA ... 27

3.1 TRABALHOS CORRELATOS... 27

3.2 ROTEIRIZAÇÃO COM CARREGAMENTO... 29

3.3 FUNDAMENTAÇÃO TEÓRICA... 31

3.3.1 CONCEITOS DE GRAFOS ... 31

3.3.2 PROBLEMA DE DESIGNAÇÃO (AP) ... 34

3.3.3 O PROBLEMA DO CAIXEIRO VIAJANTE ... 37

3.3.4 MÉTODOS DE ROTEIRIZAÇÃO EM CD´s ... 50

4 IMPLEMENTAÇÕES ... 55

4.1 COMPARAÇÕES DE IMPLEMENTAÇÕES DO MÉTODO HÚNGARO.. 55

4.2 MÉTODO DE EXPLORAÇÃO DA ÁRVORE... 56

4.3 HEURÍSTICA DE CORREÇÃO DE ROTAS EM CD... 58

4.3.1 Descrição da heurística ... 59

4.4 HEURÍSTICA DE EMPACOTAMENTO... 66

4.4.1 Descrição da heurística ... 66

4.5 HEURÍSTICA DE ESCOAMENTO DE PONTOS (HEP). 74 5 RESULTADOS E DISCUSSÃO ... 81

5.1 HEURÍSTICA DE CORREÇÃO DE ROTAS EM CD... 81

5.2 HEURÍSTICA DE EMPACOTAMENTO... 87

5.3 HEURÍSTICA DE ESCOAMENTO DE PONTOS (HEP)... 93

6 CONSLUSÕES ... 97

REFERÊNCIAS ... 100

(13)

1 INTRODUÇÃO

A área de Pesquisa Operacional (PO) surgiu em 1934 na Inglaterra, quando da invenção do radar. Em 1936 é criada a Estação de Pesquisa Manor Bawdsey para estudar como a tecnologia do radar poderia ser utilizada para interceptar aviões de guerra inimigos. Com o início da segunda guerra mundial e a necessidade de se trabalhar com recursos escassos, os estudos no campo da PO aumentaram, estendendo-se às atividades operacionais da guerra, como manutenção de veículos, decisões de quais aviões deveriam ser utilizados, etc. Daí em diante, não demorou até que a atuação da PO entrasse no escopo das indústrias (ARENALES et al., 2007).

As atividades de Logística desempenham o gerenciamento estratégico da compra, transporte e armazenagem de matérias-primas e produtos acabados, de maneira que a lucratividade seja maximizada por meio de entregas de encomendas com menor custo associado (CHRISTOPHER, 2010). Os armazéns são responsáveis por grande parte dos custos logísticos, de acordo com (KEARNEY, A, 2014), atividades em armazém foram responsáveis por 20% dos custos logísticos em 2003.

O presente trabalho tem por objetivo o estudo das operações logísticas dentro de armazéns e centros de distribuição (CD), mais especificamente às atividades de roteirização de picking nos CD´s (determinar a melhor rota para que seja realizada a coleta dos itens de um pedido das prateleiras até as docas de carregamento). O problema da roteirização em armazéns é conhecido como Single Picker Routing Problem (SPRP) e pode ser resolvido por modelos clássicos de Programação Inteira do problema do caixeiro viajante (Traveling Salesman Problem – TSP) (DANTZIG et al., 1954).

Além de se determinar uma rota a ser realizada por um operador em um CD, também deve-se levar em consideração algumas restrições práticas, tal como a disposição dos itens nos paletes de coleta, e até mesmo se um item pode ser inserido acima de outro (restrição de empilhamento máximo), sendo esta a maior contribuição do trabalho. Os modelos e métodos existentes para resolução do SPRP consideram somente a roteirização como um fator de importância a ser considerado.

O presente trabalho visa preencher esta lacuna no estudo de roteirizações em armazéns incluindo informações dos itens a serem coletados, tais como dimensões e

(14)

carga máxima permitida, de forma a estruturar um método heurístico que otimize tanto as rotas a serem percorridas por um operador como o posicionamento dos itens nos paletes quando da coleta e, ainda, a verificação de restrições de empilhamento máximo desses itens.

1.1 OBJETIVOS

1.1.1 Objetivo Geral

Propor e avaliar métodos heurísticos que consideram as restrições práticas de roteirização, empilhamento máximo e política LIFO (Last In First Out) de carregamento para o Capacitated Single Picker Routing Problem (CSPRP).

1.1.2 Objetivos Específicos

Para que se possa atingir o objetivo geral, os seguintes objetivos específicos devem ser seguidos:

x Implementar os métodos de resolução para o problema de designação.

x Implementar um método de resolução em árvores para TSP.

x Adaptar a lógica de redução de pontos em um armazém de (SCHOLZ et al., 2016) em um método que não dependa de solvers comerciais.

x Combinar o método de resolução em árvores à lógica de redução de pontos em uma nova heurística.

x Avaliar a aplicabilidade da heurística por meio de testes computacionais.

x Adaptar a heurística de roteamento para o carregamento tridimensional do palete.

x Inserir restrições de empilhamento máximo na heurística proposta e avaliar seu desempenho.

1.2 RELEVÂNCIA E IMPORTÂNCIA

Com o aumento da capacidade de processamento dos computadores, muitos problemas da área de otimização combinatória são resolvidos unicamente por meio de

(15)

solvers comerciais. Assim como também são aplicadas heurísticas híbridas (Matheuristics), que interoperacionalizam heurísticas e/ou meta-heurísticas com métodos exatos ou de relaxação que resolvem modelos matemáticos de programação linear.

Apesar destes solvers satisfazerem parte das necessidades acadêmicas de otimização linear, sendo muito eficientes e liberados sob licença gratuita para estudantes, o mesmo não pode ser dito em se tratando de aplicações reais nas empresas. Estas, independente de seu porte, podem ser cobradas um valor que pode parecer alto de início (apesar das reduções que o mesmo proporciona a médio prazo), fato que muitas vezes influencia negativamente a tomada de decisão, por parte da empresa, de obter o solver.

As heurísticas, por outro lado, podem ser desenvolvidas e implementadas por qualquer profissional de programação que possua uma linguagem com compilador ou mesmo, por exemplo, a linguagem de programação presente em todos os aplicativos da Microsoft (Visual Basic for Application), os quais são líderes de mercado de softwares, tornando-as muito mais atrativas no meio empresarial. Desta forma, o gerente de logística ou mesmo o responsável pelo armazém tem a possibilidade de entender os métodos propostos neste trabalho e implementa-los.

A atividade mais onerosa em um armazém é o picking (WHITE J et al., 2010) – coleta de itens para um pedido e, devido a isso, parte da literatura dedica-se a pesquisar as características que afetam essa atividade e o seu roteamento. O roteamento trata da sequência de itens que o operador/separador deverá seguir ao realizar a coleta de um determinado pedido, quão menor for a distância total da rota, menor o tempo de picking.

As heurísticas clássicas existentes na literatura sobre o roteamento em depósitos (s-shape, retorno, ponto-médio, combinada) tem uma complexidade computacional baixa. Estas são desenvolvidas de forma que possam se apropriar da forma retangular dos armazéns para que menos pontos de coleta sejam considerados.

O problema destes métodos se dá quando características e restrições mais práticas precisam ser inseridas, como por exemplo o empilhamento máximo e/ou o sequenciamento do carregamento respeitando a política LIFO de carga/descarga no pallet. Se por um lado ganham em velocidade de obtenção de resposta, por outro perdem ao ficarem muito restritas e não realísticas, de forma que uma heurística que resolva o CSPRP

(16)

1.3 LIMITAÇÕES

No presente trabalho foram considerados somente centros de distribuição com Layout de bloco único, e ainda, o modelo base para a heurística de roteirização (SCHOLZ et al., 2016) não foi implementado, devido aos resultados dos testes computacionais da heurística proposta.

1.4 ESTRUTURA

O presente trabalho está organizado na forma de capítulos, sendo os principais tópicos de cada um apresentado abaixo:

2 – Contextualização e descrição do problema original (SPRP) junto ao novo problema proposto CSPRP (Capacitated Single Picker Routing Problem)

3 – Trabalhos correlatos sobre o SPRP e sobre carregamento com roteirização, junto a toda base teórica utilizado no trabalho. Conceitos de grafos, problema de designação e TSP são abordados com maior minúcia. Também são apresentadas 5 heurísticas de roteirização em armazéns e o modelo matemático proposto por (SCHOLZ et al., 2016).

4 – O capitulo 4 apresenta a descrição de todas as heurísticas implementadas, uma para correção de rotas, uma para carregamento e uma para roteirização e carregamento em armazéns.

5 – Resultados computacionais das heurísticas propostas e análise dos mesmos são apresentados neste capítulo.

6 – Apresenta-se as conclusões deste trabalho e sugestões para trabalhos futuros sobre o tema.

(17)

2 DESCRIÇÃO DO PROBLEMA

Os armazéns cumprem um papel fundamental em diferentes níveis de uma cadeia de suprimentos. De acordo com (KEARNEY, A, 2014), atividades em armazém foram responsáveis por 20% dos custos logísticos em 2003. São geralmente utilizados para o armazenamento de materiais entre pontos de origem e destino de mercadorias (KOSTER, DE et al., 2007).

Se além de realizar as atividades de armazenagem também é do escopo do armazém o transporte dos materiais estocados, o mesmo recebe o nome de Centro de distribuição (CD), utilizado a partir de agora até o fim deste estudo.

Os estudos de (LAMBERT, D et al., 1998) mostram que existem mais de 750.000,00 CD´s no mundo, desde centros com alto nível de gerenciamento até aqueles de pequeno porte.

Dentre as principais atividades em CD´s, estão: recebimento, armazenamento dos itens, separação de picking e expedição.

O recebimento inclui as atividades de transbordo dos produtos que chegam por algum meio de transporte ao CD, verificação de possíveis inconsistências entre o material entregue e o pedido bem como a atualização do inventário. Após o recebimento, é necessário realizar a armazenagem dos itens para seus devidos locais.

Nesta fase, pode-se fazer necessário o reprocessamento de alguns materiais (reembalagem e/ou inserção em caixas padronizadas). A separação de picking, doravante chamado de picking, consiste na obtenção da quantia exata de determinados produtos para um conjunto de pedidos de clientes, colhidos em locais específicos para tal atividade. A expedição é a acumulação de itens referentes a pedidos individuais (clientes), o carregamento aos devidos caminhões e a liberação da carga com toda a documentação necessária.

De todas as atividades de um CD, o picking é a mais onerosa em CD´s que se utilizam da coleta manual como método primário de coleta. Estima-se que de todas as atividades desempenhadas no CD, o picking é responsável por mais de 55% dos custos totais (KOSTER, DE et al., 2007).

É mostrado na FIGURA 1 o fluxo de atividades em um CD.

(18)

FIGURA 1 – FLUXO DE ATIVIDADES EM CD´s

FONTE: Adaptado de (TOMPKINS, J et al., 2010)

Para que o gerenciamento dos CD´s possam ser realizados de forma efetiva, os gestores precisam saber quando e como as atividades devem ser realizadas e a melhor forma de utilizar os recursos disponíveis (maquinários e funcionários). Para o auxílio nestas tomadas de decisão, frequentemente são utilizados softwares comerciais específicos para o gerenciamento de CD, o mais conhecido sendo o WMS (Warehouse Management System ou Sistema de Gerenciamento de Depósitos) (SCARPIN, 2012).

Embora os WMS´s comerciais supram grande parte das necessidades gerenciais de um CD em relação aos produtos, tais como: quantidades, localizações, volumes, tipos de embalagem e ressuprimento de picking, algumas mais complexam não fazem parte do escopo de um WMS (SCARPIN, 2012). Frequentemente os gestores de CD´s devem se preocupar em decidir como seus funcionários realizarão a separação dos itens do picking para o carregamento de um caminhão, qual o melhor posicionamento dos paletes dentro do caminhão, levando em consideração a ordem de entrega dos pedidos e a política LIFO (Last In First Out), dentre outras decisões operacionais.

2.1 ATIVIDADE DE PICKING (ORDER PICKING)

(19)

O processo de picking de pedidos consiste em separar os itens do pedido de um cliente. Os pedidos dos clientes consistem de linhas de pedido agrupadas, em que cada linha contém um item (stock keeping unit - SKU) e uma certa quantidade do mesmo. Existem diversas formas de se realizar o picking do pedido, na FIGURA 2 uma diferenciação destas formas é mostrada de acordo com o tipo de operador que realiza a coleta, se humano ou automático com máquinas.

FIGURA 2 – TIPOS DE PICKING POR PEDIDO

FONTE: Adaptado de (KOSTER, DE et al., 2007)

Picker-to-parts: São aqueles em que o operador anda pelos corredores coletando itens e são divididos em dois grupos, de nível baixo e de nível alto. Nos corredores de nível baixo os operadores percorrem coletando os SKU´s somente das prateleiras mais próximas ao chão. Já nos sistemas de nível alto, o operador percorre os corredores com uma empilhadeira e coleta os itens das prateleiras de níveis mais altos, como mostrado na FIGURA 3. (KOSTER, DE et al., 2007)

(20)

FIGURA 3 – NÍVEIS ALTO E BAIXO EM UM CD

FONTE: O AUTOR (2018)

Os processos picker-to-parts de nível baixo são ainda separados em três grupos: discreto, por lotes e por zonas.

No picking discreto, o operador separa todos os SKU´s de um único pedido, para em seguida começar um novo. Se por um lado a integridade do pedido é mantida pois será coletado por completo, por outro o operador pode gastar mais tempo percorrendo rotas de coleta mais longas. No picking por lotes, o operador recebe um lote de pedidos agrupados e é responsável pela coleta de todos os itens do lote em uma viagem de separação. Já no picking por zonas, a cada operador é atribuído uma parte do CD (como por exemplo algum corredor), sendo que todos os pedidos com itens a serem coletados em uma determinada parte, serão de responsabilidade de coleta do operador atribuído àquela parte.

Parts-to-picker: Nestes sistemas são utilizados guindastes para coletas – sistemas automatizados de armazenagem e coleta (automated storage and retrieval systems – AS/RS), em que os guindastes são presos aos corredores e coletam as unidades de armazenagem completas (paletes), levando-as aos locais de picking. Com o palete no chão, o operador realiza a coleta da quantidade de SKU´s do pedido e o palete é recolocado nas prateleiras em seguida.

Put: Primeiramente é realizada uma pré-coleta dos itens com maior rotatividade (geralmente em CD´s com baixa variabilidade de produtos), para que estes sejam colocados em contendores à disposição dos operários. De acordo com os pedidos, os

(21)

operários coletam os itens dos contendores e colocam (“put”) em áreas separadas especificas para cada pedido.

Automated: Somente são utilizados em casos especiais (como em itens com muito valor agregado, muito pequenos ou delicados).

Neste trabalho, o sistema picker-to-parts de nível baixo é abordado, mais especificamente os métodos de roteirização utilizados quando da coleta dos SKU´s de um pedido, chamado de problema de roteirização de picker único (Single-Picker Routing-Problem – SPRP).

2.2 SINGLE PICKER ROUTING PROBLEM (SPRP)

Os centros de distribuições (CD) tratados neste trabalho são os de bloco único, sendo este o padrão da literatura ao se tratar da roteirização em CD´s. Na FIGURA 4 é mostrado um CD em sua vista superior, em que os quadrados pretos representam os SKU (a partir de agora chamados de itens) a serem coletados, junto à sua representação via grafos.

FIGURA 4 – REPRESENTAÇÃO DE UM CD: FÍSICA E POR GRAFOS

FONTE: O autor (2018).

A FIGURA 5 representa um CD com 5 corredores de coleta e dois corredores transversais: corredor transversal inferior (CTI) e corredor transversal superior (CTS).

O ponto inicial para início da coleta dos itens se localiza no canto inferior esquerdo, em frente ao primeiro corredor de coleta. A distância entre dois locais de coleta, situados no mesmo corredor e consecutivos entre si, é unitária. A distância entre corredores

(22)

consecutivos é de 5 unidades de medida (um), a distância ao sair de um corredor de coleta e entrar em um corredor transversal é de 1(um), como mostrado na FIGURA 6.

FIGURA 5 – CENTRO DE DISTRIBUIÇÃO

FONTE: O autor (2018).

FIGURA 6 – MEDIDAS UTILIZADAS NO CD

FONTE: O autor (2018).

A numeração dos itens a serem coletados é sequencial e de incremento unitário para cada corredor, iniciando no CTI até chegar no CTS, do corredor mais à esquerda até o mais à direita do CD (na FIGURA 4 por exemplo, embora os pontos de coletas estejam nas prateleiras 3 e 7, são referentes aos pontos 1 e 2, respectivamente),já os arcos de um determinado corredor são representados pelo conjunto (número do corredor-(1º ponto, 2º ponto)) (o arco ligando o ponto 1 ao ponto 2 na FIGURA 4 é então (1-(1,2)).

(23)

Neste trabalho considerou-se um CD com 10 corredores e 45 localizações de produtos em cada lado do corredor, da mesma forma considerada no trabalho de (HENN; WÄSCHER, 2012) .

Os itens a serem coletados são posicionados no centro de cada prateleira, de forma que, se existem itens em ambas as prateleiras de uma posição (esquerda e direita), o local de coleta é o mesmo.

As distâncias em um CD não são todas euclidianas, uma vez que itens em corredores diferentes possuem prateleiras separando-os, nestes casos é calculada a distância Manhattan. Para se calcular a distância entre 2 pontos ሺܲͳ െ ܲʹሻ no CD, existem 3 possibilidades variando de acordo com as posições de ܲͳ e ܲʹ, mostradas a seguir:

x ܲͳ ou ܲʹ é o ponto de início da rota:

A distância entre os pontos é a distância entre ܲͳ e ܲʹ passando pelo CTI.

x ܲͳ e ܲʹ estão localizados em corredores diferentes:

Duas distâncias devem ser consideradas, de ܲͳ a ܲʹ passando pelo CTI, e de ܲͳ a ܲʹ passando pelo CTS, a menor das duas é considerada na matriz de distâncias.

x ܲͳ e ܲʹ estão localizados no mesmo corredor:

A distância é simplesmente a diferença, em módulo, de posicionamento entre os dois pontos no corredor.

O SPRP consiste em, dado um CD de bloco único e uma lista de posições com localizações de itens a serem coletados, encontrar a rota de menor distância total, de tal forma que, saindo de um ponto inicial, todos os locais com itens sejam visitados uma única vez.

2.3 O PROCESSO DE PICKING CAPACITADO (CSPRP)

Embora os modelos e métodos para o SPRP supram uma grande demanda nos CD´s, pode-se dizer que os mesmos ainda não consideram características práticas reais que influenciam de forma direta a roteirização que será realizada, como por exemplo, a verificação de volumes e posicionamentos dos SKU´s nos paletes.

(24)

Pode acontecer de uma rota satisfazer todos os critérios do SPRP e na prática ser inviável pelo carregamento em um único palete, podendo ser impossível alocar todos os SKU´s ditados na sequência da rota seja por volume ou por peso ou, até mesmo, pela resistência dos itens colocados mais abaixo no palete. Neste trabalho é abordado o Problema de Roteirização de Picking Capacitado (CSPRP).

Considera-se que cada SKU (a partir de agora chamado de caixa ou item) é um hexaedro com todas as faces retangulares (uma caixa), e dimensões ሺܺǡ ܻǡ ܼ) nos eixos cartesianos, o canto inferior esquerdo frontal da caixa é localizado em ሺݔǡ ݕǡ ݖሻǤ

Da mesma forma que as caixas, os espaços vazios também são hexaedros com todas as faces retangulares e também são representados por suas dimensões ሺܺǡ ܻǡ ܼሻ e localização ሺݔǡ ݕǡ ݖ) do canto inferior frontal esquerdo. A FIGURA 7 representa um espaço com dimensões ሺܺǡ ܻǡ ܼሻ e canto inferior esquerdo centrado na origem (0,0,0).

FIGURA 7 – ESPAÇO CENTRADO NA ORIGEM

FONTE: O autor (2018).

Além dos atributos geométricos, cada caixa possui mais 3 atributos : ሺ݅ሻ massa própria, ሺ݅݅ሻ massa máxima e ሺ݅݅݅ሻ restrições de rotação:

ሺ݅ሻ : massa própria: massa total da caixa.

ሺ݅݅ሻ : massa máxima: somatório máximo de massas que a caixa suporta.

(25)

ሺ݅݅݅ሻ ׷ restrições de rotação: posições ሺܺǡ ܻǡ ܼሻ para as quais o objeto não pode ser rotacionado.

Os atributos ሺ݅ሻ e ሺ݅݅ሻ dizem respeito à restrição de empilhamento máximo permitido em uma caixa, como mostrado na FIGURA 8. Supondo que cada caixa tenha massa de 1 unidade de massa (um.), a face em vermelho está sob efeito de 3 um., a face em amarelo sob 1 um. e as verdes sob nenhuma. Desta forma, supondo que a massa máxima da caixa com face vermelha seja 3 um., fica proibida a inserção de qualquer outra caixa acima da mesma, sob pena de violar o empilhamento máximo.

FIGURA 8 – RESTRIÇÕES DE EMPILHAMENTO MÁXIMO

FONTE: O autor (2018).

O atributo ሺ݅݅݅ሻ diz respeito a restrições de posicionamento que a caixa possa ter (por exemplo caixas com restrição de “este lado para cima”). Cada caixa pode ser rotacionada em no máximo 6 formas diferentes,como mostrado na FIGURA 9:

(26)

FIGURA 9 –TIPOS DE ROTAÇÃO DAS CAIXAS

FONTE: O autor (2018).

Considerando que exista um ݁ݏ݌ܽ­݋ ܱ (no incio é o palete inteiro), uma lista com ሼ݅൫ܺ଴ǡܻǡ ܼǡ ݉ǡ ܯ൯ǡ ݅൫ܺଵǡܻǡ ܼǡ ݉ǡ ܯ൯ ǥ݅ሺܻܺǡ ܼǡ ݉ǡ ܯሻሽ ൌ ܫ com ܿ tipos distintos de caixas, cada uma com suas dimensões X Y e Z e sua massa e massa máxima m,M, uma sequência ൛݌଴ǡ݌ଵǡǥ ݌ൟ ൌ ܲ com ݊localizações para coleta em um CD, um lista ሼܳ௖଴ǡ ܳ௖ଵǡ ǥ ǡ ܳ௖௡ሽǣ ܿ א ܫ com quantidades ܳ de caixas do tipo ܿ para todas as localizações, e, para cada elemento do conjunto ܫuma sequência de posições restritas ሼݎଵ௖ǡ ݎଶ௖ǡ ǥ ǡ ݎ௡௖ሽ ൌ ܴ௡௖.

O CSPRP consiste em encontrar as um conjunto de rotas (ou mesmo uma) e para cada rota um conjunto de posições ݔǡ ݕ௜ǡݖ para todos os itens ݅ destas rotas, de tal forma que:

x todas as quantidades ܳ௖௡ de itens ܫdos pontos ܲ contidos em cada rota, estejam dentro do ݁ݏ݌ܽ­݋ O sem sobreposição, e respeitando as restrições de empilhamento máximo e de posições restritas.

x Todos os itens devem estar verticalmente estáveis (a superficie inferior de uma caixa sempre deve estar completamente apoiada sobre a superficie superior de outra caixa (ou espaço).

x As caixas devem ser posicionadas no palete na ordem em que aparecem na rota (LIFO), ou seja, ao se coletar itens de um ponto, não se pode retirar uma caixa e recolocá-la novamente no palete.

x O somátorio da distancia de todas as rotas deve ser minimizado

(27)

Neste capitulo foram definidos os dois problemas base para o desenvolvimento das heuristicas propostas neste trabalho (SPRP e CSPRP). O CSPRP é uma extensão do SPRP com restrições práticas de carregamento.

(28)

3 REVISÃO DE LITERATURA

3.1 TRABALHOS CORRELATOS

O objetivo das políticas de roteirização no SPRP é determinar uma boa sequência para a realização das coletas de itens em um depósito. Dessa forma, as políticas de roteirização nada mais são do que casos especiais do TSP com algumas características especificas que devem ser levadas em consideração.

Diferentemente do TSP clássico, no SPRP nem todos os nós do grafo precisam ser visitados. No caso da FIGURA 4, somente aqueles em preto precisam fazer parte da rota final, sendo que os nós em branco representam os pontos de cruzamento entre corredores. Também é permitido visitar os locais de coleta mais de uma vez, devido as características físicas da estrutura de um CD. O TSP com essas características é classificado como o Steiner TSP (STSP) e, para o mesmo, não existe algoritmo em tempo polinomial que posso resolvê-lo (KOSTER, DE et al., 2007). No entanto, foi mostrado por (RATLIFF; ROSENTHAL, 1983) que, para o tipo de CD da FIGURA 4, existe um algoritmo que pode resolver o problema em tempo polinomial em função do número de corredores e de locais de coleta.

Em (CORNUEJOLS et al., 1985), é mostrado que o algoritmo de (GOETSCHALCKX; RATLIFF, 1998) pode ser estendido de tal forma que resolva o STSP em grafos chamados “série-paralelo”. Grafos “serie-paralelo” são todos os grafos que podem ser obtidos a partir da aplicação recursiva das seguintes regras, partindo de um grafo inicial com uma aresta e dois vértices:

1 – Duplicar uma aresta (adicionar uma aresta unindo dois vértices já existentes)

2 – Substituir uma aresta ݑݒ por duas arestas ݑݓ e ݓݒ, em que ݓ é um novo vértice.

As operações 1 e 2 são representadas nas FIGURA 10 e FIGURA 11, respectivamente

FIGURA 10 – DUPLICAÇÃO DE ARESTA

(29)

FONTE: O autor (2018).

FIGURA 11 – SUBSTITUIÇÃO DE ARESTA

FONTE: O autor (2018).

O trabalho de (KOSTER, DE; POORT, VAN DER, 1998) atualiza o algoritmo de (GOETSCHALCKX; RATLIFF, 1998) para que o mesmo possa ser utilizado em armazéns que não podem ser modelados como grafos em “série-paralelos” .O algoritmo de (KOSTER, DE; POORT, VAN DER, 1998) encontra o menor caminho em um grafo com depósito de item descentralizado, ou seja, os itens coletados nos corredores não precisam ser levados à doca de expedição (doravante chamado de depot), mas podem ser deixados nas saídas ou entradas dos corredores.

Como as atividades de picking geralmente precisam ser executadas o mais rápido possível, uma prática comum entre os gestores da atividade de picking é deixar de lado as soluções ótimas em função de soluções heurísticas, perdendo em qualidade da solução, mas agregando valor em economia no tempo de geração das rotas (KOSTER, DE et al., 2007). Além disso, deve-se notar que não existem, à priori, algoritmos ótimos para todos tipos de layout de CD´s.

O problema de roteirização do picking pode ser resolvido de diversas formas.

A mais divulgada se faz via programação inteira, por meio de modelos clássicos do caixeiro viajante (LAPORTE, 1992). Como as estruturas de depósitos são bem definidas e raramente mutáveis (corredores e prateleiras de coleta), pode-se incorporar informações a respeito do layout nos métodos de resolução, inclusive nos modelos matemáticos.

Um modelo de programação inteira que se apropria destas informações é proposto por (SCHOLZ et al, 2016). Neste estudo, todas as possíveis combinações de rotas em um corredor são mapeadas, para que em seguida possam ser rastreados os padrões de passagem entre pontos principais do corredor. Em consequência disto,

(30)

percebe-se que para os corredores, somente 4 pontos são necessários para que todos os arcos com produtos sejam visitados (SCHOLZ et al., 2016).

Com essa informação, Scholz et al (2016) desenvolve um novo modelo matemático para o (SPRP), em que pela primeira vez, ambas restrições e variáveis crescem proporcionalmente ao número de corredores do depósito e não mais ao número de itens que devem ser coletados.

A heurística de correção de rotas apresentada neste trabalho, procura adaptar a idéia de discretização dos pontos em um CD apresentado por Scholz et al (2016). A Proposta é desenvolver as heurísticas em uma estrutura de resolução que não dependa de solvers, combinando métodos exatos de resolução do TSP, com uma abordagem de correção de rotas inviáveis. Em seguida, restrições de cunho mais prático serão inseridas, para que possa ser considerada a factibilidade do arranjo das caixas nos paletes bem como o empilhamento máximo das mesmas.

3.2 ROTEIRIZAÇÃO COM CARREGAMENTO

O problema de carregamento de caixas retangulares em paletes foi estudado por Hodgson (HODGSON, T, 1982), que distingue os problemas em duas categorias:

O Problema de Carregamento de Paletes do Produto (PCPP) e o Problema de Carregamento de Paletes do Distribuidor (PCPD) .Os dois se diferem na medida em que no PCPP existe apenas um tipo de caixa e no PCPD as caixas são heterogêneas.

O problema de carregamento de palete é o mesmo dos de carregamento de contêineres, os quais, quando tratados com a roteirização, tem seu início no Problema de Roteirização de Veículos Capacitados (Capacitated Vehicle Routing Problem – CVRP).

A extensão natural do TSP em aplicações reais recai sobre os CVRP. É assumido um depósito central localizado no vértice 0, sendo que uma frota de ܭ veículos idênticos está disponível e ݊ clientes estão localizados nos vértices ͳǡʹǡ Ǥ Ǥ Ǥ ǡ ݊.

Todos os veículos possuem uma capacidade ܦ e todos os clientes possuem uma demanda ݀ሺܿ݋݉Ͳ ൑ ݀ ൑ ܦ݌ܽݎܽ݅ ൌ ͳǡʹ ǥ ǡ ݊ሻ. O CVRP busca encontrar um conjunto de no máximo ܭ rotas, cada uma visitando o depósito e um conjunto de clientes, de tal forma que; ሺ݅ሻ todo cliente seja visitado por um único veículo, ሺ݅݅ሻ cada veículo realize

(31)

no máximo uma rota, ሺ݅݅݅ሻ a soma das demandas de cada rota não ultrapasse ܦ;ሺ݅ݒሻ o somatório de custos de todos os arcos seja mínimo (LAPORTE; LAPORTE, 2009).

No CVRP, as demandas dos clientes são expressas por um valor que representa a massa dos itens a serem entregues, na medida em que nas aplicações reais as demandas consistem não somente de massa, mas também de um formato.

Uma modelagem mais precisa pode envolver problemas do tipo; a ordem de carga e descarga do itens, tratamento de itens frágeis, restrições de rotação dos itens, entre outros (BORTFELDT; WÄSCHER, 2013). Um problema prático comum surge quando deve-se garantir que todos os itens atribuídos a um veículo devem ter suas alocações físicas viáveis dentro do mesmo.

As restrições de carga citadas estão relacionadas com o problema de carregamento multidimensional, que são extensões do problema clássico de bin packing unidimensional (MARTELLO; TOTH, 1991) (JR et al., 1997). Uma vasta literatura trata dos problemas de carregamento multidimensional, destes, alguns que foram tratados juntamente ao problema de roteamento são (IORI; MARTELLO, 2010):

xTwo –Dimensional Bin Packing Problem (2BPP): Empacotar um conjunto de retângulos em retângulos maiores idênticos, de tal forma a minimizar o número de retângulos maiores (ܾ݅݊ݏሻ. Algoritmos exatos para o 2BPP são baseados em variações do branch-and-bound capazes de resolver instâncias até 100 itens, à época da publicação de (MARTELLO et al., 1998).

xTwo-dimensional Strip packing Problem (2SPP): Empacotar um conjunto de retângulos em um retângulo maior com largura definida e comprimento infinito, de forma a minimizar o comprimento total utilizado. Uma revisão sobre o assunto é apresentada em (RIFF et al., 2009).

xThree-Dimensional-Bin-Packing-Problem(3BPP): Empacotar um conjunto de caixas retangulares em um número mínimo de caixas retangulares maiores. (MARTELLO et al., 2000) propuseram algoritmos exatos para o problema.

xThree-Dimensional Strip Packing Problem (3SPP): Empacotar um conjunto de caixas retangulares com altura e largura definidos e profundidade infinita, com objetivo de minimizar a profundidade total. Uma heurística para o problema é encontrada em (BORTFELDT; MACK, 2007).

O problema de Roteamento de veículos com 3 dimensões (3L-CVRP) teve sua primeira contribuição proposta na metaheurística de Gendreau (GENDREAU et al.,

(32)

2005). No 3L-CVRP, para cada veículo alocado, um problema de empacotamento 3D deve ser resolvido. Este consiste em encontrar uma organização das caixas dentro do volume do veículo de tal forma que não exista sobreposição. Além das restrições de massa e de empacotamento, existem outras restrições que surgem de problemas reais.

Algumas caixas podem possuir restrições de fragilidade, ou seja, nenhuma caixa pode ser alocada acima destas. Ainda, deve existir uma área de apoio mínima para manter as caixas estáveis.

O 3L-CVRP consiste em encontrar um conjunto de no máximo ܭ rotas, tais que:

ሺ݅ሻtodo cliente seja visitado uma vez, ሺ݅݅ሻ nenhum veículo carregue uma massa maior do que ܦ, ሺ݅݅݅ሻ – Para todo veículo existe um carregamento tridimensional que satisfaz as restrições citadas acima (fragilidade, área de suporte e carregamento sequencial) e ሺ݅ݒሻa solução tenha custo mínimo.

O algoritmo de (GENDREAU et al., 2005) parte do seu próprio método de resolução do problema de 2 dimensões, porém introduz uma nova maneira de se determinar as cargas dos veículos por meio de uma lista Tabu.

(JUNQUEIRA, 2013) propõe o primeiro modelo de programação linear inteira para o 3L-CVRP com restrições práticas, incluindo todas as abordadas por Gendreau, porém, pela complexidade do problema, somente aqueles com tamanhos moderados foram resolvidos na otimalidade (JUNQUEIRA et al., 2013). Como alternativa aos modelos, Junqueira (2013) propõe algumas heurísticas, deixando de lado algumas das restrições práticas.

Em suas heurísticas, Junqueira (2013) utiliza módulos específicos para cada uma das partes do problema, no roteamento é usado o algoritmos de Clarke & Wright (CLARKE; WRIGHT, 1964) e na parte de carregamentos o algoritmo base é o de George & Robinson (GEORGE, J; ROBINSON, D, 1980), ao qual Junqueira realiza diversas modificações, incluindo as 60 permutações propostas em (MORABITO, 2004).

3.3 FUNDAMENTAÇÃO TEÓRICA 3.3.1 CONCEITOS DE GRAFOS

Um grafo ܩ ൌ ሺܰǡ ܣሻ é uma estrutura que consiste em um conjunto finito ܸ

(33)

de elementos chamados nós/vértices e um conjunto não ordenado de pares de nós chamados arcos/arestas. Um grafo dirigido ou dígrafo é definido similarmente, exceto que, cada arco é um par ordenado (LAWLER, 1976).

Um grafo é dito bipartido se o seu conjunto de vértices ܰ pode ser particionado em dois subconjuntos ܷ e ܸ, de tal forma que todos os arcos possuam um vértice em

ܷ e outro em ܸ como mostrado na FIGURA 12 (a). Se o grafo possuir arestas ligando todos os vértices de ܷ a todos os vértices de ܸ é então chamado de bipartido completo (CHRISTOFIDES, 1975), como mostrado na FIGURA 12 (b).

FIGURA 12 – GRAFO BIPARTIDO

FONTE: O autor (2018).

Chama-se subgrafo de ܩ ൌ ሺܰǡ ܣሻ, o conjunto ܩԢ ൌ ሺܰԢǡ ܣԢሻ, tal que ܰԢ ك ܰ e ܣԢ ك ܣ, como mostrado na FIGURA 13. Um caminho entre ݏ e ݐ é uma sequência de arcos de forma ሺݏǡ ݅ሻǡ ሺ݅ǡ ݅ሻǡ ǥ ǡ ሺ݅ǡ ݐሻ e um subcaminho de um caminho é uma sequência de arcos do caminho. Um ݈ܿ݅ܿ݋ é um caminho ሺݏǡ ݏሻ com pelo menos um arco. Um caminho Euleriano é um caminho em que todos as arcos de ܩ aparecem somente uma vez.

(34)

FIGURA 13 – GRAFO E SUBGRAFO

FONTE: O autor (2018).

Um grafo sem ciclos é chamado de acíclico. Dois nós são conectados se existe um caminho ሺ݅ǡ ݆ሻ entre eles e um grafo é conectado se todos os pares de nós são conectados. Um ciclo Hamiltoniano é um ciclo ሺݏǡ ݏሻ em um grafo, tal que não existem dois nós iguais no caminho de ݏ a ݏ exceto ݏ, e um grafo é Hamiltoniano se existe um ciclo Hamiltoniano que passe por todos os nós do grafo (LAWLER, 1976). Uma subrota em ܩ é um ciclo Hamiltoniano que não contém todos os nós de ܩ.

Uma árvore em ܩ é um subgrafo acíclico conectado com os nós de ܩ. Uma árvore enraizada é uma árvore tal que:

A – Existe um nó especial chamado nó raiz, e

B – Os nós restantes (exceto a raiz) são particionados em ܰ ൐ Ͳ conjuntos disjuntos ܰǡ ܰǡ ǥ ǡ ܰ tal que cada elemento do conjunto é também uma árvore.

O nível de um nó definido em relação a ܰ é: o nó raiz tem nível 1 e os outros têm um nível a mais do que eles têm em relação à subárvore de raiz ܰ que contém os mesmos (KNUTH, DONALD, 1969).

Um filho de um nó ݊ͳé qualquer nó diretamente conectado à ݊ͳ com um nível mais alto do que ݊ͳ, como mostrado na FIGURA 14. A raiz A contém dois nós filhos B e C, que também são subárvores de A.

(35)

FIGURA 14 – NÍVEIS DE UMA ÁRVORE

FONTE: Adaptado de (KNUTH, DONALD, 1969).

3.3.2 PROBLEMA DE DESIGNAÇÃO (AP)

O Problema de Designação (Assigment Problem – AP) define-se em encontrar a alocação ótima de n trabalhadores à n tarefas, visto que a cada tarefa existe um peso indicando o quão bem cada trabalhador realiza a mesma. Uma designação ótima é aquela em que faz a soma de pesos à máxima possível (no caso de pesos como preferências do tipo “maior é melhor”), ou ainda, uma que faça a soma a menor possível (no caso em que os pesos sejam o custo de designação, do tipo “menor é melhor”) e para esta o modelo matemático de Programação Linear Binária é o que segue:

(MUNKRES, 1957):

Variáveis de decisão:

ܺ௜௝ ൌ ቄͳݏ݁݋ܽݎܿ݋ሺ݅ǡ ݆ሻ݂ܽݖ݌ܽݎݐ݁݀ܽݏ݋݈ݑ­ ݋

Ͳܿܽݏ݋ܿ݋݊ݐݎžݎ݅݋ (3.1)

ܯܼ݅݊ ൌ ෍ ෍ ܥ௜௝ܺ௜௝

௝ୀଵ

௜ୀଵ

(3.2) Sujeito a:

෍ ܺ௜௝

௜ୀଵ

෍ ܺ௝௜ ൌ ͳ

௜ୀଵ

׊݆ ൌ ͳǡʹ ǥ ݊ (3.3)

ܺ௜௝ ൌ Ͳ݋ݑͳ (3.4)

(36)

Em que ܺ௜௝ é igual a 1, se o trabalhador ݅ é designado à tarefa ݆ e igual a 0 caso contrário.

O AP também pode ser modelado e resolvido partindo de uma abordagem via grafos: se, em um grafo bipartido completo, todas as suas arestas possuírem um peso associado, o AP pode ser definido como: Encontrar um conjunto de arestas ܣƲ em ܩ de tal forma que todos os vértices ܷ estejam ligados a um único vértice de ܸ e todos os vértices de ܸ estejam ligados a um único vértice de ܷ, maximizando o somatório dos custos de todas as arestas (PAPADIMITRIOU; STEIGLITZ, 1982).

Métodos de resolução:

O método Húngaro é um dos algoritmos mais conhecidos para a resolução do AP. Primeiramente foi desenvolvido por (KUHN, 1950) e posteriormente aprimorado por (MUNKRES, 1957). Existem diversas implementações para o método, entre elas as de (CHRISTOFIDES, 1975) e (PAPADIMITRIOU; STEIGLITZ, 1982).

A metodologia de (CHRISTOFIDES, 1975), que segue a ideia do algoritmo aprimorado de Munkres, é apresentada na FIGURA 15.

FIGURA 15 – MÉTODO HÚNGARO: CHRISTOFIDES

Método Húngaro – Christofides

1 Para cada coluna da matriz encontre o menor elemento e o subtraia de todos os elementos da referida coluna. Armazene todos os mínimos em um vetor ߨ

2 Marque o máximo número de zeros na matriz, de tal forma que nenhum zero seja marcado mais de uma vez em alguma linha ou coluna.

3 Encontre uma linha s sem zero marcado e inicialize um vetor ݌ ൌ Ͳ. Se tal linha não existir, a solução atual é ótima.

4 Começando em ݌ ൌ Ͳ, com todas as outras linhas e colunas não marcadas

marque toda coluna não marcada k que contenha um 0 não marcado em uma linha marcada, com ݌ൌ ݅

5 Marque toda linha i não marcada, que tenha uma 0 marcado em uma coluna marcada, com ݌

݇

6 Repita as marcações 6 e 7 até que uma coluna t sem marcações seja marcada (A), ou até que nenhuma marcação seja possível (B).

7 (A) Um caminho melhorado ݐǡ ݌௧Ʋǡ ݌௧ƲƲǡ ǥ ǡ ݏ foi encontrado, em que ݐƲ ൌ ݌ǡ ݐƲƲ ൌ ݌௧Ʋǡ ݁ݐܿǤ Inverter os zeros marcados e não marcados nas posições (ݐǡ ݌ሻǡ ሺ݌௧Ʋǡ ݌௧ƲƲሻǡ ǥ ǡ ሺǤ ǡ ݏሻ, dessa forma um elemento na solução atual. Os valores de ݌ são apagados e o processo se repete até que o número de zeros = n.

8 (B) Defina ܫ݁ܭ como o conjunto de todas as linhas e colunas marcadas, e ܫି݁ܭି as não marcadas e calcule: οൌ ‹௜אூ

௞א௄

ሾܥƲ௜௞ሿ e atualize

9 ߨൌ ߨ൅ ο para ݅ א ܫ e ߨ ൌ ߨെ ο para ݇ א ܭ . Repita 6 e 7.

FONTE: O autor (2018).

O algoritmo de Papadimitriou (PAPADIMITRIOU; STEIGLITZ, 1982) transforma o grafo bipartido em uma rede com um subconjunto de todas as arestas de ܣ que satisfaçam uma condição (linha 3 da FIGURA 16). Em seguida o algoritmo de Fluxo

(37)

Máximo de Ford-Fulkerson (FORD, L. R, 1963) é aplicado repetidas vezes. Para que o subgrafo se transforme em uma rede e o algoritmo de Fluxo Máximo de Ford-Fulkerson possa ser aplicado, insere-se uma fonte ሺܵሻ ligada à todos os vértices ܸ e todos os vértices ܷ ligados a um sumidouro ሺܶሻǤ

O algoritmo de Fluxo Máximo de Ford-Fulkerson é aplicado em um subgrafo ܩƲ ൌ ሺܸǡ ܷǡ ܣƲሻ de ܩ ൌ ሺܸǡ ܷǡ ܣሻ de tal forma que, quando o fluxo máximo é encontrado, verifica-se se o número de emparelhamentos é igual a n. Se sim, o AP está com a solução ótima, caso contrário, um novo subgrafo de ܩ ൌ ሺܸǡ ܷǡ ܣሻ é criado e o processo repetido até que o número de emparelhamentos seja n. O algoritmo de Papadimitriou (PAPADIMITRIOU; STEIGLITZ, 1982) é apresentado na FIGURA 16:

FIGURA 16 – MÉTODO HÚNGARO: PAPADIMITRIOU Método Húngaro – Papadimitriou

1 Inicializar os vetores α e β com n posições, Ƚൌ Ͳ׊݅݁Ⱦൌ ݉݅݊ଵஸ௜ஸ௡ሺܥ௜௝ሻǤ

2 Inserir uma fonte s ligada a todos os pontos ܸ e um sumidouro que esteja ligado a todos os pontos ܷ

3 Criar o Subgrafo ܩƲ ൌ ሺܸǡ ܷǡ ܣƲሻ de ܩ ൌ ሺܸǡ ܷǡ ܣሻ utilizando somente as arestas em que ܥ௜௝ ߙെ ߚൌ Ͳ.

4 Resolver o problema de fluxo-máximo pelo algoritmo de Floyd-Fulkerson em ܩƲ ൌ ሺܸǡ ܷǡ ܣƲሻ, armazenando as informações de vértices ݒ e ݑ marcados no processo.

5

No término do algoritmo de fluxo máximo: se o número de emparelhamentos é igual a n, então, ir para o passo IX, caso contrário armazenar ܫכ݁ܬכe ir para o passo VI: ܫכ

ሼ݅ǣ ݂݋݊ݐ݁ܵ±݉ܽݎܿܽ݀ܽሽ݁ܬכൌ ሼ݆ǣ ݏ݁݉݅݀݋ݑݎ݋ܶ±݉ܽݎܿܽ݀݋ሽ 6 Calcular o valor, ߠ ൌ

‹௜௝൫ܥ௜௝െ ߙെ ߚ൯ de todos os vértices marcados ݒא ܸ e não marcados ݑא ܷ.

7 Atualizar as variáveis: ߙכൌ ൜ߙ൅ ߠ݅ א ܫכ

ߙെ ߠ݅ ב ܫכ ߚכൌ ൜ߚെ ߠ݆ א ܬכ ߚ൅ ߠ݆ ב ܬכ 8 Voltar para o passo 3

9 Fim.

FONTE: O autor (2018).

(LOCH, 2014) propôs uma nova abordagem de resolução para o problema do transporte, comparando-o ao clássico e consolidado método MODI (REINFELD;

VOGEL, 1958). O novo método se diferencia na medida em que nem todas as variáveis duais são atualizadas a cada iteração, como prevê o método MODI. Para se descobrir quais custos reduzidos das variáveis devem e quais não devem ser atualizados, é

(38)

proposta uma resolução em árvores. Essa estrutura permite uma clara visualização dos padrões de atualização dos custos reduzidos (LOCH, 2014) .

Além de não se atualizar todas as variáveis duais pelo método em si, é proposto também um método de pricing. Ao se manter um registro contendo todas variáveis duais, somente são atualizadas aquelas cuja razão de economia entre o valor atual e o da iteração anterior ficar abaixo de uma tolerância pré-estabelecida.

O AP pode ser avaliado como um caso específico do problema de transporte, considerando que existem ݊ fornecedores e ݊ clientes, com todas as demandas e ofertas iguais a 1. Dessa forma, analisando as substanciais reduções em tempo computacional que se consegue atingir com o método aplicado ao problema do transporte, é natural testá-lo também ao problema de designação. Estes testes foram realizados por (LOCH, 2014), porém comparando o novo método em árvore somente com o método MODI para resolução da designação e não a algoritmos específicos de resolução do AP. Com o método proposto, comparado a implementação do MODI estruturada em quadros, houve uma redução de 95,18% em tempo médio de resolução.

3.3.3 O PROBLEMA DO CAIXEIRO VIAJANTE

Seja ܩ ൌ ሺܰǡ ܣሻ um grafo, sendo ܰ ൌ ሼͲǡ ǥ ǡ ݊ሽ seu conjunto de vértices, e ܣ ൌ ሼሺ݅ǡ ݆ሻȁ݅ǡ ݆ א ܰሽ seu conjunto de arestas, à cada aresta ሺ݅ǡ ݆ሻ א ܣ existe um custo associado, formando a matriz ܥ. O problema do caixeiro viajante (Traveling Salesman Problem TSP) se resume em determinar uma rota com menor distância dentre todos as possíveis, passando exatamente uma vez por cada vértice do conjunto ܣ.

A matriz de distâncias ܥ pode ser simétrica ou assimétrica (Assimetric Traveling Salesman Problem- ATSP); no primeiro caso têm-se que ܥ௜௝ ൌ ܥ௝௜ para todo ݅ǡ ݆ א ܸ e no segundo, para pelo menos algum ݅ǡ ݆ א ܸ ǡ ܥ௜௝ ് ܥ௝௜.

Diversas variações foram propostas para o TSP, parte destas baseando-se em uma simples suspeita de que alguns problemas ou aplicações da vida real podem ser modeladas como o TSP. Uma lista com alguns casos, é apresentada a seguir:

xO Máximo TSP: O problema do TSP Máximo é equivalente ao do TSP com uma função objetivo a ser maximizada ao invés de minimizada, ou seja, encontrar a

(39)

ordenação do conjunto de vértices ܸ ൌ ሼͲǡ ǥ ǡ ݊ሽ de tal forma que a soma dos arcos gerados ܣ ൌ ሼሺ݌ǡ ݍሻȁ݌ǡ ݍ א ܸሽ seja a maior possível.

xThe Bottleneck TSP (BTSP): O BTSP consiste em encontrar um ciclo Hamiltoniano tal que, de todos os arcos contidos na rota, o maior seja minimizado. O problema foi introduzido por (GILMORE, P; GOMORY, E, 1964) e teve sua estrutura generalizada por (AUTHORITY, 1978), que também explicitou uma aplicação nos ambientes de machine scheduling.

xTSP com múltiplas visitas: Neste caso, deve-se encontrar a rota mínima que comece em um determinado vértice ܰ ൌ ሼͲǡ ǥ ǡ ݊ሽ visitando todos pelo menos uma vez e retornando ao vértice inicial, de tal forma que o custo da rota seja mínimo.

xO problema do caminho mínimo: O problema define-se por, dados dois vértices ݑ݁ݒ א ܰ , encontrar o mínimo caminho Hamiltoniano em ܩ de ݑ a ݒ

xTSP Clusterizado: neste caso existe uma segregação do conjunto de vértices de ܩ em clusters ܿǡ ܿǥ ܿ, e o problema é então encontrar a rota única de menor custo, sujeito a restrição de que cidades de um mesmo cluster devem ser visitadas consecutivamente (GUTTMAN-BECK et al., 2000), (JONGENS; VOLGENANT, 1985).

xMúltiplos TSP: Supondo que existam ݉ caixeiros-viajantes no nó 1 de ܩ, cada caixeiro visita um subconjunto ܺ de nós de ܩ exatamente uma vez, retornando ao nó inicial. Deve-se encontrar uma partição ܺǡ ܺǡ ǥ ǡ ܺ݀݁ܰ െ ሼͳሽ e uma rota para cada partição, de forma que ȁܺȁ ൒ ͳ para todo ݅, ڂ௜ୀଵܺ ൌ ܰ െ ሼͳሽ, ܺ ת ܺ ൌ ׎ para ݅ ് ݆, e a distância total percorrida por todos os caixeiros-viajantes seja minimizada. (BEKTAS, 2006).

Métodos de resolução:

(40)

Ao se lidar com problemas com complexidades NP/NP-Completos e NP- difíceis, usualmente lança-se mão de métodos que não exploram a totalidade do espaço de busca. Visa-se, assim, reduzir o tempo computacional dos cálculos, em detrimento da melhor resposta que poderia ser obtida. Estes são conhecidos por métodos aproximados. Apesar da dificuldade de resolução do TSP, alguns algoritmos conseguem explorar todo o espaço em um tempo que, em média é polinomial, como o algoritmo Simplex (CORMEN, 1996).

Métodos aproximados podem ainda ser classificados em duas famílias distintas, os algoritmos aproximativos e as heurísticas. Os algoritmos aproximativos fornecem bounds provados em algum aspecto do problema, seja em qualidade de solução ou tempo computacional, na medida em que as heurísticas encontram soluções consideradas boas em tempo computacional aceitável, porém não garantem nenhum tipo de bound (TALBI, 2009).

Os métodos heurísticos, por sua vez, também podem ser classificados em dois subtipos; heurísticas especificas e meta-heurísticas. As heurísticas específicas são engendradas para resolver uma classe específica de problemas e/ou instâncias. Já as meta-heurísticas podem ser utilizadas para se resolver problemas genéricos (TALBI, 2009). Arenales et. al (2007) ainda considera a subdivisão das heurísticas em duas;

construtivas e de busca local;

Uma árvore dos métodos é mostrada na FIGURA 17.

FIGURA 17 – TIPOLOGIA DE MÉTODOS DE RESOLUÇÃO

FONTE: O autor (2018).

Métodos exatos:

(41)

A seguir são apresentados os modelos matemáticos mais comumente usados em programação inteira para resolução do TSP, bem como os métodos de aproximação clássicos encontrados na literatura.

Parte dos métodos exatos propostos para o TSP baseiam-se em de formulações matemáticas desenvolvidas por Programação Linear Inteira, de forma que algumas formulações e algoritmos derivados das mesmas são apresentados.

A primeira formalização de um modelo matemático para o TSP pode ser atribuída a (DANTZIG et al., 1954) - DFJ, em que designa uma variável binária ܺpor arco, indicando se o mesmo está contido na rota final ou não:

Variáveis de decisão:

ܺ௜௝

ൌ ቄͳݏ݁݋ܽݎܿ݋ሺ݅ǡ ݆ሻ݂ܽݖ݌ܽݎݐ݁݀ܽݏ݋݈ݑ­ ݋ Ͳܿܽݏ݋ܿ݋݊ݐݎžݎ݅݋

(3.5)

ܯ݅݊ ෍ ܥ௜௝ܺ௜௝

௜ஷ௝

(3.6)

Sujeito a:

෍ ܺ௜௝

௝ୀଵ

ൌ ͳǡ ݅ ൌ ͳǡ ǥ ǡ ݊ǡ (3.7)

෍ ܺ௜௝

௜ୀଵ

ൌ ͳǡ ݆ ൌ ͳǡ ǥ ǡ ݊ (3.8)

෍ ܺ௜௝

௜ǡ௝א஺

൑ ȁܵȁ െ ͳ (3.9)

ܵ א ܰǡ ʹ ൑ ȁܵȁ ൑ ݊ െ ʹ (3.10)

ܺ௜௝ א ሼͲǡͳሽ (3.11)

݅ǡ ݆ ൌ ͳǡ ǥ ǡ ݊ǡ ݅ ് ݆ (3.12)

A restrição de eliminação de subrotas (3.9) proíbe a formação de rotas em subconjuntos com menos do que ݊ vértices. As restrições desta formulação, crescem exponencialmente a medida em que o número de pontos cresce linearmente.

(42)

Uma nova formulação é proposta por (MILLER et al., 1960), em que o número total de restrições é reduzido significativamente ܱሺ݊ሻ:

Variáveis de decisão:

ݔ௜௝ ൌ ൜ͳǡ ݏ݁݋ܽݎܿ݋ሺ݅ǡ ݆ሻ݁ݏݐܽܿ݋݊ݐ݅݀݋݊ܽݎ݋ݐܽ

Ͳǡ ܿܽݏ݋ܿ݋݊ݐݎܽݎ݅݋ (3.13)

݄ǣ ݌݋ݏ݅­ ݋݀݋ݒ݁ݎݐ݅ܿ݁݌݊ܽݎ݋ݐܽǡ ݅ א ܸ (3.14)

‹ ෍ ܿ௜௝Ǥ ݔ௜௝

ሺ௜ǡ௝ሻא஺

(3.15) Sujeito a:

෍ ݔ௜௝ ൌ ͳ

௜אே

׊݆ א ܰ (3.16)

෍ ݔ௜௝ ൌ ͳ

௝אே

׊݅ א ܰ (3.17)

݄െ ݄൅ ሺ݊ ൅ ͳሻݔ௜௝ ൑ ݊׊ሺ݅ǡ ݆ሻ א ܣǣ ݅ǡ ݆ ് Ͳ (3.18)

ݔ௜௝ א ሼͲǡͳሽ׊ሺ݅ǡ ݆ሻ א ܣ (3.19)

݄ ൒ Ͳ׊ሺ݅ǡ ݆ሻ א ̳ܰሼͲሽ (3.20)

A função objetivo minimiza o custo total da rota, as restrições (3.16) e (3.17) garantem a entrada e saída de fluxo nos vértices. A restrição (3.18) exclui subrotas, garantindo que a posição do vértice ݌ em uma rota sempre será menor do que a posição atribuída ao vértice ݍ se o arco ሺ݅ǡ ݆ሻ for utilizado.

Além de se avaliar o número de restrições gerado pelo modelo, avalia-se também os limitantes inferiores quando da resolução do modelo de programação linear relaxado, ou seja, trocando as restrições (3.11) e (3.19) por :

Ͳ ൑ ݔ௜௝ ൑ ͳ׊ሺ݅ǡ ݆ሻ א ܣ (3.21)

Por este critério, embora o modelo de (MILLER et al., 1960) tenha um aumento de restrições de ordem linear, o mesmo tem um limitante inferior em sua relaxação linear muito fraco (LANGEVIN et al., 1990), de forma que a relaxação do modelo DFJ fornece limitantes próximos a 0.5% do ótimo (HELD; KARP, 1970).

Algoritmos Branch-and Bound (B&B) realizam uma enumeração sistemática das soluções candidatas, armazenadas em uma árvore enraizada. O algoritmo explora

(43)

os ramos da árvore que representam conjuntos de soluções, depois de realizar uma verificação dos Bounds já encontrados, se não existir possibilidade do ramo possuir melhores Bounds do que os já encontrados o mesmo é descartado (ARENALES et al., 2007).

Diversos algoritmos baseados em B&B foram propostos para se resolver o ATSP (CARPANETO; TOTH, 1980), (BALAS; CHRISTOFIDES, 1981), (MILLER;

PEKNY, 12729BC).

A relaxação pode ser obtida pela remoção, de qualquer modelo do TSP, das restrições que visam a eliminação de subrota. Em seguida o problema é resolvido iterativamente verificando todas as soluções e se as mesmas possuem subrotas, se sim, as restrições de eliminação de subrotas especificas para as que foram geradas são adicionadas ao modelo, e o mesmo é resolvido novamente, até que uma solução sem subrotas seja encontrada (restrições preguiçosas - lazy constraints). Uma resolução que também usa esta abordagem é a relaxação via problemas de designação e uma estrutura em árvore enumerativa de decisões (CHRISTOFIDES, 1975).

Estudos de base teórica sobre o TSP demonstram o resultado de que toda rota t do TSP é uma solução viável para o AP e o custo deste é justamente o custo total de t (BELLMORE; MALONE, 1971). Porém, nem toda solução do AP é uma rota do TSP, podendo ser consideradas coleções de subrotas do TSP. As restrições 3.2 do modelo de designação simplesmente garantem que a solução seja cíclica, dessa forma, se uma nova restrição for adicionada garantindo que o ciclo formado seja único (Hamiltoniano), tem-se um modelo matemático para o TSP.

O efeito equivalente às inserções de restrições para eliminação de subrotas pode ser obtido ao se definir ܥ௜௝ ൌ λ para algum ሺ݅ǡ ݆ሻ que esteja contido em alguma subrota e resolver o AP novamente, de forma que o arco ሺ݅ǡ ݆ሻ não deve estar mais na solução final, o mesmo processo pode ser repetido até o momento em que não existam mais subrotas na solução.

Para organizar a estruturação da resolução em forma de árvore de decisão, o AP inicial (P0) é considerado como o nó raiz da árvore. Por meio de inserções de ܥ௜௝ ൌ λ , de acordo com algum critério, novos subproblemas (P1, P2, etc.) são gerados a partir de P0. Este processo é repetido para todos os subproblemas PK (onde K = 1, .., k) até que o melhor caminho Hamiltoniano seja encontrado.

Referências

Documentos relacionados

Entre os objetivos da pesquisa encontram-se: a análise da representação do autismo na série ​Atypical a partir dos conceitos de identidade e diferença, estereótipos e estigmas,

Conclui-se que o teor de prolina varia entre as cultivares de mandioca, sendo maior nas cultivares Platina’ e ‘Caravela’, seguidas por ‘BRS Kiriris’, ‘BRS Verdinha’,

É ideal para os fabricantes e seus clientes, para escritórios e consultores especializados, para as oficinas de pintura e galvânicas, para as indústrias: química,

Cargas pontuais (F ou M): Matematicamente, a aplicação pontual de cargas não existe (é preciso uma área para aplicar, ainda que pequena) e sua ocorrência provocará uma

A partir de programas escritos nessa linguagem, específicos para este trabalho, foram realizados os cruzamen- tos dos diferentes planos de informações considerados neste

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

Os atletas foram avaliados retrospectivamente por meio de um questionário, o qual continha dados com rela- ção ao tempo de prática esportiva, número de horas sema- nais de

Esse conhecimento superior, da consciência, é sabedoria pura e não pode ser patrimônio de nenhuma civilização ou doutrina específica, é de todos e de ninguém