Você está na página 1de 121

UNIVERSIDADE ESTADUAL DE CAMPINAS

FACULDADE DE ENGENHARIA ELTRICA E DE COMPUTAO


DEPARTAMENTO DE ENGENHARIA DE COMPUTAO E
AUTOMAO INDUSTRIAL

Regina Mitsue Azuma

Otimizao multiobjetivo em problema de


estoque e roteamento gerenciados pelo fornecedor

Dissertao de Mestrado apresentada Faculdade de


Engenharia Eltrica e de Computao como parte dos
requisitos para a obteno do ttulo de Mestre em Engenharia Eltrica. rea de concentrao: Engenharia
de Computao.
Orientador: Fernando Jos Von Zuben

Campinas, SP
2011

FICHA CATALOGRFICA ELABORADA PELA


BIBLIOTECA DA REA DE ENGENHARIA E ARQUITETURA - BAE - UNICAMP

Az85o

Azuma, Regina Mitsue


Otimizao multiobjetivo em problema de estoque e
roteamento gerenciados pelo fornecedor / Regina Mitsue
Azuma. --Campinas, SP: [s.n.], 2011.
Orientador: Fernando Jos Von Zuben.
Dissertao de Mestrado - Universidade Estadual de
Campinas, Faculdade de Engenharia Eltrica e de
Computao.
1. Problema de roteamento de veiculos. 2.
Otimizao combinatria. 3. Controle de estoque. 4.
Algoritmos evolutivos. I. Von Zuben, Fernando Jos. II.
Universidade Estadual de Campinas. Faculdade de
Engenharia Eltrica e de Computao. III. Ttulo.

Ttulo em Ingls: Evolutionary multi-objective optimization for the vendor-managed


inventory routing problem
Palavras-chave em Ingls: Vehicle routing problem, Combinatorial optimization,
Inventory control, Evolutionary algorithm
rea de concentrao: Engenharia de Computao
Titulao: Mestre em Engenharia Eltrica
Banca examinadora: Ricardo Hiroshi Caldeira Takahashi, Leonardo Tomazeli Duarte
Data da defesa: 27/01/2011
Programa de Ps Graduao: Engenharia Eltrica

Resumo
A classe de problemas de estoque e roteamento est presente em vrias reas, incluindo indstria
automobilstica e gerncia de numerrio no reabastecimento de caixas eletrnicos. Supondo que o fornecedor responsvel pela estocagem e distribuio dos produtos, sujeito a um conjunto de restries,
o desafio que se apresenta a determinao de uma poltica tima, mais especificamente quais clientes atender, qual quantidade a ser fornecida a cada cliente e qual rota empregar visando a minimizao
dos custos. Este trabalho apresenta uma proposta de soluo para uma das mais comuns formulaes
do problema: um produto distribudo a partir de um fornecedor para vrios clientes em um horizonte
de tempo definido. O transporte realizado por um veculo de capacidade limitada. Para produzir a
otimizao simultnea de ambos os objetivos, minimizao dos custos de transporte e estoque, a proposta segue uma abordagem multiobjetivo e se baseia no uso do algoritmo SPEA2 (do ingls, Strength
Pareto Evolutionary Algorithm 2), incluindo inovaes na representao de solues-candidatas, nos
operadores genticos e de busca local. A fronteira de Pareto estimada ento composta de mltiplas
solues no-dominadas, representando compromissos distintos entre custos de transporte e estoque.
Como casos de estudo, so tomadas instncias de mdio porte extradas da literatura e so geradas
instncias de grande porte. Para as instncias de mdio porte, as fronteiras de Pareto estimadas em
cada caso so comparadas com as respectivas solues timas da verso mono-objetivo de cada problema, pois j existe um algoritmo exato de soluo para a formulao mono-objetivo de instncias
de mdio porte.
Palavras-chave: problema de estoque e roteamento gerenciados pelo fornecedor, otimizao multiobjetivo, algoritmos evolutivos.

Abstract
The class of inventory routing problems (IRP) is present in several areas, including automotive
industry and cash management for ATM networks. Given that the supplier is responsible for managing
the product inventory and replenishment, subject to a set of restrictions, the challenge here is to
determine an optimal policy, more specifically which retailers to serve, the quantity to deliver to each
retailer and which routes to employ in order to minimize the cost. This work presents a proposal
to solve one version of the IRP usually found in the scientific literature: a product is distributed
from a supplier to several retailers in a defined time horizon. Shipment is performed by a vehicle
with limited capacity. To perform the simultaneous optimization of both objectives, minimization of
transportation and inventory costs, the proposal follows a multi-objective approach based on SPEA2
(Strength Pareto Evolutionary Algorithm 2), including innovative aspects mainly associated with the
representation of candidate solutions, genetic operators and local search. The Pareto front is then
composed of multiple non-dominated solutions with distinct trade-offs between transportation and
inventory costs. As case studies, medium size instances extracted from the literature are considered
and large size instances are generated. For the medium size instances, the estimated Pareto fronts are
compared, in each case, with the corresponding optimal solutions associated with the single-objective
version of each problem, given that there is already an exact algorithm to solve such medium size
single-objective instances.
Keywords: vendor-managed inventory routing problem, multi-objective optimization, evolutionary
algorithms.

vii

Agradecimentos
Primeiramente, agradeo ao meu orientador, Prof. Fernando Jos Von Zuben, pela oportunidade e
pela competncia com que sempre conduziu esta pesquisa.
Ao colega Guilherme Palermo Coelho, pelos esclarecimentos e contribuies, particularmente no
tocante aos conceitos de otimizao multiobjetivo.
Aos demais colegas de ps-graduao, pelas crticas e sugestes.
minha famlia e ao meu namorado, pelo apoio e incentivo durante esta jornada.
Motorola, pelas horas cedidas de meu trabalho ao desenvolvimento desta pesquisa.
Ao meu gerente, Jos Barletta, pela compreenso e confiana que sempre depositou em mim.

ix

xi

Aos meus pais

Sumrio
Lista de Figuras

xvii

Lista de Tabelas

xix

Lista de Algoritmos

xxi

Introduo e Motivao

1.1

Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2

Motivao da pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.3

Contribuies da pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.4

Organizao do texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.5

Sntese do captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Problema de estoque e roteamento gerenciados pelo fornecedor


2.1

Sntese do captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7
16

Otimizao multiobjetivo

17

3.1

Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17

3.2

Definio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18

3.3

Metas da otimizao multiobjetivo . . . . . . . . . . . . . . . . . . . . . . . . . . .

19

3.4

Abordagens clssicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

20

3.4.1

Soma ponderada dos objetivos . . . . . . . . . . . . . . . . . . . . . . . . .

20

3.4.2

Mtodo de restries  . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

22

3.4.3

Programao por metas . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

23

3.4.4

Anlise das abordagens tradicionais . . . . . . . . . . . . . . . . . . . . . .

23

3.5

Algoritmos evolutivos para otimizao multiobjetivo . . . . . . . . . . . . . . . . .

24

3.6

Mtricas de desempenho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

3.7

SPEA2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

xiii

xiv

SUMRIO

3.8
4

Funo de fitness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30

3.7.2

Algoritmo de corte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31

Sntese do captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

Caracterizao do problema

33

4.1

Descrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33

4.2

Classificao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

37

4.3

Formulao geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

39

4.4

Formulao mono-objetivo multiobjetivo . . . . . . . . . . . . . . . . . . . . . .

41

4.5

Poltica de reabastecimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

42

4.6

Instncias de teste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

42

4.6.1

Instncias de benchmark da literatura . . . . . . . . . . . . . . . . . . . . .

43

4.6.2

Proposta de novas instncias . . . . . . . . . . . . . . . . . . . . . . . . . .

45

Sntese do captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

46

4.7
5

3.7.1

Estratgia de soluo

47

5.1

Critrio de dominncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

47

5.2

Codificao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

50

5.3

Operadores de recombinao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

51

5.3.1

Recombinao vertical de um ponto . . . . . . . . . . . . . . . . . . . . . .

54

5.3.2

Recombinao horizontal de um ponto . . . . . . . . . . . . . . . . . . . . .

55

5.3.3

Recombinao uniforme de clulas . . . . . . . . . . . . . . . . . . . . . .

56

5.3.4

Recombinao uniforme de colunas . . . . . . . . . . . . . . . . . . . . . .

57

5.3.5

Recombinao uniforme de linhas . . . . . . . . . . . . . . . . . . . . . . .

58

Operadores de mutao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

59

5.4.1

Unio de reabastecimentos . . . . . . . . . . . . . . . . . . . . . . . . . . .

60

5.4.2

Insero de reabastecimento . . . . . . . . . . . . . . . . . . . . . . . . . .

61

5.4.3

Troca de reabastecimentos . . . . . . . . . . . . . . . . . . . . . . . . . . .

62

Operadores de busca local . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

62

5.5.1

Remoo de reabastecimentos . . . . . . . . . . . . . . . . . . . . . . . . .

64

5.5.2

Deslocamento de reabastecimento . . . . . . . . . . . . . . . . . . . . . . .

65

5.5.3

Troca de reabastecimento em rota de alto custo . . . . . . . . . . . . . . . .

66

5.5.4

Alocao mxima em cliente de baixo custo de estoque . . . . . . . . . . . .

67

5.5.5

Unio e separao de rotas I . . . . . . . . . . . . . . . . . . . . . . . . . .

68

5.5.6

Unio e separao de rotas II . . . . . . . . . . . . . . . . . . . . . . . . . .

70

Implementao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

71

5.4

5.5

5.6

SUMRIO

xv

5.7

71

Sntese do captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Resultados
6.1 Apresentao de uma soluo do conjunto de Pareto
6.2 Resultados para as instncias propostas na literatura
6.3 Amostragem de solues . . . . . . . . . . . . . .
6.4 Resultados para as instncias de grande porte . . .
6.5 Sntese do captulo . . . . . . . . . . . . . . . . .

.
.
.
.
.

73
74
76
86
89
91

Concluso e perspectivas
7.1 Consideraes finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2 Perspectivas e pesquisas futuras . . . . . . . . . . . . . . . . . . . . . . . . . . . .

93
93
95

Referncias bibliogrficas

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

96

Lista de Figuras
3.1

Exemplo de mapeamento de uma soluo no espao de variveis, tridimensional, para


o espao de objetivos, bidimensional . . . . . . . . . . . . . . . . . . . . . . . . . .

18

O ponto B, assim como qualquer ponto na regio hachurada (desde que corresponda
a uma soluo factvel) domina a soluo representada pelo ponto A . . . . . . . . .

19

3.3

Metas da otimizao multiobjetivo . . . . . . . . . . . . . . . . . . . . . . . . . . .

20

3.4

Mtodo de soma ponderada dos objetivos . . . . . . . . . . . . . . . . . . . . . . .

21

3.5

Mtodo de restries  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

22

3.6

Hipervolume gerado pelas solues da fronteira de P , ilustrado aqui pela regio em


cinza. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

3.7

Fluxograma bsico do algoritmo SPEA2 . . . . . . . . . . . . . . . . . . . . . . . .

30

3.8

Algoritmo de corte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

4.1

Exemplo ilustrativo de distribuio geogrfica de fornecedor e clientes . . . . . . . .

34

4.2

Estoque inicial e capacidade de estoque de cada cliente . . . . . . . . . . . . . . . .

34

4.3

Rota para um dia da soluo de reabastecimento de estoque e quantidade abastecida


para cada cliente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

35

4.4

Nveis de estoque no dia seguinte . . . . . . . . . . . . . . . . . . . . . . . . . . . .

36

4.5

Rotas dos dias do horizonte de planejamento. esquerda, so apresentadas todas as


rotas dirias em um grfico nico. direita so apresentadas as mesmas rotas, mas
uma para cada dia do horizonte de planejamento. . . . . . . . . . . . . . . . . . . .

36

4.6

Estrutura de dados de uma instncia de teste . . . . . . . . . . . . . . . . . . . . . .

44

5.1

Codificao do gentipo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

50

5.2

Recombinao vertical de um ponto . . . . . . . . . . . . . . . . . . . . . . . . . .

54

5.3

Recombinao horizontal de um ponto . . . . . . . . . . . . . . . . . . . . . . . . .

55

5.4

Recombinao uniforme de clulas . . . . . . . . . . . . . . . . . . . . . . . . . . .

56

5.5

Recombinao uniforme de colunas . . . . . . . . . . . . . . . . . . . . . . . . . .

57

5.6

Recombinao uniforme de linhas . . . . . . . . . . . . . . . . . . . . . . . . . . .

58

3.2

xvii

xviii
5.7
5.8
5.9
5.10
5.11
5.12
5.13
5.14
5.15
5.16
5.17
5.18

LISTA DE FIGURAS
Unio de reabastecimentos . . . . . . . . . . . . . . . . . . . .
Insero de reabastecimento . . . . . . . . . . . . . . . . . . .
Troca de reabastecimentos . . . . . . . . . . . . . . . . . . . .
Remoo de reabastecimentos . . . . . . . . . . . . . . . . . .
Deslocamento de reabastecimento . . . . . . . . . . . . . . . .
Troca de reabastecimento em rota de alto custo . . . . . . . . .
Alocao mxima em clientes de baixo custo de estoque . . . .
Unio e separao de rotas I . . . . . . . . . . . . . . . . . . .
Rotas antes e depois da aplicao do operador . . . . . . . . . .
Unio e separao de rotas II . . . . . . . . . . . . . . . . . . .
Rotas antes e depois da aplicao do operador . . . . . . . . . .
Mdulos do algoritmo empregado para otimizao multiobjetivo

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

Dados e soluo da instncia 5, com horizonte de planejamento de 6 dias, custo de


estoque alto e 25 clientes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Conjunto de Pareto obtido e soluo mono-objetivo para a instncia 5, com horizonte
de planejamento de 6 dias, custo de estoque baixo e 10 clientes . . . . . . . . . . . .
6.3 Conjunto de Pareto e soluo mono-objetivo para a instncia 4, com horizonte de
planejamento de 6 dias, alto custo de estoque e 15 clientes . . . . . . . . . . . . . .
6.4 Amostragem de 6 solues do conjunto de Pareto da Figura 6.3 . . . . . . . . . . . .
6.5 Soluo mono-objetivo e soluo da fronteira de Pareto mais prxima . . . . . . . .
6.6 Conjunto de Pareto inclui a soluo mono-objetivo, para a instncia 3, com horizonte
de planejamento de 3 dias, alto custo de estoque e 15 clientes . . . . . . . . . . . . .
6.7 Piores resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.8 Melhores resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.9 Conjunto de Pareto para uma instncia com 200 clientes e horizonte de 3 dias . . . .
6.10 Amostragem de 4 solues do conjunto de Pareto da Figura 6.9 . . . . . . . . . . . .
6.11 Conjunto de Pareto para instncia com 200 clientes e horizonte de 6 dias . . . . . . .
6.12 Amostragem de 4 solues do conjunto de Pareto da Figura 6.11 . . . . . . . . . . .

60
61
62
64
65
66
67
68
69
70
71
72

6.1

75
76
77
78
79
80
87
88
89
90
91
92

Lista de Tabelas
2.1

Critrios de classificao para problemas de estoque e roteamento . . . . . . . . . .

6.1
6.2
6.3
6.4

Resultados para instncias com H


Resultados para instncias com H
Resultados para instncias com H
Resultados para instncias com H

= 3 e hi [0, 01; 0, 05]


= 3 e hi [0, 1; 0, 5] . .
= 6 e hi [0, 01; 0, 05]
= 6 e hi [0, 1; 0, 5] . .

xix

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

11
82
83
84
85

Lista de Algoritmos
1
2

Funo de dominncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Clculo de alocao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

xxi

49
52

xxii

LISTA DE ALGORITMOS

Captulo 1
Introduo e Motivao
1.1

Introduo

VMI (do ingls Vendor-Managed Inventory) uma iniciativa na rea de logstica integrada, onde
o fornecedor monitora o nvel de estoque dos clientes e toma decises de distribuio de acordo com
as necessidades dos clientes. Essa prtica se popularizou nos anos 80 devido ao sucesso da parceria de um produtor/fornecedor, a Procter & Gamble, com um cliente/distribuidor, o Walmart. Eles
projetaram um sistema que interligava a Procter & Gamble aos centros de distribuio do Walmart.
Nos centros de distribuio, quando o nvel de estoque dos produtos da Procter & Gamble atingia um
limiar mnimo, o sistema automaticamente alertava a Procter & Gamble que, por sua vez, planejava a
entrega de mais produtos. A economia gerada com o novo sistema de gerenciamento de estoque pde
ser repassada para o Walmart, o qual a repassava aos consumidores finais.
Com base nas informaes de estoque de todos os clientes, possvel tratar com eficincia o
compromisso entre custos de estoque e nvel de servio ao cliente. Alm disso, como o fornecedor
tambm coordena a distribuio, ao invs de responder a demandas recebidas individualmente, os
custos de transporte podem ser reduzidos com o VMI, pois possvel promover um melhor planejamento do roteamento de entrega e, consequentemente, uma utilizao mais eficiente da capacidade
de transporte. A classe de problemas que pode obter vantagens com a adoo de uma estratgia VMI
caracterizada pela presena de dois objetivos:
otimizao dos custos de estoque;
otimizao da utilizao da capacidade de transporte.
Os casos em que esses dois aspectos so considerados simultaneamente constituem os problemas
de estoque e roteamento (IRP, do ingls Inventory Routing Problem).
De forma geral, pode-se dizer que um IRP compreende trs decises:
1

Introduo e Motivao
quais clientes atender em cada instante de tempo;

quando um cliente visitado, qual a quantidade a ser fornecida;

qual rota deve ser seguida para cada conjunto de clientes a serem atendidos.

Pode-se identificar, no problema de estoque e roteamento gerenciados pelo fornecedor, dois problemas de otimizao combinatria: (i) o problema de alocao, que envolve as determinaes de
quais clientes devem ser atendidos e qual o montante a ser reabastecido em cada cliente; (ii) o problema de roteamento de veculos.
O objetivo desse trabalho apresentar uma proposta de soluo para uma das formulaes de
um IRP disponvel na literatura. Segundo a formulao, um fornecedor responsvel por suprir a
demanda de um determinado nmero de clientes, em um certo horizonte de tempo, utilizando um
veculo com capacidade limitada. Os clientes apresentam restries de estoque mximo e no podem
ficar desabastecidos. O fornecedor possui capacidade de produo tambm limitada. Os custos envolvidos compreendem os custos de estoque no fornecedor e nos clientes e os custos de transporte
para a distribuio dos produtos. Na formulao encontrada na literatura, o objetivo minimizar a
soma dos custos de estoque e transporte, o que conduz a um problema de otimizao mono-objetivo.
Dada a natureza essencialmente multiobjetivo do problema original, proposta neste trabalho uma
formulao multiobjetivo que considera explicitamente os custos de estoque e transporte.
Existem vrias abordagens para tratar problemas de otimizao combinatria como o IRP. Apesar da melhoria de desempenho significativa dos softwares que implementam mtodos de otimizao
exata, o problema de escalabilidade est sempre presente. Quando se aumenta o nmero de variveis e restries, ocorre uma exploso combinatria que resulta em um elevado tempo computacional
para gerar uma soluo exata. Dependendo do tamanho do problema, o custo computacional pode
ser proibitivo. Esse aspecto faz com que o uso de heursticas se torne uma opo muito atraente
para a resoluo de problemas de grande porte. Nos ltimos anos, tem havido um interesse crescente
por mtodos heursticos capazes de encontrar solues de alta qualidade, no necessariamente timas, atravs da aplicao de processos iterativos. Nesse tipo de abordagem, o foco principal no
comportamento de convergncia do processo iterativo. So trs as condies desejveis: (i) garantia
de convergncia, (ii) tempo de convergncia compatvel com as necessidades de cada aplicao, e
(iii) convergncia para a soluo tima. Quanto mais complexo o problema de otimizao e quanto
maior a dimenso do espao de busca, menor a chance de se terem atendidas estas trs condies
simultaneamente.

1.2 Motivao da pesquisa

1.2

Motivao da pesquisa

Os problemas de estoque e roteamento gerenciados pelo fornecedor apresentam, tipicamente,


vrios objetivos. Objetivos esses muitas vezes conflitantes entre si: atender o cliente o mais rpido
possvel, usar de forma eficiente a frota de transporte disponvel, minimizar o estoque onde os custos
so altos, entre outros. Essa caracterstica torna essa classe de problemas propcia para a aplicao de
otimizao multiobjetivo.
O propsito principal da otimizao multiobjetivo encontrar solues no-dominadas da fronteira de Pareto, denominadas solues Pareto-timas, onde cada soluo indica, para um dado valor
de um dos objetivos, quais so os melhores valores que os demais objetivos podem ter.
So vrias as tcnicas tradicionais para tratar de problemas multiobjetivos (Deb (2001)):
Soma ponderada dos objetivos: consiste em criar uma nica funo-objetivo somando cada
objetivo multiplicado por um peso. Os pesos so fornecidos como parmetros.
Mtodo de restries : um dos objetivos escolhido para ser minimizado (considerando o
problema de minimizao), e os demais objetivos fm (x) so transformados em restries, tal
que fm (x) m . Esse mtodo necessita que a escolha de m esteja em uma regio factvel para
cada objetivo.
Programao por metas: esta tcnica tenta encontrar solues que possam atingir uma meta
pr-determinada para uma ou mais funes-objetivo. Caso no exista uma soluo factvel
que alcance as metas para todos os objetivos, tenta minimizar os desvios em relao s metas,
sendo que os desvios podem ser positivos ou negativos. Na programao por metas ponderadas,
tambm so atribudos pesos aos desvios. Ao se resolver os problemas mono-objetivos gerados
variando-se as metas e os pesos, obtm-se um conjunto de solues no-dominadas que se
aproximam de solues Pareto-tima.
As tcnicas apresentadas reduzem o problema de otimizao multiobjetivo a um problema de
otimizao mono-objetivo. Cada tcnica usa uma forma diferente de reduo e introduz parmetros
adicionais, sendo que a escolha desses parmetros afeta diretamente os resultados obtidos. Dessa
forma, para cada compromisso que se queira entre os objetivos, necessrio escolher os parmetro
adequadamente e solucionar mltiplos problemas de otimizao mono-objetivo. Algumas tcnicas
no garantem solues ao longo da fronteira de Pareto. Se a fronteira no convexa, o mtodo do
somatrio dos pesos no encontra certas solues, independentemente dos pesos escolhidos. Alm
disso, a distribuio uniforme desses parmetros no garante a diversidade das solues ao longo da
fronteira estimada (Deb (2001)).

