Pró-Reitoria de Graduação Curso de Engenharia Civil Trabalho de Conclusão de Curso

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

Download "Pró-Reitoria de Graduação Curso de Engenharia Civil Trabalho de Conclusão de Curso"

Transcrição

1 i Pró-Reitoria de Graduação Curso de Engenharia Civil Trabalho de Conclusão de Curso OTIMIZAÇÃO DE VIGAS DE CONCRETO ARMADO UTILIZANDO ALGORITMOS GENÉTICOS E REDES NEURAIS ARTIFICIAIS Autor: Renato Filho Ximenes de Paula Orientador: Prof. Dr. Li Chong Lee Bacelar de Castro Brasília - DF 2016

2 i RENATO FILHO XIMENES DE PAULA OTIMIZAÇÃO DE VIGAS DE CONCRETO ARMADO UTILIZANDO ALGORITMOS GENÉTICOS E REDES NEURAIS ARTIFICIAIS Artigo apresentado ao curso de graduação em Engenharia Civil da Universidade Católica de Brasília, como requisito parcial para a obtenção de Título de Bacharel em Engenharia Civil. Orientador: Prof. Dr. Li Chong Lee Bacelar de Castro Brasília 2016

3 ii Artigo de autoria de Renato Filho Ximenes de Paula, intitulado OTIMIZAÇÃO DE VIGAS DE CONCRETO ARMADO UTILIZANDO ALGORITMOS GENÉTICOS E REDES NEURAIS ARTIFICIAIS, apresentado como requisito parcial para obtenção do grau de Bacharel em Engenharia Civil da Universidade Católica de Brasília, em 15 de junho de 2016, defendido e aprovado pela banca examinadora abaixo assinada: Prof. Dr. Li Chong Lee Bacelar de Castro Orientador Curso de Engenharia Civil UCB Prof. MSc. Luis Alejandro Pérez Peña Examinador Curso de Engenharia Civil UCB Brasília 2016

4 iii DEDICATÓRIA A nosso Deus, cujo nome é Jeová, pelo dom da vida e por colocar em meu caminho pessoas que me inspiram e motivam a seguir em frente pelo carinho, humildade e força de vontade que afloram.

5 iv AGRADECIMENTOS Aos meus amados pais, Renato de Souza Paula e Ana Neide Ximenes de Paula, por priorizarem a educação em minha vida e por todo esforço, dedicação e amor que demonstraram nessa longa jornada. À minha querida namorada, Karla Maneta, por tornar factível a conclusão deste curso através de seus conselhos sábios e de seu imensurável carinho. A meu grande amigo Erick Felix por me auxiliar na implementação computacional do programa desenvolvido. A meu orientador Li Chong Lee Bacelar de Castro pela instrução, atenção e paciência no processo de elaboração deste estudo.

6 1 OTIMIZAÇÃO DE VIGAS DE CONCRETO ARMADO UTILIZANDO ALGORITMOS GENÉTICOS E REDES NEURAIS ARTIFICIAIS RENATO FILHO XIMENES DE PAULA RESUMO O pré-dimensionamento é de extrema importância para concepção final de um projeto, esta fase interfere sensivelmente na composição final dos custos e depende significativamente da experiência e intuição do projetista. Algoritmos baseados em programação sequencial, são limitados quando problemas envolvendo competências estritamente humanas são requeridas. Este estudo tem por objetivo elaborar uma rede neural artificial capaz de efetuar um prédimensionamento de seções transversais de vigas de concreto armado com custo mínimo a partir de algumas variáveis iniciais. Para tanto, é desenvolvida uma aplicação baseada em algoritmos genéticos que otimizam um conjunto de seções transversais retangulares de vigas de concreto armado submetidas a flexão simples servindo como conjunto de treinamento para a rede neural, de maneira a transferir conhecimento especializado de otimização a rede. Os algoritmos genéticos são modelos computacionais inspirados em princípios da evolução natural. Eles codificam, manipulam e modificam soluções codificadas em um espaço de busca de maneira a encontrar melhores indivíduos. Redes Neurais Artificiais são sistemas baseados no funcionamento do cérebro animal, que processa dados de maneira maciçamente paralela e distribuída. Trata-se de um ramo da inteligência artificial capaz de aprender e generalizar problemas, além de ser bastante empregado em problemas que envolvem otimização, reconhecimento de padrões, aproximação de funções e previsão de sistemas. Portanto a implementação das redes neurais artificiais tem por objetivo diminuir o tempo computacional requerido frente aos algoritmos genéticos e demonstrar sua eficiência na modelação de funções multidimensionais aplicada a processos de otimização. Palavras-chave: Otimização. Algoritmos genéticos. Redes neurais artificiais. Concreto armado.

7 2

8 3 ÍNDICE 1 INTRODUÇÃO REDES NEURAIS ARTIFICIAIS INTRODUÇÃO O que são Redes Neurais Áreas de Aplicação Neurônio Biológico Neurônio Artificial Tipos de funções de ativação ARQUITETURA DAS REDES NEURAIS PROCESSOS DE TREINAMENTO E APRENDIZADO REDE PERCEPTRON REDE ADALINE REDES PERCEPTRON MULTICAMADAS ALGORITMOS GENÉTICOS INTRODUÇÃO ESTRUTURA DOS ALGORITMOS GENÉTICOS COMPONENTES DE UM AG Cromossomos Genes Alelos Indivíduos Codificação Binária População Avaliação Seleção OPERADORES GENÉTICOS Crossover (Cruzamento) Mutação PARÂMETROS DE CONTROLE DOS ALGORITMOS GENÉTICOS Tamanho da População Taxa de Cruzamento... 45

9 Taxa de Mutação FUNÇÃO DE PENALIZAÇÃO VIGAS DE CONCRETO ARMADO VIGAS DE SEÇÃO RETANGULAR COM ARMADURA SIMPLES METODOLOGIA PREAMBULO FORMULAÇÃO IMPLEMENTAÇÃO DO ALGORÍTIMO GENÉTICO EXEMPLO DE OTIMIZAÇÃO IMPLEMENTAÇÃO DA REDE NEURAL PERCEPTRON MULTICAMADAS CONCLUSÕES E RECOMENDAÇÕES ABSTRACT REFERÊNCIAS APÊNDICE A.1 CÓDIGOS FONTE DO PROGRAMA VIGOTIM A.1.1 Classe Main A.1.2 Classe DimensionamentoViga A.1.3 Classe CromosssomoViga A.2 PROJETO DA REDE NEURAL EM JOONE A.2.1 Estrutura da rede neural A.2.2 RMSE ao longo das épocas de treinamento das topologias da Tabela A.2.2 Conjunto de treinamento da rede neural contendo as seções otimizadas por algoritmos genéticos

10 5 1 INTRODUÇÃO O processo de dimensionamento estrutural tem se tornado cada vez mais rápido, preciso e padronizado, devido principalmente ao crescimento tecnológico nas últimas décadas que proporcionou o surgimento de computadores mais robustos e softwares especializados. A aplicação de algoritmos de otimização no cálculo estrutural, como por exemplo quando se pretende diminuir uma função peso ou custo total através de mudanças na topologia, tipo de material, configuração ou dimensionamento de elementos, tem sido amplamente explorada na literatura, sua utilização torna possível a sistematização de processos e o pré-dimensionamento de elementos de maneira a evitar custos excessivos, mantendo as exigências de conforto e segurança. A necessidade de utilização de algum desses algoritmos se dá pelo fato de que softwares de dimensionamento estrutural necessitam de valores iniciais que interferem sensivelmente nos resultados finais, e são altamente dependentes da experiência, intuição e tempo disponível do engenheiro calculista. Portanto, o dimensionamento de uma estrutura sujeita à um pré-dimensionamento ineficiente, mesmo que atenda a critérios de segurança e serviço, pode ter um custo elevado comparado a um que utilizou em seu pré-dimensionamento um algoritmo de otimização. O dimensionamento estrutural tem agregado diversos métodos de otimização, os quais são divididos especialmente em dois grupos, os métodos heurísticos, a saber: Recozimento Simulado, Algoritmos Genéticos, Redes Neurais Artificiais, Colônia de Formigas e Busca Harmônica, que utilizam conceitos não-determinísticos inspirados em observações da natureza para a busca de soluções ótimas de funções, e os métodos matemáticos, os quais se destacam: Algoritmo Simplex, Algoritmo Conjugado, Método do Lagrangeano Aumentado, Newton- Raphson e Quasi-Newton, que empregam o uso de derivadas de primeira e segunda ordens para minimização ou maximização de uma ou mais funções. Recentemente um novo ramo da inteligência artificial denominado Redes Neurais Artificiais (RNA s), tem ganhado espaço em diversas áreas da engenharia civil. Devido sua capacidade de aprendizado e generalização, as RNA s tornam possíveis soluções de vários problemas, os quais seriam difíceis ou até mesmo impossíveis à programação baseada em regras comuns. Sua estrutura se baseia no sistema nervoso animal, que é altamente não-linear,

11 6 complexo e paralelo, com capacidade de realizar certos processos muito mais rapidamente que qualquer computador existente, como reconhecimento de padrões, percepção e controle motor. A sua aplicação na engenharia civil tem sido demonstrada por exemplo, nos domínios da otimização estrutural, seleção de formas de madeira, avaliação de danos estruturais e estimativa da resistência do concreto. Apesar de existir um vasto conteúdo sobre o uso de redes neurais na engenharia civil, muito se tem a descobrir sobre suas potencialidades e aplicações, considerando a recência de sua origem. O processo de elaboração de um projeto estrutural necessita não somente de rotinas préestabelecidas, cada projeto possui suas particularidades que dependem da avaliação e intuição de cada projetista, isso ocorre por haver incontáveis possibilidades de concepção do projeto que seriam impossíveis de serem analisadas por computadores convencionais, e exaustiva à programação de softwares baseados em algoritmos sequenciais, pois sua modelagem necessitaria levar em consideração inúmeras variáveis, situações e detalhes específicos e restritivos de cada problema. Por isso, a atividade humana é muito importante à tarefas que requerem o uso de intuição, reconhecimento de padrões, aprendizado e generalização. Ainda assim, muitas dessas atividades poderiam se beneficiar da utilização de ferramentas computacionais baseadas em processamento paralelo, real ou simulado, capazes de facilitar ou mesmo substituir tais atividades, isso tornaria o processo de elaboração do projeto estrutural sistemático, ágil e lucrativo. As RNA s são utilizadas quando problemas não podem ser solúveis por uma sequência de passos bem definidos, ou quando não há um modelo matemático que relacione valores de entrada e saída de um sistema, existindo apenas correlações instrumentais ou empíricas entre estes, basicamente as RNA s podem ser utilizadas em atividades que requerem intuição ou análise humana. Neste estudo as Redes Neurais Artificiais (RNA s) são apresentadas e discutidas, dando ênfase a Rede Perceptron Multicamadas (PMC), que é o principal objeto de estudo. É desenvolvido uma aplicação que utiliza uma rede PMC com aprendizado supervisionado, para a concepção inicial de vigas biapoiadas de concreto armado. A rede adota como amostras de treinamento valores otimizados de vigas de concreto armado, afim de aproximar a função que relacionar os dados de entrada aos valores desejados de saída, isso é possível devido a capacidade de a rede armazenar conhecimento especializado e generalizá-lo para situações

12 7 distintas aos quais foi treinada. O alto paralelismo entre as unidades de processamento da rede pode tornar o processo de otimização mais rápido e com menor gasto computacional ainda que se utilize processadores sequenciais, porém o uso de circuitos integrados capazes de processamento em paralelo tornaria a rede muito mais veloz, pois cada unidade de processamento corresponderia a um neurônio artificial. Algoritmos genéticos são utilizados como otimizadores na tarefa de instrução da referida rede PMC, para tanto será elaborado um programa desenvolvido na linguagem JAVA, com auxílio da biblioteca JENETICS, para otimizar um conjunto de vigas de comprimentos e/ou carregamentos diferenciados. Os algoritmos genéticos foram escolhidos devido a facilidade de implementação e grande aplicabilidade em problemas de otimização.

13 8 2 REDES NEURAIS ARTIFICIAIS 2.1 INTRODUÇÃO O que são Redes Neurais Rede Neural é um processador maciçamente paralelo e distribuído, composto por unidades de processamento simples que tem por finalidade armazenar conhecimento experimental e torna-lo disponível para utilização. É definida como um sistema conexionista, uma das divisões da Inteligência Artificial (IA). Seu interesse tem sido motivado pela velocidade e forma com que o cérebro humano processa determinadas informações quando comparado ao computador convencional. Atividades como reconhecimento de padrões, controle motor e percepção de objetos são processadas pelo cérebro animal muito mais rapidamente que qualquer computador existente. Isso acontece pela forma, complexidade e paralelismo que o cérebro organiza seus constituintes estruturais, os neurônios. O conhecimento é adquiro pela rede neural através de um processo de aprendizagem, onde ajustes nos pesos sinápticos são efetuados afim de armazenar esse conhecimento e atingir o objetivo de projeto desejado. (HAYKIN, 1999). O processo de aprendizagem usual de uma rede neural (treinamento supervisionado), consiste na introdução de exemplos de entrada e saída de dados, onde a rede extrai características necessárias para modelar a informação relacional entre eles. Quando o processo de aprendizagem cessa, o modelo formado pela rede pode ser utilizado para a resolução de problemas distintos ao conjunto de exemplo dado. Portanto as redes neurais são capazes de extrair características de exemplos e extrapola-los para a resolução de problemas com novos valores de entrada. (BRAGA et al, 2000). As redes neurais artificiais têm sido utilizadas para a resolução de uma ampla classe de problemas complexos que envolvem o processamento de uma extensa massa de dados que devem ser modelados e analisados de maneira multidisciplinar, levando em consideração tanto aspectos estáticos, como dinâmicos. (KOVÁCS, 1996).

14 9 As principais características das redes neurais são a capacidade de aprendizado e generalização do conhecimento adquirido, o que confere a elas a possiblidade de resolução de problemas nos quais métodos computacionais baseados em programação sequencial não são aplicáveis. Outros aspectos relevantes envolvendo a aplicação de redes neurais são: Adaptação por experiência, organização de dados, não-linearidade, tolerância a falhas, facilidade de implementação, processamento paralelo e distribuído. Devido a tais características as redes neurais têm sido utilizadas para a resolução de inúmeros problemas, nas mais diversas áreas do conhecimento, como engenharia, medicina, biologia e finanças. (SILVA et al, 2010) Áreas de Aplicação Existem inúmeras aplicações onde a utilização de redes neurais é adequada, a diversidade de uso se dá de tal maneira que a mesma topologia de rede pode ser utilizada para várias outras finalidades. Essa universalidade funcional torna as redes neurais uma poderosa ferramenta para a resolução de problemas complexos, onde não se tem uma relação definida entre valores de entrada e saída de dados, ou seja, quando não há um modelo matemático ou função que relacione variáveis de entrada à saídas desejadas, essa característica é acentuada quando a rede tem função de aproximar funções. (SILVA et al, 2010). As principais áreas de aplicação das redes neurais são: a) Aproximador universal de funções: É aplicável a problemas onde se deseja modelar uma função que relacione variáveis de entrada a saídas esperadas, tais funções podem ser lineares, não lineares, contínuas ou discretas. É utilizado quando a modelagem por técnicas convencionais é inviável devido à complexidade do problema, ou o dinamismo da função. b) Otimização de sistemas: É utilizada em problemas de minimização ou maximização de funções com ou sem restrições, pode englobar problemas de otimização linear, dinâmica ou combinatória. Um exemplo de aplicação para essa finalidade é a escolha da melhor rota entre duas cidades.

