Métodos Numéricos. MEI - Logística e distribuição Programação quadrática sequencial 2004/2005. A. Ismael F. Vaz - Departamento de Produção e Sistemas

Documentos relacionados
Métodos Numéricos. MEI - Logística e distribuição Optimização não linear com restrições de igualdade 2004/2005

Resoluções do pteste(matlab).pdf

Iury Steiner de Oliveira Bezerra

OPTIMIZAÇÃO NÃO LINEAR

Departamento de Matemática da Universidade de Coimbra. Licenciatura em Matemática. e B =

Iury Steiner de Oliveira Bezerra

Optimização. Carlos Balsa. Departamento de Matemática Escola Superior de Tecnologia e Gestão de Bragança

Capítulo 5 - Optimização Não-Linear

)XQGDPHQWRVGHSURJUDPDomRPDWHPiWLFD

Optimização semi-infinita. Opção V. Licenciatura em Matemática Aplicada

II Seminário da Pós-graduação em Engenharia Elétrica

Método de Newton truncado

Métodos Numéricos C. A. Ismael F. Vaz 1. Escola de Engenharia Universidade do Minho Ano lectivo 2007/2008

BCC465 - TÉCNICAS DE MULTI-OBJETIVO. Gladston Juliano Prates Moreira 22 de novembro de 2017

Otimização aplicada à Engenharia. Profa. Maíra Martins da Silva

Bioinformática Avançada e Biologia de Sistemas Optimização

Lista de Exercícios de Métodos Numéricos

Exercícios TP/P. 1 Condições de optimalidade - Restrições de igualdade

Optimização e Algoritmos (2004/2005)

MÉTODOS NEWTON E QUASE-NEWTON PARA OTIMIZAÇÃO IRRESTRITA

Método dos gradientes (ou método de máxima descida)

Métodos para resolver problemas de otimização restrita

Bioinformática Avançada e Biologia de Sistemas Optimização

OPTIMIZAÇÃO DE ESTRUTURAS

SME0300 Cálculo Numérico Aula 6

Método do Lagrangiano aumentado

Resolução de problemas com apenas restrições lineares de igualdade

DEPARTAMENTO DE ENGENHARIA MECÂNICA

Análise Matemática II - 1 o Semestre 2001/ o Exame - 25 de Janeiro de h

Métodos Numéricos C Apresentação da Disciplina

INVESTIGAÇÃO OPERACIONAL. Programação Linear. Exercícios. Cap. IV Modelo Dual

Modelagem Computacional. Parte 8 2

Aula 10 Sistemas Não-lineares e o Método de Newton.

1 Otimização com restrições I: Condições de Primeira Ordem

Métodos Numéricos C. A. Ismael F. Vaz 1. Escola de Engenharia Universidade do Minho Ano lectivo 2007/2008

Parte 1: Exercícios Teóricos

Métodos Numéricos I. A. Ismael F. Vaz. Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho

Marina Andretta. 17 de setembro de Baseado no livro Numerical Optimization, de J. Nocedal e S. J. Wright.

UNIVERSIDADE FEDERAL DO ABC. 1 Existência e unicidade de zeros; Métodos da bissecção e falsa posição

OTIMIZAÇÃO E DESPACHO ECONÔMICO

INSTITUTO SUPERIOR TÉCNICO Mestrado Integrado em Engenharia Física Tecnológica Ano Lectivo: 2007/2008 Semestre: 1 o

Métodos de Pesquisa Operacional

Bioinformática Avançada e Biologia de Sistemas Optimização

Disciplina que estuda métodos analíticos para auxiliar na tomada de decisões.

Instituto Politécnico de Tomar Escola Superior de Tecnologia de Tomar Área Interdepartamental de Matemática

Métodos Numéricos Zeros Posição Falsa e Ponto Fixo. Professor Volmir Eugênio Wilhelm Professora Mariana Kleina

Matemática Computacional - 2 o ano LEMat e MEQ

Controle Ótimo - Aula 8 Equação de Hamilton-Jacobi

