Acessibilidade / Reportar erro

A relaxação Lagrangeana/surrogate e o método de geração de colunas: novos limitantes e novas colunas

Resumos

Os métodos de geração de colunas e o de decomposição de Dantzig-Wolfe ficaram conhecidos como métodos eficientes para o tratamento de problemas de programação linear com grande número de variáveis. Um problema mestre restrito é identificado e novas colunas são geradas através de um subproblema. Também é bem conhecido que estes métodos sofrem de problemas de estabilização. Para amenizar estes problemas, as variáveis duais tem sido controladas de várias maneiras, em geral, restringindo sua norma para evitar grandes variações. A relaxação Lagrangeana/surrogate foi proposta recentemente para estabilização de métodos subgradientes. Considera-se neste trabalho a combinação do método de geração de colunas e a relaxação Lagrangeana/surrogate como uma proposta de estabilização. Alguns resultados computacionais são apresentados para problemas de p-medianas e várias aplicações são sugeridas. Algumas questões em aberto são levantadas para futura pesquisa.

métodos de estabilização; relaxação Lagrangeana/surrogate; geração de colunas


Column generation and Dantzig-Wolfe decomposition are very successful methods for large-scale linear programming problems. It is also well known the instability of the overall process. Stabilizing methods work constraining the norm of the dual vector arising from restricted masters. This work shows how to combine the Lagrangean/surrogate relaxation and column generation aiming a stabilized method.

stabilizing methods; Lagrangean/surrogate relaxation; column generation


A relaxação Lagrangeana/surrogate e o método de geração de colunas: novos limitantes e novas colunas

Luiz A. N. LorenaI, * * Corresponding author / autor para quem as correspondências devem ser encaminhadas ; Marcos A. PereiraI; Silvely N. A. SalomãoII

ILaboratório Associado de Computação e Matemática Aplicada – LAC Instituto Nacional de Pesquisas Espaciais – INPE São José dos Campos – SP. lorena@lac.inpe.br, marcos@lac.inpe.br

IIFCT/UNESP Campus de Presidente Prudente Universidade Estadual Paulista Presidente Prudente – SP. silvely@prudente.unesp.br

RESUMO

Os métodos de geração de colunas e o de decomposição de Dantzig-Wolfe ficaram conhecidos como métodos eficientes para o tratamento de problemas de programação linear com grande número de variáveis. Um problema mestre restrito é identificado e novas colunas são geradas através de um subproblema. Também é bem conhecido que estes métodos sofrem de problemas de estabilização. Para amenizar estes problemas, as variáveis duais tem sido controladas de várias maneiras, em geral, restringindo sua norma para evitar grandes variações. A relaxação Lagrangeana/surrogate foi proposta recentemente para estabilização de métodos subgradientes. Considera-se neste trabalho a combinação do método de geração de colunas e a relaxação Lagrangeana/surrogate como uma proposta de estabilização. Alguns resultados computacionais são apresentados para problemas de p-medianas e várias aplicações são sugeridas. Algumas questões em aberto são levantadas para futura pesquisa.

Palavras-chave: métodos de estabilização, relaxação Lagrangeana/surrogate, geração de colunas.

ABSTRACT

Column generation and Dantzig-Wolfe decomposition are very successful methods for large-scale linear programming problems. It is also well known the instability of the overall process. Stabilizing methods work constraining the norm of the dual vector arising from restricted masters. This work shows how to combine the Lagrangean/surrogate relaxation and column generation aiming a stabilized method.

Keywords: stabilizing methods, Lagrangean/surrogate relaxation, column generation.

1. Introdução

Os recentes avanços em informática, com a construção de equipamentos mais rápidos e confiáveis, proporcionaram o desenvolvimento de sistemas mais robustos para Programação Matemática (CPLEX (1999)), permitindo a resolução de problemas de grande porte. Tais ferramentas permitem que problemas inerentemente complexos também possam ser resolvidos em tempo computacional aceitável, através da utilização de técnicas combinadas como, por exemplo, o Método de Geração de Colunas aplicado a problemas de Programação Inteira. Baseado no trabalho de Dantzig & Wolfe (1960), a primeira aplicação prática desta técnica foi na determinação de padrões de corte unidimensionais (Gilmore & Gomory (1961), (1963)) e, desde então, seu uso difundiu-se de forma intensa (Cook & Rich (1999), Cordeau et al. (2000), Day & Ryan (1977), Desrochers & Soumis (1989), Desrochers et al. (1992), Lorena & Senne (2002), Neame (1999), Savelsbergh (1997), Senne & Lorena (2001), Valério de Carvalho (1996), Vance (1993) e Vance et al. (1994)).

A técnica de geração de colunas pode ser aplicada a problemas lineares de grandes dimensões, no caso de não se dispor de todas a colunas a priori, ou quando se pretende resolver um problema utilizando a decomposição de Dantzig-Wolfe, onde as colunas correspondem aos pontos extremos do conjunto convexo de soluções factíveis do problema. Neste caso, o algoritmo para resolução alterna entre um subproblema e um problema mestre restrito. A partir de um conjunto inicial de colunas, resolve-se o problema mestre, obtendo-se as variáveis duais que serão utilizadas pelo subproblema para determinar novas colunas a serem consideradas no problema mestre.

