Búsqueda avanzada

Resultados de búsqueda para multi-objective optimization

Injecting domain knowledge in multi-objective optimization problems:A semantic approach

In the field of complex problem optimization with metaheuristics, semantics has been used for modeling different aspects, such as: problem characterization, parameters, decision-maker’s preferences, or algorithms. However, there is a lack of approaches where ontologies are applied in a direct way into the optimization process, with the aim of enhancing it by allowing the systematic incorporation of additional domain knowledge. This is due to the high level of abstraction of ontologies, which makes them difficult to be mapped into the code implementing the problems and/or the specific operators of metaheuristics. In this paper, we present a strategy to inject domain knowledge (by reusing existing ontologies or creating a new one) into a problem implementation that will be optimized using a metaheuristic. Thus, this approach based on accepted ontologies enables building and exploiting complex computing systems in optimization problems. We describe a methodology to automatically induce user choices (taken from the ontology) into the problem implementations provided by the jMetal optimization framework. With the aim of illustrating our proposal, we focus on the urban domain. Concretely, we start from defining an ontology representing the domain semantics for a city (e.g., building, bridges, point of interest, routes, etc.) that allows defining a-priori preferences by a decision maker in a standard, reusable, and formal (logic-based) way. We validate our proposal with several instances of two use cases, consisting in bi-objective formulations of the Traveling Salesman Problem (TSP) and the Radio Network Design problem (RND), both in the context of an urban scenario. The results of the experiments conducted show how the semantic specification of domain constraints are effectively mapped into feasible solutions of the tackled TSP and RND scenarios. This proposal aims at representing a step forward towards the automatic modeling and adaptation of optimization problems guided by semantics, where the annotation of a human expert can be now considered during the optimization process.

Autores: Cristobal Barba-Gonzalez / Antonio J. Nebro / José García-Nieto / Maria Del Mar Roldan-Garcia / Ismael Navas-Delgado / Jose F Aldana Montes / 
Palabras Clave: Decision Making - domain knowledge - Metaheuristics - multi-objective optimization - Ontology - Semantic web technologies

Resource optimization of container orchestration: a case study in multi-cloud microservices-based applications (Summary)

Los microservicios han resultado ser un nuevo paradigma de programación adoptado ampliamente durante los últimos años. Consiste en desarrollar una aplicación mediante un conjunto de servicios ligeros e independientes que pueden desplegarse y escalarse en múltiples proveedores de cloud (multicloud). El uso de múltiples proveedores puede suponer una mayor ventaja en términos de coste y disponibilidad, entre otras, pero también conlleva riesgos asociados con la degradación del servicio. Por ello, el uso de políticas de asignación de recursos es importante para mitigar estos inconvenientes.

Este trabajo propone el uso de un algoritmo genético (Non-dominated Sorting Genetic Algorithm II, NSGA-II) para optimizar la asignación de microservicios a máquinas virtuales de cada uno de los proveedores, de forma que se consiga minimizar las siguientes métricas: el coste de despliegue; los tiempos de comunicación entre los microservicos de una misma aplicación debido a despliegues en distintos proveedores de cloud; y el tiempo medio de recuperación, es decir, el tiempo entre la caída y despliegue de una nueva instancia vuelva a estar operativa.

Mediante la simulación de distintos experimentos, hemos probado que la asignación de recursos con NSGA-II obtiene una mejor minimización de los objetivos evaluados junto a una mayor diversidad de soluciones de asignación de recursos, en comparación con un algoritmo voraz. Por tanto, el trabajo concluye que el uso del algoritmo genético (NSGA-II) es adecuado para mejorar la asignación de microservicios y máquinas virtuales en entornos multicloud.

Autores: Carlos Guerrero / Isaac Lera / Carlos Juiz / 
Palabras Clave: Cloud Computing - Container orchestration - Genetic algorithm - microservices - multi-objective optimization

Predicción del impacto de las transformaciones LLVM en el rendimiento del software

