Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes...

77
Introducción a los Algoritmos Evolutivos y de Inteligencia Colectiva Dr. Efrén Mezura-Montes [email protected] http://www.uv.mx/personal/emezura SNAIC-ENAIC 04 de septiembre de 2018 CA: Investigación y Aplicaciones de la Inteligencia Artificial Centro de Investigación en Inteligencia Artificial Universidad Veracruzana 1

Transcript of Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes...

Page 1: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

IntroducciónalosAlgoritmosEvolutivosydeInteligencia

Colectiva

Dr. Efrén Mezura-Montes [email protected]

http://www.uv.mx/personal/emezura SNAIC-ENAIC

04 de septiembre de 2018

CA: Investigación y Aplicaciones de la Inteligencia Artificial

CentrodeInvestigaciónenInteligenciaArtificialUniversidadVeracruzana

1

Page 2: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

IntroducciónalCI

•  Eléxitodelainteligenciaartificial(IA)sehacuestionado

•  ¿LapruebadeTuringrealmenteessuficienteparaconsideraraunacomputadoracomo“inteligente”?

•  La“pruebadelcuartochino”pareceestablecercomoimposiblequeunacomputadorasea“inteligente”

•  LastécnicasdeIAsuelentrabajarbajounenfoque“top-down”

2

Page 3: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿QuéesentonceselCómputointeligente?

•  En2004,laIEEENeuralNetworkSocietycambiósunombreporIEEEComputationalIntelligenceSociety

•  Inicialmente,elCómputoInteligente(CI)sedefiníacomolacombinacióndelalógicadifusa,redesneuronalesyalgoritmosgenéticos

3

Page 4: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿QuéesentonceselCómputointeligente?

•  Unadefiniciónmásampliaeslasiguiente:

– “Elestudiodemecanismosadaptativosparagenerarofacilitarelcomportamientointeligenteenambientescomplejos,inciertosycambiantes”.

•  ElCIseaplicatradicionalmentedeforma“bottom-up”.

4

Page 5: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿QuéesentonceselCómputointeligente?

•  LosparadigmasdelCIson:– Redesneuronales– Algoritmosevolutivos–  Inteligenciacolectiva– Sistemasinmunesartificiales– Sistemasdifusos.

•  Sialgrupodeparadigmasseleagreganlosmétodosprobabilísticos,aláreaseleconocecomo“Cómputosuave”.

5

Page 6: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

ParadigmasdelCI

6

Page 7: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Redesneuronales(RNs)

•  LasRNsestáninspiradasenelcerebrobiológico

•  Elcerebrobiológicoesunsistemacomplejo,nolinealyparalelo.

•  Launidaddeprocesamientoeslaneurona•  Semanejandiferentestiposdeaprendizajeyarquitecturasderedesneuronales

•  Lasaplicacionesprincipalessecentranenelreconocimientodepatrones

7

Page 8: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Algoritmosevolutivos(AEs)

•  LosAEsemulanlaevolucióndelasespeciesylasupervivenciadelmásaptoenalgoritmosdebúsquedaenespacioscomplejos

•  Existenvariosparadigmasquesediferencianporlaformaderepresentarsoluciones,susoperadoresymecanismosdeselecciónyreemplazo

•  Lasaplicacionesprincipalessecentranenproblemasdeoptimización

8

Page 9: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Inteligenciacolectiva(IC)

•  LaICemulacomportamientossocialesdeorganismossencillosdondeemergeciertoniveldeinteligencia

•  Lacomunicaciónentreindividuoseselmecanismoclaveenesteparadigma

•  Lasaplicacionessecentranenproblemasdeoptimización,clasificación,agrupamiento,robótica,entreotros

9

Page 10: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Sistemasinmunesartificiales(SIAs)

•  LosSIAsemulanelaltoniveldeadaptación,paralelismoydistribucióndelsistemainmunenatural

•  Utilizanelaprendizaje,lamemoriaylarecuperaciónasociativa

•  Lasaplicacionessecentranenlaoptimización,elreconocimientoyclasificacióndetareas

10

Page 11: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Sistemasdifusos(SDs)•  LosSDsutilizanlalógicadifusa(unageneralizacióndelalógicabooleana)paradefinirconjuntosquereflejanconmayorcertezalassituacionesdelmundoreal

•  LastareasquerealizalaSDssecentranenelrazonamientoaproximadoyelmodeladodelsentidocomún