15 10 c) Sistemas de previsão: É aplicável a problemas onde partes anteriores de funções são utilizadas para prever valores futuros, levando em conta a relação entre o domínio e a imagem da função. Previsões do mercado financeiro, e previsões climáticas são alguns dos exemplos de aplicações. d) Reconhecimento e classificação de padrões: Quando o objetivo do problema consiste em determinar a(s) classe(s) de um determinado valor de entrada, tais valores podem apresentar ruído e ainda assim serem classificados adequadamente. Dentre as aplicações, pode-se citar: reconhecimento de voz, imagens, caracteres e digitais Neurônio Biológico Os neurônios são células do sistema nervoso responsáveis pela transmissão de informação, essa transmissão é feita através da diferença de potencial elétrico na sua membrana. Possuem corpo celular entre 5 a 150 µm e são compostos por núcleo, dendritos, axônios e outras organelas; sua topologia abrange formas piramidais, estreladas, fusiforme, piriformes ou esférica, sendo que cada forma varia com a localização e atividade funcional do neurônio. (MONTANARI, 2016). Figura Neurônio Biológico

16 11 Os dendritos são terminações com superfície irregular que se afilam até a extremidade e tem por função receber de forma contínua estímulos do meio ambiente, de células epiteliais sensoriais ou de outros neurônios. O corpo celular é composto pelas principais organelas citoplasmática (núcleo, retículo endoplasmático, lisossomos, citoesqueleto, etc.). É responsável pelo processamento de todas as informações advindas dos dendritos, produzindo um potencial de ativação que informará se o neurônio poderá disparar um estímulo elétrico ao longo de seu axônio. O axônio é um prolongamento que transmite estímulos elétricos vindos do corpo celular a outros neurônios, a células glandulares ou musculares. Geralmente possui estrutura mais longa que a dos dendritos e espessura constante e lisa, sua extremidade é composta por ramificações denominadas de terminações sinápticas. (SILVA et al, 2010). A transferência de informações se dá por meio de sinapses, que são ligações responsáveis pela conectividade entre a extremidade do axônio de um neurônio pré-sináptico e os dendritos de outros pós-sinápticos, tal conexão não é física existindo um espaço passível de ser preenchido por uma substância neurotransmissora responsável por ponderar, ou seja, controlar o fluxo de transmissão de estímulos elétricos entre neurônios. Essa transmissão resulta em uma alteração do potencial elétrico da membrana pós-sináptica (dendritos), que dependendo do tipo de neurotransmissor poderá ser excitatória ou inibitória. Na conexão excitatória há uma despolarização da membrana pós-sináptica que proporciona a formação de impulso nervoso no seu axônio, isso acontece devido a variações nos íons de potássio (K + ) e sódio (Na + ) dentro e fora da célula, para tanto os impulsos das sinapses devem diminuir o potencial elétrico dentro da célula de -70 mv (potencial de repouso) para -50 mv (potencial de ativação), ao atingir esse limiar, há uma inversão do fluxo de sódio e potássio, e o interior da célula torna-se positivo em relação ao exterior, essa inversão de polaridade propaga um impulso nervoso do axônio até as terminações sinápticas que então liberam substâncias neurotransmissoras para as claves sinápticas (regiões entre as terminações sinápticas e os dendritos) e o processo continua para o neurônio seguinte. Na conexão inibitória, a polaridade se mantém, pois, os estímulos sinápticos produzidos por neurônios pré-sinápticos não são suficientes para atingir o potencial de ativação do neurônio pós-sináptico, ou seja, a despolarização não é alcançada. Existem dezenas de tipos

17 12 de neurotransmissores, cada um determinará se haverá excitação ou inibição do neurônio seguinte. O período de excitação é sempre antecedido de um período de refração (período em que o axônio não pode ser estimulado até que estabeleça ou chegue próximo ao seu potencial de repouso). (BRAGA et al, 2000). Figura Variação do potencial de ação de um neurônio Neurônio Artificial O modelo estrutural das redes neurais artificiais foi baseado nas conexões existentes entre os neurônios, e as funções que ocorrem no cérebro animal. Os neurônios artificiais são réplicas muito simplificadas do neurônio biológico, com o objetivo de emular as funcionalidades da célula, como a geração e propagação de impulsos elétricos entre outros neurônios. As funções desempenhadas pelos neurônios são simples, como captar sinais de entrada, pondera-los de acordo com a intensidade da conexão sináptica e reuni-los para finalmente produzir uma resposta a partir de uma função de ativação previamente definida. (SILVA et al, 2010). Em 1943 foi proposto por Warren McCulloch e Walter Pitts um modelo de neurônio que engloba as principais características do neurônio biológico, em um artigo intitulado: A Logical Calculus of the Ideas Immannet in Nervous Activity, considerado o primeiro artigo

18 13 sobre redes neurais. O modelo de neurônio era composto por n terminais de entrada (representando os dendritos) e um único terminal de saída y (representando o axônio), cada terminal de entrada é ponderado por um peso (substância neurotransmissora), que emula a intensidade do sinal, podendo assumir valores positivos ou negativos, ou seja, valores excitatórios ou inibitórios, respectivamente. Os valores ponderados são então somados, adquirindo a forma de potencial de ativação, caso esse potencial atinja um limiar de excitação (threshold), o neurônio perpetua o sinal, caso contrário, o inibe. (BRAGA et al, 2000). No modelo de McCulloch & Pitts (1943) a função de ativação produzia apenas uma saída binária, pois esta função era do tipo degrau. O diagrama em blocos da figura 3.3 exemplifica o modelo de um neurônio artificial: Figura Neurônio Artificial O processamento de informações de entrada é composto por três etapas: 1. Pesos sinápticos (wkj) são responsáveis por ponderar os valores de entrada do neurônio, definindo a magnitude, ou seja, a importância de determinada entrada. Cada sinal de entrada é ponderado por um peso próprio, tais pesos podem assumir tanto valores positivos quanto negativos. 2. Um combinador linear soma os valores ponderados das entradas e agrega a bias (bk), formando um campo local induzido (v), também denominado potencial de ativação.

19 14 3. Uma função de ativação (φ(vk)) restringe a amplitude da saída do neurônio, sendo o valor obtido pelo combinador linear o argumento para esta função. Geralmente a função de ativação possui sua imagem limitada aos intervalos [0, 1] e [-1, 1]. As expressões a seguir definem matematicamente o modelo de um neurônio artificial k: Equação (1) m vk = wkj xj + bk j=1 (1) Equação (2) yk = φ(vk) (2) Tipos de funções de ativação A função de ativação determina o valor de saída do neurônio, pode ser classificada em parcialmente diferenciável ou diferenciável. O tipo escolhido varia conforme o objetivo da aplicação e a eficiência no projeto. As funções de ativação parcialmente diferenciáveis são: Figura 2.4 Funções de ativação parcialmente diferenciáveis

20 15 a) Função degrau Na função degrau as possibilidades de saída se limitam a 0 ou 1; para valores de campo local induzido negativos, o valor da função é igual a 0, caso contrário o valor assumido é 1. Equação (3) 1, se v 0 φ(v) = { 0, se v < 0 (3) b) Função sinal Na função sinal, os valores de saída são -1, 0, 1; para valores de campo local induzido negativos a função assume o valor -1, para positivos assume 1 e para valores iguais a 0 a função assume o valor 0. Equação (4) φ(v) = { 1, se v > 0 0, se v = 0 1, se v < 0 (4) c) Função linear por partes A função linear por partes, também chamada de rampa simétrica, tem sua saída igual ao valor do campo local induzido quando este se encontra entre limites estabelecidos, quando fora dos limites assume o valor desses limites. Os limites expressos na Equação (5) serão [-a, a]. Equação (5) a, se v > a φ(v) = { v, se a v a a, se v < a (5)

21 16 As funções totalmente diferenciáveis são aquelas onde a derivada de primeira ordem é existente em qualquer ponto da função, ou seja, não possuem nenhuma descontinuidade. Figura 2.5 Funções de ativação diferenciáveis a) Função logística A função logística possui valores no intervalo [0, 1], e é expressa conforme a Equação (6), onde a constante β é igual ao grau de inclinação da reta que tangencia o ponto de inflexão do gráfico. Equação (6) φ(v) = 1 (6) 1 + e β.v b) Função tangente hiperbólica A função tangente hiperbólica se assemelha a função logística, porém seus valores de saída se encontram no intervalo [-1, 1] Equação (7) φ(v) = 1 e β.v 1 + e β.v (7)

22 ARQUITETURA DAS REDES NEURAIS A arquitetura da rede está diretamente ligada a forma como os neurônios estão organizados na rede, ou seja, a forma como estes estão distribuídos, conectados e arranjados. Sua topologia pode ser definida de várias maneiras a depender da quantidade de camadas, da função de ativação de cada neurônio, do número de neurônios, da forma como estão ligados e do algoritmo usado para o aprendizado da rede, que tem por finalidade ajustar os pesos sinápticos para a convergência adequada da rede. Todas as características citadas, que distinguem a topologia, são função direta da quantidade de variáveis e da complexidade do problema. (SILVA et al, 2010). As principais arquiteturas existentes são: a) Redes alimentadas adiante (feedforward) com camada única As redes feedfoward de camada única, são compostas apenas por uma camada de entrada, e uma camada de saída, são ditas de camada única pois apenas a camada de saída é responsável pelo processamento das informações. Os principais tipos de rede formados por essa arquitetura são a rede Perceptron e a rede Adaline. Figura Rede do tipo feedforword de camada única

23 18 b) Redes alimentadas adiante (feedforward) de múltiplas camadas As redes feedforward de múltiplas camadas possuem uma ou mais camadas ocultas que são compostas por nós computacionais (neurônios ocultos), ou seja, que processam informação e extraem características, possuem também uma camada de entrada e uma de saída. Os principais tipos de rede com essa arquitetura são a rede Perceptron Multicamadas (PMC) e a Rede de Base Radial (RBF). Geralmente essas redes são totalmente conectadas, o que quer dizer que cada nó de entrada é conectado a todos os neurônios da primeira camada oculta, e cada neurônio é conectado a todos os neurônios da camada imediatamente posterior. São utilizadas para diversos fins, aproximação de funções, classificação de padrões e otimização são alguns deles. Redes com mais de uma camada oculta tem o potencial de classificar padrões dispostos em regiões não-convexas. Figura 2.7 Rede do tipo feedfoword de múltiplas camadas c) Redes Recorrentes Redes recorrentes tem suas saídas utilizadas para realimentação da própria rede, deve possuir ao menos um laço de realimentação. Podem possuir laços de auto-realimentação, onde a saída de um neurônio é utilizada como entrada para o próprio neurônio, e podem ter tanto

24 19 uma camada de neurônios como múltiplas camadas. São constituídas por elementos de atraso unitário (z-1) que possibilitam um comportamento dinâmico não-linear (HAYKIN, 1999). Sua característica principal é a possibilidade de processamento dinâmico de informações, isto é, podem trabalhar com sistemas variantes no tempo, como por exemplo: otimização, previsão de séries temporais e controle de processos. (SILVA et al, 2010). Figura 2.8 Rede do tipo recorrente 2.3 PROCESSOS DE TREINAMENTO E APRENDIZADO As Redes Neurais Artificiais possuem a capacidade de aprendizado de forma a generalizar relações e extrapola-las por meio de exemplos. Esses exemplos são divididos em exemplos de entrada e saída e são utilizados pela rede para sintonizar os pesos sinápticos de maneira a minimizar o erro entre a saída da rede e a saída desejada (exemplo de saída), modelando então uma função que os relaciona. O processo de ajuste desses pesos é regido por algoritmos de aprendizagem, que diferem entre si pela forma com que pesos sinápticos são modificados. (BRAGA et al, 2000). O ajuste de pesos sinápticos é feito de maneira ordenada, com passos específicos a depender de cada algoritmo de aprendizado, geralmente os pesos iniciais são compostos por valores aleatórios contidos no conjunto fechado [0,1], e a sintonização sináptica se dá a partir

25 20 desses valores. Cada peso tem a função de extrair características que envolvem o problema em questão, criando hiperplanos de separabilidade ou parcelas que compõe funções, de forma a relacionar adequadamente valores de entrada a valores de saída. Portanto, a função do algoritmo de aprendizagem é modificar cada peso na proporção que esse peso interfere no erro de saída. (SILVA et al, 2010). Existem basicamente três tipos de treinamento de rede, são eles: Treinamento supervisionado, treinamento não-supervisionado e treinamento com reforço. A distinção entre eles é feita pela forma como o treinamento é disposto a rede, que está ligada a maneira como a rede aprende a partir de estímulos externos. O treinamento supervisionado é o método mais utilizado para instruir redes neurais, a supervisão é feita por relações de entradas e saídas de dados que são definidas por um supervisor externo, na forma de amostras, que compõe os exemplos de treinamento da rede. Nessa modalidade de treinamento os pesos sinápticos são ajustados afim de melhor representar as relações existentes nas amostras (entradas de dados e saídas). Os exemplos de algoritmos de aprendizagem mais utilizados para o treinamento supervisionado são a regra delta e a regra delta generalizada. (BRAGA et al, 2000). No treinamento não-supervisionado não existe um supervisor ou professor que acompanhe o processo de aprendizagem, há apenas uma apresentação de dados de entrada a rede e esta se auto ajusta modelando e criando classificações e padrões próprios para esses dados através de processos de regularização estatísticos. (BRAGA et al, 2000). A quantidade de classificações ou padrões criados pela rede (clusters) é especificado pelo projetista, levando em consideração o propósito para a qual a rede é criada. (SILVA et al, 2010). O treinamento por reforço é considerado uma variação do treinamento supervisionado, a diferença entre eles é a forma com que o resultado da rede é avaliado, enquanto no supervisionado uma relação de dados de entrada e saída é utilizado para o treinamento da rede, no treinamento por reforço é disposto um valor de entrada que após processado pela rede é avaliado por um agente externo, cabendo a ele decidir se tal resultado é satisfatório ou não. O

26 21 processo de ajustes de pesos é feito por tentativa e erro, até se obter um resultado satisfatório, ou erro mínimo desejado. (SILVA et al, 2010). Os conjuntos de treinamento referentes ao aprendizado supervisionado serão expressos pelas matrizes Ω (x) (matriz de treinamento de entradas de dados) e Ω (d) (matriz de treinamento de saídas de dados), conforme segue abaixo: x00 x0n Ω (x) = [ ] xm0 xmn Ω (d) = [d00 d0n] Onde a posição m se refere aos elementos de entrada da rede para a matriz Ω (x) e também aos elementos de saída de rede para a matriz Ω (d), e a posição n se refere à cada amostra de treinamento da rede para ambas matrizes, ou seja, cada amostra de treinamento é representada como uma coluna nas matrizes. 2.4 REDE PERCEPTRON McCulloch e Pitts (1943) desenvolveram diversas topologias de redes neurais com capacidade de execução de funções booleanas, porém sem a capacidade de aprendizagem, somente com o trabalho de Rosenblatt (1958) o conceito de aprendizagem em RNAs foi implementado de fato. Rosenblatt introduziu um modelo computacional denominado perceptron, uma configuração simples de rede inspirada no funcionamento da retina. A rede perceptron simples é composta por apenas uma camada de neurônios que atuam como discriminadores lineares, cada neurônio soma estímulos externos ponderados por pesos sinápticos, e então retorna um valor de saída de acordo com uma função de ativação intrínseca a ele, as funções de ativação tipicamente usadas para esse modelo de rede são a função degrau e a função bipolar. O modelo desenvolvido por Rosenblatt era formado por unidades sensíveis a estímulos (retina), por um nível intermediário composto por unidades de associação e por um nível de saída composto por unidades de resposta. A função principal deste modelo era o reconhecimento de padrões como letras e números. (BRAGA et al, 2000).