Abordagens baseadas na técnica de geração de colunas têm aparecido em um grande número de trabalhos recentes em alternativa aos métodos não lineares baseados em relaxação Lagrangeana (métodos de subgradientes, bundle) para resolver problemas inteiros de grande porte (Barnhart et al. (1998)). Uma pesquisa no Web of Science em 27/11/2001, com o argumento "column generation", retornou 220 trabalhos, 93 apenas nos últimos 3 anos.

Sabe-se que aplicação direta do método de geração de colunas freqüentemente produz um número muito grande colunas que não são relevantes para a solução final, comprometendo assim a convergência para a solução do problema e produzindo os chamados problemas de estabilização. Nestes casos, observa-se que as variáveis duais oscilam em torno da solução dual ótima, logo métodos que previnam tal comportamento podem acelerar a resolução do problema. Dentre estes merecem destaque: Método Boxstep (Marsten et al. (1975)), que restringe o espaço de busca de soluções duais a uma região limitada tendo a solução dual atual como centro; Método Analytic Centre Cutting Plane (du Merle et al. (1998)), que usa o centro analítico de uma região da função dual como solução, no lugar da solução ótima, não permitindo assim mudanças muito drásticas entre as soluções duais de duas iterações consecutivas; Métodos Bundle (Marsten et al. (1975)), que combinam regiões de confiança e penalizações para que as soluções duais não variem muito de uma iteração para outra. Outros métodos estão descritos em Neame (1999).

Neste trabalho pretende-se explorar a equivalência entre o método de geração de colunas, resultante da Decomposição de Dantzig-Wolfe do problema original, e o Método de Planos de Corte (Kelley (1960)) para resolver o problema Lagrangeano associado. Nossa proposta é discutir e sugerir temas de pesquisas decorrentes da aplicação da relaxação Lagrangeana/surrogate descrita em Narciso & Lorena (1999) como uma alternativa de estabilização do processo de geração de colunas, visando obter soluções duais de melhor qualidade, acelerando a resolução do problema original.

O trabalho está organizado da seguinte forma. Na Seção 2 descrevemos de forma abreviada o processo de geração de colunas, a decomposição de Dantzig-Wolfe e a relaxação Lagrangeana, aplicados a um problema de programação linear inteira. Na Seção 3 descrevemos o uso combinado da relaxação Lagrangeana/surrogate e o método de geração de colunas. Algumas possíveis aplicações são propostas na Seção 4 e na Seção 5 são apresentadas algumas questões em aberto sobre o assunto.

2. Geração de colunas

Problemas de Programação Inteira consideram a otimização de uma função objetivo sujeita a restrições sobre as variáveis, sendo que algumas ou todas as variáveis devem assumir valores inteiros. Em particular, pode-se considerar que a função objetivo e as equações que formam o conjunto de restrições do problema sejam lineares.

Para facilidade de exposição, considere o seguinte problema de Programação Inteira:

sendo x o vetor n-dimensional das variáveis inteiras do problema.

O conjunto de restrições

x = pode ser particionado de forma a obter dois conjuntos de restrições, onde um deles apresente alguma estrutura que possa ser explorada de forma vantajosa. Assim, após o particionamento, o problema pode ser reescrito como:

Definindo W = Zn Ç {x : A'x = b'}, o problema será reformulado como:

Supondo que o conjunto W é finito, ou seja, o poliedro representado por {x : A'x = b'} é limitado, e {xk : k Î K} é o conjunto dos pontos extremos da envoltória convexa de W, conv(W), todo ponto x Î W pode ser escrito como a seguinte combinação linear convexa de um número finito de pontos extremos de W:

2.1 Relaxação Lagrangeana

Sendo l o vetor das variáveis duais associadas às restrições Ax = b, a relaxação Lagrangeana de (2.2) está dada por:

Considerando o conjunto de todos os pontos extremos de conv(W), e observando que otimizar zRL(l) é equivalente a maximizar uma função linear sobre W, então existe um ponto extremo de conv(W) que corresponde ao valor máximo. Assim, (2.4) pode ser reescrito como:

que é uma função convexa linear por partes em l.

O melhor valor de limitante superior para zLR(l) é obtido resolvendo o problema dual Lagrangeano:

que pode ser reescrito como:

ou como o seguinte problema de Programação Linear:

Em problemas com um grande número de variáveis (colunas), onde o conjunto K dos índices dos pontos extremos de conv(W) não é conhecido a priori, Kelley (1960) propõe utilizar as soluções duais ótimas e de (2.5), obtidas numa dada iteração l para algum Kl Í K, no seguinte subproblema:

obtendo a solução ótima . A diferença zSP() – é chamada custo reduzido, e quando zSP() < , então o conjunto Kl contém uma base ótima para o problema original, caso contrário, a restrição (ou corte) c–A é incorporada como uma nova linha ao problema (2.5), faz-se Kl+1 = Kl È {} e o problema é novamente resolvido. Como proposta para acelerar a resolução do problema original, qualquer coluna xpsatisfazendo < cxp - A xp pode ser incluída ao conjunto Kl.

