SciELO - Scientific Electronic Library Online

 
vol.29 issue2O apoio multicritério à decisão como instrumento de gestão do conhecimento: uma aplicação à indústria de refino de petróleo author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Article

Indicators

Related links

Share


Pesquisa Operacional

Print version ISSN 0101-7438

Pesqui. Oper. vol.29 no.2 Rio de Janeiro May/Aug. 2009

http://dx.doi.org/10.1590/S0101-74382009000200012 

O problema de caminho mínimo com incertezas e restrições de tempo

 

 

Fábio HernandesI,*; Lilian BertonII; Maria José de Paula CastanhoIII

IDepartamento de Ciência da Computação (DECOMP), Universidade Estadual do Centro-Oeste (UNICENTRO), Guarapuava - PR, hernandes@unicentro.br; hernandes.fabio@gmail.com
IIDepartamento de Ciência da Computação (DECOMP), Departamento de Matemática (DEMAT), Universidade Estadual do Centro-Oeste (UNICENTRO), Guarapuava - PR, lilianberton@yahoo.com.br
IIIDepartamento de Matemática (DEMAT), Universidade Estadual do Centro-Oeste (UNICENTRO), Guarapuava - PR, zeza@unicentro.br

 

 


RESUMO

O problema de caminho mínimo em grafos com parâmetros incertos é um importante problema da programação matemática, visto que possui aplicações nas mais diversas áreas da Computação e da Engenharia, como: redes de computadores, telecomunicações, transportes, manufaturas, dentre outros. Porém, devido à sua alta complexidade computacional, poucos são os algoritmos existentes na literatura. Neste trabalho é proposto um algoritmo, baseado no algoritmo de Okada & Soper, que utiliza dois parâmetros incertos nos arcos, custo e tempo, com restrições de tempo nos nós. As incertezas são abordadas utilizando a teoria dos conjuntos fuzzy.

Palavras-chave: teoria dos grafos; problema de caminho mínimo; teoria dos conjuntos fuzzy.


ABSTRACT

The shortest path problem in graphs with uncertainties in the parameters is an important problem in the mathematical programming, since it has a wide range of applications in different areas of Computation and Engineering, such as: computer networks, telecommunications, transportation, manufacturing, etc. However, due to its high computational complexity, there are few algorithms in the literature. In this paper is proposed an algorithm, based on Okada and Soper algorithm, which uses two uncertainty parameters, cost and time, with time restrictions in the nodes. The uncertainties are discussed using the fuzzy set theory.

Keywords: graphs theory; shortest path problem; fuzzy set theory.


 

 

1. Introdução

Incertezas, imprecisões, e ambiguidades são fatores que nem sempre podem ser ignorados na resolução de problemas. Introduzida por Zadeh nas décadas de 1960 e 1970 (Zadeh, 1965, 1968, 1978), a teoria de conjuntos fuzzy é uma ferramenta frequentemente utilizada na modelagem desses fatores. Atualmente, diversos trabalhos nas áreas da Engenharia e da Computação utilizam esta teoria (Moderson & Nair, 2000; Takahashi & Yamakami, 2004; Hernandes, 2007). Problemas de controle (Shaw & Simões, 1998), sistemas de suporte à decisão (Bellman & Zadeh, 1970), reconhecimento de padrões (Bezdek, 1981), e programação matemática (Malik & Moderson, 2001; Hernandes, 2007) constituem uma pequena amostra do espectro de suas aplicações.

Na programação matemática a área de grafos com incertezas é uma das mais estudadas, visto que grande quantidade de problemas pode ser representada na forma de redes: caminho mínimo (Blue et al., 2002; Hernandes & Takahashi, 2004; Hernandes, 2007; Hernandes et al., 2007; Klein, 1991; Lin & Chern, 1993; Okada & Soper, 2000; Okada, 2004); fluxo máximo (Chanas et al., 1995; Hernandes et al., 2006); fluxo de custo mínimo (Kim & Roush, 1982; Shih & Lee, 1999; Takahashi, 2004); dentre outras.

