Acessibilidade / Reportar erro

Roteamento de multi-fluxos em redes de filas genéricas

Resumos

Problemas de multi-fluxo de commodities com custos não lineares e convexos surgem freqüentemente na alocação de tráfego em redes de comunicação, em função das medidas de desempenho serem baseadas principalmente em atrasos médios de transmissão devido à congestão. A rede física forma uma rede de filas aberta onde as commodities devem ser simultaneamente roteirizadas desde suas origens até seus destinos. Métodos exatos de avaliação de desempenho estão disponíveis quando os processos de chegada e serviço na rede são considerados como processos de Poisson. Nestes casos, a rede pode ser decomposta e cada arco da rede pode ser analisado separadamente como um sistema de fila M/M/1. Porém, em muitos outros casos estas hipóteses de processos de Poisson não são verificadas nas situações práticas. Métodos aproximados de decomposição têm sido desenvolvidos para avaliação do desempenho de redes de filas com distribuições de probabilidade genéricas, dado que, para estas redes, em geral não existem métodos exatos ou eles são muito difíceis de serem computados. Neste trabalho propomos um algoritmo que combina métodos de roteamento de fluxos e métodos aproximados de decomposição para tratar problemas de multi-fluxo de commodities em redes de filas abertas genéricas.

problemas de multi-fluxo de commodities; redes de filas abertas; algoritmos de cancelamento de ciclos; métodos aproximados de decomposição


Multicommodity flow problems with non-linear and convex costs often arise in traffic allocation of communication networks, as the performance measures are mainly based on average transmission delays due to congestion. The physical network forms an open queuing network where the commodities should be simultaneously routed from their origins to their destinations. Exact performance evaluation methods are available when the arrival and service processes of the network are considered as Poisson processes. In these cases, the network can be decomposed and each network arc is analyzed separately as an M/M/1 queuing system. However, in many other cases these assumptions of Poisson processes are not verified in practical situations. Approximate decomposition methods have been developed to evaluate the performance of queuing networks with general probability distributions, given that for these networks in general there are no known exact methods, or they are of difficult computation. In this work we propose an algorithm that combines multi-flow routing methods and approximate decomposition methods to deal with multicommodity flow problems in general open queuing networks.

multicommodity flow problems; open queuing networks; cycle cancelling algorithms; approximate decomposition methods


Roteamento de multi-fluxos em redes de filas genéricas

Reinaldo MorabitoI* * Corresponding author / autor para quem as correspondências devem ser encaminhadas ; Maurício C. de SouzaII

IDepartamento de Engenharia de Produção Universidade Federal de São Carlos (UFSCar)morabito@ufscar.br

IIDepartamento de Engenharia de Produção Universidade Federal de Minas Gerais (UFMG) mauricio.souza@pq.cnpq.br

RESUMO

Problemas de multi-fluxo de commodities com custos não lineares e convexos surgem freqüentemente na alocação de tráfego em redes de comunicação, em função das medidas de desempenho serem baseadas principalmente em atrasos médios de transmissão devido à congestão. A rede física forma uma rede de filas aberta onde as commodities devem ser simultaneamente roteirizadas desde suas origens até seus destinos. Métodos exatos de avaliação de desempenho estão disponíveis quando os processos de chegada e serviço na rede são considerados como processos de Poisson. Nestes casos, a rede pode ser decomposta e cada arco da rede pode ser analisado separadamente como um sistema de fila M/M/1. Porém, em muitos outros casos estas hipóteses de processos de Poisson não são verificadas nas situações práticas. Métodos aproximados de decomposição têm sido desenvolvidos para avaliação do desempenho de redes de filas com distribuições de probabilidade genéricas, dado que, para estas redes, em geral não existem métodos exatos ou eles são muito difíceis de serem computados. Neste trabalho propomos um algoritmo que combina métodos de roteamento de fluxos e métodos aproximados de decomposição para tratar problemas de multi-fluxo de commodities em redes de filas abertas genéricas.

Palavras-chave: problemas de multi-fluxo de commodities; redes de filas abertas; algoritmos de cancelamento de ciclos; métodos aproximados de decomposição.

ABSTRACT

Multicommodity flow problems with non-linear and convex costs often arise in traffic allocation of communication networks, as the performance measures are mainly based on average transmission delays due to congestion. The physical network forms an open queuing network where the commodities should be simultaneously routed from their origins to their destinations. Exact performance evaluation methods are available when the arrival and service processes of the network are considered as Poisson processes. In these cases, the network can be decomposed and each network arc is analyzed separately as an M/M/1 queuing system. However, in many other cases these assumptions of Poisson processes are not verified in practical situations. Approximate decomposition methods have been developed to evaluate the performance of queuing networks with general probability distributions, given that for these networks in general there are no known exact methods, or they are of difficult computation. In this work we propose an algorithm that combines multi-flow routing methods and approximate decomposition methods to deal with multicommodity flow problems in general open queuing networks.

Keywords: multicommodity flow problems; open queuing networks; cycle cancelling algorithms; approximate decomposition methods.

1. Introdução

Problemas de muti-fluxo (multicommodity flows) consistem essencialmente em roteirizar fluxos individuais (ou commodities - pacotes de dados, classes de produtos, etc.), cada um com uma origem e destino especificados, por meio de uma rede de recursos físicos. Tipicamente, os pares origem-destino correspondem aos nós da rede e os recursos físicos compartilhados são as capacidades dos arcos da rede. Aplicações de problemas de multi-fluxo de commodities são encontradas em diversas situações reais, como, por exemplo, em sistemas de comunicação ou distribuição, em que os custos incorridos referem-se aos fluxos passando nos arcos da rede (e.g., Ahuja et al., 1993). O objetivo é roteirizar os multi-fluxos com um custo total mínimo, sujeito às restrições de limitação de capacidade de fluxo em cada arco.

