3,669 research outputs found

    Algoritmos evolutivos

    Get PDF
    Evolution as selection of life strategies can be distilled to its minimum components: individuals, algorithms and inheritance. These elements are enough to reproduce the evolutionary phenomenon  from  the  most radical neo-Darwinism basis: the selection of the fittest is gradually improving the adaptation of the entire population until the perfect individual or, at least one that does pretty well, arise. In this simple approach not only novels are written by lucky monkeys, but also we can test the importance of mutation and sex, as similar agents but completely different effect. And not only that; this is such a neat reasoning that has been one of the first contributions from biology to computer science.La evolución como selección de estrategias de vida se puede destilar hasta sus mínimos componentes: individuos, algoritmos y herencia. Estos elementos bastan para reproducir el fenómeno evolutivo desde el neodarwinismo más radical: la selección del más eficaz va mejorando progresivamente la adaptación de toda la población hasta que, finalmente, surge el individuo perfecto o, al menos, uno que lo hace bastante bien. En esta sencilla aproximación no sólo se escriben novelas con monos afortunados, sino que también se puede ensayar la importancia de la mutación y el sexo, como agentes similares pero de efecto distinto. Y no sólo esto; la pureza del razonamiento es tal que ha sido una de las primeras contribuciones de la biología a las ciencias computacionales

    Implementación de juegos usando algoritmos evolutivos

    Get PDF
    El objetivo de este proyecto, ha sido implementar juegos convencionales aplicando las técnicas de los algoritmos evolutivos. Los algoritmos evolutivos son un grupo de algoritmos de búsqueda basados en la evolución y selección natural de las especies en el mundo real. Estas técnicas incluyen algoritmos genéticos, los cuales trabajan con estructuras binarias para representar a los individuos de una población. Los juegos son una parte muy interesante dentro del campo de la programación evolutiva, ya que en ellos se pueden aplicar muchas de las características típicas de los algoritmos evolutivos. En este proyecto hemos implementado un gran número de juegos como el mastermind, puzzles… y otros juegos donde el contrincante ha sido el ordenador. Para cada juego hemos elegido la representación de los individuos y la funciónde aptitud más apropiadas para conseguir juegos que devolvieran soluciones óptimas, finalidad primera de los algoritmos evolutivos. [ABSTRACT] The objective of this project, has been to implement conventional games applying the techniques of the evolutionary algorithms.. The evolutionary algorithms are a group of algorithms search based on the evolution and natural selection of the species in the real world. These techniques include genetic algorithms, which work with binary structures to represent the individuals of a population. The games are a very interesting part within the field of the evolutionary programming, since in them many of the typical characteristics of the evolutionary algorithms can be applied. In this project we have implemented a great number of games like mastermind, puzzles, labyrinths... and other games where the opponent has been the computer. For each game we have chosen the representation of the individuals and the more appropriate function of aptitude to obtain games that gave back optimal solutions, purpose first of the evolutionary algorithms

    Algoritmos evolutivos para la adquisición de TI en la empresa

    Get PDF
    Este artículo defiende la aplicación de la inteligencia artificial y más específicamente de los algoritmos evolutivos en la gestión del TI. Para esto primero se da una introducción breve a la inteligencia artificial y después se ahonda en los algoritmos evolutivos. Posteriormente se hace una introducción a la gestión del TI dentro de las organizaciones. Después se revisan varios resultados de investigaciones previas para optimizar el proceso de cotización del desarrollo de software usando algoritmos evolutivos y otras técnicas de inteligencia artificial. En seguida se abordan los algoritmos evolutivos para la adquisición de hardware, donde se explica que es un tema poco abordado, no obstante se presentan algunos trabajos relacionados. Finalmente se concluye que estas técnicas tienen un gran potencial para las organizaciones, ya que revisando los resultados obtenidos su aplicación no es solo viable, sino beneficiosa para cualquier organización que ha alcanzado cierto grado de madurez en T

    Algoritmos evolutivos distribuidos para mantener diversidad poblacional

    Get PDF
    Cuando el Algoritmo Evolutivo no logra equilibrar la exploración y la explotación del espacio de búsqueda es muy probable que se pierda diversidad poblacional. Tal inconveniente puede solucionarse con modelos de algoritmos evolutivos distribuidos, los cuales mantienen varias subpoblaciones (islas) en paralelo procesándolas con algoritmos evolutivos independientes entre sí. Las islas, por medio de mecanismos de migración, intercambian material genético. Las configuraciones de los algoritmos evolutivos que se aplican a las subpoblaciones pueden ser distintas, obteniéndose de esta manera algoritmos evolutivos distribuidos heterogéneos. Estos últimos representan un camino promisorio para un mejor balance entre exploración y explotación; evitando la pérdida de diversidad genética y alcanzando buenas soluciones finales aproximadas. Esta línea de investigación estudia los efectos producidos por el uso de diversas configuraciones en cada una de las islas, para que en ellas se logre un comportamiento evolutivo diferente, para mantener la diversidad poblacional y fundamentalmente conseguir soluciones de calidad.Eje: Sistemas de información y MetaheurísticaRed de Universidades con Carreras en Informática (RedUNCI

    Algoritmos evolutivos distribuidos para mantener diversidad poblacional

    Get PDF
    Cuando el Algoritmo Evolutivo no logra equilibrar la exploración y la explotación del espacio de búsqueda es muy probable que se pierda diversidad poblacional. Tal inconveniente puede solucionarse con modelos de algoritmos evolutivos distribuidos, los cuales mantienen varias subpoblaciones (islas) en paralelo procesándolas con algoritmos evolutivos independientes entre sí. Las islas, por medio de mecanismos de migración, intercambian material genético. Las configuraciones de los algoritmos evolutivos que se aplican a las subpoblaciones pueden ser distintas, obteniéndose de esta manera algoritmos evolutivos distribuidos heterogéneos. Estos últimos representan un camino promisorio para un mejor balance entre exploración y explotación; evitando la pérdida de diversidad genética y alcanzando buenas soluciones finales aproximadas. Esta línea de investigación estudia los efectos producidos por el uso de diversas configuraciones en cada una de las islas, para que en ellas se logre un comportamiento evolutivo diferente, para mantener la diversidad poblacional y fundamentalmente conseguir soluciones de calidad.Eje: Sistemas de información y MetaheurísticaRed de Universidades con Carreras en Informática (RedUNCI

    Algoritmos evolutivos paralelos: implementaciones sobre un modelo unificado

    Get PDF
    En la actualidad los algoritmos evolutivos (AE) se usan para buscar soluciones a problemas complejos para los cuales otras técnicas pueden insumir mucho tiempo y que, por lo general, proveen una única solución óptima. Una tendencia actual consiste en disponer de la mayor cantidad de recursos computacionales para alcanzar los resultados de forma más rápida por medio de un trabajo cooperativo. La inclusión del paralelismo, distribución de tareas en varios procesadores, en el diseño de los algoritmos evolutivos ha sido muy importante dando lugar a mecanismos de búsqueda y optimización mejorados: algoritmos evolutivos paralelos. Este trabajo presenta una breve revisión de los algoritmos evolutivos paralelos. Además, realiza un análisis comparativo del comportamiento de estos algoritmos con su versión secuencial, a fin de identificar cuáles son sus aciertos y debilidades. El paquete de software utilizado responde a un modelo unificado desarrollado en la Universidad de Málaga. La evaluación de los algoritmos se realiza analizando los resultados obtenidos para dos problemas de optimización bien conocidos como lo son: OneMax y Mochila Binaria.Eje: Agentes y Sistemas Inteligentes (ASI)Red de Universidades con Carreras en Informática (RedUNCI

    Algoritmos evolutivos paralelos: implementaciones sobre un modelo unificado

    Get PDF
    En la actualidad los algoritmos evolutivos (AE) se usan para buscar soluciones a problemas complejos para los cuales otras técnicas pueden insumir mucho tiempo y que, por lo general, proveen una única solución óptima. Una tendencia actual consiste en disponer de la mayor cantidad de recursos computacionales para alcanzar los resultados de forma más rápida por medio de un trabajo cooperativo. La inclusión del paralelismo, distribución de tareas en varios procesadores, en el diseño de los algoritmos evolutivos ha sido muy importante dando lugar a mecanismos de búsqueda y optimización mejorados: algoritmos evolutivos paralelos. Este trabajo presenta una breve revisión de los algoritmos evolutivos paralelos. Además, realiza un análisis comparativo del comportamiento de estos algoritmos con su versión secuencial, a fin de identificar cuáles son sus aciertos y debilidades. El paquete de software utilizado responde a un modelo unificado desarrollado en la Universidad de Málaga. La evaluación de los algoritmos se realiza analizando los resultados obtenidos para dos problemas de optimización bien conocidos como lo son: OneMax y Mochila Binaria.Eje: Agentes y Sistemas Inteligentes (ASI)Red de Universidades con Carreras en Informática (RedUNCI

    Implementação distribuída de algoritmos evolutivos

    Get PDF
    Tese de mestrado, Engenharia Informática (Arquitectura, Sistemas e Redes de Computadores) Universidade de Lisboa, Faculdade de Ciências, 2017Os sistemas para computação evolutiva, tanto distribuída como não distribuída, têm recebido bastante atenção na ultima década. Isto deve-se principalmente ao aumento da complexidade dos problemas de otimização presentes no mundo real. Embora sejam mais simples de implementar e de perceber, os sistemas não distribuídos revelam-se pouco práticos para problemas complexos e de elevada dimensões. Consequentemente, os sistemas distribuídos tornam-se mais atrativos para resolver problemas mais complexos e multi-dimensionais em tempo aceitável. Contudo, estes sistemas apresentam alguns problemas adicionais relacionados com a sua natureza distribuída, requerendo que os seus utilizadores possuam conhecimentos em sistemas distribuídos. Neste trabalho apresentamos um estudo dos diferentes modelos distribuídos capazes de implementar algoritmos evolutivos. Apresentamos também o state-of-the-art de um dos modelos e dos sistemas de armazenamento, capazes de implementar uma Pool de recursos partilhados. Por fim, apresentamos um sistema distribuído baseado no modelo pool, que suporta a execução de vários algoritmos evolutivos ao mesmo tempo, sem impor qualquer restrição no seu tipo. O mesmo garante uma elevada tolerância a faltas, confidencialidade, disponibilidade e desempenho. Finalmente, o sistema abstrai a sua componente distribuída, possibilitando que seja operado por utilizadores sem o conhecimento em sistemas distribuídos.Evolutionary computation, both distributed and non distributed has received considerable attention over the past decade. This is mainly due to the increasing complexity of real-world optimization problems. Although simpler to implement and to understand, non distributed systems are impractical for complex high dimension problems. Consequently, the distributed systems become more attractive to solve more complex and multi dimension problems in acceptable time. However, they have additional challenges related to their distributed nature, requiring their users to have knowledge in distributed models. In this thesis we present a study on different distributed models that are able to implement evolutionary algorithms. We also present a state-of-the-art on one of the models and storage systems. Finally, we present a distributed system based on a Pool, which supports the execution of several evolutionary algorithms at the same time, without imposing any restriction on their type. It guarantees a high fault tolerance, confidentiality, availability and high performance. Lastly, the system abstracts its distributed nature, allowing it to be operated by users without knowledge in distributed systems

    Predicción local mediante algoritmos evolutivos

    Get PDF
    Desde siempre, un problema clásico en el campo de la Inteligencia Artificial ha sido la búsqueda de la forma de predecir comportamientos a partir de una base de datos que modeliza tales comportamientos. Un claro ejemplo son las Series Temporales, que buscan representar mediante medidas el comportamiento de un fenómeno a lo largo de un periodo de tiempo. Otro ejemplo clásico ha sido la predicción de la cotización de las acciones en bolsa, bien tratada como serie temporal, o bien en función de ciertos medidores. El problema de la mayoría de los algoritmos de aprendizaje automático radica en su búsqueda de una aproximación global a estos problemas de predicción, es decir, buscan un modelo construido sobre todo el conjunto de patrones para predecir cualquier patrón. Esta tesis parte del planteamiento de que esta aproximación no es la más acertada, dado que no todos los patrones presentan las mismas características. Como ejemplo, un sistema de predicción de mareas que trate todos los patrones que representan las medidas del nivel del agua a lo largo de un año por igual nunca podría ser tan acertado como uno que separe los patrones en conjuntos según la época del año, realice un aprendizaje para cada grupo, y posteriormente, según el grupo al que pertenezca, realice su labor de predicción correspondiente. Así pues, nuestro objetivo ha sido la búsqueda de un algoritmo inteligente que no sólo sea capaz de aprender a predecir, sino también a buscar y clasificar las peculiaridades de cada subconjunto de datos, descargando esta tarea del investigador que quiera usar el algoritmo. La potencia de los algoritmos desarrollados en esta tesis se basan en la búsqueda y aprendizaje de y sobre estos subjuntos especiales. Esto nos permite incluso buscar comportamientos anómalos de los datos, y realizar reglas de predicción para ellos, lo cual es de vital importancia a la hora de predecir catástrofes. En esta tesis se han desarrollado 2 algoritmos distintos, pero basados en la misma idea para el objetivo presentado. El primero está basado en las premisas de Packard sobre la predicción de sistemas dinámicos. La segunda es una idea completamente nueva, buscando una forma distinta de mejorar la primera aproximación. Ambos algoritmos se han usado sobre los mismos conjuntos de datos, obtenidos de campos completamente diferentes (series temporales artificiales, series reales, datos de bolsa, etc.), con unos resultados que mejoran, en la mayoría de los casos, los resultados de otros algoritmos clásicos avanzados de aprendizaje automático.-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------A classic problem in the Artificial Intelligence area has been the prediction of behaviors using a data set modelling those behaviors. As examples, we can consider Time Series, which represent with measures the behavior of a certain phenomenon along a time period. Another classic example is the price of the stocks in the stock market, considered as time series or as a function for certain parameters too. The main problem of most machine learning algorithms focuses on their search of a global approach to those prediction problems. That means, they try for create a model over the pattern set to predict another pattern. This is based on the idea that this approach is not the most indicated for all the problems, because not all the patterns present the same characteristics. For example, a system for tide forecasting that considers in the same category all the patterns, will not be as good as another system that separates the patterns into different sets representing different seasons, and then use those sets separately to extract the information and make predictions. Thus, our objective has been the search of intelligent algorithms that are not only able to predict, but also to find and classify the characteristics of each data subset, thus avoiding that task to the researcher. The advantage of the algorithms developed in this thesis are the abilities to search and learn on special subsets of the data set. This also allows the algorithms to find abnormal behaviors in the data, making different predictions for them. That is a matter of utter importance to predict catastrophes. In order to achieve our objective, two different algorithms have been developed and both are based on the same idea. The first one is based on the ideas of Packard about prediction on dynamical systems. Improving the first approach, we have developed the second one. Both algorithms have been tested on the same data sets, obtained from different domains (artificial time series, real time series, stock market, etc.) producing results that, in most cases, improve the results of other classic and advanced automatic learning algorithms

    Aproximación de funciones con redes neuronales y algoritmos evolutivos

    Get PDF
    Lo subo en calidad de coautor, ya que el asesor es profesor de asignatura y me autorizo subirlo, así mismo tengo la autorización del Alumno graduado de MaestríaEn este trabajo de investigación se aborda el problema de aproximación de funciones de energía finita, a través de un modelo de red neuronal artificial que involucra funciones wavelets y algoritmos evolutivos. La aproximación de funciones de energía finita es un problema de interés en varias áreas del conocimiento. Por ejemplo, en la aproximación de funciones que representan variables financieras como los índices de la bolsa de valores, o variables de fenómenos naturales, como la temperatura atmosférica y la energía solar. Los fenómenos descritos anteriormente (variables financieras y variables climáticas) por mencionar algunos, tienen en común el desconocimiento de una función explícita que las relacione con otras variables, por lo que su aproximación resulta relevante a fin de hacer estudios sobre el modelo generado. Uno de los modelos usados para aproximar funciones consiste en la descomposición en otras funciones conocidas tales que su combinación lineal minimice el error cuadrático medio. Así, en este trabajo se propone hacer una combinación lineal de funciones wavelets vinculadas según un modelo conexionista, en donde las funciones wavelets son generadas mediante el algoritmo en cascada a partir de filtros ortogonales de reconstrucción perfecta, y a través de escalamientos y traslaciones se aproxime una función objetivo. Al modelo propuesto se le ha llamado EPWavenets, como una abreviatura de la combinación de algoritmos evolutivos, parametrización de filtros, funciones wavelets y redes neuronales artificiales. De esta forma, se busca demostrar que es posible aproximar una función de energía finita con funciones wavelets generadas a partir de filtros paramétricos cuya combinación está determinada por la arquitectura de una red neuronal, en donde los parámetros de escalamiento y traslación, los pesos sinápticos y los parámetros de los filtros se determinan con un algoritmo evolutivo desde el punto de vista del aprendizaje supervisado. Para demostrar lo anterior se utilizó la siguiente metodología: 1. Revisar modelos de red neuronal existentes que sean susceptibles de modificar sus funciones base y ajustar sus parámetros para aproximar funciones 2. Proponer un modelo de red neuronal que permita incluir nuevas funciones base y ajustar sus parámetros en forma supervisada 3. Identificar propiedades y familias de funciones wavelet que puedan incorporarse al modelo propuesto 4. Identificar un algoritmo evolutivo para ajustar los parámetros del modelo de red neuronal propuesto 5. Identificar un conjunto de funciones de prueba para comparar los resultados con otras redes neuronales con diferentes funciones base 6. Generar tablas comparativas y gráficas en donde se aprecie la comprobación de la hipótesis planteada a partir de los resultados experimentales Los resultados experimentales sustentan la hipótesis, indicando que es posible usar funciones wavelets con filtros paramétricos para aproximar funciones de energía finita, en una arquitectura de red neuronal. También se pudo confirmar que sí fue posible usar algoritmos evolutivos en EPWavenets para optimizar los parámetros libres, a efecto de minimizar el error de aproximación. Derivado de los resultados se concluye que las EPWavenets logran un alto grado de adaptabilidad y un desempeño competitivo respecto a otras redes neuronales que involucran funciones de base radial sobre un conjunto de funciones de prueba. .CONACy
    corecore