Embora a área de grafos tenha um vasto campo de aplicações, o estudo de grafos fuzzy ainda se encontra na fase inicial. Além do mais, a maioria destes problemas possui alta complexidade computacional, tornando difícil suas soluções. Em muitas aplicações do problema de caminho mínimo as restrições de custo e tempo não são rígidas, o que propicia o uso da teoria dos conjuntos fuzzy e o problema é, então, denominado "Problema de Caminho Mínimo Fuzzy" (PCM-fuzzy). Neste trabalho este tema é abordado, sendo que as incertezas presentes estão em dois parâmetros dos arcos e nas restrições de tempo nos nós. As incertezas dos arcos estão nos custos e nos tempos necessários para o fluxo percorrer aquele arco. As restrições de tempo estão em cada nó i, sendo que a soma dos tempos dos arcos dos caminhos entre o nó 1 e i não pode ultrapassar a restrição de tempo do referido nó i.

Dentre os principais trabalhos de caminho mínimo fuzzy encontrados na literatura destacam-se: Dubois & Prade (1980), Klein (1991), Okada & Soper (2000), Blue et al. (2002), Okada (2004), Chuang & Kung (2005), Nayeem & Pal (2005) e Hernandes et al. (2007). O trabalho de Dubois & Prade (1980) está entre um dos primeiros da literatura, onde é proposta a simples extensão dos algoritmos clássicos de Floyd e de Ford-Moore-Bellman. Porém, verificou-se que ambos os algoritmos podem retornar comprimentos sem um caminho associado. Em 1991, Klein contorna a dificuldade encontrada por Dubois & Prade com o uso de dominância de conjuntos fuzzy e propõe um algoritmo para determinar o menor caminho. O trabalho de Okada & Soper (2000) destaca-se pela obtenção da solução final, que é composta por um conjunto de caminhos não-dominados, sendo que cada elemento da solução é um caminho com certo grau de pertinência de ser o mínimo. Blue et al. (2002) apresentam uma taxonomia para grafos e propõem alguns algoritmos para os principais problemas. No algoritmo de caminho mínimo é determinado um valor de corte para limitar o número de caminhos a serem analisados; em seguida aplica-se uma versão modificada do algoritmo clássico dos k-caminhos mínimos, proposto por Eppstein (1994), a fim de se determinar os caminhos com algum grau de possibilidade de ser o mínimo. Okada (2004) estudou a interatividade entre os caminhos fuzzy e desenvolveu um algoritmo utilizando teoria de possibilidade, no qual introduz o conceito de grau de possibilidade de um arco pertencer a um caminho mínimo. Já Chuang & Kung (2005) propõem uma heurística para encontrar o comprimento do caminho mínimo, além do conceito de grau de similaridade, cuja finalidade é verificar, pela heurística proposta, a similaridade entre o comprimento mínimo encontrado, e os comprimentos de todos os possíveis caminhos. No trabalho de Nayeem & Pal (2005) é proposto um algoritmo baseado no índice de aceitabilidade de Sengupta & Pal (2000), em que o usuário, de acordo com seu ponto de vista (otimista/pessimista), deve escolher o melhor caminho. Porém, esta escolha só ocorre quando na solução final houver mais de um caminho entre dois nós. Um dos trabalhos mais recentes da literatura, Hernandes et al. (2007), propõe um algoritmo, baseado no algoritmo clássico de Ford-Moore-Bellman, que trabalha com as incertezas até a obtenção da solução final. Este trabalho também determina um conjunto solução de caminhos não-dominados, semelhante ao de Okada & Soper (2000), com a vantagem de poder ser aplicado em redes com parâmetros negativos.

Analisando os trabalhos citados anteriormente verifica-se que apresentam algumas desvantagens, tais como: alguns encontram custos sem caminhos associados; outros utilizam índices de "defuzzificação" para transformar o problema incerto em um problema clássico ocorrendo perda de informações. Os trabalhos mais recentes apresentam um conjunto solução de caminhos, sem apresentar ao usuário uma ordenação dos mesmos. Considerando o PCM-fuzzy com restrições de tempo, o único trabalho da literatura é o de Hernandes & Takahashi (2004), baseado no algoritmo de Ford-Moore-Bellman (Bellman, 1958). Porém, este trabalho apresenta como solução final um conjunto de caminhos não-dominados sem ordenação, deixando a cargo do usuário a decisão por um dos caminhos do conjunto. O algoritmo aqui proposto apresenta o conjunto solução ordenado.