Este método é equivalente ao processo de geração colunas que será apresentado a seguir, e resulta do fato que o dual do problema (2.5) equivale ao Problema Mestre obtido da relaxação de Programação Linear da decomposição de Dantzig-Wolfe do problema original.

2.2 A Decomposição de Dantzig-Wolfe

Uma outra proposta para resolver (2.1) de forma ótima consiste em utilizar a representação das soluções como combinação linear dos pontos extremos do espaço de otimização diretamente na formulação do problema. Nesse sentido, substituindo a expressão (2.3) na formulação (2.2) tem-se a seguinte decomposição de Dantzig-Wolfe:

Tomando a relaxação de Programação Linear do problema acima, ou seja, permitindo que x Î conv(W), tem-se o seguinte problema mestre:

Numa dada iteração l do método de geração de colunas, seja Kl Í K um subconjunto dos pontos extremos de conv(W), definindo o seguinte problema mestre restrito:

Sendo e as soluções duais ótimas de (2.8), novas colunas podem ser calculadas como soluções do subproblema (2.6). As colunas xp que satisfizerem:

cxp – Axp –> 0

(custos reduzidos positivos) são incluídas em (2.8) e o problema mestre restrito é novamente resolvido, até que não seja mais possível obter colunas que melhorem o valor ótimo de (2.7).

O seguinte algoritmo geral pode ser adaptado para resolver problemas através do método de geração de colunas:

Passo 0: Determine um conjunto inicial K0 de colunas para o problema mestre. Faça l = 0;

Passo 1: Resolva a relaxação de Programação Linear do problema mestre restrito;

Passo 2: Utilize os valores duais ótimos obtidos no passo anterior e resolva um subproblema para obter novas colunas em W;

Passo 3: Adicione as colunas com custos reduzidos positivos à formulação do problema mestre restrito. Se não houver tais colunas, então PARE ® solução ótima.

Passo 4: Caso contrário, faça Kl ¬ K È {}, l ¬ l + 1 e vá para o passo 1;

3. A Relaxação Lagrangeana/surrogate e a geração de colunas

3.1 A relaxação Lagrangeana/surrogate

A relaxação Lagrangeana/surrogate combina de forma eficiente as relaxações Lagrangeana e surrogate de um determinado problema. A relaxação Lagrangeana é usada após a aplicação de uma relaxação do tipo surrogate em um conjunto de restrições pré-escolhido, onde as restrições são substituídas por apenas uma, modificada por um multiplicador multidimensional. Em seguida toma-se a relaxação Lagrangeana da restrição surrogate obtida. Isto induz a um dual local Lagrangeano na variável unidimensional, e esta otimização local tende a corrigir a norma do vetor de subgradientes, evitando fortes oscilações em métodos de otimização do dual Lagrangeano que usam subgradientes como direção de busca.

A relaxação Lagrangeana/surrogate foi aplicada com sucesso em diversos problemas de natureza combinatória (Lorena & Pereira (2002), Lorena & Senne (2002), Lorena et al. (2001), Narciso & Lorena (1999), Pereira & Lorena (2001), Senne & Lorena (2000)). A otimização local (dual Lagrangeano local) não necessita ser exata e uma busca unidimensional do tipo dicotômica é empregada. Esta otimização também não se mostrou necessária em todos os passos de métodos subgradientes, bastando encontrar o valor do multiplicador por algumas iterações iniciais.

Sendo l o multiplicador surrogate associado às restrições Ax = b, e t > 0 o multiplicador Lagrangeano associado à restrição surrogate lAx = lb, a relaxação Lagrangeana/surrogate de (2.2) está dada por:

É imediato que para t = 1, zRL (l)1 é a relaxação Lagrangeana usual (2.4). O multiplicador t é conhecido como multiplicador Lagrangeano/surrogate, e seu melhor valor t* é obtido fixando-se l e resolvendo-se por busca dicotômica o dual local:

3.2 Novos limitantes para geração de colunas

O processo de geração de colunas é geralmente instável (du Merle et al. (1999)). As colunas selecionadas podem melhorar marginalmente o valor da função objetivo do problema mestre, ou mesmo este valor pode ficar inalterado durante muitas iterações. Neste caso não se sabe se o processo está convergindo ou simplesmente está parado em algum ponto. O uso de limitantes superiores pode dar uma indicação de convergência do método de geração de colunas. Nesta sessão vamos apresentar o limite Lagrangeano/surrogate derivado diretamente do processo de geração de colunas, usando a variável dual multidimensional obtida na solução ótima do problema mestre restrito. Vamos mostrar também que o limite Lagrangeano e um limite conhecido como Limite de Farley (1990) são derivados diretamente do limite Lagrangeano/surrogate.

Vamos verificar o que ocorre quando um multiplicador Lagrangeano/surrogate é usado no custo reduzido. Tem-se:

ou equivalentemente:

CRt> {cx – tlAx} – m , "x ÎW, e {cx – tlAx} < CRt + m , "x ÎW,