•  Lasaplicacionessecentran,principalmente,eneldiseñodecontroladores,peroestaáreaessensibleacombinarseconotrosparadigmasdelCI

11

Page 12: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿Interdisciplinario?

12

Page 13: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Introducción•  Laideadesimularlaevolucióndentrodeunacomputadoranoesnueva

•  Dehecho,derivadasdelamismaidea,sehangeneradodiversasáreasdentrodelacomputación

•  LosAlgoritmosEvolutivos(EAsporsussiglaseninglés)agrupanaaquellosbasadosenfenómenosrelacionadosconlaevolucióndelasespeciesylasupervivenciadelmásapto

•  Acontinuaciónsepresentaunaperspectivahistórica,escritaporDeJong(2006)

13

Page 14: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Losprimerosaños•  En1930,Wrightsugiriólautilidaddevisualizarunsistemaevolutivoqueexploralospicosdefuncionesmultimodalesmedianteclustersalrededordeellos(visiónhacialaoptimización)

•  Friedman(1956)evolucionócircuitosdecontrolpararobots(visiónhaciaelmecanismodecontrolderetroalimentación)

•  Friedberg(1959)propusouna“máquinaqueaprende”yqueevolucionaconjuntosdeinstruccionesdelenguajedemáquina(visiónhacialaprogramaciónautomática)

14

Page 15: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Loscatalíticos1960’s

•  Tresgruposdefinieronlaformadeestecampoemergente:

•  EnlaU.T.deBerlín,RechenbergySchwefelformularonideassobrecómounprocesoevolutivopuedeusarsepararesolverproblemasnuméricosdeoptimizacióncomplejos.Deestasideassurgeun

paradigmaconocidocomo“EstrategiasEvolutivas”

15

Page 16: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Loscatalíticos1960’s

•  EnUCLAFogelvisualizóalaevolucióncomounmedioparaalcanzarlasmetasdelaIA,porloqueevolucionóagentesinteligentesrepresentadoscomomáquinasdeestadofinito.Deellosederivóelparadigmaconocidocomo“ProgramaciónEvolutiva”

16

Page 17: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Loscatalíticos1960’s

•  EnlaU.deMichigan,Hollandvióaunprocesoevolutivocomolaclaveeneldiseñoeimplementacióndesistemasadaptativosrobustos,capacesdelidiarconunambientecambianteeincierto.Remarcólanecesidaddelossistemasdeauto-adaptarsealinteraccionarconelambiente.Susideasoriginaronlos“Planesreproductivos”,mejorconocidoscomoelparadigmadelos“AlgoritmosGenéticos”

17

Page 18: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Loscatalíticos1960’s

•  Estosparadigmas,másquereflejarfielmentelosprocesosevolutivos,sonmodelos“ideales”deevoluciónorientadosalaresolucióndeproblemas

•  Sinembargo,unanálisisformaldesufuncionamientoesaltamentecomplejo(serequieredesimplificarelmodelo)

18

Page 19: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Losexplorativos1970’s

•  Derivadodelaspropuestasdeladécadaprevia,dosaspectosquedaronsinresolver:– Caracterizarlaimplementacióndelosparadigmas– Entendersuaplicabilidad

•  Enestadécadaseavanzóenestosdostemasvía:– Estudiosempíricos– Teoría

19

Page 20: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Losexplorativos1970’s

•  Seestablecenconello,tresEAs:– Programaciónevolutiva– Estrategiasevolutivas– Algoritmosgenéticos

•  Evolutionaryprogramming(EP)seconcentróenmodelosconreproducciónprincipalmenteasexualyreemplazoprobabilístico,siendoparámetroscríticoseltamañodepoblaciónyelporcentajedereproducciónasexual

20

Page 21: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Losexplorativos1970’s

•  Evolutionstrategies(ES)secentraronenlaoptimizaciónnumérica(númerosreales),losmodelosiniciales(1+1)-ESy(1+λ)-ESusaronreproducciónasexualusandounadistribuciónGaussianayreemplazodeterminístico.Sinembargo,loquedistinguealasESeselprocesodeadaptaciónoauto-adaptacióndesusparámetrosrelativosalamutación.

21

Page 22: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Losexplorativos1970’s

