Você está na página 1de 55

EPS7005 Pesquisa Operacional

Prof. Srgio Mayerle

Ementa: Introduo: histrico, objetivos, restries e modelos.


Condies de otimalidade. Programao linear: modelos de
programao linear, mtodo simplex, dualidade, anlise de
sensibilidade e ps-otimalidade. Problemas lineares especiais.
Programao no linear; otimizao multivariada; otimizao sem
restries. Programao Inteira, binria e mista: algoritmos e
modelos. Programao dinmica determinstica e estocstica.

Pesquisa Operacional
Sumrio

Parte I Introduo Pesquisa Operacional

Parte II Programao Linear

Parte III Problemas Lineares com estruturas especiais

Parte IV Programao Inteira

Parte V Programao Dinmica

Parte VI Programao No Linear

Parte I

Introduo Pesquisa Operacional


Histrico
Definio
Abordagem da PO
Princpios de modelagem
Validao de modelos

Introduo Pesquisa Operacional


Histrico

II Guerra Mundial
Problemas complexos
Envolvimento multidisciplinar de cientistas (UK)
Desenvolvimento de tcnicas matemticas (USA)
Eficincia e sucesso na rea militar
Transferncia dos conhecimentos adquiridos para a rea civil
Retorno dos cientistas para as universidades
Adaptao e aplicao das tcnicas em atividades econmicas
(empresas petrolferas e grandes coorporaes)
PO Vantagem Competitiva
Padronizao dos problemas generalizao do uso da PO
Dcada de 50
1952 - Operations Research Society of America (ORSA)
1953 - Institute of Management Sciences (TIMS)
Operations Research e Management Sciences

Introduo Pesquisa Operacional


Histrico

Dcada de 60
computadores resoluo de problemas grandes e complexos
introduo da PO como disciplina nas universidades
cursos de ps-graduao (M.Sc. e Ph.D.)
Atualmente
IFORS - International Federation of Operations Research Society
ALAIO - Associacin Latino Americana de Investigacin Operativa
SOBRAPO - Sociedade Brasileira de Pesquisa Operacional
Existem congressos, simpsios: "Production planning", "OR in
community health planning", "OR models of the criminal justice system",
"Transportation and mass transit studies", "Travel and tourism", "Energy",
"Education models", "OR applications in sports".
Aplicaes na indstrias, bancos, hospitais, instituies governamentais,
universidades, comrcio, agricultura, informtica

Introduo Pesquisa Operacional


Definio

Definio histrica
" um conjunto de problemas, tcnicas de resoluo e solues, com
caractersticas bem definidas, acumuladas sob o termo PO desde a
dcada de 40 do sculo passado".

Definio filosfica
"Pesquisa Operacional o conjunto de conhecimentos relacionados com
o processo cientfico de tomada de deciso, aplicados no projeto e
operao de sistemas homem-mquina, em um ambiente com recursos
restritos".

Introduo Pesquisa Operacional


Abordagem da PO
Modelo uma representao
simplificada / idealizada, que
visa obter informaes sobre o
sistema real com economia de
tempo e recursos

Formulao: liberdade,
arbitrariedade e coerncia

Sistema
Real

Formulao

Abordagem Direta

Soluo
Real

Modelo

Deduo

Interpretao

Interpretao: julgamento humano,


reavaliao do modelo

Soluo do
Modelo

Deduo: uso de
tcnicas dependentes
do modelo formulado,
rigor matemtico e
preciso, uso de
computadores

Introduo Pesquisa Operacional


Princpios de Modelagem

1.
2.

No construir modelos complicados quando um modelo simples suficiente.


