• Nenhum resultado encontrado

Algoritmos exatos para o problema do caminho mais curto robusto e para o problema de localização de concentradores em árvore

N/A
N/A
Protected

Academic year: 2017

Share "Algoritmos exatos para o problema do caminho mais curto robusto e para o problema de localização de concentradores em árvore"

Copied!
98
0
0

Texto

(1)

ALGORITMOS EXATOS PARA O PROBLEMA

DO CAMINHO MAIS CURTO ROBUSTO E

PARA O PROBLEMA DE LOCALIZAÇÃO DE

(2)
(3)

JOÃO CARLOS ABREU JÚNIOR

ALGORITMOS EXATOS PARA O PROBLEMA

DO CAMINHO MAIS CURTO ROBUSTO E

PARA O PROBLEMA DE LOCALIZAÇÃO DE

CONCENTRADORES EM ÁRVORE

(4)

Orientador: Thiago Ferreira de Noronha

Coorientadora: Andréa Cynthia Santos

Belo Horizonte

(5)

c

2015, João Carlos Abreu Júnior. Todos os direitos reservados.

Abreu Júnior, João Carlos

A162a Algoritmos exatos para o problema do caminho mais curto robusto e para o problema de localização de concentradores em árvore / João Carlos Abreu Júnior. — Belo Horizonte, 2015

xxiv, 74 f. : il. ; 29cm

Dissertação (mestrado) — Universidade Federal de Minas Gerais

Orientador: Thiago Ferreira de Noronha Coorientadora: Andréa Cynthia Santos

1. Computação Teses. 2. Otimização Matemática -Teses. 3. Pesquisa Operacional - -Teses. I. Orientador. II. Coorientadora. III. Título.

(6)
(7)
(8)
(9)

Para o meu pai e minha irmã.

(10)
(11)

Agradecimentos

Agradeço primeiramente à Deus.

Agradeço ao meu pai João Carlos que sempre me ensinou a correr atrás e realizar os meus sonhos.

Agradeço a minha irmã Ana Paula que sempre me apoiou mesmo sem en-tender muito bem o que eu faço.

Agradeço a minha coorientadora Andréa Cynthia pelas constantes ajudas e reuniões e pelo tempo despendido para contribuir com minha formação.

Agradeço também ao meu orientador Thiago Noronha que mudou a minha idéia inicial e me fez entrar para o mestrado. Sou eternamente grato por tudo que você me ensinou. Muito obrigado pelas diversas horas de reuniões que você teve comigo para me ensinar, me corrigir e me orientar. Obrigado também pelas conversas não técnicas que tivemos, além de muito competente é sempre muito bom conversar com você. Além de meu orientador se tornou um grande amigo.

(12)
(13)

“Seja você quem for, seja qual for a posição social que você tenha na vida, a mais

alta ou a mais baixa, tenha sempre como meta muita força, muita determinação

e sempre faça tudo com muito amor e com muita fé em Deus, que um dia você

chega lá. De alguma maneira você chega lá.”

(Ayrton Senna)

(14)
(15)

Resumo

Este trabalho é dedicado ao estudo de dois problemas de otimização NP-Difíceis. O primeiro problema é o problema do caminho mais curto robusto (RSP, do in-glês Robust Shortest Path) que é uma generalização do problema de caminho mais

curto (SP, do inglês Shortest Path). O RSP considera que os custos dos arcos

são definidos por um intervalo de valores contínuo. Entre os diferentes critérios de otimização robusta, esse trabalho se dedicada ao critério minmax com

arre-pendimento relativo. Neste trabalho são dadas três contribuições para o RSP com arrependimento relativo: (i) a primeira formulação por programação linear inteira mista, (ii) desigualdades válidas para essa formulação e (iii) extensão desse problema em grafos com ciclos de custo positivo. Os resultados computacionais mostraram que os algoritmos baseados nas contribuições propostas são capazes de resolver instâncias de até 1500 nós.

O segundo problema que esse trabalho trata é o problema de localização de concentradores em árvore (THLP, do inglês Tree Hub Location Problem). Seja

G = (N, A) um grafo completo direcionado, onde N é o conjunto de nós e A é o conjunto de arcos. Além disto, Wij ∈R∗+ é a demanda de fluxo do nó i∈N para o nó j ∈N, cij é o custo de trafegar cada unidade de fluxo em um arco (i, j)∈A

(16)

e p um número inteiro positivo. O THLP consiste em selecionar um subconjunto

P ⊂ N com p nós, denominados concentradores (do inglês Hubs), e conectá-los

na forma de uma árvore. Em seguida, cada um dos nós em N \P, denomina-dos nós clientes, é alocado a um único nó em P de modo que exista um único caminho entre cada par de nós i, j ∈N e cujo custo total de rotear as demandas

Wij seja minimizado. O custo de trafegar uma unidade de fluxo entre dois nós concentradores k, m ∈ P sofre um fator de desconto α e é dado por ckm×α. O estado da arte de algoritmos para este problema é capaz de resolver instâncias de até 100 nós usando um algoritmo baseado em decomposição de Benders, em um elevado tempo computacional. Isto se deve especialmente ao fato de que O(|N|2) subproblemas devem ser resolvidos a cada iteração do algoritmo, utilizando um algoritmo de programação linear. Neste trabalho, propomos um algoritmoad-hoc

que resolve cada subproblema em O(|N|2). Desta forma, acelara-se o tempo de execução do algoritmo de decomposição de Benders para o THLP. Resultados pre-liminares indicam que o tempo de resolução dos subproblemas pode ser acelerado em até 29,52%.

Palavras-chave: arrependimento relativo, Problema de Localização de Concen-tradores em Árvores, ProblemasNP-Difíceis, Decomposição de Benders.

(17)

Abstract

This work is dedicated to the study of two NP-Hard optimization problems. The first problem is the robust shortest path problem (RSP) which is a generalization of the shortest path problem (SP). The RSP considers that the costs of the arcs are defined by a range of continuous values. Among the different robust optimization criterion, this work is dedicated to criterion with minmax relative regret. This

work gave three contributions to RSP with relative regret. The first, is the integer linear programming formulation to this problem. The seccond is the proposal of valid inequalities. The final is that it extends this problem for graphs with posi-tive cost cycles. Computational results show that algorithms based on proposed contributions are able to solve instances up to 1500 nodes.

The second problem this work investigates is the Tree Hub Location problem (THLP). Let G = (N, A) a complete directed graph, where N is the set of nodes and A is the set of arcs. Besides, Wij ∈R+ is the flow demand of node i ∈N to node j ∈ N. cij is the cost travel to each flow unit in an arc (i, j) ∈ A, and p is a positive integer. The THLP is to select a subset P ⊂ N with p nodes, called hubs, and connect them in the form of a tree. Then, each node in N \P, called a customer, is allocated to a single node inP so there is a unique path between each

(18)

pair of nodesi, j ∈N whos total cost route demands thatWij is minimized. The cost of one unit flow traveling between two hub nodes k, m∈P suffers a discount factor α and is given by ckm×α. The state of the art algorithms for this problem is able to resolve instances up to 100 nodes using an algorithm based on Benders decomposition, in a high computational time. This is primarily due to the fact that O(|N|2) subproblems must be solved at each iteration of algorithm, using a linear programming algorithm. In this work, we propose an algorithm ad-hoc

solving each subproblem in O(|N|3). This way, speeds up the execution time of the Benders decomposition algorithm to THLP. Preliminary results indicate that the time resolution of subproblems can be accelerated by up to 29.52%.

Keywords: minmax relative regret, Tree Hub Location problem, NP-Hard Pro-blems, Benders decomposition.

(19)

Lista de Figuras

1.1 Exemplo de uma solução do THLP em um grafo completo e direcionado com 4 nós e número de nós concentradores,p= 3, para serem selecionados 7

2.1 Exemplo de um grafo com custo definido em um intervalo positivo de valores . . . 14 2.2 Um grafo Karasan com 8 nós e 3 camadas. . . 21 2.3 Exemplo de um grafo grid 3×5. . . 22

3.1 Exemplo do sistema de restrição diferença para o problema dual, em um grafo completo e direcionado com 4 nós e número de nós concentradores,

p= 3, para serem selecionados . . . 53

(20)
(21)

Lista de Tabelas

2.1 Comparação entre CPLEX (V1) e CPLEX (V2) para grafos Karasan com 100 e 200 nós. . . 24

2.2 Comparação entre CPLEX (V1) e CPLEX (V2) para grafos grid com no máximo 100 e 200 nós. . . 25 2.3 Comparação entre CPLEX (V1) e CPLEX (V2) para grafos Karasan

com 1000 e 1500 nós. . . 27 2.4 Comparação entre CPLEX (V1) e CPLEX (V2) para grafos grid com

no máximo com 1000 nós. . . 28

3.1 Comparação do tempo gasto, em segundos, e do valor ótimo encon-trado pela resolução da relaxação linear dos modelos CPLEX (V1) e CPLEX (V2) nas instâncias AP. . . 57 3.2 Comparação do tempo gasto, em segundos, e do valor ótimo

encon-trado pela resolução da relaxação linear dos modelos CPLEX (V1) e CPLEX (V2) nas instâncias CAB. . . 58 3.3 Comparação do tempo gasto, em segundos, e da quantidade de nós na

árvore de branch and bound pela resolução dos modelos CPLEX (V1)

e CPLEX (V2) nas instâncias AP. . . 60

(22)

3.4 Comparação do tempo gasto, em segundos, e da quantidade de nós na árvore de branch and bound pela resolução dos modelos CPLEX (V1)

