An Ant Colony Optimization Approach to the Software Release Planning with Dependent Requirements

  • Jerffeson Teixeira de Souza
  • Camila Loiola Brito Maia
  • Thiago do Nascimento Ferreira
  • Rafael Augusto Ferreira do Carmo
  • Márcia Maria Albuquerque Brasil
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6956)

Abstract

Ant Colony Optimization (ACO) has been successfully employed to tackle a variety of hard combinatorial optimization problems, including the traveling salesman problem, vehicle routing, sequential ordering and timetabling. ACO, as a swarm intelligence framework, mimics the indirect communication strategy employed by real ants mediated by pheromone trails. Among the several algorithms following the ACO general framework, the Ant Colony System (ACS) has obtained convincing results in a range of problems. In Software Engineering, the effective application of ACO has been very narrow, being restricted to a few sparse problems. This paper expands this applicability, by adapting the ACS algorithm to solve the well-known Software Release Planning problem in the presence of dependent requirements. The evaluation of the proposed approach is performed over 72 synthetic datasets and considered, besides ACO, the Genetic Algorithm and Simulated Annealing. Results are consistent to show the ability of the proposed ACO algorithm to generate more accurate solutions to the Software Release Planning problem when compared to Genetic Algorithm and Simulated Annealing.

Keywords

Ant Colony Optimization Search Based Software Engineering Software Release Planning 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Harman, M.: The Current State and Future of Search Based Software Engineering. In: Proc. of International Conference on Software Engineering / Future of Software Engineering 2007 (ICSE/FOSE 2007), pp. 342–357. IEEE Computer Society, Minneapolis (2007)Google Scholar
  2. 2.
    Dorigo, M., Stutzle, T.: The Ant Colony Optimization Metaheuristic: Algorithms, Applications, and Advances. In: Glover, F., Kochenberger, G. (eds.) Handbook of Metaheuristics, Norwell, MA (2002)Google Scholar
  3. 3.
    Dorigo, M., Maniezzo, V., Colorni, A.: The Ant System: Optimization by a Colony of Cooperating Agents. IEEE Trans. Systems, Man Cybernetics, Part B 26(1), 29–41 (1996)CrossRefGoogle Scholar
  4. 4.
    Dorigo, M., Gambardella, L.M.: Ant Colony System: A Cooperative Learning Approach to the Traveling Salesman Problem. IEEE Trans. Evolutionary Computation 1(1), 53–66 (1997)CrossRefGoogle Scholar
  5. 5.
    Bianchi, L., Birattari, M., Chiarandini, M., Manfrin, M., Mastrolilli, M., Paquete, L., Rossi-Doria, O., Schiavinotto, T.: Metaheuristics for the vehicle routing problem with stochastic demands. In: Yao, X., Burke, E.K., Lozano, J.A., Smith, J., Merelo-Guervós, J.J., Bullinaria, J.A., Rowe, J.E., Tiňo, P., Kabán, A., Schwefel, H.-P. (eds.) PPSN 2004. LNCS, vol. 3242, pp. 450–460. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  6. 6.
    Gambardella, L.M., Dorigo, M.: Ant Colony System hybridized with a new local search for the sequential ordering problem. Informs. J. Comput. 12(3), 237 (2000)MathSciNetCrossRefMATHGoogle Scholar
  7. 7.
    Socha, K., Sampels, M., Manfrin, M.: Ant algorithms for the university course timetabling problem with regard to the state-of-the-art. In: Raidl, G.R., Cagnoni, S., Cardalda, J.J.R., Corne, D.W., Gottlieb, J., Guillot, A., Hart, E., Johnson, C.G., Marchiori, E., Meyer, J.-A., Middendorf, M. (eds.) EvoIASP 2003, EvoWorkshops 2003, EvoSTIM 2003, EvoROB/EvoRobot 2003, EvoCOP 2003, EvoBIO 2003, and EvoMUSART 2003. LNCS, vol. 2611, pp. 334–345. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  8. 8.
    Mahanti, P.K., Banerjee, S.: Automated Testing in Software Engineering: using Ant Colony and Self-Regulated Swarms. In: Proc. of the 17th IASTED International Conference on Modelling and Simulation (MS 2006), pp. 443–448. ACTA Press, Montreal (2006)Google Scholar
  9. 9.
    Chicano, F., Alba, E.: Ant Colony Optimization with Partial Order Reduction for Discovering Safety Property Violations in Concurrent Models. Information Processing Letters 106(6), 221–231 (2007)MathSciNetCrossRefMATHGoogle Scholar
  10. 10.
    del Sagrado, J., del Águila, I.M.: Ant Colony Optimization for requirement selection in incremental software development. In: Proc. of 1st International Symposioum on Search Based Software Engineering (SSBSE 2009), Cumberland Lodge, UK (2009), http://www.ssbse.org/2009/fa/ssbse2009_submission_30.pdf (fast abstracts)
  11. 11.
    del Sagrado, J., del Águila, I.M., Orellana, F.J.: Ant Colony Optimization for the Next Release Problem: A Comparative Study. In: Proc. of the 2nd International Symposium on Search Based Software Engineering (SSBSE 2010), Benevento, IT, pp. 67–76 (2010)Google Scholar
  12. 12.
    Karlsson, J., Olsson, S., Ryan, K.: Improved practical support for large-scale requirements prioritising. Requirements Engineering 2(1), 51–60 (1997)CrossRefGoogle Scholar
  13. 13.
    Bagnall, A., Rayward-Smith, V., Whittley, I.: The next release problem. Information and Software Technology 43(8), 883–890 (2001)CrossRefGoogle Scholar
  14. 14.
    Zhang, Y., Harman, M., Mansouri, S.A.: The multiobjective next release problem. In: Proc. of the 9th Annual Conference on Genetic and Evolutionary Computation, pp. 1129–1137. ACM Press, New York (2007)Google Scholar
  15. 15.
    Greer, D., Ruhe, G.: Software release planning: an evolutionary and iterative approach. Information & Technology 46(4), 243–253 (2004)Google Scholar
  16. 16.
    Holland, J.: Adaptation in natural and artificial systems. Univ. of Michigan Press (1975)Google Scholar
  17. 17.
    Kirkpatrick, S., Gelatt, Jr., C.D., Vecchi, M.P.: Optimization by simulated annealing. Science 220, 671–680 (1983)MathSciNetCrossRefMATHGoogle Scholar
  18. 18.
    Alaya, I., Solnon, G., Ghedira, K.: Ant algorithm for the multidimensional knapsack problem. In: Proc. of the International Conference on Bio-inspired Optimization Methods and their Applications (BIOMA 2004), pp. 63–72 (2004)Google Scholar
  19. 19.
    Leguizamon, G., Michalewicz, Z.: A new version of Ant System for Subset Problem. In: Congress on Evolutionary Computation, pp. 1459–1464 (1999)Google Scholar
  20. 20.
    Fidanova, S.: Evolutionary Algorithm for Multidimensional Knapsack Problem. In: PPSNVII- Workshop (2002)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Jerffeson Teixeira de Souza
    • 1
  • Camila Loiola Brito Maia
    • 1
  • Thiago do Nascimento Ferreira
    • 1
  • Rafael Augusto Ferreira do Carmo
    • 1
  • Márcia Maria Albuquerque Brasil
    • 1
  1. 1.Optimization in Software Engineering Group (GOES.UECE)State University of Ceará (UECE)FortalezaBrazil

Personalised recommendations