Tradicionalmente ha existido una rápida evolución del hardware de computación que, en los últimos años, se ha visto complementada con la aparición de una gran diversidad de arquitecturas hardware. Modificar el software para que funcione eficientemente en estas nuevas arquitecturas es un proceso muy costoso, pero necesario en muchos casos. Por tanto, es necesario el desarrollo de nuevos métodos que permitan adaptar los programas para ejecutarse eficientemente en cualquier hardware; en poco tiempo y a un bajo coste. Nuestro framework Faevol hace uso de las transformaciones de código de herramienta de compilación LLVM para realizar esta adaptación de forma automática. El impacto de dichas transformaciones en el rendimiento del programa es desconocido, puesto que depende enormemente de las otras transformaciones aplicadas, así como del software a optimizar y del hardware en el que se ejecuta. Esto complica enormemente el proceso. En este trabajo, desarrollamos dos modelos predictivos basados en aprendizaje computacional para estimar de forma precisa el impacto de una secuencia de transformaciones LLVM en el código de un programa software. Adicionalmente, se evalúa el impacto en los resultados de incorporar dichos modelos predictivos en Faevol, logrando mejorar notablemente el tiempo necesario para transformar el código sin impactar negativamente en los resultados obtenidos.

Autores: Juan Carlos de La Torre / Patricia Ruiz / Pedro L. Galindo / Bernabe Dorronsoro / 
Palabras Clave: Artificial neural networks - LLVM - multi-objective optimization - Software optimization

Interactive multi-objective evolutionary optimization of software architectures

While working on a software specification, designers usually need to evaluate different architectural alternatives to be sure that quality criteria are met. Even when these quality aspects could be expressed in terms of multiple software metrics, other qualitative factors cannot be numerically measured, but they are extracted from the engineers know-how and prior experiences. In fact, detecting not only strong but also weak points in the different solutions seems to fit better with the way humans make their decisions. Putting the human in the loop brings new challenges to the search-based software engineering field, especially for those human-centered activities within the early analysis phase. This paper explores how the interactive evolutionary computation can serve as a basis for integrating the humans judgment into the search process. An interactive approach is proposed to discover software architectures, in which both quantitative and qualitative criteria are applied to guide a multi-objective evolutionary algorithm. The obtained feedback is incorporated into the fitness function using architectural preferences allowing the algorithm to discern between promising and poor solutions. Experimentation with real users has revealed that the proposed interaction mechanism can effectively guide the search towards those regions of the search space that are of real interest to the expert.Publicado en: Information Sciences, vol. 463-464, pp. 92-109. 2018. DOI: IF(2017): 4.305 [12/148, Information Systems (Q1)]

Autores: Aurora Ramírez / José Raúl Romero / Sebastián Ventura / 
Palabras Clave: interactive evolutionary computation - multi-objective optimization - search-based software design - software architecture discovery

Evolutionary composition of QoS-aware web services: A many-objective perspective

Web service based applications often invoke services provided by third-parties in their workflow. The Quality of Service (QoS) provided by the invoked supplier can be expressed in terms of the Service Level Agreement specifying the values contracted for particular aspects like cost or throughput, among others. In this scenario, intelligent systems can support the engineer to scrutinise the service market in order to select those candidates that best fit with the expected composition focusing on different QoS aspects. This search problem, also known as QoS-aware web service composition, is characterised by the presence of many diverse QoS properties to be simultaneously optimised from a multi-objective perspective. Nevertheless, as the number of QoS properties considered during the design phase increases and a larger number of decision factors come into play, it becomes more difficult to find the most suitable candidate solutions, so more sophisticated techniques are required to explore and return diverse, competitive alternatives. With this aim, this paper explores the suitability of many objective evolutionary algorithms for addressing the binding problem of web services on the basis of a real-world benchmark with 9 QoS properties. A complete comparative study demonstrates that these techniques, never before applied to this problem, can achieve a better trade-off between all the QoS properties, or even promote specific QoS properties while keeping high values for the rest. In addition, this search process can be performed within a reasonable computational cost, enabling its adoption by intelligent and decision-support systems in the field of service oriented computation.Publicado en: Expert Systems with Applications, vol. 72, pp.357-370. 2017. DOI: 3,928 [18/133 Artificial Intelligence] (Q1).

Autores: Aurora Ramírez / José Antonio Parejo / José Raúl Romero / Sergio Segura / Antonio Ruiz-Cortés / 
Palabras Clave: many-objective evolutionary algorithms - multi-objective optimization - QoS-aware web service composition

No encuentra los resultados que busca? Prueba nuestra Búsqueda avanzada