e CPLEX (V2) nas instâncias CAB. . . 62 3.5 Comparação entre Benders (V1) e Benders+ em instâncias AP de 50 nós. 64

(23)

Sumário

Agradecimentos xi

Resumo xv

Abstract xvii

Lista de Figuras xix

Lista de Tabelas xxi

1 Introdução 1

2 O Problema do Caminho Mais Curto Robusto 9

2.1 Trabalhos Relacionados . . . 9 2.2 Formulação Linear . . . 16 2.3 Restrições de eliminação de subciclos . . . 18 2.4 Inequações Válidas . . . 19 2.5 Experimentos Computacionais . . . 20

3 Problema de Localização de Concentradores em Árvore 29

3.1 Trabalhos Relacionados . . . 29

(24)

3.2 Formulações de Programação Linear Inteira Mista para o THLP . . 32 3.3 Algoritmo de Decomposição de Benders . . . 38 3.4 Algoritmo Eficiente para resolução do subproblema . . . 47 3.5 Experimentos Computacionais . . . 52

4 Conclusões 65

Referências Bibliográficas 67

(25)

Capítulo 1

Introdução

Esta dissertação trata de dois problemas de otimização combinatóriaNP-Difíceis:

o problema do caminho mais curto robusto (RSP, do inglês Robust Shortest Path

problem) e o problema de localização de concentradores em árvores (THLP, do

inglês Tree of Hub Location Problem). O objetivo desta dissertação é avançar no

estado da arte dos algoritmos exatos para esses dois problemas.

Considere um grafo orientado e conexo G = (V, A) com um conjunto V de nós e um conjuntoAde arcos. Sejan =|V|em =|A|, respectivamente, o número total de nós e arcos de G. Cada arco(i, j)∈A tem um custo associadocij ∈R. O custo de um caminhoP ⊆Ade um nó de origems∈V até um nó de destinot∈V é dado pela soma dos custos dos arcos em P. O problema do caminho mais curto (SP, do inglêsShortest Path Problem) consiste em encontrar o caminho de menor custo a partir de uma origem s ∈V para um destino t ∈ V. Uma solução existe se ciclos de custo negativo não estão presente no caminho des para t. Algoritmos de tempo polinomial estão disponíveis para resolver o SP, como Dijkstra [22] e Bellman-Ford [5]. O SP modela problemas práticos e teóricos [29]. Entretanto,

(26)

2 Capítulo 1. Introdução

diversas aplicações para oSP possuem incertezas nos dados.

Algumas estratégias podem ser utilizadas para resolver o problema com in-certeza como a programação estocástica [54] e a otimização robusta [6, 40]. A programação estocástica é mais aplicada quando a lei de probabilidade associada à incerteza dos dados é conhecida. Uma dificuldade dessa abordagem é que al-gumas vezes é difícil definir a distribuição de probabilidade associada a incerteza dos dados ou erros podem acontecer na estimativa dos parâmetros. Além disso, a programação estocástica não se aplica quando a otimização requer decisões não repetitivas como projeto de infraestrutura, acidentes ambientais ou nucleares, etc. [1]. Os trabalhos [8, 48] são dedicados ao problema do caminho mais curto esto-cástico, que é uma extensão do SP, uma vez que minimiza o custo total esperado.

Otimização robusta é uma alternativa para a programação estocástica onde a variabilidade dos dados é representada por valores determinísticos. Neste trabalho, o foco são modelos de otimização robusta onde a incerteza dos dados é modelada por um intervalo de possíveis valores. O livro [40] apresenta alguns modelos de otimização robusta. RSP é uma generalização do SP, onde o custo de cada arco

(i, j)∈ Aé definido por um intervalo[lij, uij],comlij, uij ∈N∗ euij ≥lij,∀(i, j)∈ A [34]. Existem diferentes versões do RSP com intervalo de valores na literatura, a diferença entre eles está no critério de otimização utilizado [1, 3, 13, 35, 57].

A versão mais estudada do RSP usa o critério minmax regret e é chamada de

minmax regret RSP. SejaP ⊆A um caminho a partir da origems para o destino t em G. Um cenário r define uma atribuição do custo cij ∈[lij, uij], de cada arco (i, j)∈ A, em um único valor dado porcr

ij. Assim o custo do caminhoP no cenário r é a soma dos custos cr

ij dos arcos presentes em P. O arrependimento (do inglês

(27)

3

robust deviation) é definido como a diferença entre o custo deP emr e o custo do caminho mais curtoSr desatét emr. Em outras palavras, odesvio robusto deP em r é o arrependimento de usar P ao invés de Sr, quando o cenário r ocorre. O

custo robusto (do inglês,robust cost) de P é o maior desvio robusto deP em todos os cenários. O minmax regret RSP consiste em encontrar o caminho P∗ a partir

desparat com o menor custo robusto. Esse problema éNP-Difícil, inclusive para grafos que não possuem ciclos [40].

O primeiro problema estudado nesta dissertação é o problema do caminho mais curto robusto intervalar com arrependimento relativo -minmax relative regret

RSP. Seja P ⊆ A um caminho a partir da origem s para o destino t em G. O

arrependimento relativo (do inglês relative regret) de P no cenárior (também co-nhecido comodesvio robusto relativo, do inglêsrelative robust deviation) é definido

como(custo(P, r)−custo(Sr, r))/custo(Sr, r), onde custo(P, r)denota o custo de

P em r e custo(Sr, r)denota o custo de Sr em r. O custo robusto relativo (do in-glês relative robust cost) deP é o maior arrependimento relativo deP em todos os cenários. Ominmax relative regret RSP consiste em encontrar o caminho P∗, sem

a presença de ciclos, a partir de s até t com o menor custo robusto relativo. Esse problema é NP-Difícil, inclusive para grafos que não possuem ciclos [3]. Embora

o minmax relative regret RSP difere do minmax regret RSP somente pela função

objetivo, ele é mais difícil de resolver porque a função objetivo é não linear.

O desvio robusto relativo pode ser considerado uma métrica melhor do que

desvio robusto porque o arrependimento de usar P ao invés de Sr é normalizado pelo custo de Sr. Por exemplo, sejam dois caminhos Pe P′′, e também dois

cenários r′ er′′ tal quecusto(P, r) = 11,custo(Sr′

, r′) = 1,custo(P′′, r′′) = 100e

(28)

4 Capítulo 1. Introdução

P′ emr(11−1 = 10) é o mesmo queP′′emr′′(10090 = 10). Entretanto,

pode-se obpode-servar que o custo deP′ é dez vezes maior do que o custo de Sr′, enquanto o custo deP′′ é somente 11% maior do que o custo deSr′′

. De acordo com o critério

minmax relative regret, o arrependimento de P′ em r((111)/1 = 10), é muito

maior do que de P′′ em r′′ ((10090)/90 = 0,11).

As contribuições desta dissertação para este problema são as seguintes. Pro-por a primeira formulação de programação linear inteira mista para o minmax

relative regret RSP, juntamente com inequações válidas. Adicionar restrições de

eliminação de subciclos para essa formulação e propor um novo conjunto de ins-tâncias baseadas em grafos direcionados com ciclos.

O segundo problema estudado nesta dissertação pertence a classe de proble-mas de localização de concentradores. Essa classe de probleproble-mas é estudada desde 1986 [2, 12, 32]. Considere G= (N, A) um grafo completo e direcionado, onde N é o conjunto de nós e A é o conjunto de arcos. Cada arco (i, j) ∈ A possui um custo cij ∈ R+ associado. Além disso, para cada par de nós i, j ∈ N existe uma quantidade de fluxoWij ∈R∗+ que deve ser enviada do nó de origemipara o nó de destino j. Os problemas da classe de problemas de localização de concentradores consiste em dividir o conjuntoN em dois conjuntos denominados, respectivamente, concentradores e clientes, conectar os nós concentradores e alocar os nós clientes aos nós concentradores de forma que o custo de transportar todos as demandas de fluxo Wij seja minimizado. Existe um custo Fk ∈ R+ para selecionar um nó

(29)

5

Wij é transportado através dos nós concentradores. O custo de enviar um fluxo Wij do nó de origem i para o nó de destino j é dado pelo soma dos custos dos arcos, presentes no caminho de i até j multiplicado pela quantidade de fluxo Wij enviada de ipara j. Quando o arco presente no caminho de iparaj conectar dois nós concentradores k, m ∈N, o custo do arco ckm recebe um desconto α ∈ [0,1], sendo o novo custo igual a ckm×α. O objetivo dos problemas da classe de proble-mas de localização de concentradores é minimizar o custo de transportar os fluxos através dos nós concentradores selecionados e dos nós clientes alocados. Muitos desses problemas pertencem à classe de problemasNP-Difíceis e se diferem quanto

a existência de uma quantidade fixa de nós concentradores que precisam ser alo-cados, quanto a alocação ser simples ou múltipla e quanto a forma de conexão dos nós concentradores.

Nesta dissertação é estudado o problema de localização de concentradores em árvore (THLP, do inglês Tree of Hub Location Problem). Nesse problema o custo de selecionar um nó k do conjunto N como nó concentrador é definido como Fk = 0, a quantidade de nós concentradores selecionados é um número fixo

3≤p≤ |N|−1, a alocação é simples e os nós concentradores são conectados através

de uma árvore. O THLP foi proposto por Contreras et. al.[18], onde os autores provaram que esse problema éNP-Difícil e apresentaram uma aplicação real desse

