Diâmetro da Pizza (cm) Número de Coberturas Preço (R$) 1 15,0 2 24, ,0 1 31, ,0 0 45, ,0 2 61, ,0 0 63,00

Tamanho: px
Começar a partir da página:

Download "Diâmetro da Pizza (cm) Número de Coberturas Preço (R$) 1 15,0 2 24, ,0 1 31, ,0 0 45, ,0 2 61, ,0 0 63,00"

Transcrição

1 azevedolab.net 1

2 SciKit-Learn (Regressão Linear Múltipla) Vimos anteriormente a análise dos conjuntos treino e teste. Índice do Dado do Conjunto Treino Diâmetro da Pizza (cm) Número de Coberturas Preço (R$) 1 15,0 2 24, ,0 1 31, ,0 0 45, ,0 2 61, ,0 0 63,00 Índice do Dado do Conjunto Teste Diâmetro da Pizza (cm) Número de Coberturas Preço (R$) 1 20,0 2 38, ,5 0 29, ,5 2 52, ,0 2 63, ,0 0 38,50 2

3 Regressão Linear Múltipla Aplicamos os métodos de regressão linear múltipla que podiam ser acessados a partir de métodos de biblioteca scikit-learn. Vamos ver a função usada no pizza4.py. 3

4 SciKit-Learn (Regressão Linear Simples) (pizza3.py) O resultado é repetido abaixo para futura referência. Com destaque para os valores de R 2 e o preço previsto para uma pizza de 40 cm. Type CSV file name => pizza3.csv Type CSV file name => pizza4.csv Best fit linear regression model: x x R-squared: Veja que houve uma melhora no modelo, o R 2 foi de 0,66 para 0,77. Predicted price for 40 cm pizza: Índice do Dado do Conjunto Teste Diâmetro da Pizza (cm) Número de Coberturas 1 20,0 2 38,50 Preço (R$) 2 22,5 0 29, ,5 2 52, ,0 2 63, ,0 0 38,50 4

5 Regressão Linear Múltipla De uma forma geral, podemos mudar o método de regressão variando a chamada do método, após linear_model., como destacado abaixo. 5

6 Regressão Linear Múltipla Temos que tomar um cuidado adicional com o acesso aos pesos obtidos pelo método de regressão (model.coef_) e com o formato do array y_in, que podem variar. 6

7 Regressão Linear Múltipla Modificamos o código da função multiple_linear_regression() alternado as linhas indicadas abaixo. O nome programa chama-se pizza5.py. Usaremos o método Lasso. 7

8 Regressão Linear Múltipla Vejam que o acesso aos pesos se faz de forma distinta daquele do método de regressão linear múltipla do programa pizza4.py. 8

9 Regressão Linear Múltipla Relembrando-se que o método Lasso adiciona a somatória dos coeficientes (ω j ), como mostrado na equação do RSS abaixo, ou seja, além de minimizar a diferença entre o experimental e o previsto (y i y calc,i ) o método Lasso tende a reduzir o número de coeficientes (ω j ). RSS N P 2 y i y calc, i 1 j i 1 j 1 O N da primeira somatória refere-se ao número de pontos no conjunto treino. O P na segunda somatória é o número de variáveis explanatórias. Tal redução do peso de alguns coeficientes tem como objetivo gerar um modelo de regressão com um número menor de variáveis explanatórias, com a esperança de eliminarmos variáveis que tenham pouca importância para o modelo final (equação de regressão). Convém destacar, que tal abordagem pode gerar modelos com coeficientes de correlação (R 2 ) menores, mas podem ser vantajosos do ponto de vista de extrair dos dados somente variáveis explanatórias representativas. O coeficiente λ 1 pode ser otimizado para gerar o menor RSS possível, nesta situação temos o método LassoCV. 9

10 Regressão Linear Múltipla Ao rodarmos o programa pizza5.py para os dados dos arquivos pizza3.csv e pizza4.csv temos uma redução do número de variáveis explanatórias. Vemos uma piora com relação ao R 2 de 0,77 obtido com o método LinearRegression. RSS N P 2 y i y calc, i 1 j i 1 j 1 10

11 Regressão Linear Múltipla Vejamos a função multiple_linear_regression() alternado as linhas indicadas abaixo, agora mudando para o método Ridge. O nome programa chama-se pizza6.py. 11

12 Regressão Linear Múltipla O método Ridge adiciona a somatória dos coeficientes (ω j2 ) à equação do RSS, como mostrado abaixo, ou seja, além de minimizar a diferença entre o experimental e o previsto (y i y calc,i ) o método Ridge tende a reduzir o número de coeficientes (ω j ), como destacado para o método Lasso. RSS N 2 y i y calc i 2 i 1 P 2, j j 1 O N da primeira somatória refere-se ao número de pontos no conjunto treino. O P na segunda somatória é o número de variáveis explanatórias. O coeficiente λ 2 pode ser otimizado para gerar o menor RSS possível, nesta situação temos o método RidgeCV. 12

13 Regressão Linear Múltipla Na aplicação do método Ridge ao conjunto de dados das pizzas (pizza3.csv e pizza4.csv) não há redução do número de variáveis explanatórias, como observado na aplicação do método Lasso ao mesmo conjunto de dados. Por outro lado, há uma melhora no valor de R 2, quando comparado com o método Lasso. 13

14 Regressão Linear Múltipla Vejamos a função multiple_linear_regression() alternado as linhas indicadas abaixo, agora mudando para o método ElasticNet. O nome programa chama-se pizza7.py. 14

15 Regressão Linear Múltipla Relembrando-se que o método ElasticNet adiciona a somatória dos coeficientes (ω j ), e dos coeficientes ao quadrado (ω j2 ), como mostrado na equação do RSS. RSS N P P 2 y i y calc i 1 j 2 2, j i 1 j 1 j 1 O N da primeira somatória refere-se ao número de pontos no conjunto treino. O P na segunda e terceira somatórias referem-se ao número de variáveis explanatórias. Os coeficientes λ 1 e λ 2 podem ser otimizados para gerar o menor RSS possível, nesta situação temos o método ElasticNetCV. 15

16 Regressão Linear Múltipla Relembrando-se que o método ElasticNet adiciona a somatória dos coeficientes e dos coeficientes ao quadrado, como mostrado na equação do RSS. 16

17 Regressão Linear Múltipla Outro método disponível na biblioteca scikit-learn é o gradiente descendente estocástico (Stochastic Gradient Descent) (SGD). Este método usa o gradiente conjugado como método de otimização. De forma resumida, o pesos (ω j ) são otimizados num processo iterativo, que leva em conta a soma do gradiente da função RSS original, como indicado abaixo. j j N i 1 ( y i y calc, i ) x i, j O termo α é chamado taxa de aprendizado. O valor default da biblioteca scikit-learn é alpha =

18 Regressão Linear Múltipla Na multiple_linear_regression() alternamos as linhas indicadas abaixo, agora mudando para o método SGDRegressor(). O nome programa chama-se pizza8.py. def multiple_linear_regression(x_in,y_in,x_test,y_test): """Function to generate a linear regression model for two explanatory variable and their response variable. This function uses sklearn.linear_model.sgdregressor()""" # Import library from sklearn import linear_model import numpy as np y = [] for line in y_in: y.append(line[0]) # Create and fit the model model = linear_model.sgdregressor(n_iter=1e7, power_t = 0.1, warm_start = True) model.fit(x_in, y) # Get Linear Model alpha1 = model.coef_[0] alpha2 = model.coef_[1] const = float(model.intercept_) z = np.array([alpha1,alpha2,const]) p = np.poly1d(z) r_square = model.score(x_test, y_test) print("\nbest fit linear regression model: ",p) print('r-squared: %.4f' % r_square) 18

19 Regressão Linear Múltipla Veja que definimos como argumentos do método SGDRegressor() o número de iterações(n_iter), um fator de escala adicional (power_t) e o warm_start que define que soluções da chamada anterior do método são usadas como valores iniciais. def multiple_linear_regression(x_in,y_in,x_test,y_test): """Function to generate a linear regression model for two explanatory variable and their response variable. This function uses sklearn.linear_model.sgdregressor()""" # Import library from sklearn import linear_model import numpy as np y = [] for line in y_in: y.append(line[0]) # Create and fit the model model = linear_model.sgdregressor(n_iter=1e7, power_t = 0.1, warm_start = True) model.fit(x_in, y) # Get Linear Model alpha1 = model.coef_[0] alpha2 = model.coef_[1] const = float(model.intercept_) z = np.array([alpha1,alpha2,const]) p = np.poly1d(z) r_square = model.score(x_test, y_test) print("\nbest fit linear regression model: ",p) print('r-squared: %.4f' % r_square) 19

20 Regressão Linear Múltipla Com o SGDRegressor() temos os resultados mostrados abaixo. Como dependemos dos valores iniciais, os resultados podem ser distintos. Mas abaixo obtivemos o melhor resultado de todos tentados para o conjunto de dados pizza. 20

21 Potencial de membrana (mv) Fases do Potencial de Ação Quando o neurônio passa para o estado de potencial de ação, temos um aumento do potencial de membrana, além do potencial limiar. Tal aumento leva o neurônio a uma situação onde há influxo de Sódio, entram em ação dois outros canais transmembranares, os canais de Sódio e Potássio, ambos dependentes do potencial elétrico da membrana. Aqui cabe uma pequena observação. Na linguagem física não usamos o termo voltagem para indicar potencial elétrico, contudo, a grande maioria dos textos de fisiologia em português, quando referem-se aos canais citados, usam a denominação dependentes de voltagem. No presente texto usaremos os termos canais dependentes de voltagem, para mantermos os termos usados na área de fisiologia Tempo(ms) Corrente elétrica de estímulo Fases indicadas no gráfico acima 1 Potencial de repouso 2 Despolarização 3 Repolarização Potencial de ação 4 Hiperpolarização 21 4

22 Potencial de membrana (mv) Fases do Potencial de Ação As etapas canônicas do potencial de ação ocorrem devido à ação coordenada dos canais de Sódio e Potássio dependentes de voltagem. A abertura do canal de Sódio dependente de voltagem (despolarização), o fechamento do canal de Sódio e abertura do canal de Potássio (repolarização e hiperpolarização), conforme vemos no gráfico ao lado. A linha roxa indica o estímulo que é dado para o início do potencial de ação, veja que o estímulo não está em escala com o potencial indicado pela linha vermelha. O eixo horizontal é o eixo do tempo (em ms), e o eixo vertical o eixo do potencial de membrana (em mv). A linha vermelha indica a variação do potencial de membrana, durante as diferentes etapas do potencial de ação. O neurônio é considerado inicialmente em potencial de repouso Tempo(ms) Corrente elétrica de estímulo Fases indicadas no gráfico acima 1 Potencial de repouso 2 Despolarização 3 Repolarização Potencial de ação 4 Hiperpolarização 22 4

