Computación Evolutiva, principio y aplicaciones D.Sc. Yván Jesús Túpac Valdivia IEEE Sociedad de Inteligencia Computacional 12 de abril de 2013 IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 1/24 Contenido 1 Algoritmos Evolutivos Ideas Precursoras Ciclo básico de un EA Paradigmas de la Computación Evolutiva 2 Aplicación EA Proyecto ANEPI 3 Bibliografía IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 2/24 Algoritmos Evolutivos Algoritmos Evolutivos (EA) Definición: Son algoritmos metaheurísticos basados en una población de individuos que usan mecanismos biológicamente inspirados como: mutación, recombinación, selección natural y sobrevivencia de los más aptos para iterativamente refinar un conjunto de soluciones. Ventajas Característica black box Calidad de respuesta consistente para muchos tipos de problema. Computación Evolutiva o Algoritmos Evolutivos tratan de un conjunto de técnicas y metodologías que la componen, todas ellas con inspiración biológica en la evolución Neo-Darwiniana. IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 3/24 Algoritmos Evolutivos Algoritmos Evolutivos (EA) Principio basado en la Naturaleza EA son una abstracción de los procesos y principios establecidos por el Darwinismo y Neo-darwinismo y el principio goal-driven (conducido a los objetivos) [1]. IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 4/24 Algoritmos Evolutivos Ideas Precursoras Ideas Precursoras Neodarwinismo El pensamiento evolutivo actual se basa en el Neo-Darwinismo. Paradigma Neodarwiniano: Establece que la historia de la vida puede ser explicada por los siguientes procesos estadísticos [2]: IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 5/24 Algoritmos Evolutivos Ideas Precursoras Ideas Precursoras Neodarwinismo El pensamiento evolutivo actual se basa en el Neo-Darwinismo. Paradigma Neodarwiniano: Establece que la historia de la vida puede ser explicada por los siguientes procesos estadísticos [2]: Herencia Reproducción Mutación y recombinación Competencia y Selección Natural. IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 5/24 Algoritmos Evolutivos Ideas Precursoras Ideas Precursoras Neodarwinismo El Neodarwinismo es la combinación de: La Teoría evolutiva original de Charles Darwin El Seleccionismo de August Weismann La Genética de Gregor Mendel IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 6/24 Algoritmos Evolutivos Ideas Precursoras Ideas Precursoras Neodarwinismo El Neodarwinismo es la combinación de: La Teoría evolutiva original de Charles Darwin El Seleccionismo de August Weismann La Genética de Gregor Mendel C. Darwin (Teoría Evolutiva) IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) + A. Weismann (Seleccionismo) + G. Mendel (Genética) Computación Evolutiva, principio y aplicaciones Pág 6/24 Algoritmos Evolutivos Ciclo básico de un EA Algoritmos Evolutivos: Ciclo Básico Un algoritmo evolutivo de cualquier tipo emplea los siguientes mecanismos: 1 Una forma de codificar las soluciones x en estructuras g que se reproducirán conformando una población G0 inicial generada aleatoriamente. 2 Una función de asignación de aptitud a(•) que depende de los individuos x y su evaluación f (x). 3 Un mecanismo de selección basado en la aptitud a(•). 4 Operaciones que actuen sobre los individuos codificados gi ∈ G para reproducirlos. IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 7/24 Algoritmos Evolutivos Ciclo básico de un EA Ciclo Básico de un EA Estos mecanismos siguen un orden como el de la figura 2: Población Inicial Evaluación Asignar Aptitud Crear una población inicial de individuos aleatorios Calcular las funciones objetivo de los candidatos A partir de los valores de de función objetivo de los candidatos Reproducción Selección Crear nuevos individuos usando mutación y recombinación Escoger los mejores individuos para su reproducción Figure: Ciclo Básico de un Algoritmo Evolutivo IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 8/24 Algoritmos Evolutivos Paradigmas de la Computación Evolutiva Paradigmas de la Computación Evolutiva Se puede diferenciar tres principales paradigmas de la Computación Evolutiva [3] IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 9/24 Algoritmos Evolutivos Paradigmas de la Computación Evolutiva Paradigmas de la Computación Evolutiva Se puede diferenciar tres principales paradigmas de la Computación Evolutiva [3] 1 Programación Evolutiva 2 Estrategias Evolutivas 3 Algoritmos Genéticos IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 9/24 Algoritmos Evolutivos Paradigmas de la Computación Evolutiva Paradigmas de la Computación Evolutiva Se puede diferenciar tres principales paradigmas de la Computación Evolutiva [3] 1 Programación Evolutiva 2 Estrategias Evolutivas 3 Algoritmos Genéticos Adicionalmente se encuentran dos paradigmas más: 4 Learning Classifier Systems 5 Programación Genética que son bastante próximos a Algoritmos Genéticos y Programación Evolutiva respectivamente. IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 9/24 Algoritmos Evolutivos Paradigmas de la Computación Evolutiva Paradigmas de la Computación Evolutiva Familia de los Algoritmos Evolutivos Programación Genética Programación Evolutiva Algoritmos Genéticos Learning Classifier Systems Estrategias Evolutivas Evolución Diferencial Algoritmos Evolutivos IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 10/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI ANEPI: Análise Econômica de Projetos de E&P de Petróleo sob Incerteza Objetivo: Desarrollo de tecnologías para el Análisis de Alternativas de Desarrollo de Campos de Petróleo bajo Incertidumbre Técnica y de Mercado IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 11/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI ANEPI: Análise Econômica de Projetos de E&P de Petróleo sob Incerteza Objetivo: Desarrollo de tecnologías para el Análisis de Alternativas de Desarrollo de Campos de Petróleo bajo Incertidumbre Técnica y de Mercado Reservorio Petrolı́fero Alternativa de Desarrollo Optimización (Algoritmo Evolutivo) Evaluación Económica (VPN) IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Simulación de Reservorio Computación Evolutiva, principio y aplicaciones Pág 11/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI ANEPI: Análise Econômica de Projetos de E&P de Petróleo sob Incerteza Este proyecto constó de los siguientes módulos: 1 Optimización de alternativas en condiciones de certeza 2 Análisis de Alternativas de Desarrollo de Campos Petrolíferos bajo incertidumbres técnicas y de mercado 3 Cálculo del Valor de Opción considerando incertidumbre técnica y de Mercado IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 12/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI Optimización de alternativas en condiciones de certeza Encontrar una o más alternativas iniciales de desarrollo óptimas: número, localización, tipo, orden de perforación y dimensión de pozos petroliferos. Aplicación de Computación Evolutiva [4, 5, 6, 7]. Alternative Wells layout Evolutionary Model Objective function Expert knowledge Reservoir model Reservoir simulator Production curve CapEx NPV compute NP V = V − D IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) OpEx Computación Evolutiva, principio y aplicaciones Pág 13/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI Optimización de alternativas en condiciones de certeza Modelo evolutivo: 1 Representación: uso de un modelo de cromosoma con tamaño variable (para soportar alternativas con cantidades diferentes de pozos) y usando las estrategias de cromosoma creciente y cromosoma oscilante [8] Máscara de activación mi 0 1 0 1 1 0 1 0 Genotipo gi Verticales i, j i, j Inyectores IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) i, j Horizontales i, j Productores i, j, k i, j, k i, j, k i, j, k dir, l dir, l Inyectores dir, l dir, l Productores Computación Evolutiva, principio y aplicaciones Pág 14/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI Optimización de alternativas en condiciones de certeza Modelo evolutivo: 2 Evaluación: que consta de dos etapas: i Simulación de la producción para la alternativa de pozos de cromosoma: para obtener las curvas de producción de óleo, gas y agua. Uso de un simulador de fluidos para modelo blackoil. ii Cálculo del Valor Presente Neto de la alternativa del cromosoma a partir de la producción, información geométrica y datos de mercado. Uso de ecuaciones para el flujo de caja descontado. Se hace uso de la arquitectura master-slave para evaluaciones en paralelo [6, 9] IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 15/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI Optimización de alternativas en condiciones de certeza Modelo evolutivo: Simulación de producción AE Evaluación de la alternativa Parámetros de mercado, inversión y operación VPN Alternativa (Cromosoma) Script de pozos Información de malla y pozos Geometrı́a de la malla INCLUDE Información de la geologı́a de rocas parámetros PVT , , info de pozos Datos de producción: óleo, gas, agua y pasos de simulación IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Simulador blackoil (CMG/IMEX) Archivos de salida (.OUT .MRF .IRF) Filtro de salida Computación Evolutiva, principio y aplicaciones Pág 16/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI Optimización de alternativas en condiciones de certeza Modelo evolutivo: Cálculo del VPN NPV = PV − D nw D = ( fhw a + r)nw + b + ∑ |p j − p plat |c PV = (PVInc − PVOp ) (1 − I) T PVInc = ∑ Inc(ti )e−ρti i=1 G(t) Poil (t) Inc(t) = Q(t) + 1000 IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) j=1 T PVOp = ∑ Op(ti )e−ρti i=1 Op(ti ) = mnw +Vc Q(ti ) + Ry Inc(ti ) + Fc +WcW (ti ) Computación Evolutiva, principio y aplicaciones Pág 17/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI Optimización de alternativas en condiciones de certeza Ejemplo de Aplicación: Se usó un modelo de campo petrolífero homogéneo que consiste en una malla de 30 × 30 × 1 con los siguientes parámetros geológicos: Parámetro Permeabilidad Porosidad Presión inicial Saturación agua Valor 1000.00 0.20 100.00 0.2 IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Unidad md kg cm 2 Computación Evolutiva, principio y aplicaciones Pág 18/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI Optimización de alternativas en condiciones de certeza Ejemplo de Aplicación – Experimento 01 (Aleatorio): Respuesta ante una inicialización totalmente aleatoria. La respuesta encontrada es la siguiente: VINJ VINJ VINJ VINJ VPRO HPRO1 Parámetro VPN Petróleo Valor 1699.122 364.075 Unidad (MUS$) (Barriles) VPRO VPRO VPRO VPRO HINJ VPRO VPRO HINJ VPRO VINJ VPRO VINJ IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 19/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI Optimización de alternativas en condiciones de certeza Ejemplo de Aplicación – Experimento 02 (S. Inicial): Alternativa optimizada: Alternativa “five-spot” original HINJ1 HINJ8 HPRO3 HINJ2 HINJ7 HPRO4 HINJ13 HINJ8 HPRO3 HPRO4 VINJ3 VINJ4 HINJ5 HINJ4 HINJ6 HINJ10 VINJ1 VINJ6 HINJ11 VINJ5 HPRO2 HPRO1 HPRO2 HPRO1 VINJ2 HINJ3 Parámetro VPN Petróleo HINJ7 Valor 1397.981 297.025 IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) HINJ9 Unidad (MUS$) (Barriles) HINJ9 HINJ12 Parámetro VPN Petróleo Valor 1667.821 359.100 HINJ14 Unidad (MUS$) (Barriles) Computación Evolutiva, principio y aplicaciones Pág 20/24 Aplicación EA Proyecto ANEPI Proyecto ANEPI Integración [10, 11] GENETIC ALGORITHM Experts’ knowledge Decision Rule (Thr esho ld Cur ve) Ha nd li ng L ine ar Co n st ra in ts Evol ution ar y Alg orithm Genet ic operators Evalu ation Option Value Sim. Monte Car lo ( Oil Pri ce) Sto ch as ti c Pr o ces s fo r a Co m mo di ty D e c is i o n R u le Objective Function b y G e n e ti c A lg o r it h m 3 4 3 2 R e g io n o f A lt e r n a ti v e3 3 0 2 8 W C APEX Parame ters R e g io n o f A lt e rn a ti v e 2 2 2 2 0 1 8 W a it n g R e g io n 1 6 Re g i o nof 1 4 A lte r n a t iv e 1 1 0 8 6 4 2 OPEX Parame ters 9 6 9 8 8. 4 NPV = V − D 73 4 72 0 62 1 47 . 1. NPV Com puting 9. 6. 5. 8. Optimized alternatives 1 1 1 1 1 4 4 7 5 9 31 1. 3. 1 8 51 8 3 2 7. 75 90 5 6 2 1. 3 86 0 1 0. 8. 9. 0. 2. 6. 0 1 0 1 0 1 3 9 2 64 4 1 49 8 0 32 1. 0 5. 4. 2. 0. 0. 0. . 0 0 0 0 0 7 0 0 o f r a nd o m nu m b er s Production C ur ve a it n g R e g io n 2 4 1 2 Gen e ra to r an d sa m ple r Wells La yout R eser voir Model 2 6 O i lP r ic e (U S $ ) Geom etri c Br ownia n Mot ion Mean Rev ersio n Pr ocess Reservoir Simulator (or Proxy) Alter nativ e T i me (y e a rs ) A tl e r n a t v i e 1 Wa n ti g 1 A tl e r n a ti e v 2 W a i n ti g 2 A te l r n a ti e v 3 Pse udo Ran dom Lati n Hyper cubic Samp ling Decision Rule M ark et Unc ertaint y Stochactic Process for a Comm odi ty Ge om et ric B ro wnia n M o tion Me an Re ve rsio n Pr oc ess Me an Re ve rsio n Pr oc ess with jum p s Generator and samp ler of r an dom num bers Option value considering the value of the expansion option or investment in information Pse u do - ra n do m Q ua si Mo n te Ca r lo Cal culati on of th e Thresho ld Cu rve: Algo rithm of Grant, Vo ra and Weeks Modi fied for F uzzy Num bers M onte Carlo S im ulatio n to Deter mine the Real Op ti on Value (F u zzy Nu m be r ) Real Op ti on Valu e ( F uz zy Me an ) Fu zzy Num bers Technic al Unc ert ainty IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 21/24 Bibliografía Bibliografía I J. van der Hauw, “Evaluating and improving steady state evolutionary algorithms on constraint satisfaction problems,” Master’s thesis, Computer Science Department of Leiden University, Leiden, Netherlands, august 1996. A. Hoffman, Arguments on Evolution: A Paleontologist’s Perspective. York: Oxford University Press, 1989. New T. Back, D. B. Fogel, and Z. Michalewicz, Eds., Handbook of Evolutionary Computation, 1st ed. Bristol, UK, UK: IOP Publishing Ltd., 1997. Y. J. Túpac, M. M. Vellasco, and M. A. C. Pacheco, “Selection of alternatives for oil field development by genetic algorithms,” Revista Engenharia Térmica, Edição Especial, vol. 2, pp. 51– 54, may 2002. IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 22/24 Bibliografía Bibliografía II L. Faletti, “Otimização de alternativas para desenvolvimento de campo de petróleo usando computação evolucionária (in portuguese),” Master’s thesis, Departamento de Engenharia Elétrica, Pontifía Universidade Católica do Rio de Janeiro, Rio de Janeiro, Brasil, 2003, (In Portuguese). Y. J. Túpac, “Sistema inteligente de otimização de alternativas (in portuguese),” Ph.D. dissertation, Pontifícia Universidade Católica do Rio de Janeiro, Rio de Janeiro, RJ, Brasil, 2005, (In Portuguese). L. F. Almeida, Y. T. Valdivia, M. M. B. R. Vellasco, and M. A. C. Pacheco, “Otimização de alternativas para o desenvolvimento de campos de petróleo,” Gestão & Produção, vol. 14, pp. 489–503, 12 2007. R. S. Zebulum, M. A. Pacheco, and M. M. B. R. Vellasco, Evolutionary Electronics: Automatic Design of Electronic Circuits and Systems by Genetic Algorithms. CRC Press, 2002. IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 23/24 Bibliografía Bibliografía III Y. J. Túpac and L. Faletti, “Parallel evolutionary algorithms applied to optimize the oilfields development,” in Proceedings del Encuentro Chileno de Computación, Curicó, Chile, 2011. [Online]. Available: http://jcc2011.utalca.cl/actas/ECC/jcc2011_submission_170.pdf Y. J. Túpac, J. G. Lazo, L. Faletti, M. M. R. Vellasco, and M. A. Pacheco, “Decision support system for economic analysis of E & P projects under uncertainties,” in 2008 SPE Intelligent Energy Conference and Exhibition. Society of Petroleum Engineers, 2008. M. A. Pacheco and M. M. Vellasco, Eds., Intelligent Systems in Oil Field Development under Uncertainty. Springer Berlin / Heidelberg, January 2009. IEEE CIS-DAY (12 de abril de 2013) TÚPAC, Y. (IEEE CIS Perú) Computación Evolutiva, principio y aplicaciones Pág 24/24