A estrutura de custo dos arcos depende da aplicação, e em geral é linear ou não linear e convexa nos casos estudados na literatura. Ambos os problemas de multi-fluxo lineares e não lineares e convexos têm sido estudados na literatura desde os anos 1960. Problemas de multi-fluxo lineares aparecem freqüentemente em problemas de transportes (Magnanti & Wong, 1984), enquanto problemas de multi-fluxo não lineares e convexos aparecem comumente na atribuição de tráfego em redes de comunicação (Kleinrock, 1964; Fratta et al., 1973). Ouorou et al. (2000) discutiram as principais técnicas propostas na literatura para estes problemas de otimização convexos de larga escala. Os autores enfatizaram o problema de roteamento de mensagens em redes de dados, que é um importante problema no projeto de redes de comunicação (packet-switched communication networks; veja e.g. Bertsekas & Gallager, 1987), e apresentaram resultados de experimentos numéricos conduzidos em problemas-teste reais.

Problemas de multi-fluxo de commodities encontrados em redes de comunicação (do tipo packet-switched) são não lineares e convexos porque, em geral, a medida de desempenho da rede de dados utilizada é o atraso médio requerido para enviar um pacote de dados desde a sua origem até o seu destino (Bertsekas & Gallager, 1987). O principal componente de atraso no arco, em que as decisões de roteamento têm grande impacto, é o atraso (tempo de espera) na fila. Isto porque, para ser transmitido através de um arco, um pacote precisa esperar pela transmissão de outros pacotes que estejam esperando em fila no arco. O atraso ou tempo de espera na fila é o tempo decorrido entre a alocação do pacote na fila e o início da sua transmissão. Portanto, a rede física de comunicação pode ser vista como uma rede de filas, onde todos os fluxos individuais de commodities têm que ser simultaneamente roteirizados das suas origens para seus destinos. Desta forma, trata-se de uma rede de filas aberta (open queueing network - OQN), em que os fluxos de commodities entram na rede, recebem serviço em um ou mais arcos da rede, e saem da rede.

Métodos exatos de avaliação de desempenho de OQN existem para as chamadas redes de filas de Jackson (Jackson, 1957, 1963), onde os processos de chegada e serviço são admitidos como processos de Poisson (i.e., os intervalos de tempo entre chegadas e os tempos de serviço são exponencialmente distribuídos). O principal resultado é que cada arco da OQN pode ser analisado individualmente como um sistema de fila M/M/1 estocasticamente independente. Com a decomposição da OQN em sistemas M/M/1 independentes, os problemas de multi-fluxo de commodities neste contexto têm custos não lineares e convexos separáveis em cada arco (Kleinrock, 1964; Bertsekas & Gallager, 1987). Além disso, a função arco-custo nas redes de Jackson tem algumas propriedades desejáveis: ela é uma função convexa e diferenciável que tende para o infinito à medida que o fluxo de cada arco se aproxima da capacidade do arco. Ouorou & Mahey (2000) propuseram um método de cancelamento de ciclos (cycle canceling method) para problemas de multi-fluxo não lineares e convexos satisfazendo estas propriedades.

Entretanto, em muitos sistemas de redes de filas as hipóteses de processos de Poisson não se aplicam - nestes casos, a OQN com distribuições de probabilidade genéricas é chamada rede de Jackson generalizada, ou simplesmente OQN genérica. Por exemplo, sistemas de redes de manufatura, distribuição ou atendimento médico hospitalar em geral possuem processos de serviço (processamento) menos variáveis que o processo de Poisson (e.g., Bitran & Tirupati, 1988; Jiang & Giachetti, 2008; Silva & Morabito, 2009). Métodos exatos de avaliação de desempenho para sistemas de OQN genéricas não estão disponíveis, ou quando estão disponíveis são muito difíceis de serem computados. Alternativamente, métodos aproximados de decomposição têm sido propostos com o objetivo de estimar o desempenho destes sistemas de manufatura, logísticos ou de serviço de saúde como um sistema de filas independentes (e.g., Whitt, 1984; Buzacott & Shanthikumar, 1992; Nakano & Ohno, 1999; Shanthikumar & Xu, 2000; Warsing et al., 2001; Souza et al., 2001, 2002; Souza & Ketzenberg, 2002; Chao et al., 2003; Ketzenberg et al., 2003; Kerbache & Smith, 2004; Jeong et al., 2008; Jiang & Giachetti, 2008).

Bitran & Morabito (1996) e Govil & Fu (1999) revisaram os desenvolvimentos destes métodos combinados com técnicas de programação matemática e modelos de otimização para o projeto e planejamento de sistemas discretos de manufatura (particularmente job-shops). Dentre os sistemas estudados, Bitran & Morabito (1996) revisaram redes de filas abertas com múltiplas classes de produtos percorrendo roteiros determinísticos ou probabilísticos. Nestas redes as decisões não estão no roteamento dos fluxos, mas em: (i) investimento de capital (e.g., capacidade), sujeito a restrições de metas de desempenho do sistema, (ii) níveis de desempenho do sistema, sujeito a restrições de limitação de recursos.

No presente artigo apresentamos uma abordagem algorítmica para otimizar o roteamento de multi-fluxo de commodities em redes de filas genéricas. A idéia é combinar métodos de cancelamento de ciclos e métodos aproximados de decomposição em um algoritmo para resolver problemas de multi-fluxo em OQN genéricas. A literatura sobre problemas de multi-fluxo de commodities considerando roteamento em redes de Jackson é extensa. No entanto, não temos conhecimento de outros trabalhos na literatura propondo abordagens para resolver problemas de multi-fluxo considerando roteamento de mínimo atraso médio em OQN genéricas. Isto talvez possa ser explicado pelo fato de existirem métodos exatos facilmente computáveis para avaliação de desempenho de OQN de Jackson, o que não ocorre com OQN genéricas.

