\documentclass{article}


% if you need to pass options to natbib, use, e.g.:
%     \PassOptionsToPackage{numbers, compress}{natbib}
% before loading maeb_2025


% ready for submission
%\usepackage{maeb_2025}



% to compile a preprint version, e.g., for submission to arXiv, add add the
% [preprint] option:
\usepackage[preprint]{maeb_2025}


% to compile a camera-ready version, add the [final] option, e.g.:
%     \usepackage[final]{maeb_2025}


% to avoid loading the natbib package, add option nonatbib:
%    \usepackage[nonatbib]{maeb_2025}


\usepackage[utf8]{inputenc} % allow utf-8 input
\usepackage[T1]{fontenc}    % use 8-bit T1 fonts
\usepackage{hyperref}       % hyperlinks
\usepackage{url}            % simple URL typesetting
\usepackage{booktabs}       % professional-quality tables
\usepackage{amsfonts}       % blackboard math symbols
\usepackage{nicefrac}       % compact symbols for 1/2, etc.
\usepackage{microtype}      % microtypography
\usepackage{xcolor}         % colors


%customs
\bibliographystyle{plain}      % Choose a bibliography style (plain, alpha, etc.)
\usepackage{adjustbox}
\usepackage{svg}
\usepackage{subfig}
\usepackage{placeins}
\renewcommand{\refname}{Referencias}

\title{FEDA-NRP: Un algoritmo de estimación de distribuciones multivariado y de estructura fija para resolver el problema de la próxima versión multiobjetivo con interacciones entre requisitos}
%A fixed-structure multivariate estimation of distribution algorithm to solve the multi-objective Next Release Problem with requirements interactions}


% The \author macro works with any number of authors. There are two commands
% used to separate the names and addresses of multiple authors: \And and \AND.
%
% Using \And between authors leaves it to LaTeX to determine where to break the
% lines. Using \AND forces a line break at that point. So, if LaTeX puts 3 of 4
% authors names on the first line, and the last on the second line, try using
% \AND instead of \And before the third author name.


% TODO: FALTA METER LA AFFILIATION bien
%  Department of Computing System, Intelligent Systems and Data Mining Laboratory (I3A)\\
 % Universidad de Castilla-La Mancha\\
  %Albacete, 02071, Spain\\

