Buscar

Modelos de Fluxo em Redes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Modelos de Fluxo em Redes
APRESENTAÇÃO
Fluxo em rede é um método de análise da programação linear que se destaca pela minimização 
de uma função que depende do fluxo (custo/lucro) em uma rede. Há vários modelos de fluxos 
em rede indicados para diversas aplicações. Isso permite o desenvolvimento de algoritmos 
especializados com grandes vantagens computacionais.
Nesta Unidade de Aprendizagem, você vai estudar sobre os algoritmos utilizados na resolução 
de problemas de fluxo em rede, aprender métodos utilizados nos problemas clássicos, além de 
ver definições importantes para o estudo de fluxos em redes.
Bons estudos.
Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados:
Definir a terminologia das redes.•
Descrever modelos de fluxo em redes em diversas aplicações.•
Resolver problemas clássicos.•
DESAFIO
Você trabalha em uma empresa construtora de aviões que pretende planejar a produção de um 
motor durante os próximos quatro meses.
Veja os detalhes da produção:
Dadas as variações nos custos de produção, pode valer a pena produzir alguns motores um ou 
mais meses antes das datas programadas para a entrega. Se optar por essa hipótese, os motores 
serão armazenados até o mês de entrega, com um custo adicional de 0,015 milhões de dólares 
por mês.
Mediante o pedido do diretor de produção, formule o problema por meio do fluxo de redes.
INFOGRÁFICO
As soluções de problemas clássicos de fluxos em rede são obtidas por meio de uma variedade de 
algoritmos. Veja no infográfico algumas características de modelos de fluxos em redes. 
Conteúdo interativo disponível na plataforma de ensino!
 
CONTEÚDO DO LIVRO
Alguns sistemas são abordados como redes, tais como: sistemas de produção/distribuição; 
sistemas de tráfego urbano; sistemas de rodovias (transporte); sistemas de comunicação; rede de 
dutos/tubulações; sistemas de localização; redes elétricas, entre outros sistemas. No capítulo 
Modelos de fluxo em redes, do livro "Pesquisa Operacional", você vai ver os fatores envolvidos 
na utilização dos modelos de fluxo em redes.
Boa leitura.
PESQUISA
OPERACIONAL
Organizador: 
Rodrigo Rodrigues
Catalogação na publicação: Poliana Sanchez de Araujo – CRB 10/2094
R696p Rodrigues, Rodrigo.
 Pesquisa operacional / Rodrigo Rodrigues. – 
 Porto Alegre : SAGAH, 2017.
 121 p. : il. ; 22,5 cm. 
 ISBN 978-85-9502-004-7
 1. Pesquisa operacional – Engenharia de 
 produção. I. Título. 
CDU 658.5
Modelos de fluxos em rede
Objetivos de aprendizagem
Ao final deste texto, você deve apresentar os seguintes aprendizados:
 � Definir a terminologia das redes.
 � Descrever modelos de fluxo em redes em diversas aplicações.
 � Resolver problemas clássicos.
Introdução
Fluxo em rede é um método de análise da programação linear que se 
destaca pela minimização de uma função que depende do fluxo (custo/
lucro) em uma rede. Há vários modelos de fluxos em rede indicados 
para diversas aplicações. Isso permite o desenvolvimento de algoritmos 
especializados com grandes vantagens computacionais. 
Neste texto, você vai estudar sobre os algoritmos utilizados na reso-
lução de problemas de fluxo em rede, aprender métodos utilizados nos 
problemas clássicos, além de ver definições importantes para o estudo 
de fluxos em redes. 
Terminologia das redes
Alguns sistemas são abordados como redes: sistemas de produção/distribui-
ção; sistemas de tráfego urbano; sistemas de rodovias (transporte); sistemas 
de comunicação; rede de dutos/tubulações; sistemas de localização; redes 
elétricas, entre outros sistemas.
U N I D A D E 2
Em fluxos em rede há alguns problemas que são clássicos e tentam res-
ponder a certas questões, por exemplo: 
 � Problema do caminho mínimo (PCM): qual é a melhor forma de per-
correr uma rede indo de um dado ponto a outro, com o menos custo 
possível? 
 � Problema de fluxo máximo (PFM): é uma rede com arcos capacitados? 
Como e qual é o máximo de fluxo possível de se enviar de um dado 
ponto a outro da rede, respeitando a capacidade dos arcos?
 � Problema de fluxo com custo mínimo (PFCM): considerando um dado 