(30)

6 Capítulo 1. Introdução

para serem nós concentradores e as conexões entre eles, formando uma árvore. Na figura 1.1c é mostrado a alocação do nó cliente 4 ao nó concentrador 3. A Figura 1.1d apresenta o caminho que o fluxo W42, com origem no nó 4 e destino no nó 2, percorre. O custo de enviar o fluxoW42é dado então por(c43+(c31+c12)×α)×W42. Já a Figura 1.1e apresenta o caminho percorrido para enviar o fluxo W24, do nó de origem 2 para o nó de destino 4. O custo para enviar esse fluxo é dado por

((c21+c13)×α+c34)×W24. Esse exemplo apresenta a seguinte característica do THLP: embora os nós concentradores estão conectados por meio de uma árvore não direcionada, o fluxo possui uma direção.

O THLP é muito bem resolvido na literatura por um algoritmo de decompo-sição de Benders proposto por de Sá et. al.[56]. Entretanto, o tempo de execução desse algoritmo chega a diversas horas ou até dias de processamento. A contri-buição desta dissertação para esse problema é propor um algoritmo ad-hoc para resolver os subproblemas da decomposição de Benders. Espera-se que este algo-ritmo seja muito mais eficiente do que o algoalgo-ritmo de programação linear genérico utilizado na literatura.

(31)

7

2

3 1

4

(a) Grafo completo e direcionado

2

3 1

4

(b) Nós concentradores 1, 2 e 3 e sua árvore de conexão

2

3 1

4

(c) Alocação do nó cliente 4 no nó concen-trador 3

2

3 1

4

(d) Caminho percorrido pelo fluxo com ori-gem no nó 4 e destino no nó 2

2

3 1

4

(e) Caminho percorrido pelo fluxo com ori-gem no nó 2 e destino no nó 4

(32)
(33)

Capítulo 2

O Problema do Caminho Mais

Curto Robusto

Este capítulo é dedicado ao estudo do problema do caminho mais curto robusto e está organizado da seguinte forma: primeiro, os trabalhos relacionados são apre-sentados na seção 2.1. Então, a primeira formulação linear inteira mista (MILP, do inglês Mixed Integer Linear Programming) é proposta na seção 2.2, a seção 2.3 apresenta as restrições de eliminação de subciclos, na seção 2.4 é proposta inequa-ções válidas para esse problema e os resultados computacionais são reportados na seção 2.5.

2.1

Trabalhos Relacionados

Ominmax regret RSP foi proposto em [34]. Os autores provam que o pior cenário

para o caminhoP pode ser obtido fixando os custoscr

ij =uij para todo (i, j)∈ P, e cr

(34)

10 Capítulo 2. O Problema do Caminho Mais Curto Robusto

por P. Usando esse resultado, a formulação MILP foi definida com as variáveis de decisão yij = 1 se o arco (i, j) ∈ A está presente na solução e yij = 0 caso contrário. Além disso, variáveis auxiliares xi ≥ 0, para todo i ∈ V, mantêm o custo do caminho de menor custo a partir da origem s para o nó i no cenário induzido pelas variáveis yij. A formulação MILP correspondente é definida pelas equações (2.1) até (2.6).

min z = X

(i,j)∈A

uij ·yij −xt (2.1)

sujeito à:

X

(j,k)∈A

yjk− X

(i,j)∈A

yij =           

1, if j = s

−1, if j = t ∀j ∈V 0, caso contrário

(2.2)

xj ≤xi+lij + (uij−lij)yij ∀(i, j)∈A (2.3)

xs= 0 (2.4)

yij ∈ {0,1} ∀(i, j)∈A (2.5)

xi ≥0 ∀i∈V (2.6)

A função objetivo (2.1) minimiza o custo do arrependimento do caminho

(35)

2.1. Trabalhos Relacionados 11

juntamente com a função objetivo, garantem que o máximo arrependimento vai

ser minimizado. A equação (2.4) garante que o custo do caminho mais curto com origem e destino em s seja igual a zero. Finalmente, o domínio das variáveisy ex são definidas em (2.5) e (2.6), respectivamente. Essa formulação pode resolver efi-cientemente algumas instâncias através desolvers comerciais, como o CPLEX. Por exemplo, instâncias geradas aleatoriamente com até 900 nós e instâncias reais, a partir de uma rede de estradas de Stuttgart, com 2490 nós foi resolvida em poucos segundos em [47]. Instâncias com mais de 1000 nós são resolvidas na otimalidade. O CPLEX interrompeu a execução para instâncias variando entre 10000 e 20000 nós devido a falta de memória. Os gaps para essas instâncias variaram entre 2% até 9% [50].

O minmax relative regret RSP foi proposto em [40]. Neste trabalho, vai

ser considerado o minmax relative regret RSP no pior cenário apresentado para o

minmax regret RSP. Para provar que essa versão do minmax relative regret RSP é NP-Difícil, primeiro provamos o Lema 1. Seja P1 eP2 dois caminhos de s para

t e r1 e r2 o pior cenário desses caminhos, conforme apresentado para o minmax

regret RSP. Além disso, seja S1 e S2 o caminho de menor custo entre s e t nos cenários r1 e r2, respectivamente.

Lema 1 Dado dois caminhos P1 e P2, e M > (|V| · U)2, com U =

max(i,j)∈Auij.

Cr2

P2 −C r2

S2 > C r1

P1 −C r1

S1 =⇒ Cr2

P2 +M

Cr2

S2 +M

> C r1

P1 +M

Cr1

S1 +M

, (2.7)

Onde Cr P =

P

(36)

12 Capítulo 2. O Problema do Caminho Mais Curto Robusto

Prova Temos que

Cr2

P2 +M

Cr2

S2 +M

− C r1

P1+M

Cr1

S1 +M

= (C r1

S1 +M)·(C

r2

P2 +M)−(C

r2

S2 +M)·(C

r1

P1 +M)

(Cr2

S2 +M)·(C

r1

S1 +M)

,

que pode ser reescrito como (2.8).

M ·(Cr2

P2 −C

r2 S2 −C

r1 P1 +C

r1 S1) +C

r2 P2 ·C

r1 S1−C

r1 P1 ·C

r2 S2

(Cr2

S2+M)·(C

r1

S1 +M)

(2.8)

A partir da equação (2.7),Cr2

P2−C

r2 S2−C

r1 P1+C

r1

S1 >0, e pela definiçãolij, uij ∈N

,

∀(i, j)∈A. A desigualdade (2.9) aparece.

Cr2

P2 −C r2

S2 −C r1

P1 +C r1

S1 ≥1. (2.9)

A equação (2.9), junto com M ≥ (|V| ·U)2 > Cr1 P1 ·C

r2

S2, onde U = max(i,j)∈Auij,

implica que (2.8) é maior do que zero, o que completa a prova.

Proposição 1O minmax relative regret RSP, no pior cenário apresentado para o minmax regret RSP é NP-Difícil.

Prova Sejaf :{hG, l, u, s, ti} 7→ {hG′, l, u, s, ti} uma função que transforma

uma instância dominmax regret RSP em uma instância do minmax relative regret

RSP no pior cenário apresentado para o minmax regret RSP, como definido por

(37)

2.1. Trabalhos Relacionados 13

V′ =V ∪ {s′} (2.10)

A′ =A∪ {(s′, s)} (2.11)

G′ = (V, A) (2.12)

l(s′,s) =u(s,s)= (|V| ·U)2 (2.13)

⇒SejaP ⊆Auma solução ótima para ominmax relative regret RSP no pior

cenário apresentado para o minmax regret RSP. O caminho P, sem o arco (s′, s),

é também uma solução ótima para o minmax regret RSP. Caso contrário, existe uma solução ótima P′ para o minmax regret RSP com um custo menor do que a

solução P e a partir do Lema 1, P′ junto com o arco (s′, s) é uma solução ótima para o minmax relative regret RSP com um custo menor do que a solução ótima

P.

⇐ Seja Q ⊆ A uma solução ótima para o minmax regret RSP. A partir

do Lema 1, Q juntamente com o arco (s′, s) é também uma solução ótima para

o minmax relative regret RSP no pior cenário apresentado para o minmax regret

RSP.

A formulação para o minmax relative regret RSP será composta pelas

res-trições (2.2) até (2.6), apresentadas anteriormente para o minmax regret RSP e a

função objetivo é dada por (2.14).

min P

(i,j)∈Auijyij −xt

xt

(38)

14 Capítulo 2. O Problema do Caminho Mais Curto Robusto

Esta formulação é válida apenas para grafos sem ciclos, porque considerando um grafo com ciclos e valores não negativos lij > 0 e uij > 0, a solução pode ser melhorada apenas permitindo subciclos, devido a função objetivo (2.14). A figura 2.1 ilustra essa situação, onde s e t são respectivamente a origem e o des-tino. Se subciclos são proibidos, então para esse exemplo, existem dois caminhos a partir des para t: {(s,1),(1, t)} e {(s,2),(2, t)}, respectivamente com custo ro-busto 20165−120

120 = 167,04

e 20120−165

165 = 120,94

. Se subciclos são permitidos, a formulação vai fornecer um caminho com {(s,1),(1, s),(s,2),(2, t),(t,1),(1, t)} e custo robusto igual a 60388−20120

20120 = 2,0014

. Esse problema não aparece em grafos direcionados sem ciclos, como os estudados em [3]. Caso contrário, restrições de eliminação de subciclos precisam ser consideradas.

1

2 s

t [87,10087] [16,10016]

