Você está na página 1de 45

IO - Aulas TP

Página |
IO - Aulas TP
Página |
IO - Aulas TP
Página |
Problema de Transportes

Genericamente, o Problema de Transportes refere-se à distribuição de qualquer tipo de bem proveniente


de um conjunto de fornecedores (denominados origens) para um conjunto de clientes (denodos destinos).
Assim, uma origem i (i = 1, 2, …, m) pode fornecer ai unidades de um dado bem aos vários destinos, e um
determinado
destino j (j = 1, 2, …, n) procura bj unidades a partir das várias origens.

Um pressuposto dos problemas de transportes é o de que o custo de transporte entre a origem i e o


destino j é proporcional ao número de unidades transportadas, designando cij o custo unitário de
transporte.

Como deve o produtor enviar o seu produto das várias origens para os vários destinos de modo a
minimizar o custo total de transporte?

Origens i Destinos j
IO - Aulas TP
Página |

4.2 Formulação em Problema de Transportes (Tabular)

Com,

cij – coeficientes da função objetivo

cij – custos reduzidos; coeficientes da função objetivo em cada iteração uma vez reduzido o
sistema de eixos em cada iteração (à semelhança do método simplex)

Destinos j
(procura)
D1 D2 … Dn

c
O1
ij

𝑐̅̅𝑖̅𝑗 Xij a1

O2
a2


Om
am

b1 b2 … bn

4.3 Resolução do Problema de Transportes

Exercício exemplo

A empresa Constrói-Razoavelmente (CR) tem neste


momento obras em Lisboa, no Porto e em Coimbra. A
procura diária de inertes em cada obra está de acordo com o
quadro seguinte:
IO - Aulas TP
Página |

Porto Coimbra Lisboa

Procura
100 50 200

de inertes

(m3/dia)

A empresa CR tem pedreiras em Pinhel, Arouca e Portalegre,


com a seguinte produção diária de inertes.

Portalegre Arouca Pinhel

Produção
de 140 110 100

inertes

(m3/dia)

O custo dos próprios inertes e o custo de transporte entre a


pedreira e a obra estão representados no quadro seguinte:
IO - Aulas TP
Página |

Custo de transporte (€/m3) (incluindo os


custos de
aquisição do inerte)

Port Coimb Lisbo


o ra a

Portalegre 4 3 3.2

Arouca 2.2 2.4 3.4

Pinhel 2.2 2.5 3.6

Formule este problema como um problema de programação linear e como um problema de


transporte. Resolva o problema de transporte.

Formulação como problema de Programação Linear

Variáveis de Decisão:

Xij – quantidade de inerte transportado de i


para j (m3) i – 1. Portalegre, 2. Arouca. 3.
Pinhel
j – 1. Porto, 2. Coimbra, 3. Lisboa

Minimizar 𝒛 = 𝟒𝒙𝟏𝟏 + 𝟑𝒙𝟏𝟐 + 𝟑. 𝟐𝒙𝟏𝟑 + 𝟐. 𝟐𝒙𝟐𝟏 + 𝟐. 𝟒𝒙𝟐𝟐 + 𝟑. 𝟒𝒙𝟐𝟑 + 𝟐. 𝟐𝒙𝟑𝟏 + 𝟐. 𝟓𝒙𝟑𝟐 + 𝟑.


𝟔𝒙𝟑𝟑

Sujeito às seguintes restrições:

𝑥11 + 𝑥12 + 𝑥13 = 140


Oferta

𝑥21 + 𝑥22 + 𝑥23 = 110

𝑥31 + 𝑥32 + 𝑥33 = 100

𝑥11 +𝑥 + 𝑥31 =
21 100
IO - Aulas TP
Página |
𝑥12 + 𝑥22 + 𝑥32 = 50

Formulação como problema de Transportes

Porto Coimbra Lisboa

4 3 3.2
Portalegre 140

2.2 2.4 3.4


Arouca 110

2.2 2.5 3.6


Pinhel 100

100 50 200 350


IO - Aulas TP
Página |

Resolução como problema de Transportes

1º Encontrar a solução básica inicial

Ao contrário da resolução pelo método simplex, a resolução pelo algoritmo de transportes não
começa na origem do sistema de eixos (se assim fosse todas as variáveis seriam nulas, já que o
problema de transportes não usa variáveis adicionais para além das variáveis de decisão). Em
alternativa, escolhe-se uma qualquer solução básica admissível (SBA) do problema para iniciar a
sua resolução. Uma solução é básica e admissível se cumprir todas as restrições do problema e se
tiver o número correto de variáveis básicas (VB). Um problema de Transportes tem tantas VBs
como o número de restrições menos uma. Na resolução pelo método simplex um problema tem
tantas VBs como restrições mas no problema de transportes uma das restrições é redundante,
sendo, portanto, o número de variáveis básicas igual ao número de restrições menos 1 (condição
necessária e suficiente para que um problema de transportes tenha solução admissível).

Regra do Custo Mínimo

(um de entre os diversos métodos que existem para encontrar uma SBAinicial)

Porto Coimbra Lisboa


Portalegre 00
4 3 3.2 4º
Arouca 140 14