23 Canais Iônicos O canal de Sódio é um tipo especializado de canal iônico dependente de voltagem (potencial elétrico). Sua abertura está condicionada ao aumento do potencial de membrana. Quando temos um potencial de membrana, acima de um valor limite de potencial (potencial limiar), o canal abrese, permitindo o influxo de íons de Sódio na célula. O canal permanece aberto por aproximadamente 1 milisegundo (1 ms). Tempo suficiente para elevar o potencial de membrana para dezenas mv positivos. O canal de Sódio possui dois portões distintos, portões m (de ativação) e h (de inativação). O portão h fecha-se após a despolarização e permanece fechado, não permitindo o início de um novo potencial de ação (período refratário). A) Membrana plasmática B) C) No repouso (E r = -75mV) Portão m fechado Portão h aberto Após a despolarização (E r = 50 mv) Portão m aberto Portão h aberto 5 ms depois da despolarização (E r = -50 mv) Portão m aberto Portão h fechado Imagem disponível em:< 23 > Acesso em: 26 de agosto de 2015.

24 Canais Iônicos Os canais de Potássio abrem-se imediatamente após a despolarização, o que permite a saída de carga positiva da célula, na forma de íons de Potássio. O canal de Potássio fica aberto durante a fase de repolarização, onde o potencial de membrana será trazido a valores negativos, chegando a ficar mais negativo que o potencial de repouso, durante a fase seguinte, chamada de fase de hiperpolarização. Membrana plasmática A) B) C) No repouso (E r = -75mV) Canal de Potássio fechado Após a despolarização (E r = 50 mv) Canal de Potássio fechado 5 ms depois da despolarização (E r = -50 mv) Canal de Potássio aberto Imagem disponível em:< 24 > Acesso em: 26 de agosto de 2015.

25 Canais Iônicos Descrição passo a passo do potencial de ação A) Os canais de Sódio e Potássio estão fechados (potencial de repouso). B) O aumento do potencial na membrana leva o canal de Sódio, que é dependente de voltagem (potencial elétrico), a abrir-se. O que permite o rápido influxo de Sódio na célula, aumentando de forma significativa o potencial de membrana. Esta fase é chamada despolarização (ou fase ascendente). C) Aproximadamente 1 ms depois, os canais de Sódio fecham-se e os canais de Potássio, dependentes de voltagem (potencial elétrico), abrem-se. Permitindo a saída do excesso de carga positiva da célula. Esta fase é a de repolarização (ou fase descendente). D) A saída de grande quantidade de íons de K +, leva a célula a atingir um potencial de membrana abaixo do potencial de repouso, esta fase é chamada de hiperpolarização. Membrana plasmática Canal Na + Canal K + Imagem disponível em:< 25 > Acesso em: 26 de agosto de 2015.

26 Canais Iônicos A presença do portão de inativação (portão h) no canal de Sódio dependente de voltagem garante a propagação unidirecional do potencial de ação. A entrada de íons de Sódio, decorrente da abertura do canal de Sódio dependente de voltagem, leva a uma difusão de íons de Sódio nos dois sentidos no axônio. Tal presença de íons de Sódio levaria à reabertura dos canais de Sódio, caso não tivessem o portão de inativação (portão h). Tal portal permanece fechado por alguns milisegundos, caracterizando o período refratário do neurônio. Durante este período a elevação do potencial de membrana, além do potencial limiar, não causa disparo de novo potencial de ação. Dendritos Cone de implantação Corpo celular Núcleo Direção do impulso Axônio Potencial de ação Terminais axonais 26

27 Propagação do Potencial de Ação Um potencial de ação é uma súbita variação no potencial de membrana, que dura poucos milisegundos (ms). Lembrese, 1 ms = 10-3 s, ou seja, a milésima parte do segundo. Tal perturbação é conduzida ao longo do axônio. Num neurônio de vertebrado, o potencial de ação apresenta uma ação saltatória e unidirecional, ou seja, sai do corpo do neurônio e desloca-se ao longo do axônio até o terminal axonal. A amplitude do potencial de ação é a mesma, não havendo queda de potencial ao longo do axônio, como indicado por medidas de potencial elétricos em pontos distintos do axônio durante o potencial de ação (mostrado no slide seguinte). Dendritos Cone de implantação Corpo celular Núcleo Direção do impulso Axônio Potencial de ação Terminais axonais 27

28 Modelo de Hodgkin-Huxley O modelo de Hodgkin-Huxley foi proposto em 1952 para modelar o potencial de ação do axônio de sépia. Os dados sobre a corrente iônica foram obtidos a partir do uso da técnica de voltage clamp. Nesta técnica, o potencial elétrico da célula é mantido constante, independente das concentrações iônicas. Na situação abaixo as correntes iônicas são medidas. O diagrama esquemático abaixo ilustra a técnica. Um sistema de retroalimentação permite que o potencial seja mantido num valor de referência, onde toda vez que o potencial de membrana desvia-se um pouco do valor ajustado, uma tensão adicional, fornecida pela fonte de tensão, leva o potencial de membrana de volta ao valor ajustado. Amplificador do potencial de membrana Fonte de tensão Eletrodo intracelular Eletrodo extracelular Amplificador de retroalimentação Axônio Amperímetro 28

29 E Potencial de membrana Modelo de Hodgkin-Huxley O modelo de Hodgkin-Huxley usa o conceito de condutância (g), para elaborar uma equação diferencial que mostra o potencial de membrana em função do tempo E(t). Não é objetivo do presente curso detalhar a dedução de tal modelo, iremos somente ilustrar a equação, destacando as principais características. Quando analisamos o neurônio em repouso, vimos que o mesmo tinha um comportamento elétrico similar a um circuito resistivo-capacitivo (circuito RC) simples, ilustrado abaixo. I +Q Q R d -Q 0 Tempo(ms ) Circuito RC Potencial limiar Potencial de repouso 29

30 Modelo de Hodgkin-Huxley Na figura ao lado, temos o circuito elétrico equivalente da membrana celular durante o potencial de ação, chamado de modelo de Hodgkin-Huxley. No circuito temos 3 tipos de correntes iônicas, a corrente do Sódio (I Na ), a corrente do Potássio (I K ) e uma terceira corrente chamada em inglês de leak current (I L ), que é composta principalmente de íons de cloro. A principal contribuição do modelo Hodgkin- Huxley, foi a introdução das condutâncias na análise do comportamento elétrico do axônio. A condutância (g) é o inverso da resistência elétrica (R), conforme a equação abaixo: C m I C I Meio extracelular I Íon I Na I K I L g Na g K g L E Na E K E L Meio intracelular A unidade de condutância é o Siemens (1 S = 1/Ohm). Circuito elétrico equivalente a membrana celular, segundo o modelo de Hodgkin-Huxley. 30

31 Modelo de Hodgkin-Huxley Ao incluirmos as condutâncias (g), temos a possibilidade de modelar o potencial de ação, considerando o circuito equivalente ao lado. Temos as condutâncias para Sódio (g Na ), Potássio (g K ) e uma terceira para o termo leak (g L ), ou seja, vazamento de íons. A corrente total (I) é a soma da corrente iônica (I íon ) e a corrente capacitiva (I C ), como segue: C m I C I Meio extracelular I Íon I Na I K I L g Na g K g L I = I C + I íon. E Na E K E L A corrente iônica total (I ion ) é dada pela soma de todas as correntes devido a cada canal (I Na e I K ) e a terceira corrente (I L ) é constante e minoritária. Assim temos, Meio intracelular I ion = I Na + I K + I L Circuito elétrico equivalente a membrana celular, segundo o modelo de Hodgkin-Huxley. 31

32 Modelo de Hodgkin-Huxley Vemos no circuito equivalente a presença de 3 fontes de potencial, nominalmente E na, E K e E L, relativas ao Sódio, Potássio e vazamento (leak). Tais potenciais podem ser determinados a partir da equação de Nernst, vista anteriormente. Assim, temos as seguintes equações para as correntes que formam a corrente iônica, I Na = g Na (V - E Na ), C m I C I Meio extracelular I Íon I Na I K I L g Na g K g L e I k = g k (V - E k ) I l = g L (V - E L ) E Na E K E L onde V é o potencial da membrana. Veja no circuito, que as condutâncias do Sódio (g Na ) e do Potássio (g K ) são variáveis e a condutância de vazamento é constante. Meio intracelular Circuito elétrico equivalente a membrana celular, segundo o modelo de Hodgkin-Huxley. 32