[8 4 , 10 08 4] [9 4 , 10 094] [7 8 , 10 07 8] [8 7 , 10 08 7]

[36,10036] [93,10093]

Figura 2.1: Exemplo de um grafo com custo definido em um intervalo positivo de valores

(39)

2.1. Trabalhos Relacionados 15

exatos, algoritmos aproximativos e heurísticas para problemas de otimização, in-cluindo o RSP, é apresentado em [13].

Ominmax regret RSP foi mostrado ser NP-Difícil em [40]. Uma formulação MILP para esse problema foi introduzida em [34]. Em [47], os autores propõem um algoritmobranch and bound baseado na relaxação combinatória das restrições

robustas. Esse trabalho foi estendido em [46] usando um algoritmo de decompo-sição de Benders baseado na mesma relaxação. Ambos os algoritmos resolveram instâncias geradas aleatoriamente com até 4000 nós e instâncias reais com até 2500 nós.

Os trabalhos [4, 26] insvestigam instâncias que podem ser resolvidas em tempo polinomial ou pseudo-polinomial para problemas clássicos de otimização robusta. Um algoritmo pseudo-polinomial é apresentado em [36] para o minmax

regret RSP. Esse algoritmo funciona em series-parallel multidigraphs e tem

com-plexidade computacional de O(m· |Su|2), onde |Su| representa o número de arcos no caminho de menor custo a partir des para t no cenário onde o custo dos arcos estão fixados em uij. Um algoritmo 2-aproximativo para uma ampla classe de problemas de otimizaçãominmax regret são apresentados em [16]. Para ominmax

regret RSP, um algoritmo 2-aproximativo com complexidade, no pior caso, igual

a O(m+nlogn) é proposto em [36]. Uma versão melhorada desse algoritmo é dada em [37] para series-parallel multidigraphs com um fator de aproximação de

(1 +ǫ) e complexidade, no pior caso, igual a O(q(n, n/ǫ)), onde q é uma função polinomial bivariada e ǫ é um valor no intervalo(0,1).

Técnicas de pré-processamento para o minmax regret RSP são propostas

em [14, 34]. A ideia geral é remover arcos dominados, chamados de arcos-fracos

(40)

16 Capítulo 2. O Problema do Caminho Mais Curto Robusto

ótima. Um algoritmo para eliminar arcos-fracos é introduzido em [34] para grafos

particulares que são acíclicos, planar e em camadas. Em [14], o autor estende o pré-processamento proposto em [34], eliminando nós e aplicando outras estratégias para deduzir arcos-fracos. O procedimento para eliminar nós consome O(n3) no pior caso, e elimina nós que não aparecem em nenhum caminho mais curto entre a origem e o destino. Além disso, os autores apresentam estratégias usando uma árvore geradora mínima para detectararcos-fracos e tem complexidade

computa-cional de O(m·n2) no pior caso.

Ominmax relative regret RSP foi introduzido em [40]. Em [3], o autor prova que essa versão do RSP éNP-Difícil, mesmo em grafos direcionados acíclicos. Até onde sabemos, não existe na literatura uma formulação linear inteira ou algoritmos exatos para essa versão do RSP.

2.2

Formulação Linear

A função objetivo (2.14) foi linearizada neste trabalho e teve inspiração no trabalho [9], para o caso onde lij, uij ∈ N∗. Primeiro, sem perda de generalidade, pode-se reescrever a função objetivo como

min P

(i,j)∈Auijyij

xt

−xt xt

= X

(i,j)∈A

uij yij

xt

−1 (2.15)

Em seguida, variáveis zij ∈ R+ são introduzidas, juntamente com as restri-ções (2.16)-(2.18), para garantir que zij =

yij

(41)

2.2. Formulação Linear 17

zij ≤yij ∀(i, j)∈A (2.16)

zij ≥ 1 xt

−(1−yij) ∀(i, j)∈A (2.17)

zij ∈R+ ∀(i, j)∈A (2.18)

Note que a restrição (2.17) é não linear. Ela pode ser linearizada com a introdução de variáveis wl,∀l ∈ {L, . . . , U}, tal que wl= 1 se e somente se xt=l, e wl = 0 caso contrário. O limite inferior L para o valor de xt é definido como o custo do caminho de menor custo a partir de spara t no cenário onde o custo dos arcos estão fixados em cl

ij =lij, e o limite superiorU para o valor dext é definido como o custo do caminho de menor custo a partir de s para t no cenário onde o custo dos arcos estão fixados em cu

ij = uij. Portanto, o número de variáveis wl é igual a U −L. Então, troca-se a restrição (2.17) pelas restrições (2.19)-(2.22).

X l∈{L,...,U}

zij ≥ 1

l ·wl−(1−yij) ∀(i, j)∈A (2.19)

X l∈{L,...,U}

wl ≥1 (2.20)

X l∈{L,...,U}

l·wl =xt (2.21)

wl ∈ {0,1} ∀l∈ {L, . . . , U} (2.22)

(42)

18 Capítulo 2. O Problema do Caminho Mais Curto Robusto

regret RSP pode ser definida pelas equações (2.2)-(2.6), (2.16), (2.18)-(2.23). O número de restrições dessa formulação é O(|A|), enquanto o número de variáveis éO(|A|+U).

min X

(i,j)∈A

uijzij −1 (2.23)

2.3

Restrições de eliminação de subciclos

As restrições de eliminação de subciclos propostas em [44] foram aplicadas com êxito para alguns problemas de otimização clássicos da literatura [21, 52], e são adaptadas aqui para o minmax relative regret RSP. Essas restrições estabelecem

uma ordem topológica para cada nó visitado no caminho robusto de s até t para eliminação de subciclos.

As restrições (2.24)-(2.26) usam as variáveis ti, ∀i ∈ V, que determinam a ordem que o nó i aparece no caminho robusto. A restrição (2.24) garante que se o arco (i, j)∈A é escolhido no caminho, i.e. se yij = 1, então ti < tj. A equação (2.25) define que o primeiro nó visitado em um caminho do nó de origem s até o nó de destinotseja o nós. O domínio das variáveisti é definido em (2.26),∀i∈V. Por exemplo, dado um caminho P = {(s,1),(1, s),(s,2),(2, t)}, quando os arcos

(43)

2.4. Inequações Válidas 19

A formulação completa considerada aqui para o minmax relative regret é

dada pela função objetivo (2.23) e as restrições (2.2)-(2.6), (2.16), (2.18)-(2.26).

ti−tj+|V|yij ≤ |V| −1, ∀(i, j)∈A (2.24)

ts = 0 (2.25)

0≤ti ≤ |V| ∀i∈V (2.26)

2.4

Inequações Válidas

Dado o limite inferior L e o limite superior U para o valor de xt, definido anteri-ormente, segue que

P

(i,j)∈Auijyij −xt

U ≤

P

(i,j)∈Auijyij −xt

xt

≤ P

(i,j)∈Auijyij −xt

L .

Como

X

(i,j)∈A

uijzij −1 = P

(i,j)∈Auijyij −xt

xt

(44)

20 Capítulo 2. O Problema do Caminho Mais Curto Robusto

X

(i,j)∈A

uijzij −1≥ P

(i,j)∈Auijyij −xt

U (2.27)

X

(i,j)∈A

uijzij −1≤ P

(i,j)∈Auijyij −xt

L (2.28)

A formulação resultante para o minmax relative regret é dada pela função objetivo (2.23) e as restrições (2.2)-(2.6), (2.16), (2.18)-(2.28). Essas restrições não somente melhoram a relaxação linear através da imposição de um limite inferior para o valor da função objetivo, mas também pelo fortalecimento da ligação entre as variáveis zij,yij, ext.

2.5

Experimentos Computacionais

Os experimentos computacionais foram executados em uma máquina Intel Core i7 com 2.67 GHz de clock e 4 GB de memória RAM, rodando o sistema opera-cional Linux. Dois algoritmos branch and bound para o minmax relative regret

RSP foram implementados usando o ILOG CPLEX versão 12.5, com parâmetros nos valores padrões. O primeiro foi baseado em (2.2)-(2.6), (2.16), (2.18)-(2.26), chamado aqui de CPLEX (V1), e o segundo foi baseado em (2.2)-(2.6), (2.16), (2.18)-(2.28) e é identificado aqui por CPLEX (V2) e difere do primeiro pela adi-ção das inequações válidas (2.27) e (2.28). Dois conjuntos de instâncias são usadas nos experimentos computacionais: instâncias Karasan [34] e instâncias grid, pro-postas neste trabalho. Esses dois conjunto são descritos abaixo.

(45)

2.5. Experimentos Computacionais 21

computacionais de [34, 45, 46, 47, 50]. Estes grafos são em camadas [55] e acíclicos [10] que se parecem com redes de telecomunicações. Em grafos Karasan, toda camada C tem um número W de nós. Existe um arco entre cada nó da camada

c para cada nó da camada c+ 1, com c∈ {1, . . . , C−1}. Além disso, existe um arco a partir do nó s para todo nó da camada 1e existe um arco a partir de cada nó da última camada para o nó t. Um grafo Karasan com 8 nós (incluindo s e t) e 3 camadas é mostrado na figura 2.2. O intervalo de dados [lij, uij],∀(i, j)∈A, é definido a seguir. Primeiro, um número aleatório θij ∈[1, θmax] é gerado∀(i, j)∈

