Professional Documents
Culture Documents
AP2 - Aula 7 - Otimização em Redes - Problemas - de - Fluxo - EaD - pt1
AP2 - Aula 7 - Otimização em Redes - Problemas - de - Fluxo - EaD - pt1
Nesta aula dois relevantes problemas de fluxo serão discutidos: o problema do fluxo de
custo mínimo e o problema do fluxo máximo.
PROBLEMA DE FLUXO COM CUSTO MÍNIMO
O problema de fluxo de custo com mínimo é definido sobre uma rede 𝐺 = 𝑉, 𝐴 na qual
todos os vértices em 𝑉 podem realizar o transbordo do fluxo, sendo que os vértices dos
subconjunto 𝑈 e 𝑊 operam também como nós de demanda e fornecimento,
respectivamente (𝑈 ⊂ 𝑉, W ⊂ 𝑉 e 𝑈 ∩ 𝑊 = ∅). Ou seja, três grupos de vértices são
definidos no problema: aqueles que fornecem e transbordam; aqueles que consomem e
transbordam; e os que apenas são capazes de transbordar.
O objetivo é determinar os fluxos nos arcos da rede que minimizam os custos variáveis
de transporte, garantindo o atendimento das demandas dos vértices em 𝑈, respeitando
as capacidades de fornecimento dos vértices em 𝑊 e os limites mínimos e máximos
para a quantidade de fluxo transportada em cada arco de 𝐴, além de restrições de
conservação do fluxo que passa pelos vértices de 𝑉.
PROBLEMA DE FLUXO COM CUSTO MÍNIMO
As restrições de conservação do fluxo nos vértices são análogas à lei de Kirchhoff para
as correntes em um circuito de corrente contínua. Ela estabelece que a soma dos fluxos
que saem de um vértice é igual a soma dos fluxos que nele entram. Posto desta forma,
os fluxos que saem de um dado vértice 𝑖′ são transportados nos aqueles nos arcos
(𝑖, 𝑗) ∈ 𝐴, 𝑖 = 𝑖 ′ , ou são consumidos no vértice. Ao passo que os fluxos de entrada são
transportados nos arcos (𝑗, 𝑖) ∈ 𝐴, 𝑖 = 𝑖 ′ , ou são fornecidos à rede a partir deste vértice.
Para cada vértice 𝑖 ∈ 𝑉, 𝑂𝑖 representa o consumo (𝑂𝑖 < 0), ou o fornecimento de fluxo no
vértice 𝑖 (𝑂𝑖 > 0), ou caracteriza um vértice que somente pode fazer transbordo (𝑂𝑖 = 0).
Escreva uma formulação para otimizar o custo distribuição desta empresa.
(6,15)
(Oi)
(Oi)
(8,10) 0
(7,10) 5 (12,8)
25 -10
(Cij, Uij) (10,10) (9,6)
1 3 8 -15
(9,11)
(8,6) 15 (10,12)
(5,13) 6
(8,10)
(9,9)
(12,5) (11,8)
2 4
(6,15) 0 (12,10) (10,5)
-5
7
-10
Variáveis de decisão
Formulação matemática
sujeito a:
Conjuntos
A: conjunto de arcos.
Parâmetros
Variáveis de decisão
Formulação matemática
s.a.:
Oi , se i r (nó de oferta)
ij ji Oi ,
x x se i s (nó de demanda), i V
j:( i , j )A j:( j ,i )A 0, se i t (nó de transbordo)
0 xij U ij , (i, j ) A
PROBLEMA DO FLUXO DE CUSTO MÍNIMO
Para notar que o Problema de Caminho Mínimo é um caso particular, basta considerar
apenas uma demanda de -1 unidade no vértice de destino e uma oferta, também de 1
unidade, no vértice de origem (vide slide 20, aula 4). Os demais vértices têm demanda 0,
sendo usados apenas para eventual transbordo. Os custos Cij representam a escolha de
uso do arco para fazer parte do caminho, enquanto as variáveis de decisão pertencem
ao intervalo [0,1], o que equivale a um fluxo unitário.
Pode-se modelar este problema com um caso particular do Problema de Fluxo de Custo
Mínimo em que todos os vértices têm demanda/oferta nula, ou seja, há apenas vértices
de transbordo na rede. Como artifício de modelagem, adiciona-se uma arco artificial de
retorno (𝑡, 𝑠) com custo unitário, 𝐶𝑡𝑠 = −1, sendo 𝐶𝑖𝑗 = 0 para todo (𝑖, 𝑗) 𝐴 *(𝑡, 𝑠)+. Com
este conjunto de custos, a função objetivo do problema fica max 𝑥𝑡𝑠 = −min −𝑥𝑡𝑠 .
13
PROBLEMA DO FLUXO MÁXIMO
Conjuntos
A: conjunto de arcos.
Parâmetros
Variáveis de decisão
Formulação matemática
max z xts
s.a.:
xij x ji 0, i V
j:( i , j )A j:( j ,i )A
0 xij U ij
xij 0, (i, j ) A
PROBLEMA DO FLUXO MÁXIMO
Pode-se modelar este problema com um caso particular do Problema de Fluxo de Custo
Mínimo em que todos os vértices têm demanda/oferta nula, ou seja, há apenas vértices
de transbordo na rede. Como artifício de modelagem, adiciona-se uma arco artificial de
retorno (𝑡, 𝑠) com custo unitário, 𝐶𝑡𝑠 = −1, e capacidade infinita, 𝑈𝑡𝑠 = ∞. Todos os
demais arcos são modelados com custo zero, isto é, 𝐶𝑖𝑗 = 0 para todo (𝑖, 𝑗) 𝐴\*(𝑡, 𝑠)+.
Com este conjunto de custos, a função objetivo do problema fica max 𝑥𝑡𝑠 = −min −𝑥𝑡𝑠 .
16
PROBLEMA DO FLUXO MÁXIMO
Exemplo-8: Deseja-se enviar gás para um consumidor industrial através de uma rede
de dutos que liga uma estação de distribuição (vértice 1), estações intermediárias de
bombeamento (vértices 2 a 5) e as instalações do cliente (vértice 6). A rede de dutos
pode ser representada pelo grafo abaixo, no qual os valores (𝐿𝑖𝑗, 𝑈𝑖𝑗) em cada arco
(𝑖, 𝑗) indicam as vazões mínimas e máximas em cada duto.
(1,4)
2 4 (3,7)
(2,5) (0,2)
(0,1) (0,1) 6
1
(0,2)
(2,5)
(1,4) 3 5
(1,5)
(1,4)
2 4 (3,7)
(2,5) (0,2)
(0,1) (0,1) 6
1
(0,2)
(2,5)
(1,4) 3 5
(1,5)
(0,∞)
18
PROBLEMA DO FLUXO MÁXIMO
Variáveis de decisão
Formulação matemática
max 𝑧 = 𝑥6,1
s. a. :
𝑥1,2 + 𝑥1,3 − 𝑥6,1 = 0
𝑥2,4 + 𝑥2,5 − 𝑥1,2 − 𝑥3,2 = 0
𝑥3,2 + 𝑥3,4 + 𝑥3,5 − 𝑥1,3 = 0
𝑥4,5 + 𝑥4,6 − 𝑥2,4 − 𝑥3,4 = 0
𝑥5,6 − 𝑥2,5 − 𝑥3,5 − 𝑥4,5 = 0
𝑥6,1 − 𝑥4,6 − 𝑥5,6 = 0 19
PROBLEMA DO FLUXO MÁXIMO
2 ≤ 𝑥1,2 ≤ 5
1 ≤ 𝑥1,3 ≤ 4
1 ≤ 𝑥2,4 ≤ 4
0 ≤ 𝑥2,5 ≤ 2
0 ≤ 𝑥3,2 ≤ 1
0 ≤ 𝑥3,4 ≤ 2
1 ≤ 𝑥3,5 ≤ 5
0 ≤ 𝑥4,5 ≤ 1
3 ≤ 𝑥4,6 ≤ 7
2 ≤ 𝑥5,6 ≤ 5
𝑥6,1 ≥ 0
20
BIBLIOGRAFIA
TAHA, H.A., Pesquisa Operacional, 8. ed.. São Paulo: Pearson Prentice Hall, 2008.
WOLSEY, L.A., Integer Programming. New York: John Wiley & Sons, 1998.
21