A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Inteligência Computacional UFGD/Análise de Sistemas Prof. Celso Camilo.

Apresentações semelhantes


Apresentação em tema: "Inteligência Computacional UFGD/Análise de Sistemas Prof. Celso Camilo."— Transcrição da apresentação:

1

2 Inteligência Computacional UFGD/Análise de Sistemas Prof. Celso Camilo

3 Introdução - Conteudo O que é Inteligência Computacional (IC) ? Técnicas Inteligentes Algoritmo genético Redes Neurais Logica Fuzzy Swarm Intelligence... Áreas de Aplicação

4 Introdução O que é Inteligência ?

5 O que você considera inteligente ?

6 Introdução O que é Inteligência ? capacidade de aprender, apreender e interpretar Dicionário Aurélio

7 Introdução O que é Inteligência ? A habilidade de aprender ou entender ou tratar com situações novas. A habilidade de aplicar o conhecimento para manipular um ambiente ou pensar abstratamente como avaliado por critérios objetivos (como testes). Websters New Collegiate Dictionary,1975

8 Introdução O que é Inteligência ? Inteligência é a capacidade do sistema adaptar seu comportamento para encontrar seus objetivos em uma faixa de ambientes. David Fogel (1995)

9 Introdução O que é Inteligência ? No livro do Andreas ele relata outras fontes que incluem aspectos como creatividade, habilidade, emoção e intuição na definição de inteligência Andreas Book (CI – An Introduction)

10 Intelligence Is… Capacity to learn from experience Ability to adapt to different contexts The use of metacognition to enhance learning

11 Emotional Intelligence Mayer & Salovey (1997) The capacity to reason about emotions, and of emotions to enhance thinking. It includes the abilities to accurately perceive emotions, to access and generate emotions so as to assist thought, to understand emotions and emotional knowledge, and to reflectively regulate emotions so as to promote emotional and intellectual growth

12 Social Intelligence Ability to get along with others Knowledge of social matters Insight into moods or underlying personality traits of others

13 Introdução Os computadores podem ser inteligentes ?

14 Introdução Os computadores podem ser inteligentes ? Em meados de 1900, Alan Turing acreditava que não há nada que a mente faz que um computador bem projetado não possa fazer. Depois de 20 anos, o seu pensamento ainda é considerado visionario. Em 1950 Turing publicou o seu teste para medir a inteligência do computador – Teste de Turing.

15 Introdução Teste de Turing O teste consiste em uma pessoa fazer perguntas pelo teclado para uma outra pessoa e um computador. Se o interrogador não conseguir distinguir a máquina da pessoa, então o computador é inteligente.

16 Introdução O que é Inteligência Computacional (IC) ? Técnicas e sistemas computacionais que imitam aspectos humanos, tais como: percepção, raciocínio, aprendizado, evolução e adaptação. A Inteligência Computacional busca, através de técnicas inspiradas na Natureza, o desenvolvimento de sistemas inteligentes que imitem aspectos do comportamento humano, tais como: aprendizado, percepção, raciocínio, evolução e adaptação. ICA-Puc-RIO

17 Introdução O que é Inteligência Computacional (IC) ? Redes Neurais, Algoritmos Genéticos, Sistema Fuzzy, Programação Evolucionária e Vida Artificial são os blocos construtores da Inteligência Computacional. IEEE Transactions on Neural Networks IC geralmente descreve métodos de computação que podem ser usados para adaptar soluções para novos problemas sem depender explicitamente do conhecimento humano David Fogel

18 Introdução Inspiração na Natureza Lógica Fuzzy - processamento linguístico Redes Neurais - neurônios biológicos Algoritmos Genéticos – evolução biológica Sistemas Híbridos – aspectos combinados

19 Suporte a Decisão

20 Introdução – Áreas de Aplicação

21

22

23 Algoritmos Genéticos

24 Conceitos Básicos busca/otimização seleção natural genética Algoritmo de busca/otimização inspirado na seleção natural e reprodução genética.

25 Conceitos Básicos Algoritmo de busca/otimização inspirado na seleção natural e reprodução genética. sobrevivência do mais apto cruzamento Combina sobrevivência do mais apto e cruzamento aleatório de informação

26 Indivíduo Cromossoma Reprodução Sexual Mutação População Gerações Meio Ambiente Solução Representação Operador Cruzamento Operador Mutação Conjunto de Soluções Ciclos Problema Analogia com a Natureza Evolução Natural Alg. Genéticos