Um sistema de n equações não lineares a n incógnitas é toda expressão do tipo: [3 x 1. x 2 ) 3 3 ) 2 7] +2(x 2. 2 log(x1 +x 2

MÉTODOS NUMÉRICOS. ENGENHARIA ELECTRÓNICA INDUSTRIAL e de COMPUTADORES

Notas de Aula de Cálculo Numérico

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu

Matemática Computacional - Exercícios

Exercícios de MATEMÁTICA COMPUTACIONAL. 1 0 Semestre de 2009/2010 Resolução Numérica de Equações Não-Lineares

x exp( t 2 )dt f(x) =

Lista 1 - Cálculo Numérico - Zeros de funções

Resolução do Exame Tipo

SME306 - Métodos Numéricos e Computacionais II Prof. Murilo F. Tomé. (α 1)z + 88 ]

Método de restrições ativas para minimização em caixas

ESTATÍSTICA COMPUTACIONAL

Determinação de raízes de polinômios: Método de Briot-Ruffini-Horner

Resolução de sistemas de equações lineares: Método dos Gradientes Conjugados

exercícios de análise numérica II

MAT Cálculo 2 para Economia 3 a Prova - 28 de novembro de 2016

Capítulo 6 - Equações Não-Lineares

Matemática Computacional - 2 o ano LEMat e MEQ

Grupo I. 1. Seja tal que, onde e é a

Alocação de Unidades via Relaxação Lagrangeana

Determinação de raízes de polinômios: Método de Briot-Ruffini-Horner

UM ALGORITMO DE NEWTON DE PONTO INTERIOR E APLICAÇÕES NA FUNDIÇÃO ELETROMAGNÉTICA DE METAIS. Alfredo Canelas Botta

Desenho Óptimo de Estações de Águas Residuais Através da Modelação de Funções Custo

Testes Formativos de Computação Numérica e Simbólica

MAP Primeiro exercício programa Método de Diferenças Finitas para solução de problemas de contorno de equações diferenciais ordinárias

SME0300 Cálculo Numérico Aula 4

MATEMÁTICA COMPUTACIONAL. Exercícios

Planejamento da Operação de Sistemas Hidrotérmicos. Parte III

f(1) = 6 < 0, f(2) = 1 < 0, f(3) = 16 > 0 x [2, 3].

PLANEJAMENTO DA OPERAÇÃO DE SISTEMAS TERMOELÉTRICOS DE GERAÇÃO. Prof.:Ivo Chaves da Silva Junior.

OPF - Optimal Power Flow

Ana Paula. October 26, 2016

Otimização Multiobjetivo

Processamento de Imagens CPS755

Equações não lineares Universidade de Coimbra Professor João Soares 2008/2009

Raízes de Equações métodos delimitados. qual o problema? equações não lineares/raízes

MÉTODOS NUMÉRICOS. ENGENHARIA e GESTÃO INDUSTRIAL

Cálculo Numérico / Métodos Numéricos. Solução de equações polinomiais Briot-Ruffini-Horner

Solução aproximada de equações de uma variável

EXERCICIOS RESOLVIDOS - INT-POLIN - MMQ - INT-NUMERICA - EDO

1. Converta os seguintes números decimais para sua forma binária: (a) 22 (b) 255 (c) 256 (d) 0.11 (e) (f)

OPTIMIZAÇÃO NÃO LINEAR EM REDES

SISTEMAS LINEARES PROF. EDÉZIO

Resumo. Filtragem Adaptativa. Filtros adaptativos. Tarefas desempenhadas pelos filtros

1 Receita básica. x + cos(x) = y + y 3 x 2 + y 2 = 1. E o escrevemos na forma. x + cos(x) y y. F 1 x F 2. x 1 x 2 x n J F = F n F n F n

2 Métodologia para a Resolução do NEP

MATLAB. Aula 05. Cláudio R. Lucinda FEA-RP/USP. Aula 05

FOLHAS DE PROBLEMAS DE MATEMÁTICA II CURSO DE ERGONOMIA PEDRO FREITAS

Capítulo 4 - Equações Não-Lineares

Polos Olímpicos de Treinamento. Aula 10. Curso de Álgebra - Nível 3. Diferenças finitas e o polinômio interpolador de Lagrange. 1. Diferenças Finitas

Transcrição:

Métodos Numéricos MEI - Logística e distribuição Programação quadrática sequencial 2004/2005

Métodos Numéricos - MEI 1 Motivação Considere-se o seguinte exemplo de um problema de minimização com restrições de igualdade. A função Lagrangeana é min x R 2100(x 2 x 2 1) 2 + (1 x 1 ) 2 x 1 s.a 3 + x 2 + 0.1 = 0 L(x, λ) = 100(x 2 x 2 1) 2 + (1 x 1 ) 2 λ ( x1 ) 3 + x 2 + 0.1

Métodos Numéricos - MEI 2 Condição de optimalidade de 1 a ordem Para calcular os pontos KT resolver-se o seguinte sistema (não linear) x1 L(x, λ) = 0 x2 L(x, λ) = 0 c(x) = 0 400x 1 (x 2 x 2 1) 2(1 x 1 ) λ 3 = 0 200(x 2 x 2 1) λ = 0 x 1 3 + x 2 + 0.1 = 0 No entanto quase sempre o sistema não linear é de difícil resolução. Neste caso tem de se calcular os zeros de uma função cúbica. Após determinar os pontos KT ainda é necessário classificá-los.

Métodos Numéricos - MEI 3 Formulação geral min x R nf(x) s.a c(x) = 0 em que f(x) : R n R e c(x) : R n R m. n é o número de variáveis, m é o número de restrições de igualdade.

Métodos Numéricos - MEI 4 Função Lagrangeana L(x, λ, π) = f(x) λ T c(x) em que λ são os vectores dos multiplicadores de Lagrange associados às restrições de igualdade.

Métodos Numéricos - MEI 5 Equação iterativa Usando as condições de optimalidade de primeira ordem temos que L(x, λ) = 0 e aplicando o método de Newton (na iteração k) vem que ( ) x 2 L(x k, λ k k ) λ k = L(x k, λ k ) em que x k e λ k constituem a direcção de procura (Newton).

Métodos Numéricos - MEI 6 O sistema linear tem a forma Equação iterativa (cont.) ( 2 xx L( k, λ k ) c(x k ) c(x k ) T 0 ) ( x k λ k ) = ( x L(x k, λ k ) c(x k ) ) O sistema representa as condições de optimalidade de primeira ordem do problema 1 min ( d R n 2 dt 2 xxl(x k, λ k ) ) d + d T ( x L(x k, λ k ) ) s.a ( c(x k ) ) T d + c(x k ) = 0 em que d = x k e os multiplicadores de Lagrange são λ k.

Métodos Numéricos - MEI 7 Globalização O método de Newton determina um zero do sistema não linear L(x, λ) = 0 e tem convergência local. Para obtermos convergência global pode usar-se uma de duas estratégias: Regiões de confiança (trust region - fora do programa). Procura unidimensional (line search). A técnica da procura unidimensional consiste no uso da direcção Newton, mas com um determinado passo.

Métodos Numéricos - MEI 8 Função mérito Uma das possíveis técnicas de globalização consiste no uso de uma função mérito (outra seria, por exemplo, a técnica dos filtros). M(x) = f(x) + ρc(x) T c(x) m = f(x) + ρ c i (x) 2 onde ρ é um parâmetro calculado por forma a que a direcção de procura seja de descida para a função mérito ( M(x k ) T x k < 0). i=1

Métodos Numéricos - MEI 9 Procura unidimensional { x k+1 = x k + α k x k λ k+1 = λ k + λ k α k é o maior valor da sequência {1, 1 2, 1 4, 1 8,... } que satisfaz a condição de Armijo (decréscimo significativo) com µ << 1 (µ = 0.0001). M(x k+1 ) M(x k ) + µα k M(x k ) T x k

Métodos Numéricos - MEI 10 Possíveis critérios de paragem Admissibilidade c(x k+1 ) 2 ɛ 1 Estacionaridade L(x k+1, λ k+1 ) 2 ɛ 2

Métodos Numéricos - MEI 11 Considerações Existem algumas variantes do método PQS, nomeadamente, o problema quadrático é uma aproximação quadrática da função objectivo (e não da Lagrangeana); usam diferentes funções mérito e eventualmente considerando funções mérito que usam os multiplicadores de Lagrange.

Métodos Numéricos - MEI 12 Algoritmo 1. Dadas aproximações iniciais para x e λ. Dado o parâmetro µ e valores para o critério de paragem. 2. Formar e resolver o sistema linear para obter a direcção de procura. 3. Calcular o tamanho do passo por forma a obter uma redução significativa da função mérito. 4. Calcular novas aproximações à solução. 5. Se o critério de paragem for falso então voltar a 2, senão parar.

Métodos Numéricos - MEI 13 10 Exemplo 8 6 4 2 0 2 4 6 8 10 10 8 6 4 2 0 2 4 6 8 10 x L(x, λ) = ( x1 λ 2 3 x 2 + λ ) [x1,x2]=meshgrid(-10:0.5:10,-10:0.5:10); contour(x1,x2,0.5*x1.^2+(x2.^2)/3,100); hold on; plot((-10:0.5:10)-1,-10:0.5:10); plot(0,0, +k ); plot(-0.4,0.6, *k ); 1 min x R 2 2 x2 1 + 1 3 x2 2 s.a x 1 x 2 + 1 = 0 ( ) 1 0 2 xxl(x, λ) = 0 2 3

Métodos Numéricos - MEI 14 Exemplo (direcção) Para x 0 = ( 0.3, 0.5) T e λ 0 = 0.3 temos 1 0 1 0 0 0.6666 1 0.0333 1 1 0 0.2 Resolvendo por EGPP temos x 0 = ( 0.1000, 0.1000) T e λ 0 = 0.1000. O método de PQS encontra a solução exacta de um problema quadrático numa única iteração.

Métodos Numéricos - MEI 15 Exemplo (função mérito - ρ = 10) M(x 0 ) = 1 2 ( 0.3)2 + 1 3 (0.5)2 + 10 ( 0.3 0.5 + 1) 2 = 0.1283 + 0.4 = 0.5283 Para x = x 0 + α x 0, com α = 1 vem M( x) = 1 2 ( 0.4)2 + 1 3 (0.6)2 + 10 ( 0.4 0.6 + 1) 2 = 0.2 + 0 = 0.2 Existindo um decréscimo simples (aumento da função objectivo compensado pela admissibilidade).

Métodos Numéricos - MEI 16 Exemplo (redução significativa - µ = 0.0001) ( ) ( ) ( 0.3) + 20( 0.3 0.5 + 1) M(x 0 3.7 ) = 2 = 3 (0.5) 20( 0.3 0.5 + 1) 3.6667 ( ) ( x 0 ) T M(x 0 3.7 ) = ( 0.1, 0.1) = 0.7367 < 0 (descida) 3.6667 α k = 1 aceite. M( x) M(x k ) + µα k M(x k ) T x k 0.2 0.5283 + 0.0001 1 ( 0.7367) 0.2 0.5282 (decréscimo significativo)

Métodos Numéricos - MEI 17 Exemplo (nova aproximação) A nova aproximação à solução é x 1 1 = x 0 1 + 1 x 0 1 = 0.3 0.1 = 0.4 x 1 2 = x 0 2 + 1 x 0 2 = 0.5 + 0.1 = 0.6 λ 1 = λ 0 + λ 0 = 0.3 0.1 = 0.4 x 1 é a solução do problema.

Métodos Numéricos - MEI 18 Programação quadrática sequencial quasi-newton A dificuldade do cálculo da Hessiana da Lagrangeana (existe software que fornece as derivadas) pode ser aliviado através do uso da versão quasi-newton. A versão quasi-newton calcula uma matriz H, aproximação à Hessiana da Lagrangeana (ou a sua inversa), através do uso de informação de primeira ordem (primeiras derivadas). As primeiras derivadas podem também ser estimadas por diferenças finitas.

Métodos Numéricos - MEI 19 MATLAB A função MATLAB para resolver problemas de minimização com restrições é a fmincon. A formulação do problema é min x R nf(x) s.a c(x) 0 c eq (x) = 0 Ax b A eq x = b eq lb x ub

Métodos Numéricos - MEI 20 Sintaxe fmincon [x,fval,exitflag,output,lambda,grad,hessian] = fmincon(fun,x0,a,b,aeq,beq,lb,ub,nonlcon,options,p1,p2,...) x - Solução do problema. fval - Valor da função objectivo na solução. exitflag - Condição final (>0 convergiu, =0 número máximo de iterações atingido, <0 não convergiu). output - Informação acerca do algoritmo (número de iterações, número de cálculo da função objectivo, etc). lambda - Multiplicadores de Lagrange (restrições lineares, não lineares e de limites simples). grad - Gradiente da função objectivo na solução. hessian - Hessiana da função objectivo na solução.

Métodos Numéricos - MEI 21 fun - Função objectivo (ficheiro.m ou inline). x0 - Aproximação inicial. A - Matriz dos coeficientes das restrições lineares de desigualdades. b - Vector dos termos independentes das restrições lineares de desigualdade. Aeq - Matriz dos coeficientes das restrições lineares de igualdades. beq - Vector dos termos independentes das restrições lineares de igualdade. lb - Vector dos limites simples inferiores. ub - Vector dos limites simples superiores. nonlcon - Função que calcula as restrições não lineares de igualdade e desigualdade. options - Opções para o algoritmo. P.. - Argumentos extra (opcionais) para passar às funções (objectivo e das restrições não lineares).

Métodos Numéricos - MEI 22 Um exemplo com derivadas Considere-se o seguinte problema 1 min x R 2 2 ( ) (x 1 1) 2 + x 2 2 s.a x 1 + 1 4 x2 2 = 0 x 2 1 + 5x 2 0 x 1 + x 2 5 = 0 x 1 0 x 2 4

Métodos Numéricos - MEI 23 function [f,g,h]=myfun(x) f=0.5*((x(1)-1)^2+x(2)^2); Função objectivo - myfun.m if nargout > 1 % Devolver o gradiente g(1)=x(1)-1; g(2)=x(2); end if nargout > 2 % Devolver Hessiana h(1,1)=1; h(1,2)=0; h(2,1)=0; h(2,2)=1; end

Métodos Numéricos - MEI 24 function [c,ceq,gc,gceq]=mycon(x) % Apenas restrições não lineares Restrições - mycon.m c(1)=x(1)^2-5*x(2); % restrição de desigualdade <= 0 ceq(1)=-x(1)+0.25*x(2)^2; % restrição de igualdade if nargout > 2 GC(1,1)=2*x(1); % <= 0 GC(2,1)=-5; end GCeq(1,1)=-1; GCeq(2,1)=0.5*x(2);

Métodos Numéricos - MEI 25 Resolução com derivadas >> opt=optimset( GradObj, on, Jacobian, on ); >> [x,f,e,o,l,g,h]=fmincon( myfun,[1.5-1.2],[],[],[1 1],[5],... [0 -Inf],[Inf 4], mycon,opt); Warning: Large-scale (trust region) method does not currently solve this type of problem, switching to medium-scale (line search). > In C:\MATLAB6p1\toolbox\optim\fmincon.m at line 213 Optimization terminated successfully: Search direction less than 2*options.TolX and maximum constraint violation is less than options.tolcon Active Constraints: 1 2

Métodos Numéricos - MEI 26 >> x x = 2.1010 2.8990 >> f f = 4.8082 >> e e = 1 >> o o = iterations: 5 funccount: 23 stepsize: 1 algorithm: medium-scale: SQP, Quasi-Newton, line-search firstorderopt: [] cgiterations: [] >> l l = lower: [2x1 double] upper: [2x1 double] eqlin: 1.8350 eqnonlin: 0.7340 ineqlin: [0x1 double] ineqnonlin: 0 >> g g = 1.1010 2.8990 >> h h = 0.6152-0.3849-0.3849 0.2479

Métodos Numéricos - MEI 27 Resolução sem derivadas >> opt=optimset( GradObj, off, Jacobian, off ); >> [x,f,e,o,l,g,h]=fmincon( myfun,[1.5-1.2],[],[],[1 1],[5],... [0 -Inf],[Inf 4], mycon,opt); Warning: Large-scale (trust region) method does not currently solve this type of problem, switching to medium-scale (line search). > In C:\MATLAB6p1\toolbox\optim\fmincon.m at line 213 Optimization terminated successfully: Search direction less than 2*options.TolX and maximum constraint violation is less than options.tolcon Active Constraints: 1 2

Métodos Numéricos - MEI 28 >> x x = 2.1010 2.8990 >> f f = 4.8082 >> e e = 1 >> o o = iterations: 5 funccount: 23 stepsize: 1 algorithm: medium-scale: SQP, Quasi-Newton, line-search firstorderopt: [] cgiterations: [] >> l l = lower: [2x1 double] upper: [2x1 double] eqlin: 1.8350 eqnonlin: 0.7340 ineqlin: [0x1 double] ineqnonlin: 0 >> g g = 1.1010 2.8990 >> h h = 0.6152-0.3851-0.3851 0.2482

Métodos Numéricos - MEI 29 Instalação do solver. Excel

Métodos Numéricos - MEI 30 Introdução do problema

Métodos Numéricos - MEI 31 Adicionar restrições

Métodos Numéricos - MEI 32 Opções

Métodos Numéricos - MEI 33 Resolução do problema

Métodos Numéricos - MEI 34 Relatório com resposta

Métodos Numéricos - MEI 35 Relatório com sensibilidade

Métodos Numéricos - MEI 36 Relatório com limites