Please use this identifier to cite or link to this item: http://ri.ufs.br/jspui/handle/riufs/11610
Document Type: Dissertação
Title: Otimização com muitos objetivos por evolução diferencial aplicada ao escalonamento dinâmico de projeto de software
Authors: Rezende, Allan Vinicius
Issue Date: 5-Jul-2019
Advisor: Silva, Leila Maciel de Almeida e
Resumo : Os problemas da Engenharia de Software geralmente envolvem problemas com vários objetivos e restrições, muitas vezes conflitantes entre si. Uma tendência para a solução destes problemas é o uso de algoritmos de busca e otimização para encontrar soluções de forma automática que balanceiem estes objetivos. Neste trabalho investigamos um problema na área de planejamento de software, a saber, o Problema de Escalonamento de Projetos de Software (em inglês, Software Project Scheduling Problem - SPSP), o qual visa alocar pessoas a tarefas em um projeto de software de forma a otimizar alguns objetivos, como por exemplo, o custo e a duração do projeto. Existem duas variações principais para este problema: a estática e a dinâmica. No SPSP estático o planejamento é realizado apenas no início do projeto, e os únicos objetivos a serem otimizados são o custo e a duração do projeto. O modelo dinâmico, chamado de DSPSP, considera que o ambiente de projetos de software está sujeito a incertezas, e o projeto pode precisar ser reescalonado ao longo do ciclo de desenvolvimento do software. Na abodargem dinâmica, muitos objetivos precisam ser otimizados, como o custo, a duração, a estabilidade e a robustez do cronograma, frente às mudanças que podem ocorrer durante o ciclo de desenvolvimento do projeto. O modelo dinâmico ainda é pouco explorado na literatura. Este trabalho propõe uma extensão do modelo dinâmico existente na literatura, pela consideração de mais dois eventos dinâmicos e da influência da experiência da equipe. O cerne principal do trabalho é a investigação da adequabilidade do algoritmo de otimização com muitos objetivos por evolução diferencial ao problema de escalonamento dinâmico de projetos de software, considerando o modelo proposto. Como o DSPSP envolve otimização dinâmica, seis variantes do algoritmo de evolução diferencial foram investigadas, cada uma delas contemplando uma ou mais técnicas de otimização dinâmica. O algoritmo de evolução diferencial e suas variantes foram comparados ao algoritmo evolucionário NSGA-III, também ainda não explorado para o DSPSP. Para a análise dos algoritmos investigados foi realizada uma bateria de experimentos. Os resultados sugerem que o algoritmo de evolução diferencial com técnicas de otimização dinâmica fornece melhores soluções para o DSPSP.
Abstract: Software Engineering problems often involve problems with many objectives and constraints, in most cases conflicting with each other. One trend toward solving these problems is the use of search and optimization algorithms to find solutions that automatically balance these objectives. In this work, we investigate a problem in the area of software planning, namely, the Software Project Scheduling Problem (SPSP), which aims to allocate people to tasks in a software project in order to optimize some objectives, such as project cost and duration. There are two main variations to this problem: static and dynamic. In static SPSP, the planning is done only at the beginning of the project, and the objectives to be optimized are project cost and duration. The dynamic model, called DSPSP, considers that the software project environment is susceptible to uncertainties, and the project may need to be rescheduled throughout the software development cycle. In dynamic approach, many objectives need to be optimized, such as cost, duration, stability and robustness of the schedule, to deal with the changes that may occur during the project development cycle. The dynamic model is still few explored in the literature. This work proposes an extension of the existing dynamic model in the literature, by considering two more dynamic events and the influence of team experience. The main focus of the work is the investigation of the suitability of the algorithm of optimization with many objectives by di erential evolution to the dynamic software project scheduling problem, considering the proposed model. Since the DSPSP involves dynamic optimization, six variants of the di erential evolution algorithm were investigated, each of them comprising one or more dynamic optimization techniques. The di erential evolution algorithm and its variants were compared to the evolutionary algorithm NSGA-III, also not yet explored for DSPSP. For the analysis of the algorithms investigated a battery of experiments was carried out. The results suggest that the di erential evolution algorithm with dynamic optimization techniques provides a better solutions for DSPSP.
Keywords: Computação
Escalonamento de projeto de software
Otimização com muitos objetivos
Evolução diferencial
Search-based software engineering
Software project scheduling problem
Diferential evolution
Subject CNPQ: CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Language: por
Institution: UFS
Program Affiliation: Pós-Graduação em Ciência da Computação
Citation: REZENDE, Allan Vinicius. Otimização com muitos objetivos por evolução diferencial aplicada ao escalonamento dinâmico de projeto de software. 2019. 181 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Sergipe, São Cristóvão, SE, 2019.
URI: http://ri.ufs.br/jspui/handle/riufs/11610
Appears in Collections:Mestrado em Ciência da Computação

Files in This Item:
File Description SizeFormat 
ALLAN_VINICIUS_REZENDE.pdf6,38 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.