Evitar a construo de modelos de modo que estes se ajustem a uma
tcnica de soluo previamente definida.
3.
Conduzir a fase de deduo com o mximo rigor possvel.
4.
Os modelos devem ser validados a priori em relao a implementao.
5.
No confiar cegamente no resultado do modelo, de modo a perder de vista a
realidade do problema.
6.
Modelos no devem ser utilizados, nem to pouco criticados por no
resolver situaes para as quais no foram desenvolvidos.
7.
No sobrevalorizar o modelo diante do usurio.
8.
Sempre envolver o usurio no processo de desenvolvimento e validao do
modelo.
9.
Os resultados de um modelo nunca podem ser melhores que os dados nele
introduzidos.
10. Modelos no podem substituir tomadores de deciso.

Introduo Pesquisa Operacional


Validao de Modelos

Aspectos a considerar
no existe modelo perfeito
no existe um critrio absoluto de verificao de modelos
no se pode "provar" ou "verificar" o modelo

Validar o modelo
adquirir a convico de que o modelo til para aquilo a que foi
proposto
convencer o usurio de que os resultados so teis dentro de um
determinado contexto

Parte II

Programao Linear
Formulao de modelos
Soluo grfica
Forma padro e relaes de equivalncia
Propriedades dos PPLs
Soluo inicial vivel
Mtodo Simplex Forma tableau
Mtodo Simplex Algoritmo
Mtodo Simplex Forma matricial
Dualidade em Programao Linear
Anlise de ps-otimalidade

Programao Linear
Formulao de Modelos

A WINDOR GLASS Inc. dispe de capacidade extra para produzir dois novos
produtos. A demanda muito maior que a capacidade disponvel (toda
produo poder ser vendida).
Pergunta-se: (a) o que produzir? (b) quanto produzir? (c) qual ser o lucro? (d)
qual o valor, em $/hora, da capacidade disponvel em cada setor produtivo?
Os dados esto na tabela abaixo.

Produto
Janelas

Portas

Capacidade
Disponvel

Montagem

1 hora/unid.

4.000 horas/ms

Laminao

2 hora/unid.

12.000 horas/ms

Corte

3 hora/unid.

2 hora/unid.

18.000 horas/ms

Lucro Unitrio

$ 3,00

$ 5,00

Setor Produtivo

Programao Linear
Formulao de Modelos
Produto
Janelas

Portas

Capacidade
Disponvel

Montagem

1 hora/unid.

4.000 horas/ms

Laminao

2 hora/unid.

12.000 horas/ms

Corte

3 hora/unid.

2 hora/unid.

18.000 horas/ms

Lucro Unitrio

$ 3,00

$ 5,00

Setor Produtivo

Variveis
X1 = qtde. de janelas, em milhares de unidades;
X2 = qtde. de portas, em milhares de unidades;
Z = lucro total obtido com novos produtos.
Restries
a) disponibilidade do setor de montagem;
b) disponibilidade do setor de laminao;
c) disponibilidade do setor de corte;
d) quantidades no negativas.
Objetivo
Maximizar o lucro total da empresa

Programao Linear
Formulao de Modelos

Estratgia militar
Engenharia estrutural
Operao de dutos
Dimensionamento de linhas de
produo
Alocao de mo-de-obra
Programao de operaes
Controle de emisso de poluentes

Produo
Logstica
Mistura
Finanas e investimentos
Carregamento de navios
Corte de chapas e barras
Aquisio de mquinas
Problemas dinmicos
Cmbio

Alguns do problemas acima apresentam variveis discretas que somente


podem assumir valores do conjunto de inteiros, e em casos mais particulares
o conjunto de inteiros se limita a {0,1}.

Programao Linear
Soluo Grfica

x2
9

x1 4

8
7

2 x2 12

6
5
4

x1 0

3
2

3 x1 2 x2 18

1
0
0

x2 0

x1

Programao Linear
Soluo Grfica

O que fazer se alm de portas e janelas a WINDOR puder fabricar, tambm,


mesas e armrios?
Resolver graficamente o problema torna-se invivel ... necessrio usar
mtodos numricos mais eficazes e eficientes.

Quantos produtos diferentes uma fbrica pode produzir?


5, 10, 100, 1000, ...

Quantos setores de produo uma fbrica possui?


5, 10, 100, 1000, ...