Pinhel
11
2.2 1º 2.4 2º 3.4 0 10 0
100 10
2.2 2.5 3º 3.6 5º
40 60 100 60 0

100 50 200
0 40 60
0 0

SBAinicial (0,0,140,100,10,0,0,40,60); Z=3.2*140+2.2*100+2.4*10+2.5*40+3.6*60=1008


IO - Aulas TP
Página |
OU

Porto Coimbra Lisboa


Portalegre 00
4 3 3.2 3º
Arouca 140 14

Pinhel
11
2.2 2.4 2º 3.4 4º 0 60 0
50 60

2.2 1º 2.5 3.6 5º


100 0 100 0

100 50 200
0 0 60

0
Solução Degenerada (VBs com valor nulo)

SBAinicial (0,0,140,0,50,60,100,0,0); Z=3.2*140+2.4*50+3.4*60+2.2*100+3.6*0=992


IO - Aulas TP
Página |

2º Verificar se a SBA é ótima

Aqui não podemos usar os coeficientes da função objetivo pois os coeficientes presentes na
tabela são apenas válidos para o sistema de equações quando se começa a resolver o problema na
origem do sistema de eixos. Assim, no problema de transportes recorre-se ao problema Dual e

Dualidade no Problema de Transportes

Usamos a dualidade para calcular o valor dos coeficientes da função objetivo em cada iteração (̅𝑐̅𝑖̅𝑦). Com, cij – coeficiente na

função objetivo original

Formulação do Problema Dual do Problema de Transportes:


mn

Max z = ∑ ai ∗ ui + ∑ bj ∗ vj
ij

Sujeito a:
ui + vj ≤ cijpara todos os i= 1,…,m e j=1,…,n

Escrevendo a restrição na forma normal ou estandardizada ou aumentada fica:


ui + vj + sij = cij com sij sendo a variável de folga do problema dual

Pelos Teoremas da Dualidade sabemos que:


sij = cij
Por isso,

Para as VB’s (𝒙𝒊𝒋 ≥ 𝒐): como os seus coeficientes na função objetivo em cada iteração do problema primal são nulos
(𝑐𝑖𝑗=0), então as variáveis de folga das restrições correspondentes do problema dual são nulas (sij=0), logo:
o 𝑢𝑖 + 𝑣𝑗 = 𝑐𝑖𝑗
o conhecendo o cij (coeficiente na função objetivo original) de cada VB podemos
construir um sistema de equações para o cálculo do valor de ui e vj
Para as VNB (𝒙𝒊𝒋 = 𝒐): sabendo o valor de ui e vj podemos agora calcular o valor 𝑐𝑖𝑗 de todas as VNB
o 𝑐𝑖𝑗 = 𝑠𝑖𝑗 = 𝑐𝑖𝑗 − ( 𝑢𝑖 + 𝑣𝑗)
IO - Aulas TP
Página |
IO - Aulas TP
Página |

aos Teoremas da Dualidade para encontrar os coeficientes da função objetivo em cada iteração
– os chamados custos reduzidos (𝑐̅̅𝑖̅𝑦 ). Para mais detalhes sobre a Dualidade ver secção 3 -
Teoremas da Dualidade)

Para 4as VB: 𝑢𝑖 + 𝑣3𝑗 = 𝑐𝑖𝑗 3.2


u1=…
140
VB 2.2 2.4 3.4
u2=…
50 60
(arbitrando v3=0)
2.2 2.5 3.6
u3=…
100 0 x13 𝑢1
+ = = 3,2 => u1=3,2
v1=… v2=… v3=…
𝑣3 𝑐13

x22 𝑢2 + 𝑣2 = 𝑐22 = 2,4 => v2=-1

x23 𝑢2
+ = = 3,4 => u2=3,4
𝑣3 𝑐23

x31 𝑢3 + 𝑣1 = 𝑐31 = 2,2 =>


v1=-1,4 x33 𝑢3 + 𝑣3 = 𝑐33 =
3,6 => u3=3,6
IO - Aulas TP
Página |

OU (calculo direto sem construir o sistema de equações)

4 3 3.2 Para as VNB: 𝑐𝑖𝑗 = 𝑠𝑖𝑗 = 𝑐𝑖𝑗 − ( 𝑢𝑖 + 𝑣𝑗)


u1=3.2
2.2 0.8 0 140
2.2 2.4 3.4
u2=3.4
0.2 0 50 0 60
2.2 2.5 3.6
u3=3.6
0 100 -0.1 0 0
v1=-1,4 v2=-1 v3=0
(arbitrado)

Solução não é
ótima. VBE –
x32
VBS - ?

3º Calcular o quadro da iteração seguinte

VBS será a primeira VB a anular-se com a


entrada da VBE. Método para encontrar a VBS
– “ciclo do ”

4 3 3.
2 u1=3.2

2. 0.8 0 140
2

2. 2.4 3.
2 4 u2=3.4

0. 0 50- 0 60+
2
IO - Aulas TP
Página |

2. 2.5 VBE 3. VBS


2 6 u3=3.6

0 100 - + 0 0-
0.1

v1=-1,4 v2=-1 v3=