O artigo está organizado da seguinte maneira: na Seção 2 apresentamos resumidamente o modelo clássico de multi-fluxo de commodities e um método de cancelamento de ciclos que tem garantia de encontrar a solução ótima nos casos de redes de Jackson. Na Seção 3 descrevemos brevemente o método aproximado de decomposição para avaliação de desempenho de OQN genéricas, em situações em que os roteiros dos fluxos individuais de commodities são dados. Na Seção 4 propomos um algoritmo aproximado que combina estes dois métodos para roteamento de multi-fluxos em OQN genéricas. Na Seção 5 analisamos o desempenho do algoritmo em alguns experimentos computacionais com uma rede de multi-fluxo de commodities ilustrativa. Finalmente, na Seção 6 apresentamos as considerações finais e discutimos algumas perspectivas para pesquisa futura.

2. Modelo de multi-fluxo e método de cancelamento de ciclos

No modelo clássico de multi-fluxo de commoditites, cada tipo de tráfego entre um dado par de nós é tratado como um fluxo separado k, k = 1, ..., K, distinguido pelo par origem-destino (sk, tk) e os requisitos de demanda . Este modelo tem duas suposições principais: (i) a demanda por uma commodity pode ser fracionada e cada porção pode ser enviada por um roteiro (caminho) diferente desde a sua origem até o seu destino, (ii) cada unidade de fluxo de uma commodity utiliza uma unidade de capacidade de cada arco percorrido. A topologia da rede é representada por um dígrafo G=(V,A) com n nós e m arcos. Cada arco tem capacidade uj que restringe o fluxo total no arco, denotado por xj.

Seja Pk um conjunto de caminhos orientados ligando os nós de origem e destino correspondentes à commodityk, e seja xkp a quantidade de fluxo da commodityk roteirizada no caminho . Um caminho pode ser identificado pelo vetor de incidência arco-caminho , definido por:

O modelo de multi-fluxo arco-caminho pode ser formulado por:

Neste modelo, a função objetivo (1) é a soma das funções arco-custo individuais, . As expressões (2) são as restrições de acoplamento, dado que K problemas de único-fluxo independentes são obtidos quando estas restrições são relaxadas. As restrições (3) garantem que a demanda total de cada commodityk, rk, é enviada da sua origem para seu destino. As restrições (4) são as restrições de capacidade que limitam o fluxo total em cada arco j à capacidade do arco, uj. Finalmente, as expressões (5) são as restrições de não negatividade das variáveis.

A Figura 1 ilustra um exemplo de um roteamento multi-fluxo factível. Considere uma rede com 4 nós e 6 arcos (representados pelas linhas sólidas), onde as 3 seguintes commodities devem ser roteirizadas:


Os caminhos utilizados para roteirizar as demandas das commodities estão representados pelas linhas pontilhadas: para K=1, dois caminhos são utilizados, um passa pelo nó 2 e outro pelo nó 3; para K=2, dois caminhos também são utilizados, um passa pelo nó 2 e outro diretamente pelo arco (1,3); para K=3, apenas um caminho através do nó 2 é utilizado.

Suponha que todo arco na Figura 1 tenha capacidade uj, dada pelo número médio de unidades físicas que podem ser enviadas de w para v por unidade de tempo. Suponha também que a demanda da commodityk expressa o número médio de unidades da commodity a serem enviadas de sk para tk por unidade de tempo. As chegadas das unidades das commodities em um nó, requerendo serviço de transmissão através de um arco para outro nó, eventualmente resultam no fenômeno da congestão. E, conforme mencionado anteriormente, funções objetivo não lineares e convexas têm sido usadas para modelar os atrasos médios nas filas. A grande maioria dos modelos estudados na literatura para roteirizar fluxos de commodities em redes de filas usa, como arco-custos, a função de atraso médio de Kleinrock (Kleinrock, 1964; Bertsekas & Gallager, 1987), em que o custo de um arco j é proporcional a:

onde o fluxo xj no arco j é medido pela taxa de chegada por unidade de tempo no nó w.

Ouorou & Mahey (2000) mostraram que um algoritmo de cancelamento de ciclos (cycle canceling algorithm - CCA) pode ser aplicado para minimizar a soma das funções arco-custo definidas em (6), sujeito às restrições (2)-(5). Mais formalmente, o algoritmo de cancelamento de ciclos resolve problemas de multi-fluxo de commodities em que, para cada arco j, fj é uma função convexa diferenciável, agindo como uma barreira para evitar que o fluxo em j se aproxime de sua capacidade.

O método executa passos de descida que envolvem alterar exatamente um único fluxo de commodity por vez em um ciclo de custo negativo. Um ciclo é uma seqüência de nós e arcos de

G, sem qualquer repetição e tal que jl seja ou , para l = 1, ..., p-1, e jp seja ou . Dado um ciclo de G e um sentido arbitrário de circulação (Figura 2), podemos particionar os arcos de em dois subconjuntos de arcos: o conjunto dos arcos diretos que estão no mesmo sentido da circulação, e o conjunto dos arcos reversos que estão no sentido contrário da circulação. Considerando um fluxo factível em G, i.e., valores de fluxo de xj e xkp satisfazendo as restrições (2)-(5), um ciclo é chamado kp-factível se ele apresenta uma capacidade residual estritamente positiva - se podemos aumentar o fluxo xkp da commodity nos arcos diretos e reduzi-lo nos arcos reversos. Este custo é dado por:

onde é a primeira derivada de .


Podemos mudar de um fluxo factível em G para outro executando um passo de cancelamento em um ciclo kp-factível . Na operação do passo de cancelamento, executamos a circulação de uma quantidade positiva no fluxo em . Isto significa que aumentamos (decrescemos, respectivamente) de o fluxo da commodityk, e portanto o fluxo total, nos arcos diretos (reversos, respectivamente) de . Desta forma, grosso modo, cada iteração do CCA é dividida em dois passos: (i) encontrar um ciclo kp-factível de custo negativo, e