Este trabalho está organizado da seguinte forma: na Seção 2 são apresentados alguns conceitos da teoria dos conjuntos fuzzy. A Seção 3 aborda o problema do caminho mínimo com incertezas apresentando o algoritmo proposto. Na Seção 4 estão os resultados computacionais. Conclusões e propostas futuras são discutidas na Seção 5.

 

2. Teoria dos Conjuntos Fuzzy

A teoria dos conjuntos fuzzy foi introduzida nas décadas de 60 e 70 pelo matemático Lotfi Asker Zadeh como uma teoria matemática aplicada a conceitos vagos, com a intenção de dar um tratamento matemático a termos linguísticos subjetivos.

A principal vantagem de se usar esta teoria está na capacidade adquirida de representar e manipular informações e conhecimentos expressos numa linguagem natural, como, por exemplo, "aproximadamente" e "em torno de".

Nesta seção são apresentados alguns conceitos utilizados neste trabalho (Bassanezi & Barros, 2006; Pedrycz & Gomide, 1998).

2.1 Conceitos Básicos

Definição 1: Seja U um conjunto (clássico). Um conjunto fuzzy F de U é caracterizado por uma função µF : U → [0,1 ] , chamada função de pertinência do conjunto fuzzy. O valor µF (x) ∈ [0,1] indica o grau com que o elemento x de U pertence ao conjunto fuzzy F ; µF (x)=0 e µF (x)=1 indicam, respectivamente, a não pertinência e a pertinência completa de x ao conjunto fuzzy F.

Do ponto de vista formal, a definição de conjuntos fuzzy foi obtida simplesmente ampliandose o contradomínio da função característica clássica, que é o conjunto {0,1}, para o intervalo [0,1]. Nesse sentido, pode-se dizer que um conjunto clássico é um caso particular de conjunto fuzzy cuja função de pertinência µF é a sua função característica X. Um conjunto clássico, na linguagem fuzzy, costuma ser denominado conjunto crisp.

O subconjunto clássico de U definido por supp(A) ={xU : µA (x)>0}, denominado suporte de F, é de fundamental importância na interrelação entre as teorias de conjuntos clássica e fuzzy.

Definição 2: Seja A um conjunto fuzzy de U e α ∈ [0,1]. Um α-corte de A é o conjunto clássico de U definido por [A]α = {xU : µA (x) > α} para 0 < α < 1.

Se [A]α = {xU : µA(x) > α}, [A]α é dito α-corte forte.

O nível zero de um conjunto fuzzy A é definido como sendo o menor conjunto (clássico) fechado de U que contém o conjunto suporte de A. Numa linguagem matemática, [A]º é o fecho do suporte de A e é indicado por supp(A).

 

 

2.2 Operações entre Conjuntos Fuzzy

Sejam A e B conjuntos fuzzy de U, com funções de pertinência indicadas por µA (x) e µB (x), respectivamente. As operações de união, intersecção e complementar são definidas da seguinte forma (Figura 2):

a) A união entre A e B é o conjunto fuzzy de U cuja função de pertinência é dada por: µ(A∪B) (x) = max {µA (x), µB (x)}, ∀xU.

b) A intersecção entre A e B é o conjunto fuzzy de U cuja função de pertinência é dada por: µ(A∩B) (x) = min {µA (x), µB (x)}, ∀xU.

c) O complementar de A é o conjunto fuzzy A' de U cuja função de pertinência é dada por: µA' (x) = 1 - µA (x),xU.

 

 

2.3 Números Fuzzy

Existem vários tipos de números fuzzy (Pedrycz & Gomide, 1998), entretanto, neste trabalho são utilizados apenas números fuzzy triangulares.

Definição 3: Valor modal é o valor x ∈ [a, ā] para o qual a função de pertinência tem valor máximo.

Definição 4: Um número fuzzy triangular pode ser definido como ã = (a, a, ā), tendo sua função de pertinência, µã (x): ℜ → [0,1] (Figura 3), dada por:

tal que:

a: limitante inferior;

a: valor modal; e

ā: limitante superior.

 

 

Definição 5: Sejam ã e dois números fuzzy triangulares, ã = (a, a, ā) e = (b, b, ), então a soma fuzzy é denotada por:

ã ⊕ = (a, a, ā)(b, b, ) = (a + b, a + b, ā + )

Definição 6: Sejam ã = (a, a, ā) e = (b, b, ) dois números fuzzy triangulares, então ã (ã domina ) se, e somente se, a < b, a < b, ā < , ã ≠ .