0

 = min - = {50,0}=0 => VBS x33

Quadro da 2ª iteração

4 3 3.
2 u1=3.2

2. 0.8 0 140
1

2. 2.4 3.
2 4 u2=3.4

0. 0 50 0 60
1

2. 2.5 3.
2 6 u3=3.5

0 100 0 0 0.
1

v1=-1,3 v2=-1 v3=0

Solução ótima

Solução: x13=140, x22=50, x23=60, x31=100, restantes xij=0; Z=992


IO - Aulas TP
Página |

Resolução da SBA inicial alternativa

1ª Quadro
ui
0

0,3

0,4
4 3 3,2
140
vi 1,9 2,1 3,2
2,1 0,9 0
Solução: x13=140; x21=100; x22=10; x32=40; x33=60
2,2 2,4 
Solução não é optima (há taxas de crescimento negativas 3,4 
VBE - x23
VBS - ?min - =10 VBS - x22  = 10
 
2º Quadro 0 100 0 10 -0,1
ui
2, 2,5  3,6  0

2   0,2

-0,1 0 40 0 60 0,4

vi 2 2,1 3,2

Solução: x13=140; x21=100; x23=10; x32=50; x33=50


Solução não é optima (há taxas de crescimento negativas)

VBE - x31
VBS - ?min - =50 VBS - x33  = 50

3º Quadro
ui
0

0,2

0,2

vi
4
2
3
2,3
3,2
3,2

2 0,
Solução: x13=140; x21=50; x23=60; x31=50; x32=50 0 140
Solução não é optima (há taxas de crescimento negativas)

VBE - x22
9
VBS - ?min - =50 VBS - x21  = 50
2,2 2, 3,4 
3º Quadro
 4  ui
0
0 100 0, 0 10
0,2
1
0,3
2,2 2,5 3,6 
vi 
1,9 2,2 3,2 
Solução: x13=140; x22=50; x23=60; x31=100; x32=0
-0,2
Solução optima 0 50 0 50
Há uma solulção alternativa
SoluçãoAlternativa: x13=140; x21=0; x22=50; x23=60; x31=100
IO - Aulas TP
Página |

4 3 3,

2 0,7 2
0 140
2,2  2,4  3,
50
0 -0,1 4
0 60
2,2  2,5 3,6
 

0 50 0 50 0,2

4 3 3,

2,1 0,8 2
0 140
2, 2,4 3,
50
2 0 4

0, 0 60
1
2,2 2,5 3,6

0 100 0 0 0,1
IO - Aulas TP
Página |

4.4 Problema de Afetação

“The best person for the job” (TAHA, 1997)

O Problema de Afetação é um caso particular do Problema de Transportes, em que a oferta em


cada origem (ai) e a procura em cada destino (bj) assumem valor unitário e o custo de afetação
de uma origem/indivíduo a um determinado destino/tarefa é dado por cij. A afetação de um
indivíduo a uma tarefa é dada por xij tal que xij é nula quando o indivíduo i não é afetado à
tarefa j e unitária quando o indivíduo i é afetado à tarefa j.

Modelo Matemático

m n

Min z = ∑ ∑ cij ∗ xij

i j
Sujeito a:

Para todas as origens m n


∑ xmj = 1
j

Para todos os destinos m


n ∑ xin = 1
i

Restrições de não negatividade para todas as variáveis (todas as variáveis são não negativas e inteiras)

xij ∈ {0,1}

Estes problemas de programação linear são ideais, por exemplo, para formular situações em que
IO - Aulas TP
Página |
existe um certo número de operários a afetar ao desempenho do mesmo número de tarefas (um

operário por cada tarefa).

Assim, se xij=1, o operário i efetua a tarefa j, e se xij=0 o operário i não efetua a tarefa j.

Se representarmos por cij o tempo que o operário i demora a desempenhar a tarefa j, o objetivo
consiste em distribuir as tarefas pelos operários, de forma a que a soma dos tempos por eles
despendidos seja mínima. Os problemas de afetação podem, como é evidente, ser tratados como
problemas de transportes.

No entanto, é mais eficiente usar o algoritmo designado por “método húngaro”.

A ideia fundamental que serve de base ao método húngaro é a seguinte:

não se modificam a ou as soluções ótimas de um problema de afetação diminuindo ou


aumentando de um mesmo valor todos os elementos de uma dada linha ou de uma dada coluna
da matriz de custos (embora o valor ótimo da função objetivo seja alterado).

Sejam, então, pi e qj as constantes subtraídas da linha i e da coluna j, respetivamente. Então o


elemento de custos cij muda para:

cij’ = cij – pi - qj

Usando os coeficientes cij’ na função objetivo obtêm-se os mesmos valores ótimos para xij do que
quando se usa cij:
IO - Aulas TP
Página |

Assim torna-se possível usar o Método Húngaro apresentado de seguida.


Método Húngaro para a resolução de Problemas de Afetação

(passos elementares)

Formular o problema através de um quadro de afetação. As linhas correspondem a origens e as


colunas correspondem a destinos.
Num problema de minimização (maximização), identificar o valor mínimo (máximo) de cada linha.
Subtrair esse valor a todos os elementos da linha respetiva.
Para o quadro resultante do ponto 2, identificar o valor mínimo (máximo) de cada coluna e subtraí-
lo a todos os elementos da coluna respetiva.
A afetação ótima está associada aos elementos nulos do quadro calculado no ponto 3.
Se o quadro calculado no ponto 3 não produzir uma solução ótima admissível (i.e., não é possível
preencher todas as tarefas tendo em conta apenas as células nulas), realizar os seguintes passos
adicionais:
Desenhar o mínimo número de linha verticais e horizontais (de lés a lés) no quadro obtido em 3 de
forma a cobrir todas as células com valores nulos.
Identificar o menor (maior) elemento não coberto por essas linhas verticais e horizontais e subtraí-lo
a todos os elementos não cobertos. A seguir adicioná-lo aos elementos na intersecção de linhas e das
colunas.
Repetir estes passos até encontrar uma solução ótima admissível (ver definição no ponto 5).

4.5 Problemas convertíveis em Problemas de Transportes / Afetação


IO - Aulas TP
Página |
Os problemas convertíveis em problemas de transportes/afetação correspondem a situações que
podem ser convertidas em Problema de Transportes apesar de na sua génese não cumprirem todas as
condições deste

problema:

Situações em que a procura total excede a oferta total


Num problema de afetação a procura excede a oferta quando existem mais origens que destinos
Situações em que a oferta total excede a procura total
Num problema de afetação a oferta excede a procura quando existem mais destinos que origens
Situações em que é impossível abastecer um (ou mais) destino(s) a partir de uma (ou mais) origens

Como fazer a conversão:

Procura total excede a oferta total


Cria-se uma linha artificial (origem fictícia) com custos nulos ou iguais às penalidades pelos pedidos
não satisfeitos.
o Na resolução pelo Método Húngaro tem que se criar o número de linhas artificiais (origens
artificiais) que permitam a criação de uma matriz quadrada.
Oferta total excede a procura total
Cria-se uma coluna artificial (destino fictício) com custos nulos ou iguais às penalidades por não
utilizar todas as capacidades disponíveis.
o Na resolução pelo Método Húngaro tem que se criar o número de colunas artificiais (destinos
artificiais) que permitam a criação de uma matriz quadrada.
IO - Aulas TP
Página |

É impossível abastecer um (ou mais) destino(s) a partir de uma (ou mais) origens
o Atribui-se a esse custo um valor muito elevado, o que impede o estabelecimento dessa ligação (M

Uma vez convertidos em Problemas de Transportes / Afetação o processo de resolução é o mesmo.


Este tipo de problemas exige uma atenção especial na sua formulação, para que esta possa ser
considerada uma formulação como Problema de Transportes / Afetação, e possa ser resolvida pelo
respetivo algoritmo.

Exercício Exemplo de Formulação

A empresa de construção Constrói-Muito, Lda. (CM) está neste momento a construir edifícios de
luxo em 3 cidades: Vila Real, Braga e Coimbra. Na construção desses edifícios é utilizado
mármore de alta qualidade importado de Itália. O mármore chega ao porto de Leixões por barco,
e tem então de ser transportado para cada obra por camioneta. A empresa CM pediu orçamentos
para o transporte do mármore a 3 firmas diferentes e obteve a seguinte tabela de preços:

(€/Kg) Vila Brag Coimb


Real a ra

Sempre-Rápido (I) 7 4 10

Empacota-Mal (II) 5 3 9

Empacota-Bem (III) 6 5 9

O consumo diário de mármore é respetivamente de 1800, 1000 e 800 Kgs em Vila Real, Braga e
Coimbra. A quantidade máxima que cada firma pode transportar por dia é respetivamente de 1200,
1600 e 2400 Kg para as firmas I, II e III.

Partindo do princípio que a empresa CM não tem preferência especial por qualquer das
transportadoras, formule o problema de forma a minimizar os custos.

A empresa Empacota-Bem garante a entrega dos materiais sempre em excelentes condições. Por
essa razão, a CM tem preferência por essa empresa. Como formula o problema neste caso?
IO - Aulas TP
Página |
Resolução da alínea a):

Verificação do Equilibrio Oferta


Procura Oferta = 1200 + 1600 +
2400 = 5200

Procura = 1800 + 1000 + 800 = 3600


Diferença 1600 => Coluna Fictícia

Vila Real Braga Coimbra Fictícia

7 4 10 0
I 1200

5 3 9 0
II 1600

6 5 9 0
III 2400

1800 1000 800 1600 5200


IO - Aulas TP
Página |

Resolução da alínea b):