A, onde θmax = 200. Então, lij é definido comoU[(1−d)·θij,(1 +d)·θij], e uij é definido como U[lij,(1 +d)·θij], onde d = 0.9 e U[a, b] denota a parte inteira de um número aleatório uniformimente selecionado no intervalo[a, b]. Essas instâncias são nomeadas como K-v-θmax-d-i-W, onde K identifica o tipo da instância, v é o número de nós entre s e t, enquanto i distingue diferentes instâncias geradas com os mesmos valores para os parâmetros. Os valores dos parâmetros mencionados anteriormente θmax, d, e W são também mostrados no nome da instância.

s

1

2

3

4

5

6

t

Figura 2.2: Um grafo Karasan com 8 nós e 3 camadas.

(46)

22 Capítulo 2. O Problema do Caminho Mais Curto Robusto

destinoté definido como sendo o nó inferior direito. Essas instâncias foram criadas porque elas se parecem com interseção de ruas em rede de estradas e porque elas contêm muitos ciclos. Um exemplo de um grid 3×5é mostrado na figura 2.3. O valor de [lij, uij], ∀(i, j) ∈ A, foi gerado da mesma forma como explicado para as instâncias Karasan. As instâncias são nomeadas como G-n×m-i, onde G identifica o tipo da instância,n é o número de linhas, mé o número de colunas e idistingue diferentes instâncias geradas com os mesmos valores para os parâmetros.

s 1 2 3 4

5 6 7 8 9

10 11 12 13 t

Figura 2.3: Exemplo de um grafo grid 3×5.

No primeiro experimento, foi avaliado o impacto das inequações válidas (2.27) e (2.28) pela comparação de desempenho do CPLEX (V1) e CPLEX (V2) para pequenas instâncias Karasan e Grid com 100 e 200 nós. O tempo máximo para rodar ambos os algoritmos foi setado para 7200 segundos. Os resultados desse experimento são mostrados nas tabelas 2.1 e 2.2, respectivamente. O nome da instância aparece na coluna 1. O limite inferior (lb) e o limite superior (ub) para o valor da solução ótima obtida pelo CPLEX (V1) estão nas colunas 2 e 3, respectivamente. O gap de otimalidade, o tempo de execução e o número de nós explorados na árvore de branch and bound são reportados, respectivamente, nas

(47)

2.5. Experimentos Computacionais 23

cinco colunas, respectivamente. Pode ser visto que as inequações válidas (2.27) e (2.28) melhoram o limite inferior da relaxação linear. Para as instâncias Karasan (Tabela 2.1), pode ser visto que quanto menor o número de nós em cada camada, a dificuldade de resolução da instância aumenta. CPLEX (V1) encontrou soluções ótimas para quase todas as instâncias mas K-200-200-0.9-a-2, K-200-200-0.9-b-2, K-200-200-0.9-a-5, e K-200-200-0.9-b-5 não foram resolvidas na otimalidade antes de 7200 segundos, enquanto o CPLEX (V2) resolveu K-200-200-0.9-b-5 além de todas as outras instâncias resolvidas pelo CPLEX (V1). A média relativa do gap de integralidade do CPLEX (V1) foi 20,19%, enquanto que para o CPLEX (V2) foi somente de 2,40%. Para as instâncias grid (Tabela 2.2), CPLEX (V1) resolveu todas as instâncias com até 100 nós mas nenhuma com até 200 nós antes de 7200 segundos, enquanto o CPLEX (V2) resolveu todas as instâncias com 100 nós e metade das instâncias com 200 nós. Além disso, CPLEX (V1) falhou em encontrar soluções para quatro (das dez) instâncias com 200 nós com limite de tempo de 7200 segundos, enquanto CPLEX (V2) encontrou soluções viáveis para todas as instâncias. A média relativa do gap de integralidade do CPLEX (V1) para essas instâncias foi de 47,43%, enquanto que para o CPLEX (V2) foi somente 2,52%. Esses resultados sugerem que as instâncias Grid propostas nesse trabalho são mais difícies de serem resolvidas do que as instâncias Karasan. Além disso, eles indicam que o CPLEX (V2) pode ser aplicado eficientemente para pequenas instâncias Karasan e grid com até 200 nós.

(48)

24 C a p ít u lo 2. O P r o b le m a d o C a m in h o M a is C u rt o R o b u st o

Tabela 2.1: Comparação entre CPLEX (V1) e CPLEX (V2) para grafos Karasan com 100 e 200 nós.

CPLEX (V1) CPLEX (V2)

Instance lb (%) ub (%) gap (%) t(s) Nodes lb (%) ub (%) gap(%) t(s) Nodes

K-100-200-0.9-a-2 0,00 0,00 0,00 0,87 1708 0,00 0,00 0,00 0,19 1

K-100-200-0.9-b-2 0,00 0,00 0,00 1,09 2313 0,00 0,00 0,00 0,17 1

K-100-200-0.9-a-5 2,27 2,27 0,00 0,85 52 2,27 2,27 0,00 0,29 1

K-100-200-0.9-b-5 0,79 0,79 0,00 0,97 209 0,79 0,79 0,00 0,33 1

K-100-200-0.9-a-10 0,63 0,63 0,00 1,54 64 0,63 0,63 0,00 0,42 1

K-100-200-0.9-b-10 0,00 0,00 0,00 0,56 4 0,00 0,00 0,00 0,19 1

K-100-200-0.9-a-25 0,00 0,00 0,00 0,42 1 0,00 0,00 0,00 0,31 1

K-100-200-0.9-b-25 1,35 1,35 0,00 0,74 1 1,35 1,35 0,00 0,49 1

K-100-200-0.9-a-50 2,44 2,44 0,00 0,44 1 2,44 2,44 0,00 2,04 1

K-100-200-0.9-b-50 0,00 0,00 0,00 0,64 1 0,00 0,00 0,00 0,46 1

K-200-200-0.9-a-2 -86,38 60,99 147,37 7200,00 1202871 39,35 60,93 21,58 7200,00 1199976 K-200-200-0.9-b-2 -80,98 59,81 140,79 7200,00 521026 38,65 59,68 21,03 7200,00 1480963 K-200-200-0.9-a-5 -9,77 62,37 72,15 7200,00 1175419 54,90 60,20 5,30 7200,00 586265 K-200-200-0.9-b-5 -4,35 39,22 43,57 7200,00 1027303 39,22 39,22 0,00 55,14 19681 K-200-200-0.9-a-10 73,08 73,08 0,00 2453,23 445310 73,08 73,08 0,00 46,75 16325 K-200-200-0.9-b-10 72,09 72,09 0,00 1253,04 321462 72,09 72,09 0,00 9,93 3077

K-200-200-0.9-a-25 45,83 45,83 0,00 8,79 76 45,83 45,83 0,00 4,47 4

K-200-200-0.9-b-25 76,92 76,92 0,00 11,55 209 76,92 76,92 0,00 5,42 77

K-200-200-0.9-a-50 35,71 35,71 0,00 3,46 1 35,71 35,71 0,00 5,01 1

K-200-200-0.9-b-50 25,00 25,00 0,00 6,28 1 25,00 25,00 0,00 5,56 1

(49)

2. 5. E x p e r im e n t o s C o m p u ta c io n a is 25

Tabela 2.2: Comparação entre CPLEX (V1) e CPLEX (V2) para grafos grid com no máximo 100 e 200 nós.

CPLEX (V1) CPLEX (V2)

Instance lb (%) ub (%) gap (%) t(s) Nodes lb (%) ub (%) gap (%) t(s) Nodes

g_3x30_a 0,50 0,50 0,00 1,33 118 0,50 0,50 0,00 0,58 1

g_3x30_b 0,70 0,70 0,00 1,91 655 0,70 0,70 0,00 0,70 22

g_4x25_a 0,96 0,96 0,00 2,96 2539 0,95 0,95 0,00 0,81 1

g_4x25_b 0,00 0,00 0,00 2,04 386 0,00 0,00 0,00 0,38 1

g_5x20_a 0,63 0,63 0,00 3,48 1335 0,63 0,63 0,00 0,61 1

g_5x20_b 0,00 0,00 0,00 1,66 377 0,00 0,00 0,00 0,29 1

g_6x17_a 0,00 0,00 0,00 2,32 92 0,00 0,00 0,00 0,31 1

g_6x17_b 0,00 0,00 0,00 0,87 306 0,00 0,00 0,00 0,20 1

g_7x14_a 0,00 0,00 0,00 1,29 368 0,00 0,00 0,00 0,30 1

g_7x14_b 1,49 1,49 0,00 2,03 464 1,49 1,49 0,00 0,63 2

g_4x50_a -98,99 - - 7200,00 176946 33,31 45,19 11,89 7200,00 333410 g_4x50_b -87,98 34,36 122,34 7200,00 79988 27,98 34,36 6,38 7200,00 267725 g_5x40_a -95,05 - - 7200,00 163330 33,54 40,60 7,06 7200,00 365738 g_5x40_b -92,57 - - 7200,00 153183 28,03 28,03 0,00 1029,16 36778 g_6x34_a -89,60 33,64 123,24 7200,00 239289 33,64 33,64 0,00 327,48 23130 g_6x34_b -90,15 - - 7200,00 111683 39,99 55,58 15,59 7200,00 497787 g_7x29_a -89,81 44,99 134,80 7200,00 155818 44,98 44,99 0,00 3994,81 298610 g_7x29_b -93,82 56,14 149,95 7200,00 246237 45,09 54,27 9,49 7200,00 323021 g_8x25_a -62,99 26,88 89,86 7200,00 223165 26,88 26,88 0,00 99,96 5566 g_8x25_b -82,46 56,14 138,60 7200,00 314228 40,77 40,77 0,00 439,39 34039

