VOLVER

Share

Un algoritmo basado en la Teoría de la Evolución para diseñar programas informáticos complejos

Fuente: Universidad de Córdoba


15 de junio de 2015
Los investigadores José Raúl Romero (izquierda), Aurora Ramírez y Sebastián Ventura, en la sala de trabajo del grupo KDIS, de la Universidad de Córdoba

Los investigadores José Raúl Romero (izquierda), Aurora Ramírez y Sebastián Ventura, en la sala de trabajo del grupo KDIS, de la Universidad de Córdoba

Espacios de trabajo con muchos empleados y recursos, como por ejemplo unos grandes almacenes o una fábrica, suelen emplear programas informáticos bastante complejos para sus gestiones de logística, distribución o venta, por ejemplo, con diferentes módulos y funcionalidades interconectados. Si surge un problema en algún punto de este sistema, generalmente se acude a ingenieros de Informática con mucha experiencia para solucionarlo o evitar que se expanda. El grupo de investigación KDIS (Knowlege Discovery and Intelligent Systems) de la Universidad de Córdoba ha propuesto una alternativa a la figura del preciado especialista: la inteligencia artificial. Han diseñado un algoritmo que es capaz de sugerir la solución más eficiente para resolver el problema informático. Es la primera vez que, para la resolver estas dificultades, se emplea un algoritmo evolutivo, llamado así porque su funcionamiento está basado en la Teoría de la Evolución.

Para afrontar el diseño de los denominados sistemas complejos de software y minimizar los errores que en estos puedan surgir, se requieren respuestas precisas y rápidas. Es fácil de imaginar la desesperación que podría cundir en unos grandes almacenes si hay un fallo desconocido en el sistema de venta o en un hospital si se bloquea la aplicación de citas. “Hoy en día, las grandes organizaciones que emplean este tipo de software complejo contrata a los mejores ingenieros de software para dar con la solución”, explica José Raúl Romero, del Departamento de Informática y Análisis Numérico de la Universidad de Córdoba e investigador del grupo KDIS. La alternativa a acudir a la experiencia del experto, “que por naturaleza es subjetivo y puede errar”, es explorar todas las opciones para dar con la solución idónea. Sin embargo, para realizar este tipo de análisis tan profundo se necesita tiempo, y, en muchas ocasiones, no se dispone de él. La propuesta de este equipo de científicos, el uso de inteligencia artificial, aporta un abanico de buenas soluciones de una manera más rápida, “lo que lo convierte en la alternativa más eficiente”, subraya Aurora Ramírez, estudiante de doctorado.

El algoritmo está inspirado en cómo la vida se abre camino en la naturaleza: la evolución biológica. Los algoritmos evolutivos generan soluciones al azar, como surgen las variaciones en las nuevas generaciones de individuos en organismos vivos y se produce la evolución de las especies. El algoritmo este proceso evolutivo. Primero, selecciona una serie de soluciones para el problema dado. Entre estas soluciones candidatas tiene lugar un proceso similar al de la reproducción en la vida, cruzando a los padres para que produzcan hijos con diferentes características de sus progenitores. También pueden mutar directamente las soluciones para potenciar las características deseadas. “Como en la naturaleza, sobreviven los más adaptables y mejores, por lo que podemos hallar el resultado buscado”, indica el investigador principal del grupo KDIS, Sebastián Ventura.

Arquitectura software

El uso de técnicas de búsqueda para la resolución de problemas es uno de los planteamientos de los sistemas inteligentes, y una de las líneas de investigación del equipo que dirige Ventura. Empleada ya con éxito en robótica o en videojuegos, “este tipo de tecnología ofrece una solución teórica para que luego el técnico ofrezca soluciones específicas”, indica el responsable del grupo de investigación. Actuando como apoyo, la inteligencia artificial puede ayudar especialmente a ingenieros noveles, a los que les falta experiencia. En todo caso, ahorra cálculos de variables en la búsqueda de soluciones a estos difíciles problemas.

En la búsqueda de un problema en software complejo, los ingenieros informáticos tienen que acudir a la raíz, que es la arquitecturasoftware. La arquitectura software es la base sobre la que se asienta todo el sistema, sus módulos y sus funcionalidades. El algoritmo de inteligencia artificial busca el origen del problema en las diferentes partes de la aplicación y descubre esta arquitectura software.

Por este motivo, una parte del estudio se basó en un análisis de sensibilidad, esto es, la configuración más adecuada del algoritmo. Ajustado el mismo, los ingenieros trabajaron en mejorar el rendimiento del algoritmo sobre un software complejo real y lo compararon con la respuesta de expertos. El balance, el diseño del algoritmo y material adicional ha sido publicado en una web específica. El trabajo de investigación es recogido por la revista Information Sciences.

Aurora Ramírez, José Raúl Romero, Sebastián Ventura; ‘An approach for the evolutionary discovery of software architectures’;Information Sciences, volumen 305, 1 de junio de 2015, páginas 234–255.


Share

Últimas publicaciones

Descubre organizará más de 300 Cafés con Ciencia en Andalucía en los próximos 12 meses para acercar la investigación a la ciudadanía
Andalucía | 26 de julio de 2024

En su 15ª edición, esta actividad de divulgación científica contará con encuentros sobre salud mental, Cafés dedicados al colectivo LGTBI y un Café con Ciencia para conmemorar el Año Cajal dedicado a Ramón y Cajal. La organización de los Cafés con Ciencia se puede solicitar por correo electrónico cafeconciencia@fundaciondescubre.es hasta el 15 mayo de 2025.

Sigue leyendo
Patentan pastillas de soja biodegradables para el abono controlado de cultivos
Huelva, Sevilla | 25 de julio de 2024

Un equipo de investigación de las universidades de Sevilla y Huelva ha creado unas tabletas a partir de proteínas de soja que liberan progresivamente nutrientes a las plantas. El nuevo producto permite un crecimiento saludable, optimiza la producción agrícola y evita la contaminación de suelos y aguas subterráneas.

Sigue leyendo
Muestran la escasa importancia del mosquito tigre en la transmisión de la malaria aviar
Sevilla | 25 de julio de 2024

El equipo científico, formado por expertos de la Estación Biológica de Doñana (EBD-CSIC), del Consejo Superior de Investigaciones Científicas (CSIC); la Universidad de Granada y el Nature Research Centre de Lituania ha analizado el papel de este díptero como vector de patógenos de la malaria aviar. El estudio apunta a la preferencia del mosquito tigre por alimentarse de mamíferos como una de las posibles causas de la baja relevancia en la dispersión de la enfermedad.

Sigue leyendo

#CienciaDirecta

Tu fuente de noticias sobre ciencia andaluza

Más información Suscríbete

Ir al contenido