Vila Real Braga Coimbra Fictícia

7 4 10 0
I 1200

5 3 9 0
II 1600

6 5 9 M
III 2400

1800 1000 800 1600 5200

4.6 Exercícios de Resolução do Problema de Transportes

Exercício 19

Três fábricas A, B e C produzem, respetivamente, 5, 3 e 10 unidades de um determinado produto


por semana. No final de cada semana toda a produção é entregue a quatro armazenistas P, Q, R e
S que precisam de 4, 4, 7 e 3 unidades, respetivamente.

Os custos de transporte por unidade são os indicados na tabela seguinte (expressos em unidades
monetárias):

Custo de transporte (uni.


monetárias)

P Q R S

A 3 4 10 3

B 3 9 4 5

C 6 3 7 2
IO - Aulas TP
Página |
Como deve o produtor enviar o seu produto das fábricas para os armazéns de modo a minimizar o
custo total de transporte?

Exercício 20

Considere o seguinte quadro de um problema de transportes, onde estão indicadas as unidades


disponíveis nas origens O1, O2 e O3, as unidades pedidas pelos destinos D1, D2, D3 e D4, e os
custos unitários de transporte entre cada origem e cada destino. Seja xij a quantidade
transportada da origem i para o destino j com um custo de cij por unidade transportada. O
objetivo consiste em minimizar o custo total de transporte.
IO - Aulas TP
Página |