(ii) executar o passo de cancelamento sobre ele. O algoritmo pára com uma solução ótima x* quando não existem mais ciclos kp-factíveis de custo negativo, i.e., para todo ciclo kp-factível .

3. Avaliação de desempenho de OQN genéricas

Considere que as commodities fluam através de uma OQN genérica, isto é, uma rede em que os intervalos de tempo entre chegadas das unidades das commodities a serem enviadas das origens para os destinos, e os tempos de transmissão das commodities através dos arcos, possam não ser exponencialmente distribuídos. Dado que os processos de chegada e serviço podem ter distribuições de probabilidade genéricas, a função arco-custo de Kleinrock dada por (6) pode não ser uma medida de desempenho adequada, uma vez que admite uma rede de Jackson. Neste caso, podemos aplicar um método aproximado de decomposição (Whitt, 1983, 1984; Bitran & Morabito, 1995a, 1996, 1999; Govil & Fu, 1999).

Para manter a notação da literatura de redes de filas, dizemos que um usuário recebe serviço em uma estação, e um arco da estação i para a estação j representa que o usuário pode seguir para a estação j após terminar serviço na estação i. A Figura 3 mostra o mesmo exemplo da Figura 1 usando esta notação. Note nesta figura que cada uma das 5 estações corresponde a um arco na Figura 1, sendo identificada por (w,v), onde w e v são respectivamente os nós de saída e entrada do arco na Figura 1. Um arco ligando as estações (w,v) e (v,q) na Figura 3 significa que na Figura 1 uma commodityk pode seguir pelo arco (v,q) após ter alcançado o nó v através do arco (w,v). Um caminho p de uma commodityk passa na Figura 3 através de uma seqüência de estações, que corresponde à seqüência de arcos compondo p na Figura 1.


Estamos interessados em avaliar o desempenho de um dado fluxo factível para as restrições (2)-(5). Dada uma commodityk, cada caminho define uma seqüência de estações a serem visitadas no roteiro da commodityk desde a sua origem até o seu destino. Temos então um modelo para avaliação de desempenho de uma rede de filas GI/G/1 com múltiplas classes e roteiros determinísticos, dado que os valores , estão fixados. Neste modelo, tratamos cada caminho de uma commodity como uma classe (a rigor, subclasse) diferente. A Tabela 1 resume os dados de entrada do procedimento de avaliação de desempenho, e a correspondência entre as terminologias de redes de filas e fluxos em redes.

Adicionalmente, sejam cak a variabilidade dos intervalos de tempo entre chegadas externas da classe k (ak), e csj a variabilidade dos tempos de serviço na estação j (sj), ambas dadas pelos coeficientes quadráticos de variação das respectivas variáveis aleatórias ak e sj (este coeficiente é definido pela razão da variância e do quadrado do valor esperado da variável aleatória). Whitt (1983) apresentou um procedimento para agregar todas as classes (e.g., commodities ou caminhos de cada commodity) em uma única classe (no caso do presente estudo, tratam-se de classes, considerando as subclasses de cada commodity k). Este procedimento permite computar uma medida de desempenho para cada estação j separadamente, em função da taxa de chegada agregada xj. Tal medida fornece ao modelo multi-fluxo uma função separável do fluxo total dos arcos, conforme requerido em (1), refletindo os efeitos de congestão nas OQN genéricas.

O passo fundamental deste procedimento para computar medidas de desempenho para cada estação separadamente envolve três processos básicos: superposição das chegadas, partidas, e separação das partidas. Estes processos consideram todas as classes (e subclasses) agregadas numa única classe. A Figura 4 ilustra estes três processos. Cada estação j é descrita pela taxa de chegada agregada, xj, na estação j, e pela variabilidade dos intervalos de tempo entre chegadas agregadas, caj, na estação j, além dos parâmetros uj e csj (considerados, neste trabalho, independentes de cada classe k ou de suas subclasses). Sob a suposição de equilíbrio (steady state), a taxa de chegada agregada xj é definida pela equação (2). A utilização média da estação j é definida por: . Uma aproximação para a variabili-dade dos intervalos de tempo entre chegadas agregadas caj é computada por um sistema linear conhecido como equações de variabilidade de tráfego, descrito resumidamente abaixo (para mais detalhes, veja, por exemplo, Bitran & Morabito, 1996, e Silva & Morabito, 2007).


3.1 Equações de variabilidade de tráfego

As equações de variabilidade de tráfego formam um sistema linear descrevendo a relação entre a variabilidade dos intervalos de tempo entre chegadas agregadas, caj, na estação j, a variabilidade dos intervalos de tempo entre chegadas na estação j vindo da estação i, caij, e a variabilidade dos intervalos de tempo entre partidas agregadas da estação j, cdj.

A primeira das equações de variabilidade de tráfego deriva do processo de superposição das chegadas de fluxos em cada estação j, vindos de outras estações. Whitt (1983b), simplificando uma aproximação para caj proposta por Albin (1982), obteve uma relação entre caj e a variabilidade dos intervalos de tempo entre chegadas das outras estações. Dadas duas estações i e j, seja igual a 1 se as estações i e j correspondem a dois arcos subseqüentes no caminho p da commodityk, e igual a 0, caso contrário. A relação obtida por Whitt (1983b) é a seguinte:

onde: e

Admitindo que a estação j não esteja saturada e que o sistema esteja em equilíbrio, a taxa de partidas da estação j coincide com a taxa de chegadas na estação j, igual a xj. A variabilidade dos intervalos de tempo entre partidas cdj do processo de partidas agregadas da estação j depende do tempo médio de espera em fila na estação j. Whitt (1983) derivou uma aproximação para cdj como uma combinação convexa de caj e csj. Desta forma, a segunda equação de variabilidade de tráfego é dada por:

Note que, nesta aproximação, a variabilidade dos intervalos de tempo entre partidas cdj da estação j tende à variabilidade dos tempos de serviço csj à medida que a utilização média cresce na estação. O sistema de equações de variabilidade de tráfego é completado com a análise do processo de separação das partidas da estação j para as outras estações. A equação abaixo define a relação entre a variabilidade dos intervalos de tempo entre partidas da estação j para a estação i, caji (i.e., a variabilidade dos intervalos de tempo entre chegadas na estação i vindo da estação j), com a variabilidade dos intervalos de tempo entre partidas agregadas da estação j, cdj (Kuehn, 1979).

Para explicações mais detalhadas do desenvolvimento do sistema de equações de variabilidade de tráfego (8)-(10), o leitor pode consultar, por exemplo, Morabito (1998) e as referências nele contidas. Os parâmetros de entrada deste sistema devidos às chegadas externas podem ser computados usando as expressões acima. A variabilidade dos intervalos de tempo entre chegadas externas da classe kp (i.e., da classe k para o caminho p), cakp, pode ser estimada conforme (10) por:

em que cak é a variabilidade dos intervalos de tempo entre chegadas externas da classe k na rede. E a variabilidade dos intervalos de tempo entre chegadas externas agregadas na estação j, ca0j, pode ser estimada em função de cakp em (11) e conforme (8). Seja igual a 1 se a estação j corresponde ao primeiro arco no caminho p da commodityk, e igual a 0, caso contrário. Então, ca0j é dado por:

onde: e

3.2 Tempo médio de espera

Os processos de superposição de chegadas, partidas, e separações de partidas permitem decompor a rede de filas em um conjunto de estações individuais, cada estação j descrita por: {xj, caj, uj, csj}. O fluxo agregado xj é obtido por (2), a variabilidade agregada caj é obtida pelo sistema linear (8)-(10) (em que a variabilidade externa agregada ca0j em (8) é computada por (12)), e uj e csj são dados de entrada. Desta forma, diferentes medidas de desempenho podem ser estimadas separadamente para cada estação. Isto significa que, dado um fluxo factível para as restrições (2)-(5), podemos ter uma aproximação para o atraso médio da fila na transmissão do fluxo no arco j. O custo dado por (1) de tal solução factível é a soma do tempo médio de espera na fila GI/G/1 associada ao arco j, definido como (Whitt, 1983):

onde:

Note que se os intervalos de tempo entre chegadas e os tempos de serviço forem exponen-cialmente distribuídos (i.e., processos de Poisson), então caj e csj são ambos iguais a 1, e (13) resulta em:

isto é, para cada arco j é associado uma fila M/M/1 e a função arco-custo fj é proporcional a:

conforme definido em (6).

4. Algoritmo aproximado de multi-fluxo em OQN genérica

Nesta seção propomos um algoritmo para resolver o problema de roteamento de multi-fluxos de commodities em OQN genéricas. O problema é definido por:

Minimizar

sujeito as restrições (2)-(5).

onde foi definida em (13). Dado que a computação das variabilidades depende dos fluxos Xj, o algoritmo alterna entre um passo de otimização do roteamento (com os valores das variabilidades fixados) e um passo de solução do sistema linear de equações de variabilidade de tráfego (com os valores dos fluxos fixados). Portanto, o procedimento OQN-Flow (descrito abaixo) tem como subrotinas o algoritmo de cancelamento de ciclos para problemas de multi-fluxo (Seção 2), e a computação do sistema linear das variabilidades de tráfego (Seção 3.1).

Procedimento OQN-Flow

Passo 0: Encontre um fluxo inicial factível para as restrições (2)-(5). Compute (com respeito a ) os valores de resolvendo o sistema de equações (8)-(10) e, então, para j = 1, ..., m. Faça .

Passo 1: Obtenha um fluxo factível aplicando o algoritmo de cancelamento de ciclo, considerando como fluxo inicial e as funções arco-custo .

Passo 2: Compute (com respeito a ) os valores de resolvendo o sistema de equações (8)-(10) e, então, para j = 1, ..., m.

Passo 3: Se para j = 1, ..., m, então pare. Caso contrário, faça e volte para o Passo 1.

Os Passos 1-3 formam o loop principal do procedimento. Basicamente, em cada iteração t, encontramos o roteamento ótimo com respeito ao tempo médio de espera, considerando as estimativas das variabilidades dos intervalos entre chegadas, computadas com o fluxo obtido na iteração anterior. De fato, o Passo 1 consiste em aplicar o algoritmo de cancelamento de ciclos para resolver o problema convexo de multi-fluxo, em que o custo de cada arco j é dado por (13), fixando cada em , e sujeito as restrições (2)-(5). No Passo 2 atualizamos as estimativas da variação dos intervalos de tempo entre chegadas para , resolvendo o sistema de equações (8)-(10) para o fluxo , e computamos o tempo médio de espera para cada arco j de acordo com (13). O procedimento iterativo continua até que o valor absoluto da diferença dos tempos médios de espera entre duas iterações sucessivas seja menor ou igual a uma dada tolerância para cada arco j.

5. Experimentos computacionais

Nesta seção apresentamos os resultados de alguns experimentos computacionais realizados para ilustrar o desempenho do procedimento OQN-Flow (Seção 4). O algoritmo foi implementado em Linguagem C (compilador gcc, versão 4.1.2) num microcomputador Intel Pentium D (3.4 GHz, 2 GB de RAM, sistema operacional Linux). Para a realização dos experimentos, utilizamos um exemplo de uma simples rede de multi-fluxos com n = 6 nós e m = 20 arcos, com todos os arcos j com capacidade . A rede contém K = 4 commodities, distinguidas pelos seguintes pares origem-destino:

A Figura 5 ilustra esta rede exemplo.


Em um primeiro conjunto de experimentos com a rede, consideramos que as demandas de todas as commodities k são iguais, dadas por (note que a demanda total na rede é ). A Tabela 2 apresenta os tempos médios de espera obtidos com a aplicação do procedimento OQN-Flow (coluna OQN-Flow), para diferentes valores dos parâmetros de variabilidade dos processos de chegada e serviço, e . Note que uma rede de filas de Jackson tem e para todas as commoditiesk e todos os arcos j; logo, a solução do procedimento OQN-Flow é exata para este caso (Seção 3.2). Nos demais casos, as soluções do procedimento são aproximações porque envolvem OQN genéricas. Por exemplo, os casos com podem estar representando redes com todos os processos de chegada distribuídos conforme uma Erlang de ordem 2, e os casos com , redes com todos os processos de serviço conforme uma Erlang de ordem 4.

A título de ilustração, a Figura 6 apresenta em detalhes a distribuição da demanda da commodity na solução obtida pelo OQN-Flow para o caso e . Note que a solução emprega três caminhos diferentes (indicados por linhas pontilhadas na figura) para roteirizar a demanda do nó origem 1 ao nó destino 5, e a maior parte da demanda flui pelos caminhos 1-2-5 (xkp = 1,15) e 1-3-5 (xkp = 0,84).


Conforme mencionado na Seção 2, a grande maioria dos modelos estudados para roteirizar multi-fluxos de commodities em redes de filas usa, como arco-custos, a função de atraso médio (6) de Kleinrock (Kleinrock, 1964; Bertsekas & Gallager, 1987; Ouorou & Mahey, 2000). Estes modelos admitem uma OQN de Jackson e, caso não seja, o uso destes modelos para analisar OQN genéricas pode implicar em imprecisões importantes. Para enfatizar as diferenças entre os resultados obtidos com os algoritmos OQN-Flow e CCA nos casos da Tabela 2, a coluna Jackson-Flow destaca a solução obtida pelo CCA. Por exemplo, para o caso e (última linha da tabela), a diferença é bem significativa (1,37 e 2,64).

Para avaliar a qualidade das aproximações obtidas com o procedimento OQN-Flow (e CCA), desenvolvemos um modelo de simulação discreta que simula os roteiros dos fluxos de cada commodity definidos na solução do procedimento OQN-Flow. As distribuições utilizadas no modelo foram: exponencial, Erlang 2 e Erlang 4, respectivamente, para os parâmetros de variabilidade 1, 0,5 e 0,25 da Tabela 2. Para mais detalhes de modelos de simulação, os leitores podem consultar Law & Kelton (1991), Schriber (1991) e Banks et al. (1996). O modelo foi desenvolvido no software de simulação GPSS/H para simular várias replicações independentes, cada uma com um total de 200000 chegadas de commodities geradas. As primeiras 100000 chegadas de commodities de cada replicação foram descartadas na tentativa de evitar os efeitos dos estados transitórios. Utilizamos o gerador de números pseudo-aleatórios do GPSS/H, baseado no algoritmo de Lehmer (Schriber, 1991). Para tentar garantir a independência entre as replicações, todos os intervalos de tempo entre chegadas e tempos de serviço das commodities foram sorteados de posições diferentes da seqüência de 231-1 números (gerada pelo algoritmo de Lehmer no GPSS/H). Assim como outros estudos de redes de filas (e.g., Bitran & Morabito, 1995b; Silva & Morabito, 2009), optamos por gerar uma amostra de 10 replicações (ao invés de 30 replicações ou mais), devido aos procedimentos computacionais da simulação serem relativamente custosos.

As médias dos tempos médios de espera das commodities nas 10 replicações estão apresentadas na coluna Simulação da Tabela 2. As duas últimas colunas (Desvio OQN e Desvio Jackson) mostram os desvios percentuais dos valores das soluções dos procedimentos OQN-Flow e CCA, respectivamente, em relação ao valor obtido com a simulação. Note que os desvios dos resultados do procedimento OQN-Flow para OQN de Jackson ( e ) são aproximadamente nulos (i.e., 0,4%), como seria de se esperar. Porém, estes desvios aumentam de forma considerável à medida que as variabilidades diminuem, ou seja, para OQN com processos de chegada e serviço tendendo a processos pouco variáveis (determinísticos). No entanto, apesar de relativamente grandes nestes casos (e.g., veja as duas últimas linhas da Tabela 2), os desvios do OQN-Flow ainda são muito menores do que os desvios do CCA. Esta observação também é válida para os experimentos a seguir.

Em um segundo conjunto de experimentos com a rede da Figura 5, consideramos que as demandas das 4 commodities são diferentes e maiores ou iguais as do primeiro experimento, dadas por: e . Note que a demanda total na rede é , ou seja, 43,7% maior que a do experimento anterior. Desta forma, os níveis médios de utilização das capacidades dos arcos da rede tendem a ser maiores neste conjunto de experimentos do que no anterior. Por exemplo, enquanto no primeiro conjunto de experimentos os maiores níveis médios de utilização obtidos estão em torno de 0,75, no segundo conjunto os maiores níveis ultrapassam 0,9.

A Tabela 3 apresenta os tempos médios de espera obtidos com a aplicação do procedimento OQN-Flow (e CCA), também para diferentes valores dos parâmetros de variabilidade dos processos de chegada e serviço cak e csj, comparados com os resultados obtidos pelo modelo de simulação (também utilizando uma amostra de 10 replicações, assim como na Tabela 2). Note que, assim como foi observado na Tabela 2, as aproximações obtidas com OQN-Flow (e CCA) superestimam os tempos médios de espera obtidos com simulação, particularmente para variabilidades de chegada e serviço pequenas (e.g., menores ou iguais a 0,5). No entanto, os desvios dos resultados de OQN-Flow em relação à simulação são bem menores que os da Tabela 2, o que indica que este procedimento é mais preciso à medida que a rede fica mais carregada (i.e., com maiores níveis de utilização da capacidade), o que é apropriado para aplicação na prática.

