43
1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

Embed Size (px)

Citation preview

Page 1: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

1

DAS-6651: Otimização e Suas Subáreas

DAS-6651 - MSPO

Eduardo Camponogara

Page 2: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

2

0. Agenda

Conceitos Programação Linear Programação Linear Inteira Programação Quadrática Mínimos Quadrados Não-Linear Equações Não-Lineares Otimização Não-Linear Irrestrita Otimização Não-Linear com Limites Sup/Inf Otimização Não-Linear Restrita Programação Semi-Definida

Page 3: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

3

1. Conceitos

Otimização:

– Área da matemática aplicada que se preocupa em calcular e computar valores ótimos para variáveis de decisão que induzam o desempenho ótimo, ao mesmo tempo que satisfazem restrições, de um modelo matemático.

Page 4: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

4

1. Elementos de um Problema de Otimização

Variáveis de Decisão: – parâmetros cujos valores definem uma solução para o

problema. – Em um sistema de produção, esses parâmetros podem definir

as quantidades produzidas e os recursos utilizados.

Page 5: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

5

1. Elementos de um Problema de Otimização

Variáveis de Decisão: – parâmetros cujos valores definem uma solução para o

problema. – Em um sistema de produção, esses parâmetros podem definir

as quantidades produzidas e os recursos utilizados.

Função Objetivo: – uma função das variáveis de decisão a ser minimizada ou

maximizada. – No sistema de manufatura, podemos estar interessados em

minimizar custos.

1. Elementos de um Problema de Otimização

Page 6: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

6

1. Elementos de um Problema de Otimização

Variáveis de Decisão: – parâmetros cujos valores definem uma solução para o

problema. Em um sistema de produção, esses parâmetros podem definir as quantidades produzidas e os recursos utilizados.

Função Objetivo: – uma função das variáveis de decisão a ser minimizada ou

maximizada. No sistema de manufatura, podemos estar interessados em minimizar custos.

Restrições: – conjunto de funções que definem o espaço factível de

soluções. No sistema de manufatura, as restrições estabelecem os limites nos recursos utilizados.

Page 7: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

7

1. Elementos de um Problema de Otimização

Minimize f(x) Sujeito a:

g(x) 0

h(x) = 0

x Rn

Onde f: Rn R,

g: Rn Rp

h: Rn Rq

Page 8: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

8

1. Duas Exceções

Problemas sem objetivos– O usuário deseja apenas encontrar um conjunto de

decisões que sejam viáveis.

Encontre x Rn, tal que:g(x) 0

h(x) = 0

Page 9: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

9

1. Duas Exceções

Problemas com múltiplos objetivos– Em problemas reais, não é incomum procurar otimizar mais

do que um objetivo. No problema de manufatura, o usuário pode estar interessado em maximizar lucro, maximizar qualidade e minimizar tempo de produção.

– Usualmente, estes problemas são reduzidos a problemas envolvendo apenas um objetivo (combinando -se múltiplos objetivos em apenas um ou, alternativamente, escolhendo-se um objetivo e introduzindo restrições).

Exemplo:

Minimize f1(x)

Maximize f2(x)

Page 10: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

10

2. Programação Linear

Problema:– Um atleta deseja definir uma dieta, ou seja, tipos e quantidades de

alimentos que atendam as suas necessidades mínimas.– Os alimentos devem ser escolhidos de forma a minimizar o preço

total

Dados:– N alimentos, tais como arroz, feijão, alface, etc. – M tipos de substâncias alimentares, como proteínas, lipídios, etc.– cn o preço unitário do alimento n– amn a quantidade de substância m em cada unidade de alimento n– bm a quantidade mínima de substância m a ser ingerida pelo atleta

Page 11: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

11

2. Programação Linear

Exercício: modele o problema em programação matemática.

Page 12: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

12

2. Programação Linear

Variáveis:xn quantidade de alimento n a ser comprada e ingerida, n=1,…,N

Restrições:a11x1 + a12x2 + … + a1NxN b1

a21x1 + a22x2 + … + a2NxN b2

aM1x1 + aM2x2 + … + aMNxN bM

x1, x2, …, xN 0

Page 13: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

13

2. Programação Linear

Função objetivo:f = c1x1 + c2x2 + … + cNxN

Formulação compacta:PL: Minimize cTx Sujeito a:

Ax bx 0x RN

Page 14: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

14

3. Programação Linear Inteira

Em algumas aplicações, as variáveis de decisão são inteiras. (Número de pessoas contratadas, número de peças produzidas, etc.)

O mundo da programação linear inteira engloba os seguintes problemas

Minimize cTxSujeito à:

Ax bCx = dx 0x Zn

Page 15: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

15

3. Programação Linear Inteira

Dados do Problema– Há um número m de possíveis locais para instalação de

depósitos.– Há um número n de clientes.– A demanda de aço do cliente i é di e esta deve ser suprida por

precisamente um depósito.– A capacidade de um possível depósito no local j é de uj.

– O custo de transporte do depósito j para o cliente i é e cij.

– O custo de instalação do depósito j é de fj.

Page 16: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

16

3. Programação Linear Inteira