o que indica que (tl, CRt + m) é uma solução viável para o problema (2.5). Portanto, como (2.8) e (2.5) são problemas primal e dual, tem-se

o que indica que tlb + CRt + m é um limite superior ao valor do problema mestre restrito.

Reescrevendo tlb + CRt + m, tem-se {cx + tl(b – Ax)}, que é a relaxação Lagrangeana/surrogate para os multiplicadores l e t.

Os seguintes casos particulares podem ocorrer:

  • para t = 1:

    Tem-se zPMR< l b + CR1 + m = {cx + l (b – Ax)}, que é o limite Lagrangeano tradicional (2.4);

  • para t = t*, solução de (3.2):

    Tem-se zPMR< t* lb + CRt* + m = {cx + t*l (b – Ax)}, que é o melhor limite Lagrangeano/surrogate (3.1); e

  • para t0 tal que {cx – t0lAx} = 0:

    Tem-se zPMR< t0l b, que é conhecido como limite de Farley para o caso particular em que c > 0 e x > 0.

É imediato que {cx + t*l(b – Ax)} < {cx + l(b – Ax)}, e que {cx + t*l(b – Ax)} < t0lb, pois 1 ¹ t0¹ t* (em geral). Portanto o melhor limite Lagrangeano/surrogate supera os limitantes Lagrangeano e o de Farley (quando este existe).

O limite Lagrangeano/surrogate foi usado nas aplicações de p-medianas (Senne & Lorena (2001) e Lorena & Senne (2002)) para acelerar o processo de parada do algoritmo de geração de colunas, apresentado na seção 2.2. O Passo 3 do algoritmo foi substituído por:

Passo 3a: Adicione as colunas com custos reduzidos positivos à formulação do problema mestre restrito. Se não houver tais colunas ou se [ {cx + t*l(b – Ax)} – zPMR] < 1, então PARE ® solução ótima.

A Figura 1 mostra um comportamento típico dos limites Lagrangeano e Lagrangeano/surrogate quando combinados com o processo de geração de colunas, para um problema de p-medianas com 900 vértices e 300 medianas (Senne & Lorena (2001)).


3.3 Gerando novas colunas

O subproblema gerador de colunas (2.6) pode ser modificado pelo multiplicador Lagrangeano/surrogate calculado em (3.2), obtendo-se o novo subproblema

Para t ¹ 1, os problemas (2.6) e (3.4) podem produzir colunas diferentes. Se as colunas xp obtidas em (3.4) satisfizerem cxp – l Axp – m > 0, estas poderão entrar como novas colunas no problema mestre restrito.

Senne & Lorena (2001) formularam o problema das p-medianas como um problema de particionamento de conjuntos. Na aplicação da técnica de geração de colunas, a relaxação Lagrangeana/surrogate demonstrou ser uma excelente alternativa para estabilização do método, fornecendo colunas mais produtivas que o método tradicional de geração de colunas, acelerando a solução do problema.

A Tabela 1 mostra um experimento realizado em uma instância do problema de p-medianas com 200 vértices e 5 medianas (Senne & Lorena (2001)). Foi imposto um número máximo de colunas através de uma medida limite para o custo reduzido das colunas presentes no problema mestre restrito. Os números entre parêntesis representam o método tradicional de geração de colunas enquanto que os outros resultados referem-se ao uso das colunas obtidas em (3.4) para t = t*, solução de (3.2).

A Figura 2 ilustra os resultados da Tabela 1. Observe que mesmo quando um limite pequeno de colunas é admitido ao problema mestre restrito essas colunas são produtivas quando calculadas pela expressão (3.4). O método tradicional de geração de colunas permaneceu sem melhora de limites por muitas iterações.


As tabelas 3 e 4 mostram testes computacionais (extraídos de Lorena & Senne (2002)), onde são consideradas instâncias de larga escala com uma aplicação ao problema capacitado de p-medianas. Foi considerada a instância Pcb3038, obtida da TSPLIB (Reinelt (1994)), e modificada para contemplar as capacidades nos nós da rede. Estas capacidades foram então geradas, como:

e o número máximo de colunas admissíveis no problema mestre foi fixado em 20000. Estas instâncias estão disponíveis em http://www.lac.inpe.br/~lorena/instancias.html. Como pode-se observar diretamente nas tabelas, a combinação da relaxação Lagrangeana/surrogate com o processo de geração de colunas foi capaz de obter resultados computacionais de qualidade na metade do tempo usado pelo processo tradicional de geração de colunas.

4. Algumas aplicações

A relaxação Lagrangeana/surrogate foi aplicada a diversos problemas de Otimização Combinatória. O método tradicional de subgradientes foi usado na otimização do dual. Nesta seção descrevemos algumas possíveis aplicações do uso combinado de geração de colunas e a relaxação Lagrangeana/surrogate. Algumas dessas aplicações já estão sendo desenvolvidas no LAC/INPE.