Definição 7: Um valor ã = (a, a, ā) é lexicograficamente menor do que = (b, b, ) se pelo menos uma das condições for satisfeita:

a < b ; a = b e a < b ; a = b , a = b e ā < .

2.4 Teoria de Possibilidade

Seja um grafo G=(V,A) com custos ∈ ℜn , ={ij}, associados aos seus arcos. Sejam dois subgrafos T1 e T2, T1T2 . Pode-se dizer que T1 tem um grau de possibilidade de ser menor do que T2 dado por (Okada, 2004):

 

3. O Problema do Caminho Mínimo com Incertezas

O problema do caminho mínimo está associado a várias aplicações nas áreas de roteamento, manufatura, fluxo em redes, dentre outras. Seu principal objetivo é minimizar os esforços de busca.

Sendo u e v dois vértices de um grafo G=(V,A), o caminho mínimo entre u e v é uma sequência de arcos que, passando por nós distintos, une u a v de forma a acumular o menor comprimento (distância). Para que haja um caminho mínimo entre dois arcos u e v é necessário que exista uma conexão entre eles, isto é, v seja sucessor de u (Goldbarg & Luna, 2000). Na maioria dos casos, existe mais de um caminho entre dois nós específicos; com isso, o problema do caminho mínimo consiste em encontrar o caminho com menor custo dentre todos os possíveis.

Na teoria dos grafos clássica, como o peso (custo) de cada arco é um número real (crisp), existem algoritmos eficientes para resolver este problema (Goldbarg & Luna, 2000). Porém, em muitas aplicações reais estes parâmetros (custos, capacidades, dentre outros) não são naturalmente precisos, muitas vezes, por falta de informações.

O algoritmo aqui proposto aborda incertezas nos arcos, além de incluir restrições de tempo nos nós. É composto de duas fases: na primeira é realizada uma adaptação do algoritmo de Okada & Soper (2000) para a detecção do conjunto solução de caminhos não-dominados; na segunda é feita a distribuição do fluxo ao longo dos arcos dos caminhos não-dominados.

3.1 Abordagem de Okada & Soper

O algoritmo proposto por Okada & Soper (2000) é uma modificação do algoritmo de Martin (1984) e foi desenvolvido com base no método de múltiplas etiquetas de Hansen (1980). Este método pode ser considerado como uma generalização do algoritmo de Dijkstra, que resolve o problema do caminho mínimo clássico.

Neste algoritmo os comprimentos dos arcos são dados por números fuzzy triangulares positivos. Como o custo do caminho é dado pela soma dos custos dos arcos, este também é representado por um número fuzzy. A solução, baseada no conceito de dominância, contém todos os caminhos não-dominados de um nó s a um nó t (Definição 6).

Como a relação de dominância pode apresentar mais de um caminho não-dominado entre dois nós, cada caminho recebe um rótulo (etiqueta) para que este seja composto no passo final do algoritmo. As etiquetas são divididas em dois conjuntos: o conjunto das etiquetas temporárias e o das etiquetas permanentes. Enquanto uma etiqueta temporária pode ser excluída, ou mudada para uma etiqueta permanente, uma permanente permanece inalterada.

Para selecionar tanto uma etiqueta temporária como uma permanente, no algoritmo de Dijkstra é escolhida aquela com a menor distância (custo); já no algoritmo de Okada & Soper é utilizada uma relação de ordem lexicográfica.

3.2 O Problema do Caminho Mínimo com Incertezas e Restrições de Tempo

Neste problema a rede a ser considerada, além de possuir os dois parâmetros incertos nos arcos (custo e tempo), também possui uma restrição de tempo em cada um dos nós, isto é, a soma dos tempos dos arcos que pertencem ao caminho, entre os nós 1 e i, não pode ultrapassar o tempo máximo estipulado na restrição do referido nó i. Considerando que os parâmetros dos arcos e as restrições dos nós são números fuzzy, as verificações das restrições são satisfeitas utilizando a medida de possibilidade, definida da seguinte forma:

Definição 8: Seja i(1,j) o tempo da i-ésima etiqueta do caminho entre os nós 1 e j, e seja Rtj a restrição de tempo do nó j, então a restrição de tempo é satisfeita se Pt = Poss (i(1j) < Rtj) > β, β ∈ [0,1].

