Escolar Documentos
Profissional Documentos
Cultura Documentos
Programação
por Metas
Oliveira
Pires
2 Motivação
Oliveira
Pires
1
3 Introdução
Programação por metas é o mais conhecido método de
programação multiobjectivo.
Consiste em estabelecer metas, uma para cada objectivo, e
tentar satisfazer as mesmas.
Pressupõe capacidade do decisor em estabelecer um valor
numérico para cada objectivo.
As metas podem, ou não, de acordo com a sua importância,
serem ordenadas em prioridades ou níveis. Em ambos os casos
podem ser associados ponderadores (penalidades) de modo a
facilitar a tomada de decisão.
Na programação por metas, o objectivo é o de minimização dos
desvios em relação às metas estabelecidas.
O conceito de solução óptima dá lugar ao de melhor solução de
compromisso.
Programação
por Metas
Esta solução pode alterar-se mediante a alteração das prioridades
e/ou penalidades.
Oliveira
Pires
Oliveira
Pires
2
5 Definições e conceitos (II)
Exemplo:
Z2
z1 (x) G1 G2
z2 (x) G2 D
C
Programação
por Metas
Oliveira
Pires
A B G1 Z1
6 Modelação
s.a. x S
Fazendo
Não linear (não é um problema de PL) zk (x) d k d k GK
d k ,d k 0
d k d k
p
min
k 1
s.a. x S
Programação
por Metas
zk (x) d k d k Gk k 1,..., p d k variável de desvio por defeito
Oliveira d ,d 0
k k k 1,..., p d k variável de desvio por excesso
Pires
3
7 Modelos de Metas
Metas hierarquizadas
Decisor estabelece a ordem de importância
Existem níveis de prioridade
Programação
por Metas
Oliveira
Pires
Formulação
w d wk d k
p
min k k
k 1
s.a. x S
zk (x) d k d k Gk k 1,..., p
d ,d 0
k k k 1,..., p
4
9 Metas não hierarquizadas (II)
a) c)
wk 0 zk Gk wk 0 zk Gk
wk wk
Gk zk Gk zk
zk Gk zk Gkmin ,Gkmax
c) d)
wk wk
Gk zk Gkmin Gkmax zk
Programação
por Metas
Oliveira
Pires
5
11 Metas não hierarquizadas (IV)
Programação
por Metas
Oliveira
Pires
Programação
por Metas
Oliveira
Pires
6
13 Metas Hierarquizadas (II)
Tem-se então
1 1 P2 d 2 P3 (d 3 d 3 )
min Pd P1 P2 P3
s.a. x S
z1 (x) d1 d1 G1
z2 (x) d 2 d 2 G2
z3 (x) d3 d3 G3
d k ,d k 0 k 1, 2 ,3
Oliveira
Pires
min d1 ; d 2 ; d3 d3
Resolução sequencial
Resolver o problema
1) min d1
s.a. x S
z1 (x) d1 d1 G1
d1 ,d1 0
*
Sendo (d1 ) o valor óptimo de 1) resolver o problema
2) min d 2
s.a. x S
z2 (x) d 2 d 2 G2
Programação d 2 ,d 2 0
por Metas
Oliveira
z1 (x) G1 (d1 )*
Pires
7
15 Metas Hierarquizadas (IV)
*
Sendo (d 2 ) o valor óptimo de 2) resolver o problema
3) min d 3 d3
s.a. x S
z3 (x) d3 d3 G3
d3 ,d3 0
z1 (x) G1 (d1 )*
z2 (x) G2 (d 2 )*
Oliveira
Pires
■ Resolução gráfica
□ Apenas possível para problemas com um máximo de três
variáveis.
□ Particularmente simples para o caso de duas variáveis
(complicado para o caso de três)
□ Facilita a compreensão da resolução de problemas de maior
dimensão.
8
17 Metas Hierarquizadas (VI)
■ Resolução gráfica (algoritmo)
0. Dados: Problema de PM com uma meta por nível de prioridade;
Duas variáveis de decisão;
Metas por ordem decrescente de níveis de prioridade;
1. Inicialização
Identificar S0 ; k 1;
2. Iteração k
Determinar S k Sk 1 , i.e., o conjunto de pontos em Sk-1 que minimizam os
desvios associados à meta de prioridade k.
3. Critério de paragem
Se Sk é um conjunto singular, Sk é a melhor solução de compromisso;
Calcular os desvios de todas as metas. STOP.
C.c., k k + 1;
Se k ≤ K voltar a 2;
Programação
por Metas C.c., Sk representa as melhores soluções de compromisso;
Oliveira Calcular os desvios de todas as metas. STOP.
Pires
s.a. 6x1 5 x2 60
2x1 x2 d1 d1 10
x1 2 x2 d 2 d 2 8
3x1 2 x2 d3 d3 12
x1 ,x2 0
d k ,d k 0 k 1,...,3
6 x1 5 x2 60
Programação
1. Identificar S0: S0 ; k = 1;
por Metas
x1 ,x2 0
Oliveira
Pires
9
19 Metas Hierarquizadas (VIII)
min z1 d1
x2
s.a. x S0
C
2x1 x2 d1 d1 10 12
d1 ,d1 0 10
F
S0 ABC A D E B
0 5 8 10 x1
min d1 d1
d1
Conjunto solução: S1 DBCF S0
z1* d1 0
*
Programação
por Metas
Oliveira
Pires 3. S1 não é singular ; k = 2;
x1 2 x2 d 2 d 2 8 10
F
d1 ,d1 0
G
2 H
A D E B
0 5 8 10 x1
d 2
S1 DBCF d
d
1
d1 2
Oliveira
Pires 3. S2 não é singular ; k = 3;
10
21 Metas Hierarquizadas (X)
min z3 d3
s.a. x EH x2
H
S1 DBCF
2
A D E B
min d3 0 4 5 8 10 x1
d 2
d 1
Conjunto solução: S3 H S2 d 1
d
2
z*3 d3 4
*
Programação
por Metas
3. S3 é singular. Stop.
Oliveira
Pires
1ª meta: d1 0
d1 0
2ª meta: d 2 0
d 2 0
3ª meta: d3 0
d3 4 meta não é atingida
Programação
por Metas
Oliveira
Pires
11