D1 1
D2 0
D3 1
D4 3

45
1 -1  4

O1 20
5 1 4 7

60

25 25 30 45

O2

O3

x , x , x , x32 , x33 , x34 (assinaladas no quadro com )


Verifique se a solução cujas variáveis
básicas são
11 14 22

é uma solução básica ótima. Se não for, determine a solução ótima do problema.

a) O problema tem soluções ótimas alternativas? Justifique a sua resposta. Se a resposta


for afirmativa, determine uma solução ótima diferente da apresentada na alínea anterior.

Exercício 21

Resolva o seguinte problema de modo a minimizar os custos totais de transporte de um dado


produto entre as diversas origens e os vários destinos (na tabela indicam-se os custos unitários de
transporte desse produto, entre cada origem e cada destino).

Custos Destin
Transpor os
te 1 2 3 4 5

1 3 1 1 6 3

2 2 9 4 6 1

3 1 5 3 0 1
IO - Aulas TP
Página |

4 4 1 0 3 3

Estão disponíveis em cada origem 4, 2, 4 e 2 unidades, respetivamente. Em cada destino são pedidas 5,
2, 1, 2 e 2 unidades respetivamente.

4.7 Exercícios de Resolução de Problemas de Afetação

Exercício 22

Num gabinete de projetos existem quatro desenhadores para desenhar quatro projetos. Embora
todos possam cumprir essas tarefas, as suas eficiências relativas variam de trabalho para
trabalho. Com base em desempenhos já conhecidos, produziu-se a seguinte tabela de custos:

1 2 3 4

P 8 7 9 9
1

P 5 2 7 8
2

P 6 1 4 9
3

P 2 3 2 6
4
IO - Aulas TP
Página |

O objetivo consiste em afetar os desenhadores aos vários projetos de modo a minimizar o custo total de
desenho.

Exercício 23

O quadro seguinte apresenta a pontuação de cada ginasta nacional (G1, G2, G3 e G4) para cada
uma das diferentes modalidades olímpicas (A, B, C, D). O quadro foi construído pelo treinador
da equipa nacional e usa com referência a pontuação obtida por cada um dos ginastas nas
diferentes modalidades em que competiu no último campeonato nacional. É sabido que o Ginasta
G1 não está em condições de participar na modalidade C.

A B C D
G 8 9 - 1
1 0

G 10 8 8 8
2

G 10 10 6 7
3

G 8 8 6 9
4

Sabendo que cada ginasta só pode participar numa modalidade e que todas as modalidades só têm
competições individuais, identifique a distribuição de atletas pelas modalidades que maximiza a
pontuação da equipa.

Exercício 24

Uma fábrica possui 4 locais (1, 2, 3 e 4) para receber 3 máquinas novas (A, B e C). O local 4 é
IO - Aulas TP
Página |
demasiado pequeno para conter a máquina A. O custo de manipulação dos materiais que são
processados nas máquinas, em centenas de euros/hora, envolvendo cada máquina e as respetivas
posições, é o seguinte:

1 2 3 4
A 5 1 3 n. adm.
B 3 1 4 3
C 3 3 4 2

O objetivo consiste em determinar que local ocupará cada uma das novas máquinas de forma a
minimizar o custo total de manipulação dos materiais.

Exercício 25

Um gabinete de gestão de projetos foi contratado pelas Estradas de Portugal para lhe dar apoio
especializado durante a construção de uma grande autoestrada na Região Interior. Há 4 tarefas
principais que a equipa de gestão de projetos terá a seu cargo:

 Fiscalização dos trabalhos


 Ligação com o Diretor de Obra
 Controlo de Custos
 Revisão do Projeto

O chefe do gabinete tem quatro engenheiros disponíveis para integrar esta equipa e deve decidir
como distribui-los pelas diferentes tarefas. Considerou boa ideia atribuir uma nota por tipo de
tarefa a cada um dos engenheiros,
IO - Aulas TP
Página |

baseada no seu desempenho em projetos anteriores. O Eng.º António e a Eng.ª Carla não têm
qualquer experiência de Controlo de Custos e Revisão de Projeto, respetivamente, pelo que são
automaticamente excluídos dessas tarefas.

Fiscalizaç Ligação com Dir. Controlo de Revisão de


ão Obra Custos Projeto