O valor de β(β[0,1]) fica a cargo do usuário, pois depende da aplicação em questão.

Como na solução final é encontrado um conjunto de caminhos não-dominados, em algumas situações haverá mais de um caminho entre um par de nós, com isso é necessário ordená-los.

A ordenação em relação ao tempo (e ao custo dos caminhos) é feita usando a medida de possibilidade (Definição 8). Maior medida de possibilidade indica melhor caminho em relação ao tempo, Pt e em relação ao custo Pc. Porém, há casos em que gera indecisões sobre qual caminho escolher: um caminho barato e relativamente lento ou um caminho relativamente rápido e mais caro?

Para resolver esta indecisão foi proposta uma combinação convexa entre estes parâmetros incertos (α. Pc + (1 - α) . Pt), tal que α ∈ [0,1]. Esta proposta é detalhada nos resultados computacionais.

3.3 Algoritmo Proposto

O objetivo deste algoritmo é encontrar todos os caminhos não-dominados entre os nós 1 e i (i=2,3,...,n) que satisfaçam as restrições de tempo entre os nós. Os passos 1, 2 e 3 do algoritmo correspondem à adaptação do algoritmo de Okada & Soper.

3.3.1 Algoritmo

Informações sobre o algoritmo:

N : conjunto dos nós.
A : conjunto dos arcos.
T : conjunto dos caminhos temporários, sendo cada elemento (i,k) o caminho do nó 1 a i com a etiqueta k.
P: conjunto dos caminhos permanentes.
(sj) : custo do arco (s,j).
(sj) : tempo do arco (s,j).
i(1j) : custo da i-ésima etiqueta do caminho entre os nós 1 e j.
i(1j) : tempo da i-ésima etiqueta do caminho entre os nós 1 e j.
Rtj : restrição de tempo do nó j.
i(1j) u(1j) : o custo do caminho do nó 1 ao nó j dado pela etiqueta i domina o custo dado pela etiqueta u (Definição 6).

 

 

3.3.2 Complexidade Computacional

Seja Vj o número de etiquetas permanentes do nó j e Vmax = max{V1,V2,...,Vr}. Sendo r o número de nós do grafo. No Passo 2 são efetuadas no máximo rVmax somas para calcular o custo, rVmax somas para o cálculo do tempo e rV2max comparações para dominância, possuindo portanto complexidade O(rV2max)=O(rVmax+rVmax+rV2max). Considerando que o algoritmo proposto é uma adaptação de Dijkstra, cuja complexidade é O(r2), e que os demais passos não possuem complexidade maior que o Passo 2, tem-se que a complexidade do algoritmo proposto é limitada por O(r2(rV2max))=O(r3V2max) (Okada & Soper, 2000).

 

4. Resultados Computacionais

O algoritmo proposto foi implementado em Java Standard Edition, versão 5.0, e a ferramenta BlueJ, versão 2.1.3, sendo executado em duas redes (Figuras 4 e 5). Nos exemplos trabalhados os valores considerados para β foram iguais a zero, ou seja, se a medida de possibilidade (Definição 8) tiver valor diferente do nulo significa que a restrição do referido nó foi satisfeita. Porém, como dito anteriormente, cabe ao usuário decidir sobre o valor de β.

 

 

 

 

Exemplo 1.

Este exemplo trata de uma pequena rede (Figura 4), sendo a meta comentar mais detalhadamente os caminhos não-dominados. Os números fuzzy triangulares que estão nos nós da respectiva figura representam as restrições de tempo.

A Tabela 1 apresenta os parâmetros incertos dos arcos da Figura 4.

 

 

Aplicando o algoritmo proposto foram obtidos os seguintes resultados:

1. Entre os nós 1e i (i = 2,3,4) foi obtido apenas um caminho não-dominado que satisfez a respectiva restrição de tempo do respectivo nó, não sendo necessário ordená-lo.

2. Os caminhos detectados entre os nós 1 e 5 foram:

• Caminho 1: 1 → 2 → 5, com custo = (42 51 58), tempo = (2 4 6); Pt = 1,0.

• Caminho 2: 1 → 2 → 4 → 5, com custo = (43 50 57), tempo = (9 12 15); Pt = 0,8333.

Analisando os dois caminhos não-dominados entre os nós 1 e 5, a possibilidade do custo do caminho 1 ser menor que a do caminho 2 é calculada por:

A possibilidade do custo do caminho 2 ser menor que a do caminho 1 é calculada por:

Com os cálculos das medidas de possibilidade verificou-se que o Caminho 1 possui Pt=1, maior do que a do Caminho 2 (Pt=0,833), porém o valor de seu Pc é menor do que a do Caminho 2. Logo, caberá ao usuário decidir qual destes dois caminhos escolher: se o mesmo priorizar o tempo, o valor de α deverá ser "pequeno" e caso priorize o custo, o valor de α deverá ser oposto.

Por exemplo:

Seja α = 0,7 (priorizando o custo), os resultados são:

• Caminho 1 = (α.Pc + (1-α).Pt) → caminho 1 = (0,7(0,5) + (1-0,7)(1,0)) → caminho 1 = 0,65;

• Caminho 2 = (α.Pc + (1-α).Pt) → caminho 2 = (0,7(1,0) + (1-0,7)(0,8333)) → caminho 2 = 0,95.

Logo, os caminhos ficam ordenados da seguinte forma: caminho 2, caminho 1.

Considerando α = 0,2 (priorizando o tempo), os resultados são:

• Caminho 1 = (α.Pc + (1-α).Pt) → caminho 1 = (0,2(0,5) + (1-0,2)(1,0)) → caminho 1 = 0,9;

• Caminho 2 = (α.Pc + (1-α).Pt) → caminho 2 = (0,2(1,0) + (1-0,2)(0,8333)) → caminho 2 = 0,8666.

Logo, os caminhos ficam ordenados da seguinte forma: caminho 1, caminho 2.

Vale ressaltar que, caso fossem obtidos mais de dois caminhos entre um par de nós, a análise dos resultados para a ordenação dos caminhos não-dominados seria análoga, sendo prevista no Passo 5 do algoritmo.

Para fins de ilustração e comparação, este problema incerto foi transformado em um problema crisp, ou seja, foram considerados os valores modais para os custos e as capacidades, obtendo os seguintes resultados:

• Caminho 1: 1 → 2 → 5, com custo = 51, tempo = 4.

• Caminho 2: 1 → 2 → 4 → 5, com custo = 50, tempo = 12 (eliminado, tempo > 11).

Analisando os caminhos obtidos verificou-se que o segundo foi eliminado por não satisfazer as restrições de tempo dos nós, ou seja, seu tempo foi maior que o limite exigido.

Com os resultados obtidos pelos dois problemas (fuzzy e crisp) percebe-se que os do primeiro (problema fuzzy) são mais completos que os do segundo (problema crisp), pois, caso o usuário queira optar pelo custo, não levando em consideração o tempo, escolherá o Caminho 2. Porém, caso seja considerado somente o problema crisp, o usuário deverá, necessariamente, optar pelo Caminho 1, mesmo tendo um custo maior.

Exemplo 2.

Este exemplo (Figura 5) se refere à rede Europeia COST239 (Tan & Sinclair, 1995). Os nós da rede e suas restrições de tempo estão definidos na Tabela 2.

 

 

Na Tabela 3 estão os nós origem e destino de cada arco, bem como os seus respectivos custos e tempos, enquanto na Tabela 4 são apresentados os resultados finais.

 

 

 

 

Analisando a Tabela 4 verifica-se que existem dois caminhos não-dominados entre os nós 1 e 4 (1 → 3 → 4; 1 → 9 → 8 → 4) e entre os nós 1 e 11 (1 → 6 → 11; 1 → 9 → 7 → 11) que satisfazem as restrições de tempo. Para os demais nós existe apenas um caminho não-dominado.

Verificando os dois caminhos entre os nós 1 e 4 percebe-se que o primeiro (1 → 3 → 4) é melhor do que o segundo, visto que tanto sua medida de possibilidade em relação ao custo (Pc), quanto em relação ao tempo (Pt), são maiores do que as medidas do segundo caminho (1 → 9 → 8 → 4).

A análise dos caminhos entre os nós 1 e 11 é semelhante à feita em relação aos caminhos entre os nós 1 e 4, porém ficará a cargo do usuário decidir se deve priorizar o tempo ou o custo, semelhante ao Exemplo 1.

Ressalta-se que não foram calculadas as possibilidades de custo dos demais caminhos em virtude da existência de um único caminho entre os respectivos nós.