Somente o problema gerador de colunas correspondente a (3.4) será formulado e examinado para cada aplicação. Uma formulação completa dos problemas pode ser consultada em outros trabalhos (Cordeau et al. (2000), du Merle et al. (1999), Galvão (1981), Lorena & Senne (2002), Minoux (1987), Neame (1999), Savelsbergh (1997), Senne & Lorena (2001), Swain (1974), Valério de Carvalho (1996), Vance et al. (1994), Wolsey (1998)). Em todas as formulações que seguem, as variáveis duais l são obtidas da solução do correspondente problema mestre restrito, e o respectivo multiplicador Lagrangeano/surrogate t é obtido resolvendo-se o problema (3.2).

4.1 Problema das p-medianas

O problema de p-medianas consiste em decidir onde localizar p centros em uma rede composta por vértices e arestas, de forma a minimizar a soma de todas as distâncias de cada vértice ao centro mais próximo. Em alguns casos, quando uma demanda estiver associada a cada vértice, pode haver restrições na capacidade de atendimento dos centros (problema de p-medianas com restrições de capacidade) (Lorena & Senne (2002), Senne & Lorena (2001)).

Para o problema das p-medianas, a decomposição de Dantzig-Wolfe resulta no caso especial de conjunto ilimitado de pontos extremos, onde as restrições de convexidade não estarão presentes na formulação do problema mestre restrito. Entretanto, para problemas de clustering como este, aparecerá uma restrição adicional no problema mestre restrito. Esta restrição é do tipo

Esta restrição impõe que o número de medianas (clusters) deve ser respeitado.

Neste caso o subproblema gerador de colunas será dado por:

onde [dij]n x n é uma matriz simétrica que representa os custos (distâncias) entre os pontos i e j. Observe que dii = 0, "i Î N = {1, ..., n}. O subproblema (4.2) é resolvido por inspeção, verificando-se o sinal dos coeficientes (dij - tl j)de yj .

Para o caso capacitado, o subproblema gerador de colunas será:

onde Qi é a capacidade do nó i e qj é a demanda do nó j. Este problema é o conhecido Problema da Mochila, da classe NP-hard, mas bem resolvido para instâncias grandes por algoritmos tipo branch-and-bound.

Seja g a variável dual do problema mestre restrito correspondente à restrição (4.1). Se as colunas obtidas em (4.2) e (4.3) satisfizerem (dij- pj )yj< | g |, estas poderão entrar como novas colunas no problema mestre restrito.

A solução dos problemas (4.2) e (4.3) pode ser sensivelmente alterada por diferentes valores de t. Em Lorena & Senne (2002) e Senne & Lorena (2001) verificou-se, em testes computacionais, que quando t* (melhor multiplicador Lagrangeano/surrogate) é usado em (4.2) e (4.3), seus valores ficaram restritos ao intervalo (0,1] (tendendo a 1 quando o processo converge) e uma análise simples com estes valores nas expressões (4.2) e (4.3) mostrou que colunas de menor custo são selecionadas no problema mestre restrito como conseqüência de um menor numero de centros alocados aos clusters. Ainda estamos verificando se este comportamento é repetido em outros problemas.

4.2 Problema generalizado de atribuição

O problema generalizado de atribuição consiste em encontrar a maneira mais vantajosa de distribuir n tarefas a m máquinas de modo que cada tarefa seja atribuída a uma única máquina que possui capacidade limitada.

Tal como o problema de p-medianas este também é um problema de clustering e as restrições adicionais ao problema mestre restrito serão da forma:

Após a resolução do respectivo problema mestre restrito, a busca por novas colunas pode ser realizada resolvendo os seguintes subproblemas da mochila (para i = 1, ..., m) (Savelsbergh (1997)):

onde:

– wij é um número positivo inteiro que representa o tempo que a máquina i leva para fazer o trabalho j, quando i está alocada para j;

– ci é um inteiro positivo que representa o tempo total disponível da máquina i;

– pij é um inteiro positivo que representa o lucro produzido quando a máquina i está alocada para j.

Seja vi o custo dual ótimo associado à restrição (4.4) correspondente ao agente i no problema mestre restrito. Se para algum i, (pij- lj )yij> 0, então a coluna pode ser adicionada ao problema mestre restrito.

As soluções dos problemas (4.5) podem ser sensivelmente alteradas por diferentes valores de t. É imediato que valores de t restritos ao intervalo (0,1] favorecem a escolha de colunas de maior retorno.

4.3 Problema de roteamento de veículos com janelas de tempo

Sejam V o conjunto de veículos (idênticos) e C = {1, ..., n} o conjunto de clientes a serem atendidos, interligados a um depósito por um grafo direcionado (Cook & Rich (1999), Cordeau et al. (2000), Desrochers et al. (1992), Homberger (2001), Kallehauge et al. (2000)). Usando os multiplicadores duais li, i ÎC, os coeficientes que serão utilizados na função objetivo de cada subproblema k ÎV serão dados por:

O subproblema k Î V será o seguinte problema de caminho mínimo com restrições de tempo e capacidade (Cordeau et al. (2000)):