6. Considerações finais

O propósito deste estudo foi apresentar um algoritmo para tratar problemas de otimização de roteamento em OQN genéricas. Estes problemas aparecem quando a principal medida de desempenho do sistema é o atraso médio, devido aos efeitos de congestão do sistema. A literatura de problemas de multi-fluxos de commodities em geral considera o roteamento em redes de filas de Jackson, em que os processos de chegada e serviço são supostos processos de Poisson.

Não temos conhecimento de outros trabalhos na literatura explorando problemas de roteamento de multi-fluxos de commodities para minimizar o atraso médio em OQN genéricas. Isto talvez possa ser explicado pelo fato de existirem métodos exatos para avaliação de desempenho em OQN de Jackson, que decompõem a rede em M/M/1 sistemas independentes, enquanto não existem métodos exatos para OQN genéricas, ou são muito difíceis de serem computados. Por outro lado, a literatura existente sobre métodos aproximados de decomposição para avaliação de desempenho em OQN genéricas, em geral, admite que os roteiros estejam definidos (seja de forma determinística ou probabilística), e as decisões envolvidas são principalmente decisões de configuração e capacidade da rede. Note que isto significa que as decisões não recaem sobre quais caminhos as commodities devem percorrer ao longo da rede. No presente trabalho nosso objetivo é propor um algoritmo para apoiar tais decisões de roteamento em ambientes de OQN genéricas.

Alguns experimentos preliminares com o procedimento OQN-Flow foram realizados com redes pequenas, porém ilustrativas. Com base nestes experimentos, foi observado que, partindo de processos de chegada e serviço completamente aleatórios (i.e., processos de Poisson), para processos de chegada e serviço bem menos variáveis (i.e., tendendo a processos determinísticos), a razão entre os tempos médios de espera das OQN de Jackson e das OQN genéricas aumenta significativamente. Estes resultados sugerem que modelar o problema de OQN genéricas admitindo redes de Jackson pode resultar em grandes erros nas estimativas das medidas de desempenho. Convém salientar que, nos experimentos realizados, ambos os algoritmos OQN-Flow e CCA superestimam os tempos médios de espera na rede, se comparados com os resultados obtidos com simulação, quando os processos de chegada e serviço ficam bem menos variáveis. No entanto, à medida que a rede fica mais carregada, os desvios relativos entre os resultados de OQN-Flow e da simulação diminuem, o que é desejável para aplicação prática.

Três perspectivas interessantes para investigação futura e que estão na nossa agenda de pesquisa, são: (i) testar no procedimento OQN-Flow outras aproximações baseadas em métodos de decomposição em OQN genéricas, mais precisas do que a aproximação da Seção 3, (ii) realizar experimentos computacionais com OQN maiores e mais complexas, para investigar melhor o desempenho do procedimento OQN-Flow, (iii) estender o procedimento OQN-Flow para também considerar decisões de expansão de capacidade nos arcos da rede, para tratar problemas de expansão de capacidade que combinem o roteamento dos fluxos com as decisões combinatórias de em quais arcos expandir capacidade.

No caso (i), pretendemos testar aproximações que considerem a interferência entre as classes de commodities na rede no cálculo das variabilidades de tráfego, como, por exemplo, as propostas em Bitran & Tirupati (1988) e Segal & Whitt (1989). No caso (ii), pretendemos verificar, usando as aproximações em (i), se o desempenho do procedimento OQN-Flow melhora (em relação aos resultados de simulação), à medida que as OQN genéricas ficam maiores e mais complexas, o que seria apropriado para aplicação prática. No caso (iii), nos problemas de expansão de capacidade, modelar a rede como uma OQN de Jackson, quando ela é uma OQN com processos de chegada e serviço bem menos variáveis, pode levar a erros consideráveis de decisões de investimento em expansão de capacidade. Procedimentos de otimização baseados em modelos de OQN genéricas podem encontrar um conjunto menor e diferente de arcos que devam ter suas capacidades expandidas, quando comparados com os resultados dos procedimentos de otimização baseados em modelos de OQN de Jackson. Isto pode resultar em economias importantes nos orçamentos de investimento.

Agradecimentos

Os autores agradecem os revisores anônimos pelos úteis comentários e sugestões. Esta pesquisa foi parcialmente apoiada pelo CNPq.

Recebido em 12/2008; aceito em 07/2009