27 22 A rede perceptron composta por um único neurônio é capaz de classificar padrões do tipo linearmente separável, ou seja, aqueles que se encontram em lados opostos de um hiperplano, limitando-se a classificar padrões com apenas duas classes. (HAYKIN, 1999). Figura 2.9 Topologia de um Perceptron simples idealizado por Rosenblatt Apesar de ser uma rede relativamente simples comparado ao neurônio biológico, a rede perceptron atraiu a atenção de diversos pesquisadores na época, especialmente da comunidade científica relacionada a inteligência artificial. (SILVA et al, 2010). Porém o interesse pelo assunto não teve longa duração, devido principalmente as críticas de Minsky e Papers (1969) em relação a sua capacidade computacional, que desestimularam os estudos da rede perceptron do início da década de 70 até o final da década de 80. (BRAGA et al, 2000). Na rede perceptron os estímulos são obtidos na camada de entrada, com informações acerca do problema a ser mapeado pela rede, esses valores são ponderados, de maneira a quantificar a importância de cada um em função de sua relação e influência com a saída desejada. Em seguida uma função de ativação utiliza como argumento essa soma ponderada adicionada ainda por um limiar, e retorna uma saída final para a rede. (SILVA et al, 2010). A forma mais simples de se representar uma rede neural é através de um único neurônio, o modelo a seguir exemplifica a topologia de uma rede neural perceptron de camada única,

