Você está na página 1de 6

O Problema do Caminho Mais Curto

1) Definição:

Os problemas de caminho mais curto com um só objectivo são fundamentais e


frequentes quando se estudam problemas em redes, por exemplo de
transportes ou de comunicações. Este problema surge quando se pretende
determinar o caminho mais curto, mais barato ou mais fiável, entre um ou
vários pares de nós de uma rede.

Estes problemas surgiram a partir de adaptações a uma grande variedade de


problemas práticos, não só como modelos únicos mas também como
subproblemas de problemas mais complexos. Por exemplo, surgiram nas
indústrias de telecomunicações e de transportes sempre que se pretendia
enviar uma mensagem, ou um veículo, entre dois locais geograficamente
distantes, o mais rápido ou o mais barato possível.

O planeamento do tráfego urbano fornece um outro exemplo importante : os


modelos utilizados para o cálculo do fluxo de tráfego padrão são problemas de
optimização não linear, ou modelos de equilíbrio complexos. Contudo, a
maioria das abordagens algorítmicas para determinar tráfegos urbanos padrão
consiste, sob hipóteses simplificadoras, em resolver um grande número de
problemas de caminho mais curto como subproblemas (um para cada par de
nós origem−destino na rede) [1].

Existem três tipos de problemas de caminho mais curto :

• de um nó para outro,

• de um nó para todos os outros (árvore dos caminhos mais curtos),

• entre todos os pares de nós.


2) Modelo genérico

3) Soluções

Uma fábrica de artigos de decoração, localizada em Lambari (MG), deve


entregar uma grande quantidade de peças na cidade de Baependi (MG). A
empresa quer saber qual o caminho que seu caminhão de entregas deve fazer
para minimizar a distância total percorrida. A figura a seguir, extraída de
Lachtermacher (2004), representa, na forma de rede, as ligações entre as
cidades da região.
Solução:

(a) Variáveis de decisão:

X ij =1; se o arco (i; j) pertencer ao caminho;0; caso contrário.

(b) Função objetivo:

min f(x) = 41x12 + 44x13 + 50x15 + 37x24 + 27x35 + 45x46 + 4x56

(c) Restrições:

c.1) Equilíbrio de fluxo nos nós:

c.2) Integralidade e não-negatividade:

Considere os seguintes parâmetros de entrada:

V : Conjunto dos vértices (nós)

dij : Distância do vértice i ao vértice j

n : Cardinalidade do conjunto de vértices, isto é, n = /V/

Considerando o nó 1 como o nó origem e n como o nó destino, pode-se


modelar o problema de caminho mínimo genericamente como:
4) Matlab

>> C= [ 41 ; 44; 50; 37; 27; 45; 4]

C=

41

44

50

37

27

45

>> A= [ 1 1 1 0 0 0 0 ; 1 0 0 -1 0 0 0; 0 1 0 0 -1 0 0; 0 0 0 1 0 -1 0 ; 0 0 1 0 1
0 -1; 0 0 0 0 0 1 1]

A=

1 1 1 0 0 0 0

1 0 0 -1 0 0 0

0 1 0 0 -1 0 0

0 0 0 1 0 -1 0

0 0 1 0 1 0 -1

0 0 0 0 0 1 1

>> b= [1; 0 ;0 ;0 ;0; 1]


b=

>> lb=zeros(6,1)

lb =

>> [X,vf,i1,i2]=bintprog (C,[],[],A,b)

Optimization terminated.

X=

0
0

vf =

54

i1 =

i2 =

iterations: 0

nodes: 1

time: 0.8268

algorithm: 'LP-based branch-and-bound'

branchStrategy: 'maximum integer infeasibility'

nodeSrchStrategy: 'best node search'

message: 'Optimization terminated.'

Você também pode gostar