Nas restrições (4.6) impõe-se que a demanda total dos clientes atendidos por cada veículo não deve exceder sua capacidade. Os três conjuntos de restrições a seguir são restrições de fluxo: as restrições (4.7) impõem que cada veículo deve deixar o depósito uma única vez; (4.8) especificam que cada cliente visitado é deixado e (4.9) garantem que todos os veículos devem retornar ao depósito apenas uma vez. As restrições de precedência (4.10) determinam que um veículo, partindo do cliente i, não deve chegar ao cliente j antes do instante sik + tij, onde M é um valor arbitrariamente grande. As restrições (4.11) garantem que o início de atendimento de cada cliente seja executado dentro do intervalo especificado pela sua janela de tempo. A natureza binária das variáveis yijk é dada pelo conjunto de restrições (4.12).

O vetor de multiplicadores duais l = (l1, ..., l|C|) reflete o custo de atendimento de cada cliente i ÎC. Por definição, li é irrestrito em sinal e t > 0. Os custos dos arcos para o subproblema são calculados como em (4.6). Se predominantemente t li > cij, o subproblema tenderá a produzir rotas mais longas. Caso o predomínio seja de tli < cij, então haverá preferência por rotas mais curtas. Kohl (1995) observa que a dificuldade de resolução do subproblema é diretamente proporcional à norma dos multiplicadores envolvidos.

Para valores de t próximos de 0, a norma do vetor lé sempre modificada de forma que rotas mais curtas sejam produzidas em maiores quantidades (mais colunas são geradas). À medida que t tende para 1, os valores de li, i Î C, contribuem mais efetivamente para a determinação do comprimento das melhores rotas.

4.4 Problema simétrico do caixeiro viajante

Considere um Problema do Caixeiro Viajante definido em um grafo G = (V,E), V = {1, ..., n}, e seja a variável binária yij igual a 1 se a aresta (i, j) Î E é usada no caminho ótimo do caixeiro. Define-se ainda a matriz de custos (ou distâncias) C = [ cij], onde cij= cji para todo i, j ÎV, que está associada a E (Reinelt (1994)).

O subproblema será o seguinte (Wolsey (1998)):

onde y é uma solução viável para o problema de 1-árvore geradora de peso mínimo, que pode ser obtida tomando a arvore geradora de menor custo possuindo o conjunto de vértices V\{1} e duas arestas distintas de mínimo custo que ligam esta árvore ao vértice 1.

A matriz de custos de (4.13) é cij - tlk que representa os custos modificados das arestas do grafo original. É imediato que um valor de t ¹ 1 pode modificar a solução do problema de 1-árvore geradora de peso mínimo. Em particular, se os valores de t* ficarem restritos ao intervalo (0,1], colunas de menor custo seriam selecionadas no problema mestre restrito como conseqüência de uma redução no custo das 1-árvores que tendem a tours do caixeiro em sua seqüência de soluções.

4.5 Problema binário de cortes

O problema binário de cortes consiste em determinar o número mínimo de rolos de comprimento L necessários para atender uma demanda de rolos de comprimentos menores ai, i = 1, ..., n (Vance (1993), Vance et al. (1994)).

Neste caso, as colunas do problema mestre restrito representam padrões de corte factíveis para uma peça de comprimento L. Assim, os novos padrões (colunas) são gerados resolvendo o seguinte subproblema da mochila 0-1:

onde yi = 1 se o item i está presente na nova coluna, ou yi = 0, caso contrário.

Sabe-se que o limite Lagrangeano/surrogate deve ser um bom limite dual para este problema. Seja yv uma solução viável para o problema (4.14)-(4.16). A consideração do melhor valor do multiplicador Lagrangeano/surrogate pode favorecer a determinação de tais soluções, produzindo colunas distintas da abordagem tradicional (t = 1). Se o custo reduzido, dado por (1 – lyv), for negativo, então a coluna respectiva é candidata a entrar no problema mestre restrito.

5. Questões em aberto

A complementação da teoria existente poderá ser feita através da formalização de resultados provenientes da resposta de algumas questões, como por exemplo:

a) Limitantes: Sabe-se que a relaxação Lagrangeana/surrogate fornece limitantes de melhor qualidade que a relaxação Lagrangeana usual (Narciso & Lorena (1999)). Pretende-se estabelecer relações entre os limitantes obtidos com estas relaxações e outros obtidos para esta classe de problemas, como por exemplo o de Farley (1990), específico para implementações com geração de colunas;

b) Métodos de estabilização: Avaliar a influência da relaxação Lagrangeana/surrogate e estabelecer relações com outros métodos de estabilização da técnica de geração de colunas (métodos de subgradientes, bundle, Boxstep, Analytic Centre Cutting Plane). Verificar se tais métodos podem se beneficiar ao serem combinados com a relaxação Lagrangeana/surrogate;

c) Complexidade do subproblema de geração de colunas: A relaxação Lagrangeana/ surrogate, quando aplicada a problemas com restrições adicionais de capacidades (mochilas) sofreu adaptações para permitir o cálculo do multiplicador Lagrangeano/ surrogate (abreviação no processo de busca de t). Serão conduzidos estudos para avaliar como essa busca seria afetada no caso combinado com a geração de colunas;