Antóni 5 5 n. adm. 2
o
Bernar 7 4 2 3
do

Carla 9 3 5 n. adm.
Daniel 7 2 6 7

a) Resolva este problema de afetação.


b) Suponha que o Eng.º Edgar fica disponível para integrar este projeto e lhe são atribuídas
as notas de 6, 4.5, 3 e 8 para desempenhar, respetivamente, cada um dos 4 projetos. Será
que o chefe de gabinete deveria substituir algum dos outros 4 engenheiros?

4.8 Exercícios de Formulação de Problemas de Transportes

Exercício 26

Duas empresas farmacêuticas têm stocks de 1,1 e 0,9 milhões de doses de uma determinada
vacina contra a gripe, e uma epidemia de gripe parece iminente em três cidades.

Dado que a gripe pode ser fatal para os idosos, é imperativo que os idosos sejam vacinados em
primeiro lugar; os demais cidadãos serão vacinados por ordem de chegada enquanto houver
doses de vacina disponíveis.

As necessidades da referida vacina (expressas em milhões de doses) para as três cidades são dadas
no quadro seguinte:
IO - Aulas TP
Página |

Cida
População-Alvo de
1 2 3

Idosos 0.32 0.260 0.19


5 5

Não Idosos 0.75 0.800 0.65


0 0

Os custos de transporte (expressos em unidades monetárias por dose) entre as empresas


farmacêuticas e as três cidades são os seguintes:

Cida
Empresas Farmacêuticas de
1 2 3

Empresa 1 3 3 6

Empresa 2 1 4 7

Determine o plano de distribuição de vacinas que minimiza o custo total de transporte,


garantindo que cada cidade assegure sempre a vacinação da totalidade dos seus idosos.
IO - Aulas TP
Página |

Exercício 27

Pretende-se determinar qual o modo mais económico de organizar o stock diário de um


determinado produto em três armazéns A1, A2 e A3, com capacidades iguais a 30, 10 e 40
unidades, respetivamente. Há três Fábricas F1, F2 e F3 que produzem, respetivamente, 30, 20 e
20 unidades com custo unitário de produção de, respetivamente, 50, 60 e 45 euros.

As necessidades diárias mínimas que terão de ser obrigatoriamente satisfeitas são de 20 unidades
para o armazém A1 e de 10 unidades para o armazém A2.

Sabendo que as distâncias entre as fábricas e os armazéns estão representadas na figura seguinte
(expressas em Km), e que os custos de transporte são de 3 euros por Km, formule o problema
como um problema de transportes.

F2

2 3 10

F1 F3

3 2 3 4

A1 A2 A3

Exercício 28
IO - Aulas TP
Página |

A firma Polimix tem um contrato de fornecimento do seguinte número de misturadoras:

MESES ENCOMENDAS

Junho 90 misturadoras

Julho 140 misturadoras

Agosto 70 misturadoras

O preço de venda é de 40 €/misturadora em junho e julho e de 50 €/misturadora em agosto


(independentemente do mês em que são produzidas).

A empresa pode produzir mensalmente 80 misturadoras a um custo unitário de 20 €.


Trabalhando horas extraordinárias, cada mês pode ainda produzir mais 40 misturadoras com um
custo unitário 10 € mais elevado do que as produzidas em horas normais de trabalho. As
misturadoras podem ser armazenadas por 3 €/mês cada uma.

As misturadoras feitas em determinado mês podem ser entregues nesse mês e nos que se lhe
seguem. O contrato deve ser cumprido todos os meses.

Formule o modelo que permite encontrar um programa de produção de modo a maximizar o


lucro. Determine a solução ótima.
IO - Aulas TP
Página |

Exercício 29

A empresa MWD gere a distribuição de água numa vasta região. Esta região é bastante árida, de
modo que a empresa MWD tem de adquirir água fora dessa região. As origens desta água são os
rios A, B e C. A empresa MWD efetua depois a distribuição e venda da água aos seus
utilizadores na região referida. Os seus principais clientes são os serviços municipalizados das
cidades V, X, Y e Z. É possível abastecer qualquer destas cidades com água proveniente de
qualquer um dos rios, com exceção da cidade Z, que não pode receber água do rio C. No entanto,
devido às características geográficas da região, o custo da distribuição da água para a empresa

MWD depende quer da origem da água quer da cidade a ser fornecida. O custo variável por m 3
de água para cada combinação de rio e cidade é dado na tabela seguinte:

Cidad Disponibilid
e ade (milhões

V X Y Z de m3)

Rio A 1 13 22 17 50
6

Rio B 1 13 19 15 60
4

Rio C 1 20 23 - 50
9

Necessidades mínimas 3 70 0 10
0

Máxi
Requerido 5 70 30 mo
0 possív
el

Apesar destas variações, o preço por m3 cobrado pela empresa MWD é independente da origem
da água, e é o mesmo para todas as cidades

A gestão da empresa depara-se com o problema de como alocar a água disponível durante o
IO - Aulas TP
Página |
próximo verão. As quantidades disponíveis de água (expressas em milhões de m3) estão na
última coluna da tabela.

A empresa deseja assegurar uma determinada quantidade mínima de modo a garantir as