33 Modelo de Hodgkin-Huxley Usando o circuito equivalente, vemos que na fase de despolarização temos a condutância do Na + alta, o que permitirá entrada de íons de Na + na célula, elevando a corrente I Na e o potencial de membrana (V). Na fase repolarização, teremos aumento condutância do K +, o que levará K + para o meio extracelular e diminuirá potencial de membrana. I Meio extracelular I C I Íon 2 3 I Na I K I L C m g Na g K g L 1 4 E Na E K E L Gráfico do potencial contra o tempo (linha vermelha), gerado pelo HHSim ( Meio intracelular 33

34 Modelo de Hodgkin-Huxley O modelo de Hodgkin-Huxley é um modelo computacional, sendo considerado o primeiro modelo da abordagem de biologia de sistemas. Tal modelo descreve a resposta do axônio de sépia a diferentes estímulos elétricos. Temos a implementação do modelo computacional de Hodgkin-Huxley (modelo HH) em diversos programas. Apresentaremos aqui um que foi implementado na linguagem MatLab, chamado HHSim que está disponível no site Esse simulador do potencial de ação possibilita testarmos diferentes tipos de estímulos elétricos aplicados ao axônio, bem como o efeito de moléculas que interagem com os canais iônicos. Diagrama esquemático de uma seção do axônio de sépia. Axônio pré-sináptico da sépia, colorido em rosa para destaque. Disponível em: USCRC/resources_methods_squid.shtml 34 Acesso em: 28 de novembro de 2016.

35 Modelo de Hodgkin-Huxley O diagrama esquemático abaixo ilustra o arranjo experimental, simulado no HHSim. Temos o cilindro representando uma seção do axônio da sépia, onde foram inseridos 2 eletrodos. Temos o eletrodo 1 responsável pelo estímulo, que será medido em unidades de corrente elétrica, na (nanoampére, 10-9 A). Gerador de corrente elétrica (estímulo) Eletrodo 1 Seção do axônio de sépia. 35

36 Modelo de Hodgkin-Huxley Temos um segundo eletrodo (eletrodo 2), inserido após o eletrodo 1. O posicionamento de eletrodo 2 indica que ele está mais próximo do terminal axonal que o eletrodo 1. Assim, o estímulo gerado no eletrodo 1 pode propagar-se ao longo do axônio e ser registrado no eletrodo 2. O eletrodo 2 está ligado a um voltímetro, que registra o potencial de membrana em mv em função do tempo (eixo horizontal). Gerador de corrente elétrica (estímulo) Voltímetro (eixo vertical em mv) Eletrodo 1 Eletrodo 2 Seção do axônio de sépia. 36

37 Modelo de Hodgkin-Huxley Na situação ilustrada abaixo, temos que o voltímetro mostra a evolução temporal do potencial de membrana, num período de 20 ms, suficiente para vermos todas as fases do potencial de ação (despolarização, repolarização e hiperpolarização). Gerador de corrente elétrica (estímulo) Voltímetro (eixo vertical em mv) Eletrodo 1 Eletrodo 2 Seção do axônio de sépia. 37

38 Modelo de Hodgkin-Huxley Vamos usar o HHSim para destacar as características do potencial de ação. Na figura abaixo temos a situação de potencial de repouso. A linha vermelha indica o potencial da membrana (em repouso), a linha roxa indica o estímulo aplicado, a linha amarela a condutância do Na + e a verde a condutância do K +. Gráfico do potencial contra o tempo (linha vermelha), gerado pelo HHSim ( Acesso em: 28 de novembro de

39 Modelo de Hodgkin-Huxley Aplicamos um estímulo, linha roxa, temos que o potencial de membrana atinge uma valor acima do potencial limiar (linha vermelha). Em tal situação, abrem-se os canais de Na + dependentes de voltagem. Cofirmarmos a situação, verificando a condutância do Na + (linha amarela), que começa a subir, indicado o influxo de Na +. O eixo horizontal é o do tempo. Todo evento está registrado em pouco mais de 20 ms. Gráfico do potencial contra o tempo (linha vermelha), gerado pelo HHSim ( Acesso em: 28 de novembro de

40 Modelo de Hodgkin-Huxley Comparando-se as condutâncias, vemos que a condutância do Na + (linha amarela) atinge o valor máximo, antes da a condutância do K + (linha amarela). Isto deve-se ao fato do canal de Na + dependente de voltagem abrir-se antes do canal de K + dependente de voltagem. Gráfico do potencial contra o tempo (linha vermelha), gerado pelo HHSim ( Acesso em: 28 de novembro de

41 Modelo de Hodgkin-Huxley Depois de poucos milisegundos, ambos canais estão fechados, como vemos com as condutâncias retornando para o valor zero. Depois de mais alguns milisegundos, o potencial de membrana (linha vermelha) retorna ao valor de repouso. Gráfico do potencial contra o tempo (linha vermelha), gerado pelo HHSim ( Acesso em: 28 de novembro de

42 Redes Neurais Vimos que precisamos de um um estímulo acima do potencial limiar para termos um potencial de ação. Não precisamos realizar uma simulação computacional do processo complexo que envolve a abertura de canais iônicos ao longo do axônio para termos um aproximação computacional do funcionamento do neurônio. A abordagem computacional chamada rede neural usa uma visão simplificada do neurônio, onde a inspiração biológica restringe-se a acharmos uma função matemática que dispara, ou seja, assume valor 1 para um dado conjunto de entradas. Usando uma definição mais formal, temos que uma rede neural é um sistema computacional composto por um certo número de elementos altamente conectados que processam informação por meio de sua resposta dinâmica a um conjunto externo de entradas. "...a computing system made up of a number of simple, highly interconnected processing elements, which process information by their dynamic state response to external inputs. In "Neural Network Primer: Part I" by Maureen Caudill, AI Expert, Feb

43 Redes Neurais De uma forma geral as redes neurais são organizadas em camadas, onde temos uma camada de entrada, algumas camadas intermediárias e uma cada de saída. As camadas são compostas de nós interconectados que apresentam uma função de ativação. Padrões são apresentados à rede neural na camada de entrada, que se conecta às camadas escondidas onde o processamento ocorre por meio de pesos atribuídos às conexões. Por último, as camadas escondidas se conectam a camada de saída onde a resposta é mostrada. Abaixo temos um diagrama esquemático de uma rede neural típica. Fonte da imagem: Acesso em: 27 de novembro de

44 Redes Neurais A maioria das redes neurais apresenta alguma regra de aprendizado, que otimiza os pesos das conexões, usando-se o padrão de entrada como modelo. Podemos pensar que estamos ensinando figuras geométricas ao um aluno de ensino fundamental, onde vamos mostrando exemplos de figuras e definido seus nomes e características. As redes neurais aprendem por exemplo, como fazem as redes neurais biológicas. Fonte da imagem: Acesso em: 27 de novembro de

45 Redes Neurais Muitas das redes neurais usadas hoje em dia têm sua fundamentação teórica baseada na regra delta. Sendo que a regra delta é normalmente usada pelas redes neurais chamadas de redes neurais de retropropagação (backpropagational neural networks). A retropropagação refere-se a propagação para trás do erro. Fonte da imagem: Acesso em: 27 de novembro de

46 Redes Neurais Na regra delta, quando uma rede neural com retropropagação do erro é inicialmente apresentada com um padrão de entrada, esta faz um chute inicial com valores aleatórios para os pesos. Em seguida é feito o cálculo da diferença entre o valor esperado e aquele obtido usando-se pesos aleatórios e um ajuste aos pesos é aplicado. O diagrama esquemático abaixo ilustra a ideia principal do processo para um neurônio isolado. Fonte da imagem: Acesso em: 27 de novembro de

47 Redes Neurais Resumindo, podemos ter uma simulação da rede neural mais simples que existe, que é uma rede com um neurônio, onde este processa as entradas e aprende a partir do padrão. Este processo de aprendizado é traduzido na otimização dos pesos que são treinados a partir do conjunto treino. Abaixo temos o pseudo código para esta rede neural. 47

48 Redes Neurais Para o algoritmo anterior usaremos como padrão de aprendizado uma tabela verdade com as seguintes entradas e saídas. Depois de treinada, nossa rede neural será submetida a nova situação mostrada abaixo. Fonte da imagem: Acesso em: 27 de novembro de

49 Redes Neurais A equação para o treinamento do neurônio é baseada na função sigmóide, mostrada abaixo. Se usarmos o inmathematica001.py para gerarmos o gráfico da função acima com o comando Plot[1/(1+Exp[-]),{x,-6,6}] teremos o gráfico abaixo. 49

50 Redes Neurais Na equação abaixo o x foi substituído pelo peso que leva em conta o peso de cada entrada, como mostrado abaixo. 50

51 Redes Neurais Como os pesos inicialmente recebem valores aleatórios, temos que corrigir os pesos de forma iterativa, no nosso exemplo usaremos a seguinte equação: Onde o error é a diferença entre o valor previsto e o inserido como entrada no conjunto treino. O SigmoidCurveGradient é a derivada da função sigmoide, de forma que num processo iterativo espera-se que os novos pesos levem a uma previsão previsão próxima à real. 51

52 Redes Neurais Como os pesos são inicialmente recebem valores aleatórios, temos que corrigir os pesos de forma iterativa, no nosso exemplo usaremos a seguinte equação: Onde o error é a diferença entre o valor previsto e o inserido como entrada no conjunto treino. A variável output traz o valor da saída na iteração anterior, com os pesos antigos. 52

53 Redes Neurais Vejamos o código da nossa rede neural. Começaremos com a função main(). Inicialmente chamamos a função gen_training_set() que gera o nosso conjunto treino, ou seja, o padrão que será usado para treinar a rede neural. Na função seguinte (show_training_set()) é mostrado o conjunto treino na tela. em seguida fazemos a simulação da rede neural com a função neuron001() que retorna um array com os pesos devidamente otimizados para nosso conjunto treino. Por último a função show_prediction() faz a previsão para o array [1,0,0] como entrada. 53

54 Redes Neurais A função gen_training_set() gera os arrays para as entradas e saídas do conjunto treino. Ambos arrays são retornados para onde a função foi evocada. 54

55 Redes Neurais A função show_training_set() simplesmente é um print dos arrays gerados como conjunto treino. 55

56 Redes Neurais A função neuron01() implementa a rede neural. Inicialmente estabelecemos uma semente aleatória. Esta etapa é importante pois em problemas masi complexos podemos ter resultados distintos com semenetes aleatórias distintas, assim é importante registramos com qual semente aleatória estamos trabalhando. 56

57 Redes Neurais Em seguida geramos um array aleatório com três números que serão os pesos iniciais. O loop em destaque faz a atualização do array peso (weight) em cada iteração do loop. No loop é calculada a função sigmoidal com os pesos iniciais e o resultado atribuído à variável output. O método np.dot() faz o produto escalar entre os elementos do array transposto (.T) com o array (t_out - output)*output(1-output). Que é a implementação da equação vista anteriormente para o ajuste do peso. 57

58 Redes Neurais Por último a função show_prediction() mostra previsão para o array considerado. A função faz uso dos pesos otimizados para o conjunto treino obtidos na função neuron01() e usa a função sigmoidal para o cálculo do resultado. 58

59 Redes Neurais Abaixo temos o resultado da simulação. sex 11/11, 10:54 59

60 Algoritmos Bio-inspirados Um aspecto interessante que une a biologia e a computação de uma forma sinergética é o uso de algoritmos biologicamente inspirados. A principal ideia dos algoritmos bio-inspirados é usar a natureza como fonte de inspiração para propor novos algoritmos. Entre os algoritmos bio-inspirados de maior sucesso, temos os algoritmos evolucionários, onde as ideais da evolução são usadas como inspiração para propormos novos algoritmos. 60

61 Otimização C d CD d AD d AC A D d BC d AB d BD B As ideias da evolução têm sido usadas em otimização de soluções de problemas específicos. A otimização é um método computacional (algoritmo), que procura achar as condições ótimas para um dado problema. Para evitar uma abordagem mais matemática, vamos ilustrar a otimização com um exemplo, chamado problema do caixeiro viajante (travelling salesman problem). Neste problema temos um vendedor (caixeiro viajante), que tem que passar por diversas cidades, digamos 4 cidades. O objetivo do problema é achar o menor caminho possível, que leva o caixeiro viajante a passar pelas quatro cidades, sem repetir nenhuma cidade. Sabemos as distâncias entre todos os pares de cidades, d AB por exemplo, assim a solução ótima (otimizada) é aquela que leva a um menor percurso total. Este 61 é o típico problema de otimização.

62 Conceitos Básicos sobre Evolução Indivíduo População A cor das joaninha é um traço do fenótipo Apresentaremos alguns conceitos da evolução, usados como inspiração para os algoritmos evolucionários. Vamos considerar um ambiente que pode sustentar só um número restrito de indivíduos (joaninhas nas figuras aqui), a natureza seleciona aquelas joaninhas que lutam pelos os recursos limitados de forma mais eficiente, em outras palavras, a seleção natural dos indivíduos mais adaptados da população (as joaninhas mais adaptadas). Outro conceito básico da teoria de Darwin, é a variação do fenótipo entre indivíduos da população. Traços do fenótipo são aqueles aspectos físicos e de comportamento de um indivíduo, que estão relacionados com sua reação ao ambiente, por exemplo, a cor da joaninha. Os traços do fenótipo determinam seu ajuste (fitness) ao ambiente. 62

63 Conceitos Básicos sobre Evolução Indivíduo População A cor das joaninha é um traço do fenótipo Referência: HOLLAND JH. Adaptation in Natural and Artificial Systems. MIR Press. Cambridge MA, Numa população, cada indivíduo mostra um conjunto de traços do fenótipo exclusivos, que estão continuamente sendo testados pelo ambiente [HOLLAND, 1992]. O ajuste de cada indivíduo pode ser quantificado numa análise matemática do sistema biológico, os indivíduos com maior sucesso apresentam um ajuste mais alto, ou seja, uma função ajuste (fitness function) mais alta. Veja que estamos modelando nosso sistema biológico, para capturar os aspectos essenciais do sistema, que possibilitarão o seu uso para resolver problemas de otimização. Colocando de outra forma, estamos simplificando o sistema biológico, para extrairmos suas características mais fundamentais, como a seleção natural. 63

64 Conceitos Básicos sobre Evolução População inicial da primeira geração Resumindo os conceitos básicos, uma população é um conjunto de indivíduos, cada um sendo considerado uma unidade de seleção, seu sucesso depende de o quão bem adaptado ao ambiente eles estão. Indivíduos mais bem adaptados apresentam probabilidade mais alta de gerar descendentes, e, mutações ocasionais, dão origem a novos indivíduos que serão testados pelo ambiente. Assim, de uma geração para outra, há variação no genótipo (conjunto de genes) da população. Cada gene codifica uma proteína, e pode ser responsável por uma característica do indivíduo, ou um conjunto de genes ser o responsável por uma característica. Na figura vemos claramente diferenças nos padrões de cores, embora alguns indivíduos tenham sobrevivido de uma geração para outra sem alterações. População inicial da segunda geração 64

65 Conceitos Básicos sobre Evolução Ajuste y x Superfície adaptativa (adaptive surface) O processo de evolução pode ser visualizado usando uma superfície adaptativa (adaptive surface). No gráfico ao lado, a altura z representa a função ajuste (fitness function), também chamada de função escore (scoring function). Aqui, quanto maior a altura na superfície, melhor o ajuste do indivíduo. Os eixos x-y representam todas as combinações possíveis de dois traços do fenótipo. Cada ponto na superfície representa um indivíduo, com a combinação de traços do fenótipo representados pelo valores de x e y. Para exemplificar, o eixo x pode representar a capacidade de mimetismo (camuflagem) das joaninhas, e o eixo y a capacidade de escalar obstáculos. A combinação de x e y dará a função ajuste. Os picos mais altos na figura representam os indivíduos mais bem adaptados. 65

66 Conceitos Básicos sobre Evolução Máximo global Máximo local Ajuste y x Superfície adaptativa (adaptive surface) Os vales indicam indivíduos menos adaptados ao ambiente. Cada pico na superfície indica um ponto ótimo local (ou simplesmente máximo local). O pico mais alto o ponto de ótimo global (ou máximo global). A partir desta analogia, está clara as implicações da evolução em problemas de otimização, que podemos pensar que é representado pelo ponto de ótimo global. Num problema de otimização, como o do caixeiro viajante, nós podemos ter uma lista de soluções para o problema (diferentes rotas), e tentamos achar a melhor solução. O conjunto de soluções possíveis é chamado de espaço de busca, a superfície adaptativa, da figura ao lado, é uma representação gráfica do espaço de busca. 66

67 Números Binários A implementação de um algoritmo genético usa as ideias da evolução de Darwin, de forma que os indivíduos de uma dada população são submetidos aos princípios da evolução, tais como, seleção natural, cruzamento (crossover) e mutação. Veja abaixo, um indivíduo será representado por uma string binária. Uma string binária é uma sequência de 0 e 1. No algoritmo genético a string binária é convertida num número decimal, usando as operações matemáticas já vistas. String binária Decimal relacionado à string binária 1777 Representação do genoma de um indivíduo na abordagem de algoritmo genéticos 67

68 Algoritmo Genético Um algoritmo genético típico usa três operadores para manipular uma população de indivíduos gerados aleatoriamente, são eles: seleção, crossover e mutação. Um diagrama esquemático dá uma visão geral destes passos para uma iteração (geração). A população inicial é formada de strings binárias geradas aleatoriamente, os números indicados à esquerda. Strings binárias (populatção incial) Strings binárias (Nova população) Operador seleção Operador crossover Operador mutação

69 Algoritmo Genético O operador seleção é uma implementação computacional da seleção natural. É uma tentativa de aplicar a pressão evolucionária sobre indivíduos de uma população. Indivíduos com função ajuste (ou função escore) baixa serão descartados. Os indivíduos de mais alto valor de função ajuste apresentam maior probabilidade de sobreviver. Os sobreviventes farão parte da população, que começará a nova geração (iteração). Strings binárias (populatção incial) Strings binárias (Nova população) Operador seleção Operador crossover Operador mutação

70 Algoritmo Genético O operador crossover, também conhecido como recombinação, faz com que os indivíduos (strings binárias) troquem sua informação genética, de forma análoga à reprodução sexuada. Uma forma de implementar tal operador, é selecionar pares de indivíduos promovidos após a etapa de seleção (pais). Depois selecionamos aleatoriamente um local único (locus) (indicado pela barra vermelha vertical), dentro da string binária. Por último trocamos todos os dígitos à direita deste locus entre os dois pais, conforme indicado abaixo. Pais Locus Crossover Descendentes Locus 70

71 Algoritmo Genético O operador crossover é aplicado a um par de pais, parar gerar um par de novas strings binárias (descendentes). Um par de pais será submetido ao operador crossover, se e somente se, um número aleatório (Rn) for menor que a probabilidade de crossover (Pc). Rn está no intervalo [0,1], e um típico valor de Pc está no intervalo [0,4, 0,9]. Gera um número aleatório (Rn) Locus Pais Descendentes Rn<=Pc? Não Sim Crossover Escolha novo par de pais Locus 71

72 Algoritmo Genético Para ilustrar os princípios básicos do algoritmo genético, vamos resolver o seguinte problema simples, qual o número entre 0 e 4095 maximiza a função quadrática (f(x)=x 2 )? OK, não precisamos de um algoritmo genético para saber a resposta deste problema, tal problema é só para ilustrar o algoritmo. Na implementação deste algoritmo temos strings binárias de comprimento 12 ( = ). Assim, vamos gerar números aleatórios entre 0 e 4095, como mostrado parcialmente na tabela abaixo. Esta faixa de números é nosso espaço de busca. String binária Decimal

73 Implementação de um Algoritmo Genético Simples Neste algoritmo simples, o operador seleção escolherá a melhor metade da população, usando a função quadrática como função ajuste (fitness function). Inicialmente temos que gerar a população de forma aleatória. Tal população é formada por strings binárias (genótipo), também chamados de cromossomos no jargão dos algoritmos genéticos. As strings binárias que serão convertidas em números decimais, e então a função quadrática será calculada. A função quadrática é nossa função ajuste. Nós classificamos a metade dos melhores indivíduos da população e, então, aplicamos o operador crossover. Estes novos indivíduos gerados pelo operador crossover serão submetidos ao operador mutação. Na mutação nem todos os indivíduos serão submetidos a este operador, só aqueles que passarem no critério de probabilidade de mutação (Pm). Na implementação do algoritmo genético, usaremos o critério de número de iterações (gerações), como critério de parada. Um típico conjunto de entrada para tal algoritmo é o seguinte: Population size (tamanho da população): Maximum number of iterations (Número máximo de iterações): Probability of crossover (probabilidade de crossover): Length of strings (tamanho das strings): Probability of mutation (probabilidade de mutação): 73

74 Implementação de um Algoritmo Genético Simples Gera uma população aleatória de strings binárias Ordena aleatoriamente os melhores pais Gera uma nova população Converte cada string binária a um número decimal Calcula a função ajuste para cada indivíduo Seleciona pares de pais seguindo uma ordem aleatória Operador Crossover Critério de parada satisfeito? Não Sim Seleciona parte da população para seguir (operador seleção) Mutação dos descendentes (operador mutação) Retorna os resultados 74

75 Initialização A B D C Inicialização. Números aleatórios são gerados (genótipo), para representar indivíduos numa população. Em algoritmos genéticos tais números são chamados cromossomos. Para cada cromossomo uma função ajuste (função escore) será calculada. 75

76 Initialização A B D C Operador seleção (A). Agora um dos maiores processos da evolução é aplicado. Os cromossomos gerados aleatoriamente são selecionados, usando como critério a função ajuste. Esta função indica o quão adaptado um indivíduo está. Os indivíduos 76 selecionados são chamados pais.

77 Initialização A B D C Operador crossover (B). Os indivíduos selecionados (pais) podem gerar descendentes (filhos). Os pais são gerados aleatoriamente e seus cromossomos são combinados para gerar filhos. A posição de corte é chamada locus, sendo gerada 77 aleatoriamente também.

78 Initialização A B D C Operador mutação (C). É permitido que os descendentes sofram mutação. Em bactéria uma taxa de mutações por genoma por geração é observada. Aqui, o operador mutação possibilita a diversidade genética na simulação da evolução. 78

79 Initialização A B D C Ao final, os indivíduos (pais mais descendentes), tornam-se a população inicial para um novo ciclo. Com objetivo de manter a abordagem biológica, este ciclo é chamado de geração. Em computação um ciclo é chamado de iteração. 79

80 Initialização A B D C Este ciclo está completo e todo o processo é repetido até que um critério de parada seja satisfeito, como por exemplo, o número de iterações (gerações) máximo foi atingido. 80

81 Initialização A B D C Agora temos uma visão geral de como os algoritmos genéticos funcionam. Vamos ver alguns conceitos de como implementá-los. Os indivíduos nesta população podem ser representados por 0 e 1, ou seja, uma string binária. 81

82 Initialização Strings binárias Na inicialização, números aleatórios são gerados para representar cada cromossomo na população. Cada linha (string binária) é um cromossomo de um indivíduo (equivalentes às joaninhas de cores diferentes). 82

83 Initialização A Decimais (x) Strings binárias Converte binário para decimal Função ajuste ou escore Decimals (x) Seleção dos melhores resultados f = x Strings binárias Seleção. Para ilustrar a evolução, vamos considerar que queremos achar o máximo da função quadrática para um inteiro entre 0 e Agora calculamos a função (f=x 2 ) para cada cromossomo. As strings binárias são convertidas para decimal e, então, calculamos a função. Selecionamos a melhor metade da população, segundo 83 a função ajuste.

84 Initialização A B Strings 0 binárias Strings de posição aleatória Nesta etapa temos o operador crossover. Somente os melhores pais são submetidos ao crossover, (recombinação). Inicialmente as strings binárias são aleatoriamente posicionadas e, então, a posição de crossover é escolhida. Esta posição indica onde a troca dos cromossomos acontecerá. Os novos cromossomos agora fazem parte da população, junto como os melhores pais. Strings filhas Strings pais

85 Initialização A B D O operador mutação é usualmente aplicado a um bit da string, mudando-o de 0 para 1, ou vice-versa. Na maioria das aplicações, é sugerida uma probabilidade de mutação (Pm) de 0,001, ou seja, uma mutação para cada 1000 bits. C Strings filhas Strings pais

86 Initialização A B D Há diversas formas de implementar o operador mutação, uma forma é aplicá-lo a um bit (número 0 ou 1 na string) na posição 1/pm e gerar um número aleatório, se o número aleatório é maior que 0,5 muda o bit, caso contrário deixa como está. C Strings filhas Strings pais

87 Initialização O operador mutação funciona para aumentar a diversidade genética, evitando que a população fique confinada a um máximo local. A B Strings filhas Strings pais D Mutação C Strings filhas Strings pais

88 Strings binárias Depois da aplicação do operador mutação, os indivíduos tornam-se a população de uma nova iteração. O ciclo é repetido até que um critério de parada seja satisfeito. Podemos fixar o número de iterações, ou outro critério de parada. Um outro critério de parada possível, está baseado na variação da população, ou seja, se os indivíduos de uma geração não estão variando com relação à geração anterior. Quando não há variação durante um certo número de gerações, não faz sentido continuar a simulação, pois não iremos gerar indivíduos que gerem melhores funções ajuste, assim podemos parar a simulação

89 Implementação de um Algoritmo Genético Simples Para o problema descrito de maximização, temos numa simulação típica de algoritmos genéticos, as seguintes entradas: número de indivíduos da população inicial de 10 indivíduos, probabilidade de mutação de 0,01, probabilidade de crossover de 0,8 e número de iterações igual à 60. Com estes dados de entrada, observamos uma convergência para o valor correto após poucas iterações (gerações). O gráfico ao lado mostra os resultados de tal simulação. O eixo x indica o número de iterações (gerações) e o eixo y o valor máximo da função quadrática (função escore ou ajuste), obtido para cada geração. Como o indivíduo com maior valor para uma string binária de 12 algarismos é , cujo o valor decimal é 4095, temos uma função quadrática de , que é alcançada na iteração 18. Depois disso não há alteração, dizemos que houve convergência. 89

90 Algoritmos Evolucionários (Evolução Diferencial) Vimos um tipo de algoritmo evolucionário chamado de algoritmo genético. Há outros algoritmos que usam as ideias de evolução, mas são baseados em métodos computacionais distintos. Todos usam como inspiração a evolução, mas sua implementação computacional varia de algoritmo para algoritmo. Um dos algoritmos evolucionários de maior sucesso é o algoritmo de evolução diferencial. Na evolução diferencial temos os operadores clássicos dos algoritmos genéticos: seleção, crossover e mutação, como mostrados abaixo. Como uma implementação distinta do crossover. Operador seleção Operador crossover Operador mutação Critério de parada satisfeito? Sim Mostra resultados Não 90

91 Algoritmos Evolucionários (Evolução Diferencial) O algoritmo de evolução diferencial executa a parte inicial de geração aleatória de uma população com N cromossomos, em seguida avalia a função ajuste de cada cromossomo. A novidade está na formação cromossomos filhos. O filhos são gerados da seguinte forma, para cada cromossomo pai na população, chamado aqui cromossomo j, são escolhidos aleatoriamente três outros cromossomos pais distintos, cromossomos k, l e m. Calcula-se um novo cromossomo, chamado aqui de n, da seguinte forma: cromossomo(n) = cromossomo(m) + peso.[cromossomo(k) - cromossomo(l)] o peso varia entre 0 e 2. O cromossomo novo (n) será incorporado à população se ao gerarmos um número aleatório entre 0 e 1, este for menor que a probabilidade de crossover, caso não seja, o cromossomo filho não é considerado. Um último teste é realizado no cromossomo filho n, se este apresenta função escore maior que o cromossomo pai j, caso seja, o cromossomo j é deletado e substituído pelo cromossomo n. As etapas seguintes são idênticas ao algoritmo genético original. Estamos considerando aqui que a função ajuste de maior valor é a que representa um indivíduo mais bem adaptado. Veja, este critério depende do tipo de problema a ser resolvido pelo algoritmo evolucionário. 91

92 Algoritmos Evolucionários (Evolução Diferencial) Na implementação do algoritmo de evolução diferencial, como nos algoritmos genéticos, o primeiro passo é gerar indivíduos de forma aleatória, como no exemplo das joaninhas. 92

93 Algoritmos Evolucionários (Evolução Diferencial) No passo seguinte, calculamos a função ajuste, que indica a adaptação de cada indivíduo. Depois aplicamos o operador crossover, descrito anteriormente, onde três joaninhas pais (joaninhas cinza, branca e amarela) geram uma joaninha filha, para cada cromossomo pai (joaninha verde), como mostrado ao lado. Cromossomo k Cromossomo l Cromossomo m Cromossomo n Cromossomo j cromossomo(n) = cromossomo(m) + peso.[cromossomo(k) - cromossomo(l)] 93

94 Algoritmos Evolucionários (Evolução Diferencial) Considerando que o cromossomo n passou no teste da probabilidade de crossover, e que tem função ajuste maior que a do pai (cromossomo j), este ocupa o lugar do pai, ou seja, o cromossomo j é deletado e substituído pelo cromossomo n. Por último, aplicamos a mutação, onde selecionamos aleatoriamente cromossomos filhos. O critério para escolher se um cromossomo filho sofrerá mutação, é a probabilidade de mutação (Pm). Geramos um número aleatório entre 0 e 1, se este número for menor ou igual à probabilidade de mutação, a mutação ocorre, caso contrário não. Testamos a condição de mutação para todos os cromossomos filhos. Terminamos um ciclo da evolução, ou iteração. O processo se repete um número finito de vezes. Cromossomo j é deletado e substituído pelo n Cromossomo n Mutação Cromossomo n mutado 94

95 Docking Molecular Como toda metodologia, a simulação de docking tem uma etapa de validação e refinamento do protocolo. Tal etapa é o que chamamos de re-docking, onde achamos o melhor protocolo capaz de recuperar a posição cristalográfica de um ligante acoplado ao sítio ativo de uma enzima. A condição para que possamos validar nosso protocolo de docking, é que haja informações sobre pelo menos uma estrutura cristalográfica de um complexo proteína-ligante. A estrutura cristalográfica é uma informação experimental precisa, sendo usada como padrão para verificarmos se o nosso programa de docking é capaz de achar a posição do ligante no sítio ativo. Chamamos da posição obtida computacionalmente de pose (em vermelho) e a comparamos com a cristalográfica (em cinza claro) a partir do RMSD (Root-Mean Square Deviation) que pode ser pensado como uma régua que mede a distância da posição cristalográfica da pose. Bio-Inspired Algorithms Applied to Molecular Docking Simulations. Heberlé G, De Azevedo WF Jr. Curr Med Chem 2011; 18 (9):

96 Docking Molecular A estrutura cristalográfica tem que estar presente como um padrão ouro, ou seja, antes de usarmos a simulação de docking, temos que verificar se o nosso protocolo de docking está funcionando adequadamente. Neste aspecto o trabalho em bioinformática é similar ao trabalho em bancada experimental. Quando vamos testar um novo protocolo experimental, normalmente recorremos ao um padrão, para validarmos o protocolo novo. No caso do docking, o padrão é a estrutura cristalográfica. Assim, visamos achar a posição do ligante usando o docking e, ao final, comparamos com a posição cristalográfica, como mostrado ao lado. Posição cristalográfica (cinza claro) e posição obtida pela simulação de docking (vermelha). 96

97 Docking Molecular No re-docking, vamos recolocar o ligante no sítio ativo e comparar com a posição cristalográfica. A comparação se faz por meio do cálculo do desvio médio quadrático, ou RMSD (root-mean square deviation). Podemos pensar no RMSD como uma média das distâncias atômicas entre a posição cristalográfica ( x cristal, y cristal, z cristal ) e a posição do ligante obtida pela simulação de docking ( x pose, y pose, z pose ). Chamamos esta posição de pose. Abaixo temos em vermelho a posição do ligante, obtida pela simulação de docking (pose), e, em branco, a posição cristalográfica. Vemos que temos uma boa concordância entre as duas posições. A equação para o cálculo do RMSD está mostrada abaixo, onde N indica que a soma é feita para todos os átomos do ligante. RMSD N j x x y y z z 1, j 2, j 1, j N 2, j 1, j 2, j 2 97

98 Docking Molecular As posições dos átomos nas moléculas são representadas por coordenadas atômicas, x, y e z. As coordenadas identificam a posição do centro do átomo no espaço, como as posições dos átomos mostradas ao lado. São essas coordenadas atômicas que são usadas para o cálculo do RMSD. Como as coordenadas atômicas estão na unidade angstrom (Å), o valor calculado para o RMSD é dado também em Å. Posição do átomo é indicada pelas coordenadas (x,y,z) 98

99 Docking Molecular Abaixo temos a captura da tela do programa Molegro Virtual Docker (MVD), com um inibidor de CDK2 na tela gráfica (lado direito). Ao colocarmos o cursor sobre o átomo, vemos as coordenadas atômicas na janela à esquerda (dentro do retângulo vermelho), as unidades em Å. Coordenadas atômicas do átomo indicado. 99

100 Docking Molecular Nas simulações de docking, com algoritmos evolucionários, o primeiro passo é gerar posições aleatórias para a molécula do ligante, como no exemplo das joaninhas. Cada joaninha representa uma posição do ligante. Veja que é o mesmo ligante, com diferentes posições. 100

101 Docking Molecular No passo seguinte, calculamos a função ajuste (função escore), que indica a adaptação de cada indivíduo, no caso do docking a energia de ligação de cada posição da molécula. Como a energia de ligação de Gibbs, só que agora usamos as coordenadas atômicas para calcularmos a energia de ligação. Depois aplicamos o operador crossover, como descrito para o algoritmo da evolução diferencial, onde três posições da molécula (pais) geram uma posição filha, como mostrado ao lado. Veja que a função escore não é uma função energia de fato, podemos chamar a função escore, como o Moldock Score, de pseudoenergia. Cromossomo k Cromossomo l Cromossomo m cromossomo(n) = cromossomo(m) + peso.[cromossomo(k) - cromossomo(l)] 101

102 Docking Molecular Por último, aplicamos a mutação, onde selecionamos aleatoriamente posições filhas (cromossomos filhos), e suas posições são modificadas. O critério para escolher se um cromossomo filho sofrerá mutação, é a probabilidade de mutação (Pm). Geramos um número aleatório entre 0 e 1, se este número for menor ou igual à probabilidade de mutação, a mutação ocorre, caso contrário não. Testamos a condição de mutação para todos os cromossomos filhos. Terminamos um ciclo da evolução, ou iteração. O processo se repete um número finito de vezes. Cromossomo n Mutação Cromossomo n mutado 102

103 Docking Molecular Ao final temos a posição obtida da simulação de docking (pose), comparada com a cristalográfica, como mostrada ao lado. Consideramos que a simulação de docking está funcionando bem, se o RMSD da sobreposição for menor que 2,00 Å, no exemplo ao lado o RMSD foi de 1,68 Å. 103

104 Função MolDock Score A função ajuste ou escore, usada pelo programa Molegro Virtual Docker é chamada MolDock Score. Esta função é uma aproximação da energia de interação entre o ligante e a proteína alvo. Usamos as coordenadas atômicas do ligante e da proteína, bem como, eventualmente, co-fatores e moléculas de água para calcular a função escore. Assim, a entrada da função do MolDock Score é o sistema biológico em estudo, ou seja, proteína, ligante, co-fatores e água. A saída é o valor da função calculada para o sistema biológico. No caso do docking, temos o cálculo da função MolDock Score para cada posição possível do ligante (pose). É a função que é usada como critério de seleção das poses. Sistema biológico MolDock Scoring Function Score 104

105 Função MolDock Score (MVD) Abaixo temos a seleção da função MolDock Score do programa MVD. Na opção mostrada, temos a seleção de termos de energia do ligante (Internal ES, Internal HB, Sp2-Sp2 torsions e Displaceable Water com Entropy Reward de 0,50). 105

HHSim Dr. Walter F. de Azevedo Jr. Prof. Dr. Walter F. de Azevedo Jr.

HHSim Dr. Walter F. de Azevedo Jr. Prof. Dr. Walter F. de Azevedo Jr. HHSim 2018 Dr. Walter F. de Azevedo Jr. Prof. Dr. Walter F. de Azevedo Jr. 1 O modelo de Hodgkin-Huxley foi proposto em 1952 para modelar o potencial de ação do axônio de sépia. Os dados sobre a corrente

Leia mais

Biofísica Molecular. Potencial de Ação. Prof. Dr. Walter F. de Azevedo Jr Dr. Walter F. de Azevedo Jr.

Biofísica Molecular. Potencial de Ação. Prof. Dr. Walter F. de Azevedo Jr Dr. Walter F. de Azevedo Jr. 2017 Dr. Walter F. de Azevedo Jr. Biofísica Molecular Potencial de Ação Prof. Dr. Walter F. de Azevedo Jr. 1 Biofísica e sua Relação com Outras Disciplinas Biologia tecidual Bioinformática Química Bioquímica

Leia mais

Biofísica. Potencial de Ação. Prof. Dr. Walter F. de Azevedo Jr Dr. Walter F. de Azevedo Jr.

Biofísica. Potencial de Ação. Prof. Dr. Walter F. de Azevedo Jr Dr. Walter F. de Azevedo Jr. 2017 Dr. Walter F. de Azevedo Jr. Biofísica Potencial de Ação Prof. Dr. Walter F. de Azevedo Jr. 1 Neurônio Canal de Sódio Bomba de Sódio/Potássio Íon Sódio Canal de Potássio Íon Potássio 2 Anatomia de

Leia mais

Biofísica. Prof. Dr. Walter F. de Azevedo Jr Dr. Walter F. de Azevedo Jr.

Biofísica. Prof. Dr. Walter F. de Azevedo Jr Dr. Walter F. de Azevedo Jr. 2018 Dr. Walter F. de Azevedo Jr. Biofísica Prof. Dr. Walter F. de Azevedo Jr. E-mail: walter@azevedolab.net 1 Busca de Informação Científica na Internet Você pode acessar o PubMed no endereço: Campo para

Leia mais

2015 Dr. Walter F. de Azevedo Jr. Potencial de Ação

2015 Dr. Walter F. de Azevedo Jr. Potencial de Ação Potencial de Ação Objetivos Apresentar conhecimentos relacionados ao potencial de ação. Aprender o uso do programa HHsim para simular potencial de ação. Materiais 1. Computador imac; 2. Programa HHSim.

Leia mais

Bioeletricidade e Bioeletrogênese

Bioeletricidade e Bioeletrogênese Bioeletricidade e Bioeletrogênese Física e Biofísica Prof. Patrícia Costa Eletricidade A eletricidade é um fenômeno físico originado por cargas elétricas paradas, ou em movimento, e por sua interação.

Leia mais

Biofísica. Transporte Ativo. Prof. Dr. Walter F. de Azevedo Jr Dr. Walter F. de Azevedo Jr.

Biofísica. Transporte Ativo. Prof. Dr. Walter F. de Azevedo Jr Dr. Walter F. de Azevedo Jr. 2018 Dr. Walter F. de Azevedo Jr. Biofísica Transporte Ativo Prof. Dr. Walter F. de Azevedo Jr. 1 Método Científico O método científico é um conjunto de procedimentos que possibilita a análise de fenômenos

Leia mais

Biofísica Dr. Walter F. de Azevedo Jr. Potencial de Repouso e Potencial de Ação Prof. Dr. Walter F. de Azevedo Jr.

Biofísica Dr. Walter F. de Azevedo Jr. Potencial de Repouso e Potencial de Ação Prof. Dr. Walter F. de Azevedo Jr. Biofísica 2019 Dr. Walter F. de Azevedo Jr. Potencial de Repouso e Potencial de Ação Prof. Dr. Walter F. de Azevedo Jr. 1 Estrutura Básica do Neurônio No nosso estudo da eletricidade na célula, focaremos

Leia mais

Evolução Diferencial e Sua Aplicação em Docking do Sistema Proteína-Ligante Prof. Dr. Walter F. de Azevedo Jr.

Evolução Diferencial e Sua Aplicação em Docking do Sistema Proteína-Ligante Prof. Dr. Walter F. de Azevedo Jr. 2017 Dr. Walter F. de Azevedo Jr. 110100111010 101101011100 100110011000 1111111100111 101101011010 100111100111 111110011000 110100111100 Evolução Diferencial e Sua Aplicação em Docking do Sistema Proteína-Ligante

Leia mais

2015 Dr. Walter F. de Azevedo Jr.

2015 Dr. Walter F. de Azevedo Jr. 2015 Dr. Walter F. de Azevedo Jr. 110100111010 101101011100 100110011000 1111111100111 101101011010 100111100111 111110011000 110100111100 Evolução Diferencial e Sua Aplicação em Docking do Sistema Proteína-Ligante

Leia mais

3. Resolução de problemas por meio de busca

3. Resolução de problemas por meio de busca Inteligência Artificial - IBM1024 3. Resolução de problemas por meio de busca Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Resolução de problemas por

Leia mais

Potencial de Repouso e Potencial de Ação. Profa. Dra. Eliane Comoli Depto de Fisiologia da FMRP-USP

Potencial de Repouso e Potencial de Ação. Profa. Dra. Eliane Comoli Depto de Fisiologia da FMRP-USP Potencial de Repouso e Potencial de Ação Profa. Dra. Eliane Comoli Depto de Fisiologia da FMRP-USP ROTEIRO: POTENCIAL DE REPOUSO E POTENCIAL DE AÇÃO 1. Potencial de Membrana de Repouso Papel da bomba de

Leia mais

Excitabilidade elétrica

Excitabilidade elétrica Excitabilidade elétrica O que é uma célula excitável? É uma célula que altera ativamente o potencial da membrana em resposta a algum estímulo (elétrico, físico ou químico). Exemplos: Neurônios e células

Leia mais

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação Inteligência Artificial Algoritmos Genéticos Aula I Introdução Roteiro Introdução Computação Evolutiva Algoritmos

Leia mais

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO AULA 06 Algoritmos Genéticos Sumário Introdução Inteligência Artificial (IA) Algoritmos Genéticos Aplicações de

Leia mais

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva Computação Evolutiva Algoritmos Genéticos A computação evolutiva (CE) é uma área da ciência da computação que abrange modelos computacionais inspirados na Teoria da Evolução das Espécies, essencialmente

Leia mais

Tópicos Especiais: Inteligência Artificial REDES NEURAIS

Tópicos Especiais: Inteligência Artificial REDES NEURAIS Tópicos Especiais: Inteligência Artificial REDES NEURAIS Material baseado e adaptado do Cap. 20 do Livro Inteligência Artificial de Russell & Norvig Bibliografia Inteligência Artificial Russell & Norvig

Leia mais

Algoritmos Genéticos. Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008

Algoritmos Genéticos. Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008 Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008 Introdução São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada pelo Fisiologista e Naturalista inglês Charles Darwin.

Leia mais

Excitabilidade elétrica

Excitabilidade elétrica Excitabilidade elétrica O que é uma célula excitável? É uma célula que altera ativamente o potencial da membrana em resposta a algum estímulo (elétrico, físico ou químico). Exemplos: Neurônios e células

Leia mais

2016 Dr. Walter F. de Azevedo Jr.

2016 Dr. Walter F. de Azevedo Jr. 2016 Dr. Walter F. de Azevedo Jr. 000000000000000000000000000000000000000 000000000000000000000000000000000000000 000000000000111111111110001100000000000 000000000001111111111111111111000000001 000000000111111111111111111111111000000

Leia mais

Modelos Evolucionários e Tratamento de Incertezas

Modelos Evolucionários e Tratamento de Incertezas Ciência da Computação Modelos Evolucionários e Tratamento de Incertezas Aula 01 Computação Evolucionária Max Pereira Motivação Se há uma multiplicidade impressionante de algoritmos para solução de problemas,

Leia mais

O POTENCIAL DE AÇÃO 21/03/2017. Por serem muito evidentes nos neurônios, os potenciais de ação são também denominados IMPULSOS NERVOSOS.

O POTENCIAL DE AÇÃO 21/03/2017. Por serem muito evidentes nos neurônios, os potenciais de ação são também denominados IMPULSOS NERVOSOS. O POTENCIAL DE AÇÃO 1 2 0 amplitude duração tempo 0 repouso 1 2 Por serem muito evidentes nos neurônios, os potenciais de ação são também denominados IMPULSOS NERVOSOS. O potencial de ação é causado pela

Leia mais

TRANSMISSÃO DE INFORMAÇÃO

TRANSMISSÃO DE INFORMAÇÃO Capítulo 3: Parte 2 1 TRANSMISSÃO DE INFORMAÇÃO Quando um neurônio recebe um estímulo, se este é forte o suficiente, leva a produção de um impulso nervoso. O impulso nervoso corresponde a uma corrente

Leia mais

Redes Neurais Artificiais

Redes Neurais Artificiais Redes Neurais Artificiais Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Redes Neurais Biológicas 2. Neurônio Artificial 3. Rede Neural Artificial 4. Keras 1 Redes Neurais Biológicas

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Aula 06 Algoritmos Genéticos Edirlei Soares de Lima Algoritmos Genéticos Método de busca local. Boa abordagem para lidar com espaços de busca muito

Leia mais

Desenvolveram a Equação para a propagação do impulso nervoso e suas generalizações para outros tecidos.

Desenvolveram a Equação para a propagação do impulso nervoso e suas generalizações para outros tecidos. Desenvolveram a Equação para a propagação do impulso nervoso e suas generalizações para outros tecidos. Um modelo de equações diferenciais originalmente proposto para a propagação de sinais elétricos no

Leia mais

Origens do potencial de membrana Excitabilidade celular

Origens do potencial de membrana Excitabilidade celular Origens do potencial de membrana Excitabilidade celular Algumas medidas elétricas Potencial (E,V) V (volt) Carga C (coulomb) Corrente (I) A (ampere = C/s) Resistência (R) W (ohm = V/A) Condutância (G)

Leia mais

O neurônio. Alguns íons podem utilizar esses poros para passar através da membrana (para dentro ou para fora da célula).

O neurônio. Alguns íons podem utilizar esses poros para passar através da membrana (para dentro ou para fora da célula). O neurônio O objetivo desta aula é fazer uma rápida revisão sobre as propriedades essenciais dos neurônios, utilizados como inspiração para os modelos de unidades das redes neurais artificiais. Ela servirá

Leia mais

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante:

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante: Algoritmos Genéticos Prof. Luis Otavio Alvares INE/UFSC Características de alguns problemas Tamanho do espaço de busca- Ex. caixeiro viajante: 10 cidades: 181.000 soluções 20 cidades: 10.000.000.000.000

Leia mais

I Curso de Férias em Fisiologia - UECE

I Curso de Férias em Fisiologia - UECE I Curso de Férias em Fisiologia - UECE Realização: Instituto Superior de Ciências Biomédicas Mestrado Acadêmico em Ciências Biológicas Apoio: 1 FISIOLOGIA CELULAR Laboratório de Eletrofisiologia 1. POTENCIAL

Leia mais

3 Algoritmos Genéticos

3 Algoritmos Genéticos Técnicas de Inteligência Computacional 33 3 Algoritmos Genéticos Este capítulo resume os principais conceitos sobre o algoritmo evolucionário empregado nesta dissertação. É apresentada uma breve explicação

Leia mais

4 Implementação Computacional

4 Implementação Computacional 4 Implementação Computacional 4.1. Introdução Neste capítulo é apresentada a formulação matemática do problema de otimização da disposição das linhas de ancoragem para minimizar os deslocamentos (offsets)

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Aula 6 Algoritmos Genéticos M.e Guylerme Velasco Roteiro Introdução Otimização Algoritmos Genéticos Representação Seleção Operadores Geneticos Aplicação Caixeiro Viajante Introdução

Leia mais

Redes Neurais Artificiais - Introdução. Visão Computacional

Redes Neurais Artificiais - Introdução. Visão Computacional Redes Neurais Artificiais - Introdução Visão Computacional Inspiração 2 Inspiração 3 Inspiração Atividade seletivanas conexões Soma os impulsos e passa a diante 4 Inspiração As conexões entre os dendritos

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 04 Algoritmos Genéticos Introdução Algoritmos genéticos são bons para abordar espaços de buscas muito grandes e navegálos

Leia mais

Codificação das variáveis: binária Iniciação da população: aleatória Avaliação: função aptidão Operadores. Critério de parada: número de gerações

Codificação das variáveis: binária Iniciação da população: aleatória Avaliação: função aptidão Operadores. Critério de parada: número de gerações AG Simples/Canônico (AGS) AG introduzido por Holland Funciona bem para problemas de otimização simples e/ou de pequenas dimensões A maior parte da teoria dos AGs está baseada no AGS Utilidade didática

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Algoritmos Genéticos Roteiro Introdução Algoritmos Genéticos Otimização Representação Seleção Operadores Genéticos Aplicação Caixeiro Viajante Introdução Algoritmos Genéticos (AGs), são métodos de otimização

Leia mais

Introdução a Algoritmos Genéticos

Introdução a Algoritmos Genéticos Introdução a Algoritmos Genéticos Tiago da Conceição Mota Laboratório de Inteligência Computacional Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro Outubro de 2007 O Que São? Busca

Leia mais

EXCITABILIDADE I POTENCIAL DE MEMBRANA EM REPOUSO POTENCIAL DE MEMBRANA EM REPOUSO POTENCIAL DE MEMBRANA EM REPOUSO POTENCIAL DE MEMBRANA EM REPOUSO

EXCITABILIDADE I POTENCIAL DE MEMBRANA EM REPOUSO POTENCIAL DE MEMBRANA EM REPOUSO POTENCIAL DE MEMBRANA EM REPOUSO POTENCIAL DE MEMBRANA EM REPOUSO EXCITABILIDADE I 1 - Introdução 1.1 Objetivo da aula: Estudar os mecanismos fisiológicos responsáveis pelos potenciais elétricos através das membranas celulares 1.2 Roteiro da aula: 1.2.1- Estudar o potencial

Leia mais

Exemplo 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 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 mais

Bioeletrogênese 21/03/2017. Potencial de membrana de repouso. Profa. Rosângela Batista de Vasconcelos

Bioeletrogênese 21/03/2017. Potencial de membrana de repouso. Profa. Rosângela Batista de Vasconcelos Bioeletrogênese CONCEITO: É o estudo dos mecanismos de transporte dos eletrólitos e de outras substâncias nos líquidos intra e extracelular através das membranas celulares dos organismos vivos. Profa.

Leia mais

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto Algoritmo Genético Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Introdução 2. Conceitos Básicos 3. Aplicações 4. Algoritmo 5. Exemplo Introdução São técnicas de busca

Leia mais

TÓPICOS EM INTELIGÊNCIA ARTIFICIAL Redes Neurais Artificiais

TÓPICOS EM INTELIGÊNCIA ARTIFICIAL Redes Neurais Artificiais TÓPICOS EM INTELIGÊNCIA ARTIFICIAL Redes Neurais Artificiais ricardo.kerschbaumer@ifc.edu.br http://professor.luzerna.ifc.edu.br/ricardo-kerschbaumer/ Introdução O Cérebro humano Mais fascinante processador

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Prof. Kléber de Oliveira Andrade pdjkleber@gmail.com Algoritmos Genéticos Conteúdo Introdução O Algoritmo Genético Binário Noções de Otimização O Algoritmo Genético com Parâmetros

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Algoritmos Genéticos Aluno: Fabricio Aparecido Breve Prof.: Dr. André Ponce de Leon F. de Carvalho São Carlos São Paulo Maio

Leia mais

Tópicos Especiais em Informática Fatec Indaiatuba

Tópicos Especiais em Informática Fatec Indaiatuba Prof. Dilermando Piva Jr. ((Compilação de diversas fontes na Internet)) Principal motivação para o estudo da computação evolutiva Otimização de processos complexo e que possuem um grande número de variáveis

Leia mais

Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP

Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP 1 Principais Tópicos Introdução Evolução Natural Algoritmos Genéticos Aplicações Conclusão 2 Introdução http://www.formula-um.com/ Como

Leia mais

Biofísica. Métodos Teóricos em Biofísica Algoritmos Evolucionários. Prof. Dr. Walter F. de Azevedo Jr Dr. Walter F. de Azevedo Jr.

Biofísica. Métodos Teóricos em Biofísica Algoritmos Evolucionários. Prof. Dr. Walter F. de Azevedo Jr Dr. Walter F. de Azevedo Jr. 2015 Dr. Walter F. de Azevedo Jr. Biofísica Métodos Teóricos em Biofísica Algoritmos Evolucionários Prof. Dr. Walter F. de Azevedo Jr. 110100111010 101101011100 100110011000 1111111100111 101101011010

Leia mais

REDES NEURAIS ARTIFICIAIS

REDES NEURAIS ARTIFICIAIS REDES NEURAIS ARTIFICIAIS REDES NEURAIS ARTIFICIAIS O QUE É UMA REDE NEURAL NEURÔNIOS BIOLÓGICOS CÉREBRO HUMANO E CAPACIDADE DE GENERALIZAÇÃO. Modelo McCulloch e Pitts FUNÇÕES DE ATIVAÇÃO APRENDIZADO APRENDIZADO

Leia mais

Algoritmos Genéticos. Texto base: Stuart Russel e Peter Norving - Inteligência Artificial

Algoritmos Genéticos. Texto base: Stuart Russel e Peter Norving - Inteligência Artificial Algoritmos Genéticos Texto base: Stuart Russel e Peter Norving - Inteligência Artificial junho/2007 Algoritmo Genético Uma variante da busca em feixe estocástica Estado sucessor gerado pela combinação

Leia mais

POTENCIAIS ELÉTRICOS DAS CÉLULAS

POTENCIAIS ELÉTRICOS DAS CÉLULAS POTENCIAIS ELÉTRICOS DAS CÉLULAS ESTRUTURA DO NEURÔNIO POTENCIAIS ELÉTRICOS DAS CÉLULAS POTENCIAL DE REPOUSO - Conceito; - Origem do potencial de repouso; POTENCIAL DE AÇÃO - Conceito; - Fases do potencial

Leia mais

Potencial de membrana e potencial de ação

Potencial de membrana e potencial de ação Potencial de membrana e potencial de ação Curso de Nutrição Disciplina Fisiologia Humana I Prof. Dr. Leandro Cattelan leandrocattelan@hotmail.com Agosto 2017 Conteúdos a serem abordados O potencial de

Leia mais

As aulas anteriores trataram do modelo de Hodgkin-Huxley e do formalismo de Hodgkin- Huxley para modelar neurônios.

As aulas anteriores trataram do modelo de Hodgkin-Huxley e do formalismo de Hodgkin- Huxley para modelar neurônios. Modelos de neurônios do tipo integra-e-dispara Introdução As aulas anteriores trataram do modelo de Hodgkin-Huxley e do formalismo de Hodgkin- Huxley para modelar neurônios. Como a estratégia de Hodgkin

Leia mais

Computação Evolutiva. Computação Evolutiva. Principais Tópicos. Evolução natural. Introdução. Evolução natural

Computação Evolutiva. Computação Evolutiva. Principais Tópicos. Evolução natural. Introdução. Evolução natural Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP Principais Tópicos Introdução Evolução Natural Algoritmos Genéticos Aplicações Conclusão 1 2 Introdução Evolução natural http://www.formula-um.com/

Leia mais

Roteiro MetaNeuron. Problemas sobre bioeletrogênese

Roteiro MetaNeuron. Problemas sobre bioeletrogênese Roteiro MetaNeuron Vá em http://www.metaneuron.org/ e baixe o software MetaNeuron. Baixe também o manual do programa. Potencial de membrana (Lesson 1). Problemas sobre bioeletrogênese Essa lição simula

Leia mais

OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL RESUMO INTRODUÇÃO

OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL RESUMO INTRODUÇÃO OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL Miquéias Augusto Ferreira Nantes 1, Douglas Peixoto de Carvalho 1 (Alunos do Curso de Matemática da Universidade Anhanguera - Uniderp)

Leia mais

GA Conceitos Básicos. Capítulo 3 Prof. Ricardo Linden

GA Conceitos Básicos. Capítulo 3 Prof. Ricardo Linden GA Conceitos Básicos Capítulo 3 Prof. Ricardo Linden Algoritmos Evolucionários Algoritmos evolucionários usam modelos computacionais dos processos naturais de evolução como uma ferramenta para resolver

Leia mais

SINAPSE: PONTO DE CONTATO ENTRE DOIS NEURONIOS SINAPSE QUIMICA COM A FENDA SINAPTICA SINAPSE ELETRICA COM GAP JUNCTIONS

SINAPSE: PONTO DE CONTATO ENTRE DOIS NEURONIOS SINAPSE QUIMICA COM A FENDA SINAPTICA SINAPSE ELETRICA COM GAP JUNCTIONS SINAPSE: PONTO DE CONTATO ENTRE DOIS NEURONIOS SINAPSE QUIMICA COM A FENDA SINAPTICA POTENCIAL DE REPOUSO E SUAS ALTERAÇÕES DESPOLARIZAÇÃO REPOLARIZAÇÃO HIPERPOLARIZAÇÃO POTENCIAL DE ACAO SINAPSE ELETRICA

Leia mais

Transmissão Sináptica

Transmissão Sináptica Transmissão Sináptica Objetivos: Rever conhecimentos relacionados ao potencial de ação. Aprender o uso do programa HHsim para simular potencial de ação. Apresentar as bases moleculares para o entendimento

Leia mais

Origens do potencial de membrana Excitabilidade celular

Origens do potencial de membrana Excitabilidade celular Origens do potencial de membrana Excitabilidade celular Origens do potencial de repouso Todas as células apresentam uma diferença de potencial elétrico (voltagem) através da membrana. Alterações na permeabilidade

Leia mais

Docking de Ligantes em Proteínas

Docking de Ligantes em Proteínas 110100111010 101101011100 100110011000 1111111100111 101101011010 100111100111 111110011000 110100111100 Docking de Ligantes em Proteínas Prof. Dr. Walter F. de Azevedo Jr. walter.junior@pucrs.br ou walter@azevedolab.net

Leia mais

3 Redes Neurais Artificiais

3 Redes Neurais Artificiais 3 Redes Neurais Artificiais 3.1. Introdução A capacidade de implementar computacionalmente versões simplificadas de neurônios biológicos deu origem a uma subespecialidade da inteligência artificial, conhecida

Leia mais

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS. Metaheurísticas de Buscas

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS. Metaheurísticas de Buscas PR UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS Metaheurísticas de Buscas ALGORITMOS GENÉTICOS (AG) Popularizados por John Holland podem ser considerados os primeiros modelos algorítmicos

Leia mais

Métodos de Busca. Inteligência Artificial. Algoritmos Genéticos. Algoritmos Evolucionários. Prof. Ms. Luiz Alberto Contato:

Métodos de Busca. Inteligência Artificial. Algoritmos Genéticos. Algoritmos Evolucionários. Prof. Ms. Luiz Alberto Contato: Inteligência Artificial Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com Métodos de Busca Busca Cega ou Exaustiva: Não sabe qual o melhor nó da fronteira a ser expandido. Apenas distingue o estado objetivo

Leia mais

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid 1 Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid Luciana Conceição Dias Campos Resumo Este trabalho consiste da aplicação de um algoritmo genético ao método

Leia mais

Modelagem. Realiza Experimentos. Compara. Testes dos Modelos. Realiza Simulações. Resultados Experimentais. Resultados das Simulações

Modelagem. Realiza Experimentos. Compara. Testes dos Modelos. Realiza Simulações. Resultados Experimentais. Resultados das Simulações azevedolab.net 1 Modelagem de Sistemas O fluxograma abaixo destaca o uso de uma abordagem computacional para o estudo de sistemas biológicos, destacado em vermelho. Em verde temos a abordagem experimental.

Leia mais

Redes Neurais e Sistemas Fuzzy

Redes Neurais e Sistemas Fuzzy Redes Neurais e Sistemas Fuzzy O ADALINE e o algoritmo LMS O ADALINE No contexto de classificação, o ADALINE [B. Widrow 1960] pode ser visto como um perceptron com algoritmo de treinamento baseado em minimização

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Aula 22 Redes Neurais Edirlei Soares de Lima Formas de Aprendizado Aprendizado Supervisionado Árvores de decisão. K-Nearest Neighbor (KNN). Support

Leia mais

3 Aprendizado por reforço

3 Aprendizado por reforço 3 Aprendizado por reforço Aprendizado por reforço é um ramo estudado em estatística, psicologia, neurociência e ciência da computação. Atraiu o interesse de pesquisadores ligados a aprendizado de máquina

Leia mais

BIOELETROGÊNESE. Propriedade de certas células (neurônios e células musculares) gerar e alterar a diferença de potencial elétrico através da membrana.

BIOELETROGÊNESE. Propriedade de certas células (neurônios e células musculares) gerar e alterar a diferença de potencial elétrico através da membrana. Profa Silvia Mitiko Nishida Depto de Fisiologia BIOELETROGÊNESE Propriedade de certas células (neurônios e células musculares) gerar e alterar a diferença de potencial elétrico através da membrana. Afinal

Leia mais

Estrutura comum dos AEs Seleção

Estrutura comum dos AEs Seleção Estrutura comum dos AEs Seleção Todos os AEs mantém uma população de tamanho m por: Utilizando uma população como fonte de pais para produzir n descendentes Reduzindo o tamanho da população expandida de

Leia mais

POTENCIAIS DE MEMBRANA: POTENCIAL DE REPOUSO E POTENCIAL DE AÇÃO. MARIANA SILVEIRA

POTENCIAIS DE MEMBRANA: POTENCIAL DE REPOUSO E POTENCIAL DE AÇÃO. MARIANA SILVEIRA POTENCIAIS DE MEMBRANA: POTENCIAL DE REPOUSO E POTENCIAL DE AÇÃO. MARIANA SILVEIRA COLETA, DISTRIBUIÇÃO E INTEGRAÇÃO DE INFORMAÇÃO Para o cérebro Medula espinhal Corpo celular do neurônio motor Corpo celular

Leia mais

FISIOLOGIA I. Potencial de Membrana e Potencial de Ação. Introdução

FISIOLOGIA I. Potencial de Membrana e Potencial de Ação. Introdução FISIOLOGIA I Potencial de Membrana e Potencial de Ação Introdução Existem potenciais elétricos através das membranas de, praticamente, todas as células do corpo. Além disso, algumas células, como as nervosas

Leia mais

IF-705 Automação Inteligente Algoritmos Evolucionários

IF-705 Automação Inteligente Algoritmos Evolucionários IF-705 Automação Inteligente Algoritmos Evolucionários Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática - CIn Departamento de Sistemas da Computação aluizioa@cin.ufpe.br

Leia mais

Algoritmos Genéticos. 1 Semestre de Cleber Zanchettin UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática

Algoritmos Genéticos. 1 Semestre de Cleber Zanchettin UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática Algoritmos Genéticos 1 Semestre de 2015 Cleber Zanchettin UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática 1 2 Introdução Darwin Naturalistas: cada espécie havia sido criada separadamente

Leia mais

Introdução à Neurociência Computacional (Graduação) Prof. Antônio Roque Aula 6

Introdução à Neurociência Computacional (Graduação) Prof. Antônio Roque Aula 6 Variações do modelo integra-e-dispara Nesta aula vamos apresentar algumas variações do modelo LIF visto na aula passada. Modelo integra-e-dispara com adaptação Estudos in vitro mostram que muitos tipos

Leia mais

Metahuerísticas: Algoritmos Genéticos. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng.

Metahuerísticas: Algoritmos Genéticos. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. Metahuerísticas: Algoritmos Genéticos Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 8) Meta-heurísticas Classificação de métodos heurísticos: os métodos

Leia mais

Introdução aos Algoritmos Genéticos

Introdução aos Algoritmos Genéticos Introdução aos Algoritmos Genéticos Prof. Matheus Giovanni Pires EXA 868 Inteligência Artificial Não-Simbólica B Universidade Estadual de Feira de Santana 2 Algoritmos Genéticos: Introdução Introduzidos

Leia mais

2018 Dr. Walter F. de Azevedo Jr. azevedolab.net

2018 Dr. Walter F. de Azevedo Jr. azevedolab.net 2018 Dr. Walter F. de Azevedo Jr. azevedolab.net 1 Turtle A biblioteca Turtle permite a partir de poucos comandos realizarmos desenhos de formas geométricas simples na tela. Não é objetivo da presente

Leia mais

Redes Neurais Artificial. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto

Redes Neurais Artificial. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto Redes Neurais Artificial Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Definições 2. Histórico 3. Conceitos Básicos 4. Aprendizado em RNA 5. Exemplo de Aprendizado com

Leia mais

Algoritmos genéticos Abordagem unificada de algoritmos evolutivos simples

Algoritmos genéticos Abordagem unificada de algoritmos evolutivos simples Introdução Inspiração biológica Histórico da computação evolutiva Algoritmo evolutivo simples Programação evolutiva Estratégias evolutivas Algoritmos genéticos Abordagem unificada de algoritmos evolutivos

Leia mais

Inteligência Artificial Redes Neurais

Inteligência Artificial Redes Neurais Inteligência Artificial Jarley P. Nóbrega, Dr. Faculdade Nova Roma Bacharelado em Ciência da Computação jpn@jarley.com Semestre 2018.2 Jarley P. Nóbrega, Dr. (Nova Roma) Inteligência Artificial Semestre

Leia mais

Figura 3.1: Fluxograma do algoritmo da Programação Genética.

Figura 3.1: Fluxograma do algoritmo da Programação Genética. 3 Programação Genética O termo Programação Genética passou a ser utilizado em 1990 nos trabalhos publicados por Koza [30] e De Garis [31]. A definição de Koza para este termo passou a predominar após a

Leia mais

CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa. Prof. Paulo André Castro

CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa. Prof. Paulo André Castro CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa Prof. Paulo André Castro pauloac@ita.br www.comp.ita.br/~pauloac Sala 110, IEC-ITA Sumário Busca Competitiva Para Ambientes multiagentes...

Leia mais

Circuitos RC e filtros de frequência. 6.1 Material. resistor de 1 kω; capacitor de 100 nf.

Circuitos RC e filtros de frequência. 6.1 Material. resistor de 1 kω; capacitor de 100 nf. Circuitos RC e filtros de frequência 6 6. Material resistor de kω; capacitor de 00 nf. 6.2 Introdução Vimos que a reatância capacitiva depende da frequência: quanto maior a frequência do sinal que alimenta

Leia mais

3 Algoritmos Genéticos

3 Algoritmos Genéticos Algoritmos Genéticos Algoritmos Genéticos (AGs) constituem um mecanismo de busca adaptativa que se baseia no princípio Darwiniano de seleção natural e reprodução genética [101]. AGs são tipicamente empregados

Leia mais

Circuitos RC e filtros de frequência. 7.1 Material

Circuitos RC e filtros de frequência. 7.1 Material Circuitos RC e filtros de frequência 7 7. Material Gerador de funções; osciloscópio; multímetros digitais (de mão e de bancada); resistor de kω; capacitor de 00 nf. 7.2 Introdução Vimos que a reatância

Leia mais

Autor: Edroaldo Lummertz da Rocha Home page: edroaldo.wordpress.com

Autor: Edroaldo Lummertz da Rocha Home page: edroaldo.wordpress.com Autor: Edroaldo Lummertz da Rocha Home page: edroaldowordpresscom E-mail: edroaldo@gmailcom Esse tutorial visa demonstrar de forma prática o processo de ajuste dos pesos sinápticos de uma rede neural artificial

Leia mais

Noções básicas de circuitos elétricos: Lei de Ohm e Leis de Kirchhoff

Noções básicas de circuitos elétricos: Lei de Ohm e Leis de Kirchhoff Noções básicas de circuitos elétricos: Lei de Ohm e Leis de Kirchhoff Material 2 Resistores de 3.3kΩ; 2 Resistores de 10kΩ; Fonte de alimentação; Multímetro digital; Amperímetro; Introdução Existem duas

Leia mais

INTELIGÊNCIA ARTIFICIAL

INTELIGÊNCIA ARTIFICIAL INTELIGÊNCIA ARTIFICIAL REDES NEURAIS Caracterização Intuitiva: Em termos intuitivos, Redes Neurais Artificiais (RNAs) são modelos matemáticos inspirados nos princípios de funcionamento dos neurônios biológicos

Leia mais

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho)

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Computação Evolutiva Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Principais Tópicos Computação Evolutiva Algoritmos Genéticos Codificação Função de

Leia mais

c= εa/d C m = ε/d Q = CV

c= εa/d C m = ε/d Q = CV http://www.icb.ufmg.br/biq/neuronet/grupoa/.html 1 de 8 06/06/2007 08:36 Balanço eletroquímico em bicamadas Introdução: Os axônios são responsáveis pela transmissão de informação entre diferentes pontos

Leia mais

Experimento 7. Circuitos RC e filtros de frequência. 7.1 Material. 7.2 Introdução. Gerador de funções; osciloscópio;

Experimento 7. Circuitos RC e filtros de frequência. 7.1 Material. 7.2 Introdução. Gerador de funções; osciloscópio; Experimento 7 Circuitos RC e filtros de frequência 7.1 Material Gerador de funções; osciloscópio; multímetros digitais (de mão e de bancada); resistor de 1 kω; capacitor de 100 nf. 7.2 Introdução Vimos

Leia mais

SIMULAÇÃO DA ATIVIDADE ELETROFISIOLÓGICA DE NEURÔNIOS

SIMULAÇÃO DA ATIVIDADE ELETROFISIOLÓGICA DE NEURÔNIOS 1 SIMULAÇÃO DA ATIVIDADE ELETROFISIOLÓGICA DE NEURÔNIOS O Programa AXOVACS [baseado no modelo proposto por Hodgkin e Huxley (1952) (J.Physiol. 117, 500)], que permite simular a atividade eletrofisiológica

Leia mais

1. Computação Evolutiva

1. Computação Evolutiva Computação Bioinspirada - 5955010-1 1. Computação Evolutiva Prof. Renato Tinós Programa de Pós-Graduação Em Computação Aplicada Depto. de Computação e Matemática (FFCLRP/USP) 2 Computação Bioinspirada

Leia mais