(50)

26 Capítulo 2. O Problema do Caminho Mais Curto Robusto

(51)

2. 5. E x p e r im e n t o s C o m p u ta c io n a is 27

Tabela 2.3: Comparação entre CPLEX (V1) e CPLEX (V2) para grafos Karasan com 1000 e 1500 nós.

CPLEX (V1) CPLEX (V2)

Instance lb (%) ub (%) gap (%) t(s) Nodes lb (%) ub (%) gap (%) t(s) Nodes K-1000-200-0.9-a-5 -95,48 68,86 164,34 7200,00 20799 38,70 61,49 22,79 7200,00 22155 K-1000-200-0.9-b-5 -100,00 87,93 187,93 7200,00 14008 40,87 67,35 26,48 7200,00 44525 K-1000-200-0.9-a-10 -100,00 106,97 206,97 7200,00 17959 49,26 93,05 43,79 7200,00 76124 K-1000-200-0.9-b-10 -94,75 100,76 195,50 7200,00 41556 44,56 76,74 32,19 7200,00 62477 K-1000-200-0.9-a-25 -98,63 142,36 240,99 7200,00 36759 53,57 65,07 11,50 7200,00 164165 K-1000-200-0.9-b-25 -94,43 182,19 276,62 7200,00 19798 53,71 77,93 24,22 7200,00 96155 K-1000-200-0.9-a-50 -73,13 83,72 156,86 7200,00 21969 68,09 68,09 0,00 1100,99 10967 K-1000-200-0.9-b-50 -65,75 65,91 131,66 7200,00 24498 65,91 65,91 0,00 754,09 5871 K-1000-200-0.9-a-100 84,21 84,21 0,00 2432,07 1851 84,21 84,21 0,00 1521,14 2261 K-1000-200-0.9-b-100 -8,53 95,00 103,53 7200,00 13828 90,00 90,00 0,00 1716,96 1707 K-1500-200-0.9-a-5 -99,72 103,72 203,44 7200,00 2175 34,16 53,13 18,97 7200,00 3441 K-1500-200-0.9-b-5 -98,47 97,96 196,43 7200,00 3204 30,93 45,20 14,27 7200,00 5230 K-1500-200-0.9-a-10 -99,11 105,50 204,61 7200,00 3158 36,58 57,71 21,13 7200,00 5818 K-1500-200-0.9-b-10 -99,61 69,56 169,17 7200,00 9404 36,58 56,39 19,81 7200,00 10923 K-1500-200-0.9-a-25 -93,05 265,97 359,02 7200,00 8026 38,65 52,88 14,23 7200,00 41947 K-1500-200-0.9-b-25 -100,00 283,33 383,33 7200,00 8626 48,47 87,57 39,10 7200,00 9560 K-1500-200-0.9-a-50 -77,73 66,67 144,40 7200,00 4338 59,26 59,26 0,00 2197,76 9618 K-1500-200-0.9-b-50 -100,00 11911,43 12011,43 7200,00 9 52,65 75,51 22,86 7200,00 37770 K-1500-200-0.9-a-100 -99,35 1171,43 1270,78 7200,00 1169 81,25 81,25 0,00 4934,37 570 K-1500-200-0.9-b-100 -77,06 4355,56 4432,62 7200,00 9 83,60 105,88 22,28 7200,00 20884

(52)

28 C a p ít u lo 2. O P r o b le m a d o C a m in h o M a is C u rt o R o b u st o

Tabela 2.4: Comparação entre CPLEX (V1) e CPLEX (V2) para grafos grid com no máximo com 1000 nós.

CPLEX (V1) CPLEX (V2)

Instance lb (%) ub (%) gap (%) t(s) Nodes lb (%) ub (%) gap (%) t(s) Nodes g_6x60_a -98,67 - - 7200,00 44388 30,86 42,45 11,59 7200,00 383891 g_6x60_b -99,08 - - 7200,00 35895 35,75 50,02 14,28 7200,00 174914

g_7x70_a -100,00 - - 7200,00 9720 37,62 58,78 21,17 7200,00 80621

g_7x70_b -100,00 - - 7200,00 15996 35,60 53,51 17,92 7200,00 116668

g_8x80_a -100,00 - - 7200,00 9507 32,24 46,74 14,50 7200,00 52630

g_8x80_b -98,72 - - 7200,00 9797 35,09 52,75 17,66 7200,00 60023

g_9x90_a -98,43 - - 7200,00 13802 33,20 50,64 17,44 7200,00 35137

g_9x90_b -98,94 - - 7200,00 5997 34,99 51,56 16,57 7200,00 46045

g_10x100_a -100,00 - - 7200,00 1273 37,20 57,07 19,87 7200,00 18444 g_10x100_b -98,66 - - 7200,00 2425 32,98 47,42 14,45 7200,00 24643

(53)

Capítulo 3

Problema de Localização de

Concentradores em Árvore

Este capítulo é dedicado ao estudo do problema de localização de concentradores em árvore e está organizado da seguinte forma: Na seção 3.1 são discutidos traba-lhos relacionados ao THLP. Na seção 3.2 são apresentas duas formulações lineares inteiras mistas presentes na literatura para o THLP. Já na seção 3.3 é descrito o algoritmo de decomposição de Benders para esse problema, proposto por de Sá et. al.[56]. Em seguida, na seção 3.4 o algoritmo proposto neste trabalho para resol-ver os subproblemas da decomposição de Benders de forma eficiente é apresentado. Finalmente, na seção 3.5, são apresentados os experimentos computacionais.

3.1

Trabalhos Relacionados

O’Kelly apresenta em [49] uma formulação inteira quadrática e duas heurísticas para o problema de localização de concentradores (do inglês, p-hub location

(54)

30

Capítulo 3. Problema de Localização de Concentradores em Árvore

blem). Em [39], Klincewicz apresenta várias heurísticas para o problema de locali-zação de concentradores e resultados computacionais foram realizados para compa-rar essas heurísticas com as apresentadas em [49]. Em [53] os autores apresentam uma linearização da formulação proposta em [49] para o problema de localização de concentradores com alocação simples. Resultados computacionais mostraram que essa linearização é capaz de resolver instâncias de até 25 nós para o problema de localização de concentradores com alocação simples. Em [24], os autores apre-sentam um algoritmo de branch and bound capaz de resolver instâncias de até 100 nós, na versão de alocação simples, e 200 nós na versão de alocação múltipla do problema de localização de concentradores.

(55)

3.1. Trabalhos Relacionados 31

autores apresentam um algoritmo de branch and bound capaz de resolver instân-cias de até 40 nós para o problema de localização de concentradores com alocação múltipla. Em [31], os autores investigaram o poliedro das soluções viáveis do pro-blema de localização de concentradores com alocação múltipla e apresentam uma nova formulação para esse problema. Experimentos computacionais não foram apresentados nesse trabalho. Em [42], os autores apresentam novas formulações para o problema de localização de concentradores com alocação múltipla que são capazes de resolver instâncias de até 30 nós. Marín propõe, em [41], um algoritmo de branch and cut que resolve instância de até 50 nós para o problema de loca-lização de concentradores euclidiano com alocação múltipla. Em [20], os autores propõe um algoritmo de branch and bound capaz de resolver instâncias de até 120 nós para o problema de localização de concentradores com alocação múltipla. Em [30], os autores apresentam uma formulação inteira com O(|N|)4 variáveis para o problema de localização de concentradores com alocação múltipla. Eles mostram uma comparação do número de variáveis e restrições com outras formulações pre-sentes na literatura para esse problema. Um algoritmo baseado em decomposição de Benders foi proposto e experimentos computacionais mostraram que esse algo-ritmo foi capaz de resolver instâncias de até 50 nós para esse problema. Em [27] os autores apresentam um survey de recentes publicações para problemas de locali-zação de concentradores. Esse trabalho contêm modelos matemáticos e aplicações no mundo real desses problemas.

O THLP foi proposto por Contreras et. al.[18]. Nesse traballho os autores provam que o problema é NP-Difícil e apresentam uma formulação linear inteira

(56)

32

Capítulo 3. Problema de Localização de Concentradores em Árvore

25 nós, com um tempo computacional de até 40 horas.

Em [17], Contreras et. al. apresentam outra MILP baseada em caminhos entre cada par de nós para o THLP. Essa formulação possui O(|N|2) variáveis binárias, O(|N|4) variáveis contínuas e O(|N|4) restrições. Um algoritmo de re-laxação Lagrangiana e uma heurística para o THLP também são propostos. Os resultados computacionais mostram que os gaps obtidos pela relaxação Lagran-giana são de no máximo 10% para instâncias com até 100 nós. Entretanto, os tempos computacionais para resolver essa relaxação chega a 5200 segundos.

O algoritmo de decomposição de Benders, proposto por de Sá et. al.[56], resolve instâncias do THLP com até 100 nós. Esse algoritmo é baseado na formu-lação proposta por Contreras et. al.[17]. Os resultados computacionais mostram que o tempo computacional consumido para resolver instâncias de 100 nós para o THLP com esse algoritmo de decomposição de Benders é superior a 80 horas. Uma heurística baseda em algoritmos genéticos com chaves aleatórias para o THLP é apresentada por Pessoa et. al.[51]. As abordagens de [17], [18] e [56] são o estado da arte para o THLP e são detalhadas a seguir.

3.2

Formulações de Programação Linear Inteira

Mista para o THLP

(57)