27 adaptativoparalelo problemascomplexos Algoritmos Genéticos empregam um processo adaptativo e paralelo de busca de soluções em problemas complexos. Qual a finalidade de Algoritmos Genéticos?

28 Adaptativo Adaptativo informação corrente influencia a busca futura Paralelo Paralelo várias soluções consideradas a cada momento Problema Complexo Problema Complexo de difícil formulação matemática ou com grande espaço de busca (grande número de soluções) Qual a finalidade de Algoritmos Genéticos?

29 Exemplo: Maximizar f (x) = x 2 : encontrar x ( L -1) para f(x)=máx Problema Complexo 10 9 inst/seg

30 Exemplo: Maximizar f (x) = x 2 : encontrar x ( L -1) para f(x)=máx Problema Complexo 10 9 inst/seg

31 Exemplo: Maximizar f (x) = x 2 : encontrar x ( L -1) para f(x)=máx Problema Complexo 10 9 inst/seg

32 Exemplo: Maximizar f (x) = x 2 : encontrar x ( L -1) para f(x)=máx Problema Complexo 10 9 inst/seg

33 Exemplo: Maximizar f (x) = x 2 : encontrar x ( L -1) para f(x)=máx Problema Complexo 10 9 inst/seg

34 Problema da Cabra Cega Busca de objetivo escondido em uma área y0y0 Avaliação adapta a busca (X 0, Y 0 ) tá frio x0x0 tesouro x y

35 Problema da Cabra Cega Busca de objetivo escondido em uma área x1x1 y0y0 y1y1 Avaliação adapta a busca (X 0, Y 0 ) tá frio (X 1, Y 1 ) tá morno x0x0 tesouro x y

36 Problema da Cabra Cega Busca de objetivo escondido em uma área x1x1 x2x2 y0y0 y2y2 y1y1 Avaliação adapta a busca (X 0, Y 0 ) tá frio (X 1, Y 1 ) tá morno (X 2, Y 2 ) tá quente! x0x0 tesouro x y

37 Problema da Cabra Cega tesouroy x Área Muito Grande Busca Paralela

38 Problema da Cabra Cega xBxBxBxB xAxAxAxA yAyAyAyA y By By By B tesouroy x A B C D E Área Muito Grande Busca Paralela

39 Problema da Cabra Cega xBxBxBxB xAxAxAxA yAyAyAyA y By By By B y x B C D E cruzamento A tesouro

40 xBxBxBxB xAxAxAxA yAyAyAyA y By By By B tesouroy x B C D E cruzamento xB,yA(xB,yA )xB,yA(xB,yA ) F A G xA,yB(xA,yB )xA,yB(xA,yB )

41 Seleção Seleção: privilegia os indivíduos mais aptos Operações Básicas

42 Seleção: privilegia os indivíduos mais aptos Reprodução Reprodução: indivíduos (ex: palavras binárias) são reproduzidos com base na aptidão Operações Básicas

43 Seleção: privilegia os indivíduos mais aptos Reprodução: indivíduos (ex: palavras binárias) são reproduzidos com base na aptidão Crossover Crossover: troca de genes (pedaços de palavras) Operações Básicas

44 Seleção: privilegia os indivíduos mais aptos Reprodução: indivíduos (ex: palavras binárias) são reproduzidos com base na aptidão Crossover: troca de genes (pedaços de palavras) Mutação Mutação: troca aleatória de um gene (bit da palavra) Operações Básicas

45 Problema: Achar o valor máximo para f (x) = x 2, x no limite de 0 a 63. ExemploExemplo

46 Problema: Achar o valor máximo para f (x) = x 2, x no limite de 0 a 63. Representação da Solução: Palavras binárias representando sucessivas potências de Representa Representa 53 (uma solução mais apta) ExemploExemplo

47 Seleção em Algoritmos Genéticos População CromossomaPalavra A B C D X Aptidão (x 2 )

48 Seleção em Algoritmos Genéticos População CromossomaPalavra A B C D X Aptidão (x 2 ) A D C B Seleção Probabilidade Aptidão do de Seleção Cromossoma 324

49 Crossover Operadores de Algoritmos Genéticos Pais

50 Crossover Operadores de Algoritmos Genéticos PaisFilhos

51 Mutação Crossover Operadores de Algoritmos Genéticos PaisFilhos Antes Depois

52 Fluxo do Algoritmo Genético

53 Cromossoma Palavra Aptidão A B C D Ciclo do Algoritmo Genético

54 Cromossoma Palavra Aptidão A B C D Pais Ciclo do Algoritmo Genético

