Abstract

The meta-heuristic search algorithms have been widely applied to solve the various science and engineering optimization problems. However, the performance of these algorithms is highly sensitive toward the number of objective functions and number of decision variables. Recently, it has been explored by the researchers that the performance of such algorithm degrades when the number of objective functions and decision variables increases by some limit. Hence, these algorithms can be hardly acceptable to the real-world optimization problems such as software module clustering problem (SMCP), which contains a large number of objective functions and decision variables. Previous researchers have proposed several approaches to address the many-objective optimization problems by revising existing meta-heuristic algorithms. Recently, an artificial bee colony algorithm (ABC), a meta-heuristic algorithm, effectively used to address the several multi-objective optimization problems. Even though in most of the cases ABC algorithm performs better compared to other meta-heuristic algorithms, it faces the same problems as other meta-heuristic algorithms for a large number of objective functions and decision variables. This paper proposes a many-objective artificial bee colony (MaABC) algorithm to solve many-objective SMCPs. In this contribution, we revised the original ABC by using, quality indicator, $$L_{p}$$ -norm-based (p < 1) distances, and two external archives concepts. To validate the proposed approach, an extensive comparative study is performed with the existing many-objective optimization algorithms (i.e., Two-Arch2, NSGA-III, MOEA/D, and IBEA) over seven SMCPs. The statistical analysis of the results show that the proposed MaABC outperforms existing many-objective approaches in terms of modularization quality (MQ), cohesion, coupling, and inverted generational distance (IGD).

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call