custo por unidade de fluxo em uma rede (nos seus arcos) com arcos 
capacitados e que precisamos enviar unidades de fluxo alocadas em 
determinados nós (oferta/produção) para outros nós (demanda/consumo), 
como fazê-lo com o menor custo possível?
Alguns problemas de fluxo em rede, por serem formulados como um pro-
blema de programação linear, podem ser resolvidos pelo método simplex, de 
modo que qualquer um dos pacotes utilizados por esse método também poderá 
ser usado. Entretanto, é possível a utilização, com eficiência, de algoritmos 
para a resolução desses problemas.
Algoritmos 
Pelo fato de o problema do fluxo máximo, por exemplo, ser formulado como um 
problema de programação linear, pode-se resolvê-lo pelo método simplex, de 
modo que qualquer um dos pacotes de software de programação linear possa ser 
usado. Contudo, um algoritmo de caminhos aumentados, eficiente, encontra-
-se disponível para resolver esse tipo de problema. Esse algoritmo baseia-se 
em dois conceitos intuitivos, uma rede residual e um caminho aumentado.
Segundo Hillier e Lieberman (2013), um caminho aumentado é um caminho 
direcionado da origem para o escoadouro na rede residual, de modo que nele 
todo arco tenha capacidade residual estritamente positiva. Capacidade residual 
de caminho aumentado é a denominação para o mínimo dessas capacidades 
residuais, pois ele representa a quantidade de fluxo que pode ser adicionada 
de maneira viável ao caminho todo. Desse modo, cada caminho aumentado 
fornece uma oportunidade de se aumentar ainda mais o fluxo pela rede original. 
Pesquisa operacional76
O algoritmo do caminho aumentado seleciona algum caminho desses e 
apresenta um fluxo igual à sua capacidade residual ao caminho na rede original. 
Esse processo continua até que não haja mais caminho aumentado, de modo 
que o fluxo, partindo da origem e indo para o escoadouro, não possa ser mais 
aumentado. A estratégia para garantir que a solução final seja necessariamente 
ótima é o fato de os caminhos para fluxos designados não poderem impedir 
o emprego de uma combinação melhor de designações de fluxo.
Resumindo, cada iteração do algoritmo consiste nas três etapas indicadas 
a seguir.
Algoritmo do caminho aumentado para o problema 
do fluxo máximo
1. Identifique um caminho aumentado encontrando algum caminho di-
recionado da origem para o escoadouro na rede residual, tal que cada 
arco desse caminho tenha capacidade residual estritamente positiva. (Se 
não existir algum caminho aumentado, os fluxos de rede já constituem 
um padrão de fluxo ótimo.)
2. Identifique a capacidade residual c* desse caminho aumentado encon-
trando o mínimo das capacidades residuais dos arcos nesse caminho. 
Aumente o fluxo nesse caminho de c*.
3. Diminua de c* a capacidade residual de cada arco nesse caminho au-
mentado. Aumente de c* a capacidade residual de cada arco na direção 
oposta nesse caminho aumentado. Retorne à etapa 1.
Quando a etapa 1 for executada, em geral há uma série de caminhos aumen-
tados alternativos para se escolher. Embora a estratégia algorítmica para fazer 
essa seleção seja importante para a eficiência de implementações em grande 
escala, não iremos nos aprofundar nesse tópico relativamente especializado. 
O uso de algoritmos na busca da solução serve para encontrar nós de uma 
rede com determinadas características. Muitas variantes estão nos algoritmos de 
fluxo máximo e fluxo com caminho mais curto. As aplicações mais comuns são:
 � Encontre todos os nós que estão ligados a um dado nó origem por meio 
de um caminho direcionado e vice-versa.
 � Identifique todos os componentes conexos de uma dada rede.
 � Determine se uma dada rede é bipartida.
 � Encontre um ciclo direcionado em uma rede.