55 Cromossoma Palavra Aptidão A B C D Pais Reprodução Crossover Mutação Ciclo do Algoritmo Genético

56 Cromossoma Palavra Aptidão A B C D f( ) Pais Reprodução Filhos Avaliação dos Filhos Crossover Mutação Ciclo do Algoritmo Genético

57 Cromossoma Palavra Aptidão A B C D f( ) Pais Reprodução Filhos Avaliação dos Filhos Ciclo do Algoritmo Genético Evolução

58 Evolução dos Indivíduos Evolução Evolução

59 Aplicado em problemas complexos de otimização – de difícil modelagem matemática, com variedade de regras e condições, ou com grande número de soluções a considerar. AvaliaçãoAvaliação

60 Vantagens Técnica de busca global (evita mínimos locais) Otimização de problemas complexos e mal estruturados Dispensa formulação matemática precisa do problema Desvantagens Precisão na representação do cromossoma Evolução demorada em alguns problemas Modelagem depende do habilidade do especialista em GA AvaliaçãoAvaliação

61 Aplicações Industriais GENERAL ELECTRIC - Otimização de Projeto de Motores DC BRITISH GAS - Otimização da Distribuição de Gás BBN - Roteamento de Telecomunicações ATTAR - Planejamento da Programação de TV

62 Aplicações Comerciais CAP VOLMAC - Avaliação de Crédito e Análise de Risco S EARCH S PACE - Detecção de Fraude na Bolsa de Londres IOC - Planejamento dos Jogos Olímpicos CAP Gemini - Avaliação de Empréstimos e Financiamentos GWI - Modelagem Econômica World Bank - Geração de Regras de Negociação na Bolsa

63 Desenvolvimento do AG

64 1. 1. Problema 2. Representação 3. Decodificação 4. Avaliação 5. Operadores 6. Parâmetros Componentes de um Algoritmo Genético

65 1. PROBLEMA Conhecer regras, restrições, objetivos, procedimentos em uso, etc.Estudo de Contexto do Problema: Conhecer regras, restrições, objetivos, procedimentos em uso, etc. :GAs são indicados em problemas difíceis de otimização: muitos parâmetros e variáveis; mal estruturados: com condições e restrições, difíceis de serem modeladas matematicamente; grandes espaços de busca onde não é possível a busca exaustiva.

66 2. REPRESENTAÇÃO descrever o espaço de busca relevante ao problema; codificar geneticamente a essência do problema: evolução da solução evolução do código evolução da solução ser compatível com os operadores (crossover e mutação) evolução, otimização representação adequada evolução, otimização Representação é fundamental na modelagem de um GA e deve:

67 2. REPRESENTAÇÃO Tipo de Problema Numérico Numérico Ordem Ordem Grupo Grupo Inteiro Inteiro Misto Misto Representação Binário, Real Binário, Real Lista Lista Vetor Vetor Inteiro Inteiro Mista Mista

68 Real representado por Binário Primeiro tipo de representação em Algoritmos Genéticos Número real é codificado através de um número binário de K bits Representação binária descreve um real em detalhes (genes): 13 em binário = 1101= 1x x x x2 0 =

69 BINÁRIO CODIFICANDO REAL Aspectos importantes: variáveis do problema (x 1, x 2,..., x t ) domínio de valores: x i (mín i, máx i ) em R precisão: p casas decimais mín i máx i (máx i -mín i )x10 p + 1 diferentes soluções domínio de x i Precisão 1/10 p

70 Decodificação para Real: x i real = x i bin. ________ + mín i (máx i -mín i ) 2 k i - 1 se x ibin =( )x i real = mín i se x ibin =( ) x i real = máx i Representação: k 1 bitsk 2 bitsk t bits x1x1 x2x2 xtxt... 2 k i (máx i -mín i )x10 p onde, Precisão = (máx i -mín i ) 2 k i - 1 Binário na base 10

71 REPRESENTAÇÃO BINÁRIA representa números na menor base (2) simples de criar e manipular produz bons resultados fácil decodificação numérica ( inteiro,real ) facilita a demonstração de teoremas porém, nem sempre é adequada

72 3. DECODIFICAÇÃO Construir a solução para o problema a partir de um cromossoma: Cromossomas representam soluções. CromossomaDECODIFICAÇÃOSolução bininteiro x= x=27 x 10/(2 7 -1) x=2,1 x [0,10] 1 casa decimal ADBCE rota A D B C E A C BE D 7Km 3Km4Km 1Km 3Km cidades

