Adaptive Neighbourhood Search for the Component Deployment Problem

  • Aldeida AletiEmail author
  • Madalina Drugan
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9275)


ince the establishment of the area of search-based software engineering, a wide range of optimisation techniques have been applied to automate various stages of software design and development. Architecture optimisation is one of the aspects that has been automated with methods like genetic algorithms, local search, and ant colony optimisation. A key challenge with all of these approaches is to adequately set the balance between exploration of the search space and exploitation of best candidate solutions. Different settings are required for different problem instances, and even different stages of the optimisation process.

To address this issue, we investigate combinations of different search operators, which focus the search on either exploration or exploitation for an efficient variable neighbourhood search method. Three variants of the variable neighbourhood search method are investigated: the first variant has a deterministic schedule, the second variant uses fixed probabilities to select a search operator, and the third method adapts the search strategy based on feedback from the optimisation process. The adaptive strategy selects an operator based on its performance in the previous iterations. Intuitively, depending on the features of the fitness landscape, at different stages of the optimisation process different search strategies would be more suitable. Hence, the feedback from the optimisation process provides useful guidance in the choice of the best search operator, as evidenced by the experimental evaluation designed with problems of different sizes and levels of difficulty to evaluate the efficiency of varying the search strategy.


Adaptive neighbourhood search Component deployment optimisation 