3.2. Formulações de Programação Linear Inteira Mista para o

THLP 33

Já as constantes Oi = P

j∈NWij, para todoi∈N, representam a soma dos fluxos com origem nó i ∈ N e com destino em todos os outros nós do conjunto N, en-quanto as constantes Di =

P

j∈NWji, para todo i ∈ N, representam a soma dos fluxos enviados a partir de todos os nós em N com destino ao nó i ∈ N. Além disso, a constante 0≤ α ≤ 1 representa o fator de desconto que será aplicado ao custo ckm quando os dois nós k, m do arco (k, m)∈A são nós concentradores.

A primeira formulação descrita foi proposta por Contreras et. al.[18] e contém

O(|N|2)variáveis binárias,O(|N|3)variáveis contínuas eO(|N|2)restrições. Nessa formulação as variáveis zkk modelam os nós escolhidos como nós concentradores, portanto, elas são iguais a 1 quando o nó k é escolhido como nó concentrador e 0 caso contrário. As variáveis ykm ∈ {0,1} modelam a árvore de conexão dos nós concentradores. Essas variáveis são iguais a 1 quando os nós concentradores k e

m estão conectados e 0 caso contrário. Já as variáveis zik, com i 6= k, modelam a alocação do nó cliente i a um nó concentrador k. Essas variáveis são iguais a 1 quando o nó cliente i ∈ N está alocado ao nó concentrador k ∈ N, e 0 caso contrário. As variáveis xikm∈R+ modelam a quantidade de fluxo com origem no nó i∈N e com destino a todos os outros nós do conjuntoN, transportado através do arco(k, m)∈A, onde k, m∈N são nós concentradores e estão conectados, isto é, ykm = 1.

(58)

34

Capítulo 3. Problema de Localização de Concentradores em Árvore

restrições (3.4) e (3.5) conectam as variáveisyez. Elas garantem que nós clientes só podem ser alocados a nós concentradores e que a árvore de conexão, definida pelas variáveis ykm, só exista entre os nós concentradores. Assim essas restrições impõem ykm = 0, caso k ∈ N ou m ∈ N não sejam concentradores. Quando

ykm = 1, a restrição (3.6) garante que a quantidade de fluxo com origem no nó

i ∈ N, transportado através do arco (k, m), é limitado pela oferta de fluxo com origem no nó i. Já quando ykm = 0, essa restrição garante que o fluxo com origem no nó i ∈ N não será transportado através do arco (k, m). As restrições (3.7) garantem a conservação de fluxo com origem no nó i ∈ N e destino no nó

k ∈ N. O lado esquerdo dessas restrições corresponde ao fluxo com origem no nó i∈ N transportado diretamente para o nó k ∈ N, caso i seja um nó cliente e esteja alocado para o nó concentrador k, somado com o fluxo com origem no nó

(59)

3.2. Formulações de Programação Linear Inteira Mista para o

THLP 35

min X

i∈N X k∈N

(cikOi+ckiDi)zik+ X i∈N

X k∈N

X m∈N,m6=k

αckmxikm (3.1)

sujeito a:

X k∈N

zik = 1 ∀i∈N (3.2)

X k∈N

zkk =p (3.3)

zkm+ykm ≤zmm ∀k, m ∈N;m > k (3.4)

zmk+ykm ≤zkk ∀k, m∈N;m > k (3.5)

xikm+ximk ≤Oiykm ∀i, k, m∈N;m > k (3.6)

Oizik+ X m∈N,m6=k

ximk = X m∈N,m6=k

xikm+ X m∈N

Wimzmk ∀i, k ∈N;k 6=i (3.7)

X k∈N

X m∈N

ykm =p−1 (3.8)

xikm≥0 ∀i, k, m∈N (3.9)

zkm, ykm ∈ {0,1} ∀k, m∈N (3.10)

A segunda formulação apresentada para o THLP, proposta por Contreras et. al.[17], contém O(|N|2) variáveis binárias, O(|N|4) variáveis contínuas e O(|N|4) restrições. Assim como na formulação anterior as variáveis zkk indicam os nós concentradores, as variáveis zik, com i 6= k, representam as alocações dos nós clientes aos nós concentradores e as variáveisykm definem as arestas da árvore que conecta os nós concentradores. Já as variáveis x possuem outro significado nessa formulação. As variáveisxkm

ij definem o caminho pelo qual o fluxo com origem no nó i∈N e destino no nój ∈N é transportado. Quandoxkm

(60)

36

Capítulo 3. Problema de Localização de Concentradores em Árvore

no nó i e destino no nó j é transportado através do arco (k, m), caso contrário

xkm

ij = 0. A formulação é apresentada em (3.11)-(3.24). A função objetivo (3.11) minimiza a soma (i) dos custos de transportar o fluxo dos nós clientes até os nós concentradores com (ii) os custos de transportar o fluxo, com o fator de desconto aplicado, entre os nós concentradores. As restrições (3.12) e (3.13) garantem que todo nó cliente i∈ N será alocado a exatamente um nó concentrador k ∈N. As restrições (3.14) e (3.15) definem que ykm só pode pertencer a árvore que conecta os nós concentradores, quando k em são nós concentradores.

A restrição (3.16) assegura que exatamente p nós do conjunto N são sele-cionados para serem nós concentradores enquanto a restrição (3.17) garante que esses nós concentradores sejam conectados através dep−1arestas, definidas pelas variáveisy. As restrições (3.18) garantem que o fluxo com origem no nó ie destino no nó j será transportado através do único caminho que conectam esses nós. As restrições (3.19) garantem que o fluxo com origem no nó i ∈ N e destino no nó

j ∈N pode ser transportado através do arco(k, m), sek emsão nós concentrado-res e estão conectados. As concentrado-restrições (3.20) e (3.21) estabelecem que o fluxo com origem no nó i ∈ N e destino no nó j ∈ N só pode ser transportado pelo arco

(61)

3.2. Formulações de Programação Linear Inteira Mista para o

THLP 37

min X

i∈N X k∈N

k6=i

(cikOi+ckiDi)zik+

X i∈N

X j∈N

j>i

X k∈N

X m∈N

m6=k

(ckmWij +cmkWji)×α×xkmij (3.11)

sujeito a:

zik ≤zkk ∀i, k ∈N :i6=k (3.12)

X k∈N

zik = 1 ∀i∈N (3.13)

ykm ≤zkk ∀k, m∈N :k < m (3.14)

ykm ≤zmm ∀k, m∈N :k < m (3.15)

X k∈N

zkk =p (3.16)

X k∈N

X m

m>k∈N

ykm = X k∈N

(62)

38

Capítulo 3. Problema de Localização de Concentradores em Árvore

X k

k6=m∈N

xkm

ij +zim= X r

r6=m∈N

xmr

ij +zjm ∀i, j, m ∈N :i < j, m (3.18)

xkmij +x mk

ij ≤ykm ∀i, j, k, m∈N :i < j, k < m (3.19) X

m

m6=k∈N

xkm

ij ≤zkk ∀i, j, k ∈N :i < j, k (3.20)

X m

m6=k∈N

xmk

ij ≤zkk ∀i, j, k ∈N :i < j, k (3.21)

xkmij ≥0 ∀i, j, k, m∈N :i < j, k6=m (3.22)

ykm ∈ {0,1} ∀k, m∈N :k < m (3.23)

zik ∈ {0,1} ∀i, k∈N (3.24)

3.3

Algoritmo de Decomposição de Benders

Nesta seção é descrito o algoritmo de decomposição de Benders para o THLP pro-posto por de Sá et. al.[56]. Essa decomposição de Benders utiliza a formulação linear inteira mista apresentada em [17] pois, segundo de Sá et. al.[56], essa formu-lação apresenta uma relaxação linear melhor quando comparada com a relaxação linear da formulação apresentada em [18]. Entretanto, os tempos computacionais para resolver essa relaxação em instâncias de THLP com até 25 nós chega a 2300 segundos [17].

(63)

3.3. Algoritmo de Decomposição de Benders 39

problema mestre o algoritmo de decomposição de Benders resolve o subproblema. Em seguida, cortes válidos obtidos através da solução dos subproblemas são adi-cionados ao problema mestre que é resolvido novamente. Esse ciclo se repete até que a solução ótima do problema seja encontrada ou outro critério de parada seja satisfeito. Os cortes adicionados ao problema mestre, a partir da solução do sub-problema, são cortes de otimalidade ou de viabilidade. Sempre que o subproblema possuir uma solução ilimitada, o corte adicionado ao problema mestre será um corte de viabilidade. Já quando o subproblema possuir solução ótima, o corte adicionado ao problema mestre será um corte de otimalidade.

A decomposição de Benders proposta em [56] para a modelagem do THLP apresentada em [17] consiste em manter as variáveisz ey no problema mestre e as variáveisxno subproblema, tornando o subproblema um problema de programação linear. Com essa separação de variáveis, um dos objetivos do problema mestre é encontrar uma árvore conectando os nós concentradores e os nós clientes. Enquanto o objetivo do subproblema é encontrar o valor mínimo de transportar o fluxo entre todos os pares de nós i, j ∈ N, com i < j. Esse subproblema possui O(|N|4) variáveis lineares e pode ser decomposto emO(|N|2)subproblemas independentes, um para cada par de nós i, j ∈N. Cada um desses subproblemas possui O(|N2|) variáveis lineares. Assim, o objetivo de cada um deles é encontrar o valor mínimo de transportar o fluxo entre cada par de nós i, j ∈ N. Vale ressaltar que nos subproblemas só existe um caminho entre cada par de nós i, j ∈ N, pois os nós estão conectados por uma árvore, o que facilita a resolução desses subproblemas. Na próxima seção, essa característica é explorada para criar um algoritmo eficiente para resolver os subproblemas.