77Modelos de fluxos em rede
Árvore de valor mínimo
Existem diferentes e importantes tipos de algoritmos para a determinação 
de árvores de valormínimo. Aqui será apresentado apenas o algoritmo de 
Kruskal, devido à sua simplicidade. Antes disso, definiremos grafo: estrutura 
que corresponde a um par de conjuntos G = (N, E), em que N é um conjunto 
de entidades. Por exemplo, essas entidades podem estar associadas a pontos, 
locais, pessoas, áreas geográficas; e E é um conjunto em que seus elementos 
são ligações ou inter-relações entre os elementos de N, que podem ser estradas, 
parentescos e fronteiras entre áreas geográficas.
Algoritmo de Kruskal 
Dado um grafo G = (N,E) não orientado e valorado para a construção de uma 
árvore de valor mínimo, parte-se do grafo trivial G = (N,0), que é constituído 
apenas pelos nós do grafo original G, acrescentando-se iterativamente a aresta 
de menor valor que não forma ciclo com as já escolhidas. O comprimento 
mínimo será obtido pela soma dos valores associados às arestas da árvore 
resultante do procedimento descrito anteriormente. Na Figura 1, estão um 
grafo, sua árvore mínima e o valor do comprimento mínimo associado. 
Figura1. Grafo e uma árvore parcial mínima.
Pesquisa operacional78
Caminho mais curto 
A determinação de um caminho mais curto em um grafo, devido à sua apli-
cabilidade prática, é um problema importante em várias áreas, como na área 
de logística, por exemplo. O comprimento de um caminho P é definido como 
sendo a soma dos comprimentos de todos os arcos de P. O problema é encon-
trar o caminho mais curto, de um nó inicial s para um nó terminal t. Aqui se 
considera um grafo valorado simples (isto é, sem laços e arcos paralelos) G 
com n nós que pode ser descrito por uma matriz Dnxn= [dij], em que:
Em geral, dij ≠dji, e a desigualdade do triângulo não precisa ser satisfeita, 
ou seja, dij + djk pode ser menor que dik. 
Então, se a desigualdade do triângulo é satisfeita, para todo i, j e k, o 
problema seria trivial, pois o arco direto (x, y) seria o caminho mais curto 
do vértice x ao y. 
Vejamos, a seguir, o algoritmo de Dijkstra, que foi um dos primeiros a 
serem propostos para resolver problemas do caminho mais curto. Sua aplicação 
se dá quando os comprimentos de cada arco são dij ≥ 0. O algoritmo não se 
aplica nos casos em que os comprimentos são negativos.
Algoritmo de Dijkstra
O algoritmo de Dijkstra usa uma técnica de rotulação dos nós a partir de s, 
o nó inicial do caminho. Há dois tipos de rotulação: temporária e definitiva. 
O valor do nível em que um nó j é rotulado definitivamente, a partir de s, é 
exatamente o comprimento do caminho mais curto entre s e j. Em cada iteração 
do algoritmo, alguns nós são rotulados temporariamente e outros definitiva-
mente, assim, aplica-se o algoritmo até se conseguir rotular definitivamente 
o nó terminal do caminho, que é o nó t (BOAVENTURA NETTO, 2003).
79Modelos de fluxos em rede
Aplicação do algoritmo de Dijkstra
 � Passo 1 (Inicialização): rotule definitivamente (RD) o nó s a um nível 
0 e rotule temporariamente (RT) os demais nós a um nível ∞. 
 � Passo 2: todo nó j ainda não rotulado definitivamente deve receber 
uma nova rotulação temporária cujo valor será: min [valor da rotulação 
temporária atual de j, valor da rotulação definitiva de i + dij], onde i é 
o nó rotulado definitivamente na iteração anterior. 
 � Passo 3: rotule definitivamente o nó i associado ao menor valor de 
rótulos encontrados no Passo 1. 
 � Passo 4: repita .
