Apresentação expotec

Post on 13-Apr-2017

97 views 0 download

Transcript of Apresentação expotec

Por que preciso aprender algoritmo

genético?EXPOTEC - 2016

About me!

• Mestrando em Inteligência Artificial na USP, onde pesquiso sobre: Detecção e reconhecimento de faces em ambientes não controlados com reconstrução 3D.

• Data Scientist na iColabora, onde trabalho com pesquisa e desenvolvimento de novos produtos aplicando técnicas de aprendizado de máquina.

• Tecnólogo em Sistemas para Internet pelo IFPB• Ex-aluno do curso de Lic. Ciências da

Computação pela UFPB – campus IV.

Sumário

• O que são algoritmos genéticos?• Operadores genéticos e a representação cromossômica• Aplicação do algoritmo genético – 8 rainhas• Elasticsearch• Buscas no elasticsearch• Boosting em busca no elasticsearch

O que são algoritmos genéticos?

O que são algoritmos genéticos?

DARWIN Seleção natural

Seleção Natural

O que são algoritmos genéticos?

DARWIN Seleção sexual

Qual possui a melhor característica morfológica?

O que são algoritmos genéticos?

Outros Conceitos

População

Reprodução

Mutação

• Mutações genéticas geram indivíduos novos

• Geralmente afeta apenas uma pequena parte da população

Gerações

O que são algoritmos genéticos?

“São algoritmos baseado na teoria da evolução que a partir de uma população de indivíduos, através de mutação e reprodução, buscam um indivíduo ótimo.”

Representação cromossômica

Representação cromossômica computacional• Vetor unidimensional• Vetor bidimensional• Árvore• Grafo• ...

Operador de Crossover

Operador de crossover (reprodução)

Operador de Mutação

Operador de

mutação

O problema das 8

rainhas

O problema das 8 rainhas

• Dispor 8 rainhas em um tabuleiro 8 x 8• As rainhas não podem se ameaçar• 92 soluções• Existem 4.426.165.368 maneiras de dispor as rainhas.• P(A) = 92/4.426.165.368• Considerando uma rainha por cada linha e coluna• Existem 40.320 maneiras de dispor as rainhas.• P(A) = 92/40.320

O problema das 8 rainhas

1 2 3 4 5 6 7 8

3 2 1 6 7 8 5 4

2 4 6 8 3 1 7 5

2 2 1 6 7 8 5 4

5 4 3 7 8 2 1 6

• Alfabeto e representação• Gerados aleatoriamente• Indivíduos distintos• Soluções do problema• Factíveis• Infactíveis• Qual o melhor indivíduo?• Menor quantidade de rainhas se

ameaçando• Melhores se reproduzem• Por fim a população evolui

Elasticsearch

• Base de dados orientada a documentos• Os documentos são indexados por tokens• Relevância dos documentos• Real time search• Baseado em Restfull• Livre de schema• Full text search• Distribuição massiva• JSON Documents

Elasticsearch

• Cluster – Coleção de 1 ou mais nós• Node – Subdivisão do clusters (Permite

join entre eles)• Index – Coleção de documentos com

características similares (database)• Type – Tipos de documentos (tabelas)• Document – Unidade básica a ser

armazenada (registro)• Shards – Subdivisão do Index• Replicas – Copias de segurança dos shards

Mão na massa

Por que preciso aprender algoritmo

genético?EXPOTEC - 2016