Skip to main content
Erschienen in: Swarm Intelligence 2/2014

01.06.2014

Interactive ant colony optimization (iACO) for early lifecycle software design

verfasst von: Christopher L. Simons, Jim Smith, Paul White

Erschienen in: Swarm Intelligence | Ausgabe 2/2014

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Finding good designs in the early stages of the software development lifecycle is a demanding multi-objective problem that is crucial to success. Previously, both interactive and non-interactive techniques based on evolutionary algorithms (EAs) have been successfully applied to assist the designer. However, recently ant colony optimization was shown to outperform EAs at optimising quantitative measures of software designs with a limited computational budget. In this paper, we propose a novel interactive ACO (iACO) approach, in which the search is steered jointly by an adaptive model that combines subjective and objective measures. Results show that iACO is speedy, responsive and effective in enabling interactive, dynamic multi-objective search. Indeed, study participants rate the iACO search experience as compelling. Moreover, inspection of the learned model facilitates understanding of factors affecting users’ judgements, such as the interplay between a design’s elegance and the interdependencies between its components.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Fußnoten
1
The use of anthropocentric language is deliberate here, and mimics users’ vocal responses during interaction sessions.
 
Literatur
Zurück zum Zitat Albakour, M.-D., Kruschwitz, U., Nanas, N., Song, D., Fasli, M., & De Roeck, A. (2011). Exploring ant colony optimisation for adaptive interactive search. In Proceedings of Advances in Information Retrieval Theory. Lecture notes in computer science (Vol. 6931, pp. 213–224). Heidelberg: Springer. Albakour, M.-D., Kruschwitz, U., Nanas, N., Song, D., Fasli, M., & De Roeck, A. (2011). Exploring ant colony optimisation for adaptive interactive search. In Proceedings of Advances in Information Retrieval Theory. Lecture notes in computer science (Vol. 6931, pp. 213–224). Heidelberg: Springer.
Zurück zum Zitat Avigad, G., Moshaiov, A., & Brauner, N. (2005). Interactive concept-based search using MOEA: The hierarchical preference case. International Journal of Computational Intelligence, 2(3), 182–191. Avigad, G., Moshaiov, A., & Brauner, N. (2005). Interactive concept-based search using MOEA: The hierarchical preference case. International Journal of Computational Intelligence, 2(3), 182–191.
Zurück zum Zitat Belton, V., Branke, J., Eskelinen, P., Greco, S., Molina, J., Ruiz, F., et al. (2008). Interactive multiobjective optimization from a learning Perspective. In J. Branke, K. Deb, K. Miettinen, & R. Słowiński (Eds.), Multiobjective optimization: Interactive and evolutionary approaches (pp. 405–433). Heidelberg: Springer.CrossRef Belton, V., Branke, J., Eskelinen, P., Greco, S., Molina, J., Ruiz, F., et al. (2008). Interactive multiobjective optimization from a learning Perspective. In J. Branke, K. Deb, K. Miettinen, & R. Słowiński (Eds.), Multiobjective optimization: Interactive and evolutionary approaches (pp. 405–433). Heidelberg: Springer.CrossRef
Zurück zum Zitat Boudjeloud, L., & Poulet, F. (2005). Visual interactive evolutionary algorithm for high dimensional data clustering and outlier detection. In 9th Pacific-Asia Conference on Advances in Knowledge Discovery and Design (pp. 428–43). Heidelberg: Springer. Boudjeloud, L., & Poulet, F. (2005). Visual interactive evolutionary algorithm for high dimensional data clustering and outlier detection. In 9th Pacific-Asia Conference on Advances in Knowledge Discovery and Design (pp. 428–43). Heidelberg: Springer.
Zurück zum Zitat Bowman, M., Briand, L. C., & Labiche, Y. (2010). Solving the class responsibility assignment problem in object-oriented analysis with multi-objective genetic algorithms. IEEE Transactions on Software Engineering, 36(6), 817–837.CrossRef Bowman, M., Briand, L. C., & Labiche, Y. (2010). Solving the class responsibility assignment problem in object-oriented analysis with multi-objective genetic algorithms. IEEE Transactions on Software Engineering, 36(6), 817–837.CrossRef
Zurück zum Zitat Brintrup, A., Ramsden, J., Takagi, H., & Tiwari, A. (2008). Ergonomic chair design by fusing qualitative and quantitative criteria using interactive genetic algorithms. IEEE Transactions on Evolutionary Computation, 12(3), 343–354.CrossRef Brintrup, A., Ramsden, J., Takagi, H., & Tiwari, A. (2008). Ergonomic chair design by fusing qualitative and quantitative criteria using interactive genetic algorithms. IEEE Transactions on Evolutionary Computation, 12(3), 343–354.CrossRef
Zurück zum Zitat Brooks, F. P, Jr. (1987). No silver bullet: Essence and accidents of software engineering. Computer, 20(4), 10–19.CrossRefMathSciNet Brooks, F. P, Jr. (1987). No silver bullet: Essence and accidents of software engineering. Computer, 20(4), 10–19.CrossRefMathSciNet
Zurück zum Zitat Buchanan, J. T., & Daellenbach, H. G. (1997). The effects of anchoring in interactive MCDM solution methods. Computers and Operations Research, 24(10), 907–918.CrossRefMATH Buchanan, J. T., & Daellenbach, H. G. (1997). The effects of anchoring in interactive MCDM solution methods. Computers and Operations Research, 24(10), 907–918.CrossRefMATH
Zurück zum Zitat Caleb-Solly, P., & Smith, J. E. (2007). Adaptive surface inspection via interactive evolution. Image and Vision Computing, 25(7), 1058–1072.CrossRef Caleb-Solly, P., & Smith, J. E. (2007). Adaptive surface inspection via interactive evolution. Image and Vision Computing, 25(7), 1058–1072.CrossRef
Zurück zum Zitat Cockburn, A. (2002). Agile software development. Boston: Addison-Wesley. Cockburn, A. (2002). Agile software development. Boston: Addison-Wesley.
Zurück zum Zitat Deb, K. (2012). Advances in evolutionary multi-objective optimization. In proceedings of 4th International Symposium on Search-based Software Engineering. LNCS (Vol. 7515, pp. 1–26). Heidelberg: Springer. Deb, K. (2012). Advances in evolutionary multi-objective optimization. In proceedings of 4th International Symposium on Search-based Software Engineering. LNCS (Vol. 7515, pp. 1–26). Heidelberg: Springer.
Zurück zum Zitat Dorigo, M., & Stützle, T. (2001). An experimental study of the simple ant colony optimization algorithm. In N. Mastorakis (Ed.), Advances in fuzzy systems and evolutionary computation (pp. 253–258). Dallas, TX: World Scientific and Engineering Society Press. Dorigo, M., & Stützle, T. (2001). An experimental study of the simple ant colony optimization algorithm. In N. Mastorakis (Ed.), Advances in fuzzy systems and evolutionary computation (pp. 253–258). Dallas, TX: World Scientific and Engineering Society Press.
Zurück zum Zitat Eiben, A. E., & Smith, J. E. (2003). Introduction to evolutionary computing. Heidelberg: Springer.CrossRefMATH Eiben, A. E., & Smith, J. E. (2003). Introduction to evolutionary computing. Heidelberg: Springer.CrossRefMATH
Zurück zum Zitat Harrison, R., Councell, S., & Nithi, R. (1998). An investigation into the applicability and validity of object-oriented design metrics. Empirical Software Engineering, 3(3), 255–273.CrossRef Harrison, R., Councell, S., & Nithi, R. (1998). An investigation into the applicability and validity of object-oriented design metrics. Empirical Software Engineering, 3(3), 255–273.CrossRef
Zurück zum Zitat Harman, M. (2011). Software engineering meets evolutionary computation. Computer, 44(10), 31–39.CrossRef Harman, M. (2011). Software engineering meets evolutionary computation. Computer, 44(10), 31–39.CrossRef
Zurück zum Zitat Harman, M., & Jones, B. J. (2001). Search-based software engineering. Information and Software Technology, 43(14), 833–839.CrossRef Harman, M., & Jones, B. J. (2001). Search-based software engineering. Information and Software Technology, 43(14), 833–839.CrossRef
Zurück zum Zitat Jaszkiewicz, A. and Branke, J. (2008). Interactive multiobjective evolutionary algorithms. In J. Branke (Ed.), MultiObjective optimisation: Interactive and evolutionary approaches. LNCS (pp. 179–193). Heidelberg: Springer. Jaszkiewicz, A. and Branke, J. (2008). Interactive multiobjective evolutionary algorithms. In J. Branke (Ed.), MultiObjective optimisation: Interactive and evolutionary approaches. LNCS (pp. 179–193). Heidelberg: Springer.
Zurück zum Zitat Jin, Y., & Branke, J. (2005). Evolutionary optimization in uncertain environments—a survey. IEEE Transactions on Evolutionary Computation, 9(3), 303–317.CrossRef Jin, Y., & Branke, J. (2005). Evolutionary optimization in uncertain environments—a survey. IEEE Transactions on Evolutionary Computation, 9(3), 303–317.CrossRef
Zurück zum Zitat Kubota, N., Nojima, Y., Kojima, F., & Fukuda, T. (2006). Multiple fuzzy state-value functions for human evaluation through interactive trajectory planning of a partner robot. Soft Computing, 10(10), 891–901.CrossRef Kubota, N., Nojima, Y., Kojima, F., & Fukuda, T. (2006). Multiple fuzzy state-value functions for human evaluation through interactive trajectory planning of a partner robot. Soft Computing, 10(10), 891–901.CrossRef
Zurück zum Zitat Lee, J.-Y., & Cho, S.-B. (1998). Interactive genetic algorithm with wavelet coefficients for emotional image retrieval. In 5th International Conference on Soft Computing and Information/Intelligent Systems (Vol. 2, pp. 829–832). Singapore: World Scientific. Lee, J.-Y., & Cho, S.-B. (1998). Interactive genetic algorithm with wavelet coefficients for emotional image retrieval. In 5th International Conference on Soft Computing and Information/Intelligent Systems (Vol. 2, pp. 829–832). Singapore: World Scientific.
Zurück zum Zitat Martin, R. C. (2003). Agile software development: Principles, patterns and practices. Upper Saddle River, NJ: Prentice-Hall. Martin, R. C. (2003). Agile software development: Principles, patterns and practices. Upper Saddle River, NJ: Prentice-Hall.
Zurück zum Zitat Maiden, N. (2011). Requirements and aesthetics. IEEE Software, 28(3), 20–21.CrossRef Maiden, N. (2011). Requirements and aesthetics. IEEE Software, 28(3), 20–21.CrossRef
Zurück zum Zitat McMinn, P. (2004). Search-based software test data generation: A survey. Software Testing, Verification and Reliability, 14(2), 105–156.CrossRef McMinn, P. (2004). Search-based software test data generation: A survey. Software Testing, Verification and Reliability, 14(2), 105–156.CrossRef
Zurück zum Zitat Miettinen, K. M. (1998). Nonlinear multiobjective optimization. Norwell, MA: Kluwer.CrossRef Miettinen, K. M. (1998). Nonlinear multiobjective optimization. Norwell, MA: Kluwer.CrossRef
Zurück zum Zitat Miller, G. (1956). The magical number seven, plus or minus two: Some limits on our capacity for processing information. Psychology Review, 63(2), 81–97.CrossRef Miller, G. (1956). The magical number seven, plus or minus two: Some limits on our capacity for processing information. Psychology Review, 63(2), 81–97.CrossRef
Zurück zum Zitat Ohsaki, M., Takagi, H., & Ohya, K. (1998). An input method using discrete fitness values for interactive genetic algorithms. Journal of Intelligent and Fuzzy Systems, 6(1), 131–145. Ohsaki, M., Takagi, H., & Ohya, K. (1998). An input method using discrete fitness values for interactive genetic algorithms. Journal of Intelligent and Fuzzy Systems, 6(1), 131–145.
Zurück zum Zitat O’Keeffe, M., & Cinnéide, O. M. (2008). Search-based refactoring for software maintenance. Journal of Systems and Software, 81(4), 502–516. O’Keeffe, M., & Cinnéide, O. M. (2008). Search-based refactoring for software maintenance. Journal of Systems and Software, 81(4), 502–516.
Zurück zum Zitat Pauplin, O., Caleb-Solly, P., & Smith, J. E. (2010). User-centric image segmentation using an interactive parameter adaptation tool. Pattern Recognition, 43(2), 519–529.CrossRefMATH Pauplin, O., Caleb-Solly, P., & Smith, J. E. (2010). User-centric image segmentation using an interactive parameter adaptation tool. Pattern Recognition, 43(2), 519–529.CrossRefMATH
Zurück zum Zitat Ren, J., Harman, M., & Di Penta, M. (2011). Cooperative co-evolutionary optimisation of software project assignments and job scheduling. In 3rd International Symposium on Search-based Software Engineering (SSBSE, 2011). LNCS (Vol. 6956, pp. 127–141). Heidelberg: Springer. Ren, J., Harman, M., & Di Penta, M. (2011). Cooperative co-evolutionary optimisation of software project assignments and job scheduling. In 3rd International Symposium on Search-based Software Engineering (SSBSE, 2011). LNCS (Vol. 6956, pp. 127–141). Heidelberg: Springer.
Zurück zum Zitat Salkind, N. J. (2010). Encyclopaedia of research design (Vol. 2). Thousand Oaks: Sage Publications. Salkind, N. J. (2010). Encyclopaedia of research design (Vol. 2). Thousand Oaks: Sage Publications.
Zurück zum Zitat Simons, C. L., & Parmee, I. C. (2009). An empirical investigation of search-based computational support for conceptual software engineering design. 2009 IEEE International Conference on Systems, Man, and Cybernetics, (SMC ’09) (pp. 2577–2582). IEEE Press: Piscataway. Simons, C. L., & Parmee, I. C. (2009). An empirical investigation of search-based computational support for conceptual software engineering design. 2009 IEEE International Conference on Systems, Man, and Cybernetics, (SMC ’09) (pp. 2577–2582). IEEE Press: Piscataway.
Zurück zum Zitat Simons, C. L., & Parmee, I. C. (2012). Elegant, object-oriented software design via interactive evolutionary computation. IEEE Transactions on Systems, Man, and Cybernetics: Part C, 42(6), 1979–1805. Simons, C. L., & Parmee, I. C. (2012). Elegant, object-oriented software design via interactive evolutionary computation. IEEE Transactions on Systems, Man, and Cybernetics: Part C, 42(6), 1979–1805.
Zurück zum Zitat Simons, C. L., Parmee, I. C., & Gwynllyw, R. (2010). Interactive, evolutionary search in upstream object-oriented software design. IEEE Transactions on Software Engineering, 33(6), 798–816.CrossRef Simons, C. L., Parmee, I. C., & Gwynllyw, R. (2010). Interactive, evolutionary search in upstream object-oriented software design. IEEE Transactions on Software Engineering, 33(6), 798–816.CrossRef
Zurück zum Zitat Simons, C. L., & Smith, J. E. (2012). A comparison of evolutionary algorithms and ant colony optimisation for interactive software design. In Fast Abstract (Ed.), Collection of the 4th Symposium of Search-Based Software Engineering, (SSBSE 2012) (pp. 37–42). Italy: FBK-Press. Simons, C. L., & Smith, J. E. (2012). A comparison of evolutionary algorithms and ant colony optimisation for interactive software design. In Fast Abstract (Ed.), Collection of the 4th Symposium of Search-Based Software Engineering, (SSBSE 2012) (pp. 37–42). Italy: FBK-Press.
Zurück zum Zitat Simons, C. L., & Smith, J. E. (2013). A comparison of meta-heuristic search for interactive software design. Soft Computing, 17, 2147–2162.CrossRef Simons, C. L., & Smith, J. E. (2013). A comparison of meta-heuristic search for interactive software design. Soft Computing, 17, 2147–2162.CrossRef
Zurück zum Zitat Smith, J. E., & Fogarty, T. C. (1996). Evolving software test data—GAs learn self-expression. In Evolutionary Computing (Ed.), Fogarty (pp. 137–146). Heidelberg: Springer. Smith, J. E., & Fogarty, T. C. (1996). Evolving software test data—GAs learn self-expression. In Evolutionary Computing (Ed.), Fogarty (pp. 137–146). Heidelberg: Springer.
Zurück zum Zitat Stützle, T., & Hoos, H. (2000). MAX–MIN ant system. Future Generation Computer Systems, 16(8), 889–914. Stützle, T., & Hoos, H. (2000). MAX–MIN ant system. Future Generation Computer Systems, 16(8), 889–914.
Zurück zum Zitat Takagi, H. (2001). Interactive evolutionary computation: Fusion of the capabilities of EC optimization and human evaluation. Proceedings of the IEEE, 89(9), 1275–1298.CrossRef Takagi, H. (2001). Interactive evolutionary computation: Fusion of the capabilities of EC optimization and human evaluation. Proceedings of the IEEE, 89(9), 1275–1298.CrossRef
Zurück zum Zitat Uǧur, A., & Aydin, D. (2009). Interactive simulation and analysis software for solving TSP using ant colony optimization algorithms. Advances in Engineering Software, 40(5), 341–348.CrossRef Uǧur, A., & Aydin, D. (2009). Interactive simulation and analysis software for solving TSP using ant colony optimization algorithms. Advances in Engineering Software, 40(5), 341–348.CrossRef
Zurück zum Zitat Weimer, W., Forrest, S., Le Goues, C., & Nguyen, T. (2010). Automatic program repair with evolutionary computing. Communications of the ACM, 53(5), 109–116.CrossRef Weimer, W., Forrest, S., Le Goues, C., & Nguyen, T. (2010). Automatic program repair with evolutionary computing. Communications of the ACM, 53(5), 109–116.CrossRef
Zurück zum Zitat Xanthakis, S., Ellis, C., Skourlas, C., Le Gall, A., Katsikas, S., & Karapoulios, K. (1992). Application of genetic algorithms to software testing. In: 5th IASTED International Conference on Software Engineering and Applications (pp. 625–636). Innsbruck: ACTA Press. Xanthakis, S., Ellis, C., Skourlas, C., Le Gall, A., Katsikas, S., & Karapoulios, K. (1992). Application of genetic algorithms to software testing. In: 5th IASTED International Conference on Software Engineering and Applications (pp. 625–636). Innsbruck: ACTA Press.
Zurück zum Zitat Xing, L.-N., Chen, Y.-W., & Yang, K.-W. (2007). Interactive fuzzy multi-objective ant colony optimisation with linguistically quantified decision functions for flexible job shop scheduling problems. Frontiers in the Convergence of Bioscience and Information (FBIT 2007) (pp. 801–806). IEEE Press: Piscataway. Xing, L.-N., Chen, Y.-W., & Yang, K.-W. (2007). Interactive fuzzy multi-objective ant colony optimisation with linguistically quantified decision functions for flexible job shop scheduling problems. Frontiers in the Convergence of Bioscience and Information (FBIT 2007) (pp. 801–806). IEEE Press: Piscataway.
Metadaten
Titel
Interactive ant colony optimization (iACO) for early lifecycle software design
verfasst von
Christopher L. Simons
Jim Smith
Paul White
Publikationsdatum
01.06.2014
Verlag
Springer US
Erschienen in
Swarm Intelligence / Ausgabe 2/2014
Print ISSN: 1935-3812
Elektronische ISSN: 1935-3820
DOI
https://doi.org/10.1007/s11721-014-0094-2

Premium Partner