Os Passos 1 e 2 até conseguir rotular definitivamente o nó terminal do 
caminho t. O valor da rotulação definitiva do nó t corresponderá ao compri-
mento do caminho mais curto entre s e t. Para determinar quais são os nós 
intermediários do caminho mais curto entre s e t, trabalhe do final do caminho 
para o começo (backtracking) da seguinte forma: 
a) A partir do nó t, procure achar qual foi o primeiro nó responsável pelo 
seu valor de rótulo definitivo. Suponha que tenha sido o nó k. Ele é 
denominado de nó Pai do nó t. 
b) Procure achar qual foi o primeiro nó i, do Passo 2, responsável pelo 
valor de rótulo definitivo de k. 
c) Aplique o mesmo procedimento para encontrar o nó Pai do nó k e repita-
-o, sucessivamente, até encontrar o nó inicial s, como sendo o nó Pai, 
responsável pelo valor do rótulo definitivo de algum nó intermediário. 
d) Os nós assim determinados irão compor o caminho mais curto. 
Veja o grafo da Figura 2 e determine o caminho mais curto entre os nós 
B (será o nó s) e G (será o nó t). Determine, também, o comprimento total 
mínimo do caminho.
Pesquisa operacional80
Figura 2. Rede do exemplo para a aplicação do algoritmo de Dijkstra.
Figura 3. Algoritmo de Dijkstra aplicado ao grafo da Figura 2.
Na resolução, adota-se um vetor de dimensão 1 x 7 para mostrar os níveis de 
rotulações temporárias (RT) e definitivas (RD) dos nós, enquanto caminha-se 
para a solução ótima, como na Figura 3. 
81Modelos de fluxos em rede
As rotulações definitivas são colocadas dentro de um quadrado, e o último 
nível de rotulação definitiva do vetor é indicado por √. 
A solução ótima é: 
O comprimento total mínimo = valor do nível de rotulação 
definitiva do nó terminal G = 7 e o caminho mais curto 
(obtido do fim para o começo) é G ← E ← C ← B. 
Fluxo máximo 
Na análise do desempenho de um grafo valorado, com frequência é necessário 
calcular o valor ótimo de uma função do fluxo entre dois vértices: o vértice 
fonte e o vértice t, conhecido como destino. 
Agora, apresentamos uma situação em que há apenas um tipo de fluxo no 
grafo, que pode ser eletricidade, água, informação ou tráfego, por exemplo. 
Na literatura especializada, esse caso é conhecido como The One-Commodity 
Flow Problem, e o grafo é denominado rede. 
Seja βi o conjunto de nós ligados ao nó i por arcos orientados no sentido 
de chegada em i, e αi o conjunto de nós ligados ao nó i por arcos orientados 
no sentido de saída de i.
Uma função fij definida em E com valores reais é dita ser um fluxo para 
um grafo orientado G = (N, E) se:
Em que uij é a capacidade do arco (i,j), ou seja, a quantidade máxima de 
fluxo que pode ser remetida de i para j. A condição (2) representa a hipótese 
da conservação de fluxo na rede, porém há estudos referentes a redes em que 
indicam que podem haver ganhos ou perdas de fluxo. 
F é o valor do fluxo que pode ser enviado da fonte 
s ao destino t, por meio da rede G = (N, E). 
Pesquisa operacional82
É importante notar que o valor máximo de F é limitado pelas capacidades 
associadas a cada arco da rede e determinado por corte, uma propriedade 
fundamental de uma rede. Um corte é um conjunto de arcos que, se forem 
removidos de uma rede, desconectam um conjunto de nós dos demais. Na 
Figura 4, percebe-se que o corte formado pelos arcos (2, 4) e (3, 4) desconectam 
o nó 4 dos nós 1, 2 e 3. 
Figura 4. Exemplo de corte.
Nos problemas de fluxo máximo o interesse é colocar cortes que separem 
nó fonte do nó destino. O valor do corte, ou a capacidade do corte, é a soma 
das capacidades dos arcos do corte (em uma dada direção). Na Figura 4, o 
valor do corte é igual a u24 + u34. 
O algoritmo descrito a seguir se baseia em um princípio muito simples. 
Seja X um subconjunto de N tal que s ∉ X e t ∈ X. O conjunto AX de arcos que 
tem orientação de chegada em nós de X e origem em nós que não pertencem 
a X, por definição, é um corte na rede G. 
Se c(AX) é o valor desse corte, então, o valor máximo de fluxo F que pode 
ser enviado de s para t satisfaz F ≤ c (AX). Isso significa que o fluxo máximo 
em uma rede é limitado pelo valor do corte de menor capacidade que nada 
mais é do que a própria capacidade. 
Está estabelecido, então, um dos mais importantes resultados na teoria de 
fluxos em redes, que é o teorema que veremos a seguir. 
83Modelos de fluxos em rede
Teorema do fluxo máximo e corte mínimo 
Em redes com fonte e destino únicos, o fluxo viável máximo que pode ser 
enviado da fonte ao destino t é igual ao valor do corte mínimo (corte com 
menor capacidade entre os cortes da rede). Para ilustrar, podemos verificar 
que o fluxo máximo na rede da Figura5 é 3. Os números que aparecem ao 
lado dos arcos representam suas capacidades nas direções especificadas pelas 
setas. O corte mínimo consiste dos arcos (s,2) e (3,t) e tem valor igual a 3.
Figura 5. Corte mínimo.
Observe que o problema fluxo máximo em uma rede pode ser expresso 
como um problema de programação linear: seja o fluxo fij em uma rede G = 
(N, E), em que N = {s, 2,...,t} e uij é a capacidade do arco (i,j). O valor desse 
fluxo é F se 
Então temos a seguinte formulação: 
Pesquisa operacional84
Desse modo, pode ser aplicado o método simplex na resolução de um 
problema de fluxo máximo. Apresentamos, a seguir, um algoritmo mais 
eficiente, que usa um procedimento de rotulação e gera uma sequência de 
fluxos crescentes até atingir o máximo. 
Com o teorema do corte mínimo e fluxo máximo podemos encontrar o fluxo máximo 
determinando a capacidade de todos os cortes e escolhendo o de capacidade mínima. 
Embora isso nos dê o valor máximo de F, não é possível especificar como o fluxo 
circula pela rede.
Algoritmo do fluxo máximo 
Esse método é baseado no teorema de Ford e Fulkerson e busca encontrar uma 
cadeia por meio da qual um fluxo positivo possa ser enviado da fonte s ao 
destino t. Essas cadeias são denominadas de cadeias de fluxo ampliável (CFA).
As cadeias são utilizadas para transmitir, o máximo possível, fluxo de s 
para t. O processo é repetido até não ser mais possível encontrar alguma CFA, 
o que indica que encontramos o fluxo máximo.
Rotina de Rotulação – encontrar uma CFA 
Iniciamos a rotulação do nó s. Um nó j pode ser rotulado se um fluxo positivo 
pode ser enviado de s para j. Em geral, do nó i podemos rotular um nó j se 
uma das seguintes condições for satisfeita: 
1. O arco que liga o nó i ao nó j é um arco que chega em j (arco forward) 
e sua capacidade ( fij < uij) é maior que o fluxo que há nele. 
2. O arco que liga o nó i ao nó j é um arco que sai de j (arco backward) e 
o fluxo nele é maior que zero ( fij > 0). 
Continua-se nessa rotina até rotular o destino t, obtendo assim uma CFA.
85Modelos de fluxos em rede
Fases do algoritmo 
1. Inicialização: obtenha um fluxo viável em todos os arcos, ou seja, um 
fluxo que atenda às restrições de capacidade nos arcos e de conservação 
de fluxo nos nós. 
2. Obtenha uma CFA, iniciando em s e terminando em t. Vá para a Fase 
3. Caso não seja possível, PARE! O fluxo máximo foi encontrado. 
3. Calcule o fluxo máximo δ, que pode ser enviado pela última CFA obtida. 
Aumente de δ o fluxo nos arcos forward da cadeia e decresça o fluxo de 
δ nos arcos backward. 
Volte a Fase 2.
Determine o fluxo máximo F da fonte s ao destino t na rede a seguir (Fig. 
6), em que os números ao lado dos arcos representam suas capacidades. 
Figura 6. Rede para o exemplo.
Inicialização: faça fij = 0 em todos os arcos. Veja a Tabela 1:
Pesquisa operacional86
(Continua)
Passo 1 - Vamos 
encontrar uma CFA de 
s para t. Então, rotule 
inicialmente s (rótulos 
são representados 
por asteriscos).
De s, rotule o nó 1, pois 
(s, 1) é um arco forward, 
levando um fluxo fs1 ≤ 
us1= 7. Do nó 1 rotule o 
nó 2 pelo arco forward 
(1,2) e, finalmente, 
rotule o destino t.
Desse modo, obtém-se 
a CFA, formada somente 
por arcos forward.
Os números nos 
arcos indicam o fluxo 
máximo permitido 
em cada um deles.
Assim, o máximo 
valor de fluxo para 
essa CFA é 3.
Isso aumenta F de 
3 unidades, e o 
fluxo sobre todos os 
arcos (forward) da 
cadeia aumenta de 3 
unidades também.
Passo 2 - Repetindo a 
rotina de rotulação, você 
chega a uma nova CFA.
Agora o fluxo máximo 
permitido é 4. 
Com isso, aumenta 
o fluxo F pela rede 
para 7 unidades.
 