•  GeneticAlgorithms(GAs)promovieronalgoritmos“independientesdelaaplicación”,medianteunarepresentacióndecadenasdebits,usointensivodereproducciónsexual,reemplazogeneracionalyselecciónbasadaenaptitud.Los“teoremasdelosesquemas”conformancontribucionesanivelteóricodeldesempeñodelosGAs.

22

Page 23: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Losexplotativos1980’s

•  Delos1970’semergióunacoleccióndeEAscanónicosconampliaaplicabilidadydesempeñoaltamentecompetitivo

•  Enlos1980’sseamplióladiversidaddeaplicacionesysegeneraronvariantesdeEAsespecíficasparaotrosdominios

23

Page 24: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Losexplotativos1980’s•  (μ+λ)-ES,(μ,λ)-ES•  Selecciónproporcional,representacionesalternativasydecepciónenGAs

•  Conocimiento“a-priori”delproblema(P.Ej.Operadoresespeciales)

•  Ademásdelaoptimización,surgendominiosdeaplicacióncomolossistemasclasificadores,redesneuronales,redesdetareas,códigoenLisp

•  EAsparalelos•  Surgenlosprimeroscongresos:ICGA’85,87y89,PPSN’90,FOGA’90

24

Page 25: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Losunificadores1990’s

•  Haciafinalesdelos1980’s,eltrabajodecadaEAsehacíaporseparado

•  Elsurgimientodelosprimeroscongresospermitióeltrabajodecolaboraciónydiferenciación,ademásdelacuñamientodeltérmino“CómputoEvolutivo,EC”ydeliniciodetrabajosdelprimerjournal“EvolutionaryComputation”delMITpress

•  CruzamientodemecanismosentreEAs

25

Page 26: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

ElsigloXXI,expansiónmadura

•  Setienen3journalsdeprestigio:– EvolutionaryComputation–  IEEETransactionsonEvolutionaryComputation– GeneticProgrammingandEvolvableMachines

•  Conferenciasdealtonivel– CEC– GECCO– PPSN– FOGA

26

Page 27: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

ElsigloXXI,expansiónmadura

•  Muchotrabajoporhacer:– Aplicacionesdealtoimpacto– Estudiosteóricos– Ajustedeparámetros– Co-evolución– SinergiasconMachineLearningyAgentSystems– Consolidacióndelárea

27

Page 28: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿PorquéEC?

•  Labúsquedadesolucionadoresdeproblemasestareadelacienciadelacomputación

•  Lossolucionadores“naturales”porexcelenciason:– Elcerebrohumano(quiencreólarueda,ciudades,laguerra,etc.)

– Elprocesoevolutivo(quiencreóelcerebrohumano)

28

Page 29: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿PorquéEC?

•  Porotrolado,serequieredesolucionadoresaplicablesaunaampliagamadeproblemas,sinrequerirgrandescambiosparaproblemasespecíficos,quedevuelvanbuenassolucionesenuntiemporazonable

29

Page 30: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿PorquéEC?

•  Finalmente,sepuedeutilizarlasimulacióndelaevoluciónparagenerarprocesosdifícilesderealizarfísicamente,ademásdequeestetipodesimulacionespuedenayudaraentenderfenómenosnaturales

30

Page 31: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Tiposdeproblemas

•  Optimización–  Consisteenencontrarlaentradaadecuadaparalasalidaqueseespecifique

•  Ejemplo:Diseñoóptimodepiezamecánica

31

Page 32: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Tiposdeproblemas

•  Modelado–  Dadaslasentradasylassalidas,sepretendeencontrarelmodeloqueproporcioneelcomportamientoindicado

•  Ejemplo:Reconocimientodecaracteres

32

Page 33: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Tiposdeproblemas

•  Simulación–  Latareaconsisteenprocesarlassalidascorrespondientesapartirdeunconjuntodeentradasconocidasyunmodeloestablecido

•  Ejemplo:Circuitoelectrónicoparafiltrado

33

Page 34: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Unejemplo

•  Diseñodeunapiezatubular•  Variables

•  Largo(l)•  Diámetro(d)•  Grosor(g)

•  Condiciones

•  Objetivo•  Minimizarelpeso

cm5cm1cm50cm10cm1000cm100

≤≤

≤≤

≤≤

gdl

32