Introduo e Motivao

Em virtude dessas limitaes, nos ltimos anos vem crescendo o interesse em pesquisas de tcnicas alternativas para tratar problemas de otimizao multiobjetivo. O uso de meta-heursticas
ganhou rpida aceitao na comunidade cientfica em uma grande variedade de reas. Dentre as
meta-heursticas, destacam-se os algoritmos evolutivos (Fogel (1999)), que so baseados na emulao de mecanismos de seleo natural. Algoritmos evolutivos, que eram muito comuns em otimizao
mono-objetivo, comearam a ser usados em otimizao multiobjetivo devido a vrias vantagens que
eles apresentam. A possibilidade de se trabalhar com vrias solues simultaneamente, de no precisar de informaes adicionais, alm do valor das funes-objetivo junto a cada soluo-candidata,
e de poder escapar de timos locais fazem dos algoritmos evolutivos tcnicas promissoras a serem
empregadas nos problemas de otimizao multiobjetivo.
A diferena fundamental entre um algoritmo evolutivo tradicional e um algoritmo evolutivo multiobjetivo o operador de seleo, dado que a comparao entre duas solues feita com base no
conceito de dominncia de Pareto.
A aplicao de um algoritmo evolutivo multiobjetivo apresenta vrias vantagens em relao s
tcnicas tradicionais:
No introduz parmetros adicionais ao problema;
Trabalha diretamente com vrias funes-objetivo usando o conceito de dominncia de Pareto;
Um conjunto diversificado de solues pode ser encontrado em apenas uma execuo do algoritmo;
menos suscetvel forma e continuidade da fronteira de Pareto, ou seja, os algoritmos evolutivos tratam facilmente fronteiras de Pareto no-convexas ou que apresentam descontinuidade;
No requer que a funo-objetivo seja diferencivel.
Essas vantagens tornam o uso de um algoritmo evolutivo multiobjetivo propcio para tratar problemas reais, onde um tempo de resposta curto (tempo de execuo do algoritmo), diversidade de
solues e necessidade de se considerar objetivos conflitantes so caractersticas bastante desejveis.
So vrias as propostas de algoritmos evolutivos voltados para otimizao multiobjetivo. Dentre elas, pode-se destacar o MOGA (do ingls, Multi-Objective Genetic Algorithm, ver Fonseca &
Fleming (1993)), o NSGAII (do ingls, Non-dominated Sorting Genetic Algorithm, ver Deb et al.
(2002)), o SPEA2 (do ingls, Strenght Pareto Evolutionary Algorithm, ver Zitzler et al. (2001)) e o
-MOEA (do ingls, -dominance Multi-Objective Evolutionary Algorithm, ver Deb et al. (2003)).
Nesse trabalho, apresentada uma abordagem baseada no SPEA2, com representao computacional das solues-candidatas e operadores genticos concebidos especificamente para tratar da verso

1.3 Contribuies da pesquisa

de IRP a ser considerada, combinada com buscas locais. O diferencial da pesquisa, em relao s propostas j existentes na literatura, a iniciativa de tratar o problema efetivamente como um problema
multiobjetivo, usando algoritmos e tcnicas concebidas especificamente para esse fim.

1.3

Contribuies da pesquisa

O objetivo do trabalho propor uma abordagem de otimizao multiobjetivo a um problema


inerentemente multiobjetivo e encontrado em vrios setores da indstria: o problema de estoque e
roteamento gerenciados pelo fornecedor.
O uso de um algoritmo comprovadamente eficiente para o tratamento de vrios problemas de
otimizao multiobjetivo no garante a sua eficincia em todos os problemas. O algoritmo pode
ser considerado uma "mquina de busca" genrica que necessita de peas especficas para tratar as
particularidades de cada problema. So essas peas ou componentes que definem o sucesso ou no
do emprego de um algoritmo de otimizao.
Neste trabalho, foi feita uma implementao do algoritmo SPEA2 (ver Zitzler et al. (2001)) e
dos componentes que fazem a integrao dele ao problema de otimizao de estoque e roteamento
gerenciados pelo fornecedor. Em linhas gerais, foram modelados e implementados componentes com
as seguintes funes:
Codificao dos indivduos da populao de forma apropriada para o problema tratado;
Definio do fentipo a partir do gentipo;
Definio do critrio de dominncia, que baseado em dominncia restrita, permitindo a comparao com/entre solues factveis e no-factveis;
Operadores genticos adequados ao tipo de problema: recombinao e mutao;
Operadores de busca local que usam o conceito de dominncia.
Como a etapa de roteamento pode ser executada de forma independente e aps a definio da
poltica de reabastecimento, optou-se por empregar uma soluo eficiente para o roteamento, j disponvel na literatura. Trata-se da heurstica de Chained-Lin-Kernighan implementada como parte do
projeto Concorde (Concorde Home Page (n.d.)).
Vrias instncias de teste presentes na literatura foram consideradas e os resultados foram comparados com a soluo exata fornecida por uma abordagem mono-objetivo existente na literatura.
Instncias de maior porte, geradas artificialmente, tambm foram consideradas, visando verificar a
escalabilidade do algoritmo evolutivo proposto.

Introduo e Motivao

1.4

Organizao do texto

Esta dissertao encontra-se organizada em 7 captulos:


Captulo 1: Introduo
Captulo 2: Problema de estoque e roteamento gerenciados pelo fornecedor
Captulo 3: Otimizao multiobjetivo
Captulo 4: Caracterizao do problema
Captulo 5: Estratgia de soluo
Captulo 6: Resultados
Captulo 7: Concluses e perspectivas
O Captulo 2 oferece uma reviso da literatura sobre o problema de gerenciamento de estoque e
roteamento. So descritas diferentes polticas de reabastecimento e as estratgias de soluo adotadas.
O Captulo 3 aborda os conceitos bsicos de otimizao multiobjetivo, os algoritmos evolutivos
em otimizao multiobjetivo, as mtricas para comparao de desempenho e descreve o algoritmo
SPEA2 (do ingls Strength Pareto Evolutionary Algorithm), um algoritmo considerado referncia em
otimizao multiobjetivo e que utilizado na abordagem proposta.
O Captulo 4 apresenta a definio do problema, as instncias de teste utilizadas e a formulao
multiobjetivo do problema que esse trabalho se prope a resolver.
O Captulo 5 descreve a estratgia proposta, detalhes de implementao, a codificao adotada
para representar as solues-candidatas, e os operadores concebidos para mutao, recombinao e
busca local.
O Captulo 6 apresenta e analisa os resultados obtidos, a partir da aplicao da meta-heurstica
proposta e de comparaes com solues da literatura.
O Captulo 7 inclui as consideraes finais e as perspectivas futuras da pesquisa.

1.5

Sntese do captulo

Neste captulo, foram introduzidos os principais conceitos tratados nesse trabalho, voltados para
o problema de estoque e roteamento gerenciados pelo fornecedor empregando otimizao evolutiva
multiobjetivo. Foram apresentados tambm o escopo, a motivao e os objetivos da pesquisa e a
organizao do texto. Associadas aos objetivos da pesquisa, tambm foram mencionadas as principais
contribuies alcanadas.

Captulo 2
Problema de estoque e roteamento
gerenciados pelo fornecedor
VMI (do ingls Vendor-Managed Inventory) ou Estoque Gerenciado pelo Fornecedor um processo no qual o fornecedor responsvel pela gesto de estoque dos clientes. Ao invs dos clientes
encaminharem seus pedidos de reabastecimento, o fornecedor quem decide quando e quanto entregar de mercadorias para cada cliente (Campbell et al. (2001)).
Esse sistema de gerenciamento de estoques e entregas pelo fornecedor uma poltica natural
quando os pontos de demanda pertencem mesma empresa ou grupo que distribui os produtos. Em
outros casos, fruto de negociao entre fornecedores (ou distribuidores) e consumidores, como
forma de responder de maneira mais eficiente s variaes de demanda e diminuir o risco de falta
do produto e outras flutuaes indesejveis ao longo da cadeia de suprimentos. No caso de demanda
estocstica, o gerenciamento de estoques pelo fornecedor pode trazer benefcios adicionais, devido
ao compartilhamento de um estoque de segurana agregado, o qual menor que a soma dos estoques
de segurana requeridos por cada consumidor, fenmeno conhecido como compartilhamento de risco
(do ingls risk pooling) (Bramel & Simchi-Levi (1997)). O primeiro passo para o sucesso da tcnica
VMI requer disponibilidade e acurcia dos dados dos clientes. Para tomar decises, o fornecedor
tem acesso a informaes importantes, como nveis de estoques (disponibilidade de produtos) atual
e passado de todos os clientes, distncia e tempo de viagem dos clientes em relao ao fornecedor e
entre os clientes, custo de transporte, custo de manuteno de estoques, custo de falta de estoque (indica baixa qualidade no atendimento ao cliente) e capacidade e disponibilidade de veculos e recursos
humanos para a entrega dos produtos (Campbell et al. (2001)).
Exemplos de reas que utilizam o VMI:
Indstria petroqumica;
7

Problema de estoque e roteamento gerenciados pelo fornecedor


Indstria de varejo (supermercados);
Indstria de bebidas;
Indstria automobilstica (particularmente distribuio de autopeas);
Controle de numerrio em redes ATM;
Empresa de coleta de resduos em estaes de tratamento de gua;
Distribuidora de medicamentos e perfumaria;
Distribuidora de jornais e revistas.

Em muitas aplicaes, o fornecedor, alm de controlar os estoques dos clientes, tambm administra uma frota de veculos para transportar os produtos aos clientes. Neste caso, o objetivo do fornecedor no s administrar o reabastecimento timo dos estoques, como tambm realizar a distribuio
dos produtos. Este problema chamado problema de estoque e roteamento (do ingls Inventory
Routing Problem - IRP) (Bard et al. (1998)).
O objetivo do problema consiste em desenvolver uma estratgia de distribuio que minimize os
custos totais de distribuio e estoque, o que representa uma tarefa bem desafiadora. Quanto maior
o nmero de clientes envolvidos, mais difcil torna-se o problema. Se, por um lado, a flexibilidade
de decidir quando e quanto entregar reduz significativamente os custos de distribuio e estoque, por
outro, esta flexibilidade aumenta a complexidade do problema e dificulta a obteno de uma boa
soluo e, mais ainda, da soluo tima de distribuio e estoque.
Na literatura, so tratados vrios problemas de estoque e roteamento gerenciados pelo fornecedor
com as mais diversas caractersticas. As caractersticas comuns podem ser consolidadas em uma
formulao genrica do problema, apresentada a seguir.
O problema de estoque e roteamento (IRP) trata da distribuio de um ou mais produtos, a partir de
um ou mais centros de distribuio, que atendem M clientes dentro de um horizonte de planejamento
H. Considera-se que as aes de abastecimento dos clientes se do em instantes discretos de tempo,
dentro do horizonte de planejamento H. Cada cliente s consome o produto a uma taxa rs e tem uma
capacidade de armazenagem Us . O nvel de estoque do cliente s no instante t Is,t . A distribuio dos
produtos pode ser feita atravs de uma frota de veculos homognea ou heterognea, e cada veculo
tem uma capacidade Cv . A quantidade fornecida ao cliente s no instante t xs,t . Define-se hs como
o custo unitrio de estoque do cliente s. O objetivo minimizar o custo mdio dirio de distribuio
durante o horizonte de planejamento, de modo que no haja indisponibilidade de estoque nos clientes.
Pode-se adicionar ao modelo custos de estoque, custos de perdas de vendas (admitindo que pode
ocorrer falta de produtos) e at mesmo estimativas de lucro em funo dos produtos entregues ou

9
das vendas. A cada instante t, so tomadas decises de roteamento de veculos e reabastecimento de
estoque dos clientes. Em muitas situaes prticas, essas decises so tomadas diariamente e devem
ser executadas ao longo do mesmo dia. Neste caso, cada instante de tempo t est vinculado a um dia.
O custo de uma deciso no instante t pode incluir:
ci,j : custo de transporte dos arcos (i,j);
Ls (xs,t ): lucro caso o vendedor entregue uma quantidade xs,t ao cliente s no instante t;
hs : custo unitrio de estoque no cliente s;
Is,t1 : nvel de estoque do cliente s no dia anterior;
xs,t : quantidade entregue ao cliente s no dia t;
rs : demanda diria do cliente s;
Ps (rs ): penalidade de falta se a demanda rs do cliente s no for atendida. A demanda no
atendida tratada como demanda perdida e no como atraso na entrega.
Es,t : custo de estoque no cliente s no instante t, que pode ser definido como:
Es,t = (Is,t1 + xs,t rs ) hs ;
O problema de estoque e roteamento engloba trs decises:
Quando atender cada cliente;
Quanto entregar de mercadoria para cada cliente nas ocasies de atendimento;
Qual a melhor rota de entrega, dados os clientes a serem atendidos.
As duas primeiras decises envolvem a gesto dos estoques nos clientes, devendo ser respeitadas
as restries de capacidade de armazenagem e no ocorrncia de desabastecimento de estoque nos
clientes. Estabelecidos os dias de atendimento do conjunto de clientes e as quantidades a serem
entregues, a definio das rotas de entrega corresponde resoluo de um problema de roteamento
de veculos para cada dia do horizonte de planejamento. Uma alternativa de abordagem resolver
esses subproblemas de forma independente e sequencial. Outra abordagem resolv-los de forma
conjunta, uma vez que a definio dos dias dos atendimentos depende dos custos de distribuio, os
quais, por sua vez, dependem da programao dos reabastecimentos.
Em Baita et al. (1998), apresentada uma reviso de uma classe de problemas denominada DRAI
(do ingls Dynamic Routing-And-Inventory). Essa classe de problemas caracterizada pela presena
de trs aspectos bsicos:

10

Problema de estoque e roteamento gerenciados pelo fornecedor


Roteamento: transporte de mercadorias entre diferentes reas geogrficas, como depsitos e
pontos de venda;
Estoque: quantidade de mercadorias;
Comportamento dinmico: a combinao dos dois aspectos, roteamento e estoque, envolvem
um terceiro aspecto, o dinmico, no sentido de que decises precisam ser tomadas em diferentes
momentos dentro do mesmo horizonte de tempo, e uma deciso anterior influencia decises
posteriores.

O problema DRAI trata de como gerenciar a atividade de prover (uma ou mais) mercadorias de
(uma ou mais) origens para (um ou mais) destinos durante um horizonte de tempo finito ou infinito,
considerando as questes de roteamento e estoque. proposta uma classificao baseada em sete
grupos principais de critrios classificatrios, conforme apresentado na Tabela 2.1.

11

Tab. 2.1: Critrios de classificao para problemas de estoque e roteamento


Elemento
Topologia da rede
de abastecimento
Itens a serem entregues
Demanda

Decises
Restries

Custos

Estratgia de soluo

Atributo
Pontos de abastecimento ou distribuio
Nmero
Tipo
Comportamento
Distribuio entre
clientes
Domnio
Capacidade dos
veculos
Capacidade
de
estocagem
Capacidade
de
abastecimento
Nmero de veculos
Estoque
Distribuio

Um para um

Alternativas
Um para muitos

Um

Muitos

Determinstica
Constante
Uniforme

Estocstica
Varivel
No-uniforme

Frequncia
de
atendimento
Mesma capacidade
Sim

Instante de atendimento
Capacidade diferente
No

Sim

No

Fornecido

Varivel de deciso
Falta
Proporcional

distncia

Manuteno
Fixo

Decomposio

Tempo

Agrupa-roteia

Agregao
Algoritmo
Programao
Matemtica

Tempo
Exato
Linear

Frequncia
Aproximado
Inteira

Muitos para Muitos

No
apresenta
restrio

No-restritivo
Pedido
Proporcional
ao nmero
clientes

Distncia
No-linear

de

12

Problema de estoque e roteamento gerenciados pelo fornecedor


So identificados dois modelos:
modelo de frequncia de atendimento: as variveis de deciso so as frequncias com que os
clientes devem ser atendidos. Esse modelo aplicvel a situaes estveis de distribuio,
em que tanto a demanda quanto a oferta no so afetadas por sazonalidades ou outros efeitos
aleatrios.
modelo de instante de atendimento: as variveis de deciso so os instantes de entrega, o horizonte de planejamento finito e as entregas podem ser realizadas sem obedecer a uma periodicidade fixa.

Uma linha de pesquisa recente, dentre os modelos de instante de atendimento, o modelo de fluxo
dinmico com demanda desconhecida, em que o problema tratado como um sistema dinmico,
sujeito a perturbaes que, embora desconhecidas, respeitam limites conhecidos a priori. Nessa
abordagem, o problema passa a ser a determinao de uma estratgia de controle com realimentao
que mantenha, ao longo do horizonte de planejamento, o estado do sistema dentro de certos limites
pr-estabelecidos.
Em Ball (1998), apresentada uma anlise dos principais modelos e estratgias de resoluo de
problemas que envolvam simultaneamente decises de alocao e roteamento. So identificados trs
tipos de formulaes:
modelos dinmicos com tamanho de entrega fixo: tratam do caso em que as entregas a um
determinado cliente no obedecem a uma periodicidade e, uma vez determinados os dias de
atendimento, a quantidade entregue fixa e calculada em funo do cliente e do dia de atendimento;
modelos dinmicos com tamanho de entrega varivel: a quantidade entregue uma varivel de
deciso que deve ser definida juntamente com o dia de atendimento;
modelos peridicos: as entregas so realizadas obedecendo-se uma periodicidade fixa.
A diferena entre as formulaes reside na forma com que so determinadas as quantidades e os
dias de atendimento, ou seja, no componente de alocao do problema. As restries quanto aos dias
de entrega ou frequncia de atendimento so quase sempre decorrentes de restries relativas gesto
de estoques.
A coleta de lixo, que envolve clientes dispersos geograficamente e o transporte do lixo a instalaes de processamento ou aterros sanitrios, geralmente tratada como um problema de roteamento
peridico. A frequncia baseada nas restries de gesto de estoque, que no caso correspondem
quantidade de lixo que os clientes podem armazenar entre atendimentos sucessivos.

13
A distribuio de combustveis e gases industriais trata do reabastecimento repetido de um produto
a clientes dispersos geograficamente, de forma a evitar ou minimizar a ocorrncia de falta de estoque.
uma gesto de estoque do tipo push, em que o distribuidor reabastece seus clientes sem que estes
tenham que fazer pedidos. A necessidade de pedidos por parte de clientes ocorre no caso de sistemas
de estoque do tipo pull.
Venda/distribuio do tipo driver sell ocorre tipicamente na distribuio de bebidas e consiste em
um ou mais motoristas que visitam clientes dispersos geograficamente, procurando realizar o maior
nmero de vendas possvel, sem saber a priori a quantidade que cada cliente ir comprar.
Em modelos peridicos e de tamanho de entrega fixo, geralmente so utilizadas heursticas de
duas etapas do tipo agregao-roteamento, seguidas muitas vezes de uma etapa de melhoria baseada
em busca local. Em Ball (1998), apontado tambm o uso de um problema modificado de caixeiro
viajante coletor de prmios, para a determinao dos dias de atendimento, e do mtodo de relaxao
lagrangeana para o caso de modelos dinmicos com tamanho de entrega varivel.
Em Bard et al. (1998), tratado o problema de estoque e roteamento com depsitos satlites. Os
veculos de distribuio devem partir de um depsito principal e retornar para o mesmo, mas com a
opo de serem reabastecidos ao longo da rota. So dois os objetivos:
minimizar a distncia total percorrida, obedecendo-se a capacidade dos veculos e a durao
das viagens;
maximizar a qualidade de servio e a fidelidade do cliente.
Apesar do objetivo principal ser a reduo dos custos anuais, o planejamento feito para perodos
curtos, mas provendo uma medida de custo de longo prazo que possibilite tomadas de deciso por
parte do planejador. Para fins de planejamento, so considerados dois perodos (duas semanas) por
vez. So identificados todos os clientes cujo dia de entrega tima ocorra nesse intervalo de tempo.
A escolha de que dia o cliente vai ser atendido baseada numa combinao do balano desejado de
demanda e da minimizao de custos incrementais (custos de atender um cliente em outro dia que
no o dia timo). Apenas o planejamento do primeiro perodo utilizado e um novo planejamento
feito para os dois prximos perodos. Isso resulta em um problema que pode ser resolvido usando
programao linear inteira mista com dois critrios. No entanto, essa abordagem s vivel computacionalmente para instncias pequenas. A proposta apresentada resolve separadamente o problema
de alocao e o de roteamento.
Em Chan et al. (1998), proposta a poltica Zero Inventory Ordering (ZIO), em que cada cliente
abastecido se e somente se o estoque est em zero. Na ausncia de restries de capacidade de
veculos ou de frequncia em que cada cliente pode ser visitado, a poltica ZIO tima. Existe uma
subclasse da ZIO chamada Poltica de Partio Zero: os clientes so divididos em regies de tal forma

14

Problema de estoque e roteamento gerenciados pelo fornecedor