28 23 composta por um único neurônio. Em geral esse neurônio recebe n valores de entrada, e possui uma única saída binária ou bipolar. O ajuste dos pesos sinápticos e limiar de ativação ocorrem através de um processo de treinamento supervisionado, ou seja, aquele onde se dispõe à rede exemplo compostos por valores de entrada e saída de dados afim de instruí-la. Figura 2.10 Modelo de uma rede Perceptron composta por um único neurônio Para uma função de ativação do tipo bipolar, a saída yj da figura 3.13 assumiria os seguintes valores expressos na Equação (8): φ(vj) = m 1, se wji xi + bj 0 j=1 m 1, se wji xi + bj < 0 { j=1 (8) Considerando um neurônio composto por duas entradas (x1 e x2) a equação que define o valor de yj é definida na Equação (9) como: φ(vj) = m 1, se wj1 x1 + bj 0 wj1. x1 + wj2. x2 + bj 0 j=1 m 1, se wj2 x2 + bj < 0 wj1. x1 + wj2. x2 + bj 0 { j=1 (9)

29 24 Representando o par x1 e x2 como coordenadas de um plano cartesiano, onde cada par ordenado se refere à uma amostra específica de exemplos de entrada e rearranjando a Equação (9) de maneira a ter x2 em evidência, é possível obter a Equação (10): x1. wj1 1, se wj1. x1 + wj2. x2 + bj 0 x2 bj wj2 wj2 φ(vj) = 1, se wj1. x1 + wj2. x2 + bj < 0 x2 < { x1. wj1 wj2 bj wj2 (10) Substituindo, wj1 = a e wj2 bj wj2 = c, tem-se a Equação (11): 1, se x2 a. x1 + c φ(vj) = { 1, se x2 < a. x1 + c (11) A Equação (11) divide os pares ordenados (x1 e x2) em dois grupos distintos, os que possuem o valor x2 maiores que a função afim a. x1 + c, cujo valor de saída é 1 e os que possuem o valor menor que a função, cujo valor de saída atribuído é -1. A fronteira de separabilidade entre os conjuntos das amostras pode ser definido então pela reta x2 = a. x1 + c, dividindo a amostra em dois grupos distintos. No gráfico a seguir, a função afim divide as amostras em dois conjuntos específicos A e B, sendo que o conjunto A corresponde a saída 1 da rede, e o conjunto B a saída -1. Figura 2.11 Fronteira de separação entre amostras

30 25 O ajuste dos pesos sinápticos e limiares expressos pelos coeficientes e constantes a e c, na Equação (11) da rede perceptron tem por objetivo adequar a reta x2 = a. x1 + c, afim de classificar os conjuntos de amostra em dois grupos distintos. Este ajuste é realizado por meio da regra de aprendizado de Hebb (1949). (SILVA et al, 2010). A regra de aprendizado de Hebb é feita de maneira iterativa, onde ajustes sucessivos nos pesos sinápticos são efetuados após cada apresentação de amostras de treinamento à rede. Quando o valor de saída da rede é processado, ocorrem ajustes nos pesos (wji) proporcionais a diferença entre o valor desejado (dj (a) ) referente amostra a e neurônio j e o valor processado (y). Se o valor for igual ao desejado, não ocorrem ajustes, se for diferente, os ajustes são efetuados. O processo pode ser definido pelas equações a seguir: Equação (12) wji atual = wji anterior + η. (dj (a) y). x (a) (12) Equação (13) bj atual = bj anterior + η. (dj (a) y). x (a) (13) Como a mesma regra de ajuste é aplicada para pesos e limiares, pode-se inserir o limiar dentro do vetor dos pesos sinápticos, ou seja, adotar wj0 = bj, e sua entrada x0 = 1 ou 1, conforme o critério do projetista. O coeficiente η é a taxa de aprendizagem, seu valor reflete a velocidade na qual a rede converge ao valor ideal, ou seja, a rapidez com que a rede é treinada. Os valores adotados geralmente abrangem o intervalo 0 < η < 1, e sua escolha é feita a critério do projetista; uma adoção indevida de η pode fazer a rede não convergir adequadamente, a escolha de um valor muito pequeno, pode causar demora no processo de convergência, e de um valor muito grande, um salto nos valores de pesos adequados. A rede perceptron composta por um neurônio é capaz de executar todas as funções booleanas com exceção a função XOR (ou exclusivo), devido esta não ser um problema linearmente separável.

31 REDE ADALINE A rede Adaline (Adaptive Linear Neuron) surgiu no mesmo período que a rede perceptron, foi idealizada por Widrow e Hoff, e teve um enfoque diferente da rede perceptron, já que sua principal aplicação se destinava ao processamento de sinais, enquanto a rede perceptron tinha uma abordagem na área de psicologia. Embora sua relevância se restringe ao meio acadêmico, foi de extrema importância para as RNAs, em virtude de seu algoritmo de aprendizagem, a regra Delta, precursora da regra Delta generalizada, também denominada de back-propagation. Similarmente à rede perceptron, a rede Adaline é composta por apenas uma camada neural de um neurônio e é do tipo feedforward, mas ao contrário da rede perceptron que tem a modificação de seus pesos baseados nos resultados produzidos pela função de ativação, a rede Adaline possui a atualização de seus pesos em função do campo local induzido, que é a soma ponderada de suas entradas pelos pesos. (BRAGA et al, 2000). Figura Modelo de uma rede Adaline composta por um único neurônio Na rede Adaline, os sinais de entrada e limiares são inicialmente ponderados pelos pesos sinápticos e somados como na rede perceptron, compondo o campo local induzido (v). A função de ativação é responsável por converter o campo local induzido em uma saída final,

32 27 geralmente binária ou bipolar. A expressão que define o processamento de informações da Adaline, é idêntica ao do perceptron de acordo com a Equação (14) e Equação (15) a seguir: m vj = wji xi + bj j=1 m vj = wji xi j=0 (14) yj = φ(vj) (15) Na Equação (14) o limiar bj é inserido no vetor peso, assumindo o valor wj0 simplificando a expressão. O bloco associador é responsável por auxiliar no processo de treinamento, o sinal obtido por ele é igual a diferença entre as saídas desejadas da rede (dj (a) ) e o valor do campo local induzido (v j ) produzido após a apresentação de cada amostra de exemplos. O objetivo da Adaline é minimizar o erro quadrático entre a saída da rede e os valores desejados, através de ajustes nos pesos sinápticos de maneira a obter um conjunto ótimo de pesos. Definindo w como o vetor de pesos w = [b j0 w j1 w j2 w jm ] T de um único neurônio j é possível expressar o erro quadrático em função desse vetor, conforme a Equação (16) abaixo: E(w) = 1 2 (d j(a) n a =1 v j ) 2 (16) Substituindo v k pelo resultado da Equação (14), obtém-se a Equação (17): n E(w) = 1 2 (dj(a) a =1 m wji xi j=0 ) 2 (17)

33 28 Equação (18) n E(w) = 1 2 (dj(a) a =1 w T x (a) ) 2 (18) Onde x (a) se refere ao vetor de treinamento de entradas x (a) = [ 1 x1 (a) x2 (a) xm (a) ] T, dj (a) é o valor desejado para a a-ésima amostra e n ao total de amostras de treinamento aplicadas a rede. Afim de se obter uma diminuição no erro quadrático médio, é aplicado um operador gradiente em relação ao vetor w, para atingir uma configuração ótima dos pesos sinápticos. Equação (19) E(w) = E(w) w (19) Substituindo E(w) pela expressão obtida na Equação (18), obtém-se a Equação (20): E(w) = [1 2 n (dj(a) a =1 w w T x (a) ) 2 ] (20) Pela regra da cadeia, obtém-se a Equação (21) n E(w) = 1 2 [ (dj(a) w T x (a) ) 2 ] = 1 w 2 u2 u a =1 n a =1 u w (21) Onde u = dj (a) w T x (a) e u2 u = 2u, logo: n E(w) = ( a =1 dj (a) w T x (a) ) w (dj(a) w T x (a) ) (22)

34 29 n E(w) = x (a) ( dj (a) w T x (a) ) (23) a =1 Ou ainda: n E(w) = x (a) (dj (a) vj) (24) a =1 A expressão na Equação (24) define o gradiente do erro quadrático em relação ao vetor peso, como o objetivo é minimizar a função erro, o processo de iteração para ajustes nos pesos sinápticos deve ocorrer numa direção contrária ao gradiente à uma taxa η (taxa de aprendizado), ou seja: Equação (25) w = η. E(w) (25) Substituindo o valor obtido na Equação (24) na Equação (18), tem-se: n w = η. x (a) (dj (a) vj) (26) a =1 Ou ainda: Equação (19) n w atual = w anterior + η. x (a) (dj (a) vj) (27) a =1 Aplicando os passos contidos na Equação (18), a rede convergirá então para o mínimo erro, obtendo a configuração ótima de pesos. O critério para finalização do processo iterativo

35 30 se dá quando a diferença entre o erro quadrático médio (E qm (w)) obtido em duas épocas consecutivas for menor que um erro estipulado. Equação (28) E qm (w) = 1 p (dj(a) vj) 2 n a =1 (28) Equação (29) E qm (w atual ) E qm (w anterior ) ε (29) A figura abaixo ilustra o processo iterativo de ajuste nos pesos sinápticos com o objetivo de chegar a configuração ótima dos pesos através da minimização do erro quadrático médio. Figura 2.13 Ilustração do processo de minimização do erro pela Regra Delta O processo de treinamento da rede Adaline aloca o hiperplano que separa as classes numa posição de separabilidade ótima, ou seja, há um ajuste do hiperplano de maneira a minimizar a soma dos quadrados das diferenças entre o valor estimado e o valor produzido.

36 REDES PERCEPTRON MULTICAMADAS A rede Perceptron Multicamadas, como o próprio nome sugere, é a rede perceptron com mais de uma camada, ou seja, aquela que possui ao menos uma camada intermediária, camada esta situada entre a camada de entrada e a de saída. Tais redes tem a capacidade de solucionar problemas não linearmente separáveis, como a função booleana XOR (ou exclusivo), implementar qualquer função contínua desde que tenha uma camada intermediária, e caso tenha mais de uma camada intermediária qualquer função existente. No que se refere ao reconhecimento e classificação de padrões, as redes Perceptron com mais de uma camada são capazes de classificar problemas que estejam situados em regiões não-convexas. (BRAGA et al, 2000). A grande popularidade desta rede se deu com a publicação do livro Parallel Distributed Processing (Rummelhart et al,1986), onde foi introduzido e explicado o algoritmo de treinamento backpropagation, que sanou algumas das limitações envolvendo o treinamento de redes complexas. Figura 2.14 Ilustração de uma rede Perceptron Multicamadas,

37 32 O funcionamento da rede Perceptron Multicamadas é semelhante ao da perceptron simples, a diferença ocorre devido a existência de neurônios nas camadas intermediárias que não recebem sinais diretamente da camada de entrada, tais neurônios são estimulados por sinais advindos de neurônios situados na camada imediatamente anterior a eles. O processo de treinamento ocorre de maneira supervisionada, com amostras de exemplos que são expostos à rede afim de instruí-la, utilizando para esse fim um algoritmo de aprendizado, como por exemplo, o backpropagation, também conhecido como regra Delta generalizada, composto por duas fases distintas, a primeira denominada propagação adiante, e a segunda, propagação reversa. Na propagação adiante um conjunto de treinamento de entrada é inserido na rede, a rede então processa esses dados camada a camada até produzir suas saídas, que são comparadas com um conjunto de treinamento de saída, os desvios produzidos entre a saída da rede o conjunto de treinamento é utilizado para efetuar os ajustes dos pesos e limiares de todos os neurônios. Para facilitar o entendimento do funcionamento do algoritmo backpropagation, será definido algumas variáveis de acordo com as figuras abaixo: Figura 2.15 Notação para demonstração do algoritmo backpropagation

38 33 W ji (L) se refere as matrizes de pesos sinápticos, onde os índices inferiores ji, indicam que o elemento dessa matriz liga o j-ésimo neurônio da camada (L) ao i-ésimo neurônio da camada (L-1). v j (L) se refere ao potencial de ativação de cada neurônio j da respectiva camada (L), ou seja, a soma dos produtos das entradas desse neurônio pelos respectivos pesos. φ j (L) se refere a função de ativação de cada neurônio j da respectiva camada (L), pode ser uma função linear, degrau, bipolar, gaussiana, etc. A primeira fase do processo de treinamento é a propagação adiante, podendo ser expressa pelas seguintes equações: Para o cálculo do potencial de ativação da primeira camada é utilizado a equação abaixo: m v j (L) = w ji (L). xi j=0 (30) da função. Para o cálculo da função de ativação é utilizado o potencial de ativação como argumento φ j (L) = g(v j (L) ) (31) Para o cálculo do potencial de ativação das outras camadas é utilizado uma equação similar, onde os sinais de entrada são os resultados obtidos na função de ativação do neurônio anterior. m v j (L) = w ji (L). φ i (L 1) j=0 (32)

39 34 A função que define o erro de aproximação, ou seja, a diferença entre a saída esperada e a saída obtida é a função erro quadrático, ela mede o desempenho local da rede. n 3 E(a) = 1 2 (d j(a) φ j (3) ) 2 j =1 (33) Onde d j (a) é o exemplo de treinamento referente ao j-ésimo neurônio, da a-ésima amostra de treinamento e φ j (3) é a saída do j-ésimo neurônio da última camada. O erro quadrático médio pode ser definido como uma média aritmética dos erros após uma época de treinamento, ou seja, após a apresentação de todas amostras de treinamento (n amostras). Pode ser expressa pela equação abaixo: n E M = 1 n E(a) a =1 (34) O primeiro passo do algoritmo backpropagation consiste na sintonização dos pesos presentes na última camada neural, esse processo visa minimizar diretamente o erro entre a saída produzida pela rede e a saída desejada, o método utilizado é o do gradiente descendente, para tal fim considere uma rede neural de 3 camadas como ilustrado na figura E (3) = E W ji (3) = (3) (3) E (3) φ φ j (3) j v v j (3) j W (35) ji Pela Equação 33, tem-se: E (3) φ = (d j(a) φ (3) j ) (36) j

40 35 A derivada da função de ativação em relação ao campo local induzido é igual a própria derivada de primeira ordem da função considerada. φ j (3) (3) v = g (v (3) j ) (37) j v j (3) W ji (3) = φ i (2) (38) E (3) W = (d j(a) φ (3) j ) g (v (3) (2) j ) φ i ji (39) Substituindo as parcelas referentes as equações 36 e 37 por δ j (3), temos: δ j (3) = (d j (a) φ j (3) ) g (v j (3) ) (40) W (3) E ji = η (3) W W (3) ji = η δ (3) (2) j φ i ji (41) A Equação 39 pode ser expressa por um processo iterativo de ajuste dos pesos sinápticos, da seguinte forma: W ji (3) (t + 1) = W ji (3) (t) + η δ j (3) φ i (2) (42) O segundo passo do algoritmo backpropagation é o ajuste dos pesos sinápticos situados nas camadas intermediárias, o seu ajuste leva em consideração a diferença entre a saída desejada e a saída da rede dos neurônios posteriores já que não se tem um valor de saída ideal para tais neurônios. Tal ajuste é efetuado após os ajustes dos pesos da última camada, que servirão de base para o ajuste dos pesos da camada anterior a esta, o que significa que o erro é retropropagado e utilizado para correção dos pesos da camada intermediária.

41 36 E (2) = E W ji (2) = (2) (2) E (2) φ φ j (2) j v v j (2) j W (43) ji φ j (2) (2) v = g (v (2) j ) (44) j v j (2) W ji (2) = φ i (1) (45) n 3 (3) E (2) φ = E (3) j v v k k k=1 φ j (2) n 3 = E (3) v k k=1 n 3 k=1 φ j (2) (3) (2) w kj. φ j (46) n 3 E (2) φ = E (3) j v w kj k k=1 (3) (47) E v k (3) = (3) E (3) φ φ j (3) j v = (d k(a) φ (3) k ) g (v (3) (3) k ) = δ k k (48) n 3 E (2) φ = δ (3) (3) k w kj j k=1 (49) Substituindo o resultado das Equações 44, 45 e 49 em 43, obtém-se: n 3 E (2) = E (2) W = ( δ (3) k w (3) kj ) g (v (2) (1) j ) φ i ji k=1 (50)

42 37 Substituindo as parcelas referentes as Equações 44 e 49 por δ j (2), temos: n 3 δ (2) j = ( δ (3) k w (3) kj ) g (v (2) j ) (51) k=1 Como o ajuste de pesos deve ser feito em direção contrária ao gradiente erro, obtém-se: W (2) E ji = η (2) W W (2) ji = η δ (2) (1) j φ i ji (52) A Equação 52 pode ser expressa por um processo iterativo de ajuste dos pesos sinápticos, da seguinte forma: W ji (2) (t + 1) = W ji (2) (t) + η δ j (2) φ i (1) (53) A correção dos pesos sinápticos dos neurônios ligados diretamente a camada de entrada são efetuados de maneira similar a equação 42, e o processo de diferenciação é idêntico. W ji (1) (t + 1) = W ji (1) (t) + η δ j (1) x i (54)

43 38 3 ALGORITMOS GENÉTICOS 3.1 INTRODUÇÃO Os Algoritmos Genéticos, introduzidos por John Holland no final da década de 60, são métodos de otimização e busca, do grupo dos algoritmos evolucionários, inspirados no princípio da seleção natural e evolução, teoria proposta por Charles Darwin, na qual afirma que indivíduos mais adaptados ao meio ambiente são mais propensos a sobreviverem e gerarem descendentes. Seu objetivo é varrer o espaço de busca de maneira a encontrar uma solução ótima sem a necessidade de aplicar métodos de derivação, utilizando apenas operações simples em indivíduos de um grupo, denominado população. (LACERDA; CARVALHO, 1999). Os algoritmos genéticos são muito utilizados em problemas onde existe um dado conjunto de elementos e busca-se encontrar o melhor indivíduo ou grupo de indivíduos que atendam a restrições previamente definidas. (CASTRO, 2012). 3.2 ESTRUTURA DOS ALGORITMOS GENÉTICOS O processo de funcionamento dos AG s é composto por diversas fases, seu objetivo consiste em criar uma população de possíveis soluções para o problema e submetê-las a operações de cruzamento e mutação para então avalia-las segundo uma função de aptidão. A estrutura de funcionamento dos algoritmos genéticos segue as seguintes etapas: Avaliação: Cada solução contida na população presente é avaliada através de uma função de aptidão, podendo ser composta pela função a ser otimizada, um ordenamento linear ou um ordenamento exponencial. Tem por objetivo definir o nível de aptidão de cada indivíduo. Seleção: São selecionados indivíduos da população de acordo com seu nível de aptidão, expresso pela função de aptidão. Indivíduos com maior percentual de aptidão tem maior probabilidade de serem selecionados. Cruzamento: Indivíduos são combinados através de troca de seus materiais genéticos, que expressam a solução codificada.

44 39 Mutação: Indivíduos tem parte do seu material genético modificado, acrescentando variabilidade genética em seu material. Atualização: Os novos indivíduos gerados são inseridos na população Finalização: O processo é finalizado caso um critério de encerramento seja atendido, como a convergência de uma porcentagem da população para um mesmo valor, ou um número máximo de iterações. Figura 3.1 Estrutura de uma AG tradicional

45 COMPONENTES DE UM AG Cromossomos Cromossomo representa uma determinada solução do problema, é o conjunto de genes que traz consigo informações acerca das variáveis associadas a função objetivo Genes O gene descreve uma determinada variável da função objetivo, é a unidade básica do cromossomo. Possui a quantidade de bits suficiente para abranger todo o espaço representativo da variável associada Alelos Alelos são todos os valores possíveis que o gene pode assumir, afetando diretamente as características do mesmo Indivíduos Indivíduos são codificações de possíveis soluções do problema, que são manipulados afim de produzirem novos indivíduos. É a unidade fundamental do algoritmo genético, onde está contida as variáveis do problema a ser otimizado. Existem diversos tipos de codificação, como a codificação binária e a codificação real, cada qual com suas vantagens e desvantagens, principalmente acerca da dimensionalidade e precisão numérica requerida Codificação Binária A codificação binária é um dos tipos mais utilizados em processos de otimização por AG s devido a sua praticidade e facilidade de implementação, além de poder representar com certa precisão as variáveis de problemas formados por conjuntos reais. Um indivíduo pode ser representado por uma sequência binária s = [b n b 2 b 1 b 0 ], onde b i = {0,1} e n é o número de bits suficiente para representar todo o espaço amostral das variáveis, ou seja, o maior valor em módulo do intervalo real.

46 41 Para a representação de variáveis reais no alfabeto binário é necessário a discretização do conjunto real, ou seja, é preciso tornar um conjunto infinito em finito de maneira que a quantidade de elementos desse conjunto seja possível de ser representada pela codificação binária. O tamanho de cada gene pode ser representado pela equação: n = [log 2 (t. 10 p )] + 1 (55) Onde n representa o comprimento do gene necessário para a representação do maior valor em módulo do conjunto real referente a variável em questão, t representa a amplitude do conjunto real da variável (x máx x mín ) e p representa a precisão requerida em casas decimais. O cromossomo é composto pela concatenação de alelos binários que representam as variáveis como mostra a figura 4.2. Sua decodificação para o valor real da variável (x) é feita através das equações 56 e 57. Figura 3.2 Cromossomo formado pela concatenação de alelos x = x mín + ( x máx x mín 2 n ) x (56) 1 s = [b n b n 1 b 2 b 1 b 0 ] x = b i 2 i n i=0 (57) Onde x representa o valor inteiro que indica a posição da variável x no espaço de busca discretizado advindo da conversão do valor binário do cromossomo para o valor inteiro. Encontra-se no intervalo fechado [0, 2 n -1].

47 População A população é o conjunto de indivíduos (cromossomos) que representam as possíveis soluções do problema, a população inicial é escolhida aleatoriamente, e as subsequentes passam por processos de seleção e mutação. A geração define o número de vezes que a população passou pelo processo de seleção, mutação ou reprodução. Um processo muito usual é a conservação do melhor indivíduo sem que haja alteração genética deste de uma geração a outra, tal processo é denominado elitismo e tem por objetivo evitar perdas de material genético valioso Avaliação A avaliação consiste na determinação do nível de adaptabilidade de cada indivíduo, esse nível é determinado através de uma função de aptidão que indica o quão bem adaptado é o indivíduo, consiste muitas vezes na própria função a ser otimizada, onde as variáveis que compõem o indivíduo são substituídas na função a ser otimizada produzindo um resultado que é comparado aos demais ou em um ordenamento linear, na qual os limites da função objetivo dos indivíduos são enquadrados em um limite previamente definido, normalmente nos intervalos 1 Máx 2 e Máx + Mín = 2, onde Máx e Mín representam os limites das aptidões a serem definidos Seleção Após a avaliação dos indivíduos, um método de seleção é utilizado para escolher os melhores, ou seja, os com maiores aptidões, afim de efetuar cruzamentos e mutações e gerar uma população com indivíduos mais aptos. Os métodos de seleção levam em consideração a probabilidade de seleção do indivíduo e está relacionada a aptidão de cada um, indivíduos com alta aptidão tem probabilidade proporcionalmente alta de serem selecionados. Um dos métodos mais utilizados no processo de seleção é o método da roleta, consiste na determinação da probabilidade de seleção de cada indivíduo, que é diretamente proporcional a sua aptidão. É determinado pela razão entre a aptidão do indivíduo e a soma das aptidões. O método consiste no ordenamento decrescente em função da aptidão de cada indivíduo e a

48 43 elaboração de uma coluna de aptidões acumuladas, então um número aleatório situado no intervalo [0, Soma total das aptidões] é selecionado, o indivíduo que possui aptidão acumulada imediatamente acima do número selecionado é escolhido. O processo se repete até que todos os indivíduos sejam substituídos por novos indivíduos, podendo ocorrer repetições de indivíduos selecionados. A equação 57 é responsável por determinar a probabilidade p i de seleção de cada indivíduo, onde f i é a aptidão do indivíduo em questão, N é o número de indivíduos na população e f j representa cada indivíduo j. p i = f i N f j j=1 (58) A figura 4.3 mostra como a seleção é feita e exemplifica como a seleção é proporcional a probabilidade de seleção p i devido a porcentagem representativa de cada indivíduo na roleta. Figura 3.3 Ilustração do Método da Roleta 3.4 OPERADORES GENÉTICOS Crossover (Cruzamento) No crossover indivíduos (pais) são combinados afim de produzir novos indivíduos (filhos), como a probabilidade de seleção é maior em indivíduos com maior aptidão, genes de indivíduos com grande aptidão tendem a aparecer com frequência na população ao longo do tempo, proporcionando a convergência do algoritmo. O processo de crossover consiste na divisão de duas ou mais partes dos cromossomos de dois indivíduos da população, no

49 44 cruzamento de um ponto, parte do fragmento de um indivíduo é recombinado com a parcela de outro e vice-versa. Figura 3.4 Ilustração do processo de cruzamento de um ponto Mutação A mutação ocorre logo após o processo de crossover com uma determinada probabilidade de ocorrência, ela é responsável pela diversidade genética na população, incorrendo em uma amplitude de busca necessária à não estagnação em um mínimo ou máximo local e mantendo um nível mínimo de abrangência no espaço de busca. O operador de mutação traz mudanças aleatórias nas características do indivíduo, por meio de alterações nos alelos (valores dos bits). O processo de mutação para codificação binária mais utilizado é a mutação binária simples, onde posições na cadeia do indivíduos são escolhidas aleatoriamente e seus valores são invertidos, ou seja, se o valor do alelo escolhido corresponde a 1 seu novo valor será 0, caso seja 0 o novo valor corresponderá a 1. Figura Ilustração do processo de mutação binária simples

50 PARÂMETROS DE CONTROLE DOS ALGORITMOS GENÉTICOS Tamanho da População O número de indivíduos define o tamanho da população, a escolha adequada do tamanho da população interfere na velocidade de convergência e eficiência do algoritmo. Quanto maior é a população, maior a diversidade de indivíduos e mais próximo da solução ótima convergirá o algoritmo, porém se esse número for demasiado, o desempenho do algoritmo será afetado, aumentando o tempo computacional para sua convergência, em KHAN (2002) é sugerido que o tamanho da população ( n pop ) se enquadre no intervalo l e 2 l, onde l é o tamanho do cromossomo e n pop o tamanho da população. l n pop 2 l (59) Taxa de Cruzamento A taxa de cruzamento determina a probabilidade de cruzamento entre dois indivíduos, é representado por um número entre 0 e 1, sendo que 0 expressa uma probabilidade nula de cruzamento, e 1 uma probabilidade de 100%. O processo de cruzamento para cada par de indivíduos acontece com o sorteio de um número entre 0 e 1, se o número sorteado for menor que a taxa de cruzamento, tais indivíduos são cruzados afim de gerar novos indivíduos com materiais genéticos diversificados. A taxa de cruzamento interfere na inserção de novos indivíduos na população, quanto maior o valor da taxa maior o número de substituições. O valor ideal se encontra entre 0,6 e 0,9. (LACERDA; CARVALHO, 1999) Taxa de Mutação A taxa de mutação determina a probabilidade de mutação em cada população após o processo de cruzamento, da mesma forma que a taxa de cruzamento é expresso por um valor entre 0 e 1. O processo é similar ao do cruzamento, sendo diferenciado por tratar de cada indivíduo da população ao invés de pares. Um número entre 0 e 1 é sorteado para cada indivíduo, se o número sorteado for menor que a taxa de mutação, a depender do processo de mutação, posições do cromossomo são escolhidas aleatoriamente e modificadas. Valores baixos

51 46 de mutação podem provocar a convergência do algoritmo para mínimos locais, já valores muito altos podem transformar o algoritmo em um simples buscador aleatório, perdendo assim sua funcionalidade. Segundo Tanomaru (1995) valores inferiores a 0,01 para a taxa de mutação são indicados. 3.6 FUNÇÃO DE PENALIZAÇÃO Na otimização por algoritmos genéticos não é necessário uma modelagem específica das restrições do problema, porém para tratar dessas restrições muitas vezes utiliza-se as funções de penalização, que incrementam ou decrementam um valor na função de aptidão caso essas restrições sejam violadas com a finalidade de puni-las por tal violação, tornando um problema com restrições em um sem restrições. O método de penalização adotado neste estudo é o de penalidades estáticas, onde, para cada restrição violada é adotado uma função intrínseca a ela multiplicada por um coeficiente de peso, que determina a importância da violação. A função f penal (x) é definida abaixo: Para restrições de igualdade: n f penal (x) = α r j Φ 2 j (x j ) j=1 (60) Para restrições de desigualdade: m f penal (x) = α r k [máximo[0, Φ k (x k )]] k=1 (61) α Constante pênalti para todas as restrições (Parâmetro a definir empiricamente) r Constante pênalti para cada restrição (Parâmetro a definir empiricamente) Φ Função pênalti (Função que penaliza cada restrição independentemente) n Número de restrições de igualdade m Número de restrições de desigualdade

52 47 4 VIGAS DE CONCRETO ARMADO Viga pode ser considerado um elemento estrutural de barra, ou seja, aquele em que o comprimento supera em três vezes a maior dimensão da seção transversal, submetido majoritariamente a esforços de flexão e cisalhamento, sua principal função é vencer vãos e transferir esforços de lajes, paredes e outros elementos aos pilares da edificação. Quando os esforços resistidos pela viga se restringirem a flexão, cujo o plano de ação contenha um dos principais eixos de inércia, diz-se que a viga está solicitada a flexão normal simples (Figura 5.1), quando os esforços por ela resistidos incluem ações normais à seção transversal, diz-se que a viga está solicitada a flexão normal composta. (Figura 5.2). (CASTRO, 2012). Figura 4.1 Viga solicitada a flexão normal simples Figura 4.2 Viga solicitada a flexão normal composta Uma viga de concreto armado é composta basicamente por concreto e aço, tal junção se dá pelo fato de o concreto resistir bem a solicitações de compressão, e o aço tanto a solicitações de compressão quanto de tração, ocupando regiões comprimidas e tracionadas respectivamente, de uma mesma seção transversal de uma viga. As principais características que viabilizam a utilização do concreto armado são: a aderência entre o concreto e o aço, a proximidade dos valores de coeficiente de dilatação térmica dos dois materiais e a proteção do aço pelo concreto envolvente. (MICHAUD et al, 2015). O colapso da estrutura de concreto armado é caracterizado pela ruptura do concreto comprimido ou alongamento excessivo das armaduras tracionadas, que são definidos na prática

53 48 como estado limite último de ruptura ou de deformação plástica excessiva e levam em consideração deformações limites para o concreto comprimido e armadura tracionada. As vigas de concreto armado são dimensionadas de maneira a resistir aos esforços solicitantes e alertar aos usuários, por meio de deformações e fissuras expressivas, uma eventual ruptura. Portanto as vigas devem apresentar boas características de ductilidade respeitando a posição da linha neutra imposta pela norma, utilizando se necessário, armadura de compressão para a disposição da linha neutra nos domínios 2 ou 3, que definem as estruturas subarmadas. As estruturas são ditas superarmadas, quando a linha neutra se encontra no domínio 4, levando a uma ruptura frágil, ou seja, sem aviso de colapso. O dimensionamento das vigas de concreto armado também deve considerar os estados limites de serviços, que são aqueles relativos ao conforto, durabilidade ou aparência da estrutura. (ABNT NBR 6118, 2014). São considerados as seguintes hipóteses na análise dos esforços resistentes de uma seção de uma viga: (ABNT NBR 6118, 2014) a) As seções transversais se mantêm planas após a deformação (modelo de viga Euler- Bernoulli); b) As deformações das barras passivas aderentes devem ser as mesmas do concreto em seu contorno, tanto em tração quanto em compressão; c) As tensões de tração do concreto devem ser desprezadas no ELU (Estado Limite Último); d) A distribuição de tensões resistentes de compressão do concreto é feita de acordo com o diagrama parábola-retângulo, que são válidas para tensões de compressão inferiores a 0,5 f c. Sua tensão de pico é igual a 0,85 f cd, sendo f cd a resistência de cálculo à compressão do concreto, podendo o diagrama ser substituído pelo retângulo de profundidade y = λ x, onde λ pode assumir os seguintes valores: 0,8, f ck 50MPa λ = { 0,8 f ck , f ck > 50MPa (62)

54 49 E a tensão constante até a profundidade y, pode ser expressa como σ c = α c f cd, onde o parâmetro α c pode ser definido segundo a Equação 62: 0,85, f ck 50MPa α c = { 0,85 (1 f ck ), f ck > 50MPa (63) 4.1 VIGAS DE SEÇÃO RETANGULAR COM ARMADURA SIMPLES Vigas de armadura simples são aquelas que necessitam apenas de armadura longitudinal para resistir a esforços de tração, no entanto, por razões construtivas são dotadas também de armadura na região comprimida para suporte e amarração dos estribos, sendo que a resistência a compressão oferecida por elas não é levada em consideração no dimensionamento da viga. A figura 5.3 ilustra um modelo de viga retangular sujeita a ação de um momento fletor de projeto M sd, com a adoção do diagrama retangular de tensões para o concreto. A estrutura estará em equilíbrio, caso atendas as equações 63 e 64. Figura 4.3 Distribuição de tensões em uma viga simplesmente armada

55 50 Onde: R cd e R sd Esforços resistentes de projeto x Linha neutra y Altura do retângulo de tensões de compressão z Distância entre os esforços de resistência do aço e concreto d Altura útil da viga Equações de equilíbrio estático: F x = 0 R cd R sd = 0 σ c (b w y) f yd A s = 0 (64) M 0 = 0 R cd z = M sd σ c (b w y) (d y 2 ) = M sd (65) Considerando que o concreto do modelo utilizado tenha resistência característica a compressão inferior a 50Mpa (σ c = 0,85 f cd ) e as equações são válidas apenas para os domínios 2 e 3, obtém-se: A s = 0,85 f cd b w y f yd (66) y = d (1 1 M sd 0,425 b w d 2 f cd ) (67)

56 51 5 METODOLOGIA 5.1 PREAMBULO Na aplicação proposta será utilizado algoritmos genéticos para otimização paramétrica de vigas de concreto armado biapoiadas submetidas a flexão simples. O objetivo é encontrar as dimensões e arranjos ideais do concreto e das barras de aço de um conjunto de vigas, de maneira a obter o menor custo possível para cada uma, respeitando as restrições impostas pela ABNT NBR 6118 de Quarenta vigas com carregamentos e/ou comprimentos diferenciados serão otimizadas por uma aplicação baseada em algoritmos genéticos e os dados otimizados da seção serão empregados no treinamento de uma rede neural perceptron multicamadas com a finalidade de transferir conhecimento especializado de otimização e diminuir o gasto computacional, em relação ao AG, após o treinamento da rede. Por conseguinte, um novo conjunto de vigas será inserido na rede neural afim de comparar os dados obtidos com valores otimizados por algoritmos genéticos. 5.2 FORMULAÇÃO Seja um conjunto de 40 vigas retangulares e biapoiadas de concreto armado, de comprimentos L j e submetidas a carregamentos distribuídos e constantes de projeto q d j. As figuras a seguir representam o modelo de viga j e a sua seção transversal. Cada viga possui um carregamento e um comprimento próprios. Figura 5.1 Modelo de viga j e sua seção transversal

57 52 ou seja: Pretende-se minimizar o custo das vigas considerando o custo do concreto, aço e forma, min(c total,j ) = min [[CC b w h + CA γ li n bar + CF (b w + 2 h)] L j ] (68) Onde: C total,j Custo total da viga j (R$) CC Custo do Concreto em função do f ck (R$/m³) CA Custo do Aço em função do diâmetro e da resistência (R$/kg) CF Custo da Forma (R$/m²) n bar número de barras longitudinais na seção b w base da seção transversal da viga (m) h altura da seção transversal da viga (m) L j Comprimento da viga j (m) γ s Peso linear da barra longitudinal (kg/m) O problema de dimensionamento está sujeito à algumas restrições. Para o indivíduo que não atenda à uma ou mais restrições laterais de norma, é adicionada na função custo total, funções pênalti Φ k referente as restrições k (violadas), afim de penalizar, proporcionalmente à intensidade da violação, o indivíduo por tais violações, diminuindo a probabilidade de seleção do mesmo frente a indivíduos não penalizados e evitando que suas características negativas sejam passadas para futuras gerações.

58 53 Restrições laterais paramétricas: Dimensões da seção transversal 0.30 m h 0.60 m, sendo h R m b w 0.60 m, sendo b w R + Dimensões, arranjos da armadura e resistência do concreto 1 n c 10, sendo n c N d l (CA50) = {6.3, 8.0, 10.0, 12.5, 16.0, 20.0, 25.0, 32}, d l em mm d l (CA60) = {7.0, 8.0, 9.5}, d l em mm f ck = {20, 25, 30, 35, 40, 45, 50, 55, 60}, f ck em MPa Restrições laterais de norma e função pênalti relativa a restrição violada: Flechas horizontais e verticais máximas prescritas pela Norma NBR 6118 (Carregamento distribuído constante) f máx = 5 p L4 384 EI f lim = L 250 (69) Φ f,lim = f máx f lim f lim (70) Espaçamentos mínimos horizontais e verticais, respectivamente, da armadura: Φ ah,mín = a h,mín a h a h,mín (71)

59 54 2 cm a v a v,mín = máx [ φ l ] 0,5 d máx (72) Φ av,mín = a v,mín a v a v,mín (73) Taxa de armadura mínima e máxima, respectivamente, prescrita pela norma: ρ mín ρ ρ máx Φ ρ,máx = ρ ρ máx ρ máx (74) 0,0015 A c ρ 0,04 A c Φ ρ,mín = ρ mín ρ ρ mín (75) Domínio de deformação: β x β x,dtl = 0,45 Φ βx,máx = β x β x,dtl β x,dtl (76) Hipótese das seções planas: h ( h = 5 (77) b w b w )lim Φ h/b,máx = h ( h b w b w )lim ( h b w )lim (78)

60 IMPLEMENTAÇÃO DO ALGORÍTIMO GENÉTICO O programa proposto para a otimização do custo de seções transversais de vigas de concreto armado submetidas à flexão simples (nomeado VIGOTIM) foi desenvolvido na linguagem JAVA com auxílio da biblioteca JENETICS. Esta biblioteca permite a maximização ou minimização de uma dada função de aptidão sem a necessidade de ajusta-la, ou seja, os parâmetros de ajustes necessários são realizados diretamente no Evolution Engine (motor de evolução) que é a classe responsável por executar os passos necessários para a criação de uma nova geração. Figura 5.2 Exemplo de aplicação desenvolvida com auxílio da biblioteca JENETICS O programa é composto basicamente por três classes distintas, conforme segue: CromossomoViga, DimensionamentoViga e a classe base Main que é a classe de execução do AG, responsável pelos processos de evolução da população. Main DimensionamentoViga CromossomoViga Figura Diagrama simplificado de classes do programa VIGOTIM

61 56 A classe CromossomoViga é responsável por determinar as variáveis diretas e indiretas da função objetivo necessárias à avaliação de cada indivíduo da população, as variáveis diretas são inseridas diretamente na função custo total da viga e no dimensionamento da viga, as variáveis indiretas são utilizadas apenas no dimensionamento da viga para então determinar parâmetros que serão inseridos na função custo total da viga. As diferentes topologias de seções de vigas serão definidas a partir de 6 variáveis, totalizando seções distintas possíveis. Maiores especificações sobre os domínios das variáveis encontram-se nas restrições laterais paramétricas. (Item 5.2). Tabela 5.1 Variáveis e domínios da viga Variáveis Domínios Altura da Viga (h) 0.30 m h 0.60 m Base da Viga (b w ) 0.20 m b w 0.60 m Número de Camadas de barras (n c ) 1 n c 10 Diâmetro da Barra Longitudinal (d l ) 6.3; 8.0; 10.0; 12.5; 16.0; 20.0; 25.0; ; 8.0; 9.5 mm Resistência do Aço (f yk ) Resistência do Concreto (f ck ) 500 e 600MPa 20; 25; 30; 35; 40; 45; 50; 55; 60 MPa A classe DimensionamentoViga é responsável por adicionar ao carregamento distribuído de projeto o carregamento do peso próprio da viga, calcular a armadura de tração necessária à cada indivíduo, penalizar possíveis indivíduos que não atendam às características e restrições impostas pela norma e calcular o custo total penalizado da viga, que é a soma do custo total da viga mais a função de penalização. O custo total penalizado (função objetivo) pode ser definido segundo a expressão: C total penal,j = C total,j + f penal,j (x) (79) Onde: C total,j = [CC b w h + CA γ li n bar + CF (b w + 2 h)] L j (80) m f penal,j (x) = 100 r k [máximo[0, Φ k (x k )]] k=1 (81)

62 57 A classe Main possui o Evolution Engine, que é a classe base responsável por gerar indivíduos aleatórios (vigas), que são posteriormente avaliados pela classe DimensionamentoViga, através da função custo total penalizado, afim de obter o nível de aptidão de cada indivíduo. Os melhores indivíduos, obtidos probabilisticamente pelo método de seleção por torneio, são cruzados e mutados e inseridos em uma nova população de indivíduos mais aptos, população esta que também é avaliada. O processo se repete até que um critério de parada seja satisfeito, como um número máximo de gerações, ou a convergência de uma porcentagem alta da população para um mesmo valor. A população inicial pode ser determinada em função do comprimento do cromossomo que é obtido pela soma dos comprimentos dos genes. Pela equação 55 é possível determinar o comprimento de cada gene, que representa cada variável do problema. O vetor G representa os comprimentos de cada gene relativos as variáveis encontradas na Tabela 5.1, sendo G = {n h ; n bw ; n nc ; n dl ; n fyk ; n fck } = {3; 4; 4; 4; 1; 4}. Logo o comprimento l do cromossomo é igual a 20. Portanto, o tamanho da população pode ser obtido pela Equação 59, como segue: l n pop 2 l 20 n pop 40 n pop = 40 (82) A probabilidade de mutação (p m ) foi obtida a partir da equação proposta por HESSER & MANNER (2000), onde a taxa de mutação é inversamente proporcional ao número de indivíduos da população e inversamente proporcional ao quadrado do comprimento do cromossomo. 1 p m = n pop l (83) 1 p m = = 0,0056 (84) 40 20

63 Custo (R$) EXEMPLO DE OTIMIZAÇÃO No exemplo que se segue uma viga de concreto armado biapoiada com 4 metros de vão e submetida a um carregamento distribuído de 20 kn/m é otimizada pelo programa VIGOTIM afim de se obter um custo mínimo para a viga. A Tabela 5.2 mostra a seção ótima após 100 gerações. Tabela 5.2 Seção transversal otimizada para o custo mínimo q (kn/m) L (m) Custo (R$) b w (cm) h (cm) n c d l (mm) f ck (MPa) Aço 20,00 4,00 294,25 22,08 36,23 5, ,00 CA-60A A Figura 5.4 ilustra o desempenho do algoritmo durante as 100 gerações 380,00 370,00 360,00 350,00 340,00 330,00 320,00 310,00 300,00 290,00 Desempenho do AG 280, Gerações Figura 5.4 Evolução do custo total da viga

64 IMPLEMENTAÇÃO DA REDE NEURAL PERCEPTRON MULTICAMADAS Para o desenvolvimento da rede neural perceptron foi utilizado o editor JOONE (Java Object Oriented Neural Engine) que é uma ferramenta baseada em módulos Java, utilizada para construir e executar aplicativos de Inteligência Artificial (IA). Esta framework permite o desenvolvimento, treinamento e validação de redes neurais artificiais, além de possibilitar a criação de diversas topologias, a fácil modificação de funções de ativação e o ajuste direto de parâmetros de rede como momentum, taxa de aprendizado e limite de épocas de treinamento. Figura 5.5 Exemplo de rede recorrente desenvolvida em JOONE A escolha da rede perceptron multicamadas foi baseada na sua capacidade de aproximar funções. Como o objetivo era tornar a rede capaz de criar uma representação interna do processo de otimização de vigas de concreto armado, foi utilizado o conjunto das vigas otimizadas por algoritmos genéticos como amostra de treinamento. Inicialmente foram configuradas as entradas e saídas de dados da rede, para a camada de entrada foi definido cinco nós, sendo um nó de cada para o carregamento distribuído (q), o comprimento da viga (L), a base da viga (bw), a resistência a compressão do concreto (fck) e a tensão de escoamento do aço (fyk). Para a camada de saída foi definido 6 nós, representando à

65 60 altura da viga (h), a área de aço tracionado (As), o número de camadas de barras (nc), o diâmetro da barra longitudinal (ϕl), o custo total da viga (R$), e a posição da linha neutra (x/d) expressa pelo adimensional (βx). Os valores de entrada e saída foram normalizados individualmente de modo que permanecessem na gama 0 e 1. Tabela 5.3 Parte do conjunto de treinamento Entrada Saída Carga distribuída (kn/m) Vão (m) Base da seção (cm) Aço (CA50/60) Concreto (MPa) Altura da seção (cm) Área de aço tracionado (cm²) Número de camadas Diâmetro da barra (mm) Custo Total (R$) βx 10 2,0 20, ,26 0,72 1 8,00 82,02 0, ,0 20, ,83 0,66 1 8,00 86,05 0, ,0 20, ,65 1, ,50 86,87 0, ,5 20, ,43 0,91 3 7,00 107,07 0, ,5 20, ,44 1,71 6 6,30 113,13 0, ,5 25, ,02 1,65 1 8,00 122,86 0, ,0 24, ,93 1,51 3 6,30 156,49 0, ,0 20, ,01 1,48 4 7,00 143,13 0, ,0 21, ,83 1,81 3 7,00 166,18 0, ,0 20, ,32 2, ,50 176,65 0, ,5 23, ,34 1,64 2 8,00 188,60 0, ,5 20, ,85 2,19 6 6,30 220,37 0, ,0 27, ,12 1,99 3 7,00 256,56 0, ,0 21, ,17 2,42 2 7,00 287,88 0, ,0 22, ,23 2,82 5 7,00 294,25 0,21 O algoritmo de treinamento adotado é o backpropagation (RUMELHART; MCCELLAND, 1986), que é o foco da framework JOONE. Para a definição do número de neurônios e de camadas escondidas não há uma regra fixa, apenas metodologias empíricas restritas à algumas topologias. Para a elaboração de uma rede neural é essencial a seleção de algumas redes candidatas, que deverão ser submetidas a testes de generalização com intuito de definir àquela capaz de melhor modelar a função a ser aproximada. O conjunto das 40 vigas otimizadas pelo programa VIGOTIM foi dividido aleatoriamente em dois subconjuntos, as amostras de treinamento e as amostras de validação, compondo 87,5% e 12,5% do conjunto de vigas, respectivamente. Foram testadas 4 topologias distintas de rede, cada uma com números distintos de neurônios, porém com o mesmo número de camadas ocultas, duas no total. Todas as redes foram submetidas as mesmas amostras de treinamento e validação. Foi imposto um limite de épocas de treinamento para cada uma

66 61 das redes, sendo que cada época consiste na apresentação de todas as amostras de treinamento para a aplicação do algoritmo backpropagation, afim de observar a raiz quadrada do erro quadrático médio (RMSE) de cada uma frente as amostras de treinamento e validação. Cada rede foi testada duas vezes com parâmetros de taxa de aprendizagem e taxa momentum distintos, com o objetivo de selecionar a que detinha o menor RMSE. A Tabela 5.3 mostra o desempenho de cada rede após as épocas de treinamento. Rede Tabela 5.4 Topologias candidatas, parâmetros de rede e erros Nº de Camadas Nº de nós em c/ camada escondida Nº de épocas de treinamento Taxa de aprendizagem Taxa momentum RMSE (treinamento) RMSE (validação) 1A ,2 0,3 0, , B ,6 0,5 0, , A ,2 0,3 0, , B ,6 0,5 0, , A ,2 0,3 0, , B ,7 0,6 0, , A ,2 0,3 0, , B ,7 0,6 0, , Após testar todas as redes pode-se notar que a rede 2B foi a que obteve melhor resultado, com RMSE igual a 0, para as amostras treinadas, e RMSE igual a 0, para as amostras de validação. A Figura 5.5 mostra o desempenho da rede ao longo das épocas: Figura 5.6 Gráfico do RMSE da rede 5B gerado pelo JOONE

67 62 O desempenho da rede pode ser avaliado através da relação entre as amostras de treinamento de saída obtidas pela otimização das seções das vigas e os valores da saída da rede treinada após a introdução das amostras de entrada. Os valores de saídas desejados contidos na Tabela 5.3 podem ser comparados ao desempenho da rede 2B, após a introdução dos valores de entrada contidos na mesma tabela. A Tabela 5.5 compara os parâmetros otimizadas por algoritmos genéticos e os valores otimizados pela rede 2B após ser treinada. Os valores em destaque representam as amostras de validação, as quais não foram utilizadas no processo de treinamento. Tabela Valores previstos e desempenho da rede 2B para os parâmetros da viga ALGORITMO GENÉTICO RNA - 2B Viga h A s n c d l Custo β x h A s n c d l Custo β x 1 20,26 0,72 1,00 8,00 82,02 0,09 20,30 0,66 1,00 8,00 81,65 0, ,83 0,66 1,00 8,00 86,05 0,09 19,28 0,85 0,89 8,21 92,47 0, ,65 1,00 1,00 12,50 86,87 0,11 21,64 0,94 1,00 12,50 87,14 0, ,43 0,91 3,00 7,00 107,07 0,12 21,39 0,90 3,00 7,01 102,22 0, ,44 1,71 6,00 6,30 113,13 0,20 20,44 1,66 6,00 6,30 114,04 0, ,02 1,65 1,00 8,00 122,86 0,19 20,02 1,60 1,00 8,00 122,36 0, ,93 1,51 3,00 6,30 156,49 0,13 22,93 1,47 3,00 6,30 155,69 0, ,01 1,48 4,00 7,00 143,13 0,19 27,76 1,24 1,89 7,14 169,12 0, ,83 1,81 3,00 7,00 166,18 0,15 22,82 1,76 3,00 7,00 166,93 0, ,32 2,47 1,00 12,50 176,65 0,22 27,32 2,43 1,00 12,50 176,37 0, ,34 1,64 2,00 8,00 188,60 0,17 24,37 1,57 2,00 7,99 191,12 0, ,85 2,19 6,00 6,30 220,37 0,17 31,84 2,15 6,00 6,30 220,25 0, ,12 1,99 3,00 7,00 256,56 0,16 27,12 1,95 3,00 7,00 256,51 0, ,17 2,42 2,00 7,00 287,88 0,15 31,16 2,38 2,00 7,00 287,44 0, ,23 2,82 5,00 7,00 294,25 0,21 36,14 2,80 5,00 7,00 294,91 0, ,20 3,44 5,00 7,00 317,56 0,23 37,19 3,41 5,00 7,00 317,76 0, ,18 2,06 4,00 7,00 299,39 0,17 33,10 2,03 4,00 7,01 298,94 0, ,38 3,20 1,00 10,00 343,89 0,19 44,79 3,96 1,95 9,28 490,32 0, ,56 3,00 6,00 7,00 350,75 0,21 37,61 2,97 6,00 7,00 348,87 0, ,15 2,18 5,00 7,00 362,12 0,17 39,18 2,13 5,00 6,99 361,31 0, ,37 2,80 3,00 7,00 413,63 0,18 44,35 2,76 3,00 7,00 414,51 0, ,78 3,66 3,00 7,00 445,53 0,23 44,81 3,63 3,00 7,00 445,55 0, ,86 2,52 3,00 7,00 434,89 0,17 41,88 2,50 3,00 7,00 434,20 0, ,91 2,86 4,00 7,00 521,20 0,17 44,01 2,83 4,14 6,96 509,66 0, ,08 3,03 5,00 7,00 597,02 0,18 50,09 2,98 5,00 7,00 600,55 0,18

68 63 A Figura 5.7 compara o desempenho da rede neural treinada aos valores desejados, otimizados por algoritmos genéticos: h A s Desejado Obtido Desejado Obtido n c d l Desejado Obtido Desejado Obtido Custo β x ,25 0,20 0,15 0,10 0,05 0, Desejado Obtido Desejado Obtido Figura 5.7 Desempenho da Rede 2B e saídas esperadas

69 64 Os detalhamentos das seções das vigas 1, 10 e 25, otimizadas pela rede neural treinada são ilustrados a seguir: Figura 5.8 Detalhamento da Viga 1 Figura 5.9 Detalhamento da Viga 10 Figura 5.10 Detalhamento da Viga 25

70 65 6 CONCLUSÕES E RECOMENDAÇÕES A utilização de vigas otimizadas por algoritmos genéticos como amostras de treinamento para a rede neural produziu resultados muito satisfatórios, uma vez que o erro (RMSE) resultou em valores muito baixos para a diferença entre valores desejados e os valores obtidos pela rede, conforme ilustrado na figura 5.7. No desenvolvimento do programa VIGOTIM o ajuste das constantes pênalti individuais, bem como a constante para todas as restrições, foi definido empiricamente devido a inexistência de metodologias fixas que definam tais parâmetros. Os ajustes se deram de forma que o indivíduo escolhido não violasse a nenhuma das restrições impostas. Esse fato pode ocorrer quando a penalização imposta não é suficientemente elevada para eliminar indivíduos inválidos (com violações de restrição), ou seja, o indivíduo mais apto (com menor custo) admite violações de restrições para minimizar ao máximo seu custo, ainda que tais violações o penalizem, tal fato pode ser remediado aumentando o valor das constantes pênalti. Os valores dos preços dos materiais foram obtidos nos insumos do SINAPI (Sistema Nacional de Custos e Índices da Construção Civil) de Brasília de julho de O custo de lançamento do concreto e mão de obra não foram contabilizados devido à grande variabilidade nos preços e na produtividade destes itens em diversas regiões do Brasil, porém tais custos devem ser considerados em uma aplicação prática, bem como especificações acerca de dimensões usais de forma, por exemplo. No dimensionamento de elementos estruturais deve ser levado em considerações muitos outros fatores aos quais não foram aqui tratados, devido a simplificação didática. Porém adaptações podem ser feitas afim de tratar tais fatores. Para a análise do RMSE para as amostras de validação da rede neural perceptron, através da framework JOONE, foi necessário a importação de um arquivo para tal fim através do gerenciador de códigos MACRO EDITOR. A escolha das melhores taxas de aprendizado e momentum para os testes finais de rede também se deram de maneira empírica, pois a escolha das taxas mais adequadas para uma determinada rede ainda não é consolidada, existindo apenas limites de eficiência para tais. Quanto maiores eram as taxas de aprendizado, maiores eram as amplitudes de oscilação do RMSE para amostras de treinamento e mais rapidamente a rede

71 66 convergia, porém, um ajuste excessivo dos pesos sinápticos tornava a rede incapaz de atingir o mínimo global do problema (menor RMSE), pois o ajuste não era sensível o suficiente e saltava o valor ótimo. Em contrapartida um valor muito pequeno para a taxa de aprendizado, a tornava lenta, exigindo uma quantidade maior de iterações para se atingir um valor satisfatório. O termo momentum é um valor utilizado para acelerar o processo de convergência da rede neural através da diferença entre o peso atual e o anterior (entre duas iterações consecutivas). Como o grau de inclinação da reta que tangencia a função erro (RMSE) diminui conforme se aproxima do valor mínimo, o termo momentum se utiliza desse princípio para modificar de forma mais acentuada os pesos sinápticos que produzem valores de RMSE distantes do mínimo (reta tangente muito inclinada) e mais sutilmente valores de RMSE próximos do mínimo (reta tangente pouco inclinada). O ajuste da taxa momentum segue as mesmas recomendações da taxa de aprendizado, porém com limites de valores usuais distintos. Todos os valores de entrada foram normalizados de modo que permanecessem no intervalo entre 0 e 1, evitando que ordens de grandeza diferenciados interferissem mais ou menos nos ajustes dos pesos sinápticos, como ocorre com as variáveis número de camadas e preço total. A função de ativação utilizada foi a sigmoide para as camadas ocultas e a linear para a camada de saída. As funções sigmoides das camadas ocultas ponderadas pelos pesos sinápticos da camada de saída eram responsáveis pela delineação da função multidimensional que relacionava os dados, e as funções lineares mesclavam (somavam) esses valores caracterizando então a função final de correlação de dados. A utilização de AG s como amostra de treinamento para redes neurais é útil quando se pretende sistematizar o processo de otimização, uma vez que, após o treinamento da rede, esta não mais necessita de sintonização dos pesos, reduzindo-se apenas a simples cálculos de soma e produto. Com o crescimento do poder computacional nas últimas décadas, a utilização das redes neurais para solução de problemas tem se tornado muito mais eficiente, possibilitando a criação de redes mais complexas e com menor tempo de aprendizado. Softwares como JOONE, utilizam-se de Threads, para a execução de iterações concomitantemente a outras, diminuindo significativamente o tempo computacional requerido. Portanto, a implementação do processo proposto à problemas práticos de pré-dimensionamento, tornaria o projeto muito mais ágil, eficiente e econômico em comparação a métodos puramente estimativos.

72 67 OPTIMIZATION OF REINFORCED CONCRETE BEAMS USING GENETIC ALGORITHMS AND ARTIFICIAL NEURAL NETWORKS Abstract: The preliminary design is extremely important for the end stage of a project design, this stage interferes significantly in the final composition of the costs and significantly depends on the experience and intuition of the designer. Algorithms based on sequential programming becomes limited when problems involving strictly human skills are required. This study aims to develop an artificial neural network able to make a preliminary design of cross-sections of reinforced concrete beams with minimum cost from some initial variables. To achieve that, it was developed an application based on genetic algorithms that optimizes a set of rectangular cross sections of reinforced concrete beams subjected to simple bending serving as a training set for the neural network, in order to transfer expertise to network optimization. Genetic algorithms are computational models inspired by principles of natural evolution. They encode, manipulate and modify coded solutions in a search space in order to find better individuals. Artificial Neural Networks are systems based on the functioning of the animal's brain, which processes massively parallel and distributed way. It is a branch of artificial intelligence capable of learning and generalizing problems, besides being very used in problems involving optimization, pattern recognition, function approximation and system predicition. Keywords: Optimization. Genetic algorithms. Artificial Neural Networks. Reinforced concrete.

73 68 REFERÊNCIAS ABNT NBR Projeto de Estruturas de Concreto Procedimento. Rio de Janeiro, BRAGA, Antônio de Pádua; LUDERMIR, Teresa Bernarda; CARVALHO, André Carlos Ponce de Leon Ferreira. Redes Neurais: Teoria e aplicações. Rio de Janeiro: Ltc, 2000, p.1-2. CASTRO, Li Chong Lee Bacelar de. Engenharia de Estruturas: Engenharia de estruturas sob o aspecto da inteligência computacional. São Paulo: Edgard Blucher, 2012, pp FRANZ WILHELMSTÖTTER. JENETICS: LIBRARY USER S MANUAL. Califórnia: Autor, p. HAYKIN, Simon. Redes Neurais: Princípios e práticas, trad. Paulo Martins Engel. 2. ed. Porto Aletre: Bookman, 2001, pp HEBB, D. O. The organization of behavior: a neuropsychological theory. Wiley, New York, USA, HESSER & MANNER. Practical Guide to Genetic Algorithms, Naval Research Laboratory, Chemistry Division, KHAN, N. Population Sizing in Genetic and Evolutionary Algorithms Lecture Notes, University of Illinois at Urbana-Champaign, KOVÁCS, Zsolt L. Redes Neurais Artificiais: Fundamentos e aplicações. 3. ed. São Paulo: Livraria da Física, 1996, p. 9. LACERDA, E. G. M.; CARVALHO, A. C. Sistemas inteligentes: aplicações a recursos hídricos e ciências ambientais. In: Porto Alegre, RS: Universidade/UFRGS, cap. Introdução aos Algoritmos Genéticos, p Disponível em: /~estefane/metaheuristicas/ag.pdf. LACERDA, E.G.M, CARVALHO, A.C.P.L. Introdução aos algoritmos genéticos. In: Galvão, C.O., Valença, M.J.S. (orgs.) Sistemas inteligentes: aplicações a recursos hídricos e ciências ambientais. Porto Alegre: Ed. Universidade/UFRGS: Associação Brasileira de Recursos Hídricos, 1999, pp MCCULLOCH, W.S; PITTS, W. A logical calculus of the ideas immanent in nervous activity: Bulletin of Mathematical Biophysics, 1943, pp MICHAUD, C.E.N.L; CECCAN, J.L; ARGENTA, M.A.; KAWAI, M.T.; NETO, M.F.H. Concreto Armado da UFPR: Paraná: Departamento de Construção Civil, 2015, pp

74 69 MONTANARI, Tatiana. Histologia: Texto, atlas e roteiro de aulas práticas. 3. ed. Porto Alegre: Tatiana Montanari, 2016, pp RUMELHART, D. E.; MCCLELLAND, J. L. Parallel distributed processing, Vols. I & 2, MIT Press, Cambridge, Mass, SILVA, Ivan Nunes da; SPATTI, Danilo Hernane; FLAUZINO, Rogério Andrade. Redes Neurais Artificiais: para engenharia e ciências aplicadas. São Paulo: Artliber, 2010, pp TANAMORU, J. Motivação, fundamentos e aplicações de algoritmos genéticos. In: Anais do II Congresso Brasileiro de Redes Neurais. Curitiba, PR, 1995, pp

75 70 APÊNDICE A.1 CÓDIGOS FONTE DO PROGRAMA VIGOTIM A.1.1 Classe Main

76 A.1.2 Classe DimensionamentoViga 71

77 72

78 73

79 74

80 75

81 A.1.3 Classe CromosssomoViga 76

82 77 A.2 PROJETO DA REDE NEURAL EM JOONE A.2.1 Estrutura da rede neural

83 78 A.2.2 RMSE ao longo das épocas de treinamento das topologias da Tabela 5.4 RNA 01 - A RNA 01 B RNA 02 A

84 79 RNA 02 B RNA 03 A RNA 03 B

85 80 RNA 04 A RNA 04 B A.2.2 Conjunto de treinamento da rede neural contendo as seções otimizadas por algoritmos genéticos. Viga q L Custo b w h n c Bitola f ck Aço ,00 82,02 20,11 20, CA ,00 86,05 20,04 21, CA ,00 86,87 20,66 21, CA ,50 107,07 20,29 21, CA ,50 113,13 20,52 20, CA ,50 122,86 25,24 20, CA ,00 156,49 24,98 22, CA ,00 143,13 20,38 23, CA ,00 166,18 21,01 22, CA ,00 176,65 20,56 27, CA50

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica REDES NEURAIS ARTIFICIAIS REDE ADALINE e REGRA DELTA Prof. Dr. André A. P. Biscaro 2º Semestre de 2017 Aspectos históricos O ADALINE foi idealizado por Widrow & Hoff em 1960. Sua principal aplicação estava

Leia mais

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica REDES NEURAIS ARTIFICIAIS PERCEPTRON MULTICAMADAS Prof. Dr. André A. P. Biscaro 1º Semestre de 2018 Arquitetura Redes Perceptron de Múltiplas Camadas (PMC), também conhecidas como redes MLP (Multiple Layer

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

Introdução à Redes Neurais. Prof. Matheus Giovanni Pires EXA 868 Inteligência Artificial Não-Simbólica B Universidade Estadual de Feira de Santana

Introdução à Redes Neurais. Prof. Matheus Giovanni Pires EXA 868 Inteligência Artificial Não-Simbólica B Universidade Estadual de Feira de Santana Introdução à Redes Neurais Artificiais Prof. Matheus Giovanni Pires EXA 868 Inteligência Artificial Não-Simbólica B Universidade Estadual de Feira de Santana 2 Introdução Redes Neurais Artificiais (RNAs)

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

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

serotonina (humor) dopamina (Parkinson) serotonina (humor) dopamina (Parkinson) Prozac inibe a recaptação da serotonina

serotonina (humor) dopamina (Parkinson) serotonina (humor) dopamina (Parkinson) Prozac inibe a recaptação da serotonina Redes Neurais O modelo biológico O cérebro humano possui cerca 100 bilhões de neurônios O neurônio é composto por um corpo celular chamado soma, ramificações chamadas dendritos (que recebem as entradas)

Leia mais

Aprendizado de Máquina (Machine Learning)

Aprendizado de Máquina (Machine Learning) Ciência da Computação Aprendizado de Máquina (Machine Learning) Aula 03 Aprendizado Supervisionado / : Modelo MCP e Perceptron Max Pereira Neurônio Booleano de McCulloch- Pitts (Modelo MCP) Proposto em

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

Rede Perceptron. Capítulo 3

Rede Perceptron. Capítulo 3 Rede Perceptron Capítulo 3 Rede Perceptron É a forma mais simples de configuração de uma RNA (idealizada por Rosenblatt, 1958) Constituída de apenas uma camada, tendo-se ainda somente um neurônio nesta

Leia mais

Introdução a Redes Neurais Artificiais com a biblioteca Encog em Java

Introdução a Redes Neurais Artificiais com a biblioteca Encog em Java Introdução a Redes Neurais Artificiais com a biblioteca Encog em Java Apresentação Graduada em Sistemas de Informação FAP/Parnaíba Mestranda do Programa de Pós-Graduação em Engenharia da Eletricidade -

Leia mais

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica REDES NEURAIS ARTIFICIAIS INTRODUÇÃO Prof. Dr. André A. P. Biscaro 1º Semestre de 2017 REDES NEURAIS ARTIFICIAIS - RNAs Inspiradas no cérebro humano São modelos computacionais inspirados nos mecanismos

Leia mais

Redes Neurais Artificiais

Redes Neurais Artificiais Redes Neurais Artificiais Neurônio Natural Dendritos: recebe os estímulos transmitidos por outros neurônios Soma Sinapse Axônio Soma: coleta e combina informações vindas de outros neurônios Sinapse Dendrito

Leia mais

Primeiras Redes Neurais Artificiais: Perceptron e Adaline

Primeiras Redes Neurais Artificiais: Perceptron e Adaline Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Primeiras Redes Neurais Artificiais: Perceptron e Adaline DCA0121 Inteligência Artificial Aplicada Heitor

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

2. Redes Neurais Artificiais

2. Redes Neurais Artificiais Computação Bioinspirada - 5955010-1 2. Redes Neurais Artificiais Prof. Renato Tinós Depto. de Computação e Matemática (FFCLRP/USP) 1 2.3. Perceptron Multicamadas - MLP 2.3.1. Introdução ao MLP 2.3.2. Treinamento

Leia mais

A evolução natural deu ao cérebro humano muitas características desejáveis que não estão presentes na máquina de von Neumann:

A evolução natural deu ao cérebro humano muitas características desejáveis que não estão presentes na máquina de von Neumann: Faculdade de Engenharia de Computação Centro de Ciências Exatas, Ambientais e de Tecnologias PUC-Campinas João Luís Garcia Rosa 2004 2 A evolução natural deu ao cérebro humano muitas características desejáveis

Leia mais

Classificação Linear. André Tavares da Silva.

Classificação Linear. André Tavares da Silva. Classificação Linear André Tavares da Silva andre.silva@udesc.br Roteiro Introduzir os o conceito de classificação linear. LDA (Linear Discriminant Analysis) Funções Discriminantes Lineares Perceptron

Leia mais

Redes Neurais. Prof. Aurora Pozo. Obs: slides baseados em Prof. Marcílio Souto e Prof. Marley Vellasco

Redes Neurais. Prof. Aurora Pozo. Obs: slides baseados em Prof. Marcílio Souto e Prof. Marley Vellasco Redes Neurais Prof. Aurora Pozo Obs: slides baseados em Prof. Marcílio Souto e Prof. Marley Vellasco CONTEÚDO Introdução Motivação, Objetivo, Definição, Características Básicas e Histórico Conceitos Básicos

Leia mais

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica REDES NEURAIS ARTIFICIAIS AULA 03 Prof. Dr. André A. P. Biscaro 1º Semestre de 2017 INTRODUÇÃO Aprendizagem é um processo pelo qual os parâmetros livres de uma rede neural são adaptados através de um processo

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

Redes Neurais 1. Redes Neurais. cont.) Definição (cont( Definição. Histórico. Características básicas

Redes Neurais 1. Redes Neurais. cont.) Definição (cont( Definição. Histórico. Características básicas Redes Neurais Dalma M. Falcão falcao@nacad.ufr.br http://www.nacad.ufr.br/~falcao/ Redes Neurais Definição Histórico Áreas de aplicação RNs biológicas Modelos de neurônios artificiais Arquiteturas de RNs

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

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

2. Redes Neurais Artificiais

2. Redes Neurais Artificiais Computação Bioinspirada - 5955010-1 2. Redes Neurais Artificiais Prof. Renato Tinós Depto. de Computação e Matemática (FFCLRP/USP) 1 2.1. Introdução às Redes Neurais Artificiais (RNAs) 2.1.1. Motivação

Leia mais

Redes Neurais: MLP. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

Redes Neurais: MLP. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Redes Neurais: MLP DCA0121 Inteligência Artificial Aplicada Heitor Medeiros 1 Tópicos Redes diretas de múltiplas

Leia mais

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO Prof. Msc. Saulo Popov Zambiasi (saulopz@gmail.com) 12/07/08 08:09 Informação - ICPG - Criciuma - SC 1 Fundamentação Biológica, O Neurônio

Leia mais

Aula 1 Introdução - RNA

Aula 1 Introdução - RNA Aula 1 Introdução - RNA Sumário 1- Conceitos Iniciais; 2- Neurônio Biológico; 3- Neurônio Artificial; 4- Funções de Ativação; 5- Comparação Neurônio Biológico e Artificial. 1- Conceitos Iniciais - Computadores

Leia mais

3 INTELIGÊNCIA COMPUTACIONAL (IC)

3 INTELIGÊNCIA COMPUTACIONAL (IC) 40 3 INTELIGÊNCIA COMPUTACIONAL (IC) Inteligência Computacional é a área da ciência da computação que estuda a teoria e aplicação de técnicas computacionais inspiradas na natureza. Deste modo, tem por

Leia mais

2. Redes Neurais Artificiais

2. Redes Neurais Artificiais Computação Bioinspirada - 5955010-1 2. Redes Neurais Artificiais Prof. Renato Tinós Depto. de Computação e Matemática (FFCLRP/USP) 1 2.3. Perceptron Multicamadas - MLP 2.3.1. Introdução ao MLP 2.3.2. Treinamento

Leia mais

3 REDES NEURAIS ARTIFICIAIS

3 REDES NEURAIS ARTIFICIAIS 47 3 REDES NEURAIS ARTIFICIAIS Neste capítulo será apresentado um breve histórico das redes neurais artificiais de modo a situar o leitor, descrevendo-se suas aplicações, teorias e finalmente detalhando-se

Leia mais

Inteligência Computacional

Inteligência Computacional Inteligência Computacional INTRODUÇÃO ÀS REDES NEURAIS ARTIFICIAIS Renato Dourado Maia Faculdade de Ciência e Tecnologia de Montes Claros Fundação Educacional Montes Claros Na Aula Passada... O que é uma

Leia mais

Redes Neurais Noções Gerais

Redes Neurais Noções Gerais Redes Neurais Noções Gerais Segundo Loesch (apupt Fernandes), Redes Neurais Artificiais são sistemas computacionais, de implementação em hardware e software, que imitam as habilidades computacionais do

Leia mais

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica REDES NEURAIS ARTIFICIAIS PERCEPTRONS Prof. Dr. André A. P. Biscaro 1º Semestre de 2017 Forma mais simples de configuração das RNAs Rosenblatt (1958) retina área de projeção área de associação respostas

Leia mais

Fundamentos de Inteligência Artificial [5COP099]

Fundamentos de Inteligência Artificial [5COP099] Fundamentos de Inteligência Artificial [5COP099] Dr. Sylvio Barbon Junior Departamento de Computação - UEL Disciplina Anual Assunto Aula 16 Redes Neurais Artificiais (MLP) 2 de 24 (MLP) Sumário Introdução

Leia mais

Rede RBF (Radial Basis Function)

Rede RBF (Radial Basis Function) Rede RBF (Radial Basis Function) André Tavares da Silva andre.silva@udesc.br Roteiro Introdução à rede neural artificial RBF Teorema de Cover da separabilidade de padrões RBF x MLP RBF Função de ativação

Leia mais

Introdução às Redes Neurais Artificiais

Introdução às Redes Neurais Artificiais Introdução às Redes Neurais Artificiais Perceptrons de Múltiplas Camadas I Prof. João Marcos Meirelles da Silva www.professores.uff.br/jmarcos Departamento de Engenharia de Telecomunicações Escola de Engenharia

Leia mais

Redes Neurais Artificiais (RNA)

Redes Neurais Artificiais (RNA) Redes Neurais Artificiais (RNA) Definições: 1. Técnica inspirada no funcionamento do cérebro, onde neurônios artificiais, conectados em rede, são capazes de aprender e de generalizar. 2. Técnica de aproximação

Leia mais

Redes Neurais Artificiais

Redes Neurais Artificiais Universidade Federal do Espírito Santo CCA UFES Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação Redes Neurais Artificiais Redes Neurais Artificiais

Leia mais

Redes Neurais Artificiais. Capítulos 1 e 2

Redes Neurais Artificiais. Capítulos 1 e 2 Redes Neurais Artificiais Introdução Capítulos 1 e 2 Redes Neurais Artificiais (RNA) São modelos computacionais inspirados nos mecanismos de aprendizagem do cérebro humano. São modelos computacionais que

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

Introdução às Redes Neurais Artificiais

Introdução às Redes Neurais Artificiais Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Introdução às Redes Neurais Artificiais DCA0121 Inteligência Artificial Aplicada Heitor Medeiros 1 Tópicos

Leia mais

Redes Neurais Artificiais

Redes Neurais Artificiais Universidade Federal do Espírito Santo CCENS UFES Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCENS UFES Departamento de Computação Redes Neurais Artificiais Redes Neurais Artificiais

Leia mais

Redes Neurais Artificiais

Redes Neurais Artificiais Redes Neurais Artificiais Prof. Dr. Hugo Valadares Siqueira Semana de Eletrônica e Automação 2014 Redes Neurais Artificiais Uma rede neural artificial é um circuito composto por uma grande quantidade de

Leia mais

Redes Neurais Artificiais

Redes Neurais Artificiais Universidade Federal do Espírito Santo CCA UFES Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação Redes Neurais Artificiais Inteligência Artificial

Leia mais

REDES NEURAIS. Marley Maria B.R. Vellasco. ICA: Núcleo de Pesquisa em Inteligência Computacional Aplicada CONTEÚDO

REDES NEURAIS. Marley Maria B.R. Vellasco. ICA: Núcleo de Pesquisa em Inteligência Computacional Aplicada CONTEÚDO REDES NEURAIS Marley Maria B.R. Vellasco ICA: Núcleo de Pesquisa em Inteligência Computacional Aplicada PUC-Rio Introdução CONTEÚDO Motivação, Objetivo, Definição, Características Básicas e Histórico Conceitos

Leia mais

Algoritmos de Aprendizado. CONTEÚDO Introdução Motivação, Objetivo, Definição, Características Básicas e Histórico. Regra de HEBB.

Algoritmos de Aprendizado. CONTEÚDO Introdução Motivação, Objetivo, Definição, Características Básicas e Histórico. Regra de HEBB. CONTEÚDO Introdução Motivação, Objetivo, Definição, Características Básicas e Histórico Conceitos Básicos Neurônio Artificial, Modos de Interconexão Processamento Neural Recall e Learning Regras de Aprendizado

Leia mais

Aprendizado de Máquina Introdução às Redes Neurais Artificiais

Aprendizado de Máquina Introdução às Redes Neurais Artificiais Aprendizado de Máquina Introdução às Redes Neurais Artificiais Marcos Oliveira Prates (Agradecimento Marcelo Azevedo Costa) Departamento de Estatística Universidade Federal de Minas Gerais Inteligência

Leia mais

PRINCÍPIOS DE NEUROCOMPUTAÇÃO

PRINCÍPIOS DE NEUROCOMPUTAÇÃO PRINCÍPIOS DE NEUROCOMPUTAÇÃO Neurocomputação Funcionamento do cérebro humano e os neurônios Formação das conexões e como se concebe teoricamente a aquisição do conhecimento, formalizando-os em procedimentos

Leia mais

Redes Neurais Artificial

Redes Neurais Artificial Redes Neurais Artificial Tópicos: Introdução ao estudo de RNA sua origem e inspiração biológica Características gerais das RN e descrição do neurônio artificial Aprendizado de RN e tipos de Aprendizado

Leia mais

Profa. Josiane M. Pinheiro outubro/2008

Profa. Josiane M. Pinheiro outubro/2008 Baseada em: Stuart Russel e Peter Norving - Inteligência Artificial seção 20.5 Jorge M. Barreto Introdução às Redes Neurais Artificiais - http://www.inf.ufsc.br/~barreto/tutoriais/survey.pdf Cassia Yuri

Leia mais

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica PERCEPTRON MULTICAMADAS: TÉCNICAS DE VALIDAÇÃO Prof. Dr. André A. P. Biscaro 2º Semestre de 2016 UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT Aspectos de seleção topológica de redes PMC A especificação

Leia mais

Felix da Cunha 412, Pelotas RS Home-Page: s: Bolsista BIC/FAPERGS

Felix da Cunha 412, Pelotas RS Home-Page:    s: Bolsista BIC/FAPERGS UTILIZAÇÃO DE REDES NEURAIS PARA PREVISÕES EM SÉRIES TEMPORAIS 1 A. T. Gonçalez, A. C. R. Costa, G. P. Dimuro UCPEL Universidade Católica de Pelotas, ESIN Escola de Informática GMFC Grupo de Matemática

Leia mais

Minicurso: Inteligência Artificial Aplicada a Sistemas Elétricos

Minicurso: Inteligência Artificial Aplicada a Sistemas Elétricos Minicurso: Inteligência Artificial Aplicada a Sistemas Elétricos Introdução a Machine Learning: Teoria, Aplicações e IA na Arquitetura Intel Vitor Hugo Ferreira, DSc - UFF Flávio Mello, DSc UFRJ e Ai2Biz

Leia mais

3 REDES CLÁSSICAS PERCEPTRON E ADALINE

3 REDES CLÁSSICAS PERCEPTRON E ADALINE w b Professor José Gomes de Carvalho Jr. 3 REDES CLÁSSICAS PERCEPTRON E ADALINE 3.-Redes com funções de ativação de limiar Uma rede simples de uma camada, consiste em um ou mais neurônios de saída j conectados

Leia mais

Redes Neurais. Conexionismo. Redes Neurais, IA e IC. Abordagem Simbólica. Apresentação da disciplina Inteligência Computacional e conexionismo

Redes Neurais. Conexionismo. Redes Neurais, IA e IC. Abordagem Simbólica. Apresentação da disciplina Inteligência Computacional e conexionismo Redes Neurais, IA e IC Redes Neurais Apresentação da disciplina Inteligência Computacional e conexionismo No âmbito da Ciência da Computação, as Redes Neurais são estudadas na grande área de Inteligência

Leia mais

Redes Neurais Artificiais

Redes Neurais Artificiais Redes Neurais Artificiais Marcelo K. Albertini 24 de Julho de 2014 2/34 Conteúdo Perceptron Gradiente descendente Redes multicamadas Retropropagação de erros 3/34 Modelos conexionistas Humanos Tempo de

Leia mais

Redes Neurais INTELIGÊNCIA ARTIFICIAL

Redes Neurais INTELIGÊNCIA ARTIFICIAL Redes Neurais INTELIGÊNCIA ARTIFICIAL 1 2 Introdução As redes neurais são um tema da computação altamente inspirada na natureza que nos cerca. Durante anos e anos os homens trabalharam para fazer computadores

Leia mais

Mineração de Dados em Biologia Molecular

Mineração de Dados em Biologia Molecular Mineração Dados em Biologia Molecular Principais tópicos André C. P. L. F. Carvalho Monitor: Valéria Carvalho Res Neurais Artificiais Introdução Arquitetura Aprendizado Principais molos Perceptron MLP

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

Redes Neurais Artificiais. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 9)

Redes Neurais Artificiais. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 9) Redes Neurais Artificiais Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 9) Conceitos 2 Redes Neurais As Redes Neurais Artificias são modelos computacionais

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

Por que Redes Neurais?

Por que Redes Neurais? Redes Neurais Profa. Jaqueline Brigladori Pugliesi Por que Redes Neurais? Utilizar máquinas efetivamente para resolver problemas simples (humanos) Exemplo: distinguir padrões visuais previsão do valor

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

O uso de uma Rede Neural Artificial Supervisionada para obtenção do fator de carga de um alimentador.

O uso de uma Rede Neural Artificial Supervisionada para obtenção do fator de carga de um alimentador. O uso de uma Rede Neural Artificial Supervisionada para obtenção do fator de carga de um alimentador. Resumo: Lucas da Silva Assis Universidade Federal de Goiás lucasilvassis@gmail.com Esse trabalho apresenta

Leia mais

Redes Neurais MLP: Exemplos e Características

Redes Neurais MLP: Exemplos e Características Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Redes Neurais MLP: Exemplos e Características DCA0121 Inteligência Artificial Aplicada Heitor Medeiros 1

Leia mais

Paradigmas de Aprendizagem

Paradigmas de Aprendizagem Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação Paradigmas de Aprendizagem Redes Neurais Artificiais Site: http://jeiks.net E-mail: jacsonrcsilva@gmail.com

Leia mais

Redes Neurais Artificiais Sistemas Inteligentes Especialização em Automação Industrial SISTEMAS INTELIGENTES PROFESSOR FLÁVIO MURILO

Redes Neurais Artificiais Sistemas Inteligentes Especialização em Automação Industrial SISTEMAS INTELIGENTES PROFESSOR FLÁVIO MURILO Redes Neurais Artificiais Sistemas Inteligentes Especialização em Automação Industrial 1 Redes Neurais - Definição O que é Rede Neural ou Rede Neuronal Artificial (RNA)? É um modelo computacional que objetiva

Leia mais

Redes Neurais Artificial. Prática. Inteligência Artificial

Redes Neurais Artificial. Prática. Inteligência Artificial Redes Neurais Artificial Prática Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Introdução a MLP 2. Base de dados e Pré-Processamento 3. Prática MLP - Introdução Redes

Leia mais

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO Prof. Msc. Saulo Popov Zambiasi (saulopz@gmail.com) Informação - ICPG - Criciuma - SC 1 Características Gerais, operadores, algoritmo.

Leia mais

Previsão de Vazões utilizando Redes Neurais Artificiais MLP e NSRBN

Previsão de Vazões utilizando Redes Neurais Artificiais MLP e NSRBN Previsão de Vazões utilizando Redes Neurais Artificiais MLP e NSRBN Alan Caio Rodrigues MARQUES 1, Gelson da Cruz JUNIOR 2, Cassio Dener Noronha VINHAL 3 Escola de Engenharia Elétrica e de Computação 1

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

Professor José Gomes de Carvalho Jr. Modelos Conexionistas - Redes Neurais 1 INTRODUÇÃO

Professor José Gomes de Carvalho Jr. Modelos Conexionistas - Redes Neurais 1 INTRODUÇÃO Modelos Conexionistas - Redes Neurais 1 INTRODUÇÃO Redes Neurais Artificiais ou simplesmente Redes Neurais (também conhecidas como modelos conexionistas) têm sido, ao longo dos últimos anos, uma área de

Leia mais

Teorema de Aprox. Universal. Teorema de Aprox. Universal. Teorema de Aprox. Universal. Teorema de Aprox. Universal. Teorema de Aprox.

Teorema de Aprox. Universal. Teorema de Aprox. Universal. Teorema de Aprox. Universal. Teorema de Aprox. Universal. Teorema de Aprox. SCE-5809 - REDES NEURAIS Redes Neurais Multi-Camadas Parte 3 Profa Roseli Ap Francelin Romero Qual é o número mínimo de camadas num PMC que fornece uma aproximação para qualquer mapeamento contínuo? Cybenko,

Leia mais

Aprendizagem por Treinamento de Redes Neurais

Aprendizagem por Treinamento de Redes Neurais Aprendizagem por Treinamento de Redes Neurais Marco H. Terra Departamento de Eng. Elétrica - EESC - USP SEL 0362 - Inteligência Artificial 1 Introdução Neste capítulo aprende-se como neurônios organizados

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

4 Redes Neurais Artificiais RNAs

4 Redes Neurais Artificiais RNAs 66 4 Redes Neurais Artificiais RNAs Redes neurais artificial (RNA) são algoritmos que se baseiam no comportamento do cérebro humano. Dessa forma, imita a estrutura massivamente paralela do cérebro, com

Leia mais

Multi-Layer. Perceptrons. Algoritmos de Aprendizado. Perceptrons. Perceptrons

Multi-Layer. Perceptrons. Algoritmos de Aprendizado. Perceptrons. Perceptrons Algoritmos de Aprendizado Regra de Hebb Perceptron Delta Rule (Least Mean Square) Multi-Layer Perceptrons (Back Propagation) Radial Basis Functions (RBFs) Competitive Learning Hopfield Multi-Layer Perceptrons

Leia mais

Tópicos Especiais em Informática Fatec Indaiatuba

Tópicos Especiais em Informática Fatec Indaiatuba Criar máquinas capazes de operar independentemente do homem: Aprenda sozinha; Interagir com ambientes desconhecidos; Possa ser chamada de autônoma, inteligente ou cognitiva; Capacidade de lidar com eventos

Leia mais

FORECASTING OF EUCALYPTUS WOOD PRICES FOR CELLULOSE AND SAWMILL USING RADIAL BASIS FUNCTION NEURAL NETWORK AND CLUSTERING METHOD

FORECASTING OF EUCALYPTUS WOOD PRICES FOR CELLULOSE AND SAWMILL USING RADIAL BASIS FUNCTION NEURAL NETWORK AND CLUSTERING METHOD FORECASTING OF EUCALYPTUS WOOD PRICES FOR CELLULOSE AND SAWMILL USING RADIAL BASIS FUNCTION NEURAL NETWORK AND CLUSTERING METHOD Roberto Max Protil - PUCPR Leandro dos Santos Coelho PUCPR Wesley Vieira

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 8 Redes Neurais Introdução As redes neurais são um tema da computação altamente inspirada na natureza que nos

Leia mais

JAI 6 - Deep Learning Teoria e Prática

JAI 6 - Deep Learning Teoria e Prática JAI 6 - Deep Learning Teoria e Prática Esteban Clua e Cristina Nader Vasconcelos Universidade Federal Fluminense Fundamentos Computação baseada em modelos crisnv@ic.uff.br 2 Computação baseada em aprendizado

Leia mais

Redes Neurais Artificiais. Prof. João Alberto Fabro

Redes Neurais Artificiais. Prof. João Alberto Fabro Redes Neurais Artificiais Prof. João Alberto Fabro Redes Neurais Artificiais Conceitos Básicos Histórico Evolução O lugar das Redes Neurais dentro da IA Características Aplicações Redes Neurais Multicamadas

Leia mais

HP UFCG Analytics Abril-Maio Um curso sobre Reconhecimento de Padrões e Redes Neurais. Por Herman Martins Gomes.

HP UFCG Analytics Abril-Maio Um curso sobre Reconhecimento de Padrões e Redes Neurais. Por Herman Martins Gomes. HP UFCG Analytics Abril-Maio 2012 Um curso sobre Reconhecimento de Padrões e Redes Neurais Por Herman Martins Gomes hmg@dsc.ufcg.edu.br Programa Visão Geral (2H) Reconhecimento Estatístico de Padrões (3H)

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

Resolução da Prova 1 SCC Redes Neurais 2o. Semestre de Prof. João Luís

Resolução da Prova 1 SCC Redes Neurais 2o. Semestre de Prof. João Luís Resolução da Prova 1 SCC-5809 - Redes Neurais 2o. Semestre de 2011 - Prof. João Luís RESOLUÇÃO (2) 1. A figura abaixo mostra uma rede neural com um único neurônio escondido. Mostre que essa rede resolve

Leia mais

Algoritmos de Aprendizado. Formas de Aprendizado. Aprendizado Batch x Incremental. Aprendizado Batch x Incremental

Algoritmos de Aprendizado. Formas de Aprendizado. Aprendizado Batch x Incremental. Aprendizado Batch x Incremental Algoritmos de Aprendizado Regra de Hebb Perceptron Delta Rule (Least Mean Square Back Propagation Formas de Aprendizado Existe dois métodos básicos de aplicação do algoritmo Back Propagation: Aprendizado

Leia mais

Tópicos sobre Redes Neurais

Tópicos sobre Redes Neurais Tópicos sobre Redes Neurais -Memórias Matriciais -Modelos Híbridos -Redes de Base Radial(RBF) -Redes Construtivas -Redes Recorrentes Prof João Alberto Fabro IF67D Sistemas Inteligentes 1 Dep de Informática

Leia mais

ESTIMATIVA DE RADIAÇÃO SOLAR NA REGIÃO DO MACIÇO DE BATURITÉ: ABORDAGEM VIA REDES NEURAIS ARTIFICIAIS.

ESTIMATIVA DE RADIAÇÃO SOLAR NA REGIÃO DO MACIÇO DE BATURITÉ: ABORDAGEM VIA REDES NEURAIS ARTIFICIAIS. ESTIMATIVA DE RADIAÇÃO SOLAR NA REGIÃO DO MACIÇO DE BATURITÉ: ABORDAGEM VIA REDES NEURAIS ARTIFICIAIS. Arini de Menezes Costa 1, Kaio Martins Ramos 2, Hugo Hermano da Costa Castro 3, Antonio Alisson P.

Leia mais

GT-JeDi - Curso de Desenv. de Jogos IA para Jogos

GT-JeDi - Curso de Desenv. de Jogos IA para Jogos GT-JeDi - Curso de Desenv. de Jogos IA para Jogos Gustavo Pessin 2006/2 - A07 Cronograma Conceitos Neurônio artificial Redes: Perceptron e Multi Layer Perceptron (MLP), Exemplos Separando cores Prevendo

Leia mais

Neurocomputação Parte 2

Neurocomputação Parte 2 Neurocomputação Parte 2 Fabricio Breve - fbreve@gmail.com 25/09/2007 Fabricio Breve 1 REDES NEURAIS ARTIFICIAIS 25/09/2007 Fabricio Breve 2 Por que Redes Neurais? Computadores convencionais são eficientes

Leia mais

SCC Capítulo 3 Aprendizado

SCC Capítulo 3 Aprendizado Aprendizado Supervisionado Não Supervisionado Tarefas SCC-5809 - Capítulo 3 Aprendizado João Luís Garcia Rosa 1 1 SCC-ICMC-USP - joaoluis@icmc.usp.br 2012 João Luís G. Rosa c 2012 - SCC-5809: Redes Neurais

Leia mais

Multi-Layer. Perceptrons. Algoritmos de Aprendizado. Perceptrons. Perceptrons

Multi-Layer. Perceptrons. Algoritmos de Aprendizado. Perceptrons. Perceptrons Algoritmos de Aprendizado Regra de Hebb Perceptron Delta Rule (Least Mean Square) Back Propagation Multi-Layer Perceptrons Redes de apenas uma camada só representam funções linearmente separáveis Redes

Leia mais

PERCEPTRON. Características Básicas Modelo de Neurônio Estrutura da Rede Algoritmo de Aprendizado

PERCEPTRON. Características Básicas Modelo de Neurônio Estrutura da Rede Algoritmo de Aprendizado PERCEPTRON Características Básicas Modelo de Neurônio Estrutura da Rede Algoritmo de Aprendizado CARACTERISTICAS BASICAS - Regra de propagação net - Função de ativação: Degrau = x w + - Topologia: uma

Leia mais

Fundamentos das Redes Neurais: exemplos em Java

Fundamentos das Redes Neurais: exemplos em Java Fundamentos das Redes Neurais: exemplos em Java Recife 2008 Copyringt by 2007 Mêuser Valença Impresso no Brasil Printed in Brazil Editor Tarcísio Pereira Diagramação Maria do Carmo de Oliveira Capa Valeska

Leia mais

Redes Neurais. Motivação. Componentes do neurônio. Cérebro humano. Criar máquinas capazes de operar independentemente do homem:

Redes Neurais. Motivação. Componentes do neurônio. Cérebro humano. Criar máquinas capazes de operar independentemente do homem: Motivação M. Sc. Luiz Alberto lasf.bel@gmail.com Redes Neurais Criar máquinas capazes de operar independentemente do homem: Aprenda sozinha; Interagir com ambientes desconhecidos; Possa ser chamada de

Leia mais