Passo 3 - O nó 1 não 
pôde ser rotulado 
a partir de s, pois o 
arco (s,1) é forward 
e fs1 = us1 = 7. 
Isso aumenta o fluxo 
total F de 5 unidades, 
como mostra no 
próximo passo.
Partindo-se de s, 
rotule o nó 2, mas não 
será possível rotular 
t a partir dele, pois o 
arco (2,t) já alcançou 
sua capacidade. 
Mas o nó 1 pode ser 
rotulado a partir de 
2, pois o arco (1,2) é 
backward contendo um 
fluxo positivo. E, a partir 
do vértice 1, rotule t. 
Tabela 1. Teoremas do fluxo de rede.
87Modelos de fluxos em rede
1. Pode-se usar o teorema de Ford e Fulkerson para provar que o fluxo 
máximo é realmente F = 15. Basta considerar o corte que separa os 
vértices rotulados dos não rotulados na última linha. Isso fornece os 
arcos (s,1) e (2,t), cuja capacidade (valor) é 15. Observe que o arco 
(1,2) não pertence ao corte. Como F não pode exceder a capacidade de 
nenhum corte que separe s de t, o valor de F = 15 é o máximo fluxo 
possível. O corte mostrado na última linha é o corte mínimo. 
2. Para encontrar o fluxo máximo em uma rede G = (N, E) não orientada, 
primeiro converta-a em uma rede orientada equivalente e, então, aplique 
o algoritmo.
Passo 4 - Agora, tem-se 
uma CFA com dois 
arcos forward (s,2) e (1,t) 
e um backward (1,2). 
Para aumentar o 
fluxo por essa cadeia, 
aumente o fluxo nos 
arcos forward e decresça 
no arco backward. O 
máximo valor que se 
pode aumentar em F 
é de 3 unidades, e o 
novo fluxo na rede é 
fornecido a seguir.
Apesar do nó 2 poder 
ser rotulado a partir de s, 
nunca rotule o destino t. 
Desse modo, nenhuma 
outra CFA pode ser 
encontrada. Essa 
figura representa a 
configuração ótima 
de fluxo na rede, 
com fluxo máximo 
de 15 entre s e t.
Tabela 1. Teoremas do fluxo de rede.
(Continuação)
Pesquisa operacional88
A maioria dos problemas do fluxo máximo que surgem na prática é consideravelmente 
extensa. Alguns deles têm milhares de nós e arcos. O algoritmo do caminho aumentado 
é muito mais eficiente que o método simplex genérico para resolver esses problemas de 
grandes dimensões. Entretanto, para problemas de tamanho modesto, uma alternativa 
adequada seria o usar o Solver com base no método simplex genérico do Excel.
89Modelos de fluxos em rede
1. Em relação aos modelos de fluxo em 
rede, marque a alternativa correta:
a) Fluxo em rede é um método 
de análise da programação 
não linear que se destaca 
pela maximização de uma 
função que depende do fluxo 
(custo/lucro) em uma rede.
b) Há poucos modelos de 
fluxos em rede indicados 
para aplicações limitadas.
c) Alguns sistemas são 
abordados como redes, 
como os sistemas de rodovias 
(transporte), por exemplo.
d) Alguns problemas de fluxo 
em rede, por ser formulado 
como um problema de 
programação linear, podem 
ser resolvidos pelo método 
simplex, não sendo possível a 
utilização de algoritmos para a 
resolução desses problemas.
e) A geometria de uma rede não 
pode ser desenhada no plano.
2. Com base no que foi estudado 
sobre algoritmos, marque 
a alternativa correta:
a) O uso de algoritmos na 
busca da solução serve para 
encontrar arcos de uma rede.
b) São usados, exclusivamente, para 
identificar todos os componentes 
conexos de uma dada rede.
c) O algoritmo de Kruskal é 
o único tipo de algoritmo 
para a determinação de 
árvores de valor mínimo.
d) O algoritmo de Dijsktra é 
utilizado para resolver problemas 
do caminho mais curto.
e) Em cada iteração do algoritmo, 
os nós são sempre rotulados 
temporariamente.
3. Observe as alternativas a seguir 
e indique a afirmação correta 
com relação ao Algoritmo 
do Fluxo Máximo.
a) O algoritmo do Fluxo Máximo 
é um método baseado no 
Teorema de Fourier.
b) As cadeias são utilizadas 
para transmitir, o mínimo 
possível, fluxo de s para t.
c) Na Rotina de Rotulação, 
para encontrar uma CFA, ao 
iniciar a rotulação do nó s, um 
nó j não pode ser rotulado 
se um fluxo positivo pode 
ser enviado de s para j.
d) Na Rotina de Rotulação, em 
geral, do nó i podemos rotular 
um nó j somente se o arco que 
liga o nó i ao nó j é um arco 
que chega em j (arco forward) 
e sua capacidade (fij < uij) é 
maior que o fluxo que há nele.
e) Para obter uma CFA, a rotina 
de rotulação deve seguir 
até rotular o destino t.
4. Com relação à resolução de 
problemas por meio de algoritmos, 
marque a alternativa correta: 
a) O algoritmo de caminhosaumentados é um eficiente 
método disponível para 
resolver problemas de fluxo 
mínimo. Esse algoritmo 
baseia-se em dois conceitos 
intuitivos, uma rede residual 
e um caminho aumentado.
b) Um caminho aumentado é 
Pesquisa operacional90
um caminho direcionado 
do escoadouro para a 
origem na rede residual.
c) Capacidade residual de caminho 
aumentado é a denominação 
para o mínimo dessas 
capacidades residuais, pois ele 
representa a quantidade de fluxo 
que pode ser adicionada de 
maneira viável ao caminho todo.
d) O algoritmo do caminho 
aumentado seleciona 
algum caminho entre os 
caminhos encontrados e 
apresenta um fluxo diferente 
à sua capacidade residual ao 
caminho na rede original.
e) A estratégia para garantir 
que a solução final seja 
necessariamente ótima é o fato 
de os caminhos para fluxos 
designados poderem impedir o 
emprego de uma combinação 
melhor de designações de fluxo.
5. Observe o problema a seguir 
e marque a alternativa correta. 
Apresentamos alguns exemplos de 
redes, em que os nós s representam 
as ofertas, os nós t representam as 
demandas, e os demais nós são nós 
de transbordo. Os valores em cada 
arco representam, em geral, custos 
de transporte, distâncias ou tempos 
de viagem entre cada par de nós.
 