necessidades de cada cidade (com exceção da cidade Y, que tem uma origem de água própria), e
que constam da linha do quadro referente às necessidades mínimas.

Os valores da última linha do quadro indicam que a cidade X não precisa de mais do que o valor

correspondente às necessidades mínimas, as cidades V e Y aceitam mais 20 e 30 milhões de m 3,


respetivamente, que as suas necessidades mínimas, e a cidade Z aceita qualquer quantidade que
vier a mais.

A gestão da empresa pretende tomar uma decisão sobre as quantidades de água a distribuir a
partir dos três rios para as quatro cidades, de modo a satisfazer, pelo menos, as necessidades
básicas de cada cidade, minimizando o custo total para a empresa.

5 Problema de Redes

A
representação em rede fornece uma ajuda visual e concetual poderosa para traduzir relações entre
componentes de sistemas.
A representação em rede fornece uma ajuda visual e concetual poderosa para traduzir relações entre
componentes de sistemas.

Utiliza-se em diversas áreas, tais como:

• transportes
• eletricidade
• comunicações
• produção
• distribuição
• projetos
• localização de instalações
• gestão de recursos
IO - Aulas TP
Página |
planeamento financeiro

Recentemente tem-se assistido a um grande progresso na metodologia e aplicação de modelos


de otimização em redes.

Terminologia de Redes

Uma rede consiste num conjunto de pontos e num conjunto de linhas que unem certos pares de pontos:

os pontos designam-se por nós ou por vértices.


as linhas designam-se por arcos (ou ligações, ou arestas, ou ramos)
o A cada arco está associada uma capacidade

Aos arcos estão associados fluxos:

se o fluxo só pode circular num sentido o arco diz-se direcionado.


se o fluxo pode circular nos dois sentidos o arco diz-se não
direcionado. Se uma rede só utiliza arcos direcionados, designa-se por
rede direcionada.
Um percurso ou caminho entre dois nós corresponde à sequência de arcos distintos que permite ligar
esses nós:

um percurso ou caminho direcionado do nó i para o nó j refere-se à sequência de arcos de ligação


cujo sentido é de i para j e que permite que haja fluxo ao longo deste percurso.
um percurso ou caminho não direcionado do nó i para o nó j é a sequência de arcos de ligação,
direcionados ou não, entre os nós i e j.
um percurso ou caminho que começa e acaba no mesmo nó denomina-se
ciclo. Dois nós dizem-se ligados se a rede contém pelo menos um arco entre
eles.
INVESTIGAÇÃO OPERACIONAL

Tipos de Problemas:

1. Árvore de Ligações Mínimas

2. Caminho Mais Curto

3. Fluxo Máximo

CPM (“Critical Path Method”)


4.
Dualidade
5. PERT (“Program Evaluation and Review Technique”)
otimização

Os últimos dois tipos de redes usam-se para a gestão de projetos de


larga escala que requerem um cuidadoso planeamento de operações e
a coordenação de numerosas atividades inter-relacionadas. Estes Na teoria da
otimização
métodos são utilizados para ajudar no planeamento e controlo e, por matemática,
essa razão, não envolvem a otimização direta do problema. Em a dualidade,
ou princípio da
alternativa, os seus objetivos são: dualidade, é o
princípio de que
Identificar quais as tarefas mais problemáticas sobre as quais será os problemas de
necessário exercer maior controlo; otimização podem
ser vistos a partir de
Avaliar o efeito de algumas alterações na evolução futura; duas perspectivas:
o problema
Determinar a probabilidade de cumprir primordial
determinados prazos (só PERT) Assim, (primal) ou o
problema dual. A
estas redes servem para: solução para o
Calendarizar as atividades a programar (definindo os tempos de início problema dual
fornece um limite
mais cedo e mais tarde e os tempos de fim mais cedo e mais tarde); inferior para a
Determinar o caminho crítico das atividades a programar, bem como solução do problema
primal
as folgas nos tempos (minimização). No
entanto, em geral, os
valores ótimos dos
problemas primários
e duais não precisam
ser iguais. Sua
diferença é chamada
de diferença de
dualidade. Para
INVESTIGAÇÃO OPERACIONAL
problemas de otimização convexa, a diferença de dualidade é zero sob
uma condição de qualificação de restrição.
Geralmente, o termo "problema dual" refere-se ao problema dual de
Lagrange, mas outros problemas duais são usados - por exemplo,
o problema dual de Wolfe e o problema dual de Fenchel. O problema dual
de Lagrange é obtido pela formação do Lagrangeano de um problema de
minimização usando multiplicadores de Lagrange não-negativos para
adicionar as restrições à função objetivo e, em seguida, resolvendo os
valores primári
IO - Aulas TP
Dualidade otimização

Na teoria da otimização matemática, a dualidade, ou princípio da dualidade, é o princípio de que


os problemas de otimização podem ser vistos a partir de duas perspectivas: o problema primordial
(primal) ou o problema dual. A solução para o problema dual fornece um limite inferior para a solução do
problema primal (minimização). No entanto, em geral, os valores ótimos dos problemas primários e duais
não precisam ser iguais. Sua diferença é chamada de diferença de dualidade. Para problemas
de otimização convexa, a diferença de dualidade é zero sob uma condição de qualificação de restrição.
Problema dual