Tarefa– Formule o problema de definir quais depósitos devem ser

instalados de maneira a suprir a demanda e, ao mesmo tempo, minimizar o custo total de instalação e transporte.

Page 17: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

17

3. Programação Linear Inteira

Variáveisxij = 1 se o cliente i é

atendido pelo depósito j

xij = 0 caso contrário

yj = 1 se o depósito j é instalado

yj = 0 caso contrário

Formulação n m m

Minimize cijxij + fjyj

i=1 j =1 j =1

Sujeito a: n

dixij ujyj para j =1, ..., m i=1

m

xij 1 para i =1, ..., nj=1

xij {0, 1} i, j

yj {0, 1} j

Page 18: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

18

4. Programação Quadrática

Representação

Minimize xTQx + cTx

Sujeito a: Ax b Cx = d

onde Q é uma matriz simétrica.

Aplicações– Várias aplicações em identificação de parâmetros para modelos de

processos, modelos estruturais e sistemas de controle, e em algoritmos como SQP.

Page 19: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

19

4. Programação Quadrática

A dificuldade de se resolver tais problemas depende da natureza da matriz Q.

Quais características de Q tornam o problema difícil?

Page 20: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

20

4. Programação Quadrática

A dificuldade de se resolver tais problemas depende da natureza da matriz Q.

– Se Q 0 (positiva semi-definida) ou Q > 0 (positiva definida) o problema é relativamente fácil de se resolver (ou seja, encontrar a solução ótima global).

– Se Q é indefinida (ou negativa semi-definida, definida) então o problema é muito difícil.

Page 21: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

21

5. Mínimos Quadrados Não-Linear

O problema dos mínimos quadrados não-linear consiste de um problema da seguinte forma:

P: Minimize 1/2||f(x)||2

x Rn

Onde a) |||| corresponde à norma Euclidiana e

b) f(x) : Rn Rm é uma função qualquer, contínua e diferenciável.

Tais problemas têm aplicações no casamento de modelos com dados experimentais, tipicamente encontrados em estudos econômicos, aprendizagem automática e engenharia.

Page 22: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

22

5. Mínimos Quadrados (Linear)

Seja w(h) um modelo que descreve a relação entre a altura e o peso médio das pessoas do sexo feminino.

Suponha que o modelo escolhido é da forma

w(h) = x3h3 + x2h2 + x1h + x0,

um polinômio de ordem 3 representando o peso como uma função da altura.

Page 23: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

23

5. Mínimos Quadrados (Linear)

Os seguintes dados amostrais são fornecidos.

Exemplo (i) Altura (hi) Peso (wi)-------------------------------------------------------------1 1.5 552 1.54 533 1.58 564 1.60 525 1.65 586 1.67 547 1.70 648 1.72 709 1.72 7110 1.75 7511 1.80 8212 (n) 1.81 81---------------------------------------------------------------

Page 24: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

24

5. Mínimos Quadrados (Linear)

Problema– Encontre os parâmetros x3, x2, x1 e x0 que

minimizam a função, consistindo da soma dos quadrados dos erros de predição.

n

Minimize 1/2 || w(hi) wi ||2

x1,x2,x3,x4 i = 1

Page 25: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

25

5. Mínimos Quadrados (Linear)

Solução Ótimax1 = 100.0000

x2 = -33.1098

x3 = -62.9920

x4 = 41.7403

h (altura, m)

w (peso, kg)

predição

Page 26: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

26

6. Equações Não-Lineares

Aplicações: sistemas de equações não-lineares aparecem em problemas de otimização, mas também em equações diferenciais e suas formas discretizadas, jogos dinâmicos e processos iterativos.

Equações Não-Lineares– Seja f(x) : Rn

Rm uma função contínua e diferenciável– Problema: encontre x* tal que f(x*) = 0

Observação: alguns algoritmos, transformam este problema em um problema de otimização irrestrita:

Minimize ||f(x)|| x Rn

para alguma norma ||||.

Page 27: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

27

6. Equações Não-Lineares

Aplicação em sistemas de controle: dado um sistema de equações diferenciais, encontre um ponto de equilíbrio.

Exemplo

dx1/dt = x1 1

dx2/dt = 2x1x2 2sqrt(2)x1 + 2x2 2sqrt(2) + sin(x2 sqrt(2))

dx3/dt = 2x2 2sqrt(2)

x = [x1, x2, x3]dx/dt = f(x) = 0

x* = [1, sqrt(2), x3]

Page 28: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

28

7. Otimização Não-Linear Irrestrita

Otimização irrestrita constitui um bloco fundamental no desenvolvimento de software. Algoritmos para solução de problemas de otimização restrita fazem uso de otimização irrestrita.

Problema de Otimização IrrestritaMinimize f(x)

x Rn

Tipicamente procura-se um ótimo local x*, ou seja, x* tal que f(x*) f(x) para todo x B(x*, ) = {x : ||x x*|| } e > 0. Otimização global se preocupa em encontrar um vetor x* cujo valor f(x*) f(x) para todo x.

Page 29: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

29

7. Otimização Não-Linear Irrestrita

