A kidney algorithm with elitism for combinatorial testing problem - Bahomaid, Ameen A.; Alsewari, Abdulrahman A.; Kamal Z., Zamli; Alhendawi, Kamal M.; Al-Janabi, Ala Aldeen (Association for Computing Machinery, 2020)
Testing software is an important activity before delivering the software with high quality. Among the various approaches for software testing, Combinatorial interaction testing (CIT) is a proper and alternative testing approach for exhaustive testing that covers all possible interactions for a software's parameters. Generating an efficient test list with the optimal size is the most challenging problem in combinatorial interaction testing. Adopting Artificial Intelligence (AI) algorithms as the main algorithm for CIT strategies to generate the most optimal test lists. Kidney algorithm (KA) is a recent computational AI algorithm with sufficient optimization capability which outperforms the other AI algorithms (such as Genetic Algorithm (GA), Cuckoo Search (CS), Particle Swarm Optimization (PSO), Harmony Search (HS)) from some aspects. Although, KA may be easy to fall into local optima by keeping the worst solutions from the past generation as a new population with the best solutions. This study proposes to embed the elitism in the KA to preserve only the best solutions and swap the worsts by the new random solutions. Experimental results have been evidence that the proposed CIT strategy which called elitist KA Strategy (eKAS) produced sufficiently competitive results as compared with the original KA as well the existing CIT strategies.