Received December 2008; accepted July 2009

  • (1) Ahuja, R.V.; Magnanti, T.L. & Orlin, J.B. (1993). Network Flows: Theory, Algorithms and Applications Prentice-Hall.
  • (2) Albin, S.L. (1982). Poisson approximations for superposition arrival processes in queues. Management Science, 28, 126-137.
  • (3) Banks, J.; Carson, J.S. & Nelson, B.L. (1996). Discrete-Event System Simulation 2Ş ediçăo, Prentice Hall, New Jersey.
  • (4) Bertsekas, D.P. & Gallager, R. (1987). Data Networks Prentice-Hall.
  • (5) Bitran, G.R. & Morabito, R. (1995a). Modelos de otimizaçăo de redes de filas abertas para projeto e planejamento de job-shops. Pesquisa Operacional, 15(1), 1-22.
  • (6) Bitran, G. & Morabito, R. (1995b). Um exame dos modelos de redes de filas abertas aplicadas a sistemas de manufatura discretos - Parte I. Gestăo & Produçăo, 2(2), 192‑219.
  • (7) Bitran, G.R. & Morabito, R. (1996). Open queueing networks: Optimization and performance evaluation models for discrete manufacturing systems. Production and Operations Management, 5, 163-193.
  • (8) Bitran, G.R. & Morabito, R. (1999). An overview of tradeoff curves in manufacturing systems design. Production and Operations Management, 8(1), 56-75.
  • (9) Bitran, G.R. & Tirupati, D. (1988). Multiproduct queueing networks with deterministic routing: Decomposition approach and notion of interference. Management Science, 34, 75-100.
  • (10) Buzacott, J.A. & Shanthikumar, J.G. (1992). Design of manufacturing systems using queueing models. Queueing Systems, 12, 135-214.
  • (11) Chao, X.; Liu, L. & Zheng, S. (2003). Resource allocation in multisite service systems with intensive customer flows. Management Science, 49, 1739-1752.
  • (12) Fratta, L.; Gerla, M. & Kleinrock, L. (1973). The flow deviation algorithm: An approach to store-and-forward computer communication network design. Networks, 3, 97-133.
  • (13) Govil, M. & Fu, M.C. (1999). Queueing theory in manufacturing: a survey. Journal of Manufacturing Systems, 18, 214-240.
  • (14) Jackson, J.R. (1957). Networks of waiting lines. Operations Research, 5, 518-521.
  • (15) Jackson, J.R. (1963). Job shop-like queueing systems. Management Science, 10, 131‑142.
  • (16) Jeong, K.; Cho, H. & Phillips, D.T. (2008). Integration of queuing network and IDEF3 for business process analysis. Business Process Management Journal, 14, 471-482.
  • (17) Jiang, L. & Giachetti, R.E. (2008). A queueing network model to analyze the impact of parallelization of care on patient cycle time. Health Care Management Science, 11, 248-261.
  • (18) Kerbache, L. & Smith, J.M. (2004). Queueing networks and the topological design of supply chain systems. International Journal of Production Economics, 91, 251-272.
  • (19) Ketzenberg, M.E.; Souza, G.C. & Guide, V.D.R. (2003). Mixed assembly and disassembly operations for remanufacturing. Production and Operations Management, 42(3), 523-530.
  • (20) Kleinrock, L. (1964). Communication Nets: Stochastic Message Flow and Delay McGraw-Hill.
  • (21) Kuehn, P.J. (1979). Approximate analysis of general networks by decomposition. IEEE Transactions on Communications, 27, 113-126.
  • (22) Law, A.M. & Kelton, W.D. (1991). Simulation Modeling and Analysis 2Ş ed. McGraw-Hill, New York.
  • (23) Magnanti, T.L. & Wong, R.T. (1984). Network design and transportation planning: Models and algorithms. Transportation Science, 18, 1-55.
  • (24) Morabito, R. (1998). Análise de curvas de trade-off baseada em teoria de redes de filas para o projeto e planejamento de sistemas discretos de manufatura. Săo Carlos, tese de livre-docęncia, EESC/USP, 136pg.
  • (25) Nakano, M. & Ohno, K. (1999). Decomposition algorithm for performance evaluation of AGV systems. Production and Operations Management, 8(2), 193-205.
  • (26) Ouorou, A. & Mahey, P. (2000). A minimum-mean cycle cancelling method for multicommodity flow problems. European Journal of Operational Research, 121, 532‑548.
  • (27) Ouorou, A.; Mahey, P. & Vial, J.P. (2000). A survey of algorithms for convex multicommodity flow problems. Management Science, 46, 126-147.
  • (28) Schriber, T.J. (1991). An introduction to simulation using GPSS/H John Wiley & Sons, New York.
  • (29) Segal, M. & Whitt, W. (1989). A queueing network analyzer for manufacturing. In: Teletraffic science for new-effective system, networks and services [edited by M. Bonatti], Elsevier, North-Holland, 1146-1152.
  • (30) Shanthikumar, J.G. & Xu, S.H. (2000). Strongly asymptotically optimal design and control of production and service systems. IIE Transactions, 32, 881-890.
  • (31) Silva, C.R.N. & Morabito, R. (2007). Análise de problemas de partiçăo de instalaçőes em sistemas job-shops por meio de modelos de redes de filas. Pesquisa Operacional, 27(2), 333-356.
  • (32) Silva, C.R.N. & Morabito, R. (2009). Performance evaluation and capacity planning in a metallurgical job-shop system using open queueing network models. International Journal of Production Research, 47(23), 6589-6609.
  • (33) Souza, G.S.; Wagner, H.M. & Whybark, D.C. (2001). Evaluating focused factory benefits with queueing theory. European Journal of Operational Research, 128, 597‑610.
  • (34) Souza, G.S. & Ketzenberg, M.E. (2002). Two-stage make-to-order remanufacturing with service-level constraints. International Journal of Production Research, 40(2), 477-493.
  • (35) Souza, G.S.; Ketzenberg, M.E. & Guide, V.D.R. (2002). Capacitated remanufacturing with service level constraints. Production and Operations Management, 11(2), 231‑248.
  • (36) Warsing, D.P.; Souza, G.C. & Greis, N.P. (2001). Determining the value of dedicated multimodal cargo facilities in a multi-region distribution network. European Journal of Operational Research, 133, 81-93.
  • (37) Whitt, W. (1983). The queueing network analyzer. The Bell System Technical Journal, 62, 2779-2815.
  • (38) Whitt, W. (1983b). Performance of the queueing network analyzer. The Bell System Technical Journal, 62, 2817-2843.
  • (39) Whitt, W. (1984). Open and closed models for network of queues. AT & T Bell Laboratories Technical Journal, 63, 1911-1979.
  • *
    Corresponding author / autor para quem as correspondências devem ser encaminhadas
  • Datas de Publicação

    • Publicação nesta coleção
      04 Mar 2011
    • Data do Fascículo
      Dez 2010

    Histórico

    • Recebido
      Dez 2008
    • Aceito
      Jul 2009
    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