clase 4: algoritmos evolutivos computaci³n evolutiva gabriela ochoa gabro

Download Clase 4: Algoritmos Evolutivos Computaci³n Evolutiva Gabriela Ochoa  gabro

Post on 28-Jan-2016

215 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Clase 4: Algoritmos EvolutivosComputacin EvolutivaGabriela Ochoahttp://www.ldc.usb.ve/~gabro/

  • Problema Optimizacin Numrica Funcin Vencindad:x = (x1, , xn), li xi uix = xi + N(0,i), i = (ui - li)/6

    Hillclimbing iterado, generar vecindad de tamao fijoSimulated Annealing, dos tipos de puntos vecinos.

  • for i=1:TRIES, nAccep = 0; for j=1:NOVER, solNew = NewSolution(solCurr,bounds,i,TRIES); % Generate new solution [ solNew(1,:) solNew(1,totLen)] = EvalSol(solNew,evalOps); %Evaluate new Solution deltaE = solCurr(1,totLen) - solNew(1,totLen); if (deltaE >= 0) | (rand < exp(deltaE/T)) solCurr = solNew; % Accept Solution nAccep = nAccep + 1; end if (solCurr(1,totLen) < solBest(1,totLen)) % Minimization Problem solBest = solCurr; bestTrace = [bestTrace solBest(1,totLen)]; end currTrace = [currTrace solCurr(1,totLen)]; end T = T * TFACTR; % Annealing Schedule cbTrace = [cbTrace solBest(1,totLen)]; % Current best traceendSimulated Annealing in Matlab

  • Parmetros y variables del SAsolCurr = zeros(1,totLen); % Allocate the current solutionsolNew = zeros(1,totLen); % Allocate the new solutionsolBest = zeros(1,totLen); % Allocate the best solutionTFACTR = 0.85; % Ann Sched: Reduce T by this factor on each stepTRIES = 100; % Number of Temperature Steps to tryTMAX = 10; % Maximun Initial TemperatureT = TMAX; % Current TemperatureNOVER = 30; % Max. No. of solutions tried at any tempNLIMIT = 10; % Max. No. of successful solutions before continuingnAccep = 0; % Counter for the number of accepted solutionsdeltaE = 0; % Maintains difference in performance between current and new solutionbestFitness = 0; % Maintais best-so-far fitness

  • ContenidoInspiracin biolgica: La Teora de la Evolucin NaturalAlgoritmos EvolutivosParadigmas en Computacin EvolutivaEstrategias Evolutivas (ES)Programacin Evolutiva (EP)Algoritmos Genticos (GAs)Ramificaciones de los GAs

  • CreacionismoTesis ms aceptada sobre el origen de las especies, durante mucho tiempo Dios cre a todas las especies del planeta de forma separadaEspecies jerarquizadas por Dios. El hombre ocupaba el rango superior, al lado del creador

  • Georges Louis Leclerc (Conde de Buffon) Especul (siglo 18) que las especies se originaron entre s, oposicin al "creacionismo.Not las similitudes entre el hombre y los simios, y especul sobre la existencia de un posible ancestro comn entre estas 2 especies

    Crea que los cambios orgnicos, eran ocasionados por el ambiente

  • Jean-Baptiste LamarckPrincipios siglo 19, enunci teora de la EvolucinCaractersticas adquiridas por un organismo durante su vida podan ser transmitidas a sus descendientes.Ley del uso y desuso

  • Charles Darwin1859: The Origin of Species Derrumba el Lamarckismo Evolucin se origina a travs de cambios aleatorios de caractersticas hereditarias, combinados con un proceso de seleccin natural (Supervivencia de los ms aptos)

  • August Weisman Teora del germoplasma: (siglo 19) la informacin gentica se transmite a travs de ciertas clulas (llamadas germinales), mientras que otras clulas (llamadas somticas) no pueden transmitir nada.

  • August WeismanExperimento: cort las colas de un grupo de ratas durante 22 generaciones (1,592 ratas), sin que las nuevas generaciones de ratas perdieran dicha extremidad Demostr as la falsedad de la hiptesis fundamental del Lamarckismo

  • Johann Gregor MendelRealiz una serie de experimentos con lentejas durante una buena parte de su vida, enunciando a partir de ellos las leyes bsicas que gobiernan la herencia.

  • Experimentos de MendelPlanta alta (TT) cruzada con una corta (tt)Tt: Heterocigoto (Alelos distintos para mismo gen) TT, tt: Homocigotos (Alelos iguales para mismo gen)Carcter Alto es Dominante, y Corto es Recesivo

  • Neo-Darwinismo++

  • EvolucinProceso de descendencia con cambio, y posiblemente diversificacin Componentes:PoblacinVariacin: en una o mas caractersticas Herencia: Transmisin padres - hijosSeleccin: Diferentes tasas de reproduccin y supervivencia. Mas aptos se reproducen mas

  • Naturaleza / Computacin

    _1000213642.doc

    Nature

    Computer

    Individual

    Population

    Fitness

    Chromosome

    Gene

    Crossover and Mutation

    Natural Selection

    Solution to a problem

    Set of solutions

    Quality of a solution

    Encoding for a solution

    Part of the encoding of a solution

    Search operators

    Reuse of good (sub-) solutions

    _1000213860.doc

    Nature

    Computer

    Individual

    Population

    Fitness

    Chromosome

    Gene

    Crossover and Mutation

    Natural Selection

    Solution to a problem

    Set of solutions

    Quality of a solution

    Encoding for a solution

    Part of the encoding of a solution

    Search operators

    Reuse of good (sub-) solutions

    _1000214187.doc

    Nature

    Computer

    Individual

    Population

    Fitness

    Chromosome

    Gene

    Crossover and Mutation

    Natural Selection

    Solution to a problem

    Set of solutions

    Quality of a solution

    Encoding for a solution

    Part of the encoding of a solution

    Search operators

    Reuse of good (sub-) solutions

    _1000210173.doc

    Nature

    Computer

    Individual

    Population

    Fitness

    Chromosome

    Gene

    Crossover and Mutation

    Natural Selection

    Solution to a problem

    Set of solutions

    Quality of a solution

    Encoding for a solution

    Part of the encoding of a solution

    Search operators

    Reuse of good (sub-) solutions

  • Breve HistoriaAos 50s y 60s: varios cientficos de manera independiente estudiaron sistemas evolutivos, con la idea usar la evolucin como mtodo optimizacin en ingenieraIdea: Evolucionar una poblacin de posibles soluciones a un problema dado, utilizando operadores inspirados por la variacin gentica, y la seleccin natural

  • Enfoques en Computacin Evolutiva EC = GA + ES + EPComputacin EvolutivaAlgoritmos Genticos(Holland, 75) Estrategias Evolutivas(Rechenberger, 73)Programacin Evolutiva(Fogel, Owens, Walsh, 66)Similares en un nivel abstracto, inspiradas en los principios de la Evolucin Natural. Diferencias a nivel de implementacin. Aspectos de representacin de las estructuras, operadores de variacin, mtodos de Seleccin, medidas de desempeo

  • Ramas de Algoritmos GenticosProgramacin Gentica (Genetic Programming, GP) Jhon Koza, 1989. Espacio de bsqueda, programas de computacin en un lenguaje que puede ser modificado por mutacin y recombinacinGAs basados en ordenamiento (Order based GAs): utilizados en optimizacin combinatoria. Espacio de bsqueda: permutacionesSistemas Clasificadores Genticos (Classifier Systems). Especio de reglas de produccin, sistema de aprendizaje, inducir y generalizar

  • Esqueleto de un Algoritmo EvolutivoGenerate [P(0)] t 0 WHILE NOT Termination_Criterion [P(t)] DO Evaluate [P(t)] P' (t) Select [P(t)] P''(t) Apply_Variation_Operators [P'(t)] P(t+1) Replace [P(t), P''(t)] t t + 1 END RETURN Best_Solution

  • El Ciclo EvolutivoRecombinationMutationSelectionReplacement

  • Solucin de Problemas usando Algoritmos Evolutivos

  • Algoritmos GenticosJhon Holland, 60s, y 70s, Univ. MichiganIdea original estudio terico de la adaptacin, no resolucin de problemasRepresentacin gentica independiente del dominio: cadenas de bitsnfasis en recombinacin, operador principal, mutacin papel secundario aplicado con baja probabilidad, constanteSeleccin probabilstica

  • Estrategias Evolutivas (1)ES, Evolution Strategies, Alemania. Evolutionstrategies Utilizadas para resolver problemas duros (sin solucin analtica) de optimizacin de parmetros (No. reales) Cromosoma = vector de parmetros (float) Auto-adaptacin de las tasas de mutacin. Mutacin con distribucin Normal Seleccin (m, l)-ES, (m + l)-ES Poblacin de padres m e hijos l, pueden tener distinto tamao Mtodos determinsticos que excluyen definitivamente a los peores de la poblacin

  • Estrategias Evolutivas (2)(m, l)-ES: Los mejores m individuos se escogen de los l hijos, y se convierten en los padres de la siguiente Generacin. Ej. (50,100)-ES

    (m + l)-ES: Los mejores m individuos se escogen delconjunto formado m padres y l hijos.Ej. (50+100)-ES

    (m, l)-ES parece ser el mas recomendado para optimizar Funciones complejas y lograr la auto-adaptacin de las tasas de mutacin

  • Estrategias Evolutivas (3)El progreso del Algoritmo evolutivo, ocurre solo en una pequea banda de valores para el paso de la mutacin.Por esta razn, se requiere de una regla auto-adaptaba para el tamao de los pasos de mutacin

  • Programacin EvolutivaInicialmente, evolucin a travs de mutaciones de maquinas de estado finitoRepresentacin adecuada al problemaMutacin nico operador de variacin, distribucin normal, Auto-adaptacinSeleccin probabilstica

  • ESEPGARepresentacinNmeros RealesNmeros RealesDigitos BinariosAuto-AdaptacinDesviaciones estndares y angulos de rotacin No (Standard EP)Varianzas (Meta EP)NoMutacinGaussiana, Operador principalGaussiana, Operador nicoInversin de bit, operador secundarioRecombinacinDiscreta (azar) Intermedia (promedio)Sexual (2 padres), Panmicitica (Varios)No Crossover de n-puntos, UniformeOperador principalSexual (2 Padres)SeleccinDeterminstic