E se existem restries adicionais em relao ao uso de matria-prima,


energia, estoques, mo-de-obra, cadeia de suprimento e distribuio?
Outros modelos, mais complexos, podero ser formulados ...

A soluo grfica no se aplica a estas outras situaes !!!

Programao Linear
Forma padro e relaes de equivalncia

Programao Linear
Forma padro e relaes de equivalncia

Programao Linear
Forma padro e relaes de equivalncia

Programao Linear
Forma padro e relaes de equivalncia

Programao Linear
Forma padro e relaes de equivalncia

Qualquer que seja a estrutura do PPL, sempre possvel transform-lo no


formato padro apresentado.

Relao entre maximizao e minimizao

Programao Linear
Forma padro e relaes de equivalncia

Relao entre inequaes e equaes

Programao Linear
Forma padro e relaes de equivalncia

Tratamento de limites de variveis

Programao Linear
Propriedades dos PPLs

Suposies da modelagem
Proporcionalidade
Custos e quantidades de recursos consumidos na produo so
proporcionais s quantidades produzidas
Aditividade
Custos totais e quantidades totais de recursos so determinados pela soma
de custos e recursos consumidos na produo de todos items
Divisibilidade
possvel produzir quantidades fracionrias de cada um dos produtos
Certeza
Todos os parmetros do modelo so determinados e conhecidos

Perspectiva das suposies da modelagem


Existe a possibilidade de todas estas suposies no serem verdadeiras.

Programao Linear
Propriedades dos PPLs

Se existe exatamente uma soluo


tima, ento deve ser uma soluo
factvel em um vrtice

x2
9

Se existem solues timas mltiplas,


ento ao menos duas delas devem ser
solues factveis em vrtices
adjacentes

Existe um nmero finito de solues


factveis em vrtices, no maior que...

nn!!
mm
CSe
soluo factvel em um vrtice
C
nnuma
igual ou
(segundo
mm!melhor
!((nnm
m)!)! o valor de

Z) que todas as solues factveis nos


vrtices adjacentes a ela, ento igual
ou melhor que todas as demais
solues factveis existentes nos
vrtices, isto , uma soluo tima

7
6

4
3
2
1
0
0

x1

Programao Linear
Propriedades dos PPLs
Estrutura do Mtodo Simplex

Passo inicial: iniciar com


uma soluo em um vrtice
(soluo bsica vivel).
Teste de otimalidade: se
no existe um vrtice
adjacente, melhor que o
vrtice atual, ento PARE.
O vrtice atual corresponde
soluo tima. Em caso
contrrio, v ao passo 3.

x2
Soluo
tima

9
8
7
6
5
4
3
2

Passo iterativo: movimente


em direo de uma soluo
factvel melhor, em um
vrtice adjacente; volte ao
passo 2.

1
0
0

x1

Programao Linear
Soluo Inicial Vivel - Caso trivial

Caso trivial
a) variveis no negativas
b) restries com limite superior
Soluo
variveis nulas
folgas iguais ao RHS

Programao Linear
Soluo Inicial Vivel - Caso no trivial

No
Notem
temsoluo
soluotrivial
trivial

Sempre
Sempretem
temsoluo
soluotrivial
trivial

Ambas formulaes so equivalentes quando

di 0, i 1,..., m

Programao Linear
Soluo Inicial Vivel - Mtodo do M-grande

M d

i 1

Se di 0, i 1,..., m encontroua soluotima


no existesoluovivel,ou
Se di 0
mentegrande
M no suficiente

Programao Linear
Soluo Inicial Vivel - Mtodo das 2 fases

Fase
Fase11

Resolver o problema da
fase 1 usando as variveis
artificiais para formar uma
base inicial vivel.
Se w = 0, ento uma
soluo inicial vivel foi
obtida para o problema.
Fase
Fase22

Se w = 0, usar soluo tima


da fase 1 como soluo inicial
vivel para a fase 2.

Programao Linear
Mtodo Simplex - Forma Tableau

Base

X1

X2

S1