d) Resolução do subproblema: Sabe-se que o subproblema gerador de colunas não precisa ser resolvido na otimalidade para gerar novas colunas para o problema mestre restrito. Pretende-se explorar a influência do multiplicador Lagrangeana/surrogate no processo de geração de colunas, considerando-o na elaboração de novas heurísticas para o subproblema gerador de colunas;

e) Gerenciamento do número de colunas: Estudar o gerenciamento do número de colunas a serem consideradas no problema mestre restrito. Avaliar o compromisso quantidade ´ qualidade das colunas obtidas dos subproblemas (em Senne & Lorena (2001), a relaxação Lagrangeana/surrogate permitiu resolver problema de p-medianas com menos colunas);

f) Relaxação Lagrangeana/surrogate e o branch-and-price: o Método Branch-and-Price (Barnhart et al. (1998)) utiliza a técnica de geração de colunas em cada nó de uma árvore de busca branch-and-bound para obtenção de novas variáveis não básicas para o problema. Será explorada a possibilidade de adaptar a combinação relaxação Lagrangeana/surrogate e geração de colunas ao branch-and-price e verificar se há vantagens nessa adaptação.

6. Conclusões

Neste trabalho destacamos o uso da relaxação Lagrangeana/surrogate como um processo de estabilização do método de geração de colunas. Alguma experiência computacional foi reproduzida para o problema das p-medianas e outros problemas foram sugeridos para teste do algoritmo de estabilização.

A combinação da relaxação Lagrangeana/surrogate com o método de geração de colunas é feita através da teoria de decomposição de Dantig-Wolfe e o método de Kelley. Na identificação do limite Lagrangeano/surrogate é usado o multiplicador dual que surge na resolução do problema mestre restrito. A exploração desses limites ainda está em aberto. Assim como estão abertas várias questões colocadas no trabalho referentes ao uso eficiente do multiplicador Lagrangeano/surrogate no processo de geração de colunas.

As aplicações sugeridas são exemplos que estão sendo estudados no LAC/INPE, mas várias outras aplicações podem ser testadas, incluindo problemas de scheduling e novos problemas de clustering.

Agradecimentos

Os autores agradecem à Fundação de Amparo à Pesquisa do Estado de São Paulo – FAPESP (proc. 99/06954-7) pelo suporte financeiro. O segundo autor agradece também ao Conselho Nacional de Desenvolvimento Científico e Tecnológico – CNPq (proc. 380646/99-4).