que cada regio atendida separadamente e independentemente das demais. Quando um cliente
visitado, todos os demais clientes da regio so visitados. A proposta modelar o problema como um
CCLP (do ingls Capacitated Concentrator Location Problem) para gerar a partio de clientes em
regies. Dadas m possveis localizaes para concentradores de capacidade fixa C, o objetivo achar
a localizao dos concentradores em um subconjunto dessas m localizaes e conectar n terminais,
onde cada terminal i usa wi unidades da capacidade do concentrador, de tal forma que cada terminal
seja conectado a um nico concentrador, a capacidade do concentrador no seja excedida e o custo
total seja minimizado. Existe um custo vj para o concentrador ser atribudo localizao j e o custo
cij de conectar o terminal i ao concentrador j.
O trabalho apresentado em Bertazzi et al. (2005) trata de um problema de produo e distribuio
em que uma fbrica produz vrios itens que so distribudos para um conjunto de clientes por uma
frota de veculos com capacidade limitada. O problema envolve custo de produo fixa e varivel,
custo de transporte e estoque no produtor (ou distribuidor) e nos clientes. As decises englobam
quando e quanto produzir, quanto e para quais clientes entregar. O problema tratado com diferentes
polticas de reabastecimento e resolvido atravs de decomposio em subproblemas. Os subproblemas so resolvidos usando heursticas e algoritmos exatos.
Em Archetti et al. (2007), proposta uma formulao do problema de estoque e roteamento
gerenciados pelo fornecedor. Segundo a formulao, um fornecedor atende diversos clientes em
um horizonte de tempo definido, utilizando um nico veculo com capacidade limitada para fazer o
transporte dos produtos.
O trabalho apresenta uma comparao entre as solues timas do problema, utilizando diferentes
polticas de reabastecimento.
So apresentadas trs polticas de reabastecimento:
VMIR-OU (do ingls vendor-managed inventory routing with order-up ): toda vez que um
cliente visitado, a quantidade entregue tal que o nvel mximo de estoque atingido;
VMIR-ML (do ingls vendor-managed inventory routing with maximum level ): quando o cliente visitado, a quantidade entregue no pode ultrapassar o nvel mximo de estoque, podendo
ser qualquer valor at atingir o nvel mximo;
VMIR (do ingls vendor-managed inventory routing ): quando o cliente visitado, a quantidade
entregue pode ser qualquer valor positivo.
A funo-objetivo a ser minimizada a soma dos custos de estoque e transporte. Mais precisamente, considerando:
h0 : custo unitrio de estoque no fornecedor;

15
Bt : nvel de estoque no fornecedor no instante t;
hs : custo unitrio de estoque no cliente s;
Is,t : nvel de estoque do cliente s no instante t;
ci,j : custo de transporte entre os clientes i e j;
t
yi,j
: varivel binria igual a um caso o cliente j siga imediatamente o cliente i na rota a ser
percorrida no instante t, e zero, caso contrrio;

M : conjunto de clientes;
M 0 = M 0; conjunto de clientes mais o fornecedor;
T : horizonte de planejamento composto por H dias;
T 0 = T H + 1: horizonte de planejamento mais o dia seguinte. O dia seguinte levado
em considerao no clculo do custo para que seja possvel contabilizar as consequncias das
escolhas realizadas no ltimo dia do horizonte de planejamento.
A funo-objetivo a ser minimizada dada por:
X

h0 Bt +

tT 0

XX

hs Is,t +

sM tT 0

X X

t
ci,j yi,j

(2.1)

iM 0 jM 0 ,j<i tT

As solues timas foram obtidas utilizando um algoritmo de ramificao e poda (do ingls
branch-and-cut). Segundo os resultados obtidos, apesar da poltica VMIR-OU ser a mais comumente adotada, existe um ganho de eficincia muito maior com as polticas VMIR-ML ou VMIR.
Uma grande contribuio do trabalho de Archetti et al. (2007) foi a proposta de instncias de teste
para um problema bem definido e a apresentao de solues timas para cada instncia.
Em Archetti et al. (2011), apresentada uma nova abordagem de soluo para o problema proposto em Archetti et al. (2007). A abordagem baseada em uma heurstica que combina busca tabu e
modelos de programao inteira mista. A motivao do trabalho foi encontrar uma alternativa vivel,
do ponto de vista prtico, para o problema anteriormente solucionado atravs de um mtodo exato,
mas que apresentava problemas de escalabilidade. A funo-objetivo a ser minimizada a mesma
apresentada na formulao 2.1 acrescida de dois termos de penalizao relativos infactibilidade da
soluo:

X
tT 0

h0 Bt +

XX
sM tT 0

hs Is,t +

X X

iM 0 jM 0 ,j<i tT

t
ci,j yi,j
+

X
tT

[Qt C]+ +

X
tT 0

[Bt ]+

(2.2)

16

Problema de estoque e roteamento gerenciados pelo fornecedor

onde:
C: capacidade do veculo de transporte;
Qt : quantidade total entregue no dia t;
: fator de penalidade por exceder a capacidade do veculo;
Bt : nvel de estoque no fornecedor no instante t;
: fator de penalidade por faltar produto no fornecedor.
[.]+ : max{., 0}
Em ambos os trabalhos, Archetti et al. (2007) e Archetti et al. (2011), usada uma funo-objetivo
que pondera os diferentes objetivos em um nico valor a ser minimizado. A ausncia na literatura
de propostas de otimizao multiobjetivo para o problema proposto nesses trabalhos, associado ao
fato de se tratar de um problema inerentemente multiobjetivo e de grande interesse prtico, foram as
principais motivaes para o desenvolvimento do presente trabalho.

2.1

Sntese do captulo

Neste captulo, foram apresentados os principais trabalhos na rea de IRP, as variaes do problema e as solues propostas. Dentre os trabalhos apresentados, destacam-se Archetti et al. (2007)
e Archetti et al. (2011), que apresentam resultados para o mesmo conjunto de instncias de teste
empregado nos experimentos realizados e descritos no Captulo 6 desta dissertao.

Captulo 3
Otimizao multiobjetivo
3.1

Introduo

Um problema de otimizao multiobjetivo um problema com dois ou mais objetivos que precisam ser otimizados simultaneamente. importante mencionar que os objetivos podem ser conflitantes
entre si (Coello Coello (1999), Coello Coello (2006)) e que o problema pode estar sujeito a restries.
Isso faz com que o conceito de otimalidade utilizado em otimizao mono-objetivo no possa ser utilizado. Em otimizao multiobjetivo, o conceito de otimalidade baseia-se na noo introduzida por
Francis Ysidro Edgeworth em 1881 (Edgeworth (1881)) e depois generalizada por Vilfredo Pareto
em 1896 (Pareto (1896)). chamado de Edgeworth-Pareto timo ou, simplesmente, Pareto-timo.
O conceito de soluo tambm difere da otimizao mono-objetivo. A soluo de um problema
multiobjetivo de minimizao formada por um conjunto de solues que apresentam um compromisso entre os objetivos. Um conjunto de solues denominado conjunto Pareto-timo se, para cada
soluo do conjunto, no existe nenhuma outra soluo factvel capaz de reduzir o valor de um dos
critrios do problema sem que simultaneamente cause um aumento em pelo menos um dos demais
critrios.
Em otimizao multiobjetivo, trabalha-se com dois espaos: o espao de variveis e o espao de
objetivos. O espao de variveis onde se faz a busca pelas solues do problema, ou seja, o domnio das variveis do problema. J o espao de objetivos o espao formado pelas funes-objetivo
do problema. A Figura 3.1 mostra um exemplo de mapeamento feito pelas funes-objetivo entre o
espao de variveis e o espao de objetivos. No exemplo, o espao de variveis tridimensional e o
de objetivos bidimensional.
Pontos no cubo mostrado no espao de variveis no mapeiam necessariamente na regio oval do
espao de objetivos. Esses objetos geomtricos so apresentados apenas para destacar a dimensionalidade de cada espao.
17

18

Otimizao multiobjetivo

Fig. 3.1: Exemplo de mapeamento de uma soluo no espao de variveis, tridimensional, para o
espao de objetivos, bidimensional

3.2

Definio

Um problema de otimizao multiobjetivo composto por um conjunto de funes-objetivo a serem otimizadas (maximizadas ou minimizadas) e um conjunto de restries que devem ser satisfeitas
para que a soluo seja factvel. Supondo a existncia de NObj funes-objetivo que formam o vetor
f (x) = [f1 (x), f2 (x), ..., fNObj (x)]T , o problema pode ser formulado como:

maximizar/minimizar f (x)
restrita a gj (x) 0, j = 1, ..., J;
hk (x) = 0, k = 1, ..., K;
(sup)
(inf )
xi
xi xi .

(3.1)

onde x um vetor de variveis de deciso tal que x = [x1 , x2 , ..., xNvar ]T , representando a soluo
do problema e J e K so, respectivamente, o nmero de restries de desigualdade e de igualdade.
(inf )
As desigualdades (gj ) e as igualdades (hk ) so chamadas de funes de restrio e os valores xi
(sup)
e xi
representam os limites inferior e superior para a varivel xi . Esses limites definem o espao
das variveis. O conjunto de todas as solues factveis forma a regio factvel ou espao de busca.
O vetor de funes-objetivo f (x) = [f1 (x), f2 (x), ...., fNobj (x)]T pertencem ao espao dos objetivos.
Para cada soluo x no espao de deciso, existe um ponto f (x) no espao dos objetivos.
Em otimizao multiobjetivo, emprega-se o conceito de dominncia de Pareto para comparar duas
solues factveis do problema. Dadas duas solues x e y, diz-se que x domina y (representado como
x  y) se as seguintes condies so satisfeitas (considerando-se um problema de minimizao):

3.3 Metas da otimizao multiobjetivo

19

Fig. 3.2: O ponto B, assim como qualquer ponto na regio hachurada (desde que corresponda a uma
soluo factvel) domina a soluo representada pelo ponto A
A soluo x melhor ou igual a y em todas as funes-objetivo, ou seja fm (x) fm (y) para
todo m = 1, 2..., NObj , onde NObj o nmero de funes-objetivo;
A soluo x estritamente melhor que y em pelo menos uma funo-objetivo, ou seja, fm (x) <
fm (y) para pelo menos um valor de m.
A Figura 3.2 ilustra o conceito de dominncia entre pontos de um problema de minimizao de
objetivos. Nesta figura, B  A. Repare que A e B so solues associadas a valores distintos de x,
embora estes pontos estejam sendo plotados no espao dos objetivos e no no espao das variveis.
O conjunto de solues no-dominadas chamado de conjunto Pareto-timo e representa a soluo do problema. A fronteira de Pareto o conjunto de valores das funes-objetivo das solues do
conjunto Pareto-timo.

3.3

Metas da otimizao multiobjetivo

Existem trs metas importantes em otimizao multiobjetivo:


Obter um conjunto de solues que esteja o mais prximo possvel da fronteira de Pareto;
Obter um conjunto de solues com a maior diversidade possvel, incluindo aqui critrios como
uniformidade no espalhamento ao longo da fronteira de Pareto;
Alcanar as duas metas anteriores com a maior eficincia computacional possvel.

20

Otimizao multiobjetivo

Fig. 3.3: Metas da otimizao multiobjetivo


A Figura 3.3 ilustra as duas primeiras metas. importante notar que a convergncia e a diversidade podem ser conflitantes entre si. Portanto, ao avaliar o desempenho de um algoritmo, necessrio
usar mtricas que considerem ambas as metas.
A primeira meta comum a qualquer processo de otimizao. Por outro lado, encontrar a maior
diversidade dentro das solues uma meta especfica para a otimizao multiobjetivo. Como a
otimizao multiobjetivo trabalha com o espao de deciso e o espao dos objetivos, desejvel
que as solues estejam adequadamente distribudas em ambos os espaos. Dado que encontrar
um conjunto de solues adequadamente distribudas uma tarefa que pode consumir considerveis
recursos computacionais, necessrio que tais solues sejam obtidas eficientemente.

3.4

Abordagens clssicas

Esta seo apresenta algumas das abordagens clssicas usadas para obter a soluo de problemas
de otimizao multiobjetivo.

3.4.1

Soma ponderada dos objetivos

Esse um dos mtodos mais conhecidos e consiste em criar uma funo-objetivo somando cada
objetivo multiplicado por um peso (Deb et al. (2002)). A escolha dos pesos crucial, pois afeta
diretamente a relevncia que se atribui a cada objetivo. Requer a normalizao de cada funoobjetivo, pois elas podem ter diferentes magnitudes. Dessa forma, o problema original, dado pela
formulao 3.1, pode ser reformulado, em sua verso para minimizao, como:

3.4 Abordagens clssicas

21

Fig. 3.4: Mtodo de soma ponderada dos objetivos

PNObj
minimizar f (x) = m=1
wm fm (x);
restrita a gj (x) 0, j = 1, ..., J;
hk (x) = 0, k = 1, ..., K;
(inf )
(sup)
xi xi .
xi

(3.2)

onde wm [0, 1] o peso de cada funo-objetivo fm (m = 1, ..., NObj ).


A Figura 3.4 mostra o espao de objetivos, a fronteira de Pareto e o vetor de pesos w = (w1 , w2 )
para um problema com dois objetivos. Para este vetor de pesos, a soluo obtida dada pelo ponto A
indicado na figura.
No caso de problema multiobjetivo em regies no-convexas esquerda da fronteira de Pareto,
este mtodo no capaz de determinar todas as solues. Alm disso, a aplicao de vetores de pesos
uniformemente distribudos no garante que seja obtido um conjunto de solues uniformemente
distribudas no espao dos objetivos (Deb (2001)).

22

Otimizao multiobjetivo

Fig. 3.5: Mtodo de restries 

3.4.2

Mtodo de restries 

Esse mtodo foi introduzido em Haimes et al. (1971). Um dos objetivos escolhido como o nico
objetivo a ser otimizado, com os demais sendo tratados como restries de desigualdade do problema,
permitindo que os mtodos clssicos de resoluo para otimizao mono-objetivo possam ser aplicados. Dessa forma, o problema apresentado na formulao 3.1, em sua verso para minimizao, pode
ser reformulado como:

minimizar fu (x), u {1, ..., NObj }


restrita a fm (x) m , m = 1, ..., NObj e m 6= u;
gj (x) 0, j = 1, ..., J;
hk (x) = 0, k = 1, ...K;
(inf )
(sup)
xi
xi xi .

(3.3)

onde cada m , definido pelo usurio, representa um limite mximo para o valor de fm . Por exemplo,
para um problema de otimizao multiobjetivo no-convexo com dois objetivos f1 e f2 , escolhe-se f2
para ser minimizado e mantm-se f1 com a restrio f1 1 .
A Figura 3.5 mostra o espao dos objetivos e vrios valores para m . O mnimo de f2 depende da
escolha de . Por exemplo, usando c1 o valor mnimo para f2 est associado ao ponto C. Empregandose diferentes valores de , encontram-se diferentes solues Pareto-timas.
A vantagem dessa abordagem que pode ser usada em problemas com espao de objetivos con-

3.4 Abordagens clssicas

23

vexo, no-convexo ou discreto. No entanto, necessita que a escolha do vetor  esteja em uma regio
factvel para cada objetivo. Assim como na soma ponderada de objetivos, no h garantia de se conseguir um bom espalhamento do conjunto de solues, mesmo usando uma distribuio uniforme de
valores de .

3.4.3

Programao por metas

Em problemas prticos, muitas vezes difcil e at impossvel atingir os objetivos e ainda satisfazer uma srie de restries. Nesses casos, razovel que os gestores procurem satisfazer ou
aproximar-se dos objetivos e restries estabelecidos, ao invs de consider-los como rgidos.
A programao por metas uma tcnica que permite a modelagem e a busca de solues para
problemas com mltiplos objetivos ou metas a serem otimizadas (Deb (2001)). No se busca somente
maximizar ou minimizar a funo-objetivo diretamente, busca-se tambm a minimizao dos desvios
no alcance das metas. Para isso, so utilizadas as chamadas variveis de desvio. O propsito a
minimizao dos desvios (distncia) em relao aos objetivos estabelecidos, sendo que a soluo
ideal aquela na qual todas as variveis de desvio possuem valor igual a zero, ou seja, em que todos
os objetivos so atingidos em seus parmetros estipulados.
A funo-objetivo pode ser formulada como:

min

k
X

|fi (x) Ti | , sujeito a x F

(3.4)

i=1

onde Ti a meta estabelecida pelo gestor para a i-sima funo-objetivo Fi (x), e F representa a
regio de factibilidade. O objetivo minimizar a soma dos valores absolutos das diferenas entre as
metas e os valores obtidos.
Em Romero (2004), so descritas trs formas tradicionais de programao por metas: baseada
em pesos, tambm chamada de programao por metas arquimediana; e programao por metas lexicogrfica ou programao por metas no-arquimediana e programao por metas minmax, tambm
conhecida como programao por metas nebulosa.

3.4.4

Anlise das abordagens tradicionais

Os algoritmos tradicionais para a soluo de problemas multiobjetivo apresentam algumas dificuldades, principalmente quando se tem o interesse de encontrar mltiplas solues Pareto-timas:
Normalmente apenas uma soluo Pareto-tima encontrada a cada execuo de um algoritmo

24

Otimizao multiobjetivo
tradicional;
Nem todas as solues da fronteira de Pareto podem ser encontradas por alguns algoritmos,
particularmente em problemas multiobjetivo com fronteira de Pareto no-convexa;
Todos os algoritmos exigem alguma forma de conhecimento sobre o problema, tais como pesos
adequados, valores de restries  e metas para os objetivos.

Diante disso, uma abordagem que tem recebido grande ateno, e vem sendo aplicada com sucesso nos ltimos anos, so os algoritmos evolutivos para otimizao multiobjetivo (do ingls MultiObjective Evolutionary Algorithms - MOEAs) (Deb (2001), Coello Coello (2006)), os quais sero
apresentados na prxima subseo.

3.5

Algoritmos evolutivos para otimizao multiobjetivo

Vrios autores destacam o emprego de algoritmos evolutivos em problemas de otimizao multiobjetivo pelos seguintes fatores:
Apresentam facilidade e flexibilidade de modelagem;
Exigem um menor esforo para encontrar cada soluo do conjunto de solues no-dominadas,
se comparado ao esforo de encontrar uma soluo para uma formulao mono-objetivo;
So menos susceptveis s caractersticas da fronteira de Pareto (no convexa, descontnua);
Podem trabalhar em espaos de busca que so intratveis pelas abordagens tradicionais.
Os algoritmos evolutivos de otimizao multiobjetivo mais relevantes, desenvolvidos entre 1989
e 1998, so:
NSGA (do ingls, Nondominated Sorting Genetic Algorithm): proposto em Srinivas & Deb
(1994), baseado em vrios nveis de classificao dos indivduos. Todos os indivduos nodominados so classificados em uma categoria. Esse grupo de indivduos classificados removido e outro nvel de indivduos no-dominados considerado. O processo continua at que
todos os indivduos da populao sejam classificados. Esse algoritmo no muito eficiente
porque requer um nmero elevado de repeties de classificao.
NPGA (do ingls, Niched-Pareto Genetic Algorithm): proposto em Horn et al. (1994), usa
seleo por torneio baseado na relao de dominncia. Dois indivduos so escolhidos aleatoriamente e comparados com um subconjunto da populao (tipicamente 10% da populao).

3.5 Algoritmos evolutivos para otimizao multiobjetivo

25

Se um deles dominado por esse subconjunto e o outro no, ento o indivduo no-dominado
ganha. No caso dos dois serem dominados ou dos dois dominarem, o resultado do torneio
decidido atravs de compartilhamento de fitness. O objetivo do compartilhamento de fitness
distribuir a populao ao longo dos picos do espao de busca. Cada pico recebe uma parte da
populao proporcional altura do pico.
MOGA (do ingls, Multi-Objective Genetic Algorithm): proposto em Fonseca & Fleming
(1993), a classificao de um indivduo corresponde ao nmero de indivduos na populao corrente que o dominam. A todos os indivduos no-dominados atribudo o maior valor possvel
de fitness, enquanto os dominados so penalizados de acordo com a densidade da populao na
regio em que se encontram.
Esses algoritmos, baseados em idias simples, so considerados a primeira gerao de algoritmos
evolutivos para otimizao multiobjetivo.
A segunda gerao de algoritmos evolutivos comeou quando o elitismo passou a ser considerado.
Esse elitismo geralmente se refere ao uso de uma populao externa para manter os indivduos nodominados, encontrados ao longo do processo evolutivo. A motivao surgiu do fato de uma soluo
que no dominada por solues-candidatas de uma populao corrente no necessariamente ser
no-dominada em relao a todas as solues-candidatas j produzidas pelo algoritmo. Os principais
algoritmos so:
SPEA (do ingls Strength Pareto Evolutionary Algorithm) e SPEA2 (do ingls Strength Pareto
Evolutionary Algorithm 2): o SPEA2 uma evoluo do SPEA (Zitzler & Thiele (1999)) e est
descrito mais detalhadamente na seo 3.7, por ter sido o algoritmo escolhido para a abordagem
proposta nesse trabalho.
PAES (do ingls Pareto Archived Evolution Strategy): proposto em Horn et al. (1994), consiste
em uma estratgia evolutiva (1+1) (Beyer (2001)), ou seja, um pai gera um nico filho, que
emprega busca local e usa um arquivo externo que armazena solues no-dominadas encontradas at o momento. Esse arquivo usado como referncia para obter uma classificao de
dominncia aproximada para os candidatos que sofreram mutao.
NSGA-II (do ingls, Nondominated Sorting Genetic Algorithm II): proposto em Deb et al.
(2002) como uma melhoria do NSGA. Ele estima a densidade das solues vizinhas a uma
soluo da populao atravs do clculo da distncia de agrupamento (do ingls, crowding
distance). A distncia de agrupamento de uma determinada soluo i uma estimativa do
tamanho do maior cubide que engloba a soluo i sem incluir uma ou mais dentre as demais
solues da populao. Essa estimativa de tamanho usa a mdia do comprimento dos lados.

26

Otimizao multiobjetivo
Ele no usa uma populao ou arquivo externo, sendo que o mecanismo de elitismo consiste
em combinar os melhores pais com os melhores filhos obtidos. Esse algoritmo muito mais
eficiente que seu predecessor e considerado um algoritmo de referncia.

3.6

Mtricas de desempenho

A comparao de desempenho de um ou vrios mtodos de otimizao multiobjetivo uma tarefa


complexa. Conforme citado anteriormente, duas metas da otimizao multiobjetivo so: a convergncia e a diversidade das solues encontradas. Portanto, so necessrias pelo menos duas mtricas
para avaliar ambos os algoritmos, uma mtrica para avaliar a convergncia e outra para avaliar a
diversidade das solues encontradas.
As mtricas de convergncia podem comparar solues P encontradas com o conjunto de solues
Pareto-timas do problema, denominado P 0 . Tambm possvel usar essas mtricas para comparar
(de forma relativa) solues P1 produzidas por um algoritmo com solues P2 produzidas por outro
algoritmo.
1. Taxa de Erro
Calcula o nmero de solues em P que no esto em P 0 :
ER (Error Ratio) =

|i P P 0 |
|P |

(3.5)

onde |.| indica a cardinalidade de um conjunto de elementos.


Quanto menor for o valor de ER, melhor ser a convergncia. Se ER = 0, significa que
P P 0 . aplicvel apenas a problemas de otimizao discreta.
2. Distncia Geracional
Representa a distncia euclidiana mdia (no espao dos objetivos) entre as solues de P e P 0 :
P
GD (Generational Distance) =