S2

S3

RHS

S1

+inf

S2

12

+6

S3

18

+9

-3

-5

O que fazer para melhorar a soluo?

Quanto aumentar X2 ?

Base

X1

X2

S1

S2

S3

RHS

S1

+4

X2

1/2

+inf

S3

-1

+2

-3

5/2

30

Programao Linear
Mtodo Simplex - Forma Tableau

Base

X1

X2

S1

S2

S3

RHS

S1

1/3

-1/3

X2

1/2

X1

-1/3

1/3

3/2

36

Var.

Decises

Valor

Marg.

X1

Janelas

X2

Portas

S1

Montagem

S2

Laminao

1,5

S3

Corte

Lucro

36

Pergunta-se:
(a) o que produzir?
(b) quanto produzir?
(c) qual ser o lucro?
(d) qual o valor da capacidade
disponvel em cada setor?

Programao Linear

Custo
Customarginal
marginal
mais
negativo
mais negativo

Mtodo Simplex Algoritmo

Incio

Menor
Menorrazo
razo
no
negativa
no negativa

Escolher varivel
para entrar na base

Montar tableau com


soluo bsica
inicial vivel

Calcular razo
RHS / coluna (entra)
Escolher varivel
para sair da base

1
Existe custo
marginal < 0 ?

Sim

Existe
razo 0
finita ?

No

No

Soluo
tima

Soluo
ilimitada

Sim

Fazer troca de
base e recalcular
o tableau

1
Fim

Programao Linear
Mtodo Simplex Algoritmo

Supondo que a troca de base ser realizada com o pivo localizado na r-sima
linha e k-sima coluna, o novo tableau poder ser obtido pr-multiplicando o tableu
da iterao corrente pela inversa da matriz elementar formada pela k-sima coluna
do tableau corrente, posicionada na r-sima coluna desta matriz elementar, isto :

( t 1)

1
r ,k

E T

(t )

Programao Linear
Mtodo Simplex Algoritmo

T (0)

0 1 0

0 0 2

0 3 2

1 2 5

T (1)

1
T (2)

1
0
0
0

0
1
0
0

0 4

0 12
1 18

0 0

1
0 1 0
0

0 0 2
2

2 1 0 3 2

5
1
1 2 5
1
0 1
1

1 0 0 0

3 0 3

3 1
1 3

1
0
0
0

0
1
0
0

0 4 0 1

0 12 0 0

1 18 0 3

0 0
1 3

6
0 0 1 1 6

0 0 5 / 2 0 30

0 1 0 0
1 0 1/ 2 0

0
1
0
0

0 0 0

0 0 1

0 1 0

1 0 0

1 0
0 1/ 2
0 1
0 5/ 2

0 4

0 6
1 6

0 30

1/ 3 2

0
6
0 1/ 3 1/ 3 2

0 3/ 2
1
36

1
0

1/ 3
1/ 2

Programao Linear
Mtodo Simplex - Forma Matricial

Particionando...
Particionando...

Programao Linear
Mtodo Simplex - Forma Matricial

Como resolver o sistema de equaes lineares ?

No caso particular em que as variveis no bsicas so nulas ...


Soluo
SoluoParticular
Particular

Programao Linear
Mtodo Simplex - Forma Matricial

E o valor da funo objetivo ?

No caso particular em que as variveis no bsicas so nulas ...

Soluo Particular

Programao Linear
Mtodo Simplex - Forma Matricial

Resumindo, at aqui tem-se ...

possvel melhorar o valor da funo objetivo ? ...

Programao Linear
Mtodo Simplex - Forma Matricial

Como melhorar ...

Escolher
Escolherpara
paraaumentar
aumentar(entrar
(entrar
na
base)
uma
varivel
no
na base) uma varivel no
bsica
bsicaassociada
associadaaauma
uma
componente
positiva
do
componente positiva dovetor
vetor

cRT cTB B 1 R

Programao Linear
Mtodo Simplex - Forma Matricial

