Evolução Gramatical - 5a. Escola Luso

Transcrição

Evolução Gramatical - 5a. Escola Luso
Evolução Gramatical
5a. Escola Luso-Brasileira de Computação Evolutiva
Laboratório Nacional de Computação Cientı́fica (LNCC/MCTI)
Heder S. Bernardino
Universidade Federal de Juiz de Fora (UFJF)
18/02/2014
Heder S. Bernardino
Evolução Gramatical
Sumário
1
Introdução
2
Gramática Formal
3
Evolução Gramatical
4
Inferência de Modelos
Exemplos
5
Conclusões
Heder S. Bernardino
Evolução Gramatical (2)
Introdução
Introdução
Heder S. Bernardino
Evolução Gramatical (3)
Introdução
Introdução
I
I
I
I
I
As metaheurı́sticas são métodos em que pouco conhecimento do
problema é necessário
Seu nome é a combinação da palavra meta (maior generalidade) com
heurı́stica (descobrir)
Não há garantia de se obter a melhor solução para o problema
Metaheurı́sticas bio-inspiradas baseiam-se em comportamentos
observados na natureza
Exemplos
I
I
I
I
I
I
I
Algoritmos Genéticos
Estratégias Evolutivas
Programação Genética
Evolução Gramatical
Sistemas Imunológicos Artificiais
Colônia de Formigas
Enxame de Partı́culas
Heder S. Bernardino
Evolução Gramatical (4)
Introdução
Introdução – Algoritmos Genéticos (AGs)
I
Algoritmo populacional
I
I
Os “cromossomos” são representados por vetores binários
I
I
AGs não estão presos a essa representação
Melhora soluções candidatas inspirado pela teoria da evolução das
espécies [Darwin, 1859]
I
I
I
I
Soluções candidatas são chamadas de indivı́duos
Seleção
Recombinação ou cruzamento
Mutação
Requisitos sobre o problema
I
I
Saber recombinar e/ou modificar soluções candidatas
Ser capaz de comparar indivı́duos
Heder S. Bernardino
Evolução Gramatical (5)
Introdução
Introdução
Simulador
I
onde x pode representar um
I
I
I
I
vetor de variáveis discretas
vetor de variáveis contı́nuas
..
.
Seria possı́vel utilizar um AG para evoluir estruturas mais complexas?
Heder S. Bernardino
Evolução Gramatical (6)
Introdução
Introdução
Simulador
I
onde x pode representar um
I
I
I
I
vetor de variáveis discretas
vetor de variáveis contı́nuas
..
.
Seria possı́vel utilizar um AG para evoluir estruturas mais complexas?
Heder S. Bernardino
Evolução Gramatical (6)
Introdução
Introdução – Algoritmos Genéticos (AGs)
I
Seria possı́vel utilizar um AG para evoluir?
I
Expressões aritméticas em forma simbólica
 0
y1 = 15y3 y5−0.1 − 10y12




 y20 = 10y12 − 10y22
y30 = 10y2−0.1 − 10y2−0.1 y32



y 0 = 8y12 y5−1 − 10y42

 40