iP

mindisti
|P |

(3.6)

onde mindisti representa a distncia euclidiana no espao dos objetivos entre a soluo i e a
soluo mais prxima dela no conjunto P 0 :
v
u Nobj
uX
[fm (i) fm (j)]2
mindisti = min{jP 0 } t
m=1

(3.7)

3.6 Mtricas de desempenho

27

Quanto mais prximo de zero for o valor de GD, melhor ser a convergncia de P . Pode ser
aplicado a problemas de otimizao discreta e contnua.
3. Mtrica de Cobertura
Dados dois conjuntos de solues P e Q, essa mtrica calcula a proporo de solues de Q
que so fracamente dominadas pelas solues de P :
SC(P, Q) (Set Coverage) =

|{i P |j Q e i  j}|
|Q|

(3.8)

Quando SC(P, Q) = 1 todas as solues de Q so dominadas por solues de P . Se SC(P, Q) =


0, ento nenhuma soluo de Q fracamente dominada pelas solues em P .
As mtricas de diversidade, por sua vez, calculam a distribuio das solues de um conjunto P .
1. Espaamento
Calcula o desvio-padro entre as distncias de solues consecutivas (no espao dos objetivos)
do conjunto P :
s
SP (Spacing) =

X
1
(neardisti neardist)2
|P 1| iP

(3.9)

onde neardisti representa a distncia euclidiana (no espao dos objetivos) entre a soluo i e a
soluo mais prxima dela no conjunto P , sendo expresso como:
v
u Nobj
uX
neardisti = minjP,j6=i t
[fm (i) fm (j)]2

(3.10)

m=1

O valor neardist a mdia dos valores neardisti :


P
neardisti
neardist = iP
|P |

(3.11)

Quanto menor for o valor da mtrica SP , melhor distribudas esto as solues do conjunto P .
2. Nmero de nichos
Essa mtrica calcula o nmero de nichos dentro de um conjunto de solues P :
N C (N iche Count) =

X
1
|{j|distij > }|
|P | 1 i,jP

(3.12)

28

Otimizao multiobjetivo
onde distij a distncia entre as solues i e j do conjunto P . O valor N C representa o nmero
de solues cuja distncia entre elas maior que o parmetro . O valor de atualizado
dinamicamente. Quando distij < , as solues i e j esto no mesmo nicho. Quanto maior a
quantidade de nichos formados em P , melhor distribudas esto as solues.

3. Espalhamento
Avalia a disperso das solues no conjunto P ao longo da fronteira de Pareto, assim como a
distribuio entre solues contguas (no espao dos objetivos) de P :
PNobj
SP READ =

m=1


P
extdistm + iP neardisti neardist
PNobj
m=1 extdistm + |P | neardist

(3.13)

onde extdistm representa a distncia euclidiana entre as solues extremas na m-sima funoobjetivo dos conjuntos P e P 0 :
extdistm = distij |i = minkP fm (k) e j = minkP 0 fm (k)

(3.14)

no caso de minimizao da funo fm . O valor ideal para SP READ 0.

Atualmente, uma mtrica bastante usada na avaliao de algoritmos multiobjetivos o indicador


de hipervolume. Calcula-se o volume da regio coberta entre os pontos das solues do conjunto P
encontradas e um ponto de referncia. Para cada soluo i pertencente a P , construdo um hipercubo
vi com referncia a um ponto W . O ponto de referncia pode ser encontrado construindo-se um vetor
com os piores valores de funo-objetivo. O resultado da mtrica a unio de todos os hipercubos
encontrados. Quanto maior o valor do hipervolume melhor, pois um alto valor de hipervolume indica
que houve um elevado espalhamento entre as solues de P e indica tambm que houve uma melhor
convergncia. A Figura 3.6 ilustra o clculo de hipervolume. Essa mtrica calculada atravs de:

HV (Hipervolume) =

X
iP

onde vi representa o hipercubo da soluo i.

vi

(3.15)

3.7 SPEA2

29

Fig. 3.6: Hipervolume gerado pelas solues da fronteira de P , ilustrado aqui pela regio em cinza.

3.7

SPEA2

O SPEA2 (do ingls Strength Pareto Evolutionary Algorithm 2) proposto em Zitzler et al. (2001)
um mtodo evolutivo de otimizao multiobjetivo que inclui o conceito de elitismo.
A Figura 3.7 mostra o fluxograma bsico do algoritmo. O mtodo emprega uma populao Pt
e um arquivo externo Pt . No arquivo externo Pt , so armazenadas as solues no-dominadas at
o momento. So fornecidos como parmetros iniciais do algoritmo o tamanho da populao Pt ,
denominado N , o tamanho do arquivo externo Pt , denominado N , e o nmero mximo de geraes,
dado por T .
O algoritmo inicia criando uma populao inicial P0 e um arquivo externo P0 inicialmente vazio.
A cada iterao, a funo de fitness (ver seo 3.7.1) calculada para cada soluo i Pt Pt . Em
seguida, executa-se a seleo: as solues no-dominadas de i Pt Pt so copiadas para o novo
arquivo externo Pt+1 . Se o conjunto de solues no-dominadas tem o tamanho exato do arquivo
externo, a seleo est finalizada. Seno, pode-se ter duas situaes:
Tamanho do arquivo externo menor que o nmero de solues no-dominadas. Neste caso,
ordenam-se as solues de Pt Pt , de acordo com a funo de fitness, e preenche-se o arquivo
externo com as solues dominadas com maior valor da funo de fitness.
Tamanho do arquivo externo excede o tamanho N . Nesse caso, usado um algoritmo de corte
descrito na subseo 3.7.2.
Por ltimo, realiza-se o processo de seleo por torneio com reposio, recombinao e mutao
sobre Pt+1 para se obter a nova populao Pt+1 .

30

Otimizao multiobjetivo

Fig. 3.7: Fluxograma bsico do algoritmo SPEA2

3.7.1

Funo de fitness

No clculo da funo de fitness, so usados os conceitos de dominncia e de densidade. O objetivo


minimizar o valor da funo de fitness. Quanto menor o valor da funo de fitness de um indivduo,
melhor a adaptao do indivduo.
A fora do indivduo dada pelo nmero de solues que ele domina:



S(i) = {j|j Pt + Pt i  j}

(3.16)

onde |.| a cardinalidade do conjunto, + define a unio de conjuntos e o smbolo  corresponde


relao de dominncia de Pareto.
O fitness bruto do indivduo a soma das foras de todos os indivduos que o dominam:

3.7 SPEA2

31

R(i) =

S(j)

(3.17)

jPt +Pt ,ji

A densidade do indivduo uma funo decrescente em relao ao k-simo vizinho mais prximo.
A incluso de um fator de densidade se deve ao fato de que, nos casos em que existem muitas solues
no-dominadas, S(i) se aproxima de zero para todas as solues. Nesse caso, necessrio haver um
mecanismo para privilegiar solues dentre as no-dominadas.

D(i) =

1
distij (k) + 2

(3.18)

Para cada indivduo i, as distncias (no espao dos objetivos) entre i e todos os indivduos j da populao Pt e do arquivo externo Pt so calculadas e armazenadas em uma lista. Depois de ordenada a
lista p
em ordem crescente, o k-simo elemento representa o termo distij (k). sugerido para k o valor
k = N + N.
A funo de fitness adotada pelo algoritmo SPEA2 dada por:

F (i) = R(i) + D(i)

3.7.2

(3.19)

Algoritmo de corte

O objetivo do algoritmo de corte do SPEA2 restringir o tamanho de Nt+1 a N solues. Em


cada iterao, removida a soluo tal que a sua distncia para o seu vizinho mais prximo seja a
menor dentre as distncias existentes. No caso de empate, calcula-se a segunda menor distncia, e
assim sucessivamente. A soluo i escolhida para ser removida se i d j para todo j Pt+1 :

i d j



0 < k < Pt+1 : ik = jk




0 < k < Pt+1 : 0 < l < k : il = jl ik < jk

(3.20)

onde ik a distncia entre i e o k-simo vizinho mais prximo em Pt+1 . A Figura 3.8 ilustra o
algoritmo de corte. esquerda, exibido o conjunto de solues no-dominadas. Considerando
N = 5, so eliminadas solues at se obter um conjunto de tamanho N . direita, exibida a

32

Otimizao multiobjetivo

sequncia de eliminao de solues, de acordo com o algoritmo de corte, e o conjunto de solues


no-dominadas resultante.

Fig. 3.8: Algoritmo de corte

3.8

Sntese do captulo

Neste captulo, foram apresentados conceitos de otimizao multiobjetivo, os algoritmos tradicionais na rea e os principais algoritmos evolutivos multiobjetivo. Foi descrito tambm o algoritmo
adotado nesse trabalho, o SPEA2. Alm disso, foram apresentados os principais critrios usados na
comparao entre algoritmos multiobjetivo.

Captulo 4
Caracterizao do problema
4.1

Descrio

O problema de otimizao multiobjetivo a ser tratado consiste no planejamento da distribuio


de produtos por um fornecedor para um conjunto de clientes em um horizonte de tempo definido. O
fornecedor possui um nico depsito central e o transporte feito por um nico veculo com uma
capacidade de transporte limitada. O veculo pode executar uma viagem por dia durante o horizonte
de planejamento.
A Figura 4.1 mostra a distribuio geogrfica dos clientes e do depsito central de uma das instncias de teste a serem consideradas na fase de experimentos. A instncia de teste do exemplo
compreende 15 clientes e o depsito central pode ser identificado pelo smbolo .
Cada cliente possui um estoque inicial. A Figura 4.2 mostra os nveis de estoque inicial dos
clientes da instncia de teste sendo usada como exemplo. Para cada cliente, a altura total da barra
representa a capacidade mxima de estoque, sendo que a parte preenchida da barra representa o
estoque inicial e a parte no-preenchida representa a capacidade de estoque ainda disponvel.
Uma possvel soluo do problema consiste em determinar, para cada dia do horizonte de planejamento:
quais clientes sero atendidos;
quando um cliente atendido, qual a quantidade de produto que ser entregue;
qual a rota que ser percorrida pelo veculo para realizar as entregas a cada dia do horizonte de
planejamento.
A soluo para um dos dias do horizonte de planejamento mostrada na Figura 4.3. O grfico
superior mostra a rota a ser percorrida para atender os clientes selecionados para abastecimento na33

34

Caracterizao do problema

Fig. 4.1: Exemplo ilustrativo de distribuio geogrfica de fornecedor e clientes

Fig. 4.2: Estoque inicial e capacidade de estoque de cada cliente


quele dia. No sero abastecidos neste dia os clientes 2, 5, 14 e 15. O veculo deve partir do depsito
central, percorrer os clientes e voltar para o depsito. No grfico inferior, so exibidos os nveis de
estoque de cada cliente antes do reabastecimento e os nveis aps o reabastecimento. Como o veculo possui capacidade limitada, a soluo deve levar em considerao que a soma das quantidades
entregues aos clientes em um determinado dia no pode exceder a capacidade mxima do veculo.
Cada cliente apresenta um nvel mximo e mnimo de estoque. Na formulao do problema
considerado, no existe estoque de segurana, ou seja, o estoque mnimo sempre igual a zero. No
entanto, poder-se-ia facilmente incluir um estoque de segurana, caso necessrio, estabelecendo-se
valores positivos para o estoque mnimo.
A quantidade a ser abastecida limitada pelo nvel mximo de estoque. Aps o abastecimento, o

4.1 Descrio

35

Fig. 4.3: Rota para um dia da soluo de reabastecimento de estoque e quantidade abastecida para
cada cliente
cliente pode ficar com o estoque abaixo de sua capacidade, como pode-se observar no caso do cliente
6 na Figura 4.3. Se, por um lado, um valor muito baixo de abastecimento pode causar um maior
nmero de abastecimentos e, consequentemente, aumentar o custo de transporte, por outro lado, um
valor muito alto de abastecimento pode impactar no custo de estoque.
Cada cliente consome diariamente uma determinada quantidade do estoque de produtos. Na Figura 4.4, possvel observar os nveis de estoque no dia seguinte ao dia exibido na Figura 4.3, j
considerando a quantidade consumida no dia. O consumo de cada cliente constante ao longo do
tempo, mas cada cliente pode apresentar um consumo diferente dos demais. Coincidentemente, os
clientes 2, 5, 14 e 15, que no foram abastecidos no dia considerado, tiveram seus estoques zerados e
devero ser abastecidos no dia seguinte. Para no violar a restrio de estoque mnimo, s podem ficar
sem receber abastecimento clientes que tm estoque suficiente para atender pelo menos a demanda
do dia seguinte.
Considerando um horizonte de planejamento de seis dias, a Figura 4.5 exibe as rotas a serem
percorridas em cada dia do horizonte de planejamento. Note que possvel existir dias em que
nenhum cliente atendido. No exemplo dado, no primeiro e sexto dia do horizonte de planejamento

36

Caracterizao do problema

Fig. 4.4: Nveis de estoque no dia seguinte

Fig. 4.5: Rotas dos dias do horizonte de planejamento. esquerda, so apresentadas todas as rotas
dirias em um grfico nico. direita so apresentadas as mesmas rotas, mas uma para cada dia do
horizonte de planejamento.
a soluo indica que nenhum cliente atendido. Isso representa uma reduo no custo de transporte
e vai ocorrer com certa frequncia sempre que a capacidade de abastecimento dirio superar com
alguma folga a demanda diria.
O fornecedor possui um estoque inicial e uma capacidade de produo limitada. A quantidade
diria produzida constante ao longo do horizonte de planejamento. O planejamento de distribuio
deve ser feito de modo a no exceder a capacidade de produo do fornecedor.
Existe um custo de transporte que proporcional distncia percorrida pelo veculo. Existe
tambm um custo unitrio de estoque no fornecedor e nos clientes, sendo que os clientes podem
apresentar custo de estoque maior ou menor que o do fornecedor. Os custos totais so dados pelo
produto entre o custo unitrio e a quantidade estocada.
Em relao ao nmero de objetivos, o problema pode ser resolvido usando

4.2 Classificao

37

formulao mono-objetivo;
formulao multiobjetivo.
Em Archetti et al. (2007), usada uma formulao mono-objetivo, onde o objetivo minimizar
o custo total, composto pelo custo de transporte e de estoque, de acordo com uma ponderao da
importncia dos dois custos feita a priori.
Em casos prticos, muito comum a existncia de mais de um objetivo a ser alcanado. Por
exemplo, nos casos em que o fornecedor e os clientes pertemcem a empresas diferentes, pode-se
desejar separar o que implica em custo para o fornecedor (custo de estoque no fornecedor e custo de
transporte) e em custo para o cliente (custo de estoque no cliente). Nesse caso, os objetivos seriam:
(i) minimizar custo para o fornecedor e (ii) minimizar custo para o cliente.
Outra situao muito comum o caso em que o transporte terceirizado para uma empresa contratada. O uso de uma formulao multiobjetivo em que os dois custos so considerados explicitamente
permite que o gestor tenha flexibilidade na negociao dos custos. Esse o cenrio que foi adotado
nesse trabalho. O objetivo, nesse caso, passa a ser: (i) minimizar a soma dos custos de estoque (no
fornecedor e nos clientes) e (ii) minimizar o custo de transporte.

4.2

Classificao

Devido grande variedade de problemas que envolvem estoque e roteamento na literatura, a classificao do problema torna-se importante para situ-lo e permitir a comparao entre os problemas.
Seguindo a Tabela 2.1, proposta em Baita et al. (1998), o problema pode ser classificado em:
Topologia da rede de abastecimento: um para muitos;
Itens a serem entregues: um;
Demanda: determinstica, comportamento constante ao longo do tempo e no-uniforme entre
clientes;
Decises: instante de atendimento e quantidade;
Restries: capacidade dos veculos, capacidade de estocagem, capacidade de abastecimento,
nmero de veculos fornecido e inexistncia de demanda no atendida;
Custos: custo de estoque proporcional ao volume estocado e custo de distribuio proporcional
distncia;

38

Caracterizao do problema
Estratgia de soluo: meta-heurstica populacional.

De acordo com a definio do problema em estudo, o custo de estoque proporcional quantidade


estocada, tanto nos clientes quanto no fornecedor. Apesar de grande parte dos custos em problemas
prticos serem fixos, como por exemplo, aluguel e depreciao das instalaes, mo de obra, equipamentos de movimentao, alguns custos podem depender da quantidade estocada, como custos de
perdas devido a roubo, obsolescncia, avarias ou custo de seguro da quantidade estocada. No caso
de caixas eletrnicos, por exemplo, o custo pode estar associado quantidade de numerrio que permanece disponvel na mquina e sobre o qual no incide nenhum rendimento. Nesse caso, todos os
clientes apresentam o mesmo custo. Outro aspecto a considerar que diferentes clientes podem apresentar diferentes custos de estoque. Isso pode ocorrer, por exemplo, devido localizao do cliente
ser ou no em uma rea de maior risco.
Segundo a classificao em Ball (1998), o problema proposto segue um modelo dinmico com
tamanho de entrega varivel, ou seja, a quantidade entregue uma varivel de deciso definida juntamente com o dia de atendimento.
importante notar que, pelo fato do problema ser no peridico e de no existirem restries
sobre os nveis de estoque ao final do horizonte de planejamento, o problema admite solues em que
todos (ou quase todos) os clientes apresentam estoque zerado ao final do horizonte de planejamento.
Isso implicar na necessidade de reabastecer todos os clientes no dia seguinte ao fim do horizonte
de planejamento, o que muito provavelmente causar uma violao da capacidade de transporte. No
entanto, para permitir a comparao com a soluo mono-objetivo tima existente na literatura, as
mesmas restries do problema original sero mantidas.
O problema foi escolhido por apresentar todas as caractersticas de um problema clssico de
estoque e roteamento gerenciados pelo fornecedor. A existncia, principalmente, das restries de
capacidade dos veculos e limite mximo de estoque, combinada com o uso do modelo de instante
de atendimento, torna a busca por solues bem desafiadora. Dada uma soluo, qualquer alterao
em uma alocao pode afetar tanto as alocaes do mesmo cliente, em outros dias do horizonte
de planejamento, quanto as alocaes dos demais clientes atendidos no mesmo dia. Cada alocao
afetada, por sua vez, tem influncia em outras alocaes, e assim por diante. Esse efeito em cascata
torna o processo de melhoria das solues muito complexo.
Este problema considerado NP-completo, pois possvel reduzi-lo a um TSP (do ingls, Traveling
Salesman Problem) ao se considerar um horizonte de planejamento com apenas um instante de tempo,
inexistncia de custos de estoque, capacidade do veculo infinita e que todos os clientes precisam ser
atendidos.
Outra vantagem da formulao adotada a existncia de uma soluo tima para a sua formulao
mono-objetivo, o que permite a comparao de resultados.

4.3 Formulao geral

39

Para a soluo do problema, foi adotada uma meta-heurstica populacional por duas razes principais:
O problema NP-completo e, como os problemas reais dessa classe de problemas possuem,
em geral, um espao de busca grande, o uso de mtodos exatos se torna proibitivo por questes de escalabilidade. Apesar dos softwares atuais que implementam mtodos exatos serem
extremamente eficientes, os problemas reais envolvem um elevado nmero de restries e alta
dimenso, gerando uma exploso combinatria de opes que inviabilizam o emprego de mtodos exatos.
O problema inerentemente multiobjetivo. O uso de uma abordagem populacional torna possvel disponibilizar rapidamente mltiplas solues com diferentes compromissos entre os objetivos.

4.3

Formulao geral

Um produto distribudo a partir de um fornecedor 0 a um conjunto M ={1,2,...,n} de clientes


ao longo de um horizonte de tempo H. A cada instante de tempo t T ={1,...,H}, uma quantidade
r0 produzida e disponibilizada no fornecedor e a quantidade rs consumida no cliente s M . O
fornecedor possui um nvel de estoque inicial B0 e cada cliente possui um nvel de estoque inicial Is,0 .
Cada cliente s admite um nvel de estoque mximo dado por Us . Se um cliente s visitado no instante
t, a quantidade de produto abastecido xs,t no cliente tal que o nvel de estoque no ultrapassa o valor
mximo Us .
Existem custos de estoque no fornecedor e nos clientes. O custo de estoque unitrio no fornecedor
dado por h0 e no cliente s M dado por hs . Denominando Bt o nvel de estoque do fornecedor
no instante de tempo t, o custo de estoque total no fornecedor pode ser definido como:

h0 Bt onde T 0 = T {H + 1}.

(4.1)

tT 0

O instante de tempo H + 1 includo para que seja possvel levar em considerao as consequncias dos reabastecimentos realizados no instante de tempo T . O custo total de estoque no cliente s
dado por:

X
tT 0

hs Is,t onde T 0 = T {H + 1},

(4.2)

40

Caracterizao do problema

sendo Is,t o nvel de estoque do cliente s no instante t.


O problema no-peridico, o que implica que os nveis de estoque ao final do horizonte de
tempo podem diferir dos estoques iniciais.
O nvel de estoque do fornecedor no instante t T 0 dado por:

Bt = Bt1 + r0

xs,t1 .

(4.3)

sM

De forma similar, define-se o nvel de estoque do cliente s M no instante t T 0 como:

Is,t = Is,t1 + xs,t1 rs .

(4.4)

O custo de transporte ci,j entre os clientes i e j dado por:

ci,j


q
2
2
(xi xj ) + (yi yj ) ,
= N IN T

(4.5)

onde NINT a funo de arredondamento para o inteiro mais prximo e (xi , yj ) so as coordenadas
geogrficas do cliente i.

O problema est sujeito s seguintes restries:


1. Disponibilidade de estoque no fornecedor para o reabastecimento dos clientes:
Bt

xs,t , t T ;

(4.6)

sM

2. Disponibilidade de estoque no cliente:


Is,t 0 s M, t T 0 ;

(4.7)

3. Limite de estoque mximo no cliente, fazendo com que a quantidade abastecida atenda seguinte inequao:
xs,t Us Is,t s M, t T ;

(4.8)

4.4 Formulao mono-objetivo multiobjetivo

41

4. Capacidade limitada de transporte:

xs,t C , t T.

(4.9)

sM

So dois os objetivos do problema:


1. Minimizar o custo total de estoque nos clientes e no fornecedor

Cestoque =

h0 Bt +

tT 0

XX

hs Is,t