73 Elo entre o algoritmo genético e o problema. f(cromossoma) = medida numérica de aptidão Chances de seleção são proporcionais à aptidão. 4. AVALIAÇÃO

74 Seleção pela Roleta Método por Computador Encontre a soma da aptidão de todos os membros da população A T = A i (0 i pop_size-1) Gere um número aleatório 0 rand A T Pegue o primeiro membro da população I k cuja aptidão somada às aptidões dos membros precedentes é maior ou igual a rand. A i rand (i k) Objetivo: Selecionar indivíduos aleatoriamente, proporcionando maiores chances de reprodução aos mais aptos.

75 Exemplo da Roleta Cromossoma Aptidão A i Número Aleatório Selecionado

76 5. OPERADORES 1. Crossover 2. Mutação 3. Operadores específicos ao problema (heurísticos) Atuam no processo de criação de novos indivíduos (descendentes):

77 Crossover de 1 ponto de corte A cauda de dois cromossomas são trocadas a partir de posição escolhida aleatoriamente Taxa de Crossover : entre 60% e 90% Teste Verdadeiro Efetua Cruzamento Teste Falso Copia os Genitores P1P2F1F2P1P2F1F2 ponto de corte aleatório CabeçaCauda

78 Mutação por inversão de bit Inverte cada gene de um cromossoma se o teste de probabilidade for verdadeiro Taxa Mutação: entre 0,1% e 5% Teste Verdadeiro troca bit Teste Falso mantém bit 0,8% (0,008) Cromossoma Número Aleatório Novo Cromossoma

79 6. PARÂMETROS - TAMANHO_POPULAÇÃO - NÚMERO_GERAÇÕES - TAXA_CROSSOVER - TAXA_MUTAÇÃO...

80 procedure algoritmo_genético begin t = 0; primeira geração inicializa P(t); população inicial aleatória avalia P(t); calcula f(i) p/ cada indivíduo while (not condição_parada) do begin t = t + 1; próxima geração seleciona P(t) de P(t-1) altera P(t); crossover e mutação avalia P(t); calcula f(i) p/ cada indivíduo end Desenvolvimento de um Algoritmo Genético

81 Sistemas de Desenvolvimento ICADEMO WinGenesis GENOCOP GeneHunter Evolver 4.0 Open Beagle Sugal GACOM: Biblioteca de Componentes (C#)

82 Desenvolver um AG para Maximizar a função F6:

83 Função F6(x,y) F6(x,0) x

84 Módulo de Avaliação Função de Avaliação: Função binária F 6 Módulo de População Técnica de Representação:Binária 44 bits Técnica Inicialização da População:Aleatória Técnica Eliminação da População:Elimina todos – o mais apto (Elitismo) Técnica de Seleção de Genitores:Roleta Técnica de Aptidão: Aptidão é a avaliação Population Size:100 Módulo de Reprodução Operadores:Crossover 1 ponto & Mutação Taxa Mutação:0,008 Taxa Crossover:0,65

85 Características da F6 Objetivo: Maximizar F6 Uma única solução ótima: F6(0,0)=1 Difícil de otimizar: vários mínimos locais F6(x,y) = 0,5 - (sen x 2 + y 2 ) 2 - 0,5 (1,0 + 0,001 (x 2 + y 2 )) 2

86 Representação Binária codificando real 2 Variáveis: x, y Domínio: x,y [-100, +100] Precisão: 4 a 5 casas decimais K i =22 total de 44 bits

87 Exemplo Cromossoma: Dividido em x e y: Convertidos para base 10: e Multiplicados por: 200/ , e 108, Somados a mín: x=-92, e y=8, Aplicados a F6(x,y): F6(x,y)=0,

88 Módulo de População Técnica Inicialização da População:Aleatória Geração aleatória de palavras de 44 bits Técnica de Aptidão: Aptidão é a avaliação Aptidão é numericamente igual à avaliação Técnica de Seleção de Genitores:Roleta

89 Parâmetros Tamanho da População: Exemplo pop_size 100 Número de Gerações: num_ger 40 Total de Indivíduos: total_ind = pop_size x num_ger 4000

90 Parâmetros Tamanho da População: Exemplo pop_size 10 Número de Gerações: num_ger 400 Total de Indivíduos: total_ind = pop_size x num_ger 4000


Carregar ppt "Inteligência Computacional UFGD/Análise de Sistemas Prof. Celso Camilo."

Apresentações semelhantes


Anúncios Google