a) Na Figura 2 temos o caso mais 
simples, em que há somente um 
nó de oferta e um de demanda.
b) Não é possível termos restrições 
de capacidade nos nó1s.
c) Na Figura 1, temos diversos 
nós de oferta e de demanda.
d) Na Figura 2, há um nó de oferta 
que possui diversos centros de 
distribuição, que, por sua vez, 
distribuem o produto pela rede 
até outros centros intermediários 
(atacadistas ou armazéns) que 
abastassem o consumidor.
e) O que se busca nos problemas 
representados nas figuras é 
determinar o fluxo da rede de 
modo que o custo, o tempo ou 
a distância total de transporte 
seja minimizado ou que o 
fluxo total seja maximizado.
91Modelos de fluxos em rede
BOAVENTURA NETTO, P. O. Teoria e Modelos de Grafos. São Paulo: Edgard Blucher 
Ltda, 2003.
HILLIER, F. S.; LIEBERMAN, G. J. Introdução à pesquisa operacional. 9. ed. Porto Alegre: 
AMGH, 2013. E-book. 
Leituras recomendadas
ANDRADE, M.C.Q. Criação no processo decisório. Rio de Janeiro: LTC, 1980. 
GOLDBARG, M. C.; LUNA, H. P. L. Otimização combinatória e programação linear: mo-
delos e algoritmos. Rio de Janeiro: Campus, 2000.
LACHTERMACHER, G. Pesquisa operacional na tomada de decisões. Rio de Janeiro: 
Campus, 2002.
Pesquisa operacional92
Encerra aqui o trecho do livro disponibilizado para 
esta Unidade de Aprendizagem. Na Biblioteca Virtual 
da Instituição, você encontra a obra na íntegra.
DICA DO PROFESSOR
Neste vídeo, você vai ver como interpretar graficamente os problemas de transporte e também 
de que forma o Microsoft Excel pode auxiliar para encontrar a solução ótima para esses 
problemas.
Conteúdo interativo disponível na plataforma de ensino!
Conteúdo interativo disponível na plataforma de ensino!
EXERCÍCIOS
1) Em relação aos modelos de fluxo em rede, marque a alternativa correta: 
A) Fluxo em rede é um método de análise da programação não linear que se destaca pela 
maximização de uma função que depende do fluxo (custo/lucro) em uma rede.
B) Há poucos modelos de fluxos em rede indicados para aplicações limitadas.
C) Alguns sistemas são abordados como redes, como os sistemas de rodovias (transporte), por 
exemplo.
D) Alguns problemas de fluxo em rede, por ser formulado como um problema de 
programação linear, podem ser resolvidos pelo método simplex, não sendo possível a 
utilização de algoritmos para a resolução desses problemas.
E) A geometria de uma rede não pode ser desenhada no plano.
2) Com base no que foi estudado sobre algoritmos, marque a alternativa correta: 
A) O uso de algoritmos na busca da solução serve para encontrar arcos de uma rede.
B) São usados, exclusivamente, para identificar todos os componentes conexos de uma dada 
rede.
C) O algoritmo de Kruskal é o único tipo de algoritmo para a determinação de árvores de 
valor mínimo.
D) O algoritmo de Dijsktra é utilizado para resolver problemas do caminho mais curto.
E) Em cada iteração do algoritmo, os nós são sempre rotulados temporariamente.
3) Observe as alternativas a seguir e indique a afirmação correta com relação ao 
Algoritmo do Fluxo Máximo. 
A) O algoritmo do Fluxo Máximo é um método baseado no Teorema de Fourier.
B) As cadeias são utilizadas para transmitir, o mínimo possível, fluxo de s para t.
C) Na Rotina de Rotulação, para encontrar uma CFA, ao iniciar a rotulação do nó s, um nó j 
não pode ser rotulado se um fluxo positivo pode ser enviado de s para j.
D) Na Rotina de Rotulação, em geral, do nó i podemos rotular um nó j somente se o arco que 
liga o nó i ao nó j é um arco que chega em j (arco forward) e sua capacidade (fij < uij) é 
maior que o fluxo que há nele.
E) Para obter uma CFA, a rotina de rotulação deve seguir até rotular o destino t.
4) Com relação à resolução de problemas por meio de algoritmos, marque a alternativa 
correta: 
A) O algoritmo de caminhos aumentados é um eficiente método disponível para resolver 
problemas de fluxo mínimo. Esse algoritmo baseia-se em dois conceitos intuitivos, uma 
rede residual e um caminho aumentado.
B) Um caminho aumentado é um caminho direcionado do escoadouro para a origem na rede 
residual.
C) Capacidade residual de caminho aumentado é a denominação para o mínimo dessas 
capacidades residuais, pois ele representa a quantidade de fluxo que pode ser adicionada 
de maneira viável ao caminho todo.
D) O algoritmo do caminho aumentado seleciona algum caminho entre os caminhos 
encontrados e apresenta um fluxo diferente à sua capacidade residual ao caminho na rede 
original.
E) A estratégia para garantir que a solução final seja necessariamente ótima é o fato de os 
caminhos para fluxos designados poderem impedir o emprego de uma combinação melhor 
de designações de fluxo.
Observe o problema a seguir e marque a alternativa correta. Apresentamos alguns 
exemplos de redes, em que os nós s representam as ofertas, os nós t representam as 
demandas, e os demais nós são nós de transbordo. Os valores em cada arco 
representam, em geral, custos de transporte, distâncias ou tempos de viagem entre 
cada par de nós. 
5) 
A) Na Figura 2 temos o caso mais simples, em que há somente um nó de oferta e um de 
demanda.
B) Não é possível termos restrições de capacidade nos nós.
C) Na Figura 1, temos diversos nós de oferta e de demanda.
D) Na Figura 2, há um nó de oferta que possui diversos centros de distribuição, que, por sua 
vez, distribuem o produto pela rede até outros centros intermediários (atacadistas ou 
armazéns) que abastassem o consumidor.
E) O que se busca nos problemas representados nas figuras é determinar o fluxo da rede de 
modo que o custo, o tempo ou a distância total de transporte seja minimizado ou que o 
fluxo total seja maximizado.
NA PRÁTICA
Os problemas de fluxos em redes são tradicionalmente aplicados para decidir o modo mais 
http://publica.sagah.com.br/publicador/objects/layout/222692010/2019-09-21-14-17-31-questao5.png?v=915570007
eficiente de ligar várias localidades direta ou indiretamente, encontrar o caminho mais curto 
entre duas cidades, definir o fluxo máximo em uma rede de tubulações que satisfaça requisitos 
de suprimento e demanda em diferentes locais e programar as atividades de um projeto. Veja um 
caso prático do uso do fluxo de redes para encontrar a menor distância entre opções de cidades:
Conteúdo interativo disponível na plataforma de ensino!
 
SAIBA MAIS
Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do 
professor:
Pesquisa operacional - Caminho mínimo.
Conteúdo interativo disponível na plataforma de ensino!
Alocação de fluxos de passageiros em uma rede de transporte público de grande porte 
formulado como um problema de inequações variacionais.Conteúdo interativo disponível na plataforma de ensino!
HILLIER, F. S.; LIEBERMAN, G. J. Introdução à Pesquisa Operacional. 9ª Edição. Porto 
Alegre: AMGH, 2013

Outros materiais