(64)

forma-40

Capítulo 3. Problema de Localização de Concentradores em Árvore

dos pela função objetivo (3.25) e as restrições (3.26)-(3.30). Essas restrições são semelhantes, respectivamente, as restrições (3.18)-(3.22). A diferença entre elas é que as restrições (3.26)-(3.30) possuem constantes z e y enquanto as restrições (3.18)-(3.22) possuem variáveis z e y.

min Q(i, j) = X k∈N

X m

m6=k∈N

(ckmWij+cmkWji)×α×xkmij (3.25)

sujeito a:

X k

k6=m∈N

xkmij − X r

r6=m∈N

xmrij =zjm−zim ∀m∈N (3.26)

xkm ij +x

mk

ij ≤ykm ∀k, m∈N :k < m (3.27)

X m

m6=k∈N

xkmij ≤zkk ∀k ∈N (3.28)

X m

m6=k∈N

xmk

ij ≤zkk ∀k ∈N (3.29)

xkmij ≥0 ∀k, m∈N :k 6=m (3.30)

Após associar as variáveis uijm, eijkm, sijk e tijm, respectivamente, às res-trições (3.26)-(3.29), o dual do subproblema para cada par de nós i, j ∈ N, com

(65)

3.3. Algoritmo de Decomposição de Benders 41

max Q(i, j) = X m∈N

(zjm−zim)uijm− X k∈N

X m

k<m∈N

ykmeijkm− X k∈N

zkk(sijk+tijk)

(3.31)

sujeito a:

uijm−uijk−eijkm−sijk−tijm ≤α(ckmWij +cmkWji) ∀k, m∈N :k < m

(3.32)

uijm−uijk−eijmk−sijk−tijm ≤α(ckmWij +cmkWji) ∀k, m∈N :k > m

(3.33)

uijm ∈R ∀m∈N (3.34)

eijkm≥0 ∀k, m∈N :k < m (3.35)

tijm ≥0 m ∈N (3.36)

sijm ≥0 ∀m∈N (3.37)

Já o problema mestre é formado pela função objetivo (3.38) e as restrições (3.12)-(3.17), (3.23), (3.24) e (3.39)-(3.41). Nesse problema as variáveis ηij, uma para cada subproblema, representa o custo da solução ótima do subproblema. As restrições (3.39) e (3.40) são, respectivamente, os cortes de otimalidade e viabili-dade adicionados a partir de uma solução do dual do subproblema. Nessas restri-ções, os conjuntosHeGsão, respectivamente, o conjunto de cortes de otimalidade e de viabilidade.

(66)

42

Capítulo 3. Problema de Localização de Concentradores em Árvore

problema. Quando os nós concentradores não são conectados por meio de uma árvore na solução do problema mestre, os subproblemas são ilimitados [56]. Assim, cortes de viabilidade devem ser adicionados ao problema mestre. Esses cortes não ajudam a melhorar o limite inferior da solução do THLP e portanto devem ser evitados [56]. Para evitar que os subproblemas sejam ilimitados as restrições (3.42)-(3.50) são adicionadas ao problema mestre. Essas restrições garantem que a solução do problema mestre forme uma árvore conectando os nós concentradores. A ideia dessas restrições é formar uma árvore a partir de um novo nó raiz até todos os nós concentradores. Para isso, o nó raiz possui p unidades de fluxo que devem ser enviadas para os nós concentradores, sendo que cada nó concentrador deve receber exatamente uma unidade de fluxo.

min X

i∈N X k∈N,k6=i

(cikOi+ckiDi)zik+ X i∈N

X j∈N,j>i

ηij (3.38)

sujeito a:

(3.12)−(3.17),(3.23),(3.24)

ηij ≥ X m∈N

(zjm−zim)uhijm− X k∈N

X m

k<m∈N

ykmehijkm

−X

k∈N

zkk(shijk+t h

ijk)∀i, j ∈N, h∈H :i < j (3.39)

X m∈N

(zjm−zim)uhijm − X k∈N

X m

k<m∈N

ykmehijkm−

X k∈N

zkk(shijk+t h

ijk)≤0 ∀i < j i, j ∈N h∈G (3.40)

(67)

3.3. Algoritmo de Decomposição de Benders 43

(68)

44

Capítulo 3. Problema de Localização de Concentradores em Árvore

X m∈N

f0m = X k∈N

zkk (3.42)

X m∈N∪{0}:m6=k

fmk− X m∈N:m6=k

fkm =zkk ∀k ∈N (3.43)

fkm ≤ |N|ykm ∀k, m∈N :k < m (3.44)

fkm ≤ |N|ymk ∀k, m∈N :k > m (3.45)

f0k ≤ |N|qk ∀k ∈N (3.46)

X k∈N

qk = 1 (3.47)

qk≤zkk ∀k ∈N (3.48)

fkm ≥0 ∀k ∈N ∪ {0}, m∈N :k 6=m (3.49)

qk∈ {0,1} ∀k ∈N (3.50)

O algoritmo de decomposição de Benders para o THLP proposto em [56] é divido em duas fases: a primeira fase, denominada aquecimento (do inglês

warm-start), tem o objetivo de acelerar a convergência do algoritmo de Benders. Para isso, essa fase resolve a relaxação linear do problema mestre. A segunda fase do algoritmo, denominada inteira (do inglêsinteger), tem como objetivo encontrar a

solução ótima para o THLP.

(69)

3.3. Algoritmo de Decomposição de Benders 45

são inicializadas e na linha 3 é gerada uma solução inicial (z0, y0), onde z0 kk = 12 para todo nók ∈N,z0

ik = 2|N1|−2 para toda alocação do nói∈N para o nók∈N, com i6=k e y0

km =

|N|−2

|N|2−|N| para todo k, m∈N, com k < m. Essa solução inicial

é uma solução viável não inteira para o problema mestre. O laço das linhas 4 - 19 é executado cinco vezes. Nas linhas 5, 6 e 7, os seguintes passos são realizados, respectivamente: (i) os subproblemas com o parâmetro (z0, y0)são resolvidos, (ii) os cortes de otimalidade são adicionados ao problema mestre que (iii) é então resolvido. Em seguida, nas linhas 8 e 9 são atualizados respectivamente, a solução do problema mestre e o valor do limite inferior do THLP, obtido pela solução do problema mestre. Posteriormente, na linha 10, os subproblemas parametrizados com a solução atual do problema mestre são resolvidos. As linhas 12 e 13 são executadas se o subproblema for ilimitado, caso contrário as linhas 15 e 16 serão executadas. A linha 12 adiciona os cortes de viabilidade no problema mestre e a linha 13 encontra o melhor valor de λ para gerar uma nova solução viável a partir de (z0, y0). A linha 15 adiciona os cortes de otimalidade no problema mestre e a linha 16 fixa o valor do parâmetro λ. A linha 18 atualiza a solução inicial

(z0, y0). Essa nova solução é uma combinação linear convexa da solução (z0, y0)

com a solução atual (z, y) do problema mestre. A linha 19 atualiza o número de iterações executadas.

(70)

46

Capítulo 3. Problema de Localização de Concentradores em Árvore

1 begin

2 LB ← 0, h←0

3 Encontrar uma solução inicial (z0, y0) 4 while h < 5 do

5 Resolver subproblemas com (z0, y0)

6 Adicionar os cortes (3.39) para o problema mestre 7 Resolver o problema mestre

8 (zh, yh) ←Solução do problema mestre 9 LB ← Valor da solução do problema mestre 10 Resolver os subproblemas com (zh,yh) 11 if Subproblema é ilimitado then

12 Adicionar os cortes (3.40) no problema mestre 13 Encontrar o melhor valor para λ

14 else

15 Adicionar os cortes (3.39) no problema mestre

16 λ←0.5

17 end

18 (z0, y0) ← (1 - λ)(z0, y0) + λ(zh, yh)

19 h ←h + 1

20 end

21 end

Algoritmo 1: Fase aquecimento do algoritmo de decomposição de Ben-ders para o THLP

Referências

Documentos relacionados

A assistência da equipe de enfermagem para a pessoa portadora de Diabetes Mellitus deve ser desenvolvida para um processo de educação em saúde que contribua para que a

Ninguém quer essa vida assim não Zambi.. Eu não quero as crianças

servidores, software, equipamento de rede, etc, clientes da IaaS essencialmente alugam estes recursos como um serviço terceirizado completo...

1- Indica com P, se a frase estiver na voz passiva e com A se estiver na ativa. Depois, passa-as para a outra forma. a) Vimos um cisne moribundo.. Assinala com um X o

1- Indica com P, se a frase estiver na voz passiva e com A se estiver na ativa. Depois, passa-as para a outra forma.. Assinala com um X o retângulo correspondente.. Derivada

Hoje o gasto com a saúde equivale a aproximada- mente 8% do Produto Interno Bruto (PIB), sendo que, dessa porcentagem, o setor privado gasta mais que o setor público (Portal

A Figura 17 apresenta os resultados obtidos por meio da análise de DSC para a amostra inicial da blenda PBAT/PHBH-0 e para as amostras PBAT/PHBH-4, PBAT/PHBH-8 e

Cultura Cultura Processos Processos Liderança Liderança early involvement effective project management design and Inovação Inovação Times e pessoas Times e pessoas Capacidade