Assim, como o exemplo anterior, este foi convertido em um problema clássico, sendo os custos dos arcos e os tempos os valores modais. Após executá-lo, foram obtidos os seguintes resultados:

Verificando os resultados da Tabela 5 percebe-se que não foi possível encontrar caminhos entre todos os pares de nós [(1,4), (1,6) e (1,9)], pois os caminhos existentes não satisfizeram as restrições de tempo. Este fato pode ser comprovado observando a Tabela 4, haja vista que todos os caminhos existentes entre estes pares de nós possuem Pt < 1.

 

 

Outro fato importante pode ser observado no caminho encontrado entre os nós 1 e 11: não foi escolhido o que possui o menor custo, pois o mesmo não satisfez as restrições de tempo.

Comparando os resultados dos dois problemas, fuzzy e clássico, verificou-se que o primeiro apresentou um gama de resultados mais significativa.

 

5. Conclusões

Em problemas de grafos com incertezas, o problema de caminho mínimo fuzzy é um dos mais estudados, visto que apresenta aplicações nas mais diversas áreas, fato este que pode ser comprovado pelas várias citações do texto.

Neste trabalho foi proposto um algoritmo para o PCM-fuzzy com dois parâmetros incertos nos arcos, custo e tempo, além da restrição de tempo dos nós. O algoritmo proposto apresenta como solução final um conjunto ordenado de caminhos não-dominados, ao contrário dos trabalhos da literatura que, quando abordam o tema desta forma (utilizando caminhos não-dominados), apenas apresentam o conjunto solução, sem sequer guiar o usuário para a escolha de um dos caminhos.

Vale ressaltar que o único trabalho da literatura que aborda o PCM-fuzzy com restrição de tempo (Hernandes & Takahashi, 2004) não apresenta o conjunto solução ordenado além de possuir uma complexidade computacional maior. É uma adaptação do algoritmo de Ford-Moore-Bellman, enquanto este é uma adaptação do algoritmo de Dijkstra.

Como trabalho futuro, pretende-se adaptar este problema a redes que possuam parâmetros negativos nos arcos e aplicar α-cortes no conjunto solução dos caminhos não-dominados. Outra proposta é aplicar este algoritmo no Problema de Fluxo de Custo Mínimo Fuzzy.

 

Referências Bibliográficas

(1) Bassanezi, R.C. & Barros, L.C. (2006). Tópicos de Lógica Fuzzy e Biomatemática. Unicamp / IMECC, Campinas, SP.         [ Links ]

(2) Bellman, R.E. (1958). On a routing problem. Quarterly Applied Mathematics, 16, 87-90.         [ Links ]

(3) Bellman, R.E. & Zadeh, L. (1970). Decision making in a fuzzy environment. Manag. Science, 17.         [ Links ]

(4) Bezdek, J. (1981). Pattern Recognition with Fuzzy Objective Function Algorithms. Plenum Press.         [ Links ]

(5) Blue, M.; Bush, B. & Puckett, J. (2002). Unified approach to fuzzy graph problems. Fuzzy Sets and Systems, 125, 355-368.         [ Links ]

(6) Chanas, S.; Delgado, M.; Verdegay, J.L. & Vila, M. (1995). Fuzzy optimal flow on imprecise structures. European Journal of Operational Research, 83, 568-580.         [ Links ]

(7) Chuang, T. & Kung, J. (2005). The fuzzy shortest path length and the corresponding shortest path in a network. Computers and Operations Research, 32, 1409-1428.         [ Links ]

(8) Dubois, D. & Prade, H. (1980). Fuzzy Sets and Systems: Theory and Applications. Academic Press, New York.         [ Links ]

(9) Eppstein, D. (1994). Finding the k-shortest paths. Anais do IEEE Symposium on Foundations of Computer Science, 154-165.         [ Links ]

(10) Goldbarg, M.C. & Luna, H.P.L. (2000). Otimização Combinatória e Programação Linear - Modelos e Algoritmos. Editora Campus Ltda., Rio de Janeiro, RJ.         [ Links ]

(11) Hansen, P. (1980). Bicriterion path problems. In: Multiple criteria decision making: theory and applications, lecture note in economics and in mathematical systems. [edited by M. Beckmann and H.P. Kunzi], Springer Verlag, 177, 109-127.         [ Links ]