This research was supported under Australian Research Council’s Discovery Projects funding scheme, project number DE 140100017.


  1. 1.
    Aleti, A.: Designing automotive embedded systems with adaptive genetic algorithms. Autom. Softw. Eng. 22, 199–240 (2015)CrossRefGoogle Scholar
  2. 2.
    Aleti, A., Björnander, S., Grunske, L., Meedeniya, I.: ArcheOpterix: an extendable tool for architecture optimization of AADL models. In: Model-based Methodologies for Pervasive and Embedded Software, pp. 61–71. ACM and IEEE Digital Libraries (2009)Google Scholar
  3. 3.
    Aleti, A., Buhnova, B., Grunske, L., Koziolek, A., Meedeniya, I.: Software architecture optimization methods: a systematic literature review. IEEE Trans. Softw. Eng. 39(5), 658–683 (2013)CrossRefGoogle Scholar
  4. 4.
    Aleti, A., Grunske, L.: Test data generation with a kalman filter-based adaptive genetic algorithm. J. Syst. Softw. 103, 343–352 (2015)CrossRefGoogle Scholar
  5. 5.
    Aleti, A., Grunske, L., Meedeniya, I., Moser, I.: Let the ants deploy your software - an ACO based deployment optimisation strategy. In: ASE, pp. 505–509. IEEE Computer Society (2009)Google Scholar
  6. 6.
    Aleti, A., Meedeniya, I.: Component deployment optimisation with bayesian learning. In: ACM Sigsoft Symposium on Component based Software Engineering, pp. 11–20. ACM (2011)Google Scholar
  7. 7.
    Assayad, I., Girault, A., Kalla, H.: A bi-criteria scheduling heuristic for distributed embedded systems under reliability and real-time constraints. In: Dependable Systems and Networks, pp. 347–356. IEEE Computer Society (2004)Google Scholar
  8. 8.
    Cohen, J.: Statistical Power Analysis for the Behavioral Sciences. Lawrence Erlbaum Associates, Hillsdale (1988)zbMATHGoogle Scholar
  9. 9.
    Coit, D.W., Konak, A.: Multiple weighted objectives heuristic for the redundancy allocation problem. IEEE Trans. Reliab. 55(3), 551–558 (2006)CrossRefGoogle Scholar
  10. 10.
    Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast elitist multi-objective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6, 182–197 (2000)CrossRefGoogle Scholar
  11. 11.
    Fonseca, C.M., Fleming, P.J., et al.: Genetic algorithms for multiobjective optimization: formulation, discussion and generalization. In: ICGA, vol. 93, pp. 416–423 (1993)Google Scholar
  12. 12.
    Guntsch, M., Middendorf, M.: Solving multi-criteria optimization problems with population-based ACO. In: Fonseca, C.M., Fleming, P.J., Zitzler, E., Deb, K., Thiele, L. (eds.) EMO 2003. LNCS, vol. 2632, pp. 464–478. Springer, Heidelberg (2003) CrossRefGoogle Scholar
  13. 13.
    Harman, M., Afshin Mansouri, S., Zhang, Y.: Search-based software engineering: trends, techniques and applications. ACM Comput. Surv. 45(1), 11:1–11:61 (2012)CrossRefGoogle Scholar
  14. 14.
    Harman, M., McMinn, P.: A theoretical and empirical study of search-based testing: local, global, and hybrid search. IEEE Trans. Softw. Eng. 36(2), 226–247 (2010)CrossRefGoogle Scholar
  15. 15.
    ISO/IEC. IEEE international standard 1471 2000 - systems and software engineering - recommended practice for architectural description of software-intensive systems (2000)Google Scholar
  16. 16.
    Kubat, P.: Assessing reliability of modular software. Oper. Res. Lett. 8(1), 35–41 (1989)MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    Malek, S., Medvidovic, N., Mikic-Rakic, M.: An extensible framework for improving a distributed software system’s deployment architecture. IEEE Trans. Softw. Eng. 38(1), 73–100 (2012)CrossRefGoogle Scholar
  18. 18.
    Meedeniya, I., Aleti, A., Avazpour, I., Amin, A.: Robust archeopterix: architecture optimization of embedded systems under uncertainty. In: Software Engineering for Embedded Systems, pp. 23–29. IEEE (2012)Google Scholar
  19. 19.
    Meedeniya, I., Aleti, A., Grunske, L.: Architecture-driven reliability optimization with uncertain model parameters. J. Syst. Softw. 85(10), 2340–2355 (2012)CrossRefGoogle Scholar
  20. 20.
    Meedeniya, I., Buhnova, B., Aleti, A., Grunske, L.: Architecture-driven reliability and energy optimization for complex embedded systems. In: Heineman, G.T., Kofron, J., Plasil, F. (eds.) QoSA 2010. LNCS, vol. 6093, pp. 52–67. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  21. 21.
    Meedeniya, I., Buhnova, B., Aleti, A., Grunske, L.: Reliability-driven deployment optimization for embedded systems. J. Syst. Softw. 84, 835–846 (2011)CrossRefGoogle Scholar
  22. 22.
    Pettitt, A.N., Stephens, M.A.: The kolmogorov-smirnov goodness-of-fit statistic with discrete and grouped data. Technometrics 19(2), 205–210 (1977)CrossRefzbMATHGoogle Scholar
  23. 23.
    Shan, S., Gary Wang, G.: Reliable design space and complete single-loop reliability-based design optimization. Reliab. Eng. Syst. Saf. 93(8), 1218–1230 (2008)CrossRefGoogle Scholar
  24. 24.
    Thiruvady, D., Moser, I., Aleti, A., Nazari, A.: Constraint programming and ant colony system for the component deployment problem. Procedia Comput. Sci. 29, 1937–1947 (2014)CrossRefzbMATHGoogle Scholar
  25. 25.
    Weimer, W., Forrest, S., Le Goues, C., Nguyen, T.V.: Automatic program repair with evolutionary computation. Commun. ACM 53(5), 109–116 (2010)CrossRefGoogle Scholar
  26. 26.
    Wolpert, D.H., Macready, W.G.: No free lunch theorems for optimization. IEEE Trans. Evol. Comput. 1(1), 67–82 (1997)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Faculty of Information TechnologyMonash UniversityMelbourneAustralia
  2. 2.Artificial Intelligence LabVrije Universiteit BrusselBrusselsBelgium

Personalised recommendations