(4.10)

t
ci,j zi,j

(4.11)

sM tT 0

2. Minimizar o custo total de transporte


Ctransporte =

X
iM 0

X X
jM 0 ,j<i

tT

t
onde zi,j
uma varivel binria que assume o valor 1 caso o cliente j suceda imediatamente o
cliente i na rota do dia t, ou zero, caso contrrio.

4.4

Formulao mono-objetivo multiobjetivo

Em Archetti et al. (2007), usada uma formulao mono-objetivo cuja funo-objetivo pondera
os dois custos, atribuindo o mesmo peso a ambos. O objetivo minimizar o custo total dado por:

minimizar Ctotal minimizar (Cestoque + Ctransporte )

(4.12)

A proposta deste trabalho resolver o problema usando uma formulao multiobjetivo, que busca
minimizar os dois objetivos, dados pelas equaes (4.10) e (4.11), explicitamente:

(
minimizar

Cestoque
Ctransporte .

(4.13)

A utilizao de uma abordagem multiobjetivo permite que a escolha de uma soluo que privilegie
o transporte ou o estoque seja feita a posteriori. Alm disso, a diferena de escala entre os custos

42

Caracterizao do problema

no afeta o desempenho da abordagem. Como poderemos ver na seo 4.6, metade das instncia
apresenta custo unitrio de estoque no intervalo (0,01; 0,05) e a outra metade no intervalo (0,1; 0,5).
Para as instncias com custo de estoque no intervalo (0,1; 0,5), o custo de transporte equiparvel em
termos de escala. No caso dos custos de estoque no intervalo (0,01; 0,05), o custo de transporte est
numa escala acima da escala de custo de estoque. Dessa forma, usando a formulao mono-objetivo,
a parcela do custo total relativo ao transporte predominaria sobre a do custo de estoque, podendo levar
a resultados que privilegiam o custo de transporte.

4.5

Poltica de reabastecimento

Em Archetti et al. (2007), so apresentados resultados da soluo exata para trs polticas de
reabastecimento.
VMIR-OU ;
VMIR-ML;
VMIR.
As diferenas entre essas polticas baseiam-se na determinao da quantidade de produto a ser
entregue ao cliente, sempre que ele visitado. Na VMIR-OU, a quantidade a mxima permitida
pelo estoque corrente do cliente. Na poltica VMIR-ML, a quantidade pode ser qualquer valor que
no ultrapasse o nvel mximo de estoque do cliente. E na VMIR, a quantidade entregue pode ser
qualquer valor, mesmo que o nvel mximo de estoque do cliente seja ultrapassado. Nesse trabalho,
optou-se por utilizar a poltica VMIR-ML por dois motivos:
Em problemas reais, comum a necessidade de se respeitar as restries de estoque mximo, o
que no ocorre com a poltica VMIR;
Para a soluo exata, a VMIR-OU mostrou resultados inferiores aos das demais, pois ela diminui a flexibilidade de alocao. Usando a poltica VMIR-OU, ao se definir o dia do reabastecimento, implicitamente se est definindo a quantidade a ser reabastecida. Nas polticas
VMIR-ML e VMIR, o dia do reabastecimento e a quantidade a ser reabastecida so duas variveis de deciso.

4.6

Instncias de teste

Os testes foram realizados usando instncias de benchmark encontradas na literatura. O objetivo


desses testes foi validar a proposta em relao convergncia da soluo. No entanto, como as

4.6 Instncias de teste

43

instncias da literatura so de pequeno e mdio porte, foram tambm geradas instncias de grande
porte e realizados testes para validao da escalabilidade da proposta.

4.6.1

Instncias de benchmark da literatura

As instncias de teste propostas em Archetti et al. (2007) foram geradas atravs de seleo aleatria de valores dentro de intervalos estabelecidos e seguindo uma distribuio uniforme. Esto
divididas em 4 classes:
1. Horizonte = 3 dias; custo de estoque no fornecedor de 0,03 unidades; custo de estoque nos
clientes: aleatoriamente gerado no intervalo (0,01; 0,05) (baixo custo de estoque);
2. Horizonte = 3 dias; custo de estoque no fornecedor de 0,3 unidades; custo de estoque nos
clientes: aleatoriamente gerado no intervalo (0,1; 0,5) (alto custo de estoque);
3. Horizonte = 6 dias; custo de estoque no fornecedor de 0,03 unidades; custo de estoque nos
clientes: aleatoriamente gerado no intervalo (0,01; 0,05) (baixo custo de estoque);
4. Horizonte = 6 dias; custo de estoque no fornecedor de 0,3 unidades; custo de estoque nos
clientes: aleatoriamente gerado no intervalo (0,1; 0,5) (alto custo de estoque).
As instncias de teste com horizonte de 3 dias compreendem casos com nmero de clientes no
conjunto {5, 10, 15, 20, 25, 30, 35, 40, 45, 50}. As de 6 dias compreendem casos com nmero de
clientes no conjunto {5, 10, 15, 20, 25, 30}. Somam, no total, 160 instncias de teste.
A Figura 4.6 exibe dados de uma instncia de teste. No caso, a instncia se enquadra na classe 4
e compreende 15 clientes.

44

Caracterizao do problema

16 6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

1155
249,0
449,0
221,0
64,0
152,0
128,0
320,0
306,0
440,0
151,0
453,0
67,0
30,0
453,0
132,0
194,0

454,0
228,0
329,0
54,0
255,0
498,0
185,0
330,0
230,0
453,0
184,0
211,0
93,0
90,0
325,0
380,0

11
98
170
106
94
24
42
34
59
54
62
134
10
51
82

1801
22
196
255
159
188
36
84
51
118
81
124
201
20
102
164

770
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

11
98
85
53
94
12
42
17
59
27
62
67
10
51
82

Fig. 4.6: Estrutura de dados de uma instncia de teste


A primeira linha contm a seguinte informao:
n H C
onde:
n = nmero de clientes + 1 (conta tambm o fornecedor)
H = nmero de dias do horizonte de planejamento
C = capacidade mxima de transporte

A segunda linha contm informaes do fornecedor:


1 x1 y1 B1 r1 h1
onde:
1 = nmero correspondente ao fornecedor
x1 = coordenada x do fornecedor
y1 = coordenada y do fornecedor

0,30
0,20
0,19
0,24
0,22
0,40
0,45
0,16
0,17
0,26
0,24
0,41
0,20
0,25
0,16
0,18

4.6 Instncias de teste

45

B1 = estoque inicial no fornecedor


r1 = produo no fornecedor em cada dia do horizonte de planejamento
h1 = custo de estoque unitrio no fornecedor

As linhas seguintes apresentam informaes de cada cliente:


s xs ys Is0 Us Ls rs hs
onde:
s = nmero do cliente
xs = coordenada x do cliente s
ys = coordenada y do cliente s
Is0 = nvel de estoque inicial no cliente s
Us = nvel mximo de estoque no cliente s
Ls = nvel mnimo de estoque no cliente s (no problema considerado, esse valor sempre zero)
rs = quantidade consumida no cliente s a cada dia do horizonte de planejamento
hs = custo de estoque unitrio no cliente s

Para as 4 classes de instncias de teste descritas, limitadas a 30 clientes para horizonte de planejamento de 6 dias, ou 50 clientes para horizonte de 3 dias, existe uma soluo tima para a formulao
mono-objetivo do problema. A limitao no nmero de clientes decorre do fato do algoritmo exato
s produzir resultado em tempo aceitvel para problemas de dimenses reduzidas.

4.6.2

Proposta de novas instncias

Duas classes adicionais de instncia de teste so propostas nesse trabalho para que seja possvel
avaliar a abordagem de soluo proposta em problemas de grande porte. Classe com horizonte de
planejamento de 3 dias:
Horizonte: 3 dias;
Custo de estoque no fornecedor: 0,3 unidades;
Custo de estoque nos clientes: aleatoriamente gerado no intervalo (0,1; 0,5);
Nmero de clientes: 200

46

Caracterizao do problema
Classe com horizonte de planejamento de 6 dias:
Horizonte: 6 dias;
Custo de estoque no fornecedor: 0,3 unidades;
Custo de estoque nos clientes: aleatoriamente gerado no intervalo (0,1; 0,5);
Nmero de clientes: 200

Em problemas prticos com 200 clientes, provavelmente a frota de transporte no limitada a um


nico veculo. No entanto, a proposta de se aplicar o algoritmo em problemas com 200 clientes e um
nico veculo de transporte visa exclusivamente verificar a escalabilidade do algoritmo.

4.7

Sntese do captulo

Neste captulo, foram apresentados em detalhes o IRP, a formulao matemtica do problema, a


poltica de reabastecimento e as instncias de teste que foram usadas para a validao da abordagem
proposta.

Captulo 5
Estratgia de soluo
A estratgia adotada para a soluo do problema de estoque e roteamento gerenciados pelo fornecedor utiliza o algoritmo SPEA2 (ver seo 3.7). A escolha baseou-se no fato do SPEA2 ser
considerado juntamente com NSGA-II, algoritmos evolutivos de referncia na rea de otimizao
multiobjetivo
O SPEA2, assim como outros algoritmos mencionados na seo 3.5, fornece apenas o mecanismo
geral de busca. No entanto, para cada problema, necessrio definir a representao computacional
das solues-candidatas, a forma de gerao da populao inicial, o mapeamento do gentipo para
o fentipo dos indivduos da populao, os operadores de recombinao e mutao pertinentes ao
problema, e o critrio de dominncia entre as solues. Buscas locais no fazem parte do algoritmo
SPEA2, no entanto, reconhecido que a combinao de algoritmos evolutivos e buscas locais, alm
de tender a produzir solues de melhor qualidade, pode acelerar o processo de convergncia da
soluo. A abordagem proposta inclui buscas locais, combinadas ao SPEA2, que utilizam o critrio
de dominncia para a avaliao das solues.
As sees a seguir descrevem mdulos do algoritmo que so especficos do problema tratado e,
portanto, representam contribuies da pesquisa.

5.1

Critrio de dominncia

Ao invs do critrio de dominncia padro, foi utilizado um algoritmo baseado no critrio de


dominncia restrita (Deb (2001), Deb et al. (2002)), que permite a comparao entre duas solues
no-factveis, ou seja, solues que apresentam valor de violao maior que zero, assim como a
comparao entre uma soluo factvel e outra no-factvel.
Uma soluo x apresenta uma dominncia restrita sobre uma soluo y se:
1. A soluo x factvel e a soluo y infactvel;
47

48

Estratgia de soluo
2. Ambas as solues x e y so infactveis, mas a soluo x apresenta uma menor violao de
restries quando comparada soluo y;
3. Ambas as solues x e y so factveis e x domina y.
Considerando:
C1 : soma dos custos totais de transporte de todas as rotas do horizonte de planejamento;
C2 : soma dos custos totais de estoque no fornecedor e nos clientes;
V1 : soma das violaes de capacidade de transporte;
V2 : soma das violaes de disponibilidade no fornecedor;
V3 : soma das violaes de estoque mnimo do cliente;
V4 : soma das violaes de estoque mximo do cliente;
Ic = {1, 2}: ndices dos custos;
Iv = {1, ..., 4}: ndices das violaes.

A existncia de um valor de Vi (i Iv ) maior que zero indica que a soluo possui uma violao.
O Algoritmo 1 contm os passos para determinar se uma soluo A domina uma soluo B.

5.1 Critrio de dominncia

49

Algoritmo 1 Funo de dominncia


if ( i Iv , Vi (A) = 0) and ( i Iv | Vi (B) > 0) then {Se A no apresenta violaes e B
apresenta pelo menos uma}
return true; { A domina B }
else
if ( i Iv | Vi (A) > 0) and ( i Iv , Vi (B) = 0) then {Se A apresenta pelo menos uma violao e B no apresenta nenhuma}
return false; {A no domina B}
else {A e B no apresenta nenhuma violao ou ambas apresentam violaes}
EstritamenteM enor = f alse;
for i Ic do {Para todos os custos}
if Ci (A) > Ci (B) then {Se A apresenta custo maior que B}
return false; {A no domina B}
else
if Ci (A) < Ci (B) then {Se A apresenta pelo menos um custo menor que B}
EstritamenteM enor = true; {A pode dominar B se os outros custos forem menores
ou iguais aos de B}
end if
end if
end for
for i Iv do {Para todas as violaes}
if Vi (A) > Vi (B) then {Se A apresenta violao maior que B}
return false; {A no domina B}
else
if Vi (A) < Vi (B) then {Se A apresenta pelo menos uma violao menor que B}
EstritamenteM enor = true; { A pode dominar B se as outras violaes forem
menores ou iguais a B }
end if
end if
end for
return EstritamenteM enor; { Retorna true se A possui um custo ou violao menor que B
e demais custos e violaes menores ou iguais}
end if
end if

50

5.2

Estratgia de soluo

Codificao

O gentipo dos indivduos da populao codificado em uma matriz nm, conforme apresentado
na Figura 5.1 onde n o nmero de clientes a serem atendidos e m o tamanho do horizonte de
planejamento (nmero de dias). O valor de cada elemento ij da matriz representa a quantidade de
produto a ser entregue no cliente i no instante j. O valor 0 indica que no h reabastecimento. Note
que, para cada dia t do horizonte de planejamento, armazenado somente quais clientes so atendidos
e o valor dos reabastecimentos, no havendo nenhuma informao da rota a ser seguida.

C1
C2
C3
C4
C5

D1
0
91
75
0
64

D2
130
0
0
86
0

D3
0
0
150
0
128

D4
0
273
75
0
64

D5
195
0
0
129
0

D6
65
0
75
43
128

Fig. 5.1: Codificao do gentipo


Na gerao da populao inicial, so criadas matrizes binrias com 0s e 1s atribudos aleatoriamente. O valor 1 na coluna ij indica que deve ocorrer um abastecimento do cliente i no instante
j. A transformao dos 1s em valores de alocao feita a partir do primeiro dia do horizonte de
alocao. Para todos os clientes do primeiro dia, calculado o estoque aps o consumo dirio. Para
todos os clientes que apresentarem estoque negativo ou tiverem um 1 na matriz binria, calculado o
abastecimento mnimo para suprir o consumo at o prximo reabastecimento. O valor de reabastecimento limitado pelo estoque mximo suportado no cliente. O procedimento aplicado para os dias
seguintes do horizonte de planejamento. Esse processo garante que no haver violao de estoque
mnimo/mximo nos clientes. No entanto, a soluo pode apresentar violao de capacidade mxima
de transporte e de produo do fornecedor. Caso haja violaes, so feitos rearranjos visando minimizar ou eliminar as violaes. Os rearranjos so executados em dois passos. No primeiro passo,
para cada dia com violao de capacidade de transporte, tenta-se realocar a quantidade excedida para
o reabastecimento anterior ou posterior. Caso ainda haja violaes, executado o segundo passo,
onde so criadas novas alocaes (em dias anteriores ou posteriores que apresentem capacidade disponvel) e as quantidades excedidas so movidas para as nova alocaes. No h garantia de que a
soluo gerada seja factvel, mas o algoritmo foi estruturado para trabalhar com solues factveis e
no-factveis, conforme descrito na seo 5.1. O pseudocdigo do clculo de alocaes est descrito
no Algoritmo 2.

5.3 Operadores de recombinao

51

Em Archetti et al. (2011), proposta uma abordagem de otimizao baseada em busca tabu.
Como a proposta trabalha com apenas uma soluo corrente, entre uma iterao e outra do algoritmo,
so armazenadas tanto as quantidades de reabastecimento quanto as rotas a serem seguidas. Na codificao proposta nesse trabalho, optou-se por usar uma codificao em forma de matriz que armazena
as quantidades de reabastecimento. As rotas a serem seguidas so calculadas sempre que necessrio, empregando o software Concorde (ver seo 5.6). A deciso foi tomada baseada nas seguintes
anlises:
A codificao em matriz binria extensamente utilizada em algoritmos evolutivos. A utilizao de matrizes torna a aplicao de operadores de recombinao e mutao mais diretas.
Apesar da sua forma mais usual ser em matriz binria, optou-se por manter na matriz, alm da
informao de quando o cliente abastecido, o valor do reabastecimento. O uso de uma matriz
binria exigiria a implementao de um algoritmo determinstico e muito eficiente de clculo
das quantidades de abastecimento. Em contrapartida, o uso de uma matriz com as quantidades de reabastecimento permite que a definio das quantidades de reabastecimento sejam o
produto do prprio algoritmo evolutivo e das buscas locais empregadas.
Para o clculo da melhor rota, foi escolhida uma implementao muito eficiente da heurstica
de Chained-Lin-Kernighan, que resolve problemas de TSP (do ingls, Travelling Salesman
Problem). No h contribuies da pesquisa neste mdulo de otimizao da rota. Ou seja,
relativamente rpido obter as rotas a partir do conjunto de clientes a serem visitados, presente
no software Concorde (Concorde Home Page (n.d.)).
O armazenamento das rotas para todos os dias do horizonte de planejamento de todos os indivduos da populao exigiria uma estrutura mais complexa, que consumiria muito espao em
memria.
A incluso de cidades a mais em um problema de TSP pode mudar completamente a soluo
tima do problema. Como a abordagem proposta utiliza extensivamente operadores de mutao
e recombinao, muito comum que o conjunto de clientes a serem visitados seja alterado.
A determinao de quando seria possvel reaproveitar ou no uma rota existente exigiria um
esforo computacional similar ao de recalcular as rotas sempre que necessrio.

5.3

Operadores de recombinao

Em algoritmos evolutivos, os mecanismos de busca so inspirados nos conceitos da Teoria de


Evoluo das Espcies. Esses mecanismos apresentam um uso intensivo de operadores de recombi-

52

Estratgia de soluo

Algoritmo 2 Clculo de alocao


for t em {horizonte de programao} do
for c em { conjunto de clientes} do
Calcula estoque atual
if estoque atual < 0 or matriz binaria(t,c) == 1 then
Calcula reabastecimento necessrio para suprir demanda at prxima alocao definida na
matriz binria e atualiza matriz de alocao
end if
end for
end for
for i em {tentativa1, tentativa2} do
for t em {horizonte de programao} do
Verifica violao de transporte e/ou produo do fornecedor
if ocorreu violao then
for c in {conjunto de clientes com abastecimento em t} do
if i==tentativa1 then
if violao persiste then
Obtm o dia tant imediatamente anterior a t em que o cliente c possua um
reabastecimento.
if existe capacidade de estoque, de produo e de transporte no instante tant then
Move alocao do instante t para tant de acordo com a capacidade
end if
if violao persiste then
Obtm o dia tpost imediatamente posterior a t em que o cliente c possua um reabastecimento.
if existe capacidade de estoque, de produo e de transporte no instante tpost then
Move alocao do instante t para tpost de acordo com a capacidade
end if
end if
end if
else {i==tentativa2}
Obtm o dia tant imediatamente anterior a t e que tenha capacidade de estoque, de
produo e de transporte
Cria novo reabastecimento para o cliente c em tant e move alocao de t para tant
if violao persiste then
Obtm o dia tpost imediatamente posterior a t e que tenha capacidade de estoque, de
produo e de transporte
Cria novo reabastecimento para o cliente c em tpost e move alocao de t para tpost
end if
end if
end for
end if
end for
end for

5.3 Operadores de recombinao

53

nao (do ingls crossover). A recombinao o mecanismo pelo qual novas solues so geradas
a partir da combinao entre solues existentes. Na medida em que os indivduos so selecionados
de acordo com a respectiva qualidade, o uso de operadores de recombinao tende a aumentar mais
rapidamente a qualidade mdia da populao, se as partes boas de cada soluo combinada forem
preservadas. A recombinao envolve dois indivduos da populao P1 e P2 e gera dois novos indivduos F1 e F2 . Parte do material gentico de P1 e parte do material gentico de P2 so combinados
para gerar o F1 . As partes no utilizadas para gerar F1 so empregadas na gerao do indivduo F2 .
Aps a recombinao, so executadas heursticas simples para tentar factibilizar as solues geradas.
Caso as violaes permaneam, as quantidades de reabastecimento so recalculadas para toda a matriz. Isso no garante que a soluo gerada seja sempre factvel, mas aumenta consideravelmente a
possibilidade disso ocorrer.
Foram implementados os seguintes operadores de recombinao:
Recombinao vertical de um ponto;
Recombinao horizontal de um ponto;
Recombinao uniforme de clulas;
Recombinao uniforme de colunas;
Recombinao uniforme de linhas.
Os operadores de recombinao so executados em 60% da populao. Cada um dos cinco tipos
de recombinao tem igual probabilidade de ocorrncia. A probabilidade de ocorrncia de recombinao, 60%, foi definida empiricamente por tentativa e erro.

54

Estratgia de soluo

5.3.1

Recombinao vertical de um ponto

feito um corte vertical em uma coluna escolhida aleatoriamente nos dois indivduos a serem
recombinados. Cada descendente herda uma parte do gentipo de cada progenitor.
No exemplo apresentado na Figura 5.2, o corte ocorre na coluna D4. Um dos descendentes herda
as colunas D1-D4 de um progenitor e as colunas D5-D6 do outro. O outro descendente herda o
complemento.

C1
C2
C3
C4
C5

D1
65
0
0
0
64

D2
0
0
150
0
0

D3
0
182
0
129
128

D4
195
0
75
0
0

D5
0
182
150
0
128

D6
0
0
0
129
0

C1
C2
C3
C4
C5

D1
0
91
75
0
64

D2
130
0
0
86
0

P1

D3
0
0
150
0
128

D4
0
273
175
0
64

D5
195
0
0
129
0

D6
65
0
75
43
128

D4
0
273
175
0
64

D5
0
182
150
0
128

D6
0
0
0
129
0

P2

Coluna 4

C1
C2
C3
C4
C5

D1
65
0
0
0
64

D2
0
0
150
0
0

D3
0
182
0
129
128

D4
195
0
75
0
0

D5
195
0
0
129
0

D6
65
0
75
43
128

C1
C2
C3
C4
C5

D1
0
91
75
0
64

D2
130
0
0
86
0

F1

D3
0
0
150
0
128
F2

Fig. 5.2: Recombinao vertical de um ponto


Motivao intuitiva: Polticas de abastecimento dirio (colunas inteiras) presentes nos indivduos
P1 e P2 so combinadas nos indivduos F1 e F2 . Caso os indivduos P1 e P2 possuam boas polticas
apenas para alguns dias consecutivos, cria-se a possibilidade de que ao menos um dos indivduos F1
e F2 passe a conter as boas polticas de abastecimento dirias de P1 e P2 .

5.3 Operadores de recombinao

5.3.2

55

Recombinao horizontal de um ponto

feito um corte horizontal em uma linha escolhida aleatoriamente nos dois indivduos a serem
recombinados. Cada descendente herda uma parte do gentipo de cada progenitor.
No exemplo apresentado na Figura 5.3, o corte ocorre na linha C1. Um dos descendentes herda a
linha C1 de um progenitor e as linhas C2-C6 do outro. O outro descendente herda o complemento.

C1
C2
C3
C4
C5

D1
65
0
75
43
64

D2
0
0
0
0
0

D3
130
174
75
0
128

D4
0
190
75
129
0

D5
130
0
150
0
128

D6
0
0
0
0
0

C1
C2
C3
C4
C5

D1
0
0
0
0
0

D2
0
0
150
0
128

P1

D3
195
182
0
129
0

D4
0
0
150
0
83

D5
130
182
0
86
109

D6
0
0
75
0
0

D4
0
190
75
129
0

D5
130
0
150
0
128

D6
0
0
0
0
0

P2

Linha 1

C1
C2
C3
C4
C5

D1
65
0
0
0
0

D2
0
0
150
0
128

D3
130
182
0
129
0

D4
0
0
150
0
83

D5
130
182
0
86
109

D6
0
0
75
0
0

C1
C2
C3
C4
C5

D1
0
0
75
43
64

D2
0
0
0
0
0

F1

D3
195
174
75
0
128
F2

Fig. 5.3: Recombinao horizontal de um ponto


Motivao intuitiva: Polticas de abastecimento de clientes, durante todo o horizonte de planejamento (linhas inteiras), presentes nos indivduos P1 e P2 so combinados nos indivduos F1 e F2 .
Caso os indivduos P1 e P2 possuam boas polticas em apenas um subconjunto de clientes, criase a possibilidade de que ao menos um dos indivduos F1 e F2 passe a conter as boas polticas de
abastecimento de clientes presentes em P1 e P2

56

Estratgia de soluo

5.3.3

Recombinao uniforme de clulas

gerada aleatoriamente um mapa de bits com a mesma dimenso da matriz que representa o
gentipo dos indivduos. Um dos descendentes herda as clulas de um dos progenitores especificadas
como 1 no mapa de bits e as clulas de outro progenitor especificadas como 0 no mapa de bits. O
outro descendente herda o complemento. O termo "clula" est sendo usado nesse contexto como
sinnimo de "elemento ij" da matriz.

C1
C2
C3
C4
C5

D1
0
0
0
0
0

D2
130
122
75
86
64

D3
65
121
150
43
128

D4
0
0
0
0
0

D5
65
121
150
43
128

D6
0
0
0
0
0

C1
C2
C3
C4
C5

D1
65
91
0
43
64

D2
65
91
75
43
64

P1

D3
65
0
150
0
0

D4
0
182
0
86
128

D5
130
0
150
0
0

D6
0
0
0
0
128

D4
0
0
0
0
128

D5
65
0
150
43
128

D6
0
0
0
0
0

P2

0
1
1
1
1

0
1
1
1
0

1
0
0
0
1

1
0
0
0
1

0
1
1
0
0

1
1
0
0
0

C1
C2
C3
C4
C5

D1
65
0
0
0
0

D2
65
122
75
86
64

D3
65
0
150
0
128

D4
0
182
0
86
0

D5
130
121
150
0
0

D6
0
0
0
0
128

C1
C2
C3
C4
C5

D1
0
91
0
43
64

D2
130
91
75
43
64

F1

D3
65
121
150
43
0
F2

Fig. 5.4: Recombinao uniforme de clulas


Motivao intuitiva: indicado no caso de P1 e P2 no disporem nem de boas polticas de abastecimento dirio (coluna toda), nem de boas polticas de abastecimento de clientes durante o horizonte
de planejamento (linha toda), mas apresentarem boas decises de abastecimento isoladas e que podem
ser combinadas em F1 e F2 .

5.3 Operadores de recombinao

5.3.4

57

Recombinao uniforme de colunas

gerada aleatoriamente uma sequncia de bits formando um vetor de tamanho igual ao nmero
de colunas da matriz que representa o gentipo dos indivduos. Cada um dos descendentes recebe
as colunas de um dos progenitores, especificadas como 1 no vetor de bits, e as colunas de outro
progenitor, especificadas como 0 no vetor de bits. No exemplo, um dos descendentes herda as colunas
[D1,D2,D3,D5] de um dos progenitores e [D4,D6] do outro progenitor. O outro descendente herda o
complemento.

C1
C2
C3
C4
C5

D1
0
0
75
0
64

D2
130
0
0
86
0

D3
0
273
75
0
64

D4
0
0
150
0
128

D5
195
91
0
129
0

D6
65
0
75
43
128

C1
C2
C3
C4
C5

D1
65
0
75
43
64

D2
0
0
0
0
0

P1

D3
130
174
75
0
128

D4
0
190
75
129
0

D5
130
0
150
0
128

D6
0
0
0
0
0

D4
0
0
150
0
128

D5
130
0
150
0
128

D6
65
0
75
43
128

P2

C1
C2
C3
C4
C5

D1
0
0
75
0
64

D2
130
0
0
86
0

D3
0
273
75
0
64

D4
0
190
75
129
0

D5
195
91
0
129
0

D6
0
0
0
0
0

C1
C2
C3
C4
C5

D1
65
0
75
43
64

D2
0
0
0
0
0

F1

D3
130
174
75
0
128
F2

Fig. 5.5: Recombinao uniforme de colunas


Motivao intuitiva: Similar ao caso do operador de recombinao vertical de um ponto (ver
seo 5.3.1), mas aqui as colunas a serem tomadas de P1 e P2 no precisam ser consecutivas.

58

Estratgia de soluo

5.3.5

Recombinao uniforme de linhas

gerada aleatoriamente uma sequncia de bits formando um vetor de tamanho igual ao nmero
de linhas da matriz que representa o gentipo dos indivduos. Cada um dos descendentes recebe as
linhas de um dos progenitores, especificadas como 1 no vetor de bits, e as linhas de outro progenitor,
especificadas como 0 no vetor de bits. No exemplo, um dos descendentes herda as linhas [C1,C3,C5]
de um dos progenitores e [C2,C4] do outro progenitor. O outro descendente herda o complemento.

C1
C2
C3
C4
C5

D1
0
0
75
0
64

D2
130
0
0
86
0

D3
0
273
75
0
64

D4
0
0
150
0
128

D5
195
91
0
129
0

D6
65
0
75
43
128

C1
C2
C3
C4
C5

D1
65
0
75
43
64

D2
0
0
0
0
0

P1

D3
130
174
75
0
128

D4
0
190
75
129
0

D5
130
0
150
0
128

D6
0
0
0
0
0

D4
0
0
75
0
0

D5
130
91
150
129
128

D6
0
0
0
43
0

P2

1
0
1
0
1

C1
C2
C3
C4
C5

D1
0
0
75
43
64

D2
130
0
0
0
0

D3
0
174
75
0
64

D4
0
190
150
129
128

D5
195
0
0
0
0

D6
65
0
75
0
128

C1
C2
C3
C4
C5

D1
65
0
75
0
64

D2
0
0
0
86
0

F1

D3
130
273
75
0
128
F2

Fig. 5.6: Recombinao uniforme de linhas

Motivao intuitiva: Similar ao caso do operador de recombinao horizontal de um ponto (ver


seo 5.3.2), mas aqui as linhas a serem tomadas de P1 e P2 no precisam ser consecutivas.

5.4 Operadores de mutao

5.4

59

Operadores de mutao

O operador de mutao visa facilitar a explorao de diferentes partes do espao de busca. A


mutao cria um indivduo modificado que copiado para a prxima gerao da populao. A mutao consiste na promoo de uma mudana aleatria no material gentico de um indivduo. Aps
a mutao, so executadas heursticas simples para tentar factibilizar as solues geradas. Caso as
violaes permaneam, as quantidades de reabastecimento so recalculadas para toda a matriz.
Foram implementados os seguintes operadores de mutao:
Unio de reabastecimentos;
Insero de reabastecimento;
Troca de reabastecimentos.
Apesar do operador de mutao ser, em geral, aplicado a uma populao com uma probabilidade
baixa de ocorrncia, esse operador foi utilizado na abordagem implementada com uma probabilidade
alta de ocorrncia, de 80%. Este valor foi definido de forma emprica, por tentativa e erro. Como o
algoritmo SPEA2 elitista, j se garante que as N melhores solues sero sempre preservadas (N
um parmetro do algoritmo que define o tamanho do arquivo, ver seo 3.7). O uso intensivo de
operadores de mutao possibilitou uma explorao melhor do espao de busca, gerando melhores
resultados.

60

5.4.1

Estratgia de soluo

Unio de reabastecimentos

Duas colunas, escolhidas aleatoriamente, so combinadas em uma nica coluna. A escolha de


qual coluna zerada e qual coluna recebe a combinao das colunas feita aleatoriamente.
No exemplo, as colunas D2 e D5 so combinadas e atribudas coluna D5. A coluna D2 zerada.

C1
C2
C3
C4
C5

D1
0
182
75
0
128

D2
65
0
0
0
128

D3
0
182
75
129
64

D4
195
0
75
0
0

D5
0
0
75
0
0

D6
0
0
75
129
0

D5
65
0
75
0
128

D6
0
0
75
129
10

D5 = D2 + D5

C1
C2
C3
C4
C5

D1
0
182
75
0
128

D2
0
0
0
0
0

D3
0
182
75
129
64

D4
195
0
75
0
0

Fig. 5.7: Unio de reabastecimentos


Motivao intuitiva: Reduzir o nmero de rotas, visando baixar o custo de transporte. Supe-se
que a capacidade de abastecimento atende com alguma folga a demanda.

5.4 Operadores de mutao

5.4.2

61

Insero de reabastecimento

So escolhidas aleatoriamente uma linha e uma coluna para a insero de um reabastecimento.


recalculado o reabastecimento do cliente na linha selecionada usando o Algoritmo 2 para apenas um
cliente.
No exemplo, inserido um reabastecimento na clula C3/D3.

C1
C2
C3
C4
C5

D1
0
0
0
0
0

D2
0
0
150
0
128

D3
195
182
0
129
0

D4
0
0
150
0
83

D5
0
0
0
86
109

D6
0
0
75
0
128

D4
0
0
75
0
83

D5
0
0
0
86
109

D6
0
0
75
0
128

C3 / D3

C1
C2
C3
C4
C5

D1
0
0
0
0
0

D2
0
0
150
0
128

D3
195
182
75
129
0

Fig. 5.8: Insero de reabastecimento


Motivao intuitiva: Toda incluso de abastecimento tende a aumentar o custo de transporte, mas
em contrapartida tende a reduzir o custo de estoque, caso realizada em cliente com custo de estoque
mais baixo que o fornecedor, aps recalcular o reabastecimento na respectiva linha.

62

5.4.3

Estratgia de soluo

Troca de reabastecimentos

So escolhidas aleatoriamente duas colunas e feita uma troca dos reabastecimentos das duas
colunas.
No exemplo, ocorre a troca das colunas D3 e D6. Este operador semelhante a um dos procedimentos descrito em Archetti et al. (2011) como parte de uma fase de melhoria da soluo utilizando
MIP (do ingls Mixed-Integer Programming).

C1
C2
C3
C4
C5

D1
0
0
75
43
64

D2
0
0
0
0
0

D3
195
174
75
0
128

D4
0
190
75
129
0

D5
130
0
150
0
128

D6
0
0
0
0
0

D5
130
0
150
0
128

D6
195
174
75
0
128

D3 <-> D6

C1
C2
C3
C4
C5

D1
0
0
75
43
64

D2
0
0
0
0
0

D3
0
0
0
0
0

D4
0
190
75
129
0

Fig. 5.9: Troca de reabastecimentos


Motivao intuitiva: Produz melhorias caso existam dias com boas solues de rota, mas que
podem reduzir os custo de estoque ou gerar menos violaes quando atribudas a outros dias.

5.5

Operadores de busca local

A busca local corresponde a um procedimento que permite uma busca sistemtica no espao de
solues-candidatas, por meio de alteraes que permitam encontrar solues vizinhas. As solues
obtidas atravs da busca local so somente empregadas caso haja uma melhoria da soluo. Em
otimizao multiobjetivo, uma melhoria na soluo implica em encontrar uma soluo que domine

5.5 Operadores de busca local

63

a soluo existente. O uso de busca local em combinao com algoritmos genticos so conhecidos
como algoritmos genticos hbridos ou algoritmos memticos (ver Moscato (1989)).
Foram implementados os seguintes operadores de busca local:
Remoo de reabastecimentos;
Deslocamento de reabastecimento;
Troca de reabastecimento em rota de alto custo;
Alocao mxima em rota de baixo custo de estoque;
Unio e separao de rotas.
As quatro primeiras buscas locais so executadas para toda a populao, imediatamente antes
do processo "Atribuio de Fitness" (ver Figura 3.7). A busca local de unio e separao de rotas
exige um custo computacional maior e executada apenas para 10% das solues que apresentam
melhor valor da funo de fitness. Essa busca executada ao fim do processo "Seleo de Pares" (ver
Figura 3.7).

64

5.5.1

Estratgia de soluo

Remoo de reabastecimentos

executada a remoo de reabastecimento em um cliente c em um dia t. A carga desse dia


distribuda nos dias anteriores e/ou posteriores a t, dias estes em que h reabastecimento. Este
operador executado para todos os reabastecimentos planejados, sempre que o estoque no cliente e
dia considerados ultrapassar a demanda diria.
No exemplo, o reabastecimento na clula C2/D2 removido. O reabastecimento que ocorreria
nesse dia movido para outro instante de tempo em que j est planejado um reabastecimento. No
caso, o da clula C2/D3.

C1
C2
C3
C4
C5

D1
0
0
0
0
0

D2
130
91
75
83
128

D3
65
91
75
43
64

D4
65
182
150
46
64

D5
0
0
0
0
0

D6
0
0
75
0
128

D4
65
182
150
46
64

D5
0
0
0
0
0

D6
0
0
75
0
128

C2 / D2

C1
C2
C3
C4
C5

D1
0
0
0
0
0

D2
130
0
75
83
128

D3
65
182
75
43
64

Fig. 5.10: Remoo de reabastecimentos


Motivao intuitiva: Reduzir custo de transporte atravs da diminuio do nmero de clientes
visitados nas rotas.

5.5 Operadores de busca local

5.5.2

65

Deslocamento de reabastecimento

executado um deslocamento de reabastecimento para o instante de tempo seguinte ou anterior.


O horizonte de planejamento considerado de forma circular, ou seja, o instante anterior ao primeiro
dia do horizonte corresponde ao ltimo dia do horizonte. Da mesma forma, o instante seguinte ao
ltimo dia do horizonte de planejamento corresponde ao primeiro dia. Este operador executado para
todos os reabastecimentos planejados.
No exemplo, o reabastecimento que ocorreria no cliente C2 no instante D1 deslocado para o
instante D6.

C1
C2
C3
C4
C5

D1
0
91
0
43
0

D2
0
0
150
0
128

D3
195
91
0
82
64

D4
65
182
149
47
64

D5
0
0
0
0
0

D6
0
0
75
0
128

D5
0
0
0
0
0

D6
0
91
75
0
128

C2: D1 <-> D6

C1
C2
C3
C4
C5

D1
0
0
0
43
0

D2
0
0
150
0
128

D3
195
91
0
82
64

D4
65
182
149
47
64

Fig. 5.11: Deslocamento de reabastecimento


Motivao intuitiva: Este operador pode resultar em diminuio de custo de estoque caso haja
deslocamento de um reabastecimento para o dia anterior, em um cliente com custo de estoque menor
que o do fornecedor, ou um deslocamento de reabastecimento para o dia sequinte, em um cliente
com custo de estoque maior que o do fornecedor. Pode ocorrer tambm, uma diminuio no custo de
transporte, caso o reabastecimento seja deslocado para um dia em que a rota contenha vizinhos mais
prximos ao cliente cujo reabastecimento est sendo deslocado.

66

5.5.3

Estratgia de soluo

Troca de reabastecimento em rota de alto custo

realizada a troca de reabastecimento de cliente em rota com alto custo para rota com vizinhos mais prximos. Escolhe-se a rota com maior custo, ou seja, a que apresenta o maior valor
rota
para o ndice custo
, onde |rota| o nmero de clientes abastecidos na rota. Remove-se da rota
|rota|
o reabastecimento do cliente mais distante dos demais membros da rota. Em seguida, procura-se a
rota onde o cliente removido possua vizinhos mais prximos para se incluir o reabastecimento. Este
operador executado uma vez para cada soluo-candidata.
No exemplo, a rota que apresenta maior custo a do dia D1, sendo que o cliente mais distante
dos demais clientes da rota e/ou do depsito o cliente C2. Este reabastecimento movido para o
dia D2, cuja rota inclui clientes mais prximos do cliente C2. Essa troca causou um reclculo de
reabastecimento do cliente C2, como pode ser observado nos dias D3, D5 e D6.

C1
C2
C3
C4
C5

D1
0
91
0
43
0

D2
0
0
150
0
128

D3
195
182
0
86
0

D4
0
0
75
0
128

D5
0
0
75
0
0

D6
170
91
75
43
128

D4
0
0
75
0
128

D5
0
182
75
0
0

D6
170
0
75
43
128

D1 / C2

C1
C2
C3
C4
C5

D1
0
0
0
43
0

D2
0
182
150
0
128

D3
195
0
0
86
0

Fig. 5.12: Troca de reabastecimento em rota de alto custo


Motivao intuitiva: O objetivo reduzir o custo de transporte ao mover um reabastecimento
pertencente a uma rota de alto custo para uma rota com vizinhos mais prximos.

5.5 Operadores de busca local

5.5.4

67

Alocao mxima em cliente de baixo custo de estoque

Selecionam-se os clientes com custo de estoque menor que o fornecedor. Em seguida ordena-se
esses clientes baseado no custo de estoque e aumenta-se o reabastecimento nesses clientes at o limite
da capacidade do cliente e de transporte, de acordo com a ordem estabelecida previamente, ou seja,
privilegiando os clientes com menor custo de estoque. So considerados apenas os casos em que j
ocorre reabastecimento.
No exemplo, os clientes C1, C4 e C5 apresentam custo de estoque mais baixo que o fornecedor, e
recebem alocao mxima possvel, respeitando-se seus limites mximos de estoque e a capacidade
de transporte no dia.

C1
C2
C3
C4
C5

D1
0
0
0
0
0

D2
130
0
75
83
128

D3
65
182
150
46
64

D4
0
0
0
0
0

D5
0
182
75
0
64

D6
65
0
75
43
64

D5
0
182
75
0
128

D6
195
0
75
129
164

C1 / C4 / C5

C1
C2
C3
C4
C5

D1
0
0
0
0
0

D2
130
0
75
83
128

D3
65
182
150
46
64

D4
0
0
0
0
0

Fig. 5.13: Alocao mxima em clientes de baixo custo de estoque


Motivao intuitiva: O objetivo reduzir o custo total de estoque aumentando as quantidades de
reabastecimentos j existentes at o limite do estoque do cliente, para todos os clientes com custo de
estoque menor que o fornecedor.

68

5.5.5

Estratgia de soluo

Unio e separao de rotas I

Unem-se os reabastecimentos de dois instantes de tempo e os separa em duas rotas de menor custo
no total. A separao executada de forma a dividir a rota em duas partes tal que elas fiquem em
posies opostas em relao ao depsito.
No exemplo, as rotas dos dias D5 e D6, escolhidas aleatoriamente, so unidas e melhor divididas
em duas rotas que apresentam vizinhos mais prximos. A Figura 5.15 mostra as rotas antes e depois
da aplicao do operador.

C1
C2
C3
C4
C5
C6
C7
C8
C9
C10

D1
0
0
0
110
0
78
178
178
0
0

D2
0
0
0
0
141
0
0
0
185
192

D3
117
95
39
0
0
0
89
89
0
0

D4
0
285
0
55
0
39
178
178
0
96

D5
39
0
13
110
47
78
0
10
123
192

D6
0
0
0
0
0
0
0
0
0
0

D5
39
0
13
110
47
78
0
10
123
192

D6
0
0
0
0
0
0
0
0
0
0

D2 + D3 -> D2 + D3

C1
C2
C3
C4
C5
C6
C7
C8
C9
C10

D1
0
0
0
110
0
78
178
178
0
0

D2
117
0
39
0
141
0
0
0
0
0

D3
0
95
0
0
0
0
89
89
185
192

D4
0
285
0
55
0
39
178
178
0
96

Fig. 5.14: Unio e separao de rotas I

5.5 Operadores de busca local

69

Fig. 5.15: Rotas antes e depois da aplicao do operador


Motivao intuitiva: Reduzir o custo de transporte atravs de uma melhor combinao de rotas.

70

5.5.6

Estratgia de soluo

Unio e separao de rotas II

Similar ao operador descrito na seo 5.5.5. A diferena que as rotas so separadas de forma
que se forme uma rota com os clientes mais prximos do depsito e outra rota com os clientes mais
distantes do depsito. A Figura 5.17 mostra as rotas antes e depois da aplicao do operador.

C1
C2
C3
C4
C5
C6
C7
C8
C9
C10

D1
0
0
0
110
0
78
178
178
0
0

D2
0
0
0
0
141
0
0
0
185
192

D3
117
95
39
0
0
0
89
89
0
0

D4
0
285
0
55
0
39
178
178
0
96

D5
39
0
13
110
47
78
0
10
123
192

D6
0
0
0
0
0
0
0
0
0
0

D5
39
0
13
110
47
78
0
10
123
192

D6
0
0
0
0
0
0
0
0
0
0

D2 + D3 -> D2 + D3

C1
C2
C3
C4
C5
C6
C7
C8
C9
C10

D1
0
0
0
110
0
78
178
178
0
0

D2
0
95
39
0
0
0
0
0
0
0

D3
117
0
0
0
141
0
89
89
185
192

D4
0
285
0
55
0
39
178
178
0
96

Fig. 5.16: Unio e separao de rotas II

5.6 Implementao

71

Fig. 5.17: Rotas antes e depois da aplicao do operador

5.6

Implementao

A implementao do algoritmo foi feita em Matlab. A Figura 5.18 mostra uma decomposio
hierrquica do algoritmo SPEA2 em mdulos. No mdulo de clculo do fitness bruto, feito o
clculo do custo total de transporte, do custo total de estoque e dos valores das violaes. Para o
clculo do custo de transporte, primeiro resolvido um TSP (do ingls Traveling Salesman Problem) para cada dia do horizonte de planejamento. Em seguida, feito o clculo do custo de transporte de acordo com a melhor rota encontrada. O TSP resolvido usando uma implementao da
heurstica de Chained-Lin-Kernighan denominada Linkern e disponvel no site do projeto Concorde
(http://www.tsp.gatech.edu/concorde). Foi implementado tambm um mdulo de integrao entre o
Matlab e a biblioteca do Linkern. O mdulo de integrao foi implementado na linguagem C.

5.7

Sntese do captulo

Neste captulo, foi apresentada uma abordagem evolutiva multiobjetivo baseada no algoritmo
SPEA2. Foram apresentados em detalhes o critrio de dominncia, a codificao dos indivduos,
os operadores de mutao, recombinao e busca local concebidos na abordagem, assim como a
motivao para o uso de cada um. apresentada tambm uma viso geral da implementao da
abordagem proposta.

72

Estratgia de soluo

Fig. 5.18: Mdulos do algoritmo empregado para otimizao multiobjetivo

Captulo 6
Resultados
O objetivo deste captulo avaliar a qualidade das solues obtidas para o problema de otimizao
multiobjetivo de estoque e roteamento gerenciados pelo fornecedor, de acordo com dois critrios:
Convergncia das solues;
Diversidade das solues.
Em relao nomenclatura, ser utilizado o termo conjunto de Pareto para as solues nodominadas obtidas pela abordagem proposta. O termo conjunto Pareto-timo ser usado para se
referir fronteira de Pareto de cada problema, ou seja, o conjunto ideal de solues que, por sinal, no
conhecido. E soluo mono-objetivo ser usado para referenciar a soluo tima da formulao
mono-objetivo disponvel na literatura, a qual simplesmente soma o valor das duas funes-objetivo.
A abordagem de soluo multiobjetivo indita para o problema apresentado, o que significa que
no existe na literatura o conjunto Pareto-timo para as instncias do problema e nem mesmo outros
conjuntos de Pareto para comparao. Isso impossibilita a utilizao de vrias mtricas comumente
usadas na anlise de desempenho dos algoritmos multiobjetivos e descritas na seo 3.6. As mtricas que podem ser empregadas diretamente so a de espaamento (equao 3.9), nmero de nichos
(equao 3.12) e hipervolume (equao 3.15), que representam mtricas de avaliao de diversidade
(o hipervolume tambm uma mtrica de convergncia). No presente trabalho, foi usada a mtrica
de espaamento.
Em relao convergncia da soluo, como est disponvel na literatura somente a soluo tima
para a formulao mono-objetivo do problema, a avaliao foi feita comparando-se a soluo monoobjetivo com a soluo do conjunto de Pareto obtido que mais se aproxima da soluo mono-objetivo
no espao dos objetivos. Essa avaliao representa uma adaptao da mtrica de distncia geracional
dada pela equao (3.6), para o caso em que s existe uma soluo a ser comparada.
73

74

Resultados

6.1

Apresentao de uma soluo do conjunto de Pareto

Na Figura 6.1, possvel observar os dados de uma instncia de teste e o resultado obtido para
uma das solues do conjunto de Pareto. Na parte superior esquerda, o grfico consolida todas as
rotas a serem percorridas durante o horizonte de planejamento. A parte superior direita contm 6
grficos, um para cada dia do horizonte de planejamento, com a respectiva rota. Para cada grfico,
so exibidas duas informaes relativas ao transporte: CD (Capacidade Disponvel) e CT (Custo de
Transporte).
A parte inferior da Figura 6.1 contm trs tabelas. A tabela esquerda da Figura 6.1 possui trs
colunas cujas linhas se referem aos clientes (exceto a ltima) e apresentam os seguintes dados:

r: consumo do cliente;

U: nvel mximo de estoque no cliente;

h: custo unitrio de estoque no cliente.

A ltima linha apresenta os seguintes dados (da esquerda para a direita):

Produo do fornecedor;

Capacidade de transporte mxima;

Custo unitrio de estoque no fornecedor.

A tabela central na Figura 6.1 possui 7 colunas com dados de estoque nos clientes. A primeira
coluna (I0) exibe o estoque inicial e as demais colunas (I1, I2, I3, I4, I5, I6), o estoque para cada dia
do horizonte de planejamento, de acordo com a soluo obtida. A ltima linha mostra o somatrio
das colunas.
A tabela direita na Figura 6.1 possui 6 colunas (R1, R2, R3, R4, R5, R6) com os dados da
soluo de reabastecimento dos clientes. A ltima linha mostra o somatrio das colunas.

6.1 Apresentao de uma soluo do conjunto de Pareto

75

Fig. 6.1: Dados e soluo da instncia 5, com horizonte de planejamento de 6 dias, custo de estoque
alto e 25 clientes

76

Resultados

550
Soluo da fronteira de Pareto mais
prxima da soluo monoobjetivo
CUSTO DE ESTOQUE

545

Conjunto das solues da fronteira


de Pareto dominadas pela soluo
monoobjetivo

540

Soluo tima da formulao


monoobjetivo

535

Lugar geomtrico dos valores


constantes de soma dos dois
objetivos

530

4000

4500

5000
5500
CUSTO DE TRANSPORTE

6000

6500

Fig. 6.2: Conjunto de Pareto obtido e soluo mono-objetivo para a instncia 5, com horizonte de
planejamento de 6 dias, custo de estoque baixo e 10 clientes

6.2

Resultados para as instncias propostas na literatura

A Figura 6.2 mostra as solues obtidas no espao dos objetivos e a soluo mono-objetivo,
referente instncia 5, com horizonte de planejamento de 6 dias, custo de estoque baixo e 10 clientes.
As solues representadas por pontos correspondem ao conjunto de Pareto obtido pela abordagem
proposta. A soluo indicada com o smbolo # corresponde soluo mono-objetivo obtida da
literatura. E a soluo indicada com + corresponde soluo do conjunto de Pareto mais prxima da
soluo mono-objetivo no espao dos objetivos. possvel analisar tambm o nmero de solues
do conjunto obtido que so dominadas pela soluo mono-objetivo. No exemplo, so 5 as solues
dominadas pela soluo mono-objetivo. A frao entre o nmero de solues da fronteira de Pareto
dominada pela soluo mono-objetivo e o nmero total de solues da fronteira de Pareto representa
uma adaptao da mtrica de cobertura, dada pela equao (3.8). Na Figura 6.2, o nmero de solues
obtidas 23 e o nmero de solues dominadas pela soluo tima mono-objetivo 5, resultado na
frao 0,2174 ou 21,74%.
A Figura 6.2 apresenta um bom espalhamento e o aspecto aparentemente ruidoso da fronteira se
deve ao fato do problema ser de otimizao discreta. A reta tracejada representa o limitante inferior
(do ingls, lower bound) para a fronteira de Pareto tima. A soma dos valores das coordenadas de
cada ponto dessa reta constante e igual ao custo total da soluo tima da formulao mono-objetivo
e, consequentemente, inclui a soluo tima.
Na Figura 6.3, refere-se instncia 4, com horizonte de planejamento de 6 dias, custo de estoque
alto e 15 clientes. Pode-se observar que a soluo mono-objetivo domina apenas a soluo a. Pode-

6.2 Resultados para as instncias propostas na literatura

77

6000
5950

CUSTO DE ESTOQUE

5900
5850
5800
5750

5700

b c

de

5650

5550
4500

g
h

5600
5000

5500
6000
6500
7000
CUSTO DE TRANSPORTE

j
7500

8000

Fig. 6.3: Conjunto de Pareto e soluo mono-objetivo para a instncia 4, com horizonte de planejamento de 6 dias, alto custo de estoque e 15 clientes
se observar tambm que as solues esto bem espalhadas ao longo da fronteira de solues nodominadas.
Em relao diversidade das solues, foram selecionadas para visualizao 6 solues-candidatas
presentes na fronteira de solues no-dominadas da Figura 6.3, as quais esto apresentadas na Figura 6.4. Nota-se que as solues diferem em relao a:
Quantidade de dias em que ocorre algum reabastecimento, ou seja, quantidade de dias em que
o veculo utilizado. Na soluo (b), existe reabastecimento em 5 dias. Nas solues (d) e (g),
os dias de reabastecimento so 4, enquanto nas solues (e), (h) e (j) ocorre reabastecimento
em todos os 6 dias.
Variao dos dias em que ocorre algum reabastecimento. Ambas as solues (d) e (g) apresentam 4 dias de reabastecimento, sendo que na soluo (d) os dia sem reabastecimento so
o primeiro e o quinto dia do horizonte de planejamento, enquanto na soluo (g), ocorre no
primeiro e quarto dia.
Conjunto de clientes visitados nos dias em que ocorre reabastecimento. Tomando como exemplo o terceiro dia (T3) de cada soluo, fcil identificar pelos diferentes formatos das rotas
que h grande diversidade no conjunto de clientes reabastecidos neste dia.
A diversidade de solues permite que uma soluo possa ser trocada por outra com um compromisso de custos equivalente. Suponha, por exemplo, que no dia T1 o veculo de transporte no possa

78

Resultados

Fig. 6.4: Amostragem de 6 solues do conjunto de Pareto da Figura 6.3

6.2 Resultados para as instncias propostas na literatura

79

Fig. 6.5: Soluo mono-objetivo e soluo da fronteira de Pareto mais prxima


ser utilizado. Observando-se os resultados na Figura 6.3, tem-se trs solues ((b), (d) e (g)) em que
no h clientes para serem abastecidos nesse dia. Em outro cenrio, onde um determinado cliente no
pode ser abastecido em um determinado dia, existe grande probabilidade de se encontrar uma soluo
em que essa restrio seja contemplada.
Outra constatao derivada da anlise dos resultados obtidos que as solues que apresentam
custo total mais baixo, ou seja, as que apresentam melhor desempenho, considerando-se a formulao mono-objetivo, so as que concentram o maior nmero de reabastecimentos em poucos dias.
Outro resultado mais bvio mostra que, quando a limitao de capacidade de transporte obriga alguns
poucos clientes a serem abastecidos em outro dia, as melhores solues so obtidas quando esses clientes se localizam prximos ao depsito. Um exemplo pode ser observado na Figura 6.4, referente
instncia 4, com horizonte de planejamento de 6 dias, custo de estoque alto e 15 clientes.
A Figura 6.5 mostra a comparao entre as rotas da soluo tima da formulao mono-objetivo
(soluo indicada com o smbolo # na Figura 6.3) e as rotas da soluo do conjunto de Pareto com
a menor distncia euclidiana em relao mono-objetivo (soluo indicada com o smbolo + na
Figura 6.3).
Um caso em que a soluo mono-objetivo coincide com uma das solues da fronteira de solues no-dominadas pode ser observado na Figura 6.6, referente instncia 3, com horizonte de

80

Resultados

4320

CUSTO DE ESTOQUE

4300
4280
4260
4240
4220
4200
4180
2000

2200

2400 2600 2800 3000 3200


CUSTO DE TRANSPORTE

3400

3600

Fig. 6.6: Conjunto de Pareto inclui a soluo mono-objetivo, para a instncia 3, com horizonte de
planejamento de 3 dias, alto custo de estoque e 15 clientes
planejamento de 3 dias, custo de estoque alto e 15 clientes.
As tabelas 6.1, 6.2, 6.3 e 6.4 mostram os resultados obtidos para todas as 160 instncias de teste.
So apresentados os seguintes dados:
Instncia: nome da instncia;
Custo da sol mono-obj:
Transporte: custo de transporte;
Estoque: custo de estoque.
Custo da melhor soluo: custo da soluo do conjunto de Pareto obtido mais prxima da
soluo mono-objetivo:
Transporte: custo de transporte;
Estoque: custo de estoque.
Distncia: distncia euclidiana no espao dos objetivos entre a soluo mono-objetivo e a soluo do conjunto de Pareto mais prxima;
% distncia: porcentagem que corresponde frao entre a distncia do item anterior sobre a
distncia da soluo mono-objetivo at a origem;

6.2 Resultados para as instncias propostas na literatura

81

# sol: nmero de solues do conjunto de Pareto


% sol dominadas: porcentagem das solues do conjunto de Pareto dominadas pela soluo
mono-objetivo;
Espalhamento: mtrica de diversidade dada pela equao (3.9).

82

Resultados
Tab. 6.1: Resultados para instncias com H = 3 e hi [0, 01; 0, 05]

Instncia

Custo da sol mono-obj

Custo da melhor soluo

abs1n5.dat
abs2n5.dat
abs3n5.dat
abs4n5.dat
abs5n5.dat
abs1n10.dat
abs2n10.dat
abs3n10.dat
abs4n10.dat
abs5n10.dat
abs1n15.dat
abs2n15.dat
abs3n15.dat
abs4n15.dat
abs5n15.dat
abs1n20.dat
abs2n20.dat
abs3n20.dat
abs4n20.dat
abs5n20.dat
abs1n25.dat
abs2n25.dat
abs3n25.dat
abs4n25.dat
abs5n25.dat
abs1n30.dat
abs2n30.dat
abs3n30.dat
abs4n30.dat
abs5n30.dat
abs1n35.dat
abs2n35.dat
abs3n35.dat
abs4n35.dat
abs5n35.dat
abs1n40.dat
abs2n40.dat
abs3n40.dat
abs4n40.dat
abs5n40.dat
abs1n45.dat
abs2n45.dat
abs3n45.dat
abs4n45.dat
abs5n45.dat
abs1n50.dat
abs2n50.dat
abs3n50.dat
abs4n50.dat
abs5n50.dat

Estoque
94.92
86.66
136.02
64.29
131.42
303.07
255.25
240.14
243.00
310.18
381.04
368.58
424.68
313.94
303.59
507.32
514.90
533.48
426.31
557.90
595.92
637.56
706.40
599.67
790.96
956.78
844.94
965.86
711.48
763.60
914.12
770.71
1101.78
791.34
835.26
1064.14
833.09
1083.62
876.80
1050.46
1130.86
1051.72
1205.04
1073.26
1092.54
1166.18
1171.96
1202.44
1354.84
1273.37

Estoque
94.92
86.66
136.02
64.29
131.42
303.07
255.25
240.14
243.00
310.18
381.04
368.58
424.68
313.94
303.59
507.32
514.90
533.48
426.67
557.90
595.92
637.56
706.40
600.39
790.96
956.78
844.94
965.86
711.81
763.60
914.12
771.53
1101.78
791.34
835.26
1064.14
833.09
1083.62
876.80
1050.46
1130.86
1051.72
1205.04
1073.26
1094.12
1166.18
1171.96
1202.44
1354.84
1271.70

Transporte
1141.00
902.00
1622.00
1333.00
868.00
1440.00
1974.00
1631.00
1530.00
1628.00
1750.00
1763.00
2039.00
1838.00
1857.00
1760.00
1983.00
2057.00
2696.00
2292.00
2245.00
2377.00
2344.00
2479.00
2164.00
2471.00
2484.00
2506.00
2610.00
2151.00
2432.00
2771.00
2710.00
2438.00
2480.00
2638.00
2999.00
2791.00
2658.00
2525.00
2820.00
2651.00
2763.00
2925.00
2625.00
2881.00
3341.00
3249.00
3051.00
2945.00

Transporte
1141.00
902.00
1622.00
1333.00
868.00
1440.00
1974.00
1631.00
1530.00
1628.00
1750.00
1763.00
2039.00
1838.00
1857.00
1760.00
1983.00
2057.00
2877.00
2292.00
2245.00
2377.00
2344.00
2500.00
2164.00
2471.00
2484.00
2506.00
2647.00
2151.00
2432.00
2977.00
2710.00
2438.00
2480.00
2638.00
2999.00
2791.00
2658.00
2525.00
2820.00
2651.00
2763.00
2925.00
2640.00
2881.00
3341.00
3350.00
3051.00
2965.00

Distncia

% distncia

# sol

% sol
dominadas

Espalhamento

181.00
21.01
37.00
206.00
15.08
101.00
20.07

6.63
0.82
1.37
7.16
0.53
2.92
0.63

8
20
9
16
4
12
9
8
14
13
11
15
15
19
8
16
11
16
17
11
21
15
11
18
19
15
21
20
26
14
15
17
13
27
17
21
15
21
19
20
27
17
24
23
23
21
17
16
21
20

0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
5.88
0.00
0.00
6.67
0.00
11.11
0.00
0.00
0.00
0.00
3.85
0.00
0.00
5.88
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
17.39
0.00
0.00
6.25
0.00
0.00

157.37
21.16
37.64
32.88
46.08
54.42
116.75
84.85
77.63
51.57
161.88
121.81
244.32
79.31
132.81
84.91
104.80
134.37
56.51
69.92
84.50
185.11
163.76
117.79
75.69
129.29
49.14
54.61
55.72
130.00
45.73
125.86
53.99
154.43
29.58
79.42
46.77
58.37
58.85
28.84
37.80
154.10
104.12
49.91
80.86
56.36
86.95
63.12
42.40
137.17

6.2 Resultados para as instncias propostas na literatura

83

Tab. 6.2: Resultados para instncias com H = 3 e hi [0, 1; 0, 5]


Instncia

Custo da sol mono-obj

Custo da melhor soluo

abs1n5.dat
abs2n5.dat
abs3n5.dat
abs4n5.dat
abs5n5.dat
abs1n10.dat
abs2n10.dat
abs3n10.dat
abs4n10.dat
abs5n10.dat
abs1n15.dat
abs2n15.dat
abs3n15.dat
abs4n15.dat
abs5n15.dat
abs1n20.dat
abs2n20.dat
abs3n20.dat
abs4n20.dat
abs5n20.dat
abs1n25.dat
abs2n25.dat
abs3n25.dat
abs4n25.dat
abs5n25.dat
abs1n30.dat
abs2n30.dat
abs3n30.dat
abs4n30.dat
abs5n30.dat
abs1n35.dat
abs2n35.dat
abs3n35.dat
abs4n35.dat
abs5n35.dat
abs1n40.dat
abs2n40.dat
abs3n40.dat
abs4n40.dat
abs5n40.dat
abs1n45.dat
abs2n45.dat
abs3n45.dat
abs4n45.dat
abs5n45.dat
abs1n50.dat
abs2n50.dat
abs3n50.dat
abs4n50.dat
abs5n50.dat

Estoque
967.34
865.06
1351.00
648.04
1302.04
3070.61
2530.61
2400.40
2403.46
3081.79
3839.70
3680.34
4261.86
3139.58
3010.53
5099.02
5104.74
5297.68
4256.79
5582.26
5982.86
6388.72
7038.42
5973.93
7917.42
9595.86
8457.32
9616.36
7077.10
7622.90
9227.88
7695.80
11066.46
7869.40
8367.82
10726.92
8318.85
10807.94
8637.39
10545.18
11359.10
10491.22
12080.60
10649.50
10962.26
11694.30
11620.64
12030.49
13466.00
12733.67

Estoque
967.34
865.06
1351.00
648.04
1302.04
3070.61
2530.61
2400.40
2403.46
3081.79
3839.70
3680.34
4261.86
3139.58
3010.53
5099.02
5104.74
5297.68
4269.37
5582.26
5982.86
6388.72
7038.42
5991.04
7917.42
9595.86
8457.32
9616.36
7076.88
7622.90
9227.88
7693.09
11066.46
7869.40
8367.82
10726.92
8318.85
10807.94
8730.62
10545.18
11359.10
10491.22
12080.60
10649.50
10962.26
11694.30
11692.80
12030.49
13466.00
12720.16

Transporte
1141.00
902.00
1622.00
1333.00
868.00
1440.00
1974.00
1631.00
1530.00
1628.00
1750.00
1763.00
2039.00
1838.00
1857.00
1760.00
1983.00
2057.00
2696.00
2292.00
2245.00
2377.00
2344.00
2479.00
2164.00
2471.00
2484.00
2506.00
2610.00
2151.00
2432.00
2771.00
2710.00
2438.00
2480.00
2638.00
2999.00
2791.00
2716.00
2525.00
2820.00
2651.00
2763.00
2925.00
2625.00
2883.00
3381.00
3249.00
3051.00
2945.00

Transporte
1141.00
902.00
1622.00
1333.00
868.00
1440.00
1974.00
1631.00
1530.00
1628.00
1750.00
1763.00
2039.00
1838.00
1857.00
1760.00
1983.00
2057.00
2787.00
2292.00
2245.00
2377.00
2344.00
2525.00
2164.00
2471.00
2484.00
2506.00
2692.00
2151.00
2432.00
2987.00
2710.00
2438.00
2480.00
2638.00
2999.00
2791.00
2658.00
2525.00
2820.00
2651.00
2763.00
2925.00
2625.00
2883.00
3372.00
3249.00
3051.00
2965.00

Distncia

% distncia

# sol

% sol
dominadas

Espalhamento

91.87
49.08
82.00
216.02
109.80
72.72
24.14

1.82
0.76
1.09
2.64
1.21
0.60
0.18

10
18
9
19
5
15
9
14
15
17
13
17
15
15
8
12
13
16
14
17
21
16
14
19
20
15
21
18
25
16
12
17
25
21
19
16
22
26
20
21
27
23
20
19
23
23
26
23
29
14

0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
12.50
0.00
0.00
0.00
7.14
0.00
0.00
12.50
0.00
10.53
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
55.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
26.92
4.35
0.00
0.00

117.89
24.45
38.45
31.50
54.96
51.83
165.54
88.48
28.97
26.38
84.85
124.66
48.40
87.24
96.27
50.93
102.66
186.97
235.04
107.96
274.91
103.74
94.86
112.48
108.96
188.43
119.21
112.59
146.05
56.02
251.19
93.49
47.95
86.78
89.66
140.32
137.29
80.72
143.45
70.60
111.05
229.77
75.65
56.91
80.11
231.90
166.63
211.17
103.46
228.12

84

Resultados

Tab. 6.3: Resultados para instncias com H = 6 e hi [0, 01; 0, 05]


Instncia

Custo da sol mono-obj

Custo da melhor soluo

abs1n5.dat
abs2n5.dat
abs3n5.dat
abs4n5.dat
abs5n5.dat
abs1n10.dat
abs2n10.dat
abs3n10.dat
abs4n10.dat
abs5n10.dat
abs1n15.dat
abs2n15.dat
abs3n15.dat
abs4n15.dat
abs5n15.dat
abs1n20.dat
abs2n20.dat
abs3n20.dat
abs4n20.dat
abs5n20.dat
abs1n25.dat
abs2n25.dat
abs3n25.dat
abs4n25.dat
abs5n25.dat
abs1n30.dat
abs2n30.dat
abs3n30.dat
abs4n30.dat
abs5n30.dat

Estoque
284.30
261.92
238.83
210.35
236.10
476.53
367.63
425.83
412.53
539.98
735.08
715.47
819.68
572.01
560.51
906.04
956.31
843.06
788.54
955.82
935.06
1025.75
1155.57
976.08
1275.40
1640.73
1360.99
1679.21
1119.49
1281.65

Estoque
286.65
259.60
241.58
210.83
236.10
476.85
370.37
427.61
414.06
546.00
737.50
718.32
820.34
571.31
564.60
907.14
959.74
841.18
788.53
956.72
940.12
1024.77
1158.99
979.42
1272.07
1628.62
1364.37
1687.78
1121.59
1276.75

Transporte
2903.00
2304.00
4251.00
2964.00
2031.00
3665.00
4677.00
4081.00
4411.00
4006.00
4654.00
4703.00
5078.00
4763.00
4492.00
5208.00
5001.00
5941.00
6521.00
6006.00
6117.00
6206.00
6359.00
6486.00
5773.00
6412.00
6269.00
6457.00
6383.00
5989.00

Transporte
2907.00
2332.00
4251.00
2964.00
2031.00
3726.00
4705.00
4276.00
4411.00
4039.00
4805.00
4742.00
5324.00
4965.00
4679.00
5419.00
5262.00
6075.00
6783.00
6414.00
6449.00
6662.00
6867.00
6818.00
6057.00
7189.00
6850.00
6907.00
7268.00
6397.00

Distncia

% distncia

# sol

% sol
dominadas

Espalhamento

4.64
28.10
2.75
0.48
61.00
28.13
195.01
1.53
33.54
151.02
39.10
246.00
202.00
187.04
211.00
261.02
134.01
262.00
408.00
332.04
456.00
508.01
332.02
284.02
777.09
581.01
450.08
885.00
408.03

0.16
1.21
0.06
0.02
1.65
0.60
4.75
0.03
0.83
3.21
0.82
4.78
4.21
4.13
3.99
5.13
2.23
3.99
6.71
5.37
7.25
7.86
5.06
4.80
11.74
9.06
6.75
13.66
6.66

18
20
15
21
12
13
23
19
14
23
9
19
19
11
24
13
8
12
15
13
20
16
14
18
9
8
19
16
17
8

16.67
5.00
13.33
9.52
0.00
0.00
21.74
10.53
7.14
21.74
22.22
10.53
10.53
0.00
20.83
7.69
37.50
0.00
13.33
7.69
15.00
0.00
7.14
61.11
0.00
0.00
10.53
6.25
11.76
0.00

73.05
87.52
82.23
55.40
55.25
105.33
79.02
57.62
105.66
60.83
88.55
199.76
99.20
288.69
76.08
110.30
465.79
248.75
239.25
121.78
185.05
84.67
149.33
93.41
396.38
326.32
77.16
170.63
107.72
153.22

6.2 Resultados para as instncias propostas na literatura

85

Tab. 6.4: Resultados para instncias com H = 6 e hi [0, 1; 0, 5]


Instncia

Custo da sol mono-obj

Custo da melhor soluo

abs1n10.dat
abs2n10.dat
abs3n10.dat
abs4n10.dat
abs5n10.dat
abs1n15.dat
abs2n15.dat
abs3n15.dat
abs4n15.dat
abs5n15.dat
abs1n20.dat
abs2n20.dat
abs3n20.dat
abs4n20.dat
abs5n20.dat
abs1n25.dat
abs2n25.dat
abs3n25.dat
abs4n25.dat
abs5n25.dat
abs1n30.dat
abs2n30.dat
abs3n30.dat
abs4n30.dat
abs5n30.dat

Estoque
4815.17
3670.44
4240.68
4063.26
5380.03
7343.56
7089.55
8227.71
5716.29
5561.09
9024.53
9461.84
8378.35
7835.27
9550.70
9341.66
10295.46
11454.35
9707.96
12768.42
16396.94
13598.76
16579.93
11116.82
12765.81

Estoque
4817.89
3688.65
4258.06
4086.50
5435.35
7413.39
7129.04
8240.87
5730.99
5616.56
9110.16
9530.31
8339.22
7898.14
9495.63
9445.48
10267.42
11465.62
9803.16
12731.14
16341.91
13603.96
16619.65
11147.03
12748.12

Transporte
3665.00
4677.00
4081.00
4411.00
4006.00
4709.00
4734.00
5078.00
4763.00
4493.00
5242.00
5016.00
5941.00
6555.00
6006.00
6146.00
6207.00
6379.00
6486.00
5784.00
6441.00
6278.00
6517.00
6393.00
5966.00

Transporte
3731.00
4705.00
4222.00
4411.00
4039.00
4833.00
5003.00
5324.00
4948.00
4643.00
5419.00
5325.00
6118.00
6926.00
6574.00
6438.00
6662.00
6884.00
6953.00
6076.00
7369.00
7153.00
7133.00
6988.00
6397.00

Distncia

% distncia

# sol

% sol
dominadas

Espalhamento

66.06
33.40
142.07
23.24
64.41
142.31
271.88
246.35
185.58
159.93
196.63
316.50
181.27
376.29
570.66
309.91
455.86
505.13
476.60
294.37
929.63
875.02
617.28
595.77
431.36

1.09
0.56
2.41
0.39
0.96
1.63
3.19
2.55
2.49
2.24
1.88
2.96
1.76
3.68
5.06
2.77
3.79
3.85
4.08
2.10
5.28
5.84
3.46
4.65
3.06

23
23
27
15
17
10
15
25
10
26
13
15
5
15
8
12
9
12
18
10
8
10
12
12
8

0.00
17.39
14.81
13.33
23.53
20.00
46.67
12.00
10.00
15.38
30.77
26.67
0.00
60.00
12.50
66.67
0.00
16.67
55.56
0.00
0.00
10.00
41.67
33.33
0.00

72.22
178.47
43.16
113.35
129.93
95.97
125.38
50.53
239.36
85.98
76.42
43.75
328.41
69.51
105.20
139.37
227.30
176.76
53.47
210.51
228.42
110.35
297.63
293.35
205.03

86

6.3

Resultados

Amostragem de solues

A Figura 6.7 exibe as fronteiras de Pareto para 9 das piores solues obtidas de acordo com a
mtrica de convergncia, ou seja, que apresentam as maiores distncias entre a soluo tima monoobjetivo e a soluo mais prxima em termos percentuais (ver coluna % distncia nas Tabelas 6.1,
6.2, 6.3 e 6.4). A soluo tima da formulao mono-objetivo pode ser identificada pelo smbolo
#. A partir da anlise das melhores solues indicadas a seguir, nota-se que sempre que o conjunto
de Pareto contm a soluo tima da formulao mono-objetivo, ela se localiza no extremo superior
da fronteira de Pareto. Isso indica que h espao para melhorias no algoritmo em relao ao custo de
transporte. Por inspeo visual, nota-se um bom espalhamento ao longo da fronteira de Pareto. Testes
com algumas instncias do problema mostraram que, medida que se aumenta o nmero de iteraes
do SPEA2, ocorre um melhor preenchimento da fronteira de Pareto, mesmo quando a convergncia
da soluo se estabiliza.
A Figura 6.8 exibe as fronteiras de Pareto para 9 das solues obtidas em que a conjunto de
Pareto contm a soluo tima da formulao mono-objetivo, o que indica uma boa convergncia do
algoritmo.

6.3 Amostragem de solues

87

Fig. 6.7: Piores resultados

88

Resultados

Fig. 6.8: Melhores resultados

6.4 Resultados para as instncias de grande porte

6.4

89

Resultados para as instncias de grande porte

Foram realizados testes com instncias geradas unicamente para avaliar a escalabilidade da soluo. As instncias esto descritas na seo 4.6. Nesses casos, no possvel avaliar a convergncia
do algoritmo porque so instncias novas propostas para esse trabalho.
A Figura 6.9 mostra o conjunto de Pareto da soluo obtida para uma instncia com 200 clientes e
horizonte de planejamento de 3 dias. Nota-se que a fronteira apresenta um bom espalhamento, mas o
algoritmo no conseguiu povoar uma regio. Resultados similares foram obtidos em outras execues
do algoritmo para a mesma instncia, no sendo possvel afirmar se uma caracterstica da instncia
ou deficincia do algoritmo em tratar a instncia adequadamente.
4

4.9

x 10

fi

lo

h n

t rs

4.88

CUSTO DE ESTOQUE

m
j
g d
c

ba

4.86

4.84

4.82

vw

xy

u qk

4.8

4.78
5500

6000

6500

7000 7500 8000 8500 9000


CUSTO DE TRANSPORTE

9500 10000 10500

Fig. 6.9: Conjunto de Pareto para uma instncia com 200 clientes e horizonte de 3 dias
A Figura 6.10 mostra 4 solues do conjunto de Pareto da Figura 6.9. A soluo com menor custo
de transporte est identificada como (f) e a soluo com menor custo de estoque est identificada
como (e). Nota-se, a partir das rotas, uma grande variedade nas solues.
A Figura 6.11 mostra o conjunto de Pareto da soluo obtida para uma instncia com 200 clientes
e horizonte de planejamento de 6 dias.
A Figura 6.12 mostra 4 solues do conjunto de Pareto da Figura 6.11. A soluo com menor
custo de transporte est identificada como (d) e a soluo com menor custo de estoque est identificada como (a). Nota-se, tambm nesse caso, uma grande variedade nas solues.

90

Resultados

Fig. 6.10: Amostragem de 4 solues do conjunto de Pareto da Figura 6.9

6.5 Sntese do captulo

91
4

8.52

x 10

8.5

ijk

CUSTO DE ESTOQUE

8.48

8.46
g

8.44
f

8.42

8.4

c
b

8.38
1.6

1.7

1.8

1.9
2
2.1
2.2
CUSTO DE TRANSPORTE

2.3

2.4

2.5
4

x 10

Fig. 6.11: Conjunto de Pareto para instncia com 200 clientes e horizonte de 6 dias

6.5

Sntese do captulo

Neste captulo, foram apresentados os resultados obtidos a partir da aplicao da abordagem multiobjetivo a um conjunto de instncias de pequeno e mdio porte conhecidas na literatura, para os
quais existe soluo tima para a formulao mono-objetivo. Os resultados compreendem mtricas
de convergncia e diversidade. Foram exibidos tambm os resultados obtidos a partir da aplicao da
abordagem proposta a duas instncias de grande porte. Como no foi possvel encontrar na literatura
instncias de grande porte, elas foram geradas aleatoriamente, no sendo possvel avaliar a convergncia das solues devido inexistncia de algoritmos exatos capazes de lidar com problemas de
grande porte.

92

Resultados

Fig. 6.12: Amostragem de 4 solues do conjunto de Pareto da Figura 6.11

Captulo 7
Concluso e perspectivas
Neste captulo, so feitas algumas consideraes, so apresentadas as principais contribuies
desta dissertao e so apontadas algumas linhas de pesquisa relacionadas a possveis extenses deste
trabalho.

7.1

Consideraes finais

A principal motivao do trabalho foi a existncia de um grande nmero de problemas reais com
suas diferentes nuances e que envolvem a otimizao de estoque e roteamento. Nesses casos, os
mtodos exatos se mostram intratveis, principalmente pelo nmero elevado de variveis quando se
tem um grande nmero de clientes e pela quantidade de restries que, em geral, so conflitantes e
inserem regies de infactibilidade no espao de busca. Esse fato tem motivado a pesquisa na rea de
mtodos heursticos, que possuem a vantagem de serem mais escalveis e tratarem de forma simples
a questo da factibilidade de solues.
Grande parte dos problemas reais, incluindo o caso particular considerado no trabalho, so inerentemente multiobjetivo. Em muitas abordagens, o problema multiobjetivo transformado em
mono-objetivo, usando-se uma tcnica de tomada de deciso que agrega os objetivos em um valor
escalar que representa as preferncias do decisor. Essa tcnica apresenta a desvantagem de exigir que
o decisor articule suas preferncias a priori e a dificuldade de ajustar os pesos das preferncias. Ao
se converter os objetivos em um valor escalar, muita informao relevante perdida. A vantagem de
uma abordagem multiobjetivo que o decisor pode articular suas preferncias tendo o conjunto de
solues-alternativas em mos. Dessa forma, uma mudana de interesse do decisor no exige uma
nova execuo do algoritmo de busca, bastando considerar, dentre as solues alternativas j obtidas,
aquelas que melhor atendem aos novos interesses. Alm disso, a abordagem multiobjetivo permite
uma maior facilidade na incluso de critrios que no so naturalmente quantificveis.
93

94

Concluso e perspectivas

Na rea de otimizao multiobjetivo, as abordagens populacionais tm se mostrado eficazes,


pois provm uma explorao eficiente do espao de busca e permitem obter vrias solues nodominadas, que aproximam a fronteira de Pareto, simultaneamente. A possibilidade de se ter solues
variadas com um custo computacional aceitvel muito importante do ponto de vista prtico.
Como principais contribuies do trabalho, pode-se destacar:
A incluso de violao de restries no critrio de dominncia, que permite uma melhor explorao do espao de busca, principalmente em instncias de teste em que as restries so
mais fortes e difcil encontrar solues factveis. A existncia de solues no-factveis na
populao e a possibilidade de compar-las permite que os objetivos sejam melhor explorados.
O que ocorre na prtica que o nmero de solues no-factveis decresce continuamente ao
longo das iteraes, restando somente as factveis.
O tipo de representao adotada, que contm duas informaes: dias de reabastecimento para
cada cliente e quantidades de reabastecimento. Esse mapeamento, ao tratar diretamente as
quantidades de reabastecimento, permite uma evoluo mais rpida do algoritmo.
Os operadores de mutao e recombinao concebidos, apesar de terem sido implementados visando resolver o problema proposto, podem ser considerados de propsito geral para problemas
de estoque e roteamento.
A incluso de buscas locais que objetivam substituir as solues existentes por solues que
as dominem tambm foi de grande importncia para a melhoria do desempenho da abordagem
adotada.
A eficincia da heurstica proposta pode ser observada pelos resultados obtidos. Em 62,50 % das
instncias de teste, a soluo tima da formulao mono-objetivo do problema no domina nenhuma
das solues do conjunto de Pareto obtido pela abordagem proposta. Em 55,00% das instncias,
uma das solues do conjunto de Pareto obtido coincide com a soluo tima mono-objetivo. A
diferena percentual mdia entre a soluo tima mono-objetivo e a soluo do conjunto de Pareto
mais prxima, considerando a distncia euclidiana, de 1,43%.
A anlise da diversidade das solues obtidas permitiu observar que as solues com custo de
transporte mais baixo so as que concentram os reabastecimentos em um nmero menor de dias.
Nos casos em que a limitao de capacidade requer que alguns poucos clientes sejam reabastecidos
em outro dia, a escolha de clientes mais prximos do depsito favorece uma diminuio dos custos
de transporte. Por outro lado, nas solues com custo de estoque mais baixo, ocorre uma melhor

7.2 Perspectivas e pesquisas futuras

95

distribuio de reabastecimentos ao longo do horizonte de planejamento. Esse tambm um dos propsitos da otimizao multiobjetivo: levantar solues alternativas que privilegiam aspectos distintos
do problema.

7.2

Perspectivas e pesquisas futuras

O problema que esse trabalho se prope a resolver trata de uma demanda constante nos clientes.
No entanto, em problemas prticos, como por exemplo, o caso de distribuio de numerrio em redes ATM ou de distribuio de medicamentos e perfumaria, a demanda estocstica. Dessa forma,
uma extenso natural da abordagem apresentada seria a incluso de um mdulo de predio de consumo para tratar demandas estocsticas. Em problemas com demandas estocsticas, a utilizao de
horizonte deslizante de planejamento pode apresentar bons resultados, principalmente quando a realimentao dos dados rpida e precisa. A utilizao de horizonte deslizante implica em fazer o
planejamento para um perodo longo de tempo, utilizar apenas a parte inicial do planejamento, realimentar a base de dados com a demanda real, replanejar outro horizonte de tempo com base nas
informaes atualizadas, e assim por diante.
Outro aspecto relevante em problemas reais a utilizao de cenrios WHAT-IF. Poder-se-ia investigar mecanismos para incluso ad hoc de restries. A estratgia proposta comporta uma incluso
direta de restries e o uso de uma abordagem populacional permite que, em poucas iteraes (ou
mesmo nenhuma), obtenham-se solues que satisfaam as novas restries.
Outra linha de pesquisa seria o uso de algoritmos de estimao de distribuio (EDAs, do ingls
Estimation of Distribution Algorithms)). Os EDAs so um exemplo de meta-heurstica populacional
que emprega a experincia passada da busca para guiar a gerao de novas solues-candidatas. Ao
invs de operadores de mutao e recombinao, modelos probabilsticos so empregados na amostragem do espao de busca.
No trabalho, optou-se por usar uma meta-heurstica mais consolidada, mais especificamente o
algoritmo evolutivo SPEA2. No entanto, h espao tambm para a investigao de outras metaheursticas bioinspiradas capazes de lidar com os aspectos multimodais e multiobjetivos do problema
em estudo.

Referncias Bibliogrficas
Archetti, C., Bertazzi, L., Laporte, G., & Speranza, M. G. 2007. A branch-and-cut algorithm for a
vendor-managed inventory-routing problem. Transportation science, 41(August), 382391.
Archetti, C., Bertazzi, L., Hertz, A., & Speranza, M. G. 2011. A hybrid heuristic for an inventoryrouting problem. Informs journal on computing.
Baita, F., Ukovich, W., Pesenti, R., & Favaretto, D. 1998. Dynamic routing-and-inventory problems:
a review. Transportation research part a: Policy and practice, 32(8), 585598.
Ball, M. O. 1998. Allocation/Routing: models and algorithms. Vehicle routing: Methods and studies,
199221.
Bard, J., Huang, L., Jaillet, P., & Dror, M. 1998. A decomposition approach to the inventory routing
problem with satellite facilities. Transportation science, 189203.
Bertazzi, L., Paletta, G., & Speranza, M. G. 2005. Minimizing the total cost in an integrated vendor
managed inventory system. Journal of heuristics, 11(December), 393419.
Beyer, H.-G. 2001. The theory of evolution strategies. Natural Computing Series. Springer-Verlag.
Bramel, J., & Simchi-Levi, D. 1997. On the effectiveness of set covering formulations for the vehicle
routing problem with time windows. Operations research, 45, 295301.
Campbell, A. M., Clarke, L. W., & Savelsbergh, M. W. P. 2001. Inventory routing in practice.
Philadelphia, PA, USA: Society for Industrial and Applied Mathematics. Pages 309330.
Chan, L. M. A., Federgruen, A., & D.Simchi-Levi. 1998. Probabilistic analyses and practical algorithms for inventory-routing models. Operations research, 46(1), 96106.
Coello Coello, C. A. 1999. A comprehensive survey of evolutionary-based multiobjective optimization techniques. Knowledge and information systems, 1, 269308.
97

98

REFERNCIAS BIBLIOGRFICAS

Coello Coello, C. A. 2006. Evolutionary multi-objective optimization: a historical view of the field.
Computational intelligence magazine, ieee, 1(1), 28 36.
Concorde Home Page. Concorde TSP solver. http://www.tsp.gatech.edu/concorde.
Acessado em 01/07/2010.
Deb, K. 2001. Multi-objective optimization using evolutionary algorithms. Wiley-Interscience Series
in Systems and Optimization. John Wiley & Sons, Chichester.
Deb, K., Pratap, A., Agarwal, S., & Meyarivan, T. 2002. A fast and elitist multiobjective genetic
algorithm: NSGA-II. Ieee transactions on evolutionary computation, 6(2), 182197.
Deb, K., Mohan, M., & Mishra, S. 2003. Towards a quick computation of well-spread Pareto-optimal
solutions. Evolutionary multi-criterion optimization, 68.
Edgeworth, F. Y. 1881. Mathematical physics. P. Keagan, London, England.
Fogel, L. J. 1999. Intelligence through simulated evolution: forty years of evolutionary programming.
New York, NY, USA: John Wiley & Sons, Inc.
Fonseca, C. M., & Fleming, P. J. 1993. Genetic algorithms for multiobjective optimization: formulation, discussion and generalization. Pages 416423 of: Proceedings of the 5th international
conference on genetic algorithms. San Francisco, CA, USA: Morgan Kaufmann Publishers Inc.
Haimes, Y. Y., Lasdon, U., & Wismer, D. A. 1971. On a bicriterion formulation of the problems of
integrated system identification and system optimization. Ieee trans syst man cybern, 1(3), 296
297.
Horn, J., Nafpliotis, N., & Goldberg, D. E. 1994. A niched Pareto genetic algorithm for multiobjective
optimization. Evolutionary computation, 1, 8287.
Moscato, P. 1989. On evolution, search, optimization, genetic algorithms and martial arts - towards
memetic algorithms. Tech. rept. C3P 826 (Caltech Concurrent Computation Program), Pasadena:
California Institute of Technology.
Pareto, V. 1896. Cours deconomie politique, volume i and ii. F. Rouge, Lausanne.
Romero, C. 2004. A general structure of achievement function for a goal programming model. European journal of operational research, 153(3), 675686.
Srinivas, N., & Deb, K. 1994. Multiobjective optimization using nondominated sorting in genetic
algorithms. Evolutionary computation, 2, 221248.

REFERNCIAS BIBLIOGRFICAS

99

Zitzler, E., & Thiele, L. 1999. Multiobjective evolutionary algorithms: a comparative case study and
the strength Pareto approach. Ieee trans. evolutionary computation, 3(4), 257271.
Zitzler, E., Laumanns, M., & Thiele, L. 2001. SPEA2: Improving the strength Pareto evolutionary
algorithm. Tech. rept.

Você também pode gostar