Problema Exemplo:– Seja z = (x, y) a coordenada onde será instalada

uma central telefônica.– Suponha que as chamadas são recebidas de um

conjunto S = {z1=(x1,y1), ..., zm= (xm,ym)} de localidades com probabilidade uniforme.

– Seja Z a variável randômica associada com o local das chamadas.

Page 30: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

30

7. Otimização Não-Linear Irrestrita

Tarefa– Qual deve ser a localização z da central telefônica para que

E[(Z z)2] seja minimizado? (E[f(Z)] é o valor esperado da função f(Z) da variável randômica Z.)

Page 31: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

31

7. Otimização Não-Linear Irrestrita

Solução m

E[(Z z)2] = (zk z)2.Probabilidade{Z = zk}

k = 1

m

= [(xk,yk) (x,y)]2 / m

k = 1

Page 32: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

32

8. Otimização Não-Linear com Limites Sup/Inf

Formulação: problemas da seguinte classe:Minimize f(x)

l x u

x Rn f é uma função contínua, diferenciável

Aplicações: estes modelos têm aplicações em engenharia e na identificação de modelos físicos, onde as grandezas (parâmetros) são sujeitos a limites.

Algoritmos: alguns algoritmos de otimização restrita resolvem sequências de problemas com limites superiores e inferiores.

Page 33: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

33

9. Otimização Não-Linear Restrita

Modelo: os problemas de otimização não-linear restrita consistem em minimizar uma função não-linear (contínua e diferenciável) sujeita a restrições não-lineares (contínuas e diferenciáveis).

Minimize f(x)Sujeito à:

g(x) 0h(x) = 0

Onde f(x) : Rn Rm, g(x) : Rn

Rp e h(x) : Rn

Rq são funções contínuas

e diferenciáveis

Observação: modelos de otimização não-linear restritos são os mais gerais no domínio da otimização contínua.

Page 34: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

34

9. Otimização Não-Linear Restrita

Problema Exemplo– Desejamos instalar uma estação de bombeiros de forma que

a mesma esteja dentro de um raio r (km) de um conjunto S = {(x1,y1), ..., (xp,yp)} de prédios nas proximidades.

– Além disso, desejamos localizá-la o mais afastado possível de outras estações de bombeiros T = {(x1,y1), ..., (xq,yq)}.

Tarefa Formule este problema em linguagem de otimização.

Page 35: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

35

9. Otimização Não-Linear Restrita

Tarefa Formule este problema em linguagem de otimização.

Page 36: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

36

9. Otimização Não-Linear Restrita

Formulação

Maximize dSujeito a:

||(x,y) (xj,yj)|| r para j = 1, ..., p

||(x,y) (xj,yj)|| d para j = 1, ..., q

Observações

d Min{ ||(x,y) (xj,yj)|| : j = 1, ..., q }

r Max{ ||(x,y) (xj,yj)|| : j = 1, ..., p }

Page 37: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

37

10. Programação Semi-Definida

CaracterizaçãoProblemas com função objetivo linear.

Restrições envolvendo matrizes e suas propriedades (tais como, positiva definida e semi-definida).

DefiniçõesFi(x) = Fi,0 + Fi,1x1 + ... + Fi,nxn

onde Fi,j = Fi,jT

é uma matriz simétrica

Page 38: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

38

10. Programação Semi-Definida

Classe de Problemas

Minimize cTx

Sujeito a: Fi(x) 0 para i = 1, ..., m

(a matriz Fi(x) deve ser positiva semi-definida,

linear matrix inequality).

Page 39: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

39

10. Programação Semi-Definida

Exemplo:– Considere o seguinte sistema dinâmico

dx/dt = Ax

– Uma condição suficiente para que o sistema convirja para x* = 0, para qualquer estado inicial x(0), quanto t é a existência de um função V(x) com as seguintes propriedades:

– V(x) é positiva definida, ou seja, para todo x 0 tem-se V(x) > 0 e V(0) = 0

– dV(x)/dt < 0 para x 0.

Problema: como encontrar tal função?

Page 40: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

40

10. Programação Semi-Definida

Seja V(x) = xTPx para P > 0. Neste caso V(x) satisfaz a condição de ser positiva definida.

Como fazer para satisfazer a segunda condição?

dV/dt = d(xTPx)/dt =

= (dx/dt)TPx + xTP(dx/dt) =

= (xTAT)Px + xTP(Ax) =

= xT( ATP + PA)x

Então a condição dV/dt < 0 é equivalente a ATP + PA < 0.

Page 41: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

41

10. Programação Semi-Definida

Formulação do problema

Minimize cTx

Sujeito a:

P(x) > 0

ATP(x) + P(x)A < 0,

onde P(x) gera o espaço de matrizes simétricas

Page 42: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

42

11. Referências

Optimization Tree

– http://www-fp.mcs.anl.gov/otc/Guide/OptWeb/

OR Notes

– http://www.ms.ic.ac.uk/jeb/or/contents.html

Page 43: 1 DAS-6651: Otimização e Suas Subáreas DAS-6651 - MSPO Eduardo Camponogara

43

12. FIM

Obrigado!!!