Bioinformática Avançada e Biologia de Sistemas Optimização
|
|
- Lucas Alves Laranjeira
- 6 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 2009/2010 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 1 / 218
2 Conteúdo 1 Introdução 2 Optimização 3 Optimização não linear sem restrições 4 R - Introdução 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o R 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 R A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 2 / 218
3 Introdução Conteúdo 1 Introdução 2 Optimização 3 Optimização não linear sem restrições 4 R - Introdução 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o R 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 R A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 3 / 218
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 09/10 4 / 218
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 09/10 5 / 218
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 R - Fichas TPs e acetatos disponíveis na página; A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 6 / 218
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 09/10 7 / 218
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 09/10 8 / 218
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 09/10 9 / 218
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. 4 Introdução à optimização não linear (sem restrições). Definições e condições de optimalidade. 5 Introdução ao R. Definição de vectores e matrizes. Codificação de funções matemáticas e operadores. 6 Método de Newton e quasi-newton. Modelação de casos em R (função nlm e optim). 7 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. 8 Modelação de casos e uso de R (funções solvelp, constroptim e Rdonlp2). 9 Modelação de casos e uso de R (funções solvelp, constroptim e Rdonlp2). 10 Revisões e Ficha de avaliação. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 10 / 218
11 Optimização Conteúdo 1 Introdução 2 Optimização 3 Optimização não linear sem restrições 4 R - Introdução 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o R 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 R A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 11 / 218
12 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 09/10 12 / 218
13 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 09/10 13 / 218
14 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 09/10 14 / 218
15 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 09/10 15 / 218
16 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 09/10 16 / 218
17 Optimização Classificação quanto à solução pretendida Óptimo local (determinação de um minimizante local ou relativo) Óptimo global (determinação de um minimizante global ou absoluto) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 17 / 218
18 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 09/10 18 / 218
19 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 09/10 19 / 218
20 Optimização não linear sem restrições Conteúdo 1 Introdução 2 Optimização 3 Optimização não linear sem restrições 4 R - Introdução 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o R 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 R A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 20 / 218
21 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 09/10 21 / 218
22 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 09/10 22 / 218
23 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 09/10 23 / 218
24 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 09/10 24 / 218
25 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 09/10 25 / 218
26 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 09/10 26 / 218
27 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 09/10 27 / 218
28 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 09/10 28 / 218
29 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 09/10 29 / 218
30 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 09/10 30 / 218
31 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 09/10 31 / 218
32 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 09/10 32 / 218
33 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 09/10 33 / 218
34 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 09/10 34 / 218
35 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 09/10 35 / 218
36 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 09/10 36 / 218
37 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 09/10 37 / 218
38 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 09/10 38 / 218
39 R - Introdução Conteúdo 1 Introdução 2 Optimização 3 Optimização não linear sem restrições 4 R - Introdução 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o R 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 R A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 39 / 218
40 R - Introdução O que é o R? R R pode ser considerado como uma implementação da linguagem S desenvolvida nos laboratorios da Bell por Rick Becker, John Chambers e Allan Wilks. O ambiente R (linguagem de programação, GUI, etc..) é usado por muitas pessoas como um sistema estatístico. Embora seja usado para a estatística o ambiente R pode ser visto como um sistema em que muitas das técnicas modernas de estatística se encontram implementadas. Algumas das técnicas são fornecidas com o sistema (built in) enquanto que outras são fornecidas como pacotes adicionais (packages). A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 40 / 218
41 R - Introdução R - Conteúdo 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 R possui algumas funções para optimização disponíveis na versão base, opcionais como pacotes e outras que se podem obter na Internet. Funções na versão base uniroot - Determinação de zeros de funções unidimensionais. optimize - Optimização unidimensional sem restrições. optim - Optimização multidimensional sem restrições. nlm - Optimização multidimensional sem restrições com algoritmo do tipo Newton. constroptim - optimização multidimensional com restrições lineares. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 41 / 218
42 R - Introdução Pacotes necessários (usados). Disponíveis na CRAN linprog (solvelp - Programação linear). Instalação usando o Menu Packages->Install package(s).... Na web Rdonlp2 (donlp2 - Optimização multidimensional com restrições). Obtém-se em arumat.net/rdonlp2. Algencan - Possui uma interface de ligação ao R, mas é necessário compilar o código fornecido. Pode-se obter em Carregar os pacotes Não esquecer de fazer Packages->Load package. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 42 / 218
43 R - Introdução Só existe o R? Ferramentas pouco similares Outros programas pouco similares são o MATLAB, Mathematica e o Maple Ferramentas similares Linguagem de programação Python. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 43 / 218
44 R - Introdução Ambiente R (R GUI) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 44 / 218
45 R - Introdução Operações básicas Aritméticas > 2+3*2-1.5*2^2 [1] 2 Variáveis built-in constantes > pi [1] Expressões (com o recurso a funções matemáticas) > a <- 2*sin(pi)^2+3*exp(1)+sqrt(2)+cosh(2) > a [1] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 45 / 218
46 R - Introdução Operações básicas Ajuda > help( acos ) É aberta uma nova janela com a ajuda referentes às funções trigonométricas. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 46 / 218
47 R - Introdução Operações básicas Formatos Precisão O R por defeito imprime apenas 7 casa decimais, mas essa opção (entre outras) pode ser modificada. > options(digits=15) > pi [1] > options() $add.smooth [1] TRUE $check.bounds [1] FALSE $chmhelp [1] TRUE... A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 47 / 218
48 R - Introdução Operações básicas com vectores Vectores > x <- c(10.4, 5.6, 3.1, 6.4, 21.7) > x [1] > 1/x [1] > y <- c(x, 0, x) > y [1] Um vector é definido como a concatenação de vários escalares. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 48 / 218
49 R - Introdução Operações básicas com vectores Operações com vectores > v <- 2*x + y + 1 Warning message: In 2 * x + y : longer object length is not a multiple of shorter object leng > v <- x*c(2, 3, 4, 5, 6)+1 > v [1] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 49 / 218
50 R - Introdução Operações básicas com arrays e matrizes Operações com arrays Um vector para ser considerado um array tem que ser definida a sua dimensão. > dim(v) <- c(1,5) > v [,1] [,2] [,3] [,4] [,5] [1,] > dim(v) <- c(5,1) > v [,1] [1,] 21.8 [2,] 17.8 [3,] 13.4 [4,] 33.0 [5,] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 50 / 218
51 R - Introdução Operações básicas com vectores e matrizes Função para definição de arrays e matrizes As funções matrix() e array() permitem uma forma mais rápida e natural de definir matrizes e arrays. > x <- array(1:20, dim=c(4,5)) > x [,1] [,2] [,3] [,4] [,5] [1,] [2,] [3,] [4,] > i <- array(c(1:3,3:1), dim=c(3,2)) > i [,1] [,2] [1,] 1 3 [2,] 2 2 [3,] 3 1 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 51 / 218
52 R - Introdução Operações básicas com vectores e matrizes Visualização e atribuição > x[i] [1] > x[i] <- 0 > x [,1] [,2] [,3] [,4] [,5] [1,] [2,] [3,] [4,] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 52 / 218
53 R - Introdução Operações básicas com vectores e matrizes Repetição de valores > Z <- array(0, c(3,4,2)) > Z,, 1 [,1] [,2] [,3] [,4] [1,] [2,] [3,] ,, 2 [,1] [,2] [,3] [,4] [1,] [2,] [3,] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 53 / 218
54 R - Introdução Operações básicas com vectores e matrizes Operações com matrizes e vectores > I=matrix(1,2,2) > x=array(c(1,2),dim=c(2,1)) > Ix <- I %*% x > Ix [,1] [1,] 3 [2,] 3 > I*x Error in I * x : non-conformable arrays A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 54 / 218
55 R - Introdução Operações básicas com vectores e matrizes Operações com vectores Funções > Ix [,1] [1,] 3 [2,] 3 > cos(ix) [,1] [1,] [2,] Operações com vectores > a=array(1:3,dim=c(1,3)) > b=array(4:6,dim=c(1,3)) > a+b [,1] [,2] [,3] [1,] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 55 / 218
56 R - Introdução Operações básicas com vectores e matrizes Operações elemento a elemento > a*b [,1] [,2] [,3] [1,] Operações com vectores > 2*a+b^2 [,1] [,2] [,3] [1,] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 56 / 218
57 R - Introdução Operações básicas com vectores e matrizes Operações com vectores > a %*% b Error in a %*% b : non-conformable arguments > a %*% aperm(b) [,1] [1,] 32 Operações com vectores > aperm(a) %*% b [,1] [,2] [,3] [1,] [2,] [3,] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 57 / 218
58 R - Introdução Operações básicas com vectores e matrizes Matriz > A<-matrix(1:6,3,2) > A [,1] [,2] [1,] 1 4 [2,] 2 5 [3,] 3 6 Matriz transposta > aperm(a) [,1] [,2] [,3] [1,] [2,] Matriz 2 3. Matriz 3 2. O R é case sensitive, i.e., A é diferente de a. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 58 / 218
59 R - Introdução Operações básicas com vectores e matrizes Operações com matrizes > B<-matrix(6:1,3,2) > B [,1] [,2] [1,] 6 3 [2,] 5 2 [3,] 4 1 > A %*% aperm(b) [,1] [,2] [,3] [1,] [2,] [3,] > aperm(a) %*% B [,1] [,2] [1,] [2,] Soma > A+B [,1] [,2] [1,] 7 7 [2,] 7 7 [3,] 7 7 > A %+% B Error: could not find function "%+%" A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 59 / 218
60 R - Introdução 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 09/10 60 / 218
61 R - Introdução Resolução de Sistemas lineares Um exemplo (diferente do anterior) > A<-matrix(c(1,2,3,5,6,7,3,4,7),3,3) > b<-array(1:3,dim=c(3,1)) > x <- solve(a,b) > x [,1] [1,] e+00 [2,] e-17 [3,] e-17 > A%*%x-b [,1] [1,] 0 [2,] 0 [3,] 0 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 61 / 218
62 R - Introdução Inversa de uma matriz O exemplo anterior > A<-matrix(c(1,2,3,5,6,7,3,4,7),3,3) > solve(a) [,1] [,2] [,3] [1,] [2,] [3,] > A%*%solve(A) [,1] [,2] [,3] [1,] e e e-16 [2,] e e e+00 [3,] e e e+00 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 62 / 218
63 R - Introdução Resolução de Sistemas lineares Curiosidades > absdeta <- prod(svd(a)$d) > absdeta [1] 8 > det(a) [1] -8 svd - singular value decomposition - retorna uma lista em que d são os elementos da diagonal. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 63 / 218
64 R - Introdução Acesso a elementos de vectores e matrizes [1] [1] e e e e-01-9 Acesso a vectores > x <- seq(-pi, pi, by=.5) > x [7] [13] > y <- sin(x) > y [6] e e e e-01 9 [11] e e e-01 > y[2:3] [1] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 64 / 218
65 R - Introdução Acesso a elementos de vectores e matrizes Acesso a matrizes > A <- matrix(seq(length=10, from=-5, by=.2),5,2) > A [,1] [,2] [1,] [2,] [3,] [4,] [5,] > A[2:4,1] [1] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 65 / 218
66 R - Introdução Matrizes e vectores especiais Zeros e uns > matrix(0,2,2) [,1] [,2] [1,] 0 0 [2,] 0 0 > matrix(1,2,2) [,1] [,2] [1,] 1 1 [2,] 1 1 Identidade - Aleatórias > diag(3) [,1] [,2] [,3] [1,] [2,] [3,] > x <- rnorm(50) > X <- matrix(rnorm(4),2,2) > X [,1] [,2] [1,] [2,] > Y <- matrix(runif(4),2,2) > Y [,1] [,2] [1,] [2,] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 66 / 218
67 R - Introdução Modificação de elementos em vectores e matrizes Atribuições > A <- matrix(1,3,3) > A[1:2,1] <- 2 > A [,1] [,2] [,3] [1,] [2,] [3,] > A[3,c(1,3)]<-4 > A [,1] [,2] [,3] [1,] [2,] [3,] Troca de valores > A[c(1,2),1]<-2*A[c(1,2),1] > A [,1] [,2] [,3] [1,] [2,] [3,] > A[2:3,3]=A[3:2,3] > A [,1] [,2] [,3] [1,] [2,] [3,] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 67 / 218
68 R - Introdução Vectores lógicos Vectores lógicos > ages <- c(12, 11, 18, 19, 11, 60, 65, 71, 7, 10) > adults <- ages >= 18 > old <- ages >=65 > adults [1] FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE FALSE FALSE > old [1] FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE > active <- adults &!old > active [1] FALSE FALSE TRUE TRUE FALSE TRUE FALSE FALSE FALSE FALSE > totaladults <- sum(adults*ages) > totaladults [1] 233 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 68 / 218
69 R - Introdução Operadores lógicos 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 09/10 69 / 218
70 R - Introdução Valores em falta Not a Number (NaN) e infinito (Inf) > x <- c(1, 2, NaN, 0) > y <- c(1, 0, 2, 0) > z <- x/y > z [1] 1 Inf NaN NaN > is.na(z) [1] FALSE FALSE TRUE TRUE > is.nan(z) [1] FALSE FALSE TRUE TRUE > is.finite(z) [1] TRUE FALSE FALSE FALSE > is.infinite(z) [1] FALSE TRUE FALSE FALSE A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 70 / 218
71 R - Introdução Funções básicas Funções Função max min sum mean sd 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 09/10 71 / 218
72 R - Introdução Mensagens e display de variáveis Ficheiros > i <- 1:3 > X <- matrix(1:10,ncol=5) > write(x, file="exp.txt", sep = "\t") > write(cbind(i,x[1,i]), file="exp.txt", ncolumns=2, append=true, sep = "\t") Conteúdo de exp.txt A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 72 / 218
73 R - Introdução União de matrizes > i [1] > x [,1] [,2] [,3] [,4] [,5] [1,] [2,] > c(i,x[1,i]) [1] > cbind(i,x[1,i]) i [1,] 1 1 [2,] 2 3 [3,] 3 5 > rbind(i,x[1,i]) [,1] [,2] [,3] i A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 73 / 218 União de matrizes
74 R - Introdução Definição de funções > fx <- function(x) x^2+3+cos(x) > fx function(x) x^2+3+cos(x) > fx(2) [1] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 74 / 218
75 R - Introdução Argumentos de funções > fun1 <- function(data, data.frame, graph, limit) { [corpo da função omitido] } A função pode então ser chamada de diversas formas equivalentes: > ans <- fun1(d, df, TRUE, 20) > ans <- fun1(d, df, graph=true, limit=20) > ans <- fun1(data=d, limit=20, graph=true, data.frame=df) Também podem ser definidos valores por defeito para determinados parâmetros > fun1 <- function(data, data.frame, graph=true, limit=20) {.. Podendo a função ser chamada das diversas formas: > ans <- fun1(d, df) > ans <- fun1(d, df, limit=10) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 75 / 218
76 R - Introdução 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.r. Ficheiro bioinf.r i <- 1:3 X <- matrix(1:10,ncol=5) Execução > source("bioinf.r") > X [,1] [,2] [,3] [,4] [,5] [1,] [2,] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 76 / 218
77 R - Introdução Desenho de gráficos 2D Plot > x <- seq(-pi,pi,0.1) > plot(x,sin(x)) > plot(x,sin(x), l ) > plot(x,sin(x), l,ylab= sin(x) ) > title(main= O meu primeiro gráfico, xlab= x, ylab= sin(x) ) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 77 / 218
78 R - Introdução Desenho de gráficos 2D O meu primeiro gráfico sin(x) x A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 78 / 218
79 R - Introdução Desenho de gráficos 2D Sobreposição > x<-seq(0,4*pi,0.1) > plot(x,sin(x), l,ylab= sin(x)+cos(x) ) > par(new=true) > plot(x,cos(x), l,ylab= ) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 79 / 218
80 R - Introdução Desenho de gráficos 2D sin(x)+cos(x) A. Ismael F. Vaz (UMinho) Optimização x Bioinformática 09/10 80 / 218
81 R - Introdução Desenho de gráficos 2D Usando marcas e tipos de linhas > plot(x,cos(x), l,lty=2) > par(lty=2) > plot(x,cos(x), l ) Função par A função par permite modificar diversos parâmetros. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 81 / 218
82 R - Introdução Desenho de gráficos 2D cos(x) A. Ismael F. Vaz (UMinho) Optimização x Bioinformática 09/10 82 / 218
83 R - Introdução Desenho de gráficos 3D Plot3 > x <- seq(-10, 10, length= 30) > y <- x > f <- function(x,y) { r <- sqrt(x^2+y^2); 10 * sin(r)/r } > z <- outer(x, y, f) > z[is.na(z)] <- 1 > op <- par(bg = "white") > persp(x, y, z, theta = 30, phi = 30, expand = 0.5, col = "lightblue") A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 83 / 218
84 R - Introdução Desenho de gráficos 3D z y x A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 84 / 218
85 R - Introdução Desenho de curvas de nível Contour > x=seq(-pi,pi,0.1) > y=seq(0,pi,0.1) > fx <- function(x,y) {sin(x^2)+2*sin(y)} > z <- outer(x,y,fx) > contour(x,y,z) > contour(x,y,z,nlevel=50) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 85 / 218
86 0 2 R - Introdução 2 1 Desenho de curvas de nível A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 86 / 218
87 R - Introdução Desenho de curvas de nível A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 87 / 218
88 R - Introdução Funções R > open.account <- function(total) { + list( + deposit = function(amount) { + if(amount <= 0) + stop("deposits must be positive!\n") + total <<- total + amount + cat(amount, "deposited. Your balance is", total, "\n\n") + }, + withdraw = function(amount) { + if(amount > total) + stop("you donšt have that much money!\n") + total <<- total - amount + cat(amount, "withdrawn. Your balance is", total, "\n\n") + }, + balance = function() { + cat("your balance is", total, "\n\n") + })} A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 88 / 218
89 R - Introdução Funções R > ross <- open.account(100) > robert <- open.account(200) > ross$withdraw(30) 30 withdrawn. Your balance is 70 > ross$balance() Your balance is 70 > robert$balance() Your balance is 200 A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 89 / 218
90 R - Introdução Funções R O if Função > fx <- function(x) { + if(x>0) x else -x + } > fx(2) [1] 2 > fx(-2) [1] 2 > fx(c(2,-2)) [1] 2-2 Warning message: In if (x > 0) x else -x : the condition has length > 1 and only the first element will be used A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 90 / 218
91 R - Introdução Funções R O if Função Cont. > x <- c(6:-4) > sqrt(x) [1] [9] NaN NaN NaN Warning message: In sqrt(x) : NaNs produced > sqrt(ifelse(x >= 0, x, NA)) [1] [9] NA NA NA > ifelse(x >= 0, x, NA) [1] NA NA NA NA > ifelse(x >= 0, x, 0) [1] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 91 / 218
92 R - Introdução Funções R O for Execução > for(i in 1:5) print(1:i) [1] 1 [1] 1 2 [1] [1] [1] A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 92 / 218
93 R - Introdução Funções R O for Execução > for(n in c(2,5,10,20,50)) { + x <- stats::rnorm(n) + cat(n,":", sum(x^2),"\n") + } 2 : : : : : A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 93 / 218
94 R - Introdução Zeros de funções A função uniroot > f <- function (x) sin(x)+2*cos(x) > xmin <- uniroot(f, c(0, pi), tol = ) > xmin $root [1] $f.root [1] e-06 $iter [1] 5 $estim.prec [1] 5e-05 O intervalo tem que obedecer a f(lower) f(upper) 0. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 94 / 218
95 Método de Segurança de Newton Conteúdo 1 Introdução 2 Optimização 3 Optimização não linear sem restrições 4 R - Introdução 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o R 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 R A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/10 95 / 218
96 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 09/10 96 / 218
97 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 09/10 97 / 218
98 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 09/10 98 / 218
99 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 09/10 99 / 218
100 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 09/ / 218
101 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 09/ / 218
102 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 09/ / 218
103 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 09/ / 218
104 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 09/ / 218
105 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 09/ / 218
106 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 09/ / 218
107 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 09/ / 218
108 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 09/ / 218
109 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 09/ / 218
110 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 09/ / 218
111 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 09/ / 218
112 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 09/ / 218
113 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 09/ / 218
114 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 09/ / 218
115 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 09/ / 218
116 Método quasi-newton Conteúdo 1 Introdução 2 Optimização 3 Optimização não linear sem restrições 4 R - Introdução 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o R 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 R A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/ / 218
117 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 09/ / 218
118 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 09/ / 218
119 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 09/ / 218
120 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 09/ / 218
121 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 09/ / 218
122 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 09/ / 218
123 Método quasi-newton Cont. ( d (2) = H (2) g (2) = ( ) d (2) = Procura unidimensional... ) ( ) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/ / 218
124 Optimização sem restrições com o R Conteúdo 1 Introdução 2 Optimização 3 Optimização não linear sem restrições 4 R - Introdução 5 Método de Segurança de Newton 6 Método quasi-newton 7 Optimização sem restrições com o R 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 R A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/ / 218
125 Optimização sem restrições com o R Funções R (base) O R fornece um conjunto de funções para optimização linear e não linear das quais se destacam: uniroot - Zero de funções unidimensionais; optimize - Optimização de uma função unidimensional num intervalo. nlm - Minimização usando um algoritmo do tipo Newton; optim - Função genérica para optimização baseada nos algoritmos de Nelder-Mead, quasi-newton e gradientes conjugados; A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/ / 218
126 Optimização sem restrições com o R Zeros de funções A função uniroot > f <- function (x) sin(x)+2*cos(x) > xmin <- uniroot(f, c(0, pi), tol = ) > xmin $root [1] $f.root [1] e-06 $iter [1] 5 $estim.prec [1] 5e-05 O intervalo tem que obedecer a f(lower) f(upper) 0. A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/ / 218
127 Optimização sem restrições com o R Exemplo não linear unidimensional Um navio encontra-se atracado num porto. A distância h, de um dado ponto do casco do navio ao fundo do mar, varia com a maré. Admita que h é dada, em função do tempo x, por h(x) = 10 3 cos(2x). Qual a distância desse ponto do casco ao fundo do mar no momento da maré alta? Formulação do problema Sabendo que x >= 0. max x R h(x) 10 3 cos(2x) A. Ismael F. Vaz (UMinho) Optimização Bioinformática 09/ / 218
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 - 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 maisII. Funções de uma única variável
II. Funções de uma única variável 1 II.1. Conceitos básicos A otimização de de funções de de uma única variável consiste no no tipo mais elementar de de otimização. Importância: Tipo de problema encontrado
Leia maisf(1) = 6 < 0, f(2) = 1 < 0, f(3) = 16 > 0 x [2, 3].
1 As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia e não têm a intenção de substituir o livro-texto, nem qualquer outra bibliografia. Métodos Numéricos Para Solução
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 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 maisAula 10 Sistemas Não-lineares e o Método de Newton.
Aula 10 Sistemas Não-lineares e o Método de Newton MS211 - Cálculo Numérico Marcos Eduardo Valle Departamento de Matemática Aplicada Instituto de Matemática, Estatística e Computação Científica Universidade
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 maisResolução de sistemas de equações lineares: Método do Gradiente
Resolução de sistemas de equações lineares: Método do Gradiente Marina Andretta ICMC-USP 24 de março de 2015 Marina Andretta (ICMC-USP) sme0301 - Métodos Numéricos para Engenharia I 24 de março de 2015
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 maisMÉTODOS NUMÉRICOS C. Mestrado de ciclo integrado em. Engenharia de COMUNICAÇÕES EXERCÍCIOS TEÓRICO-PRÁTICOS
MÉTODOS NUMÉRICOS C Mestrado de ciclo integrado em Engenharia de COMUNICAÇÕES EXERCÍCIOS TEÓRICO-PRÁTICOS Ano lectivo de 2007/2008 1 ERROS. SOLUÇÃO DE UMA EQUAÇÃO NÃO LINEAR. 1 1 Erros. Solução de uma
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 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 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 maisErros META OBJETIVOS. 2.1 Erros
Erros META Conceituar o erro, as fontes e formas de expressar estes erros, propagação dos erros em operações aritméticas fórmula geral e problema inverso. OBJETIVOS Resolver problemas práticos de erros
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 maisDerivadas direcionais Definição (Derivadas segundo um vector): f : Dom(f) R n R e P 0 int(dom(f)) então
Derivadas direcionais Definição (Derivadas segundo um vector): f : Dom(f) R n R e P 0 int(dom(f)) então Seja D v f(p 0 ) = lim λ 0 f(p 0 + λ v) f(p 0 ) λ v representa a derivada direcional de f segundo
Leia maisPolinómio e série de Taylor
Instituto Superior Técnico Departamento de Matemática Secção de Álgebra e Análise ANÁLISE MATEMÁTICA II - o Semestre 05/06 Exercícios Suplementares (Eng a Física Tecnológica, Matemática Aplicada e Computação
Leia maisIteração e Pontos Fixos
Iteração e Pontos Fixos Iteração é um dos pontos chave da programação numérica. Iterar consiste em repetir uma mesma operação diversas vezes levando a uma aproximação cada vez melhor da solução exata.
Leia maisétodos uméricos SISTEMAS DE EQUAÇÕES LINEARES (Continuação) Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA
étodos uméricos SISTEMAS DE EQUAÇÕES LINEARES (Continuação) Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA UNIVERSIDADE DE JOÃO DEL-REI PRÓ-REITORIA DE PESQUISA CENTRO
Leia maisEXERCÍCIOS DE MATEMÁTICA COMPUTACIONAL: PRIMEIRO BIMESTRE: EDGARD JAMHOUR. QUESTÃO 1: Indique as afirmativas verdadeiras.
EXERCÍCIOS DE MATEMÁTICA COMPUTACIONAL: PRIMEIRO BIMESTRE: EDGARD JAMHOUR QUESTÃO 1: Indique as afirmativas verdadeiras. ( ) O número Pi não pode ser representado de forma exata em sistemas numéricos de
Leia maisUNIVERSIDADE FEDERAL DO PARANÁ DISCIPLINA DE MÉTODOS NUMÉRICOS 2º SEMESTRE 2004 Professora Aurora T. R. Pozo 1ª LISTA DE EXERCÍCIOS
UNIVERSIDADE FEDERAL DO PARANÁ DISCIPLINA DE MÉTODOS NUMÉRICOS 2º SEMESTRE 2004 Professora Aurora T. R. Pozo 1ª LISTA DE EXERCÍCIOS Representação de Números Reais e Erros 1. Converta os seguintes números
Leia mais= f(0) D2 f 0 (x, x) + o( x 2 )
6 a aula, 26-04-2007 Formas Quadráticas Suponhamos que 0 é um ponto crítico duma função suave f : U R definida sobre um aberto U R n. O desenvolvimento de Taylor de segunda ordem da função f em 0 permite-nos
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 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 04/2014 Zeros reais de funções Parte 1 Objetivo Determinar valores aproximados para as soluções (raízes) de equações da
Leia maisA. Equações não lineares
A. Equações não lineares 1. Localização de raízes. a) Verifique se as equações seguintes têm uma e uma só solução nos intervalos dados: i) (x - 2) 2 ln(x) = 0, em [1, 2] e [e, 4]. ii) 2 x cos(x) (x 2)
Leia maisTP062-Métodos Numéricos para Engenharia de Produção Zeros: Introdução
TP062-Métodos Numéricos para Engenharia de Produção Zeros: Introdução Prof. Volmir Wilhelm Curitiba, 2015 Os zeros de uma função são os valores de x que anulam esta função. Este podem ser Reais ou Complexos.
Leia maisMatemática Computacional - Exercícios
Matemática Computacional - Exercícios o semestre de 009/00 - LEMat e MEQ Resolução de sistemas lineares. Inuência dos erros de arredondmento. Consideremos o sistema linear A x = b, onde 0 6 0 A = 0 6,
Leia maisConsidere a função f(x). Para algum x a f (x) pode não existir. Suponha que. Max f(x) s. a a x b
Considere a função f(x). Para algum x a f (x) pode não existir. Suponha que se queira resolver o seguinte PPNL: Max f(x) s. a a x b Pode ser que f (x) não exista ou que seja difícil resolver a equação
Leia maisCapítulo III: Sistemas de equações. III.1 - Condicionamento de sistemas lineares
EXERCÍCIOS DE MATEMÁTICA COMPUTACIONAL Capítulo III: Sistemas de equações III1 - Condicionamento de sistemas lineares 1 Seja 1 0 0 10 6 e considere o sistema Ax = b, com b = 1 10 6 T, que tem por solução
Leia maisCURSO INTRODUÇÃO AO R
CURSO INTRODUÇÃO AO R Aula 2 Linguagem R Luis Iván Ortiz Valencia IESC - UFRJ 2011 1 Tópicos 1. Operações básicas com números. 2. Estruturas básicas do R. 3. Objetos de estrutura Vetor. 4. Objetos de estrutura
Leia maisMétodos iterativos dão-nos uma valor aproximado para s. Sequência de valores de x que convergem para s.
Análise Numérica 1 Resolução de equações não lineares ou Cálculo de zeros de funções Problema: Dada a função f(x) determinar o valor s tal que f(s) = 0. Slide 1 Solução: Fórmulas exemplo: fórmula resolvente
Leia maisDesenho Óptimo de Estações de Águas Residuais Através da Modelação de Funções Custo
Isabel A. C. P. Espírito Santo, 2 de Julho de 2007 1 Desenho Óptimo de Estações de Águas Residuais Através da Modelação de Funções Custo Isabel Alexandra Costa Pinho do Espírito Santo Orientação: Edite
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 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 maisMAP CÁLCULO NUMÉRICO (POLI) Lista de Exercícios sobre Zeros de Funções
MAP 2121 - CÁLCULO NUMÉRICO (POLI) Lista de Exercícios sobre Zeros de Funções 1: Mostre que a função f(x) = x 2 4x + cos x possui exatamente duas raízes: α 1 [0, 1.8] e α 2 [3, 5]. Considere as funções:
Leia maisLista de exercícios de MAT / II
1 Lista de exercícios de MAT 271-26 / II 1. Converta os seguintes números da forma decimal para a forma binária:x 1 = 37; x 2 = 2347; x 3 =, 75; x 4 =(sua matrícula)/1; x 5 =, 1217 2. Converta os seguintes
Leia maisAjuste de mínimos quadrados
Capítulo 5 Ajuste de mínimos quadrados 5 Ajuste de mínimos quadrados polinomial No capítulo anterior estudamos como encontrar um polinômio de grau m que interpola um conjunto de n pontos {{x i, f i }}
Leia maisCCI-22 LISTA DE EXERCÍCIOS
CCI-22 LISTA DE EXERCÍCIOS Capítulos 1 e 2: 1) Considere floats com 4 dígitos decimais de mantissa e expoentes inteiros entre -5 e 5. Sejam X =,7237.1 4, Y =,2145.1-3, Z =,2585.1 1. Utilizando um acumulador
Leia maisAutovalores e Autovetores
Algoritmos Numéricos II / Computação Científica Autovalores e Autovetores Lucia Catabriga 1 1 DI/UFES - Brazil Junho 2016 Introdução Ideia Básica Se multiplicarmos a matriz por um autovetor encontramos
Leia mais. (1) Se S é o espaço vetorial gerado pelos vetores 1 e,0,1
QUESTÕES ANPEC ÁLGEBRA LINEAR QUESTÃO 0 Assinale V (verdadeiro) ou F (falso): (0) Os vetores (,, ) (,,) e (, 0,) formam uma base de,, o espaço vetorial gerado por,, e,, passa pela origem na direção de,,
Leia maisResolução de Sistemas Lineares. Ana Paula
Resolução de Sistemas Lineares Sumário 1 Introdução 2 Alguns Conceitos de Álgebra Linear 3 Sistemas Lineares 4 Métodos Computacionais 5 Sistemas Triangulares 6 Revisão Introdução Introdução Introduçã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 maisCAP. II RESOLUÇÃO NUMÉRICA DE EQUAÇÕES NÃO LINEARES
CAP. II RESOLUÇÃO NUMÉRICA DE EQUAÇÕES NÃO LINEARES Vamos estudar alguns métodos numéricos para resolver: Equações algébricas (polinómios não lineares; Equações transcendentais equações que envolvem funções
Leia maisInstituto Politécnico de Tomar Escola Superior de Tecnologia de Tomar Área Interdepartamental de Matemática
Instituto Politécnico de Tomar Escola Superior de Tecnologia de Tomar Área Interdepartamental de Matemática Análise Numérica Licenciaturas em Engenharia Ambiente,Civil e Química I - Equações Não Lineares.
Leia maisf(h) δ h p f(x + h) f(x) (x) = lim
Capítulo 6 Derivação numérica Nesta seção vamos desenvolver métodos para estimar a derivada de uma função f calculada em um ponto x, f (x, a partir de valores conecidos de f em pontos próximos ao ponto
Leia maisOptimização Não-linear
Optimização Não-linear Problemas de optimização não-linear A função a minimizar (maximizar) não é linear Exemplo: Z=43x 2 +log(x 2 )*sin(x x3 ), com x 3 -x 2! < 0 Não existem métodos universais para este
Leia maisNúmeros de Fibonacci. f n = f n 1 + f n 2. A condição inicial é de que há um par no primeiro mês e dois pares no segundo mês: f 1 = 1, f 2 = 2
Números de Fibonacci Leonardo Pisano Fibonacci nasceu por volta de 1170 e morreu por volta de 1250 em Pisa, atualmente pertencente à Itália. Durante sua vida ele viajou pela Europa e pelo Norte da África,
Leia maisCapítulo 4 - Valores e Vectores Próprios
Capítulo 4 - Valores e Vectores Próprios Carlos Balsa balsa@ipb.pt Departamento de Matemática Escola Superior de Tecnologia e Gestão de Bragança Matemática I - 1 o Semestre 2011/2012 Matemática I 1/ 17
Leia maisétodos uméricos ZEROS DE FUNÇÕES DE UMA OU MAIS VARIÁVEIS Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA
étodos uméricos ZEROS DE FUNÇÕES DE UMA OU MAIS VARIÁVEIS Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA UNIVERSIDADE DE JOÃO DEL-REI PRÓ-REITORIA DE PESQUISA CENTRO
Leia maisESCOLA SECUNDÁRIA JERÓNIMO EMILIANO DE ANDRADE DE ANGRA DO HEROÍSMO
ESCOLA SECUNDÁRIA JERÓNIMO EMILIANO DE ANDRADE DE ANGRA DO HEROÍSMO PLANIFICAÇÃO ANUAL ANO LECTIVO: 008/009 DISCIPLINA: Matemática ANO: 1º Aulas previstas 1º período: 7 (5 ) º período: 7 (5 ) 3º período:
Leia maisProf. Marcelo Azevedo Costa. Departamento de Engenharia de Produção Universidade Federal de Minas Gerais
Prof. Marcelo Azevedo Costa Departamento de Engenharia de Produção Universidade Federal de Minas Gerais Leitura de dados: leitura de dados a partir de arquivos leitura de dados a partir de páginas na web.
Leia maisIntrodução a Matrizes
Programação de Computadores I UFOP DECOM 2013 2 Tutorial Introdução a Matrizes Resumo Neste tutorial você irá aprender como criar matrizes, como realizar operações aritméticas básicas sobre matrizes e
Leia maisMétodos Numéricos. Turma CI-202-X. Josiney de Souza.
Métodos Numéricos Turma CI-202-X Josiney de Souza josineys@inf.ufpr.br Agenda do Dia Aula 5 (16/09/15) Zero de funções: Introdução Tipos de métodos Diretos Indiretos ou iterativos Fases de cálculos Isolamento
Leia maisResolução de problemas difíceis de programação linear através da relaxação Lagrangeana
problemas difíceis de programação linear através da relaxação Lagrangeana Ana Maria A.C. Rocha Departamento de Produção e Sistemas Escola de Engenharia Universidade do Minho arocha@dps.uminho.pt http://www.norg.uminho.pt/arocha
Leia maisMatemática Computacional - 2 o ano LEMat e MEQ
Instituto Superior Técnico Departamento de Matemática Secção de Matemática Aplicada e Análise Numérica Matemática Computacional - o ano LEMat e MEQ Exame/Teste - 1 de Janeiro de 1 - Parte I (1h3m) 1. Considere
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 III Resolução Numérica de Sistemas de Equações Normas, Erros e Condicionamento.
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 maisMétodo de Newton. Podemos escrever este problema na forma vetorial denindo o vetor x = [x 1, x 2,..., x n ] T e a função vetorial
Método de Newton 1 Introdução O método de Newton aplicado a encontrar a raiz x da função y = fx) estudado na primeira área de nossa disciplina consiste em um processso iterativo Em cada passo deste processo,
Leia maisINTRODUÇÃO AO SCILAB
INTRODUÇÃO AO SCILAB O programa SCILAB é um ambiente apropriado ao desenvolvimento de software para computação numérica. Esse programa foi concebido e é mantido pelo Institut de Recherche em Informatique
Leia mais1. Converta para a base binária, usando o método das divisões sucessivas, os seguintes números inteiros: a) 13 b) 35.
Computação Científica Folha Prática Computação Numérica 1. Converta para a base binária, usando o método das divisões sucessivas, os seguintes números inteiros: a) 13 b) 35 c) 192 d) 255 e) 347 f) 513
Leia maisEsmeralda Sousa Dias. (a) (b) (c) Figura 1: Ajuste de curvas a um conjunto de pontos
Mínimos quadrados Esmeralda Sousa Dias É frequente ser necessário determinar uma curva bem ajustada a um conjunto de dados obtidos experimentalmente. Por exemplo, suponha que como resultado de uma certa
Leia mais4. O algoritmo LMS e variantes
Apontamentos de Processamento Adaptativo de Sinais 4. O algoritmo LMS e variantes Família de algoritmos do gradiente Na prática usam-se estimativas do gradiente, ˆ (n), em vez do verdadeiro gradiente (n),
Leia maisCálculo Diferencial e Integral 2: Aproximações Lineares. Regra da Cadeia.
Aproximações lineares. Diferenciais. Cálculo Diferencial e Integral 2: Aproximações Lineares.. Jorge M. V. Capela Instituto de Química - UNESP Araraquara, SP capela@iq.unesp.br Araraquara, SP - 2017 Aproximações
Leia maisDEPARTAMENTO DE MATEMÁTICA CICLO BÁSICO DO CTC MAT1157 Cálculo a uma Variável A G3 13 de junho de 2011 (versão Ia)
DEPARTAMENTO DE MATEMÁTICA CICLO BÁSICO DO CTC PUC-RIO MAT1157 Cálculo a uma Variável A G3 13 de junho de 2011 (versão Ia) Início: 7:00 Término: 8:35 Nome: Matrícula: Turma: Questão Valor Grau Revisão
Leia maisSME Cálculo Numérico. Lista de Exercícios: Gabarito
Exercícios de prova SME0300 - Cálculo Numérico Segundo semestre de 2012 Lista de Exercícios: Gabarito 1. Dentre os métodos que você estudou no curso para resolver sistemas lineares, qual é o mais adequado
Leia maisLUCAS PALMA SILVA MÉTODO DE NEWTON E BACIAS DE
LUCAS PALMA SILVA MÉTODO DE NEWTON E BACIAS DE CONVERGÊNCIA Curitiba 014 LUCAS PALMA SILVA MÉTODO DE NEWTON E BACIAS DE CONVERGÊNCIA Trabalho de Conclusão do Curso de Matemática Industrial da Universidade
Leia maisCÁLCULO I. 1 Número Reais. Objetivos da Aula
CÁLCULO I Prof. Edilson Neri Júnior Prof. André Almeida EMENTA: Conceitos introdutórios de limite, limites trigonométricos, funções contínuas, derivada e aplicações. Noções introdutórias sobre a integral
Leia maisExemplo de Aplicação de Algoritmos Genéticos. Prof. Juan Moisés Mauricio Villanueva cear.ufpb.br/juan
Exemplo de Aplicação de Algoritmos Genéticos Prof. Juan Moisés Mauricio Villanueva jmauricio@cear.ufpb.br cear.ufpb.br/juan Estrutura do Algoritmo Genético Algoritmo genético Inicio t = 0 inicializar P(t)
Leia maisSobre Desenvolvimentos em Séries de Potências, Séries de Taylor e Fórmula de Taylor
Sobre Desenvolvimentos em Séries de Potências, Séries de Taylor e Fórmula de Taylor Pedro Lopes Departamento de Matemática Instituto Superior Técnico o. Semestre 004/005 Estas notas constituem um material
Leia mais3. Alguns conceitos de cálculo
3. Alguns conceitos de cálculo 3. Derivada de uma função Para calcular a derivada de uma função, usa-se o comando diff. O primeiro argumento deverá ser uma função de uma ou mais variáveis, o segundo argumento
Leia maisUNIVERSIDADE FEDERAL DE PERNAMBUCO
CÁLCULO L1 NOTAS DA DÉCIMA PRIMEIRA AULA UNIVERSIDADE FEDERAL DE PERNAMBUCO Resumo. Nesta aula, apresentaremos o Teorema do Valor Médio e algumas de suas conseqüências como: determinar os intervalos de
Leia maisNeste capítulo estamos interessados em resolver numericamente a equação
CAPÍTULO1 EQUAÇÕES NÃO-LINEARES 1.1 Introdução Neste capítulo estamos interessados em resolver numericamente a equação f(x) = 0, onde f é uma função arbitrária. Quando escrevemos resolver numericamente,
Leia maisResolução de sistemas de equações lineares: Método dos Gradientes Conjugados
Resolução de sistemas de equações lineares: Método dos Gradientes Conjugados Marina Andretta/Franklina Toledo ICMC-USP 24 de março de 2015 Baseado no livro Cálculo Numérico, de Neide B. Franco Marina Andretta/Franklina
Leia maisPlanificação Anual. 0,5 Geometria no plano e no espaço II. 32 Avaliações escritas e respetivas correcções. 5 Auto-avaliação
3º Período 2º Período 1º Período AGRUPAMENTO DE ESCOLAS DE CASTRO DAIRE Escola Secundária de Castro Daire Grupo de Recrutamento 500 MATEMÁTICA Ano lectivo 2012/2013 Planificação Anual Disciplina: Matemática
Leia maisProf. MSc. David Roza José 1/35
1/35 Métodos Iterativos Objetivos: Compreender a diferença entre os métodos de Gauss-Seidel e Jacobi; Saber analisar a dominância diagonal e entender o quê significa; Reconhecer como a relaxação pode ser
Leia maisInstituto Superior Técnico Departamento de Matemática Última actualização: 18/Nov/2003 ÁLGEBRA LINEAR A
Instituto Superior Técnico Departamento de Matemática Secção de Álgebra e Análise Última actualização: 18/Nov/2003 ÁLGEBRA LINEAR A REVISÃO DA PARTE III Parte III - (a) Ortogonalidade Conceitos: produto
Leia maisAnálise de complexidade
Introdução Algoritmo: sequência de instruções necessárias para a resolução de um problema bem formulado (passíveis de implementação em computador) Estratégia: especificar (definir propriedades) arquitectura
Leia maisMétodos Numéricos e Estatísticos Parte I-Métodos Numéricos
Métodos Numéricos e Estatísticos Parte I-Métodos Numéricos Lic. Eng. Biomédica e Bioengenharia-2009/2010 lineares Muitos problemas da Física, Matemática, Engenharia, Biologia, economia e outras ciências,
Leia maisLista 7.4 Optimização com Restrições de Desigualdade
Faculdade de Economia da Universidade Nova de Lisboa Apontamentos Cálculo II Lista 7.4 Optimização com Restrições de Desigualdade 1. Problema de optimização de uma função escalar f, de n variáveis reais,
Leia maisResolução de problemas com apenas restrições lineares de igualdade
Resolução de problemas com apenas restrições lineares de igualdade Marina Andretta ICMC-USP 14 de outubro de 2014 Marina Andretta (ICMC-USP) sme0212 - Otimização não-linear 14 de outubro de 2014 1 / 22
Leia mais2.3- Método Iterativo Linear (MIL)
.3- Método Iterativo Linear (MIL) A fim de introduzir o método de iteração linear no cálculo de uma raiz da equação (.) f(x) = 0 expressamos, inicialmente, a equação na forma: (.) x = Ψ(x) de forma que
Leia maisFolha Prática - Representação de Números e Erros. 1. Representar os seguintes números decimais em binário com ponto fixo:
Computação Científica Folha Prática - Representação de Números e Erros 1. Representar os seguintes números decimais em binário com ponto fixo: a) 24 b) 197 c) 1001 d) 7,65 e) 8,963 f) 266,66 2. Obter os
Leia maisCálculo Numérico. Santos Alberto Enriquez-Remigio FAMAT-UFU 2015
Cálculo Numérico Santos Alberto Enriquez-Remigio FAMAT-UFU 2015 1 Capítulo 1 Solução numérica de equações não-lineares 1.1 Introdução Lembremos que todo problema matemático pode ser expresso na forma de
Leia maisSistemas de Equações Lineares e Matrizes
Sistemas de Equações Lineares e Matrizes. Quais das seguintes equações são lineares em x, y, z: (a) 2x + 2y 5z = x + xy z = 2 (c) x + y 2 + z = 2 2. A parábola y = ax 2 + bx + c passa pelos pontos (x,
Leia maisMétodo de restrições ativas para minimização em caixas
Método de restrições ativas para minimização em caixas Marina Andretta ICMC-USP 20 de outubro de 2014 Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear 20 de outubro de 2014 1 / 25 Problema com
Leia mais