Aumentar a k-sima varivel no bsica (escolhida) ... at quanto ?

Escolherpara
parasair
sairda
dabase
base
Escolher
umavarivel
varivelbsica
bsica
uma
associadaao
aomenor
menorvalor
valor
associada
calculado.
calculado.

Programao Linear
Mtodo Simplex - Forma Matricial

Resumo...
Soluo

Teste de entrada

Teste de sada

Programao Linear
Exemplo (1)

Programao Linear
Exemplo (1.a)
1a. Iterao

Programao Linear
Exemplo (1.b)
x1 0
x R
x2 0

x B

S1
1 0 0
S 2 B 1b 0 1 0

S3
0 0 1

4
z cTB x B [0 0 0] 12 0

18

cTR cBT B 1 R 3 5 0
cTR cBT B 1 R 3 5

1 0 0
0 Entra
0 0na base
1 0
na base
Entra
0 0 1

4 4
12 12

18 18

0
2

1
0

Programao Linear
Exemplo (1.c)

1 0 0
Rk B 1 Rk 0 1 0

0 0 1

4
xB x B Rk xR ,k 12

18
4 12 18
xR ,k min , , 6
0 2 2

2 xR , k

0
2

2

S1 4
x B S 2 12

S3 18

2
0
0

Sai
Saida
dabase
base

Coluna
Colunade
de

Programao Linear
Exemplo (2.a)
2a. Iterao

S1
xB Sx2

S3

x1
xR
Sx2

4
b 12

18

1 0 0
B 0 12 0

0 02 1

1 0
R 0 1
2

0
3 2

cTB 0 50 0

cTR 3 05

Programao Linear
Exemplo (2.b)
x1 0
x R
S 2 0

z cTB x B [0

S1
1
x B x2 B 1b 0

S3
0
5

4
0] 6 30

6

1
c TR c BT B 1 R 3 0 0 5 0 0

Entra
Entrana
nabase
base
0
5

T
T
1
cR cB B R 3
2

0
2
2

0
0

4
4
12 6


18
6

2
2

1
0

Programao Linear
Exemplo (2.c)

Rk B 1 Rk

1 0 0
0 2 0

0 2 1

4
xB x B Rk xR ,k 6

6
4 6 6
xR ,k min , , 2
1 0 3

1
0

3

1
0

0 x R ,k

s1
4
x B x2 6


s3
6

0
0

Coluna
Colunade
de

Sai
Saida
dabase
base

Programao Linear
Exemplo (3.a)
3a. Iterao

S1
xB x2

Sx13

Sx13
xR
S2

4
b 12

18

0
1 0 1
B 0 2 0

0 2 13

0
0 1
R 0 1
0

3
1 0

cTB 0 5 30

cTR 0 03

Programao Linear
Exemplo (3.b)
1 0 1
x B B 1b 0 2 0

0 2 3

4
12

18

2
6

Soluo
Soluotima
tima

2
z cTB x B [0 5 3] 6 36

2

1 0 1
cTR cTB B 1 R 0 0 0 5 3 0 2 0

0 2 3
3

T
T 1
cR cB B R 1
2

0 0
0 1

1 0

Programao Linear
Exemplo (4)

Var.

Decises

Valor

Marg.

X1

Janelas

X2

Portas

S1

Montagem

S2

Laminao

-1,5

S3

Corte

-1

Lucro

36

Parte III

Problemas Lineares Especiais


Problema de Atribuio
Problema de Transportes
Problemas de Fluxo em Redes

Parte IV

Programao Inteira
Modelagem
Algoritmo de branch and bound
Algoritmo de Balas

Parte V

Programao Dinmica
Formulao de modelos
Programao Dinmica Determinstica
Programao Dinmica Estocstica
Programao Dinmica com horizonte ilimitado

Parte VI

Programao No Linear
Formulao de modelos
Condies de Karush-Kuhn-Tucker (KKT)
Problemas no lineares monovariados
Problemas mutivariados no lineares
Problemas multivariados no lineares com restries