35.02

),,( gldgdlf +⎟⎠

⎞⎜⎝

⎛=π

34

Page 35: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿Cómosolucionarlo?

•  Probarcombinaciones–  l=100,d=10,g=1–  l=100,d=10,g=2–  l=100,d=10,g=3–  l=100,d=10,g=4–  l=100,d=10,g=5–  .–  .–  .

32

35.02

),,( gldgdlf +⎟⎠

⎞⎜⎝

⎛=π

35

Page 36: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿Cuántassolucioneshay?

•  Sol.de“l”XSol.de“d”XSol.de“g”•  901X41X4=147764soluciones•  Siagregamos2decimalesdeexactitudacadasolución…–  (901X102)X(41X102)X(4X102)=1.44X1011– ≈147,764,000,000soluciones

cm5cm1cm50cm10cm1000cm100

≤≤

≤≤

≤≤

gdl

36

Page 37: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Otroejemplo

•  Diseñoderutasparaempresasdemensajería

37

Page 38: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿Cómoloresolvemos?

•  Grafodirigido

E

F

B

C

DA

G

18

8

20

6

24

10

40

30 15

30

12

17 10

38

Page 39: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿Cuántassolucioneshay?

•  Encontrarunapermutaciónquerepresenteelrecorridodeunconjuntodeciudadesdetalformaquetodasseanvisitadasunasolavez,minimizandoladistanciarecorrida.

•  Elespaciodebúsquedacrecedeacuerdoalnúmerodeciudades:(n-1)!/2

39

Page 40: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿Cuántassolucioneshay?

•  Paran=10,hay181,000solucionesposibles.•  Paran=20,hay10,000,000,000,000,000solucionesposibles.

•  Paran=50hay100,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000solucionesposibles.

•  Hay1,000,000,000,000,000,000,000litrosdeaguaenelplaneta(aproximadamente).

40

Page 41: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Losproblemasconlosproblemasdelmundoreal[Michalewicz.2004]

•  Elnúmerodesolucionesposiblespuedellegaraserprohibitivoparaunabúsquedaexhaustiva

•  Elproblemaesmuycomplicadoysólosepuedenutilizarmodelossimplificadosdelmismo

•  Lafunciónobjetivopuedevariarconrespectoaltiempo

•  Lassolucionesestánaltamenterestringidas

41

Page 42: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Clasificacióndeproblemas

•  Optimización– Optimizaciónparamétrica– Optimizaciónconrestricciones– Optimizacióndeestructurasdedatos

•  Satisfacciónderestricciones•  AprendizajedeMáquina•  Programaciónautomática•  Optimizacióndinámica

42

Page 43: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Técnicasclásicas

•  LaInvestigacióndeoperacioneseslapartedelasmatemáticasqueofreceyaplicatécnicaspararesolverproblemasdeestetipo– Programaciónlineal– Programaciónentera– Programaciónnolineal– Programacióndinámica– Tomadedecisionesmulticriterio

43

Page 44: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Ventajas

•  Sonlaprimeraopciónpararesolverunproblemadebúsqueda/optimización

•  Silascaracterísticasdelproblemaseajustanalascondicionesrequeridasporelmétodo,puedengarantizarencontrarlamejorsolución

•  Elcostocomputacionalpuedeserbajoencondicionesadecuadas

44

Page 45: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Desventajas

•  Enalgunosproblemasnopuedenseraplicadasopuedentardarmuchotiempoendevolverunasoluciónaceptable

•  Puedenestancarseensolucionesóptimaslocales

•  Laaplicaciónpuederequerirlatransformacióndelproblemaoriginal

•  Algunosmétodosdistandesersencillosdeentendery/oaplicar

45

Page 46: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿QuéesunEA?

•  Esunalgoritmoquebasasufuncionamientoenlaevoluciónnaturaldelasespeciesylasupervivenciadelmásaptoenunmedioambientecomún

46

Page 47: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿QuéesunEA?

•  Elmodelogeneralescomosigue:– Setieneunapoblacióndeindividuos– Lainfluenciadelambienteoriginalaselecciónnatural(funcióndecalidadoaptitud)

– Losindividuosmejoresadaptadosasuambientesonelegidosparareproducciónytienenaltasprobabilidadesdesobrevivirparalasiguientegeneración

– Lareproducciónserealizamedianteoperadoresdevariación(cruzaymutaciónprincipalmente)

47

Page 48: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Algoritmoevolutivo

www.hedweb.com/animimag/horses-gallop.htm allthecritters.files.wordpress.com/2007/03/snow-horses.jpg

Selección de Padres

www.hickerphoto.com/data/media/186/

www.briarwoodminis.com

www.best-horse-photos.com/Wild-Horses.html

Operadores de variación

Población de hijos

www.hedweb.com/animimag/horses-gallop.htm

Reemplazo

48

Page 49: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿QuéesunEA?

•  Características:– EAssonbasadosenpoblaciones(manejanvariassolucionessimultáneamente

– EAsutilizanlacombinacióndesolucionesparamezclarsuinformaciónygenerarnuevassoluciones

– EAssonestocásticos

49

Page 50: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

DefinicióndeInteligencia[http://lema.rae.es/drae/?val=inteligencia]

•  Capacidaddeentenderocomprender.•  Capacidadderesolverproblemas.•  Conocimiento,comprensión,actodeentender.•  Sentidoenquesepuedetomarunasentencia,undichoounaexpresión.

•  Habilidad,destrezayexperiencia.•  Tratoycorrespondenciasecretadedosomáspersonasonacionesentresí.

•  Sustanciapuramenteespiritual.

Page 51: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿Cuáleselanimalmásinteligente?

Tomadade:http://blog.elhogarprovegan.org/2013/04/23/la-inteligencia-del-pulpo/Tomadade:http://curiosoanimal.blogspot.mx/2010/08/delfin.html

Tomadade:http://animalesenextinciongaway.blogspot.mx/2013/08/chimpance-comun-pan-troglodytes.htmlTomadade:http://juanm.net/portfolio/ilustracion-3d/hormiga_3d-1/

Page 52: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿Cuáleselanimalmásinteligente?•  Aunahormiganoseleconsiderainteligente…

•  AunacoloniadehormigasSITomadade:http://www.nextnature.net/2013/07/what-ant-colony-networks-can-tell-us-about-what%E2%80%99s-next-for-digital-networks/

Page 53: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿Yporqué?

Tomadade:http://www.clarkpest.com/blog/bid/39646/San-Diego-Pest-Control-Officials-Remove-Large-Balboa-Park-Beehive

Tomadade:http://www.coralreefphotos.com/big-school-of-fish-schooling-fish-school-of-bogas/

Page 54: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Inteligenciacolectiva

Comunicación Experiencia

Comportamiento emergente

Page 55: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Paradigmas

•  Optimizaciónmediantecúmulosdepartículas[Kennedy&Eberhart,1995]

•  Coloniadehormigas[Dorigoetal.,1994]

Tomadade:http://www.mirror.co.uk/news/uk-news/flock-of-thousands-of-birds-combines-in-one-832332

Tomadade:http://matungomalarriau.blogspot.mx/2010/11/el-hormiguero.html

Page 56: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Nuevosalgoritmosbio-inspirados

•  ArtificialBeeColony(ABC)[KarabogaandBasturk,2003]

•  BacterialForagingOptimization(BFO)[Passino,2002]

•  Sistemainmuneartificial(AIS)[NunesdeCastro,2002]

•  Cuckoosearch[Yang&Deb,2009]

http://photos-from-my-life.blogspot.com/2006/10/bee-swarm.html

Page 57: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

ComponentesdeunEA

1.  Representacióndesoluciones2.  Funcióndeaptitud(ocalidad)3.  Poblacióndesoluciones4.  Mecanismodeseleccióndepadres(oselección

asecas)5.  Operadoresdevariación(cruzay/omutación)6.  Mecanismodereemplazo(odeselecciónde

sobrevivientes)

57

Page 58: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Representacióndesoluciones

•  Eslaligaconelmundoreal•  Larepresentaciónpuedehacerseanivel

– Genotipo(espaciogenotípico)– Fenotipo(espaciofenotípico)

•  Ambosespaciospuedensermuydiferentes•  Solución,fenotipooindividuosonsinónimos

58

Page 59: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Funcióndeaptitud(ocalidad)

•  Definelamejoradelassoluciones•  Representalatareaaresolverse(problema)•  Representaelambienteenelquesemuevenlosindividuos

•  Asignaunamedidadecalidadalassolucionesdelapoblación

•  Sedefine,usualmente,enelespaciofenotípico•  Seleconocetambiéncomofuncióndeaptitudypuedeserequivalentealafunciónobjetivo

59

Page 60: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Poblacióndesoluciones

•  Agrupaasolucionespotencialesalproblema•  Esunconjuntodegenotipos•  Eslaunidaddeevolución•  Laselecciónyelreemplazotrabajansobreella•  Ladiversidadenlapoblaciónescríticaeneldesarrollodelprocesoevolutivo

•  Enella,larelación:1genotipoà1fenotipoà1valordeaptituddebeprevalecer

60

Page 61: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Mecanismodeseleccióndepadres

•  Elrolquetieneestemecanismoeseldedistinguirentreindividuosconsiderandosucalidad,prefiriendo,enprincipio,alosmejores

•  Unindividuoseconsideraunpadresihasidoseleccionadoparaaplicárseleunoperadordevariaciónconlaintencióndegenerardescendencia

•  Juntoconelmecanismodereemplazo,tienenlafuncióndepromovermejorasenlacalidaddelassoluciones

61

Page 62: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Mecanismodeseleccióndepadres

•  EnEC,laseleccióndepadresesusualmenteprobabilística,porloqueindividuosconunaaltacalidadtendránunagranprobabilidaddeserpadres,noasílosindividuosconunacalidadbaja

•  ¿Tienesentidomanteneraindividuosconunapobrecalidad?

62

Page 63: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Operadoresdevariación

•  Sufunciónescrearnuevosindividuosapartirdelosyaexistentes

•  Sedividenconbaseensuaridad

63

Page 64: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Operadoresdevariación

•  Lamutaciónesunariayseaplicaaungenotipoparaobtenerunaversión“ligeramente”modificada.

•  Lamutaciónesestocástica(cambiosinguía)•  Tienelaresponsabilidaddemantenerpositivalaprobabilidaddegenerarcualquiersoluciónenelespaciodebúsqueda

•  Suaplicaciónseasociaconunparámetro

64

Page 65: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Operadoresdevariación

•  Larecombinación(ocruza)esn-aria(n≥2)•  Combinainformaciónde2omássolucionesenundescendientecomún

•  Esestocástica•  Sumotivaciónpartedelaideadecombinarcaracterísticasdeseablesde2omássoluciones(eléxitolomuestralanaturaleza)

•  Suaplicaciónseasociaconunparámetro

65

Page 66: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Mecanismodereemplazo

•  Suroleseldedistinguirentreindividuosconbaseensucalidadparamantenereltamañodepoblaciónfijo

•  Seutilizadespuésdelaaplicacióndelosoperadoresdevariación

•  Usualmenteesdeterminista

66

Page 67: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

InicioytérminodelfuncionamientodeunEA

•  Usualmentesegeneralapoblacióninicialdesolucionesdemaneraaleatoria

•  Demaneraalternativa,sepuedenusarmétodosespecialesparasesgarlascaracterísticasdelosindividuosiniciales

67

Page 68: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

InicioytérminodelfuncionamientodeunEA

•  Diversoscasossedistinguenparaterminarelprocesoevolutivo: –  Cuandosehaalcanzadolasoluciónbuscada(seasumequeseconoceysepuedeusarunapequeñatoleranciaε>0)

–  TiempomáximodeusodeCPU– Númeromáximodeevaluaciones–  Cuandolamejoraenelvalordeaptitudnocambiaenunperiododetiempo

–  Cuandoladiversidaddelapoblaciónestápordebajodeunlímitepermitido

68

Page 69: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿CómosecomportaunEA?

69

Page 70: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿CómosecomportaunEA?

70

Page 71: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿CómosecomportaunEA?

71

Page 72: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Convergencia

72

Page 73: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Inicialización¿conapoyo?

73

Page 74: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

AgotaralEA…

74

Page 75: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

¿QuétanbuenoesunEA?

75

Page 76: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Ejemplo:Problemadelas8reinas

•  SepuederesolverconmétodostradicionalesdeIA

•  ¿CómoresolverloconunEA?

76

Page 77: Introducción a los Algoritmos Evolutivos y de …...– Inteligencia colectiva – Sistemas inmunes artificiales – Sistemas difusos. • Si al grupo de paradigmas se le agregan

Ejemplo:Problemadelas8reinasRepresentación PermutacionesRecombinación Cortar-y-llenar-cruzadoProbabilidadderecombinación 100%Mutación Intercambio(swap)Probabilidaddemutación 80%Seleccióndepadres Best-twooutof5randomReemplazo Replace-worstTamañodepoblación 100Númerodedescendientes 2Inicialización RandomCondicióndeparo Solucióno10,000evaluaciones77