EVOLVABLE HARDWARE
Aplicação de Computação Evolucionária no Projeto, Otimização e Síntese de Sistemas
Hardware Evolucionário
Sumário
● O que é Evolvable Hardware? ● Taxonomia
● Exemplos de Aplicação;
➪Projeto de Sistemas Digitais; ➪Projeto de Sistemas Analógicos;
➪Projeto de Circuitos Integrados CMOS; ➪Robótica;
➪Engenharia Civil
O Que é Evolvable Hardware?
Área que investiga a aplicação de Computação Evolucionária no projeto, otimização ou
síntese de sistemas de hardware: ■ circuitos eletrônicos;
■ robô;
■ controladores;
■ outras estruturas (civil, mecânica, etc);
“Evoluir ao invés de projetar”
Evolvable Hardware
■ Projeto de Sistemas
– determinação de valores e/ou tipos dos componentes empregados no projeto de um sistema;
■ Otimização
– determinação dos valores ótimos (semi-ótimos) dos valores ou dimensões dos componentes de um sistema;
■ Síntese
– identificação da estrutura/arquitetura de um sistema e a determinação dos componentes (tipos e valores).
Projeto e Síntese
avaliação Sistema Evolucionário Simulador componentes objetivos estrutura Hardware SintetizadoCircuitos Eletrônicos
Reconfiguráveis
FPGA (Field Programmable Gate Arrays)
•Palavras binárias programam a RAM do FPGA •Genótipo ==> memória do dispositivo
•Fenótipo ==> circuito eletrônico
Dispositivos reconfiguráveis deram origem ao uso de Algoritmos Genéticos para a evolução de circuitos.
FPGA
■ possui alta capacidade lógica ■ alta flexibilidade
■ utiliza SRAM para programar conecções
■ está transformando o projeto de circuitos digitais ■ requer ferramentas de software para projetos
Consiste de um array de blocos lógicos dissociados e de recursos de interconecção configuráveis pelo usuário.
Surgimento de EHW baseou-se na semelhança dos cromossomos de GAs com a palavra binária
que configura um circuito programável
GA Seleção, Crossover, Mutação ... Genótipo - (0,1,1,0,1,1...) Avaliação CI programável
TAXONOMIA
EHW
Processo de Avaliação do Hardware Tipo de Sistema Evolucionário Área de Aplicação Plataforma Evolutiva Intrínsico Extrínsico GA Tradicional ProgramaçãoGenética ProgramaçãoEvolucionária
Circuitos em geral Robótica VLSI Circuitos Programáveis Hardware Dedicado Simuladores Civil, Mecânica, Química, etc
Exemplos de Aplicações em
Eeletrônica
●Lógica Combinacional (Digital);
● Lógica Sequencial (Digital);
● Lógica de Transistores (Digital/Analog); ● VLSI Analógico(Otimização);
● Filtros Passivos (Analógico); ● Amplificadores (Analógico);
● Circuitos baseados em capacitores
chaveados
Modelagem de EHW
• Representação: circuito ➨➨➨➨ cromossoma • Decodificação: cromossoma ➨➨➨ circuito➨ • Avaliação: simulação/teste do circuito • Operadores Genéticos:crossover, mutação
Circuitos Combinacionais:
soma de produtos
F = A . B . C + A . C + A . B . C . D _ _ _Circuitos Analógicos
. . . . . . Gene GeneRepresentação por cadeia linear de genes
... 1 2 3 4 5 1 2 3 NPN 2 4 C 10uF 3 5 R 10k ... .
Lógica Combinacional
Resultados
MUX6 - Cerca de 1 minuto em uma Sparc Ultra 2, 90% de execuções com sucesso;
MUX11 - 5 sistemas evolutivos em paralelo.
COMP8 - Cerca de 20 minutos em uma SPARC Classic, 100% de execuções com sucesso.
Representação a nível de portas (Thompson, 96)
➪Cada Gene = Conexões + Natureza da porta ➪Mapeamento eficiente em FPGAs;
➪Sem restrições de projetos convencionais ➪Evolução de novos circuitos;
... 1 2 3 4 5 6 7 8 10 Gene = 1 2 OR
Main Store MAR MBR IR PC ALU D0 Cmar Cmbr Cir Cpc Cdo Calu Read Address InputWrite Gmsr Gmsw Gmbr Embr Gir Eir Gpc Epc Gdo Edo Galu Ealu R W Barramento
Evolução de Random Logic Control Unit
Projeto de Sistemas Analógicos
■ Síntese automática de filtros analógicos; ■ Filtros analógicos passivos: constituídos por
resistores, capacitores e indutores discretos;
■ Projeto automático consiste em uma busca por
Características Básicas
■ Especificação e avaliação do sistema é feita no
domínio da frequência;
■ Algoritmo busca por melhor projeto no espaço,
contendo topologias organizadas em malhas;
■ Cada Gene é uma malha do circuito.
Representação
... ... ... Mesh N Mesh 1 Mesh 2Cada gene representa uma malha, que é composta por dois
Gene representante da Malha 1 = (R, ValR, C, ValC)
ValR
Operadores
● Mutação pode alterar natureza ou valor do
componente;
● Aumento de tamanho de cromossomo
aumenta o cromossomo de 1 gene, isto é, acrescenta uma malha ao circuito;
● Crossover ainda é o operador principal.
Avaliação
■ Avaliação é realizada no domínio da
frequência de interesse do projeto;
■ Fórmula Geral: Fitness f i i i Total
A T O
i =∑
(| − |)A aptidão é determinada por um somatório ao longo das frequências de
interesse; (Ti - Oi) é o desvio entre a resposta obtida Oie a desejada Ti;
Aideve ser definido de modo a penalizar mais fortemente erros em bandas
Exemplo de Aplicação
● Projeto de um filtro Passa-Faixa, com banda
passante entre 2000 Hz e 3000 Hz;
● Apenas valores de resistores, indutores e
capacitores fabricados são usados pelo GA;
● Valores dos componentes abrangem
diversas ordens de grandeza (de mOhms à MOhms, de nF à mF, de nH à mH). Filtro Evoluído: 390 4.7 0.47 0.39 10 22 0.12 33 220 0.33 Cinco malhas: C- R, L-C, L-R, L-C e C-R.
00.20.40.60.811.2 Amplitud 0 1000 2000 3000 4000 5000 6000 7000 8000 0 0.2 0.4 0.6 0.8 1 1.2 Frequência (Hertz) Am plit ude (Volt s )
Resposta em Frequência do Filtro Evoluído
Projetos CMOS Analógicos
● CMOS - Complementary Metal-Oxide Silicon; ● Usar evolução para projetar circuitos em um
nível ainda mais baixo, o de transistores;
● Comportamento de circuitos analógicos é
fortemente determinado pelo comprimento e largura de transistores
➪Região de Operação (Inversão fraca e forte) determina
Transistor NMOS a Nível de
Camadas
Polisilício Difusão N W L➨ Relação W/L determina comportamento do transistor
G
D
S
Exemplo de Aplicação: Amplificador Operacional Classe A M3 M4 M1 M2 M8 M5 M7 M6 Rz Cc Vin+ Vdd Ibias I5 I7
Representação
● Cada cromossomo deve codificar as
dimensões dos oito transistores, W / L, a corrente de polarização e o valor do
capacitor de compensação;
Avaliação
● Diversos requisitos podem ser escolhidos
para avaliar o desempenho do circuito: ➨ Ganho / Banda-Passante;
➨ Slew-Rate; ➨ Consumo;
Otimização de amplificadores operacionais para baixo consumo : OTA simples, OTA Cascode e amplificador Operacional Classe A
Resultados Ganho GBW Área Margem de Fase Consumo Vbias Slew-Rate
Classe A OTA OTA Cascod. 141 dB 900 kHz 6218 um2 55o 10,54 uW 0,25V 340 mV/us 79 dB 90 kHz 10085um2 45o 2,45 uW 0,45V 46,7mV/us 100 dB 210 kHz 16.920 um2 60o 33,8 uW 0,25V 200 mV/us
Robótica
● Evolução de Hardware de Controle de
Robôs Móveis e Autônomos;
● Robô é um sistema sensores + motores que
navega em uma arena com obstáculos e deve executar uma determinada função, como pegar objetos, locomover-se
Exemplo Típico de um Robô Móvel e Autônomo Motores Sensores Robô Obstáculos Arena
Sistema de Controle Típico
Controlador
Sistemas de Controle que podem
ser evoluídos:
● Controle implementado por portas lógicas,
um caso clássico de aplicação de EHW;
● Controle implementado por máquinas de
estado;
● Controle implementado por Redes Neurais; ● Otimização de comportamento (mínimo de
colisões, destino final etc).
Exemplo de Controlador Baseado em
Portas Lógicas
Motor (0 - Desligado, 1 - Ligado) Sensor 1 Sensor 2 Sensor 3 Sensor 4Projeto de Ligações de Estruturas
Metálicas (civil)
■ Ligações levam a inúmeros
detalhes e restrições
Objetivo
Utilização de computação evolucionária para a determinação dos diversos parâmetros de
uma ligação, através do método das componentes.
Componentes de uma Ligação
■ painel da alma da coluna ao cortante; ■ alma da coluna à compressão;
■ mesa e alma da viga à compressão; ■ mesa da coluna ao momento;
■ alma da coluna à tração;
■ chapa de extremidade ao momento; ■ alma da viga à tração;
Componentes de uma Ligação
■ aba da cantoneira parafusada ao momento; ■ chapa ao esmagamento;
■ parafuso à tração; ■ parafuso ao corte;
■ chapa à tração ou compressão.
Exemplo Adotado
Etapa 1
■ Variação do diâmetro dos
parafusos limites mínimos e máximos
■ Distâncias ajustadas pelo valor
limite
■ População de 100 indivíduos ■ Taxa de crossover: 0,70 ■ Taxa de mutação: 0,10
Etapa 2
■ Variação do diâmetro dos
parafusos e dos espaçamentos verticais ■ Restrições de distâncias mínimas e máximas ■ População de 500 indivíduos ■ Taxa de crossover: 0,70 ■ Taxa de mutação: 0,10
Etapa 3
■ Variação do diâmetro dos
parafusos, espaçamentos verticais e horizontais ■ Restrições de distâncias mínimas e máximas ■ População de 2000 indivíduos ■ Taxa de crossover: 0,70 ■ Taxa de mutação: 0,10
Resultados
■ Resultados altamente satisfatórios
■ Existência de várias configurações que
levam a um mesmo valor de momento fletor
■ Aperfeiçoamento: inclusão de um novo
critério custo
■ Aptidão calculada a partir do fator momento
/ custo
Futuro da Área
● Projetos de sistemas eletrônicos mais complexos,
como aqueles destinados ao reconhecimento de padrões (arquitetura não conhecida);
● Evolução em plataformas que reproduzam com maior fidelidade as condições das aplicações (placas reconfiguráveis);
● Evolução de Sistemas de Hardware
auto-reconfiguráveis e tolerante à falhas.
● Aplicações em outras áreas da engenharia, física etc