Bioinformática Avançada e Biologia de Sistemas Optimização
|
|
- Luiz Guilherme Thomaz Rijo Maranhão
- 7 Há anos
- Visualizações:
Transcrição
1 Bioinformática Avançada e Biologia de Sistemas Optimização A. Ismael F. Vaz Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.pt Mestrado em Bioinformática Ano lectivo 2007/2008 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 1 / 190
2 Conteúdo 1 Introdução 2 MATLAB 3 Optimização 4 Optimização não linear sem restrições 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o MATLAB 8 Optimização não linear com restrições de igualdade 9 Optimização não linear com restrições de desigualdade 10 Optimização com restrições com o MATLAB A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 2 / 190
3 Introdução Conteúdo 1 Introdução 2 MATLAB 3 Optimização 4 Optimização não linear sem restrições 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o MATLAB 8 Optimização não linear com restrições de igualdade 9 Optimização não linear com restrições de desigualdade 10 Optimização com restrições com o MATLAB A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 3 / 190
4 Introdução Apresentação - Docente Aulas teóricas e teórico-práticas A. Ismael F. Vaz - aivaz@dps.uminho.pt Horário de atendimento Marcação por . A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 4 / 190
5 Introdução Apresentação - Disciplina Página da disciplina; Três fichas TPs para resolver ao longo desta parte do módulo (Nota mínima de 8); A classificação final do módulo é: Ficha TP1+Ficha TP2+Ficha TP3 3. A classificação na Unidade Curricular (UC) tem uma fórmula de cálculo própria. É obrigatória a presença em 2/3 das aulas efectivas (1/3 de faltas atenção às justificações/estatutos). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 5 / 190
6 Introdução Material necessário e de apoio Calculadora científica; Folhas das fichas TPs; Papel e caneta; Livro de Computação Numérica; Sebenta de Optimização Não Linear; Software MATLAB + toolbox de Optimização (+ AMPL + Solver); Fichas TPs e acetatos disponíveis na página; A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 6 / 190
7 Introdução Motivação da disciplina Optimização A optimização é uma área da matemática aplicada com inúmeras aplicações no nosso dia a dia. Exemplo de aplicações Poluição do ar (determinação de políticas óptimas), Robótica (determinação de trajectórias óptimas), Processos de fermentação semi-contínua (etanol, cerveja!!), etc... e astrofísica. Engenharia Está presente em todas as áreas da engenharia (sem excepção)... A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 7 / 190
8 Introdução Controlo óptimo - Um exemplo Problema de optimização do processo semi-contínuo de produção de Etanol. O problema de optimização é: (t 0 = 0 e t f = 61.2 dias) max u(t) J(t f ) x 3 (t f )x 4 (t f ) s.a dx 1 = g 1 x 1 u x 1 dt x 4 dx 2 = 10g 1 x 1 + u 150 x 2 dt x 4 dx 3 = g 2 x 1 u x 3 dt x 4 dx 4 = u dt 0 x 4 (t f ) u(t) 12 t [t 0, t f ] com ( ) ( ) x 2 g 1 = 1 + x 3 / x 2 ( ) ( ) 1 x 2 g 2 = 1 + x 3 / x 2 onde x 1, x 2 e x 3 são as concentrações da massa celular, substrato e produto (g/l), e x 4 é o volume (L). As condições iniciais são: x(t 0 ) = (1, 150, 0, 10) T. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 8 / 190
9 Introdução Abordagem para a resolução Grande exigência em termos numéricos; Grande exigência em termos de programação; Solução da equação diferencial com o CVODE (software em C); Problemas codificados em AMPL (linguagem de modelação); Algoritmo para optimização sem derivadas; A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 9 / 190
10 Introdução Programa detalhado Aula Matéria 1 Grafos (Cláudio Alves) 2 Optimização Combinatória (Cláudio Alves) 3 Ficha de avaliação. Introdução ao MATLAB. Definição de vectores e matrizes. Codificação de funções matemáticas e operadores. Uso de ficheiros M (M-Files). 4 Introdução à optimização não linear (sem restrições). Definições e condições de optimalidade. 5 Método de Newton e quasi-newton. Modelação de casos em MA- TLAB (função fminsearch e fminunc). 6 Ficha de Avaliação. Introdução à optimização não linear com restrições. Tipos de problemas e suas características. Condições de optimalidade. Tratamento de restrições lineares e não lineares. 7 Modelação de casos e uso de MATLAB (função fmincon). 8 Modelação de casos e uso de MATLAB (função fmincon). 9 Revisões. 10 Revisões e Ficha de avaliação. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 10 / 190
11 MATLAB Conteúdo 1 Introdução 2 MATLAB 3 Optimização 4 Optimização não linear sem restrições 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o MATLAB 8 Optimização não linear com restrições de igualdade 9 Optimização não linear com restrições de desigualdade 10 Optimização com restrições com o MATLAB A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 11 / 190
12 MATLAB O que é o MATLAB? MATLAB Começou como sendo um programa iterativo para cálculos com matrizes e transformou-se numa linguagem matemática de alto nível. O seu desenvolvimento permite agora, por exemplo, a resolução de equações diferenciais e o desenho de gráficos a duas e três dimensões. Possuindo o MATLAB uma linguagem de programação poder-se-ia dizer que qualquer algoritmo pode ser implementado em MATLAB. O que aprender? Neste caso apenas iremos introduzir os comandos básicos e a criação de scripts necessários aos capítulos seguintes. O MATLAB possui uma toolbox (entre outras) que fornece um conjunto de algoritmos para optimização. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 12 / 190
13 MATLAB Só existe o MATLAB? Ferramentas similares Outros programas similares são o Mathematica e o Maple Mathematica Mais vocacionado para manipulação simbólica, embora o MATLAB também já incorpore algumas destas funcionalidades. Maple Exemplo Resolver a equação diferencial com condições iniciais d 2 y dx 2 (x) 3y(x) = x, y(0) = 1 dy dx (0) = 2 dsolve( diff(y(x),x,x) - 3*y(x) = x, y(0)=1, D(y)(0)=2, y(x) ); A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 13 / 190
14 MATLAB Ambiente MATLAB A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 14 / 190
15 MATLAB Operações básicas Aritméticas >> 2+3*2-1.5*2^2 ans = 2 ans é uma variável built-in que é criada sempre que um resultado não é atribuído. Variáveis built-in constantes >> pi ans = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 15 / 190
16 MATLAB Operações básicas Funções >> a=2*sin(pi)^2+3*exp(1)+sqrt(2)+cosh(2) a = Ajuda >> help acos ACOS Inverse cosine. ACOS(X) is the arccosine of the elements of X. Complex results are obtained if ABS(x) > 1.0 for some element.... See also cos, acosd. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 16 / 190
17 MATLAB Operações básicas Formatos Precisão O MATLAB usa sempre aritmética com precisão de 15 algarismos significativos, no entanto, por defeito apenas mostra 4. >> format long >> a a = >> format short >> a a = >> format short e >> a a = e+001 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 17 / 190
18 MATLAB Operações básicas com escalares O ; Os comandos que terminam com o ; não são impressos no ecrã. >> a=log(2)+log10(2)+log2(2); >> a a = >> a=log(2)+log10(2)+log2(2) a = Útil quando se pretende efectuar vários comandos seguidos (scripts) e não se pretende ver determinados resultados. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 18 / 190
19 MATLAB Operações básicas com vectores e matrizes Vectores linha >> a=[1 2 3] a = >> a=[1,2,3] a = O(A) transposto(a) >> a=[1;2;3] a = Vectores coluna >> a=[1;2;3] a = O(A) transposto(a) >> a=[1,2,3] a = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 19 / 190
20 MATLAB Operações básicas com vectores e matrizes Operações com vectores Funções >> a a = >> b=sin(a) b = Operações com vectores >> a+b ans = >> a^2??? Error using ==> mpower Matrix must be square. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 20 / 190
21 MATLAB Operações básicas com vectores e matrizes Operações elemento a elemento >> a.^2 ans = >> (a+b).^2 ans = >> a.*b ans = Operações com vectores >> 2*a+b.^2 ans = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 21 / 190
22 MATLAB Operações básicas com vectores e matrizes Operações elemento a elemento >> a*b??? Error using ==> mtimes Inner matrix dimensions must agree. >> a*b ans = Operações com vectores >> a *b ans = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 22 / 190
23 MATLAB Operações básicas com vectores e matrizes Matriz >> A=[ 1 2 3; 4 5 6] A = Matriz 2 3. O MATLAB é case sensitive, i.e., A é diferente de a. Matriz transposta >> A=[ 1 2 3; 4 5 6] A = Matriz 3 2. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 23 / 190
24 MATLAB Operações básicas com vectores e matrizes Definição >> A+B ans = >> A +B ans = >> (A+B) ans = Soma >> A=[2 3; 3 4; 4 5] A = >> B=[1 2; 2 3; 3 4] B = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 24 / 190
25 MATLAB Operações básicas com vectores e matrizes Produto >> A*B??? Error using ==> mtimes Inner matrix dimensions... >> A*B ans = O número de colunas da primeira matriz tem de ser igual ao número de linhas da segunda matriz. Produto elemento a elemento >> A.*B ans = >> A^2??? Error using ==> mpower Matrix must be square. >> A.^2 ans = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 25 / 190
26 MATLAB Sistemas lineares Um sistema linear pode ser representado na forma de matricial como Ax = b, em que A é uma matriz (dos coeficientes), x é a solução do sistemas e b é um vector (dos termos independentes). Sistema x 1 +2x 2 +3x 3 = 1 4x 1 +5x 2 +6x 3 = 2 7x 1 +8x 2 +9x 3 = 3 i.e. A = x = x 1 x 2 x 3 x 1 x 2 x 3 = e b = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 26 / 190
27 MATLAB Resolução de Sistemas lineares O exemplo anterior >> A=[1 2 3; 4 5 6; 7 8 9]; b=[1 2 3] ; >> x=a\b Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = e-018. x = >> A*x-b ans = 1.0e-015 * A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 27 / 190
28 MATLAB Resolução de Sistemas lineares Curiosidades >> det(a) ans = 0 >> [L,U]=lu(A) L = U = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 28 / 190
29 MATLAB Resolução de Sistemas lineares Não fazer Porquê? >> x=inv(a)*b Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = e-018. x = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 29 / 190
30 MATLAB Acesso a elementos de vectores e matrizes Acesso a vectores >> b=sin(b); >> b(1) ans = >> b(2:3) ans = >> b(:) ans = Acesso a matrizes >> A(2,2) ans = 5 >> A(2,:) ans = >> A(:,1) ans = >> A(1:2,2:3) ans = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 30 / 190
31 MATLAB Matrizes e vectores especiais Zeros e uns >> zeros(2,3) ans = >> ones(2,1) ans = 1 1 >> t=1:1:3 t = >> t=1.1:0.1:1.2 t = Identidade >> eye(3) ans = >> rand(3,2) ans = >> randn(2,2) ans = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 31 / 190
32 MATLAB Modificação de elementos em vectores e matrizes Atribuições >> A=ones(3,3); >> A(1:2,1)=3 A = >> A(3,1:2:3)=4 A = Troca de valores >> A([1 2],1)=2*A([1 2],1) A = >> A([1 3],1)=A([3 1],1) A = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 32 / 190
33 MATLAB find >> v=[ ] v = >> i=find(v>0.12) i = 2 4 >> a=v(i) a = >> i=find(v==0.1) i = 1 >> i=find(v~=0.1) i = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 33 / 190 Operadores lógicos e o find
34 MATLAB Operadores lógicos e o find Operadores lógicos Símbolo Representa Símbolo Representa > Maior que >= Maior ou igual que < Menor que <= Menor ou igual que = Diferente de == Igual a Negação & E Ou A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 34 / 190
35 MATLAB Funções básicas Funções Função max min sum mean stdev Descrição Elemento máximo de um vector Elemento mínimo de um vector Soma de todos os elementos Média aritmética Desvio padrão A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 35 / 190
36 MATLAB Mensagens e display de variáveis Ficheiros >> x = 0:.1:1; y = [x; exp(x)]; >> fid = fopen( exp.txt, w ) fid = 3 >> fprintf(fid, %6.2f %12.8f\n,y); >> fclose(fid); Conteúdo de exp.txt A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 36 / 190
37 MATLAB Mensagens e display de variáveis Terminal >> x=1;y=2; >> fprintf( Duas variáveis: %5.1f %6.2f\n,x,y); Duas variáveis: >> x=[1 2];y=[3 4]; >> fprintf( Dois vectores: %5.1f %6.2f\n,x,y); Dois vectores: Dois vectores: Terminal >> x x = 1 2 >> disp(x) 1 2 Terminal >> x=1.23; >> s=sprintf( Uma string %4.2f,x) s = Uma string 1.23 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 37 / 190
38 MATLAB Scripts Definição Um script trata-se da execução de uma série de comandos. Os scripts são guardados em ficheiros de extensão.m e por isso designámos por M-Files (ficheiros M). Ficheiro bioinf.m x = 0:.1:1; y = exp(x); fprintf( %4.2f %8.4f\n,x,y); Execução >> bioinf A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 38 / 190
39 MATLAB Desenho de gráficos 2D Plot >> x=0:0.05:4*pi; >> plot(x,sin(x).^2+2*exp(x/(4*pi))); >> xlabel( x ); >> ylabel( sin^2(x)+2e^{x/(4\pi)} ); >> title( O meu primeiro plot ); >> axis([0 4*pi 1 7]); A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 39 / 190
40 MATLAB Desenho de gráficos 2D 7 O meu primeiro plot 6 5 sin 2 (x)+2e x/(4π) x A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 40 / 190
41 MATLAB Desenho de gráficos 2D Sobreposição >> x=0:0.05:4*pi; >> plot(x,sin(x).^2+2*exp(x/(4*pi))); >> hold on; >> plot(x,-sin(x).^2+2*exp(x/(4*pi))); >> hold off; >> x=0:0.05:4*pi; >> y1=sin(x).^2+2*exp(x/(4*pi)); >> y2=-sin(x).^2+2*exp(x/(4*pi)); >> plot(x,y1,x,y2); Dois gráficos quase idênticos (atenção às cores). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 41 / 190
42 MATLAB Desenho de gráficos 2D A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 42 / 190
43 MATLAB Desenho de gráficos 2D Usando marcas e tipos de linhas >> x=0:0.05:4*pi; >> y=0:1:4*pi; >> plot(x,sin(x).^2+2*exp(x/(4*pi)), --r,1,3, ok,... 3,4, *g,y,-sin(y).^2+2*exp(y/(4*pi)), +k ); A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 43 / 190
44 MATLAB Desenho de gráficos 2D A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 44 / 190
45 MATLAB Desenho de gráficos 3D Plot3 >> t = 0:pi/50:10*pi; >> plot3(sin(t),cos(t),t); >> [x,y]=meshgrid(0:0.1:4*pi,0:0.1:pi); >> plot3(x,y,sin(x).*cos(y)); >> surf(x,y,sin(x).*cos(y)); A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 45 / 190
46 MATLAB Desenho de gráficos 3D A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 46 / 190
47 MATLAB Desenho de gráficos 3D A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 47 / 190
48 MATLAB Desenho de gráficos 3D A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 48 / 190
49 MATLAB Desenho de curvas de nível Contour >> [x,y]=meshgrid(0:0.1:4*pi,0:0.1:pi); >> contour(x,y,sin(x).*cos(y)); >> contour(x,y,sin(x).*cos(y),50); A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 49 / 190
50 MATLAB Desenho de curvas de nível A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 50 / 190
51 MATLAB Funções MATLAB As funções em MATLAB são escritas em ficheiros M. O nome do ficheiro deve corresponder ao nome da função Execução >> simples(2) ans = 4 >> a=simples([1 2]) a = 1 4 >> b=simples([1 2; 2 3]) b = simples.m function f = simples(x) % O quadrado de x %.^ para... f=x.^2; Help >> help simples O quadrado de x A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 51 / 190
52 MATLAB Funções MATLAB O if myfun.m function [a, b] = myfun(x,y) % % Argumentos de entrada: % x - O meu primeiro argumento % y - O meu segundo argumento % % Argumentos de saída: % a - O meu primeiro argumento de saída % b - O meu segundo argumento de saída % Isto já não aparece no Help A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 52 / 190
53 MATLAB Funções MATLAB O if myfun.m Cont. % Verificar os argumentos de entrada [d1,d2]=size(x); if d2 ~= 1 error( Só aceito vectores coluna ); else if nargin < 2 y=ones(d1,1); % Valor por defeito para o y else [d3,d4]=size(y); if d4 ~= 1 error( Só aceito vectores coluna ); end if d3 ~= d1 error( Dimensões de x e y não são iguais ); end end end A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 53 / 190
54 MATLAB Funções MATLAB O if myfun.m Cont. if nargout < 1 error( Pelo menos um argumento de saída ); end a=2*x+y; if nargout > 1 b=3*x+2*y; end A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 54 / 190
55 MATLAB Funções MATLAB O if Execução >> myfun([1 2])??? Error using ==> myfun Só aceito vectores coluna >> myfun([1 2] )??? Error using ==> myfun Pelo menos um argumento de saída >> f=myfun([1 2] ) f = 3 5 >> f=myfun([1 2],[1 2 3])??? Error using ==> myfun Só aceito vectores coluna A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 55 / 190
56 MATLAB Funções MATLAB O if Execução >> f=myfun([1 2],[1 2 3] )??? Error using ==> myfun Dimensões de x e y não são iguais >> [f1,f2]=myfun([1 2],[1 2] ) f1 = 3 6 f2 = 5 10 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 56 / 190
57 MATLAB Funções MATLAB O for Execução >> for i=1:2 fprintf( %d --> %d\n,i,2*i); end 1 --> > 4 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 57 / 190
58 MATLAB Funções MATLAB O inline Execução >> g=inline( sin(x) ); >> g(1) ans = >> g=inline( sin(x)*a, x, a ); >> g(1,2) ans = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 58 / 190
59 MATLAB Zeros de funções A função fzero >> g=inline( cos(x) ); >> fzero(g,1.1) ans = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 59 / 190
60 Optimização Conteúdo 1 Introdução 2 MATLAB 3 Optimização 4 Optimização não linear sem restrições 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o MATLAB 8 Optimização não linear com restrições de igualdade 9 Optimização não linear com restrições de desigualdade 10 Optimização com restrições com o MATLAB A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 60 / 190
61 Optimização Classificação Os problemas de optimização podem ser classificados de acordo com: as funções envolvidas (na função objectivo e nas restrições) o tipo de variáveis usadas (inteiras, binárias, discretas, contínuas, etc...) o tipo de restrições consideradas (igualdade, desigualdade, infinitas, complementaridade, etc...) o tipo de solução que se pretende obter (local ou global) diferenciabilidade das funções envolvidas (optimização com ou sem derivadas) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 61 / 190
62 Optimização Importância da classificação Não existe software que resolva todos os tipos de problemas. O tipo de problema que se pretende resolver condiciona o software (solver) a usar. Um solver para optimização contínua não pode ser usado para resolver problemas com variáveis discretas. Um solver que use derivadas (ou as estime), aplicado a um problema que envolva funções não diferenciáveis, pode convergir (se convergir!!!) para um ponto de descontinuidade da derivada, apresentando-a como solução. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 62 / 190
63 Optimização Tipo de problemas Programação linear min(max) c T x(+d) s.a Ax = b Ex ( )f Programação quadrática min x T Qx + c T x s.a Ax = b Ex f A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 63 / 190
64 Optimização Tipo de problemas Optimização não linear min f(x) s.a c(x) = 0 h(x) 0 Desde que na definição do problema seja usada uma função não linear. f(x), c(x) e h(x) podem ser funções lineares. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 64 / 190
65 Optimização Classificação das variáveis Booleanas ou binárias (0 ou 1) Inteiras (Por exemplo 1,2,3,4,5,6,... ) Discretas (Por exemplo preto, azul, verde, vermelho, etc...) Contínuas (Por exemplo x [0, 2]) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 65 / 190
66 Optimização Classificação quanto à solução pretendida Óptimo local (determinação de um minimizante local ou relativo) Óptimo global (determinação de uma minimizante global ou absoluto) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 66 / 190
67 Optimização Classificação quanto à estrutura Programação semi-definida (envolve matrizes semi-definidas) Programação semi-infinita (uma função objectivo sujeita a uma infinidade de restrições) Programação estocástica ou robusta (envolve parâmetros incertos, conhecendo-se um intervalo de variação) Problemas de complementaridade (restrições em que se uma for diferente de zero então a outra é necessariamente zero) Problemas de controlo óptimo (determinar a melhor forma de controlar um determinado sistema - frequentemente modelado com equações diferenciais) etc... A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 67 / 190
68 Optimização Classificação de algoritmos Estocásticos (Procura da solução de forma aleatória, mas controlada) Algoritmos genéticos Colónias de formigas Colónias de partículas etc... Grande parte das vezes sem convergência garantida. Usados para a procura global (quando funcionam!!!). Determinísticos Dados os parâmetros iniciais (aproximação inicial e parâmetros do algoritmo) executa sempre da mesma forma. Grande parte das vezes com convergência garantida para um óptimo local. Híbridos Uma mistura das duas abordagens A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 68 / 190
69 Optimização não linear sem restrições Conteúdo 1 Introdução 2 MATLAB 3 Optimização 4 Optimização não linear sem restrições 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o MATLAB 8 Optimização não linear com restrições de igualdade 9 Optimização não linear com restrições de desigualdade 10 Optimização com restrições com o MATLAB A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 69 / 190
70 Optimização não linear sem restrições Forma geral do problema A formulação matemática de um problema de optimização, na sua forma mais geral, é s.a min f(x) x R n c i (x) = 0, i = 1,..., m c j (x) 0, j = m + 1,..., t onde f(x) é a função objectivo, c i (x) = 0 são as restrições de igualdade e c j (x) são as restrições de desigualdade. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 70 / 190
71 Optimização não linear sem restrições Equivalência entre problemas O problema de optimização (maximização) s.a max g(x) x R n c i (x) = 0, i = 1,..., m c j (x) 0, j = m + 1,..., t é equivalente ao problema de optimização (minimização) s.a min f(x) g(x) x Rn c i (x) = 0, i = 1,..., m c j (x) c j (x) 0, j = m + 1,..., t A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 71 / 190
72 Optimização não linear sem restrições Interpretação geométrica f(x*) f(x), f(x) 0 x* 2 f(x*) x f(x) = (x 0.5) g(x) = f(x) = (x 0.5) 2 2 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 72 / 190
73 Optimização não linear sem restrições Exemplo Pretende-se determinar o volume máximo de uma lata (cilindro), fechada nas duas extremidades, sabendo que a quantidade de chapa a usar é de 1000 cm 2. Sendo r o raio da tampa e h a altura da lata, uma possível formulação do problema de optimização é max (r,h) R πr2 h 2 s.a 2πr 2 + 2πrh = 1000 que pode ser transformado no problema de minimização min x R 2 πx2 1x 2 s.a 2πx πx 1 x 2 = 1000 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 73 / 190
74 Optimização não linear sem restrições Optimização sem restrições Apenas iremos considerar problemas de minimização e sem restrições. A sua formulação é pois min x R n f(x). Classificação dos problemas (mais usuais) Problemas unidimensionais (n = 1, ou seja, x R); Problemas multidimensionais (n > 1, ou seja, x = (x 1,..., x n ) T R n ); Problemas de programação linear (f(x) e c(x) são funções lineares, i.e., f(x) = Ax, c(x) = Ax b); Problemas de programação quadrática (f(x) é uma função quadrática, i.e., f(x) = 1 2 xt Gx + d T x, e c(x) são funções lineares); Problemas com limites simples (restrições nas variáveis do tipo a l x l b l, l = 1,..., n); Problemas de programação não linear (pelo menos uma das funções envolvidas, f(x), c(x) é não linear). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 74 / 190
75 Optimização não linear sem restrições Classificação de mínimos x é minimizante local forte se δ tal que f(x ) < f( x), x V δ (x ); minimizante local fraco se δ tal que f(x ) f( x), x V δ (x ); minimizante global forte se f(x ) < f( x), x R n ; minimizante global fraco se f(x ) f( x), x R n ; Onde V δ (x ) é uma vizinhança de x de raio δ ( x x < δ). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 75 / 190
76 Optimização não linear sem restrições Mínimo global Mínimo global forte Função ilimitada Mínimo global fraco f(x ) < f( x) x R f(x ) f( x) x R A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 76 / 190
77 Optimização não linear sem restrições Mínimo local δ : f(x ) < f( x), x V δ (x ). δ : f(x ) f( x), x V δ (x ). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 77 / 190
78 Optimização não linear sem restrições Conceitos Máximo e maximizante; Mínimo e minimizante; Óptimo local ou global; Convergência local e global de algoritmos. Um algoritmo diz-se global se determina um minimizante (maximizante) dada uma qualquer aproximação inicial. Um algoritmo diz-se local se determina um minimizante partindo apenas de uma aproximação inicial suficientemente perto do minimizante. (Não confundir com a determinação de mínimos locais ou globais). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 78 / 190
79 Optimização não linear sem restrições Condições de optimalidade Condições necessárias para a existência de um mínimo f (x ) = 0; f (x ) 0. Condições suficientes para a existência de um mínimo f (x ) = 0; f (x ) > 0. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 79 / 190
80 Optimização não linear sem restrições Exemplos f(x) = (x 1.5) 2 f(x) = sin(x) f (1.5) = 2 ( ) = 0 f (1.5) = 2 > 0 f ( π 2 ) = cos( π 2 ) = 0 f ( π 2 ) = sin( π 2 ) = 1 < Pelas condições necessária e suficiente A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 80 / 190
81 Optimização não linear sem restrições Exemplos f(x) = x 4 f(x) = x 3 f (0) = 3 (0) 3 = 0 f (0) = 3 (0) 2 = 0 f (0) = 12 (0) 2 = 0 f (0) = 6 (0) = Verifica-se a condição necessária, mas não a condição suficiente A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 81 / 190
82 Optimização não linear sem restrições Alguma notação Gradiente de f(x) : R n R, x = (x 1,..., x n ) T, vector de dimensão n f x 1 f ( f(x) = g(x) = x 2 f... =, f,..., f ) T x 1 x 2 x n f x n Matriz Hessiana, matriz de dimensão n n 2 f(x) = G(x) = 2 f x f x n x f x 1 x n... 2 f x 2 n A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 82 / 190
83 Optimização não linear sem restrições Condições de optimalidade Condições necessárias para a existência de um mínimo g(x ) = 0 (sistema não linear); G(x ) 0 (semi-definida positiva). Condições suficientes para a existência de um mínimo g(x ) = 0 (sistema não linear); G(x ) 0 (definida positiva). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 83 / 190
84 Optimização não linear sem restrições Exemplo Pretende-se determinar todos os pontos óptimos do seguinte problema de optimização min x R 2x2 1 + x x 1 x 2 f(x) Da condição de necessária e suficiente de primeira ordem temos que g(x) = (2x 1 + 2x 2, 3x x 1 ) T = (0, 0) T, ou seja, { { 2x1 + 2x 2 = 0 3x x 1 = 0 x 1 = x 2 3x 2 2 2x 2 = 0 x 1 = x 2 x 2 = 0 x 2 = 2 3 Os pontos x = (0, 0) T e ˆx = ( 2 3, 2 3 )T são pontos estacionários de f(x). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 84 / 190
85 Optimização não linear sem restrições Cont. Para verificar as condições de segunda ordem temos que estudar G( x) e G(ˆx). ( 2 2 G(x) = 2 6x 2 ( 2 2 det( 2 ) = 2, det 2 0 ) ( 2 2, G( x) = 2 0 ) ) ( 2 2, G(ˆx) = 2 4 ( 2 2 = 4, det 2 4 ) = 4 e temos que G( x) é indefinida ( x é ponto sela - descanso) e G(ˆx) é definida positiva (ˆx é mínimo local forte). ) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 85 / 190
86 Optimização não linear sem restrições Representação gráfica/curvas de nível f(x) x x f(x) = x x x 1x 2 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 86 / 190
87 Optimização não linear sem restrições Motivação para os métodos numéricos Na determinação analítica dos pontos estacionários é necessário resolver um sistema não linear, que é quase sempre de difícil resolução. Exemplo Considere-se a função f(x) = x 1 e x 2 2x 1 x 2. Os pontos estacionários de f(x) obtêm-se através da resolução do sistema não linear { e x 2 2x 2 = 0 x 1 e x 2 2x 1 = 0 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 87 / 190
88 Método de Segurança de Newton Conteúdo 1 Introdução 2 MATLAB 3 Optimização 4 Optimização não linear sem restrições 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o MATLAB 8 Optimização não linear com restrições de igualdade 9 Optimização não linear com restrições de desigualdade 10 Optimização com restrições com o MATLAB A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 88 / 190
89 Método de Segurança de Newton Forma geral do problema A formulação matemática de um problema de optimização multidimensional, sem restrições é min f(x), x R n com f(x) : R n R (n > 1) duas vezes diferenciável. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 89 / 190
90 Método de Segurança de Newton Notação Gradiente de f(x) : R n R, x = (x 1,..., x n ) T, vector de dimensão n f x 1 f ( f(x) = g(x) = x 2 f... =, f,..., f ) T x 1 x 2 x n f x n Matriz Hessiana, matriz de dimensão n n 2 f(x) = G(x) = 2 f x f x n x f x 1 x n... 2 f x 2 n A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 90 / 190
91 Método de Segurança de Newton Alguns conceitos O vector gradiente aponta no sentido de subida da função. 100 g(x) g(x) f(x) = x 2 1 x 2 2 2x 1 x g(x) = ( 2x 1 2x 2, 2x 2 2x 1 ) T g(1, 1) = ( 4, 4) T A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 91 / 190
92 Método de Segurança de Newton Alguns conceitos - Cont. A matrix Hessiana indica a concavidade (convexa ou côncava) f(x) = x 2 1 x 2 2 2x 1 x ( ) 2 2 G(x) = 2 2 Semi-definida negativa. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 92 / 190
93 Método de Segurança de Newton Método de Newton A função f(x), em x = x + d pode ser aproximada por f(x ) f(x) + g(x) T d dt G(x)d (1) que resulta da expansão em série de Taylor de f(x), com x suficientemente perto de x. A aproximação quadrática (1) pode ser usada para determinar o vector d em que x é um vector fixo. Derivando em ordem a d e igualando a zero obtemos g(x) + G(x)d = 0 G(x)d = g(x) (2) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 93 / 190
94 Método de Segurança de Newton Cont. Quando a função f(x) é quadrática obtém-se a solução resolvendo o sistema linear (2). No caso em que f(x) não é quadrática, o novo ponto x + d não é mínimo e o processo deve ser repetido iterativamente. As equações iterativas do processo são x (k+1) = x (k) + d (k) G(x (k) )d (k) = g(x (k) ), para k = 1, 2,... Nota: O método de Newton possui terminação quadrática, i.e., se f(x) for uma função quadrática convexa o método de Newton necessita no máximo de n iterações para encontrar a solução exacta. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 94 / 190
95 Método de Segurança de Newton Método de Newton - Falhas de convergência O método de Newton pode falhar nas seguintes condições: A matriz G(x (k) ) é singular e d (k) não é sequer definido. O vector direcção d (k) é quase ortogonal a g(x (k) ) e não é possível progredir ao longo de d (k). O vector direcção d (k) não aponta no sentido descendente de f e não é possível garantir a descida do valor da função. A matriz G(x (k) ) 1 existe e é definida positiva, o vector direcção d (k) é de descida, no entanto o comprimento é tal que f(x (k+1) ) > f(x (k) ), e o novo ponto não é melhor que o anterior. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 95 / 190
96 Método de Segurança de Newton Método de segurança de Newton O método de segurança de Newton resolve as possíveis falhas do método de Newton. A matriz G(x (k) ) é singular e d (k) não é sequer definido. Neste caso toma-se como direcção de procura a direcção de descida máxima (d (k) = g(x (k) )). Como a direcção de descida máxima resolve os restantes problemas (excepto o problema do comprimento da direcção) não e necessário verificar a quase-ortogonalidade e a descida da função objectivo. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 96 / 190
97 Método de Segurança de Newton Cont. O vector direcção d (k) é quase ortogonal a g(x (k) ) e não é possível progredir ao longo de d (k). 6 4 g(1,1) 2 0 g(1,1) Quase ortogonal se g(x (k) ) T d (k) η g(x (k) ) d (k) Se for quase ortogonal então d (k) = g(x (k) ) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 97 / 190
98 Método de Segurança de Newton Cont. O vector direcção d (k) não aponta no sentido descendente de f e não é possível garantir a descida do valor da função. d (k) é direcção de descida se g(x (k) ) T d (k) η g(x (k) ) d (k). Caso d (k) não seja direcção de descida faz-se d (k) = d (k). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 98 / 190
99 Método de Segurança de Newton Cont. A matriz G(x (k) ) 1 existe e é definida positiva, o vector direcção d (k) é de descida, no entanto o comprimento é tal que f(x (k+1) ) > f(x (k) ), e o novo ponto não é melhor que o anterior. O método de Newton tem convergência local, i.e., x (k) tem de ser suficientemente próximo de x para que o método funcione. A convergência global obtém-se através da introdução da procura unidimensional (regiões de confiança!!). x (k+1) = x (k) + αd (k) em que o α deve ser calculado para garantir que f(x (k+1) ) < f(x (k) ) Decréscimo simples A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/08 99 / 190
100 Método de Segurança de Newton Procura unidimensional exacta Na procura unidimensional exacta pretende-se determinar (exactamente) qual o valor de α que minimiza a função φ(α) = f(x (k+1) ) com x (k+1) = x (k) + αd (k), usando as condições de optimalidade φ (α) = 0 e φ (α) > 0. No entanto a solução para o problema min α R φ(α) não é de fácil resolução (difícil implementação e cálculos computacionais pesados). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
101 Método de Segurança de Newton Procura unidimensional Critério de Armijo e divisões sucessivas de α por dois. Pressupondo que a direcção de procura é de descida, gera-se uma sequência de valores, {ω j α}, j = 0, 1, 2,... com α = 1 e ω = 1 2 até se encontrar um elemento que origine uma redução (significativa) no valor de f f(x (k) ) f(x (k) + ω j αd (k) ) µ 1 ω j αg(x (k) ) T d (k). O primeiro elemento encontrado é usado como o comprimento do passo na iteração k (α (k) = ω j α). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
102 Método de Segurança de Newton Critério de paragem Considera-se as três condições para o critério de paragem x (k+1) x (k) x (k+1) ɛ 1 f (k+1) f (k) f (k+1) ɛ 2 g (k+1) ɛ 3 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
103 Método de Segurança de Newton Exemplo Considere-se o seguinte problema de optimização min x R 2 x4 1 + x 2 2 3x 1 partindo de x (1) = (0, 1) T e com ɛ = 0.5. Temos que g(x) = (4x 3 1 3, 2x 2 ) T e G(x) = ( 12x ) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
104 Método de Segurança de Newton 1 a iteração g (1) = g(x (1) ) = ( 3, 2) T G (1) = G(x (1) ) = ( ) Impossível ( ) Como a matriz G(x (1) ) é singular temos que d (1) = g (1) = (3, 2) T. Não é necessário verificar a quase ortogonalidade e passa-se para a procura unidimensional. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
105 Método de Segurança de Newton Procura unidimensional x (1) = (0, 1) T f (1) = 1 g (1)T d (1) = 13 α = 1 x = x (1) + d (1) = (0, 1) T + 1(3, 2) T = (3, 1) T f( x) = = f(x (1) ) f( x) α = 0.5 x = (0, 1) T + 0.5(3, 2) T = (1.5, 0) T f( x) = = f(x (1) ) f( x) Aceita-se α (1) = 0.5 e tem-se x (2) = (1.5, 0) T. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
106 Método de Segurança de Newton Critério de paragem x (2) x (1) x (2) = = Logo passa-se à próxima iteração. As restantes condições seriam (neste caso não é necessário verificar) e f (2) f (1) f (2) = = g (2) = (10.5, 0) T = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
107 Método de Segurança de Newton 2 a iteração x (2) = (1.5, 0) T ( ) g (2) = (10.5, 0) T G (2) 27 0 = ( ) d (2) = ( , 0) T d (2) é quase ortogonal com o gradiente? d (2) = g (2) = 10.5 (g (2) ) T d (2) = (10.5, 0)( , 0) T = = (g (2) ) T d (2) = , logo d (2) não é quase ortogonal com o gradiente (se fosse d (2) = g (2) ). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
108 Método de Segurança de Newton 2 a iteração - Cont. d (2) é direcção de descida? d (2) = g (2) = 10.5 (g (2) ) T d (2) = (10.5, 0)( , 0) T = = (g (2) ) T d (2) = , logo d (2) é direcção de descida (se não fosse d (2) = d (2) ). Inicia-se a procura unidimensional. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
109 Método quasi-newton Conteúdo 1 Introdução 2 MATLAB 3 Optimização 4 Optimização não linear sem restrições 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o MATLAB 8 Optimização não linear com restrições de igualdade 9 Optimização não linear com restrições de desigualdade 10 Optimização com restrições com o MATLAB A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
110 Método quasi-newton Método Quasi-Newton O método Quasi-Newton usa uma matriz aproximação à matriz Hessiana (ou à sua inversa) da função objectivo. O uso de uma matriz aproximação evita o cálculo da matriz Hessiana (segundas derivadas) que pode ser difícil de obter. A aproximação à inversa da Hessiana, em vez da própria Hessiana, substituí a resolução de um sistema linear em cada iteração, por um produto matriz vector. (G(x)d = g(d) d = G(x) 1 g(x)). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
111 Método quasi-newton Cont. A matriz aproximação é actualizada em cada iteração usando a informação das derivadas (gradiente) da iteração anterior. A fórmula mais conhecida é devida a Broyden, Fletcher, Goldfarb e Shanno (B.F.G.S.) ( ) ( ) H (k+1) = I s(k) y (k)t s (k)t y (k) H (k) I y(k) s (k)t y (k)t s (k) + s(k) s (k)t s (k)t y (k) em que s (k) = α (k) d (k) = x (k+1) x (k) e y (k) = g (k+1) g (k). Quando s (k)t y (k) > 0 e H (k) é simétrica e definida positiva, a formula de actualização garante que a matriz H (k+1) é simétrica e definida positiva. A fórmula B.F.G.S. satisfaz a propriedade de terminação quadrática. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
112 Método quasi-newton Cont. Na primeira iteração temos que H (1) = I (simétrica e definida positiva). Quando se usa a técnica de recomeço a matriz H (k) = I sempre que (k 1) mod n = 0. Como H (k) é simétrica e definida positiva não é necessário verificar a quase ortogonalidade e se a direcção calculada é de descida para a função objectivo. Os problemas numéricos com a matriz H (k), tais como overflow na actualização de H (k), um deslocamento ao longo da direcção de procura muito longo devido à quase ortogonalidade da direcção com o gradiente, podem ser ultrapassados usando a técnica do recomeço. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
113 Método quasi-newton Exemplo Considere-se o seguinte problema de optimização (x (1) = (0, 1) T e ɛ = 0.5) Temos que g(x) = (4x 3 1 3, 2x 2) T. 1 a iteração min x R 2 x4 1 + x 2 2 3x 1 g (1) = g(x (1) ) = ( 3, 2) T H (1) = I d (1) = Hg (1) = (3, 2) T. Procura unidimensional... (ver exemplo do segurança de Newton) Aceita-se α (1) = 0.5 e vem que x (2) = (1.5, 0) T. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
114 Método quasi-newton Critério de paragem x (2) x (1) x (2) = Logo passa-se à próxima iteração. 2 a iteração x (2) = (1.5, 0) T e g (2) = (10.5, 0) T H (2) = ( I s(1) y (1)T s (1)T y (1) ) H (1) ( = I y(1) s (1)T y (1)T s (1) ) + s(1) s (1)T s (1)T y (1) s (1) = x (2) x (1) = (1.5, 0) T (0, 1) T = (1.5, 1) T y (1) = g (2) g (1) = (10.5, 0) T ( 3, 2) T = (13.5, 2) T A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
115 Método quasi-newton Cont. s (1) y (1)T = I s(1) y (1)T ( 1 0 s (1)T y = (1) 0 1 H (2) = ( ( ) ( (13.5, 2) = s (1)T y (1) = (1.5, 1)(13.5, 2) T = ) ( ) ( ) = ( ) ( ) s (1) s (1)T = (1.5, 1) = ) ( ) ( ) H (1) ( ) H (2) = ) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
116 Método quasi-newton Cont. ( d (2) = H (2) g (2) = ( ) d (2) = Procura unidimensional... ) ( ) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
117 Optimização sem restrições com o MATLAB Conteúdo 1 Introdução 2 MATLAB 3 Optimização 4 Optimização não linear sem restrições 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o MATLAB 8 Optimização não linear com restrições de igualdade 9 Optimização não linear com restrições de desigualdade 10 Optimização com restrições com o MATLAB A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
118 Optimização sem restrições com o MATLAB Funções MATLAB O MATLAB fornece um conjunto de funções para optimização linear e não linear das quais se destacam: fzero - Zero de funções unidimensionais (Scalar functions); fminbound - Optimização não linear com limites simples de funções unidimensionais (escalares). fminsearch - Optimização não linear sem restrições e derivadas; fminunc - Optimização não linear sem restrições A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
119 Optimização sem restrições com o MATLAB As opções para os algoritmos Um dos argumentos aceite por determinados algoritmos é o OPTIONS. Esse argumento é uma estrutura com diversos parâmetros que podem ser modificados pelo utilizador para controlar o algoritmo. A estrutura OPTIONS pode ser criada/actualizada através da função OPTIMSET. >> optimset Display: [ off on iter notify final ] MaxFunEvals: [ positive scalar ] MaxIter: [ positive scalar ] TolFun: [ positive scalar ] TolX: [ positive scalar ] GradObj: [ on {off} ] Hessian: [ on {off} ] Jacobian: [ on {off} ] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
120 Optimização sem restrições com o MATLAB As opções para os algoritmos >> opt=optimset( display, iter ); >> fzero(g,1.1,opt) Search for an interval around 1.1 containing a sign change: Func-count a f(a) b f(b) Procedure initial i search search search Search for a zero in the interval [0.6022, ]: Func-count x f(x) Procedure initial e-017 interpolation Zero found in the interval [ , ] ans = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
121 Optimização sem restrições com o MATLAB Exemplo não linear Considere que um montante x i é afectado ao projecto i, para i = 1,..., n, sendo o retorno esperado desta carteira de projectos dado por f(x 1,..., x n ) = n (α i x i 1 2 β ix 2 i ) + 1 n 1 (x i x i+1 ) (n > 1). 2 i=1 i=1 Para n = 2, α 1 = 1, α 2 = 2, β 1 = β 2 = 1, pretende-se calcular x 1 e x 2 de modo a maximizar o retorno esperado. O problema é modelado como um problema de optimização sem restrições max f(x 1, x 2 ) ( x 1 x2 1 2 ) + ( 2x 2 x2 2 2 ) + x 1x 2 2 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
122 Optimização sem restrições com o MATLAB A resolução Simples fminsearch >> g=inline( -(x(1)-x(1)^2/2+2*x(2)-x(2)^2/2+x(1)*x(2)/2) ); >> fminsearch(g,[1 1]) ans = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
123 Optimização sem restrições com o MATLAB Sintaxe A função fminsearch usa o algoritmo de Nelder-Mead. A sintaxe completa da função é: [X,FVAL,EXITFLAG,OUTPUT] = FMINSEARCH(FUN,X0,OPTIONS) X - A solução encontrada. FVAL - O valor da função em X. EXITFLAG - 1 se o algoritmo convergiu, 0 se atingiu o número máximo de iterações e -1 em caso de erro. OUTPUT - retorna uma estrutura com o número de iterações em OUTPUT.iterations, o número de cálculos da função objectivo em OUTPUT.funcCount, o nome do algoritmo em OUTPUT.algorithm e a mensagem de saída em OUTPUT.message. FUN - Nome da função a minimizar. X0 - Aproximação inicial. OPTIONS - Estrutura com opções para o algoritmo. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
124 Optimização sem restrições com o MATLAB A resolução Mais elaborada >> g=inline( -(x(1)-x(1)^2/2+2*x(2)-x(2)^2/2+x(1)*x(2)/2) ); >> opt=optimset( display, iter ); >> [x,fval,e,o]=fminsearch(g,[1 1],opt) Iteration Func-count min f(x) Procedure initial simplex expand contract outside contract inside reflect contract inside Optimization terminated: the current x satisfies the termination criteria using OPTIONS.TolX and F(X) satisfies the convergence criteria using OPTIONS.TolFun of A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
125 Optimização sem restrições com o MATLAB A resolução Mais elaborada x = fval = e = 1 o = iterations: 45 funccount: 86 algorithm: Nelder-Mead simplex direct search message: [1x196 char] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
126 Optimização sem restrições com o MATLAB A resolução com fminunc >> [x,fval,e,o,g,h]=fminunc(g,[1 1],opt) Warning: Gradient must be provided for trust-region method; using line-search method instead. > In fminunc at 241 Gradient s Iteration Func-count f(x) Step-size infinity-nor e-006 Optimization terminated: relative infinity-norm of gradient less than options.tolfun. Computing finite-difference Hessian using user-supplied objective function. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
127 Optimização sem restrições com o MATLAB A solução com fminunc x = o = iterations: 5 funccount: 18 stepsize: 1 firstorderopt: e-006 algorithm: medium-scale: Quasi-Newton line search message: [1x85 char] g = 1.0e-005 * H = A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
128 Optimização sem restrições com o MATLAB A resolução com fminunc usando o gradiente retorno.m function [f,g] = retorno(x) f=-x(1)+x(1)^2/2-2*x(2)+x(2)^2/2-x(1)*x(2)/2; if nargout > 1 % gradiente g(1)=-1+x(1)-x(2)/2; g(2)=-2+x(2)-x(1)/2; end A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
129 Optimização sem restrições com o MATLAB A resolução com fminunc usando o gradiente >> opt=optimset( display, iter, GradObj, on ); >> [x,fval,e,o,g,h]=fminunc( retorno,[1 1],opt) Norm of First-order Iteration f(x) step optimality CG-iterat Optimization terminated: Relative function value changing by less than OPTIONS.TolFun. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 07/ / 190
Bioinformática Avançada e Biologia de Sistemas Optimização
Bioinformática Avançada e Biologia de Sistemas Optimização A. Ismael F. Vaz Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.pt Mestrado em Bioinformática
Leia maisBioinformática Avançada e Biologia de Sistemas Optimização
Bioinformática Avançada e Biologia de Sistemas Optimização A. Ismael F. Vaz Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.pt Mestrado em Bioinformática
Leia maisMé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
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
Leia maisMétodos Numéricos. MEI - Logística e distribuição Optimização não linear com restrições de igualdade 2004/2005
Métodos Numéricos MEI - Logística e distribuição Optimização não linear com restrições de igualdade 2004/2005 Métodos Numéricos - MEI 1 Apresentação - Docentes Aulas teóricas: A. Ismael F. Vaz - aivaz@dps.uminho.pt
Leia maisMétodos Numéricos C. A. Ismael F. Vaz 1. Escola de Engenharia Universidade do Minho Ano lectivo 2007/2008
Métodos Numéricos C A. Ismael F. Vaz 1 1 Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.pt Ano lectivo 2007/2008 A. Ismael F. Vaz (UMinho) MN C 2007/2008
Leia maisDepartamento de Matemática da Universidade de Coimbra. Licenciatura em Matemática. e B =
Departamento de Matemática da Universidade de Coimbra Optimização Numérica Licenciatura em Matemática Ano lectivo 2006/2007 Folha 1 1. Considere as matrizes A = [ 1 1 1 2 ] e B = [ 1 3 1 2 (a) Verifique
Leia maisMétodos Numéricos I. A. Ismael F. Vaz. Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho
Métodos Numéricos I A. Ismael F. Vaz Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.pt Engenharia Mecânica Ano lectivo 2007/2008 A. Ismael F. Vaz (UMinho)
Leia maisOptimização. Carlos Balsa. Departamento de Matemática Escola Superior de Tecnologia e Gestão de Bragança
Optimização Carlos Balsa balsa@ipb.pt Departamento de Matemática Escola Superior de Tecnologia e Gestão de Bragança Matemática Aplicada - Mestrados Eng. Química e Industrial Carlos Balsa Matemática Aplicada
Leia maisBioinformática Avançada e Biologia de Sistemas Optimização
Bioinformática Avançada e Biologia de Sistemas Optimização A. Ismael F. Vaz Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.pt Mestrado em Bioinformática
Leia maisCapítulo 5 - Optimização Não-Linear
Capítulo 5 - Optimização Não-Linear balsa@ipb.pt Departamento de Matemática Escola Superior de Tecnologia e Gestão de Bragança Mestrados em Engenharia da Construção Métodos de Aproximação em Engenharia
Leia maisMétodos Numéricos C. A. Ismael F. Vaz 1. Escola de Engenharia Universidade do Minho Ano lectivo 2007/2008
Métodos Numéricos C A. Ismael F. Vaz 1 1 Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.pt Ano lectivo 2007/2008 A. Ismael F. Vaz (UMinho) MN C 2007/2008
Leia maisMÉTODOS NEWTON E QUASE-NEWTON PARA OTIMIZAÇÃO IRRESTRITA
MÉTODOS NEWTON E QUASE-NEWTON PARA OTIMIZAÇÃO IRRESTRITA Marlon Luiz Dal Pasquale Junior, UNESPAR/FECILCAM, jr.marlon@hotmail.com Solange Regina dos Santos (OR), UNESPAR/FECILCAM, solaregina@fecilcam.br
Leia maisAplicações e métodos para programação semi-infinita e optimização multi-local
Aplicações e métodos para programação semi-infinita e optimização multi-local A. Ismael F. Vaz Departamento de Produção e Sistemas Escola de Engenharia, Universidade do Minho aivaz@dps.uminho.pt Edite
Leia maisMétodos Numéricos I. A. Ismael F. Vaz. Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho
Métodos Numéricos I A. Ismael F. Vaz Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.pt Engenharia Mecânica Ano lectivo 2007/2008 A. Ismael F. Vaz (UMinho)
Leia maisBCC465 - TÉCNICAS DE MULTI-OBJETIVO. Gladston Juliano Prates Moreira 22 de novembro de 2017
BCC465 - TÉCNICAS DE OTIMIZAÇÃO MULTI-OBJETIVO Aula 04 - Otimização Não-linear Gladston Juliano Prates Moreira email: gladston@iceb.ufop.br CSILab, Departamento de Computação Universidade Federal de Ouro
Leia maisOptimização semi-infinita. Opção V. Licenciatura em Matemática Aplicada
Optimização semi-infinita Opção V Licenciatura em Matemática Aplicada EXERCÍCIOS TEÓRICO-PRÁTICOS Ano lectivo de 2006/2007 1 Condições de optimalidade - Optimização não linear finita 1.1 Detere e classifique,
Leia maisControle Ótimo - Aula 8 Equação de Hamilton-Jacobi
Controle Ótimo - Aula 8 Equação de Hamilton-Jacobi Adriano A. G. Siqueira e Marco H. Terra Departamento de Engenharia Elétrica Universidade de São Paulo - São Carlos O problema de controle ótimo Considere
Leia maisUNIVERSIDADE FEDERAL DO ABC. 1 Existência e unicidade de zeros; Métodos da bissecção e falsa posição
UNIVERSIDADE FEDERAL DO ABC BC1419 Cálculo Numérico - LISTA 1 - Zeros de Funções (Profs. André Camargo, Feodor Pisnitchenko, Marijana Brtka, Rodrigo Fresneda) 1 Existência e unicidade de zeros; Métodos
Leia maisFaculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu
Programação Não Linear Aula 7: Programação Não-Linear - Funções de Várias variáveis Vector Gradiente; Matriz Hessiana; Conveidade de Funções e de Conjuntos; Condições óptimas de funções irrestritas; Método
Leia maisMétodos Numéricos. A. Ismael F. Vaz. Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho
Métodos Numéricos A. Ismael F. Vaz Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.pt Mestrado Integrado em Engenharia Mecânica Ano lectivo 2007/2008 A.
Leia maisOPTIMIZAÇÃO NÃO LINEAR
OPTIMIZAÇÃO NÃO LINEAR Opção IV - LESI Método de penalidade para PSI 2004/2005 Optimização não linear - Opção IV - LESI 1 Formulação - Programação Semi-Infinita (PSI) min f(x) x R n s.t. g i (x, t) 0,
Leia maisOptimização e Algoritmos (2004/2005)
Optimização e Algoritmos 2004/2005) Instituto Superior Técnico Engenharia Electrotécnica e de Computadores Série de Problemas 4 Minimização sem restrições algoritmos gradiente, Newton, quasi-newton BFGS)
Leia maisMétodos Numéricos C Apresentação da Disciplina
Métodos Numéricos C Apresentação da Disciplina Isabel Espírito Santo Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho iapinho@dps.uminho.pt http://www.norg.uminho.pt/iapinho/
Leia maisIury Steiner de Oliveira Bezerra
Algoritmos genéticos (Matlab) MATLAB Optimization Toolbox Iury Steiner de Oliveira Bezerra Tópicos Introdução Otimização de funções Optimization Toolbox Rotinas / Algoritmos Disponíveis Problemas de minimização
Leia maisCapítulo 22 Otimização. Introdução ao MATLAB p.1/18
Capítulo 22 Otimização Introdução ao MATLAB p.1/18 Resumo do capítulo Neste capítulo, otimização refere-se ao processo de determinar os pontos onde uma função assume determinado valor, ou assume valores
Leia maisParte 1: Exercícios Teóricos
Cálculo Numérico SME0104 ICMC-USP Lista 5: Zero de Funções Lembrete (informação que vai estar disponível na prova) Método de Newton Método da Secante x k+1 = x k f(x k) f (x k ), x k+1 = x k J 1 F (x k
Leia maisMatemática Computacional - Exercícios
Matemática Computacional - Exercícios 1 o semestre de 2007/2008 - Engenharia Biológica Teoria de erros e Representação de números no computador Nos exercícios deste capítulo os números são representados
Leia maisExercícios de MATEMÁTICA COMPUTACIONAL. 1 0 Semestre de 2009/2010 Resolução Numérica de Equações Não-Lineares
Exercícios de MATEMÁTICA COMPUTACIONAL Mestrado Integrado em Engenharia Biomédica 1 0 Semestre de 2009/2010 Resolução Numérica de Equações Não-Lineares 1. Considere a equação sin(x) e x = 0. a) Prove que
Leia maisExercícios TP/P. 1 Condições de optimalidade - Restrições de igualdade
Campus de Gualtar Escola de Engenharia 4710-057 Braga - P Departamento de Produção e Sistemas Exercícios TP/P Mestrado e curso de especialização em Engenharia Industrial - MEI Ramo Logística e Distribuição
Leia maisModelagem Computacional. Parte 8 2
Mestrado em Modelagem e Otimização - RC/UFG Modelagem Computacional Parte 8 2 Prof. Thiago Alves de Queiroz 2/2016 2 [Cap. 10 e 11] BURDEN, R. L.; FAIRES, J. D. Numerical Analysis (9th ed). Cengage Learning,
Leia maisMÉTODOS NUMÉRICOS. ENGENHARIA e GESTÃO INDUSTRIAL
UNIVERSIDADE DO MINHO MÉTODOS NUMÉRICOS ENGENHARIA e GESTÃO INDUSTRIAL EXERCÍCIOS PRÁTICOS Ano lectivo de 2005/2006 Métodos Numéricos - L.E.G.I. Exercícios práticos - CONUM Solução de uma equação não linear
Leia maisEncontre um valor aproximado para 3 25 com precisão de 10 5 utilizando o método da bissecção.
1 a) Mostre que f (x) = x cos x possui uma raiz no intervalo [0, 1]. b) Prove que essa raiz é única. c) Sem executar o método, preveja o número de iterações que o algoritmo da bissecção utilizaria para
Leia maisCapítulo 6 - Equações Não-Lineares
Sistemas de Capítulo 6 - Carlos Balsa balsa@ipb.pt Departamento de Matemática Escola Superior de Tecnologia e Gestão de Bragança 2 o Ano - Eng. Civil e Electrotécnica Carlos Balsa Métodos Numéricos 1/
Leia maisResolução do Exame Tipo
Departamento de Matemática e Engenharias Análise e Computação Numérica Resolução do Exame Tipo 1. O computador IBM 3090 possuía um sistema de vírgula flutuante F F(16, 5, 65, 62) (em precisão simples),
Leia maisINSTITUTO SUPERIOR TÉCNICO Mestrado Integrado em Engenharia Física Tecnológica Ano Lectivo: 2007/2008 Semestre: 1 o
INSTITUTO SUPERIOR TÉCNICO Mestrado Integrado em Engenharia Física Tecnológica Ano Lectivo: 27/28 Semestre: o MATEMÁTICA COMPUTACIONAL Exercícios [4 Sendo A M n (C) mostre que: (a) n A 2 A n A 2 ; (b)
Leia maisINVESTIGAÇÃO OPERACIONAL. Programação Linear. Exercícios. Cap. IV Modelo Dual
INVESTIGAÇÃO OPERACIONAL Programação Linear Exercícios Cap. IV Modelo Dual António Carlos Morais da Silva Professor de I.O. i Cap. IV - Modelo Dual - Exercícios IV. Modelo Problema Dual 1. Apresente o
Leia maisCapítulo 4 - Equações Não-Lineares
Capítulo 4 - Carlos Balsa balsa@ipb.pt Departamento de Matemática Escola Superior de Tecnologia e Gestão de Bragança 2 o Ano - Eng. Civil, Química e Gestão Industrial Carlos Balsa Métodos Numéricos 1/
Leia maisMini curso básico. Gilberto A. S. Segundo Fábio Carmo. Programa de Educação Tutorial
Programa de Educação Tutorial Mini curso básico Universidade Federal do Espírito Santo Departamento de Informática Gilberto A. S. Segundo Fábio Carmo Agenda Apresentação Vetores e matrizes em matlab Comandos
Leia maisSabendo que f(x) é um polinômio de grau 2, utilize a formula do trapézio e calcule exatamente
MÉTODOS NUMÉRICOS E COMPUTACIONAIS II EXERCICIOS EXTRAIDOS DE PROVAS ANTERIORES EXERCICIOS RESOLVIDOS - INTEGRACAO-NUMERICA - EDO. Considere a seguinte tabela de valores de uma função f x i..5.7..5 f(x
Leia maisFOLHAS DE PROBLEMAS DE MATEMÁTICA II CURSO DE ERGONOMIA PEDRO FREITAS
FOLHAS DE PROBLEMAS DE MATEMÁTICA II CURSO DE ERGONOMIA PEDRO FREITAS Maio 12, 2008 2 Contents 1. Complementos de Álgebra Linear 3 1.1. Determinantes 3 1.2. Valores e vectores próprios 5 2. Análise em
Leia maisCÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano
CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano yaratadano@utfpr.edu.br Aula 7 Matlab Noções Básicas de MATLAB INTRODUÇÃO Cálculo Numérico 3/55 LAYOUT DO MATLAB Espaço destinado às variáveis veis que
Leia maisCÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano
CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano yaratadano@utfpr.edu.br Aula 10 04/2014 Matlab Métodos para zeros reais de funções Algoritmo do Método da Bissecção Seja f (x) contínua em [a, b] e tal
Leia maisCálculo Diferencial e Integral 2 Formas Quadráticas
Instituto Superior Técnico Departamento de Matemática Secção de Álgebra e Análise Cálculo Diferencial e Integral 2 Formas Quadráticas 1 Formas quadráticas Uma forma quadrática em R n é um polinómio do
Leia maisEXERCICIOS RESOLVIDOS - INT-POLIN - MMQ - INT-NUMERICA - EDO
Cálculo Numérico EXERCICIOS EXTRAIDOS DE PROVAS ANTERIORES o sem/08 EXERCICIOS RESOLVIDOS - INT-POLIN - MMQ - INT-NUMERICA - EDO x. Considere a seguinte tabela de valores de uma função f: i 0 f(x i ).50
Leia maisCapítulo 1 - Erros e Aritmética Computacional
Capítulo 1 - Erros e Carlos Balsa balsa@ipb.pt Departamento de Matemática Escola Superior de Tecnologia e Gestão de Bragança 2 o Ano - Eng. Civil e Electrotécnica Carlos Balsa 1/ 26 Sumário 1 Definição
Leia maisLista de Exercícios de Métodos Numéricos
Lista de Exercícios de Métodos Numéricos 1 de outubro de 010 Para todos os algoritmos abaixo assumir n = 0, 1,, 3... Bisseção: Algoritmo:x n = a+b Se f(a) f(x n ) < 0 então b = x n senão a = x n Parada:
Leia maisProcessamento de Imagens CPS755
Processamento de Imagens CPS755 aula 06 - sistemas não lineares Antonio Oliveira Ricardo Marroquim 1 / 38 laboratório de processamento de imagens tópicos RANSAC métodos iterativos (não-lineares) gradientes
Leia maisFunções para Análise Numérica
Análise Numérica LEC - Help 1 Funções para Análise Numérica Métodos Iterativos - Ficheiro bisect.m ( Kharab modificado ) bisect(f,a,b,tol,n) Bisection method for solving the nonlinear equation f(x)=0.
Leia maisVetores, Matrizes e Gráficos
Programação de Computadores I UFOP DECOM 2013 2 Aula prática 3 Vetores, Matrizes e Gráficos Resumo Nesta aula você irá utilizar vetores para resolver diversos tipos de problemas. Para expressar a solução
Leia maisOtimização aplicada à Engenharia. Profa. Maíra Martins da Silva
Otimização aplicada à Engenharia Profa. Maíra Martins da Silva mairams@sc.usp.br 3373-8650 Objetivo Introduzir conceitos básicos de OTIMIZAÇÃO. Utilizar o MATLAB para explorar esses conceitos básicos.
Leia maisCálculo Diferencial e Integral II
Instituto Superior Técnico Departamento de Matemática Secção de Álgebra e Análise Cálculo Diferencial e Integral II Ficha de trabalho 1 (versão de 6/0/009 (Esboço de Conjuntos. Topologia. Limites. Continuidade
Leia maisControlo óptimo de processos semi-contínuos com optimização por colónias de partículas
Controlo óptimo de processos semi-contínuos com optimização por colónias de partículas A. Ismael F. Vaz Departamento de Produção e Sistemas Escola de Engenharia, Universidade do Minho aivaz@dps.uminho.pt
Leia maisMétodos Numéricos. A. Ismael F. Vaz. Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.
Métodos Numéricos A. Ismael F. Vaz Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho aivaz@dps.uminho.pt Mestrado Integrado em Engenharia Mecânica Ano lectivo 2007/2008 A.
Leia maisIury Steiner de Oliveira Bezerra
Algoritmos genéticos (Matlab) MATLAB Optimization Toolbox Iury Steiner de Oliveira Bezerra Msc. Iury Steiner Tópicos Introdução Otimização de funções Optimization Toolbox Rotinas / Algoritmos Disponíveis
Leia mais. Os menores -2,0-1,5-1,0-0,5-5 0,0 0,5 1,0 1,5 2, = x 2y.. Os menores
1. Para cada uma das seguintes funções, verifique se ele é côncava, convexa ou nenhuma das duas, justificando em cada caso. (a) f(x, ) = 1x + (b) f(x) = 1x x (c) f(x, ) = x x 1 (a) = 1 = x = e = = = 1
Leia maisMatemática Computacional - Exercícios
Matemática Computacional - Exercícios 2 o semestre de 2005/2006 - LEE, LEGI e LERCI Programação em Mathematica 1. Calcule no Mathematica e comente os resultados: (a) 7; (b) 7.0; (c) 14406; (d) cos π 6
Leia maisOPTIMIZAÇÃO DE ESTRUTURAS
OPTIMIZAÇÃO DE ESTRUTURAS Alvaro F. M. Azevedo Email: alvaro@fe.up.pt Faculdade de Engenharia da Universidade do Porto 1 OBJECTIVO Minimizar o custo de uma solução estrutural As restrições são os requisitos
Leia maisMÉTODOS NUMÉRICOS II ENGENHARIA POLÍMEROS EXERCÍCIOS TEÓRICO-PRÁTICOS
MÉTODOS NUMÉRICOS II ENGENHARIA POLÍMEROS EXERCÍCIOS TEÓRICO-PRÁTICOS Ano lectivo de 2003/2004 1 1 Celina Pinto Leão, DPS (2004) Métodos Numéricos II - Eng a Polimeros Exercícios - Optimização não linear
Leia maisMétodo dos gradientes (ou método de máxima descida)
Método dos gradientes (ou método de máxima descida) Marina Andretta ICMC-USP 14 de setembro de 2010 Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 14 de setembro de 2010 1 / 16 Método dos gradientes
Leia maisExercícios de ANÁLISE E SIMULAÇÃO NUMÉRICA
Exercícios de ANÁLISE E SIMULAÇÃO NUMÉRICA Licenciaturas em Engenharia do Ambiente e Química 2 o Semestre de 2005/2006 Capítulo II Resolução Numérica de Equações Não-Lineares 1. Considere a equação sin(x)
Leia maisexercícios de análise numérica II
exercícios de análise numérica II lic. matemática aplicada e computação (4/5) aulas práticas - capítulo Exercício. Mostre que a soma dos polinómios base de Lagrange é a função constante. Exercício. Usando
Leia maisMétodo de Newton truncado
Método de Newton truncado Marina Andretta ICMC-USP 8 de outubro de 2018 Baseado no livro Numerical Optimization, de J. Nocedal e S. J. Wright. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear
Leia maisBioinformática Avançada e Biologia de Sistemas Optimização
Bioinformática Avançada e Biologia de Sistemas Optimização Mestrado em Bioinformática EXERCÍCIOS TEÓRICO-PRÁTICOS Ano lectivo de 2007/2008 Mestrado em Bioinformática - Optimização - A. Ismael F. Vaz -
Leia maisAnálise Matemática II - 1 o Semestre 2001/ o Exame - 25 de Janeiro de h
Instituto Superior Técnico Departamento de Matemática Secção de Álgebra e Análise Análise Matemática II - 1 o Semestre 2001/2002 2 o Exame - 25 de Janeiro de 2001-9 h Todos os cursos excepto Eng. Civil,
Leia maisIntrodução à Otimização de Processos. Prof. Marcos L Corazza Departamento de Engenharia Química Universidade Federal do Paraná
Introdução à Otimização de Processos Prof. Marcos L Corazza Departamento de Engenharia Química Universidade Federal do Paraná Otimização Não-Linear Algumas definições e conceitos preliminares: 1. Derivadas
Leia maisISCTE/FCUL - Mestrado Matemática Financeira. Aula de Janeiro de 2009 Ano lectivo: 2008/2009. Diana Aldea Mendes
ISCTE/FCUL - Mestrado Matemática Financeira Aula 4 15 de Janeiro de 2009 Ano lectivo: 2008/2009 Diana Aldea Mendes Departamento de Métodos Quantitativos, IBS - ISCTE Business School Gab. 207 AA, diana.mendes@iscte.pt,
Leia maisFaculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu
Programação Não Linear com Restrições Aula 30: Programação Não-Linear - Funções de Várias Variáveis com Restrições (Prática) Ponto Regular; Multiplicadores de Lagrange e Condições Necessárias; Condições
Leia maisMatemática Computacional. Exercícios. Teoria dos erros
Matemática Computacional Exercícios 1 o Semestre 2014/15 Teoria dos erros Nos exercícios deste capítulo os números são representados em base decimal. 1. Represente x em ponto flutuante com 4 dígitos e
Leia maisDeterminação de Trajectória Óptima em Processos de Fermentação Semi-contínua
Determinação de Trajectória Óptima em Processos de Fermentação Semi-contínua Alzira M. Teixeira da Mota Departamento de Matemática Instituto Superior de Engenharia do Porto, Instituto Politécnico do Porto
Leia maisPretende-se calcular uma aproximação para a menor raiz positiva da equação
1 Prete-se calcular uma aproimação para a menor raiz positiva da equação, pelos métodos de Newton-Raphson e ponto fio. a) Localize um intervalo que contenha a menor raiz positiva da equação dada Determinar
Leia maisLista de Exercícios 1
Lista de Exercícios 1 MAT 01169 - Cálculo Numérico 2 de Agosto de 2015 As respostas de alguns exercícios estão no final da lista. Exercício 1. Converta para binário os números abaixo: (a) (102) 10 = (b)
Leia maisExercícios de ANÁLISE E SIMULAÇÃO NUMÉRICA
Exercícios de ANÁLISE E SIMULAÇÃO NUMÉRICA Licenciaturas em Engenharia do Ambiente e Química 2 o Semestre de 2005/2006 Capítulo IV Aproximação de Funções 1 Interpolação Polinomial 1. Na tabela seguinte
Leia maisMétodos Numéricos - Notas de Aula
Métodos Numéricos - Notas de Aula Prof a Olga Regina Bellon Junho 2007 Zeros de equações transcendentes e Tipos de Métodos polinomiais São dois os tipos de métodos para se achar a(s) raízes de uma equação:
Leia maisExame de Matemática II - Curso de Arquitectura
Exame de Matemática II - Curso de ruitectura o semestre de 8 7 de Junho de 8 esponsável Henriue Oliveira a Parte. Considere a seguinte função f! de nida por f(x ; x ; x ) (x cos (x ) ; x sin (x ) ; x ).
Leia maisAula 7. Noções Básicas de Octave
CÁLCULO NUMÉRICO Aula 7 Noções Básicas de Octave COMANDOS BÁSICOS Cálculo Numérico 3/55 Símbolo >> Ao abrir o Octave, o símbolo >> aparece na Janela de Comandos. Ele indica que o programa está pronto para
Leia mais6.Elaboração de algoritmos...13
Índice de conteúdos Capítulo 1. Computação Científica...1 1.Definição...1 2.Modelo genérico...2 3.Modelo matemático...2 4.Tipos de modelos matemáticos...3 5.Modelação matemática...5 5.1.Definição (formulação)
Leia maisLista 1 - Cálculo Numérico - Zeros de funções
Lista 1 - Cálculo Numérico - Zeros de funções 1.) De acordo com o teorema de Bolzano, se uma função contínua f(x) assume valores de sinais opostos nos pontos extremos do intervalo [a, b], isto é se f(a)
Leia maisSME0300 Cálculo Numérico Aula 4
SME0300 Cálculo Numérico Aula 4 Maria Luísa Bambozzi de Oliveira marialuisa @ icmc. usp. br Sala: 3-241 Página: tidia-ae.usp.br 13 de agosto de 2015 Aula Passada Operações Aritméticas: Arredondamento a
Leia maisCÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano
CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano yaratadano@utfpr.edu.br Aula 10 04/2014 Scilab Métodos para zeros reais de funções Algoritmo do Método da Bissecção Seja f (x) contínua em [a, b] e tal
Leia mais)XQGDPHQWRVGHSURJUDPDomRPDWHPiWLFD
)XQGDPHQWRVGHSURJUDPDomRPDWHPiWLFD,QWURGXomR A grande maioria dos problemas de engenharia pode ser solucionado de diferentes formas, uma vez que um número muito grande de soluções atende aos critérios
Leia maisNotas de Aula de Cálculo Numérico
IM-Universidade Federal do Rio de Janeiro Departamento de Ciência da Computação Notas de Aula de Cálculo Numérico Lista de Exercícios Prof. a Angela Gonçalves 3 1. Erros 1) Converta os seguintes números
Leia maisForecasting e ti O i Otim Oti ização de ã d Carteiras com Matlab AULA 3
Forecasting e Otimização i de Carteiras com Matlab AULA 3 Guia de Estudo para Aula 03 Modelos Discretos Exercícios - Formulação de um modelo - Programação de modelos com for - A simulação de um modelo
Leia maisMESTRADO EM MACROECONOMIA e FINANÇAS Disciplina de Computação. Aula 06. Prof. Dr. Marco Antonio Leonel Caetano
MESTRADO EM MACROECONOMIA e FINANÇAS Disciplina de Computação Aula 06 Prof. Dr. Marco Antonio Leonel Caetano 1 Guia de Estudo para Aula 06 Aplicação de AutoValores - Usando autovalor para encontrar pontos
Leia maisCapítulo 04. Erros de arredondamento e Truncamento (Parcial)
Capítulo 04 Erros de arredondamento e Truncamento (Parcial) Objetivos do capítulo Entender a diferença entre acurácia e precisão. Aprender como quantificar o erro. Aprender a usar estimativas de erros
Leia maisMatemática Computacional Ficha 1: Capítulo /19
Matemática Computacional Ficha 1: Capítulo 1 2018/19 I. Notação e revisão da matéria e x = x x (erro de x em relação a x) e x : erro absoluto de x δ x : erro relativo de x em relação a x, onde, para x
Leia maisMÉTODOS NUMÉRICOS. ENGENHARIA ELECTRÓNICA INDUSTRIAL e de COMPUTADORES
UNIVERSIDADE DO MINHO MÉTODOS NUMÉRICOS ENGENHARIA ELECTRÓNICA INDUSTRIAL e de COMPUTADORES EXERCÍCIOS PRÁTICOS- 1 a parte Ano lectivo de 2004/2005 Exercícios práticos - CONUM Solução de uma equação não
Leia maisFrequência / Exame de 1. a Época
ISCTE - Instituto Universitário de Lisboa Licenciaturas: Gestão, Finanças e Contabilidade, Gestão e Engenharia Industrial, Marketing e Economia Frequência / Exame de 1. a Época OPTIMIZAÇÃO / MATEMÁTICA
Leia maisx n+1 = 1 2 x n (2 valores) Considere a equação recursiva no modelo de Fisher, Wright e Haldane
.9.8.7.6.5.4.3.2.1 1 22/11/211 1 o teste A41N1 - Análise Matemática - BIOQ Nome... N o... 1. (2 valores) Calcule a soma da série 9 1 + 9 1 + 9 1 +... 9 1 + 9 1 + 9 1 + = 9 1 1 + 1 1 + 1 1 + 1 «1 +... =
Leia maisUNIVERSIDADE FEDERAL DE PERNAMBUCO Lista de Exercícios / Cálculo Numérico 1ª Unidade
1) Analise as alternativas abaixo e marque V para verdadeiro e F para falso. No segundo caso, explique como as tornaria verdadeiras: ( ) O método das secantes é utilizado para solucionar um problema de
Leia maisCÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano
CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano yaratadano@utfpr.edu.br Aula 7 Matlab Noções Básicas de MATLAB INTRODUÇÃO Cálculo Numérico 3/55 Current Folder Window Local onde as operações podem ser
Leia maisCapítulo 1 - Erros e Aritmética Computacional
Capítulo 1 - Erros e Carlos Balsa balsa@ipb.pt Departamento de Matemática Escola Superior de Tecnologia e Gestão de Bragança 2 o Ano - Eng. Civil e Electrotécnica Carlos Balsa Métodos Numéricos 1/ 21 Sumário
Leia maisCálculo Numérico. Resumo e Exercícios P1
Cálculo Numérico Resumo e Exercícios P1 Fórmulas e Resumo Teórico Parte 1 Aritmética de ponto flutuante Operar com o número de algarismos significativos exigido. Arredondar após cada conta. Método de escalonamento
Leia maisCÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano
CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano yaratadano@utfpr.edu.br Aula 7 Matlab Noções Básicas de MATLAB INTRODUÇÃO Cálculo Numérico 3/55 Current Folder Window Local onde as operações podem ser
Leia mais2.12 Sistemas de equações não-lineares
.1 Sistemas de equações não-lineares Problema.9 Usando o método de Horner, construa o algoritmo correspondente ao método de Newton para a determinação de zeros de funções polinomiais: p(x) = a nx n + a
Leia maisEXAMES DE ANÁLISE MATEMÁTICA III
EXAMES DE ANÁLISE MATEMÁTICA III Jaime E. Villate Faculdade de Engenharia Universidade do Porto 22 de Fevereiro de 1999 Resumo Estes são alguns dos exames e testes da disciplina de Análise Matemática III,
Leia maisResoluções do pteste(matlab).pdf
Resoluções do pteste(matlab).pdf 1. Resolução do pteste1 pelo fminsearch do MATLAB function [f] = pteste1(x) f=max((x(1)+x(2)),abs(x(1)*x(2))); >> x0=[1;1]; >> [x,fval,exitflag,output]=fminsearch('pteste1',x0)
Leia maisAproximação de uma função pelo polinómio de Taylor.
Aproximação de uma função pelo polinómio de Taylor. Funções relacionadas do Matlab: 1. Polinómios estas funções encontram-se no Interpolation and Polynomials toolbox função POLYVAL: avalia um polinómio
Leia maisEquações não lineares
DMPA IME UFRGS Cálculo Numérico Índice Raizes de polinômios 1 Raizes de polinômios 2 raizes de polinômios As equações não lineares constituídas por polinômios de grau n N com coeficientes complexos a n,a
Leia maisEquações não lineares Universidade de Coimbra Professor João Soares 2008/2009
Matemática Computacional Equações não lineares Universidade de Coimbra 13 pages Professor João Soares 2008/2009 1. Localize graficamente (à mão ou em matlab) as soluções das seguintes equações e demonstre,
Leia mais