(12) Hernandes, F. & Takahashi, M.T. (2004). Adaptação de um algoritmo de caminho mínimo em grafos com custo nos arcos e restrições de tempo fuzzy. Anais do XXXVI Simpósio Brasileiro de Pesquisa Operacional.         [ Links ]

(13) Hernandes, F.; Yamakami, A.; Takahashi, M.T. & Verdegay, J.L. (2006). Um algoritmo para o problema de fluxo máximo em redes com incertezas. Anais do XXXVIII Simpósio Brasileiro de Pesquisa Operacional, 2272-2283.         [ Links ]

(14) Hernandes, F. (2007). Algoritmos para grafos com incertezas. Tese de doutorado. Faculdade de Engenharia Elétrica e de Computação, Universidade Estadual de Campinas.         [ Links ]

(15) Hernandes, F.; Lamata, M.T.; Verdegay, J.L & Yamakami, A. (2007). The shortest problem on networks with fuzzy parameters. Fuzzy Sets and Systems, 158, 1561-1570.         [ Links ]

(16) Kim, K. & Roush, F. (1981). Fuzzy flows on networks. Fuzzy Sets and Systems, 8, 35-38.         [ Links ]

(17) Klein, C.M. (1991). Fuzzy shortest paths. Fuzzy Sets and Systems, 39, 27-41.         [ Links ]

(18) Lin, C. & Chern, M.S. (1993). The fuzzy shortest path problem and its most vital arcs. Fuzzy Sets and Systems, 58, 343-353.         [ Links ]

(19) Malik, D. & Moderson, J.N. (2001). Fuzzy Discrete Structures. Volume 58 da série de livros Studies in Fuzziness and Soft Computing, Springer-Verlag, New-York.         [ Links ]

(20) Moderson, J.N. & Nair, P.S. (2000). Fuzzy graphs and fuzzy hypergraphs. Livro da série: Studies in Fuzziness and Soft Computing, Physica-Verlag.         [ Links ]

(21) Nayeem, S.M.A. & Pal, M. (2005). Shortest path problem on a network with imprecise edge weight. Fuzzy Optimization and Decision Making, 4, 293-312.         [ Links ]

(22) Okada, S. & Soper, T. (2000). A shortest path problem on a network with fuzzy arc lengths. Fuzzy Sets and Systems, 109, 129-140.         [ Links ]

(23) Okada, S. (2004). Fuzzy shortest path problems incorporating interactivity among paths. Fuzzy Sets and Systems, 142(3), 335-357.         [ Links ]

(24) Pedrycz, W. & Gomide, F. (1998). An Introduction to Fuzzy Sets: Analysis and Design. MIT Press, London.         [ Links ]

(25) Sengupta, A. & Pal, T.K. (2000). On comparing interval numbers. European Journal of Operational Research, 127, 29-43.         [ Links ]

(26) Shaw, I.S. & Simões, M.G. (1998). Controle e Modelagem Fuzzy. Edgar-Blucher/Fapesp.         [ Links ]

(27) Shih, H.-S. & Lee, E.S. (1999). Fuzzy multi-level minimum cost flow problems. Fuzzy Sets and Systems, 107, 159-176.         [ Links ]

(28) Takahashi, M.T. (2004). Contribuições ao estudo de grafos fuzzy: teoria e algoritmos. Tese de doutorado, Faculdade de Engenharia Elétrica e de Computação, Universidade Estadual de Campinas.         [ Links ]

(29) Takahashi, M.T. & Yamakami, A. (2004). The assignment problem with fuzzy weights. Anais do North American Fuzzy Information Processing Society, Alberta, Canadá         [ Links ].

(30) Tan, L.G. & Sinclair, M.C. (1995). Wavelength assignment between the central nodes of the cost239 european optical network. Anais do 11th UK Performance Engineering Workshop, Liverpool, 235-247.         [ Links ]

(31) Zadeh, L. (1965). Fuzzy sets. Information and Control, 8, 338-353.         [ Links ]

(32) Zadeh, L. (1968). Fuzzy algorithms. Information and Control, 12.         [ Links ]

(33) Zadeh, L. (1978). Fuzzy sets as a theory of possibility. Journal of Fuzzy Sets and Systems, 1.         [ Links ]

 

 

Recebido em 08/2008; aceito em 04/2009
Received August 2008; accepted April 2009

 

 

* Corresponding author / autor para quem as correspondências devem ser encaminhadas