% guarreria para meter la affiliation en un footnote:
\newcommand*\samethanks[1][\value{footnote}]{\footnotemark[#1]}

\author{%
  Víctor Pérez-Piqueras\thanks{
  Departamento de Sistemas Informáticos (DSI, ESII), Grupo de Sistemas Inteligentes y Minería de Datos (I3A), Universidad de Castilla-La Mancha, Albacete, 02071, Spain} \\
  \texttt{victor.perezpiqueras@uclm.es} \\
  \And
  Pablo Bermejo\samethanks \\
  \texttt{pablo.bermejo@uclm.es} \\
  \And
  José A. Gámez\samethanks \\
  \texttt{jose.gamez@uclm.es} \\
}


\begin{document}


\maketitle

%\footnotetext{Este trabajo de tipo {\em keywork} corresponde a la publicación \cite{EAAI23}}
%\footnotetext{{\bf Agradecimientos}: Trabajo financiado por el Gobierno de CLM, la UCLM y los Fondos Europeos, UE, mediante los proyectos SBPLY/21/180225/000062 y 2022-GRIN-34437}

\begin{abstract}
    El problema de la siguiente versión (Next Release Problem) implica seleccionar el subconjunto óptimo de requisitos para una versión de software con el objetivo de maximizar la satisfacción de los agentes interesados mientras se minimiza el coste de desarrollo, considerando las dependencias entre requisitos. En un trabajo publicado recientemente \cite{EAAI23} y aquí resumido, se propone un enfoque de optimización biobjetivo con restricciones utilizando un Algoritmo de Estimación de Distribución (EDA) que incorpora conocimiento del dominio. Se utiliza una red Bayesiana con una estructura fija para modelar las dependencias, reduciendo la complejidad de búsqueda y asegurando soluciones válidas. Además, se han generado datasets sintéticos con estimaciones de costes basadas en proyectos tanto ágiles como clásicos para evaluar el enfoque. Los resultados muestran que el método propuesto supera a otros algoritmos de optimización multiobjetivo en datasets complejos.
\end{abstract}




\section{Introducción}
Los proyectos software siguen un ciclo de vida estructurado que incluye la obtención, selección, diseño, implementación y pruebas de un conjunto de requisitos. Para abordar la complejidad y el alto consumo de tiempo de estas fases, la Ingeniería del Software Basada en Búsqueda (SBSE) reformula problemas de software en forma de tareas de optimización, permitiendo el uso de metaheurísticas como los algoritmos genéticos, algoritmos de estimación de distribución (EDAs), etc. %\cite{libro_EDAs}.

Este trabajo se centra en el Problema de la Próxima Versión (NRP) \cite{Bagnall01}, un problema clave en SBSE que optimiza la selección de requisitos para una versión de software, equilibrando costes, satisfacción de los interesados y dependencias. El NRP es relevante tanto en metodologías clásicas como ágiles, donde requiere reevaluaciones frecuentes. Tradicionalmente, el NRP se ha abordado con optimización multiobjetivo. La versión multiobjetivo del Problema  de la Próxima Versión (MONRP) \cite{Zhang07} se define mediante un conjunto de requisitos candidatos $R=\{r_1,\dots,r_n\}$, solicitados por clientes $C=\{c_1,\dots,c_m\}$. Cada requisito tiene un coste $E=\{e_1,\dots,e_n\}$ y una importancia asignada por los clientes, almacenada en una matriz $v_{ij}$. La satisfacción total de un requisito $r_j$ es $s_j = \sum_{i=1}^m{w_i \times v_{ij}}$, donde $w_i$ representa la importancia del cliente $c_i$. El MONRP busca un subconjunto de requisitos $X \subseteq R$ que maximice la satisfacción de los clientes $S(X) = \sum_{j \in X}s_j$ y minimice el costo de desarrollo $E(X) = \sum_{j \in X}e_j$. Además, deben respetarse restricciones de dependencia, como la implicación entre requisitos ($r_i\Rightarrow r_j$).
 
En la literatura, el MONRP se ha resuelto frecuentemente mediante métodos metaheurísticos como ACO, PSO y NSGA-II \cite{Sagrado15, Chaves15}, pero los EDAs han sido poco explorados \cite{PerezPiqueras22b}.

%%

\section{Propuesta}

En \cite{EAAI23} proponemos FEDA-NRP, un algoritmo de optimización biobjetivo basado en un EDA multivariado, diseñado para resolver el problema de la próxima versión multiobjetivo (MONRP). Este algoritmo aprovecha el conocimiento del dominio mediante una red Bayesiana de estructura fija que modela las dependencias entre requisitos utilizando un grafo acíclico dirigido (DAG). Esta estrategia evita el coste del aprendizaje estructural, lo que mejora la eficiencia y garantiza soluciones válidas. Además, se emplea un modelo probabilístico basado en puertas {\em leaky binary noisy-OR} \cite{noisyOR_2001}, lo que reduce la complejidad espacial y de aprendizaje a la de un EDA univariado.

El proceso de FEDA-NRP sigue una estrategia PAES (Pareto Archived Evolutionary Strategy) y consta de varias etapas clave: inicialización del modelo probabilístico, muestreo de individuos según un orden ancestral, evaluación de soluciones y actualización del conjunto de soluciones no dominadas (NDS). La actualización de parámetros se realiza mediante estimación de máxima verosimilitud (MLE), manteniendo la probabilidad de selección para evitar convergencia prematura. El algoritmo mantiene dos archivos de soluciones NDS: uno global y otro local, usados para actualizar el modelo probabilístico en cada iteración. Su funcionamiento se ilustra en la Figura \ref{fig:feda_diagram}.

%Las principales contribuciones de FEDA-NRP incluyen: (i) el desarrollo de un algoritmo de optimización biobjetivo que integra explícitamente las dependencias entre requisitos; (ii) la creación de un corpus público de datasets con distintos niveles de complejidad y estimaciones de costes; (iii) un análisis comparativo exhaustivo entre FEDA-NRP y algoritmos de vanguardia; y (iv) la disponibilidad pública del código y los datos asociados a FEDA-NRP, lo que facilita la reproducibilidad y futuras investigaciones en el área.



\begin{figure}[tbp]
  
  \centering
  \adjustbox{trim=0cm 0cm 0cm 0cm}{
  \includesvg[scale=0.4]{"figs/feda"}
  }
  \caption{\textcolor{black}{Diagrama de alto nivel de FEDA-NRP}}\label{fig:feda_diagram}
  
\end{figure}




\section{Resultados}

La experimentación arranca con la creación de un corpus público de datasets con distintos niveles de complejidad y estimaciones de costes. Se compara FEDA contra tres EDAs (UMDA, PBIL y MIMIC) y dos algoritmos genéticos multiobjetivo propuestos en trabajos recientes (AGE-MOEA-II y C-TAEA). Utilizando sus mejores configuraciones de hiperparámetros, se ejecutan 30 veces en 14 conjuntos de datos. El proceso de evaluación se realiza sobre un conjunto de soluciones no dominadas (\(NDS_{archive}\)), seleccionado mediante una normalización min-max de los valores de satisfacción y coste, y usando un punto de referencia común para calcular el Hipervolumen (HV). Para una comparación justa, se seleccionan 10 soluciones del \(NDS_{archive}\) de cada algoritmo mediante un proceso de selección greedy basado en HV. Además, se utilizan varios indicadores de calidad como HV, Distancia Generacional (GD+), \(\Delta\)-Spread y Ratio de soluciones No Dominadas respecto al Frente de Referencia (UNFR), que permiten evaluar la convergencia, dispersión, uniformidad y contribución de cada algoritmo al frente no dominado de referencia. Los resultados se promedian sobre las 30 ejecuciones, asegurando la reproducibilidad de los experimentos mediante el uso de un entorno de ejecución consistente. El código y datos utilizados está disponible en un repositorio público\footnote{https://github.com/UCLM-SIMD/MONRP/tree/eng\_app\_ai23}, lo que garantiza la transparencia y replicabilidad del estudio.


\begin{figure}[tbp]
  \centering
  \begin{minipage}{0.48\linewidth}
    \centering
    \includesvg[scale=0.48]{"figs/HV-algorithms"}
   \caption{Hipervolumen medio en datasets con el mismo número de requisitos.}
    \label{fig:hv_algorithms}
  \end{minipage}
  \hfill
  \begin{minipage}{0.48\linewidth}
    \centering
    \adjustbox{trim=1cm 0cm 0cm 0cm}{
      \includesvg[scale=0.4]{"figs/linePareto0_d3"}
    }
      \caption{Indicador visual de las búsquedas de algoritmos para el conjunto de datos \textit{d3}.}
    \label{fig:scatter_d3}
  \end{minipage}
\end{figure}

En los experimentos realizados, FEDA-NRP mostró un rendimiento sobresaliente en términos de la métrica de HV (ver Figura \ref{fig:hv_algorithms}), siendo el mejor algoritmo para conjuntos de datos con un alto número de requisitos ($|R| \geq 200$), alcanzando el mayor HV en todos los casos, excepto en uno (a4, 200 requisitos, HV = 0.802 vs. 0.805 de MIMIC). En cuanto a las métricas de calidad, AGE-MOEA-II$^a$ fue el mejor en términos de UNFR y GD+, mientras que UMDA$^a$ destacó en $\Delta$-Spread. Visualmente, FEDA-NRP fue capaz de explorar completamente el espacio de soluciones (ver Figura \ref{fig:scatter_d3}), encontrando soluciones cercanas al PRef (Frente de Pareto de Referencia) en zonas equilibradas y extremas, mientras que otros algoritmos como PBIL$^a$ y MIMIC$^a$ se centraron solo en un lado del espacio de Pareto (minimización de Coste o maximización de Satisfacción). Además, FEDA-NRP mostró un rendimiento significativamente mejor que C-TAEA$^a$, AGE-MOEA-II$^a$ y MIMIC$^a$ en términos de tiempo de ejecución, siendo aproximadamente 12 veces más rápido que C-TAEA$^a$ y 5 veces más rápido que AGE-MOEA-II$^a$, lo que lo convierte en la opción más eficiente y efectiva para resolver el MONRP en proyectos con requisitos complejos.\\


\textbf{Agradecimientos.} Trabajo financiado por el Gobierno de Castilla-La Mancha, la UCLM y los Fondos Europeos, UE, mediante los proyectos SBPLY/21/180225/000062 y 2022-GRIN-34437.


%\section*{References}
\FloatBarrier
%\bibliography{bibliography}

\begin{thebibliography}{1}

\bibitem{Bagnall01}
Anthony~J. Bagnall, Victor~J. Rayward-Smith, and Ian~M. Whittley.
\newblock The next release problem.
\newblock {\em Information \& Software Technology}, 43(14):883--890, 2001.

\bibitem{Chaves15}
Jose~M. Chaves-Gonzalez, Miguel Perez-Toledano, and Amparo Navasa.
\newblock Software requirement optimization using a multiobjective swarm intelligence evolutionary algorithm.
\newblock {\em Knowledge-Based Systems}, 83, 03 2015.

\bibitem{Sagrado15}
Jos{\'{e}} del Sagrado, Isabel del {\'{A}}guila, and FranciscoJ Orellana.
\newblock {Multi-objective ant colony optimization for requirements selection}.
\newblock {\em Empirical Software Engineering}, 20:577--610, 2015.

\bibitem{noisyOR_2001}
Agnieszka Onisko, Marek~J. Druzdzel, and Hanna Wasyluk.
\newblock Learning {B}ayesian network parameters from small data sets: application of noisy-or gates.
\newblock {\em International Journal of Approximate Reasoning}, 27(2):165--182, 2001.

\bibitem{PerezPiqueras22b}
V{\'i}ctor P{\'e}rez-Piqueras, Pablo~Bermejo L{\'o}pez, and Jos{\'e}~A. G{\'a}mez.
\newblock Estimation of distribution algorithms applied to the next release problem.
\newblock In {\em 17th International Conference on Soft Computing Models in Industrial and Environmental Applications (SOCO 2022)}, Lecture Notes in Networks and Systems, pages 98--108. Springer, 2023.

\bibitem{EAAI23}
Víctor Pérez-Piqueras, Pablo Bermejo, and José~A. Gámez.
\newblock Feda-nrp: A fixed-structure multivariate estimation of distribution algorithm to solve the multi-objective next release problem with requirements interactions.
\newblock {\em Engineering Applications of Artificial Intelligence}, 124:106555, 2023.

%\bibitem{Souza11}
%Jerffeson Souza, Camila Maia, Thiago Ferreira, Rafael Carmo, and Marcia Brasil.
%\newblock An ant colony optimization approach to the software release planning with dependent requirements.
%\newblock pages 142--157, 09 2011.

\bibitem{Zhang07}
Yuanyuan Zhang, Mark Harman, and S~Afshin.
\newblock The multi-objective next release problem.
\newblock In {\em Proceeding of the 9th annual conference on Genetic and Evolutionary Computation}, pages 1129--1137, 2007.

\end{thebibliography}



\end{document}