y5 = 10y42 − 10y52
Heder S. Bernardino
Evolução Gramatical (7)
Introdução
Introdução – Algoritmos Genéticos (AGs)
I
Seria possı́vel utilizar um AG para evoluir?
I
Classificadores
if (College percentage > 70.15 and Analytical Skills 3 > 45)
or (Domain Skills 1 > 45 and State 6= D) then
return best-performer;
else if Quantitative Ability 3 + Domain Skills 1 <
Domain Test 4 + 20 then
return low-performer;
else
return mid-performer;
Heder S. Bernardino
Evolução Gramatical (8)
Introdução
Introdução – Algoritmos Genéticos (AGs)
I
Seria possı́vel utilizar um AG para evoluir?
I
Projetos estruturais
Heder S. Bernardino
Evolução Gramatical (9)
Introdução
Introdução – Algoritmos Genéticos (AGs)
I
Seria possı́vel utilizar um AG para evoluir?
I
Arte
Heder S. Bernardino
Evolução Gramatical (10)
Introdução
Introdução – Algoritmos Genéticos (AGs)
I
Seria possı́vel utilizar um AG para evoluir?
I
Programas...
I
Criação
I
Reparo
Heder S. Bernardino
Evolução Gramatical (11)
Introdução
Introdução – Algoritmos Genéticos (AGs)
inicializa
população
avalia
termina
sim
critério
de parada
substitui
não
avalia
seleciona
muta
recombina
Heder S. Bernardino
Evolução Gramatical (12)
Introdução
Introdução – Algoritmos Genéticos (AGs)
Figure : Crossover uniforme
Figure : Operador de mutação
Heder S. Bernardino
Evolução Gramatical (13)
Introdução
Introdução
Heder S. Bernardino
Evolução Gramatical (14)
Introdução
Introdução
inicializa
população
avalia
termina
sim
critério
de parada
substitui
não
avalia
seleciona
muta
recombina
Heder S. Bernardino
Evolução Gramatical (15)
Introdução
Introdução
inicializa
população
avalia
termina
sim
critério
de parada
substitui
não
avalia
seleciona
muta
recombina
I
Mapeamento utilizando uma gramática formal
Heder S. Bernardino
Evolução Gramatical (16)
Introdução
Introdução
inicializa
população
avalia
termina
sim
critério
de parada
substitui
não
avalia
seleciona
muta
recombina
I
Mapeamento utilizando uma gramática formal
Heder S. Bernardino
Evolução Gramatical (16)
Introdução
Introdução – Evolução Gramatical (EG)
inicializa
população
avalia
termina
sim
critério
de parada
substitui
não
avalia
seleciona
muta
recombina
I
Evolução Gramatical
Heder S. Bernardino
Evolução Gramatical (17)
Gramática Formal
Gramática Formal
Heder S. Bernardino
Evolução Gramatical (18)
Gramática Formal
Gramática Formal
I
Gramática é um mecanismo para produção de cadeias de sı́mbolos de
uma linguagem [Harrison, 1978]
I
Uma gramática formal G pode ser definida como [Chomsky, 2002]
G = {N , Σ, R, S },
I
I
N é o conjunto finito de não-terminais
Σ é um conjunto finito de terminais (sı́mbolos da linguagem)
I
I
I
(1)
Exemplos: x , 1, +, − e sin
R é um conjunto finito de regras (ou produções)
S ∈ N é o sı́mbolo inicial
Heder S. Bernardino
Evolução Gramatical (19)
Gramática Formal
Gramática Formal
I
Para uma gramática livre de contexto, temos simplesmente
<nao terminal> ::= expressao,
I
I
(2)
<nao terminal> ∈ N
∗
expressao = (Σ ∪ N )
I
∪ denota a união de conjuntos
I
O sı́mbolo
utilizadas
I
Se o lado direito da expressão é composto por mais de uma
sequência, as possibilidades são delimitadas pelo sı́mbolo “|”
I
Pode-se utilizar recursividade
∗
denota que quaisquer sequências em (Σ ∪ N ) podem ser
Heder S. Bernardino
Evolução Gramatical (20)
Gramática Formal
Exemplo
I
Exemplo de uma gramática livre de contexto definindo expressões
matemáticas
G ={N , Σ, R, S }
N = {<expr>, <op>, <uop>, <var>}
√
Σ = {sin, cos, log, exp, , x , y, 1, 2, 3, +, −, ×, ÷, pow, (, )}
S =<expr>
Heder S. Bernardino
Evolução Gramatical (21)
Gramática Formal
Exemplo - Definição de R
<expr> ::= (<expr> <op> <expr>)
| <uop> (<expr>)
| <var>
<op> ::= +
(1)
(2)
(0)
|−
(1)
|×
(2)
|÷
(3)
| pow
(4)
<uop> ::= sin
(0)
| cos
(1)
| log
(2)
| exp
√
|
(4)
<var> ::= x
(3)
(0)
|y
(1)
|1
(2)
|2
(3)
|3
Heder S. Bernardino
(0)
(4)
Evolução Gramatical (22)
Evolução Gramatical
Evolução Gramatical
Heder S. Bernardino
Evolução Gramatical (23)
Evolução Gramatical
Evolução Gramatical
I
Evolução Gramatical (Grammatical Evolution, GE) é um algoritmo
evolutivo para evoluir programas através de uma gramática
I
O genótipo é uma representação binária de um vetor de inteiros
I
Os valores inteiros são usados para selecionar regras na gramática
regra = (int)mod (nr )
I
I
I
int é o próximo número inteiro na sequência
nr é o número de regras do não-terminal corrente
mod denota o resto da divisão inteira
Heder S. Bernardino
Evolução Gramatical (24)
Evolução Gramatical
Exemplo
I
Exemplo de uma gramática livre de contexto definindo expressões
matemáticas
G ={N , Σ, R, S }
N = {<expr>, <op>, <uop>, <var>}
√
Σ = {sin, cos, log, exp, , x , y, 1, 2, 3, +, −, ×, ÷, pow, (, )}
S =<expr>
Heder S. Bernardino
Evolução Gramatical (25)
Evolução Gramatical
Exemplo - Definição de R
<expr> ::= (<expr> <op> <expr>)
| <uop> (<expr>)
| <var>
<op> ::= +
(1)
(2)
(0)
|−
(1)
|×
(2)
|÷
(3)
| pow
(4)
<uop> ::= sin
(0)
| cos
(1)
| log
(2)
| exp
√
|
(4)
<var> ::= x
(3)
(0)
|y
(1)
|1
(2)
|2
(3)
|3
Heder S. Bernardino
(0)
(4)
Evolução Gramatical (26)
Evolução Gramatical
Evolução Gramatical
1
0
0
0
0
1
0 1 0 0 0 0
Exemplo de genótipo
1
0
0
0
2 0 1 ...
Vetor de inteiros codificado com 2 bits
passo
1
2
entrada
regra
resultado
<expr>
(2) mod (3) = 2
<var>
<var>
(0) mod (5) = 0
x
Processo de geração de um programa
Heder S. Bernardino
Evolução Gramatical (27)
...
Evolução Gramatical
Evolução Gramatical
{
{
{
{
{
0 0 1 0 0 0 0 1 0 0 0 1 1 1 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 1 0 0 0 1 0 1 1 0 1 1 ...
33, 29, 10, 20, 91, 32, 92, 66, ...
passo
1
2
3
4
5
6
7
8
entrada
<expr>
(<expr> <op> <expr>)
(<var> <op> <expr>)
(x <op> <expr>)
(x + <expr>)
(x + <uop>(<expr>))
(x + exp(<expr>))
(x + exp(<var>))
Heder S. Bernardino
33
29
10
20
91
32
92
66
regra
mod (3) = 0
mod (3) = 2
mod (5) = 0
mod (5) = 0
mod (3) = 1
mod (5) = 2
mod (3) = 2
mod (5) = 1
resultado
(<expr> <op> <expr>)
(<var> <op> <expr>)
(x <op> <expr>)
(x + <expr>)
(x + <uop>(<expr>))
(x + exp(<expr>))
(x + exp(<var>))
(x + exp(y))
Evolução Gramatical (28)
Evolução Gramatical
Evolução Gramatical
I
Não é necessário que todos os números inteiros sejam utilizados
I
Degeneração do código genético
2 0 1 ...
Vetor de inteiros codificado com 2 bits
passo
1
2
entrada
regra
resultado
<expr>
(2) mod (3) = 2
<var>
<var>
(0) mod (4) = 0
x
Processo de geração de um programa
Heder S. Bernardino
Evolução Gramatical (29)
Evolução Gramatical
Evolução Gramatical
regra
33 mod (3) = 0
96 mod (3) = 0
12 mod (3) = 0
..
.
I
resultado
(<expr> <op> <expr>)
((<expr> <op> <expr>) <op> <expr>)
(((<expr> <op> <expr>) <op> <expr>) <op> <expr>)
..
.
O processo de mapeamento do genótipo para o fenótipo pode
requerer inteiros adicionais
I
A estratégia original é re-utilizar os valores inteiros (wrap-around)
I
I
I
I
I
O processo de mapeamento genótipo-fenótipo pode ser infinito
Solução: Limitar a quantidade de wraps
Se uma solução candidata (programa) não pertence à linguagem então
é sugerido que sua aptidão seja o pior valor possı́vel
Segundo [O’Neill and Ryan, 2003], o processo evolutivo tende a
eliminar esses indivı́duos inválidos
Reparar a solução [Bernardino and Barbosa, 2009]
I
[Bernardino and Barbosa, 2010a] mostrou haver melhora nas soluções
encontradas quando o método de reparo é utilizado
Heder S. Bernardino
Evolução Gramatical (30)
Evolução Gramatical
Evolução Gramatical
inicializa
população
avalia
termina
sim
critério
de parada
substitui
não
avalia
seleciona
muta
recombina
Heder S. Bernardino
Evolução Gramatical (31)
Evolução Gramatical
Evolução Gramatical
0101...10
{17, 4, 82, ..., 3 }
f(x) = cos( x + y )
binário
(genótipo)
vetor inteiros
programa
(fenótipo)
Heder S. Bernardino
Evolução Gramatical (32)
Evolução Gramatical
Avaliação dos Programas Candidatos
I
Inferência de modelos
I
Minimizar a discrepância entre o valores esperado e o valor obtido pela
execução do programa candidato
m
X
f ( programa ) =
|yi − programa(xi )|
i=1
I
I
I
I
I
m é o número de pontos
xi ∈ Rn é o i -ésimo ponto
“programa” é a função/programa codificada por um indivı́duo
yi ∈ R é o valor esperado para o i -ésimo ponto
Adequações são necessárias para o caso dinâmico
I
I
diferenciação dos valores observados
integração do modelo dinâmico
Heder S. Bernardino
Evolução Gramatical (33)
Evolução Gramatical
Avaliação - Regressão
xi
-1.0
-0.5
0.0
0.5
1.0
aptidão=
m
X
yi
2.0
0.5
0.0
0.5
2.0
|yi − f (xi )|
i=1
f (x ) = 2x → aptidão = |2−(−2)|+|0.5−(−1)|+|0−0|+|0.5−1|+|2−2| = 4
f (x ) = 2x 2 → aptidão = |2−2|+|0.5−0.5|+|0−0|+|0.5−0.5|+|2−2| = 0
Heder S. Bernardino
Evolução Gramatical (34)
Evolução Gramatical
Evolução Gramatical
I
Processo de mapeamento
I
I
Diferentes técnicas de busca podem ser adotadas
Gramáticas formais
I
Asseguram que programas possam ser executados
I
Quando decodificados completamente
I
Possibilita a introdução de viés
I
Facilita a combinação com outras técnicas
I
Coeficientes numéricos gerados pelo Método dos Mı́nimos Quadrados
Heder S. Bernardino
Evolução Gramatical (35)
Evolução Gramatical
Evolução Gramatical
I
Processo de mapeamento
I
I
Diferentes técnicas de busca podem ser adotadas
Gramáticas formais
I
Asseguram que programas possam ser executados
I
Quando decodificados completamente
I
Possibilita a introdução de viés
I
Facilita a combinação com outras técnicas
I
Coeficientes numéricos gerados pelo Método dos Mı́nimos Quadrados
Heder S. Bernardino
Evolução Gramatical (35)
Inferência de Modelos
Inferência de Modelos
Heder S. Bernardino
Evolução Gramatical (36)
Inferência de Modelos
Inferência de Modelos
I
I
A geração automática de novos conhecimentos é uma utopia buscada
há tempos pelo homem
Passos para uma descoberta cientı́fica
I
I
I
I
Coletar dados
Descobrir (formular) leis (ou teorias) explicatórias
Testar as teorias
Etapas podem ocorrer ciclicamente
descobrir
coletar dados
testar
eureca!!!
I
Dados
I
I
Observação de eventos
“Produção” através de experimentos
Heder S. Bernardino
Evolução Gramatical (37)
Inferência de Modelos
Inferência de Modelos
I
I
A geração automática de novos conhecimentos é uma utopia buscada
há tempos pelo homem
Passos para uma descoberta cientı́fica
I
I
I
I
Coletar dados
Descobrir (formular) leis (ou teorias) explicatórias
Testar as teorias
Etapas podem ocorrer ciclicamente
descobrir
coletar dados
testar
eureca!!!
I
Dados
I
I
Observação de eventos
“Produção” através de experimentos
Heder S. Bernardino
Evolução Gramatical (38)
Inferência de Modelos
Inferência de Modelos
I
Inferência de modelos
I
O objetivo é encontrar uma forma simbólica que explique um dado
conjunto de observações (xi , yi )
Heder S. Bernardino
Evolução Gramatical (39)
Inferência de Modelos
Inferência de Modelos
I
Inferência de modelos
I
O objetivo é encontrar uma forma simbólica que explique um dado
conjunto de observações (xi , yi )
Heder S. Bernardino
Evolução Gramatical (39)
Inferência de Modelos
Regressão
I
Pode ser considerado como identificação de sistemas
I
Podendo envolver a determinação
I
Parâmetros numéricos
Ex.:
f (x ) = a2 x 2 + a1 x + a0
I
Estrutura do sistema
Ex.:
 0

 y1 =?
..
.

 0
ys =?
Heder S. Bernardino
Evolução Gramatical (40)
Inferência de Modelos
Regressão
I
Ajuste de curvas
I
I
I
Encontrar uma função y = f (x ) que melhor se ajuste a um conjunto de
observações (xi , yi ), i = 1, 2, . . . , m
O objetivo é entender/explicar relações entre as variáveis
Uma maneira de se medir a qualidade de tal ajuste é
E=
m
X
!1/p
|yi − f (xi )|
p
i=1
sendo o objetivo encontrar a função f (x ) que minimize esta grandeza
Heder S. Bernardino
Evolução Gramatical (41)
Inferência de Modelos
Identificação Paramétrica
I
Na prática é comum introduzir-se restrições (ou conhecimento
prévio) ao problema a fim de torná-lo mais tratável (viés indutivo)
I
Identificação Paramétrica
I
Forma da função é especificada a priori e apenas alguns coeficientes
a1 , a2 , . . . , an são deixados livres
f (x ) = g(x ; a1 , a2 , . . . , an )
I
O espaço de busca se reduz a Rn
I
O objetivo é minimizar a função de n variáveis
Ψ(a1 , a2 , . . . , an ) =
m
X
!1/p
p
|yi − g(xi ; a1 , a2 , . . . , an )|
i=1
I
O caso em que p = 2 corresponde ao ajuste por mı́nimos quadrados
Heder S. Bernardino
Evolução Gramatical (42)
Inferência de Modelos
Identificação Paramétrica
I
Uma condição necessária de mı́nimo de Ψ é
∂Ψ
=0
∂ai
i = 1, 2, . . . , n
originando um sistema de n equações não-lineares
I
Pode-se utilizar o algoritmo de Newton
I
I
I
Explora o conhecimento de que Ψ(x ) é diferenciável
Não ocorre, por exemplo, se p = 1
Se f (x ) é uma combinação linear de funções base φi (x )
f (x ) =
m
X
ai φi (x )
i=1
o sistema obtido é linear (se p = 2)
Heder S. Bernardino
Evolução Gramatical (43)
Inferência de Modelos
Regressão
I
Os modelos podem ser escritos como combinação linear de bases ?
I
Como definir uma melhor f (x ) para se ajustar aos dados ?
I
Quais informações podem ser geradas ?
I
Há como descobrir mais ?
Heder S. Bernardino
Evolução Gramatical (44)
Inferência de Modelos
Regressão
I
Os modelos podem ser escritos como combinação linear de bases ?
I
Como definir uma melhor f (x ) para se ajustar aos dados ?
I
Quais informações podem ser geradas ?
I
Há como descobrir mais ?
Heder S. Bernardino
Evolução Gramatical (44)
Inferência de Modelos
Regressão
I
Os modelos podem ser escritos como combinação linear de bases ?
I
Como definir uma melhor f (x ) para se ajustar aos dados ?
I
Quais informações podem ser geradas ?
I
Há como descobrir mais ?
Heder S. Bernardino
Evolução Gramatical (44)
Inferência de Modelos
Regressão
I
Os modelos podem ser escritos como combinação linear de bases ?
I
Como definir uma melhor f (x ) para se ajustar aos dados ?
I
Quais informações podem ser geradas ?
I
Há como descobrir mais ?
Heder S. Bernardino
Evolução Gramatical (44)
Inferência de Modelos
Regressão
I
Os modelos podem ser escritos como combinação linear de bases ?
I
Como definir uma melhor f (x ) para se ajustar aos dados ?
I
Quais informações podem ser geradas ?
I
Há como descobrir mais ?
Heder S. Bernardino
Evolução Gramatical (44)
Inferência de Modelos
Identificação Estrutural
I
A forma, ou estrutura, de f (x ) não é pré-especificada
I
O espaço de busca é o conjunto de quaisquer funções
I
I
Complexo
Exemplo
 0
 y1 = −1.4y1
y 0 = 1.4y1 − 4.2y2
 20
y3 = 4.2y2
I
A Evolução Gramatical surge como ferramenta da Inteligência
Computacional para esta situação
I
Programação Genética
Heder S. Bernardino
Evolução Gramatical (45)
Inferência de Modelos
Inferência de Modelos
I
Inferência de modelos dinâmicos
I
Uma forma de descrever matematicamente fenômenos fı́sicos ou
biológicos é através de um conjunto de equações diferenciais
ordinárias (EDOs)
I
I
EDOs descrevem a derivada temporal de uma posição fı́sica (ou
concentração quı́mica, etc) como uma função do seu estado corrente
O objetivo é encontrar um modelo em equações diferenciais
y 0 = f (x , y)
que descreva o comportamento dos pares
(xi , yi )
observados
I
I
I
y = y(x ),
i = 1, . . . , m
m é o número de pares observados
Heder S. Bernardino
Evolução Gramatical (46)
Inferência de Modelos
Inferência de Modelos
I
Existem duas formas de se resolver esse problema usando técnicas de
regressão simbólica [Schmidt and Lipson, 2009]
I
I
I
I
Obter uma aproximação ȳi0 ≈ yi0 através de derivação
numericamente e encontrar uma representação simbólica para
encontrar f (x , y) que minimize a distância entre f (xi , yi ) e ȳi0
Integrar numericamente uma solução candidata dada por uma
EDO y 0 = f (x , y) e compará-la com os pares (xi , yi ) observados
A segunda opção foi utilizada em [Bernardino and Barbosa, 2010b]
I
Maior acurácia
I
Maior custo computacional
Ambas ideias foram combinadas em [Bernardino and Barbosa, 2011]
Heder S. Bernardino
Evolução Gramatical (47)
Inferência de Modelos
Inferência de Modelos
I
A mesma idéia pode ser aplicada a sistemas de EDOs
[Bernardino and Barbosa, 2011]
I
Equações diferenciais ordinárias de ordem superior
I
Decompõe-se o modelo em um sistema de EDOs de primeira ordem
(
y10 = y2
y 00 = f (x , y, y 0 ) ⇒
y20 = f (x , y1 , y2 )
Heder S. Bernardino
Evolução Gramatical (48)
Inferência de Modelos
Inferência de Modelos
I
Principais dificuldades
I
Grande demanda computacional
I
Dificuldade na relação acurácia/complexidade das soluções
Heder S. Bernardino
Evolução Gramatical (49)
Inferência de Modelos
Inferência de Modelos
I
Grande demanda computacional
Heder S. Bernardino
Evolução Gramatical (50)
Inferência de Modelos
Inferência de Modelos
I
Dificuldade na relação acurácia/complexidade das soluções
Heder S. Bernardino
Evolução Gramatical (51)
Inferência de Modelos
Exemplos
Exemplos
Heder S. Bernardino
Evolução Gramatical (52)
Inferência de Modelos
Exemplos
Exemplo 1 – Equação Diferencial
I
Recuperar a equação diferencial
y 0 = f (x , y) = −6y + 6
a partir das observações (xi , yi ), i = 1, . . . , m
I
xi são pontos igualmente espaçados no intervalo [0; 10]
I
yi obtidos da expressão exata do sinal
yi = y(xi ) = 1 + e −6xi
I
A solução candidata f (x , y) é integrada via Runge-Kutta de quarta
ordem com passo h = 0.1
I
A qualidade de f (x , y) é medida pela discrepância entre o sinal
observado e o obtido pela integração
Heder S. Bernardino
Evolução Gramatical (53)
Inferência de Modelos
Exemplos
Exemplo 1 – Equação Diferencial
100
Fronteira de Pareto
1
log(erro)
0.01
0.0001
1e-06
1
1e-08
1e-10
2
3
4
5
6
7
profundidade
Heder S. Bernardino
Evolução Gramatical (54)
Inferência de Modelos
Exemplos
Exemplo 2 – Reação Quı́mica
I
Inferir um modelo para a seguinte reação quı́mica
HCHO + (NH2 )2 CO → H2 N · CO · NH · CH2 OH
H2 N · CO · NH · CH2 OH + (NH2 )2 CO → (NH2 CONH )2 CH2
I
Por reações consecutivas, as concentrações de HCHO (y1 ),
H2 N · CO · NH · CH2 OH (y2 ) e (NH2 CONH )2 CH2 (y3 ) satisfazem
o sistema de EDOs
 0
 y1 = −1.4y1
y 0 = 1.4y1 − 4.2y2
 20
y3 = 4.2y2
I
101 pares de dados com x ∈ [0, 1]
condição inicial dada por y(0) = (0.1, 0, 0)
I
Heder S. Bernardino
Evolução Gramatical (55)
Inferência de Modelos
Exemplos
Exemplo 2 – Reação Quı́mica
0.1
y1
y2
y3
approximated y1
approximated y2
approximated y3
0.08
yi(x)
0.06
0.04
0.02
0
0
0.2
0.4
0.6
0.8
1
1.2
x
Heder S. Bernardino
Evolução Gramatical (56)
Inferência de Modelos
Exemplos
Exemplo 3 – Deformações em Dutos
I
Inferir uma relação funcional entre os dados de entrada e a
deformação longitudinal de membrana em amassamentos
I
Base de dados com 554 análises usando método de elementos finitos
I
I
I
I
I
I
I
I
diâmetro externo (D)
espessura da parede (t)
diâmetro do indentador (Φ)
profundidade da indentação (d )
tamanho da deformação em 0.5 d (l )
tamanho da deformação em 2% D (L)
tensão circunferencial (σθ )
tensão de escoamento do material (σy )
Heder S. Bernardino
Evolução Gramatical (57)
Inferência de Modelos
Exemplos
Exemplo 3 – Deformações em Dutos
I
Com base em análises prévias realizadas por especialistas as seguintes
variáveis adimensionais foram definidas
I
I
I
I
I
I
I
I
x1
x2
x3
x4
x5
x6
x7
x8
= t/D
= σθ /σy
= d /D
= Φ/D
= ν, where ν is the Poisson coefficient
= ET /E , where E is the Young modulus and ET is a tangent modulus
= d /l
= d /L
Heder S. Bernardino
Evolução Gramatical (58)
Inferência de Modelos
Exemplos
Exemplo 3 – Deformações em Dutos
I
Com base em análises prévias realizadas por especialistas as seguintes
variáveis adimensionais foram definidas
I
I
I
I
I
I
I
I
x1
x2
x3
x4
x5
x6
x7
x8
= t/D
= σθ /σy
= d /D
= Φ/D
= ν, where ν is the Poisson coefficient
= ET /E , where E is the Young modulus and ET is a tangent modulus
= d /l
= d /L
Heder S. Bernardino
Evolução Gramatical (59)
Inferência de Modelos
Exemplos
Exemplo 3 – Deformações em Dutos
Resultados obtidos utilizando gramática que restrigia o espaço de soluções
(“cg+s+ls+trad”)
Heder S. Bernardino
Evolução Gramatical (60)
Conclusões
Conclusões
Heder S. Bernardino
Evolução Gramatical (61)
Conclusões
Conclusões
I
Evolução Gramatical
I
A implementação é simples
I
Algoritmo Genético
I
Gramática formal
I
Evolui estruturas complexas
I
Programação Genética
I
Otimização Multiobjetivo
I
Computação Paralela
Heder S. Bernardino
Evolução Gramatical (62)
Conclusões
Conclusões
I
Segundo [Shea, 2012]
I
I
As pesquisas em inteligência artificial focavam em como as máquinas
poderiam realizar as tarefas autonomamente
Afirma que, frequentemente, a intervenção do especialista é importante
Heder S. Bernardino
Evolução Gramatical (63)
Conclusões
Conclusões
I
Desafios da automatização da descoberta cientı́fica [Langley, 2002]
I
A saı́da dos sistemas de descobrimento devem ser facilmente
comunicáveis com o domı́nio dos especialistas
I
Sistemas de descobrimento devem utilizar conhecimento prévio para
restringir sua busca
I
Métodos computacionais para descoberta cientı́fica devem ser capazes
de inferir conhecimento de conjuntos de dados pequenos
I
Sistemas de descobrimento devem produzir modelos que se movem
através de estruturas complexas
I
Sistemas computacionais de descobrimento devem suportar interação
com o especialista
I
I
[Džeroski et al., 2007] espera que este torne-se um tópico mais ativo
A Evolução Gramatical (e outras técnicas de Programação Genética)
tem se mostrado adequadas para esse tipo de aplicação
Heder S. Bernardino
Evolução Gramatical (64)
Conclusões
Conclusões
I
Desafios da automatização da descoberta cientı́fica [Langley, 2002]
I
A saı́da dos sistemas de descobrimento devem ser facilmente
comunicáveis com o domı́nio dos especialistas
I
Sistemas de descobrimento devem utilizar conhecimento prévio para
restringir sua busca
I
Métodos computacionais para descoberta cientı́fica devem ser capazes
de inferir conhecimento de conjuntos de dados pequenos
I
Sistemas de descobrimento devem produzir modelos que se movem
através de estruturas complexas
I
Sistemas computacionais de descobrimento devem suportar interação
com o especialista
I
I
[Džeroski et al., 2007] espera que este torne-se um tópico mais ativo
A Evolução Gramatical (e outras técnicas de Programação Genética)
tem se mostrado adequadas para esse tipo de aplicação
Heder S. Bernardino
Evolução Gramatical (64)
Conclusões
Obrigado!
Evolução Gramatical
Heder S. Bernardino
Heder S. Bernardino
Evolução Gramatical
Conclusões
Perguntas?
Heder S. Bernardino
[email protected]
Heder S. Bernardino
Evolução Gramatical
Conclusões
Bernardino, H. S. and Barbosa, H. J. (2010a).
Grammar-based immune programming.
Natural Computing, pages 209–241.
Bernardino, H. S. and Barbosa, H. J. (2011).
Inferring systems of ordinary differential equations via grammar-based
immune programming.
In Liò, P., Nicosia, G., and Stibor, T., editors, Artificial Immune
Systems, volume 6825 of Lecture Notes in Computer Science, pages
198–211. Springer Berlin / Heidelberg.
Bernardino, H. S. and Barbosa, H. J. C. (2009).
Solving constrained optimization problems with opt-ainet.
Bernardino, H. S. and Barbosa, H. J. C. (2010b).
Grammar-based immune programming.
Natural Computing.
Chomsky, N. (2002).
Syntactic Structures.
Heder S. Bernardino
Evolução Gramatical
Conclusões
Mouton de Gruyter.
Darwin, C. (1859).
On the Origin of Species by Means of Natural Selection, or the
Preservation of Favoured Races in the Struggle for Life.
Džeroski, S., Langley, P., and Todorovski, L. (2007).
Computational Discovery of Scientific Knowledge, chapter
Computational Discovery of Scientific Knowledge, pages 1–14.
Springer.
Harrison, M. (1978).
Introduction to Formal Language Theory.
Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA.
Langley, P. (2002).
Lessons for the computational discovery of scientific knowledge.
In Proceedings of First International Workshop on Data Mining
Lessons Learned, pages 9–12.
O’Neill, M. and Ryan, C. (2003).
Heder S. Bernardino
Evolução Gramatical
Conclusões
Grammatical Evolution: Evolutionary Automatic Programming in an
Arbitrary Language.
Kluwer Academic Publishers.
Schmidt, M. and Lipson, H. (2009).
Distilling free-form natural laws from experimental data.
Science, pages 81–85.
Shea, K. (2012).
Opening our worlds.
Artificial Intelligence for Engineering Design, Analysis and
Manufacturing, 26(1):17–17.
Heder S. Bernardino
Evolução Gramatical

Documentos relacionados