Você está na página 1de 83

(CCO-727)

Programa de
Ps-Graduao Otimizao Inteligente de
em Cincia da
Computao Sistemas Produtivos

Prof. Dr. Edilson Reis Rodrigues Kato


(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Matemtica
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Matemtica (1)

A Programao Matemtica a rea a otimizao


de recursos.

A Programao matemtica uma rea que estuda


e desenvolve modelos matemticos que buscam
empregar melhor os recursos de capacidade,
financeiros, de mo de obra, entre outros, de
forma eficaz.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Matemtica (2)


Modelagem matemtica com o objetivo de se
maximizar ou minimizar uma funo que
descrita como uma funo de variveis de
deciso que representam recursos, chamada
funo objetivo.

As relaes entre as variveis so representadas


atravs de restries ao problema expressa como
equaes e inequaes matemticas.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Problema de Otimizao (1)


A busca de uma soluo mais adequada entre diversas
solues envolve os elementos de um Problema de
Otimizao:

Um critrio de avaliao das solues possveis (funo


objetivo).
A funo objetivo deve ser maximizada ou minimizada.
A presena de restries que devem ser respeitadas.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Problema de Otimizao (2)


Ou seja, tem-se uma funo f , chamada funo objetivo,
definida no conjunto de solues alternativas A.

O problema de otimizao matemtica definido por:

min f (x), x A.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Problema de Programao Matemtica


Otimizar: Z=f(x1, x2, x3,...xn)

Sujeito a: g1(x1, x2, x3,...xn) b1


g2(x1, x2, x3,...xn) = b2
... ...
gm(x1, x2, x3,...xn) bm
Onde:
xj quantidade de variveis utilizadas (j=1,2,3...n)
bi quantidade disponvel de um determinado recurso (i = 1,2,3,...m)
X = vetor de xj
f(X) Funo Objetivo
gi (X) funes utilizadas nas restries do problema (i = 1,2,3,...m)
n nmero de variveis de deciso
m nmero de restries do modelo.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Problema de Otimizao (3)


De acordo com o comportamento de f (x) e de como o
conjunto A descrito, temos diferentes classes de
problemas de otimizao e uma variedade de mtodos
de soluo:

Otimizao linear

Otimizao Inteira.

Otimizao no linear.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Matemtica (3)


A programao matemtica pode ser aplicada em
diversas reas, tais como:

Planejamento e Controle da Produo;


Cadeia de Suprimentos;
Planejamento Financeiro;
Anlise de Projetos;
Carteira de investimentos;
Designao de equipes;
entre outras.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Linear

A programao Linear (LP) um problema de


Programao Matemtica em que as funes-
objetivo e de restries so lineares
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Linear (padro)


Um problema de programao linear est em sua
forma padro se houver uma maximizao da
funo-objetivo.
Se todas as restries forem do tipo menor ou igual
().
Os termos constantes e variveis de deciso no
negativos.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Linear (padro)


Um problema de programao linear est em sua
forma padro se houver uma maximizao da
funo-objetivo.
Se todas as restries forem do tipo menor ou igual
().
Os termos constantes e variveis de deciso no
negativos.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Linear
(Resoluo Grfica)
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Exemplo 1 Problema de Planejamento da


Produo (exemplo)
Uma Empresa precisa decidir quais modelos de geladeira fabricar
em sua nova planta;
Dois possveis modelos: luxo e bsico.
No mximo, 1500 unidades do modelo luxo e 6000 unidades do
modelo bsico podem ser vendidas por ms.
A Empresa contratou 25000 homens-hora de trabalho por ms;
Os modelos luxos precisam de 10 homens-hora de trabalho para
serem produzidos e os modelos bsicos, 8 homens-hora.
A capacidade da linha de montagem de 4500 geladeiras por
ms, pois as geladeiras dividem a mesma linha;
O lucro unitrio do modelo luxo $100,00 por ms, enquanto o
modelo bsico lucra $50,00 durante o mesmo perodo.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Exemplo 1 Problema de Planejamento da


Produo (exemplo)

Objetivo: determinar quanto produzir de cada geladeira,


de modo a satisfazer todas as restries e maximizar o
lucro da empresa.

Variveis de deciso:
x1 = quantidade de geladeiras do modelo luxo a ser
produzida por ms.

x2 = quantidade de geladeiras do modelo bsico a ser


produzida por ms..
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Exemplo 1 Problema de Planejamento da


Produo (exemplo)
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Exemplo 1 Problema de Planejamento da


Produo (exemplo)
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Exemplo 1 Problema de Planejamento da


Produo (exemplo)
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Exemplo 1 Problema de Planejamento da


Produo (exemplo)
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Exemplo 1 Problema de Planejamento da


Produo (exemplo)
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Exemplo 1 Problema de Planejamento da


Produo (exemplo)
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Exemplo 1 Problema de Planejamento da


Produo (exemplo)
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Modelo de Programao Linear envolvendo


mais de duas variveis de deciso

Soluo Grfica ?????


(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
So problemas de programao matemtica em que a funo-
-objetivo, bem como as restries, so lineares, porm uma ou mais
variveis de deciso podem apenas assumir valores inteiros.

Esse problema pode apresentar dois tipos bsicos:

Programao Inteira Total - onde todas as variveis de deciso


so do tipo inteiro.

Programao Inteira Mista - onde apenas uma parte das variveis


so do tipo inteiro, enquanto outras so do tipo real
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
A primeira ideia que pode vir mente resolver o problema como se
fosse um problema de programao linear e arredondar os valores
timos encontrados para cada uma das variveis de deciso inteiras.

Para problemas de grande porte, isto geralmente gerar uma soluo


aceitvel (prxima do timo real) sem a violao de nenhuma das
restries.

Para problemas menores, esse tipo de procedimento poder nos levar a


solues inviveis ou no timas.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Problema Relaxado Programao Linear Inteira

Max 18 x1 + 6 x2 Max 18 x1 + 6 x2
s.t. x1 + x2 5 s.t. x1 + x2 5
42.8 x1 + 100 x2 800 42.8 x1 + 100 x2 800
20 x1 + 6 x2 142 20 x1 + 6 x2 142
30 x1 + 10 x2 135 30 x1 + 10 x2 135
x1 - 3 x2 0 x1 - 3 x2 0
x1 , x2 0 x1 , x2 0
X1, X2 inteiros
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Soluo Grfica
Max 18 x1 + 6 x2 (4)

s.t. x1 + x2 5 (1) (2) (3)


42.8 x1 + 100 x2 800 (2)
20 x1 + 6 x2 142 (3) (1)
30 x1 + 10 x2 135 (4) (5)
x1 - 3 x2 0 (5)
x1 , x2 0 e inteiros
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Soluo Grfica
Soluo Aproximada do
x2 LP Relaxado timo
(5 ; 5)

(5,28 ; 5,74) Soluo tima para


LP Relaxado
(5,28 ; 5,74)

Soluo tima
para Problema
Inteiro
x1 (6 ; 3)
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
LP Relaxado
Nenhum ponto inteiro vizinho Soluo
x2
ao ponto timo do problema tima para
relaxado necessariamente LP Relaxado
vivel.
Soluo
Mesmo que um dos vizinhos tima para
seja vivel. Prog.Inteira
No necessariamente o
ponto timo inteiro.
No obrigatoriamente uma
soluo aceitvel.
x1
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Soluo por Enumerao
Uma ideia que pode resultar em uma soluo para
um problema de programao inteira a de se
enumerar todas as possveis solues.
De forma exaustiva, o valor da funo-objetivo
calculado para todas as solues viveis e
escolhido aquele que apresente o maior valor (no
caso de maximizao) ou o menor valor (no caso de
minimizao).
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Soluo por Enumerao
O problema com essa ttica de soluo est no fato de que
ela s consegue ser aplicada a problemas pequenos.
O nmero de combinaes possveis de solues cresce
de forma exponencial, isto , de forma muito rpida.
Ex.: Um ILP com 100 variveis de deciso do tipo binrias
(assumem 0 ou 1) ter at 2100 solues viveis, isto , 1,27 x
1030 solues possveis.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Algoritmo de Branch-And-Bound
Algoritmo de Branch-And-Bound mais utilizado atualmente
para resoluo de problemas do tipo ILP ou MILP.
uma metodologia geral para soluo de ILP e MILP, e
existem diversas variantes para tratar diversos tipos de
problemas especficos.
A ideia geral a de se dividir o conjunto de solues viveis em
subconjuntos sem intersees entre si, calculando-se os limites
superior e inferior para cada subconjunto, e ento eliminando
certos subconjuntos de acordo com regras pr-estabelecidas.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Algoritmo de Branch-And-Bound Soluo tima para
LP Relaxado
1 Passo x2 (3,75 ; 4,125)
Resolva o LP Relaxado e Z*=24.375
encontre uma soluo
inteira vivel 4

Max x1 + 5x2
s. t . 11x1 + 6 x2 66 2

5x1 + 50 x2 225
x1 , x2 0 e inteiros 2 4 6 x2
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Algoritmo de Branch-And-Bound
O valor timo (OV) do PL Representao Grfica
relaxado um limite superior (S) Melhor Limite Superior Atual (MLSA)
para o PLI, isto , o OV do PLI MLSA=24,375
menor que o OV do LP relaxado. Melhor Limite Inferior Atual (MLIA)
MLIA=23,00
Uma soluo vivel do problema
estabelece um limite inferior (V)
ao mesmo, isto , substituindo o
valor arredondado da soluo do S=24,375
LP relaxado, (se vivel) na funo V=23,00
objetivo, obtemos um limite x1=3.75
inferior. x2=4.125
(3) + 5x(4) =
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Algoritmo de Branch-And-Bound
Passo 2
Dividir o Problema original (P1) em dois problemas menores P2 e P3,
isto , Branch
Escolhemos arbitrariamente x1 (x1=3,75)
Max x1 + 5 x2 P2 Max x1 + 5x2 P3
s.t. 11x1 + 6 x2 66 s. t . 11x1 + 6 x2 66
5 x1 + 50 x2 225 5x1 + 50 x2 225
x1 3 x1 4
x1 , x2 0 e inteiros x1 , x2 0 e inteiros
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Algoritmo de Branch-And-Bound
Passo 2 - Graficamente Soluo tima para
x2 P2 Relaxado
(3 ; 4,20)
P2*=24,00
4

Soluo tima para


P3 Relaxado
2 (4 ; 3,667)
P3*=22,333

2 4 6 x2
Eliminado
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Algoritmo de Branch-And-Bound
Melhor Limite Superior Atual (MLSA)
Passo 3 - Anlise MLSA=24,00
S=24,375
Melhor Limite Inferior Atual (MLIA)
V=23,00 MLIA=23,00
x1=3.75
x1 3 x2=4.125 x1 4

S=24,00 S=22,333 OV de P3 MLIA


x1=3,0 x1=4,0 22,333 23,00
x2=4,20 x2=3.667 Ramo terminado
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Algoritmo de Branch-And-Bound
Passo 2
Dividir o Problema (P2) em dois problemas
menores P4 e P5, isto , Branch
Escolhemos x2 (x2=4,20)
Max x1 + 5x2 P4 Max x1 + 5 x2 P5
s. t . 11x1 + 6 x2 66 s.t. 11x1 + 6 x2 66
5x1 + 50 x2 225 5 x1 + 50 x2 225
x1 3 , x2 4 x1 3 , x2 5
x1 , x2 0 e inteiros x1 , x2 0 e inteiros
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Algoritmo de Branch-And-Bound
Passo 2 - Graficamente Soluo tima para
x2
P4 Relaxado
P5 (3 ; 4)
Invivel P4*=23,00
4
P4

2 4 6 x2
Eliminado
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Inteira
Algoritmo de Branch-And-Bound
Melhor Limite Superior
Atual (MLSA)=23,00
S=24,375
Melhor Limite Inferior
V=23,00
x1=3.75
Atual (MLIA)=23,00
x1 3 x2=4.125 x1 4
S=24,00 S=22,333
x1=3,0 x1=4,0
x2=4,20 x2=3.667
x2 4 x2 5 T
S=23,00
x1=3,0 Invivel
x2=4

T T
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
A programao dinmica (PD) determina a soluo tima de um
problema multivarivel decompondo-o em estgios, sendo que cada
estgio compreende um subproblema com uma nica varivel.

Um modelo de PD basicamente uma equao recursiva que liga os


diferentes estgios do problema de maneira que garante que a soluo
tima vivel de cada estgio tambm tima e vivel para o problema
inteiro.

O modo como os clculos recursivos so executados depende de como


decompomos o problema original e podem ser recurses progressivas
ou regressivas.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Problema do caminho mais curto
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica

f(x) a distncia mais curta at o n xi no estgio i


(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
f(x) a distncia mais curta at o n xi no estgio i

d(xi-1,xi) a distncia do n xi-1 ao n xi

Ento

fi(xi) = min {d(xi-1,xi)+ fi-1(xi-1)}, i = 1,2,3,...


Assim para o exemplo:

f1(2) = 7, f1(3) = 8 e f1(4) = 5

f2(5) = 12 e f2(6) = 17

f3(7) = 21
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
f1(2) = 7, f1(3) = 8 e f1(4) = 5
f2(5) = 12 e f2(6) = 17
f3(7) = 21

f(x) a distncia mais curta at o n xi no estgio i


(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Trs elementos bsicos dos modelos de PD:
Definio dos Estgios;

Definio das alternativas em cada estgio;

Definio dos estados para cada estgio.

A definio dos estados varia conforme a situao que est sendo modelada.

Perguntas teis para a elaborao do modelo:


Quais as relaes que vinculam os estgios?

Quais so as informaes necessrias para tomar decises viveis no estgio atual sem
reexaminar as decises tomadas em estgios anteriores?
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Problema da mochila/kit de voo/ carga

Uma mochila, avio ou navio tem capacidade de W quilos e pode levar n


itens, onde mi o nmero de unidades do item i na mochila/avio ou
navio e define-se ri como a receita (valor) e wi peso por unidade do
item i.

Maximizar z = r1 m1 + r2 m2 + r3 m3 + ... + rn mn

Sujeito a : w1 m1 + w2 m2 + w3 m3 + ... + wn mn W

m1 ,m2 , m3 0 e inteiros
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Os elementos do modelo so:
1 o estgio i representado pelo item i, i = 1,2,3...n.

2 as alternativas no estgio i so representadas por mi, o nmero de unidades do


item i includa na mochila. O retorno associado ri*mi, e define-se W/wi como o
maior inteiro menor ou igual a W/wi, ou seja mi = 0,1,2...W/wi.

3 O estado do estgio i representado por xi, o peso total designado para os estgios
(itens) i, i+1, ...e n. Essa definio reflete o fato de que a restrio de peso a
nica que liga todos os estgios.

fi(xi) = mximo retorno para os estgios i, i+1 e n dado o estado xi.


(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Ex.: Um navio de 4T pode ser carregado com um ou mais de trs itens.
A tabela abaixo d o peso unitrio wi em toneladas e a receita unitria,
ri, em milhares de dlares, para o item i. Como o navio deve ser
carregado para maximizar o retorno total?
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Estgio/Item 1 Estgio/Item 2 Estgio/Item 3
2T 3T 1T
F (0) =
1 F2(0) = F3(0) =

0 0 0
F1(1) = F2(1) = F3(1) =

1 1 1
F1(2) = F2(2) = F3(2) =

2 2 2
F1(3) = F2(3) = F3(3) =

3 3 3
F1(4) = F2(4) = F3(4) =

4 4 4
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Estgio/Item 1 Estgio/Item 2 Estgio/Item 3
2T 3T 1T
F (0) =
1 F2(0) = F3(0) =
0 0
0 0 0
F1(1) = F2(1) = 14 F3(1) =
47
1 1 2*14=28 1
F1(2) = F2(2) = F3(2) =
31 0 3*14=42

2 2 14 2
4*14=56
F1(3) = F2(3) = F3(3) =
2*14=28
0
3 3 3
14
F1(4) = F2(4) =0 F3(4) =
2*31=62 0
4 4 4
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Estgio/Item 1 Estgio/Item 2 Estgio/Item 3
2T 3T 1T
F (0) =max[0+56=56, 47+14=61] F (0) =max [0,14,28,45,56]
1 2 F (0) =0 3
0 0
0 0 0
F1(1) = F2(1) = 14 F3(1) =0
47
1 1 28 1
F1(2) =31+28=59 F2(2) =max[0,14,28] F3(2) =0
31 0 42

2 2 14 2
F1(3) = F2(3) = max[0,14]56 F3(3) =0
28
0
3 3 3
14
F1(4) =62+0=62 F2(4) =0 F3(4) =0
62 0
4 4 4
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Estgio/Item 1 Estgio/Item 2 Estgio/Item 3
2T 3T 1T
F (0) =max[0+56=56, 47+14=61] F (0) =max [0,14,28,45,56]
1 2 F (0) =0 3
0 0
0 0 0
14 F3(1) =0
47
28 1
F1(2) =31+28=59 F2(2) =max[0,14,28] F3(2) =0
31 0 42

2 2 14 2
F2(3) = max[0,14]56 F3(3) =0
28
0
3 3
14
F1(4) =62+0=62 F2(4) =0 F3(4) =0
62 0
4 4 4
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Define-se a expresso recursiva em 2 etapas:

1 Expresse fi(xi) como funo de fi(xi+1):

fi(xi) = max {ri.m1 + fi+1(xi+1)}, i=1,2,3...n

2 Expresse xi+1 em funo de xi para assegurar que o lado


esquerdo, fi(xi), uma funo somente de xi. Por definio
xi xi+1 = wi.mi e representa o peso usado no estgio i. Assim
xi+1=xi-wi.mi e a equao recursiva dada por:

fi(xi) = max {ri.m1 + fi+1(xi-wi.mi)}, i=1,2,3...n


(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Para o estgio 3 temos:
w3=1T, para W=4 temos a possibilidade de carregar: 0,1,2,3 ou 4T ou seja 5 estados
possveis (xi). E os valores de m podem assumir 4/1 valores incluindo 0.

f3(x3) = max{14m3} para m3 = 0,1,2,3 e 4


(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Para o estgio 2 temos:
w2=3T, para W=4 temos que os valores de m podem assumir so 4/3 valores,
devendo ser inteiro, seria 1 e incluindo 0 temos dois valores. Os estados xi no
se alteram.
f2(x2) = max{47m2+ f3(x2-3m2)} para m2 = 0 e 1
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
Para o estgio 1 temos:
w1=2T, para W=4 temos que os valores de m podem assumir so 4/2 valores,
isto 2 e incluindo 0 temos trs valores. Os estados xi no se alteram.
f1(x1) = max{31m1+ f2(x1-2m1)} para m1 = 0, 1 e 2
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao Dinmica
A soluo tima determinada no estgio 1 em m1 = 2 com x1=4

Ento x2 = x1 2m1 = 4 2(2) = 0

x 2 = 0 com m2 = 0 no estgio 2 e x3 = x2 3m2 = 0 3(0) = 0 com m3 = 0

Assim a soluo tima associada seria (m1, m2, m3) (2,0,0),

ou seja, carregar o item 1 duas vezes, e no carregar os itens 2 e 3.

o retorno associado a f(x) = $62.000


(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
De forma geral, um problema de programao
no linear tem a seguinte forma:

Max ou Min f (x)


st g i (x) bi para i 1,2,..., m
x 0 onde x = ( x1 , x2 ,..., xn )

Nenhum algoritmo resolve todos os problemas


que podem ser includos neste formato.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Aplicaes

Problemas de Mix de Produtos em que o lucro


obtido por produto varia com a quantidade
vendida.

Problemas de Transporte com custos variveis


de transporte em relao quantidade enviada.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Soluo Grfica
Considere o Problema de Programao Linear e
sua soluo grfica
Max Z 3x1 + 5x2 x2
s. r. x1 4 (0;6)
(2;6)

2x2 12
3x1+ 2x2 18 Soluo (4;3)
Vivel
x1 0, x2 0
(0;0)
(4;0) x1

1
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Soluo Grfica
Considere o Problema e sua soluo grfica
(restries no lineares)
x2
Max Z 3x1 + 5 x2 (2;6)
6
s.t. x1 4
4
9 x + 5 x 216
2
1
2
2 Soluo
Vivel
x1 0, x2 0 2

0
0 1 2 3 4 x1
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Soluo Grfica
A soluo tima:
a mesma do problema
linear. x2
continua na fronteira do (2;6)
conjunto de solues 6
viveis.
no mais um extremo do
conjunto de solues 4
viveis, mas poderia ainda Soluo
ocorrer em um ponto Vivel
extremo. 2
No existe a simplificao
(enumerao) existente 0
em Programao Linear 0 1 2 3 4 x1
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Soluo Grfica
- 2
+ - 2
Max Z=126x1 9 x1 182x2 13x2
s. r. x1 4
2x2 12 x2
(2;6)
3x1+ 2 x2 18 (0;6)

x1 0, x2 0 Soluo (4;3)
Vivel
(0;0)
(4;0) x1
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Soluo Grfica
A funo-objetivo uma equao quadrtica.
Z=126 x1 - 9 x12 + 182 x2 - 13x22
126
2
182
2
2 126 126
2
2 182 182
2

Z - 9 - 13 -9 x1 - x1 + - 13 x2 - x2 +
18 26 9 18 13 26


Z - 441 - 637 -9 x1 - 7 - 13 x2 - 7
2
2

Para Z = 907 171 = 9 x - 7 + 13 x - 7


2 2
1 2

Para Z = 857 221 = 9 x - 7 + 13 x - 7


2 2
1 2

Para Z = 807 271 = 9 x - 7 + 13 x - 7


2 2
1 2
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Soluo Grfica
Max Z = 857=126x1 - 9 x12 + 182 x2 - 13x22
x2
6

4
Z = 907
Z = 857
Soluo Z = 807
2 Vivel

2 4 x1
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Soluo Grfica

- 2
+ - 2
Max Z=54 x1 9 x1 78 x2 13x2
s. r. x1 4 x2
2x2 12 (2;6)
(0;6)
3x1+ 2 x2 18
Soluo (4;3)
x1 0, x2 0 Vivel
(0;0)
(4;0) x1
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Soluo Grfica
A funo-objetivo uma equao quadrtica
Z=54 x1 - 9 x12 + 78 x2 - 13x22
54
2
78
2
2 54 54
2
2 78 78
2

Z - 9 - 13 -9 x1 - x1 + - 13 x2 - x2 +
18 26 9 18 13 26


Z - 81 - 117 -9 x1 - 3 - 13 x2 - 3
2 2

Para Z = 198 0 = 9x - 3 + 13x - 3


2 2
1 2

Para Z = 189 9 = 9x - 3 + 13x - 3


2 2
1 2

Para Z = 162 36 = 9x - 3 + 13x - 3


2 2
1 2
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Soluo Grfica

x2 Max Z 198=54 x1 - 9 x12 + 78 x2 - 13x22


6
Z = 189 Z = 162

4
Soluo no interior do
3 Z = 198 conjunto de solues

2 viveis e no mais na
Soluo fronteira do conjunto
Vivel

2 3 4 x1
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
A soluo tima de um problema de
programao no linear (NLP), diferentemente
de um problema de LP, pode ser qualquer ponto
do conjunto de solues viveis.

Isso torna os problemas de NLP muito mais


complexos, obrigando os algoritmos de soluo
a pesquisar todas as solues viveis.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
O Excel utiliza o algoritmo GRG (generalized reduced gradient)
para chegar soluo para um dado problema.
O algoritmo no garante que a soluo encontrada uma soluo
global.
O trabalho desse algoritmo consiste em, a partir de uma condio
inicial, seguir passo a passo, calculando valores para as variveis
do modelo e checando o comportamento da funo-objetivo.
No momento em que o valor da funo-objetivo inverte de
tendncia, ou seja, deixa de crescer para diminuir (caso de
maximizao) ou deixa de diminuir para comear a crescer (caso
de minimizaes), o Solver assume que encontrou um ponto de
mximo ou de mnimo da funo, que pode ser tanto um extremo
local quanto global.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Excel
No entanto, com este procedimento, o algoritmo no garante que
a soluo encontrada seja a soluo global, pois a princpio no
h certeza se aquela funo analisada no ir inverter o seu
comportamento novamente.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
Uma maneira prtica para tentar minorar o problema de
mximos e mnimos locais comear a otimizao de
diversos pontos iniciais, gerados aleatoriamente.
Se todas as otimizaes gerarem o mesmo resultado, voc
pode ter maior confiana, no a certeza, de ter atingido
um ponto global.
Caso contrrio, deveremos supor a existncia de diversos
extremos locais (relativos) e assumir o melhor valor
encontrado.
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Programao No Linear
PROGRAMAO QUADRTICA
Os problemas que forem classificados como de Programao
Quadrtica, independentemente de o modelo se tratar de uma
maximizao ou de uma minimizao, tero a sua soluo tima
encontrada pelos algoritmos de resoluo de problemas no
lineares sem dificuldades.

Uma funo quadrtica de uma varivel dada por

Uma funo quadrtica de duas variveis dada por


(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Caso LCL Telefonia Celular S.A.

O Gerente de Projetos da LCL Telefonia Celular S.A. tem que


localizar uma antena de retransmisso para atender a trs
localidades na Baixada Fluminense. Por problemas tcnicos, a
antena no pode estar a mais de 10 km do centro de cada cidade.
Considerando as localizaes relativas abaixo, determine o
melhor posicionamento para a torre.

Localidade X Y
Nova Iguau -5 10
Queimados 2 1
Duque de Caxias 10 5
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Caso LCL Telefonia Celular S.A.

Nova Iguau
(-5,10) Duque de
Caxias
(10,5)
Queimados
X
(2,1)
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Caso LCL Telefonia Celular S.A.

X Coordenada no eixo X da torre de transmisso


Y Coordenada no eixo Y da torre de transmisso
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Caso LCL Telefonia Celular S.A.


Variveis de Deciso
X Coordenada no eixo X da torre de
transmisso
Y Coordenada no eixo Y da torre de
transmisso
Funo-objetivo (Teorema de Pitgoras)
3
Min ( xi - X ) + ( yi - Y ) 2 2

i 1
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Caso LCL Telefonia Celular S.A.

Restries de Distncia

( x1 X ) ( y1 Y ) 10
- 2
+ - 2

( x2 X ) ( y2 Y ) 10
- 2
+ - 2

( x3 X ) ( y3 Y ) 10
- 2
+ - 2
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Caso LCL Transportes Ltda


(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Caso LCL Transportes Ltda


(CCO-727) Otimizao Inteligente de Sistemas Produtivos

Bibliografia
Engineering Optimization - An Introduction with Metaheuristic
Applications, Xin-SheYang, A John Wiley & Sons, p 378, 2010.
Computation Intelligence Paradigms using Matlab, Sumathi S. e
Surekha P., Taylor and Francis Group, p 835, 2010.
Otimizao Combinatria e Metaheursticas: Algoritmos e
Apliacaes, Marco Cezar Goldbarg, Elizabeth Gouva Goldbarg e
Henrique Pacca Loureiro Luna - 1 Edio, Editora Elsevier, 416p,
2015.
Inteligncia Artificial. Stuart J. Russel e Peter Norvig. Ed. Campus,
2004.
Taha, H. A.; Pesquisa Operacional. Pearson Addison Wesley, 8
Edio, 2008.
Sistemas Inteligentes Fundamentos e Aplicaes. Solange Oliveira
Rezende et al, Ed. Manole, 2002
(CCO-727) Otimizao Inteligente de Sistemas Produtivos

FIM

Você também pode gostar