Académique Documents
Professionnel Documents
Culture Documents
ChristianJosDevia1
christiandevia@hotmail.com
JosMarcioLuna2
marciol@terra.com.co
AlvaroBetancourtMIng,MSc3
abetancourt@udistrital.edu.co
RESUMEN
Enelpresentearticulosedescribeeldesarrollodeunaplataformaexperimental
en hardware evolutivo (Evolvable Hardware, EHW) dentro del proyecto DEEP
(DevelopmentofanExperimentalEvolvableHardwarePlatform).
Seexponeelanlisisdelosprimerosresultadosobtenidosdurantelaevaluacin
de la plataforma a travs de la implementacin de un divisor de frecuencias
evolutivo.
PalabrasClaves
HardwareEvolutivo,AlgoritmosGenticos,DivisordeFrecuencia,FPGA.
1Estudiante.UniversidadDistrital.FacultaddeIngeniera.MiembroGrupoLAMIC
2Estudiante.UniversidadDistrital.FacultaddeIngeniera.MiembroGrupoLAMIC
3Profesor.UniversidadDistrital.FacultaddeIngeniera.DirectorGrupoLAMIC
ABSTRACT
Thisabstractisaimedatdescribingthedevelopmentofanexperimentalplatform
within Evolvable Hardware (EHW) along the DEEP (Development of an
Experimental Evolvable Hardware Platform) project, as well as presenting the
analysis of the outcomes reached from the platform evaluation through the
implementationofanevolvablefrequencydivider.
KeyWords
EvolvableHardware,GeneticAlgorithms,FrequencyDivider,FPGA.
I.INTRODUCCIN
Enlosltimosaos,lasestrategiasbioinspiradashantomadofuerzaenelcampo
de la ingeniera. Es as como surgen ramas de estudio como la computacin
evolutiva[1,2,3,4]queimitaoperadoresnaturalescomolaseleccin,elcruceyla
mutacindecriaturaspararesolvercomplejosproblemasmultivariablesdeforma
heurstica. Esto, complementado con los ltimos desarrollos en dispositivos
lgicosprogramablescomolasFPGAs(FieldProgrammableGateArray)handado
lugaraunanovedosadisciplinallamadaHardwareEvolutivo(EvolvableHardware,
EHW) [5,6,7]. El EHW es un acercamiento moderno al diseo de circuitos
complejosyalaconstruccindehardwareadaptativo.Variasdelasdimensiones
delEHWestnenplenoprocesodeexploracin.
Elpresenteartculoseorganizacomosigue:Laseccin2,ilustralametodologa
utilizadaeneldesarrollodelaplataformaexperimentalenEHW,sedescribenlos
dos procesos paralelos de diseo que implican un desarrollo de una celda
evolutivasobreFPGAyunalibreradeinstrumentosvirtualesqueimplementanlos
algoritmosgenticos.Enlaseccin3seexponeelmodocomodichosprocesos
operanconjuntamente.Enlaseccin4seevalaeldesempeodelaplataforma
frentealproblemaconcretodeundivisordefrecuenciasevolutivo.Sedesarrollan
unaseriedeejemploscuyafinalidadesexponerlaincidenciadelosoperadores
genticossobrelaarquitecturahardwareadoptadaenlaplataforma.Finalmente
enlaseccin5sepresentanlasconclusiones.
II.METODOLOGA
ParallevaracaboelexperimentosobrelaFPGA,sehizonecesarioeldiseode
unaplataformaexperimentalenEHW.Dichodiseosecomponededospartes
fundamentales:
Desarrollodeunalibreradeinstrumentosvirtuales(VirtualInstruments,VI)
orientadaaldiseo,ejecucinyevaluacindealgoritmosgenticos(AG)
bajoellenguajedeprogramacingrficaLabview.
DiseodeunamatrizdeceldasevolutivasadecuadaparalaFPGA,que
faciliteelmonitoreodelaevolucinylasconexionesfsicasalinteriordel
dispositivo.
2.1.LibreradeInstrumentosVirtualesparaAlgoritmosGenticos:
cadenas[4].Asimismo,losoperadoresdeseleccin(porruletaypormuestreo
estocstico), cruce (con puntos de cruce variable) y mutacin (uniforme y no
uniforme)[1,2,4],poseenmuchasprestaciones,detalformaqueelusuarioaccede
adiversasopcionesparadisearelAGquemejorseacomodeasusnecesidades.
2.2.DiseodeunaMatrizdeCeldasEvolutivassobreFPGA.
Laarquitecturadeceldasedisedetalformaquemedianteungrannmerode
operacioneslgicas,elprocesoevolutivosellevaacabodeformafcilalinterior
deldispositivohardware.Cadaceldacuentacontresunidadeslgicas,unflipflop
tipo T y un conjunto de multiplexores. Una celda lgica puede realizar 16
operacionesdiferentes,determinadasporlapalabradecontrolprovenientedela
RAM.Parasuprogramacinserequieren16bits,locualllevaaqueelcircuito
evolutivo quede determinado por una palabra de programacin de 64 bits. La
figura2ilustraeldiagramadelaceldapropuesta.
Figura1.
Diagramaesquemticodelcircuitoevolutivo.
Latabla1muestralasoperacionesdelaunidadlgica:
Tabla1.
TabladeoperacionesdelaUnidadLgica.
Lafigura3ilustralasconexionesinternasfinalesdentrodelaFPGA.
Figura2.
Diagramaesquemticodeunacelda.
Figura3.
2.3.FuncionamientoConjuntodelaPlataforma
Losmdulosdehardwareysoftwaredescritosanteriormente,trabajanenforma
conjunta permitiendo as la evolucin intrnseca de hardware mediante la
utilizacindeunAG.
ElAGmanejaunapoblacinfijadeindividuosde64bits,codificadosencadenas
hexadecimales,loscuales,sondescargadosalaFPGAporpuertoparalelo[11],
paraelloseimplementunprotocolodenivelfsicoquegarantizalasincronaen
latransferenciadedatosenlasdosdireccionesdelpuerto.Deestaforma,cada
individuomodificaelcomportamientodelcircuitoevolutivoproduciendounasalida
especfica,lacualesrealimentadahaciaelcomputadorparasuposterioranlisis
enelAG.
DependiendodelproblemaplanteadosediseaunVIdeaptitud,cuyafuncines
tomarlasealdesalidadelaFPGAydeterminarquetanaptoresultaelindividuo
deacuerdoconlasolucinqueaportesufenotipo.Esdecir,dentrodelaFPGAse
decodificadelgenotipodelindividuoensufenotipo.Estedatodeaptitud,permite
escogerdemaneraprobabilstica,aquindividuosdurantecadageneracinle
sernaplicadoslosdiversosoperadoresevolutivosygenticos.
III.IMPLEMENTACINDEUNDIVISORDEFRECUENCIASEVOLUTIVO
arquitecturasdigitalesqueresultenensealesdesalidaconfrecuenciasmltiplos
delaoriginal.Dichosmltiplos,portratarsedeundivisordefrecuencias,deben
encontrarseenunrangocomprendidoentre0y1.
Paratodoslosexperimentosllevadosacabolasealdeentradaconsisteenun
trendepulsosa60HzgeneradodentrodelaFPGA.
3.1.DivisordeFrecuenciasadelafrecuenciadeentrada
Paraestecasosebuscaobtenerlaarquitecturanecesariaparaoriginarunaseal
de30Hzapartirdelasealde60Hzdeentradaalsistema.Dadoqueelespacio
solucindelproblemaenestecasoesgrande,sepuedeconcluirquelarespuesta
deseadapuededarseatravsdevariosindividuos,porloqueelproblemapuede
tenermuchassoluciones.
Figura4
Curvadeerror,Evolucindivisordefrecuenciasconfactor1/2.
Losparmetros(Factor(defrecuencia)=0.5,Poblacin(Nmerodeindividuos)=
5, Mutacin (probabilidad) = 100%, Cruce (probabilidad) = 25%) del algoritmo
genticoylosresultadosdelaevolucinsemuestranenlafigura4.
Deestosresultadosseobservaqueapartirdelageneracin20,lafuncinde
errordelmejorindividuoalcanzaelmnimo,conduciendoalrestodelapoblacin
hacialaoptimizacindesusvaloresdeaptitud(queenestecasoesinversamente
proporcionalalafuncinerror),comolodemuestralacurvaevolutivapromediode
lapoblacinylacurvadelindividuomenosapto.
Paraestapruebaelporcentajedemutacindisminuyeconformeseavanzaenla
evolucin.Aestetipodemutacinseleconocecomomutacinnouniformeyse
siguedelaecuacin:
(1)donde:
Porcentajedemutacinenlageneracint
Porcentajedemutacininicial
Generacinencurso
NmerototaldeGeneracionesaevolucionar
Factordelinealidaddelafuncin(paraesteejemploparticularsuvaloresb=1)
Obsrveselarpidaconvergenciadeesteprimerexperimento.Estosedebe,a
que como se haba afirmado antes, el espacio solucin es amplio, es decir,
muchos individuos pueden llevar a la solucin de 0,5 veces la frecuencia de
entrada.
Lasecuencianumricahexadecimalqueconformaelgenotipodelmejorindividuo,
lasealobtenidayelcircuitoequivalenteinternoevolucionadoseilustranenla
figura5:
Genotipo=384C871E51CB4D46h
(a)
(b)
Figura5
a)Sealobtenida.b)Circuitoequivalentedeldivisordefrecuenciasconfactor1/2
Comopuedenotarse,elcircuitonoesptimo,puesparaestaspruebaslafuncin
deaptitudesindependientedelosrecursosutilizadosdentrodelaFPGA
PuedeapreciarsequelapresenciadelflipfloptipoTconsuentradaTenaltoyla
seal de 60Hz a la entrada de reloj, es la base principal para la divisin de
frecuenciasalamitad.
3.2.DivisordeFrecuenciasadelafrecuenciadeentrada
yreproduccin(dejandodeladoeloperadorcruce),paraexaminarlaconductadel
procesoevolutivo.Losvaloresdelosparmetrosdelalgoritmosemuestranenla
figura6,conelcomportamientotemporaldelmismo:
Figura6
Curvadeerror,evolucindivisordefrecuenciasconfactor1/4
Obsrvesecomolaevolucintardacercade235generacionesenconvergera
una respuesta cuando la poblacin es pequea (5 individuos), puesto que los
individuoscarecendevariedad.
Sepuedenotarunruidolatentealolargodelacurvadelafuncindeerror
promedio, debido a la ausencia de cruce, puesto que el cruce contribuye a la
explotacindesoluciones[4].Esto,probablementepuederesultarperjudicialpara
laconvergenciadelalgoritmoyaqueelmejorindividuoestpropensoamutarde
talformaquesepierdalasolucinquebrindasugenotipo.
Lasecuencianumricahexadecimalqueconformaelgenotipodelmejorindividuo,
lasealobtenidayelcircuitoequivalenteinternoevolucionadoseilustranenla
figura7:
Genotipo=CFC8DDE955600FD5h
Figura7
a)Sealobtenida.b)Circuitoequivalentedeldivisordefrecuenciasconfactor1/4
Figura8
Curvadeerror,evolucindivisordefrecuenciasconfactor1/4.
Figura9
a)Sealobtenida.b)Circuitoequivalentedeldivisordefrecuenciasconfactor1/4
Debenotarseenelfenotipoqueelciclotildelasealdesalidaenestecasono
correspondealciclotildelasealdeentrada.Estoocurreporqueelalgoritmo
genticonicamentetrabajaenfuncindelafrecuenciarequeridaenlasealde
salida, pero no tiene en cuenta el ciclo til de la misma con respecto a la de
entrada.Sinembargo,aunqueelprocedimientodemutacindelejemploanterior
hayadadoconunasolucinconunciclotildel50%,queseasemejamsala
sealdeentrada,sedebetenerencuentaquelaevolucinconelciclotildel
25%fuemuchomsestableyvelozensuconvergencia.
Tambinpuedeobservarselacomplejidaddelcircuitoobtenidoencomparacin
conelcasoanterior,puestoquerecursostalescomo,elnmerodeflipflopsy
compuertaslgicasesmuchomayorenestecaso.
3.3.DivisordeFrecuenciasa1/3delafrecuenciadeentrada
Enuncircuitodigitalsecuencialcomoeselcasodelasceldaslgicasdiseadas,
seesperaraintuitivamentequelasfrecuenciasdelassealesdesalidafuesenla
mitadparaelcaso,enquelasealdeentradaseconectaraalaentradadereloj
deunflipfloptipoTconsuentradaTenalto.Asimismo,seesperaraunacuarta
partedelafrecuenciaencasodequelasealdesalidadeunprimerflipflopse
conectara al reloj de otro flipflop tipo T con su entrada T en alto. As
sucesivamentesiseconectannflipflopsencascadasetendraunafraccinde
frecuenciafinalde.Lametaenesteejemploesevolucionarconlaarquitecturade
celdasplanteadaaundivisordefrecuenciasconfactor1/3.Eldesempeodela
evolucinysusparmetrossemuestranenlafigura10.
Figura10
Curvadeerror,evolucindivisordefrecuenciasconfactor1/3.
uniformeconb=2yconunaprobabilidaddecrucedel25%,laplataformaresuelve
elproblema.
Lasecuencianumricahexadecimalqueconformaelgenotipodelmejorindividuo,
lasealobtenidayelcircuitoequivalenteinternoevolucionadoseilustranenla
figura11:
Genotipo=1C5C9E0D319CC730h
Figura11
a)Sealobtenida.b)Circuitoequivalentedeldivisordefrecuenciasconfactor1/3
Ntesequenuevamenteelciclotildelasealdesalida(66%)esdiferentedelde
lasealdeentrada(50%),puestoquecomosehabaexplicado, lafuncinde
aptitudnodependedeestefactor.
IV.DISCUSINYCONCLUSIONES
lgicasoregistros.
Valelapenaresaltarqueenlosexperimentosdehardware,labsquedaaleatoria
puede conducir a individuos muy aptos, que aporten soluciones apropiadas al
problema planteado, pero solo en el caso en que el espacio solucin sea lo
suficientementegrandeparaconvergerynoperderdevistalasolucin.Inclusive,
sepuedenobtenermuybuenosresultadosproponiendoprobabilidadesdecruce
nulasenelAG.
REFERENCIASBIBLIOGRAFICAS
[1]MARTINEZJos,ROJASSergio.IntroduccinalaInformticaEvolutiva.Ed
UniversidadNacionaldeColombia.1999.186p
controllersusinganevolutionaryalgorithm.