Recebido em 02/2002, aceito em 11/2002 após 1 revisão

  • (1) Barnhart, C.; Johnson E.L.; Nemhauser G.L.; Savelsberg, M.W.P. & Vance, P.H. (1998). Branch-and-price: column generation for solving huge integer programs. Operations Research, 46, 316-329.
  • (2) Cook, W. & Rich, J.L. (1999). A parallel cutting plane algorithm for the vehicle routing problem with time windows. Relatório técnico, Computational and Applied Mathematics, Rice University, Houston.
  • (3) CPLEX 6.5. (1999). ILOG Inc., Cplex Division.
  • (4) Cordeau, J-F.; Desaulniers, G.; Desrosiers, J.; Solomon, M.M. & Soumis, F. (2000). The VRP with time windows. Les Cahiers du GERAD, relatório interno G-99-13, Canadá, 36p.
  • (5) Dantzig, G.B. & Wolfe, P. (1960). Decomposition principle for linear programs. Operations Research, 8, 101-111.
  • (6) Day, P.R. & Ryan, D.M. (1997). Flight Attendant Rostering for Short-Haul Airline Operations. Operations Research, 45, 649-661.
  • (7) Desrochers, M. & Soumis, F. (1989). A Column Generation Approach to the Urban Transit Crew Scheduling Problem. Transportation Science, 23, 1-13.
  • (8) Desrochers, M.; Desrosiers, J. & Solomon, M. (1992). A New Optimization Algorithm for the Vehicle Routing Problem with Time Windows. Operations Research, 40, 342-354.
  • (9) du Merle, O.; Goffin, J.L. & Vial, J.P. (1998). On Improvements to the Analytic Centre Cutting Plane Method. Computational Optimization and Applications, 11, 37-52.
  • (10) du Merle, O.; Villeneuve, D.; Desrosiers, J. & Hansen, P. (1999). Stabilized column generation. Discrete Mathematics, 194, 229-237.
  • (11) Farley, A.A. (1990). A note on bounding a class of linear programming problems, including cutting stock problems. Operations Research, 38, 992-993.
  • (12) Galvão, R.D. (1981). A Note on Garfinkel, Neebe and Rao's LP Decomposition for the p-Median Problem. Transportation Science, 15(3), 175-182.
  • (13) Garfinkel, R.S.; Neebe, W. & Rao, M.R. (1974). An Algorithm for the M-median Location Problem. Transportation Science, 8, 217-236.
  • (14) Gilmore, P.C. & Gomory, R.E. (1961). A linear programming approach to the cutting stock problem. Operations Research, 9, 849-859.
  • (15) Gilmore, P.C. & Gomory, R.E. (1963). A linear programming approach to the cutting stock problem part ii. Operations Research, 11, 863-888.
  • (16) Homberger, J. (2001). Extended Solomon's VRPTW instances (on web page). http://www.fernuni-hagen.de/WINF/touren/inhalte/probinst.htm
  • (17) Kallehauge, B.; Larsen, J. & Madsen, O.B.G. (2000). Lagrangean duality and non-differentiable optimization applied on routing with time windows experimental results. Relatório interno IMM-REP-2000-8, Department of Mathematical Modeling, Technical University of Denmark, Lyngby, Dinamarca.
  • (18) Kelley, J.E. (1960). The Cutting Plane Method for Solving Convex Programs. Journal of the SIAM, 8, 703-712.
  • (19) Kohl, N. (1995). Exact methods for time constrained routing and related scheduling problems. PhD Thesis, Department of Mathematical Modeling, Technical University of Denmark, DK-2800 Lyngby, Dinamarca, xviii + 234p.
  • (20) Lorena, L.A.N. & Pereira, M.A. (2002). A lagrangean/surrogate heuristic for the maximal covering problem using Hillsman's edition. International Journal of Industrial Engineering, 9, 57-67.
  • (21) Lorena, L.A.N. & Senne, E.L.F. (2002). Solving capacitated p-median problems by column generation. ISOLDE 9 Ninth International Symposium on Locational Decisions Canadá.
  • (22) Lorena, L.A.N.; Senne, E.L.F.; Paiva, J.A.C. & Pereira, M.A. (2001). Integração de modelos de localização a Sistemas de Informações Geográficas. Revista Gestão & Produção, 8(2), 180-195.
  • (23) Marsten, R.M.; Hogan, W. & Blankenship, J. (1975). The Boxstep method for large-scale optimization. Operations Research, 23, 389-405.
  • (24) Minoux, M. (1987). A Class of Combinatorial Problems with Polynomially Solvable Large Scale Set Covering/Set Partitioning Relaxations. RAIRO, 21(2), 105-136.
  • (25) Narciso, M.G. & Lorena, L.A.N. (1999). Lagrangean/surrogate Relaxation for Generalized Assignment Problems. European Journal of Operational Research, 114(1), 165-177.
  • (26) Neame, P.J. (1999). Nonsmooth Dual Methods in Integer Programming. PhD Thesis Department of Mathematics and Statistics, The University of Melbourne.
  • (27) Pereira, M.A. & Lorena, L.A.N. (2001). A heurística lagrangeana/surrogate aplicada ao problema de localização de máxima cobertura. Anais do XXXIII SBPO, Campos do Jordão, SP.
  • (28) Reinelt, G. (1994). The traveling salesman problem: computational solutions for TSP applications. Lecture Notes in Computer Science, 840, Springer Verlag, Berlin.
  • (29) Savelsbergh, M.W.P. (1997). A branch-and-price algorithm for the generalized assignment problem. Operations Research, 6, 831-841.
  • (30) Senne, E.L.F. & Lorena, L.A.N. (2000). Lagrangean/Surrogate Heuristics for p-Median Problems. In: Computing Tools for Modeling, Optimization and Simulation: Interfaces in Computer Science and Operations Research [edited by M. Laguna and J.L. Gonzalez-Velarde], Kluwer Academic Publishers, 115-130.
  • (31) Senne E.L.F. & Lorena, L.A.N. (2001). Stabilizing column generation using Lagrangean/surrogate relaxation: an application to p-median location problems. Submetido ao European Journal of Operational Research (disponível para download: http://www.lac.inpe.br/~lorena/ejor/EURO2001.pdf).
  • (32) Swain, R.W. (1974). A Parametric Decomposition Approach for the Solution of Uncapacitated Location Problems. Management Science, 21, 955-961.
  • (33) Valério de Carvalho, J.M. (1996). Exact Solution of Bin-Packing Problems Using Column Generation and Branch-and-Bound. Working Paper, Universidade do Minho, Departamento Produção e Sistemas.
  • (34) Vance, P. (1993). Crew scheduling, cutting stock and column generation: solving huge integer programs. PhD Thesis, Georgia Institute of Technology.
  • (35) Vance, P.H.; Barnhart, C.; Johnson, E.L. & Nemhauser, G.L. (1994). Solving Binary Cutting Stock Problems by Column Generation and Branch-and-Bound. Computational Optimization and Applications, 3, 111-130.
  • (36) Wolsey, L.A. (1998). Integer Programming Wiley-Interscience, New York, 260p.
  • *
    Corresponding author / autor para quem as correspondências devem ser encaminhadas
  • Datas de Publicação

    • Publicação nesta coleção
      26 Maio 2003
    • Data do Fascículo
      Jan 2003

    Histórico

    • Recebido
      Fev 2002
    • Aceito
      Nov 2002
    Sociedade Brasileira de Pesquisa Operacional Rua Mayrink Veiga, 32 - sala 601 - Centro, 20090-050 Rio de Janeiro RJ - Brasil, Tel.: +55 21 2263-0499, Fax: +55 21 2263-0501 - Rio de Janeiro - RJ - Brazil
    E-mail: sobrapo@sobrapo.org.br