Geralmente, o termo "problema dual" refere-se ao problema dual de Lagrange, mas outros problemas
duais são usados - por exemplo, o problema dual de Wolfe e o problema dual de Fenchel. O problema
dual de Lagrange é obtido pela formação do Lagrangeano de um problema de minimização
usando multiplicadores de Lagrange não-negativos para adicionar as restrições à função objetivo e, em
seguida, resolvendo os valores primários das variáveis que minimizam a função objetivo original. Essa
solução fornece as variáveis primárias como funções dos multiplicadores de Lagrange, que são chamadas
de variáveis duais, de modo que o novo problema é maximizar a função objetivo com relação às variáveis
duais sob as restrições derivadas nas variáveis duais (incluindo pelo menos a não-negatividade restrições).
igual a . Este valor é sempre maior que ou igual a 0. O gap de dualidade é zero se e somente se
a dualidade forte for válida. Caso contrário, a lacuna é estritamente positiva e a dualidade é fraca.
Na otimização computacional, outro "gap de dualidade" é frequentemente relatado, que é a diferença de
valor entre qualquer solução dual e o valor de uma iteração factível, mas sub-ótima, para o problema
primordial. Essa alternativa "gap de dualidade" quantifica a discrepância entre o valor de uma iteração
factível, mas sub ótima, para o problema primordial e o valor do problema dual; o valor do problema
duplo é, sob condições de regularidade, igual ao valor do relaxamento convexo do problema primário: o
relaxamento convexo é o problema que surge substituindo um conjunto viável não convexo por seu casco
convexo fechado e com a substituição de uma função não-convexa com o seu fechamento convexo, que é
a função que tem a epígrafe que é o casco convexo fechado da função objetivo primitiva original.
Caso linear
Artigo principal: dual linear program
Problemas de programação linear são problemas de otimização nos quais a função objetivo e
as restrições são todas lineares. No problema primal, a função objetivo é uma combinação linear de n
variáveis. Existem m restrições, cada uma das quais coloca um limite superior em uma combinação linear
das n variáveis. O objetivo é maximizar o valor da função objetiva sujeita às restrições. Uma solução é
um vetor (uma lista) de n valores que alcança o valor máximo para a função objetivo.
No problema dual, a função objetivo é uma combinação linear dos valores m que são os limites nas
restrições m do problema primal. Existem n restrições duplas, cada uma das quais coloca um limite
inferior em uma combinação linear de m variáveis duplas.
IO - Aulas TP
Relações primais-duais
No caso linear, no problema primal, de cada ponto sub-ótimo que satisfaz todas as restrições, existe uma
direção ou subespaço de direções para mover que aumenta a função objetivo. Movendo-se em tal direção
é dito para remover a folga entre a solução candidata e uma ou mais restrições. Um valor inviável da
solução candidata é aquele que excede uma ou mais das restrições.
No problema dual, o vetor dual multiplica as restrições que determinam as posições das restrições no
primal. Variar o vetor dual no problema dual é equivalente a revisar os limites superiores no problema
primal. O limite superior mais baixo é procurado. Ou seja, o vetor dual é minimizado para remover a folga
entre as posições candidatas das restrições e o ótimo real. Um valor inviável do vetor dual é aquele que é
muito baixo. Define as posições candidatas de uma ou mais das restrições em uma posição que exclui o
ótimo real.
Esta intuição é formalizada pelas equações em Programação Linear: Dualidade.
Caso não linear
Na programação não linear, as restrições não são necessariamente lineares. No entanto, muitos dos
mesmos princípios se aplicam.
Para garantir que o máximo global de um problema não linear possa ser identificado facilmente, a
formulação do problema frequentemente requer que as funções sejam convexas e tenham conjuntos de
nível mais baixo compactos.
Este é o significado das condições de Karush-Kuhn-Tucker. Eles fornecem condições necessárias para
identificar ótimos locais de problemas de programação não linear. Existem condições adicionais
(qualificações de restrição) que são necessárias para que seja possível definir a direção para uma solução
ótima. Uma solução ótima é aquela que é um ótimo local, mas possivelmente não é um ótimo global.
IO - Aulas TP
A Programação Dinâmica

A Programação Dinâmica procura resolver o problema de otimização através da análise de uma seqüência de
problemas mais simples do que o problema original.
A resolução do problema original de N variáveis é caracterizado pela determinação de uma variável e pela
resolução de um problema que possua uma variável a menos (N-1). Este por sua vez é resolvido pela determinação
de uma variável e pela resolução de um problema de N-2 variáveis e assim por diante. O problema a ser resolvido é
do tipo:
-existem N atividades ou estágios numerados de 1 a N.
IO - Aulas TP

Bibliografia
IO - Aulas TP
IO - Aulas TP

Taha, H., Operations Research - An Introduction, Prentice-Hall International, Inc.


Tavares, L. V.; Oliveira, R. C.; Themido, I. H.; Correia, F. N. , Investigação Operacional, McGraw-Hill

Você também pode gostar