Figures
Abstract
This article presents a new approach to designing a Harmony Search (HS) algorithm, adapted to solve Orienteering Problem (OP) instances. OP is a significant -hard problem that has considerable practical application, requiring the development of an effective method for determining its solutions. The proposed HS has demonstrated its effectiveness through determined optimum results for each task from the six most popular benchmarks; a marginal number approximated the best results, with the average error below 0.01%. The article details the application of this described algorithm, comparing its results with those of state-of-the-art methods, indicating the significant efficiency of the proposed approach.
Citation: Szwarc K, Boryczka U (2022) A novel approach to the Orienteering Problem based on the Harmony Search algorithm. PLoS ONE 17(2): e0264584. https://doi.org/10.1371/journal.pone.0264584
Editor: Seyedali Mirjalili, Torrens University Australia, AUSTRALIA
Received: October 7, 2021; Accepted: February 13, 2022; Published: February 28, 2022
Copyright: © 2022 Szwarc, Boryczka. This is an open access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.
Data Availability: The research was carried out on the basis of generally available tasks, and the pseudocode presented in the paper enables the implementation of the developed algorithm. We have included links to the tass sets in the manuscript (https://www.github.com/bcamath-ds/OPLib/ and https://www.mech.kuleuven.be/en/cib/op/instances/). HS code is available at https://github.com/kszwarc/HSOP.
Funding: The authors received no specific funding for this work.
Competing interests: The authors have declared that no competing interests exist.
1 Introduction
The Orienteering Problem (OP) is an -hard [1] optimization problem that assumes the need to maximising the number of points received due to visiting particular nodes within a pre-defined time limit. According to [2], this can be considered a combination of two issues that are significant from a utilitarian perspective: the Knapsack Problem and the Traveling Salesman Problem. Connecting features of these problems enables application of the OP in economic practice and optimizes many processes occurring in the logistics area of interest, such as planning a traveling salesman route, where time limits prevent the salesman from visiting all of the towns [3], solving tourist–route design problems [4], and analyzing other inventory or routing problems [1]. It should also be emphasized that one OP variant is distinct from the utilitarian persperctive beacuse it includes M of team members (i.e., the Team Orienteering Problem (TOP)). This is among the Vehicle Routing Problems with Profits (VRPP) variants [5] that are characterized by the need to select a subset of customers, describe them in terms of profit, and design routes according to which the sum of the profits gained is maximized under time (distance) constraints. Among these variants, we can also distinguish the Capacitated Profitable Tour Problem (assuming maximization of profits minus the travel costs under capacity restrictions) and a variant featuring a private fleet and common carrier, in which some customers may be delegated to another carrier subject to a cost [5].
Because this issue pertains to the class of -hard problems, approximate approaches are often applied to solve OP instances, precluding the design of optimal travel routes within an acceptable timeframe (according to [2], using exact algorithms is too time-consuming for the OP to be applied in practice). Among the existing heuristics used to address the analyzed problem, those worth emphasising are the deterministic D algorithm [3], stochastic S algorithm [3], center-of-gravity [1], and CGW algorithm proposed in [6]. More up-to-date approaches to the OP assume the use of metaheuristics, which draw inspiration from nature. Tasgetiren achieved good solutions using the Genetic Algorithm with an Adaptive Penalty Function (GA) [7]. Vansteenwegen et al. tested the Guided Local Search (GLS) [8], Schilde et al. adjusted the Pareto Ant Colony Optimization (ACO) and Pareto Variable Neighborhood Search (VNS) [4], Sevkli and Sevilgen used different variants of Particle Swarm Optimization (e.g., the Intensification Strengthened PSO (IS-PSO)) [9], Campos et al. checked the efficiency of the Greedy Randomized Adaptive Search Procedure (GRASP) and the version making use of Path Relinking (GRASP with PR) [10], Kobeaga et al. proposed EA4OP [11], Santini adjusted the Adaptive Large Neighborhood Search (ALNS) [12], and Faigl analyzed the Growing Self-Organizing Array (GSOA) [13]. Fig 1 presents the chronology of the selected publications, indicating the adjustments to techniques to solve the OP. Meanwhile, more recent approaches to solving selected OP variants include the adaptation of the VNS [14] and a Biased Random-Key Genetic Algorithm [15] for the Set OP (a generalization of the OP), the proposal to apply the GSOA to the Close-Enough Traveling Salesman Problem [16], adaptation of the Tabu Search to the Probabilistic Orienteering Problem [17], solving OP with hotel selection by the Ant Colony System [18], and the use of Max–Min Ant Colony Optimization to solve the Thief OP instances [19].
Given the multiplicity of -hard problems modeling various utilitarian issues, new metaheuristics have been created, enabling the discovery of suboptimal solutions within an acceptable timeframe. Among the relatively new methods characterized by significant efficiency is the Harmony Search (HS). This technique was proposed in [20] and successfully applied to a water pump switching problem [21], the Sudoku solving process [22], the design of steel frames [23], university course timetabling [24], route optimization for on-demand e-waste collection [25], nurse rostering problems [26], microstructural image classification [27], coordination of drug transportation [28], frequency stabilization in interconnected power system [29], and the Asymmetric Traveling Salesman Problem (ATSP) [30].
According to the no free lunch theorem [31], there is no single metaheuristic that can solve all existing optimization problems in a better way than other methods. For this reason, researchers in the field of computational intelligence are forced to empirically verify the effectiveness of a given method for a specific optimization problem in order to determine its usefulness.
This article aims to eliminate the research gap surrounding adjusting HS to successfully solve OP instances. We believe that the HS’s significant efficiency, which has been noted in the context of solving similar optimization problems, can enable the development of a method that can construct more favorable solutions than other metaheuristics commonly used to solve OP instances. In this way, we want to contribute by proposing a method that can be successfully used in business practice to solve large OP instances, the complexity of which makes it impossible to apply exact algorithms.
Among the research adapting HS to solve various OP variants, we can distinguish the paper [32] and [33], which propose variants of the algorithm designed to approximate the Generalized Orienteering Problem. Elsewhere, Tsakirakis et al. has described an interesting Similarity Hybrid HS algorithm for the TOP [34]. However, this paper’s approach is based on the idea proposed in [30], which achieved satisfactory results for a similar optimization problem (i.e., the ATSP).
This article comprises seven sections. After the introduction to the subject matter, the HS’s characteristic features are presented. Next, we describe the OP and present the HS structure as adjusted to solve the OP. After explaining the research methodology in more detail, we discuss the results obtained. The paper the details the study’s conclusions and plans for further research.
The results presented in the article have been published in the doctoral dissertation [35].
2 Description of the classical Harmony Search
The HS is a modern metaheuristic proposed in [20] and based on the similarity of musical improvisation to the search for the optimum in optimization processes. The algorithm’s author transcribed real-world observations onto the HS diagram by implementing the following parameters and structures:
- Pitch: an element that corresponds to the decision variable of the given optimization problem.
- Harmony: a structure comprising n pitches (where n represents the number of decision variables describing the given problem) and which is a complete solution to the problem.
- HM (Harmony Memory): a structure storing harmonies sorted according to their objective function value (the worst element is positioned last).
- HMS (Harmony Memory Size): the size of the HM (i.e., the number of harmonies stored in the HM).
- HMCR (Harmony Memory Consideration Rate): the probability of playing the pitch by heart. With a probability equal to the HMCR, the choice of pitch value takes place in position i in the created solution, based on the value of pitches in position i, describing harmonies stored in HM. With a probability of 1 − HMCR the random value of pitch i is selected from the acceptable range.
- PAR (Pitch Adjustment Rate): the probability of modification of the pitch value in the i position on the basis of the value of pitches in position i in HM.
- bw (Bandwidth): the range of pitch value changes relative to the parameter PAR, with a value corresponding to the maximum change value of the chosen pitch in position i.
- IT: it defines the condition in which the algorithm stops (interpreted as the number of harmonies created in the main method loop).
At the beginning of an HS operation, HMS harmonies are created and, included in the HM. They are subsequently sorted based on objective function value, such that the worst harmony is found in the last position.
According to [36], improvisation in music assumes the aim of better harmonization involves trying various pitch combinations according to the following possibilities:
- Playing the pitch by heart.
- Modifying the pitch by heart.
- Playing a random pitch from within the acceptable range.
Based on music’s improvisation process, Geem assumed that the algorithm must iteratively create subsequent harmonies, choosing the value of the next pitch i according to the following rules:
- The choice of pitch i, based on the value in position i in HM (probability equals HMCR ⋅ (1 − PAR)).
- The choice of modified pitch i, based on the value in position i in HM (probability equals HMCR ⋅ PAR).
- The choice of pseudorandom value from the available range (probability equals 1 − HMCR).
A new harmony’s objective function value is compared with the applicable value describing the worst element located in the HM. If the new solution is more beneficial, it replaces the worst harmony stored in the HM, after which the elements of the HM are sorted again. The procedure is repeated for IT iterations. Fig 2 presents a flowchart of the HS.
However, the HS has caused considerable controversy within the research community. For example, according to Weyland, the algorithm is simply represents a special case of the Evolution Strategies (ES) and does not offer any novelty [37]. The author conducted a detailed analysis to demonstrate the imperfections in the results presented by Geem in [22]. However, in [38] Kim responded Weyland’s allegations by demonstrating the differences between the HS and ES.
3 Formulation of the Orienteering Problem
This article is based on the formulation of the OP presented by Vansteenwegen et al. [2] and assumes the occurrence of a set of N nodes and assigns a number of points Si to each i node. After stablishing the beginning node (marked 1), ending node (marked N), travel time between nodes i and j (for all nodes), tij, and the time limit Tmax are set, the decision variables are introduced: xij (which assumes a value of 1 if node j is visited after node i and 0 otherwise) and ui (which indicates the position of node i in the path).
The objective function of the problem, assuming the maximization of collected points, is determined according to the following:
(1)
The limiting condition, ensuring that the path starts with Node 1 and ends at node N, is as follows:
(2)
The condition enforcing the creation of connections in the path and guaranteeing that each node is not visited more than once is determined according to the following:
(3)
The need to comply with the time limit Tmax is determined as follows:
(4)
To eliminate subtours, the following is introduced:
(5)
(6)
4 Harmony Search adjusted to solve the Orienteering Problem
The OP solution comprises a sequence of points that must be visited in a given order. Given the similarity between the OP and ATSP solutions, we decided that the natural representation of the HM would be the path to be visited, in the order in which individual pitches appear. Fig 3 presents example content of the HM for HMS = 3, starting with Node 1 and ending with Node 5. Given the time limitations resulting from defining the problem, the particular harmonies may comprise various numbers of pitches.
The process of choosing the value of the next pitch assumes the following:
- Choosing pitch values is based on the elements of the HM (performed with the probability HMCR ⋅ (1 − PAR)), indicating that preparing the list of nodes, which occur in harmonies located in the HM directly after the last node added to a new harmony H (for the OP, as in the case of the ATSP, we assumed that it was more important to analyze the successors and predecessors of the node in the path than the absolute order in which the node was visited). In the example presented in Fig 4, the nodes occurring directly after Node 4 are analyzed. Although Node 6 and 3 appear in HM[0] and HM[2], they cannot be added to the new solution due to occuring in H. Only Node 2, which exists in HM[1], can potentially be added to the list created. However, before adding it to the list, it is necessary to check the possibility of managing it and, subsequently, point N (in example Node 5) without infringing on the limitation Tmax.
Next, following the approach described by Komaki et al. [39], a node belonging to the list is chosen based on the objective function value of the harmony it derives from, using the roulette wheel selection method (thus increasing the method’s exploitation ability). In cases in which the list of nodes is empty, it is completed with the available nodes—i.e., the nodes not yet visited; after visiting, it will be possible to collect points in node N, considering the time limit Tmax—and by determining the quotient g for the number of points achieved (for each) by visiting the node compared to the distance (according to travel time) between the last visited node and the current one. The HMS nodes from the list, with the greatest g values subsequently, participate in the roulette wheel method selection (if the list contains fewer elements than HMS, all nodes are considered). - Modifying pitch value (executed with a probability equal to HCMR ⋅ PAR) is based on the modified heuristics proposed by Golden et al. [40] in an article including an analysis of the effect of individual component weights on heuristics efficiency that demonstrates how knowledge about the problem is used to increase the entire technique’s efficiency. In the HS discussed the designation for each available node i assumes the value:
(8) where:
- Rsi ranks the number of points obtained at node i among the points describing available nodes.
- Rci ranks the distance of node i (with coordinates (xi,yi)) from the center of gravity of available nodes (creating the set A), the coordinates of which derive from the formula:
(9)
- Rpi ranks the distance of node i from the last visited node.
After receiving the values of Wi for each available node, the required pitch value is chosen by employing the roulette wheel method (promoting lower Wi values) for the maximum number of HMS nodes with the lowest value of Wi. - Choosing (with a probability equal to 1-HMCR) an available pseudorandom node from the set of such nodes infers that it remains possible to visit the node N after visiting one of them without infringing on the time limit Tmax.
Fig 5 presents a flowchart of the process of selecting the value of the next pitch in the propoesed HS.
After creating a new solution H, it is necessary to determine whether it is characterized by a more beneficial objective function value than the worst harmony stored in HM. In such cases, the procedure (based on the heuristics proposed by Golden et al. [1] and Chao et al. [6]) for improving it begins—building on the previous demonstration of the significant efficiency of this process at this location within the HS structure [41]—following four steps:
- Optimizing a new route by means of the method 2-opt and using it to replace the worst solution located in HM.
- Removing from the route node i (which cannot be the starting and ending node), which features the lowest value of the quotient m:
(10) where:
- matrix[p][i] represents the distance (travel time) between node p and i,
- p is a node preceding node i in the analyzed route plan, and
- f is a node that follows the node i in the analyzed route plan.
- It is necessary to add as many available points as possible (for the best possible positions) to the route created in Step 2, beginning with those, whose appearance in the route enables the achievement of the largest possible value of quotient m (it is necessary to check value m for each point in each possible route position).
- If the route was improved in Step 3 relative to the base solution, H, the plan needs to be optimized again using the 2-opt method, with this optimization replacing the solution added to HM in Step 1.
After executing R iterations from the last replacement of the worst solution, there is another draw of HM content (excluding the best solution) to avoid premature convergence. The efficiency of the mechanism for ATSP has previously been demonstrated in [42], indicating that by choosing the appropriate R value, we can preserve the diversity of HM content, maintaining an appropriate level of solution space exploartion.
Fig 6 presents the HS pseudocode adjusted to solve OP instances.
5 Research methodology
The decision was made to use a ‘test bed’ in the form of four generally accessible sets of Tsiligirides tasks (where Set 4 is Set 1 with a correction based on [6]; the coordinates of one point (4.90, 18.90) were replaced with (4.90, 14.90)), Chao sets 64 and 66, and selected 45 tasks from Generation 1 of OPLib (analysed by [11]). Each task was solved 30 times using a different seed. Sets are available at [43] and [44].
Based on papers [30, 42, 45] and the performed empirical tests, the following values of HS parameters were determined: HMCR = 0.98, PAR = 0.1, HMS = 5, IT = 1000000 and R = 500.
The quality of solutions was assessed by measuring the number of iterations required to achieve convergence it (the average value was designated , and sample standard deviation as σit), the time required to achieve convergence t [s] (the average value was designated as
, the sample standard deviation as σt), and the average error value as
(formula (11)), the best result’s error value r (formula (12)), and the worst (w) and the best (b) determined objective function values on the basis of 30 repetitions of the algorithm.
(11)
(12)
The algorithm was implemented in C#, and the tests were performed using the laptop Lenovo Legion Y520, with the following components: Windows 10 Home 64-bit, 32 GB RAM (SO-DIMM DDR4, 2400MHz) and Intel Core i7-7700HQ (4 cores, 2.8 GHz to 3.8 GHz, 6 MB cache).
In order to verify the effectiveness of the hybridization of the HS algorithm with 2-opt, the tasks from the Tsiligirides and Chao sets were solved by means of a variant without the solution improvement step using 2-opt. The obtained mean value of the objective function for the variant without 2-opt was denoted as . Additionally, the obtained objective function values were subjected to the Wilcoxon Signed-Rank Test, using R. Both variants (noted as V1 and V2) were subjected to the process, whereas the value of 0.05 was assumed as the level of test significance (the obtained p-values described with the lower result indicate to accept the alternative hypothesis according to which V1 obtained greater results than V2).
The objective function values achieved by the HS were compared with the results obtained by the following algorithms according to the respective bibliographical sources:
6 Results
The results achieved by the HS are presented in Tables 1–7 for Tsiligirides sets 1, 2, 3 and 4 and Chao sets 64 and 66, and tasks from OPLib respectively. The attribute Best represents the best objective function value obtained in the papers reviewed (see, in particular [7, 8, 10, 11, 13]) and was considered to calculate the values r and e. These results support the significant efficiency of the proposed HS showing that it was able to determine the best routes for all 107 instances of the problem from Tsiligirides and Chao sets (r is equal to 0%).
For tasks from the Tsiligirides sets, the HS achieved the best solutions in all cases (both r and e amount to 0%), with the time to achieve convergence characterized by small values (for the vast majority of analysed values Tmax, amounted to less than one second), indicating the problem-free possibility of applying the method to solve practical problems with characteristics that align with the instances analyzed. Meanwhile, analyzing
and σit confirm the possibility of limiting the value of IT while maintaining the quality of the solutions constructed.
For bigger instances of the OP problem, from the sets of Chao 64 and 66, the HS usually obtained the best solutions. However, for some values Tmax (55 for Chao 64 and 100, 110 and 120 for Chao 66), suboptimal route plans were also constructed, characterized by slightly worse objective function value (acceptable for many practical applications). The time required to achieve convergence increased to more than 40 seconds on average. Additionally, the number of iterations required to achieve convergence by the technique increased. These observations may indicate the need to improve the method, through a better choice of value of the parameters or replacement of the local search technique (2-opt) with the algorithm characterized by better efficiency.
Based on the comparison of the average error for the tasks from the Tsiligirides and Chao sets achieved by the HS and HS without 2-opt (presented in Fig 7) and Wilcoxon test results (shown in the Table 8), significant effectiveness of the hybrid approach was found and its use is recommended.
Tasks derived from OPLib are characterized by different sizes, enabling the determination of the behavior of the proposed algorithm for different OP instances. For tasks consisting of fewer nodes than 150, very high HS efficiency can be observed (only for two tasks out of 26 no optimal solution was designated). However, as the number of nodes increased, the algorithm began to obtain more and more near-optimal results, which indicates the need to adjust the HS parameter values for larger instances. Both the average error obtained and the time to achieve convergence testify to the possibility of using HS to solve many practical problems.
Table 9 compares the HS results with the results presented in the literature on the subject, revealing that the proposed algorithm is much more efficient and can compete with the best state-of-the-art methods. The HS achieved the most advantageous average value w for Chao 64, with less beneficial results only observed for Chao 66 (the average value w was worse than the average values achieved by both for the ACO algorithm and the GRASP with PR approach).
Comparison of results obtained by HS and state-of-the-art algorithms for tasks from OPLib is presented in Table 10 (optimal results are in bold). On their basis, we found significant efficiency of our approach, which gained an advantage over 2-Parameter IA and EA4OP for tasks, characterized by the occurrence of up to 144 nodes. For larger tasks, the method obtains slightly worse results than competing approaches, but this difference could be eliminated by further improving the technique (in this paper we focused on choosing parameter values so that the algorithm copes well with tasks of moderate size). It is worth noting that the average objective function value for HS was higher than for the 2-Parameter IA.
7 Conclusions and further research plans
The proposed modifications enabled the design of an efficient HS variant that achieved solutions characterized by an average error below the 0.01% level for the classic benchmark. For all 107 OP instances—derived from the six most-popular sets of tasks—the proposed approach was able to construct optimum route plans that, along with the short time of reaching convergence and favorable results when compared with the state-of-the-art methods, confirm the possibility of using the prepared algorithm in economic practice.
For the tasks from OPLib, our algorithm has proved to be highly effective, in particular for tasks with fewer nodes than 150 (it obtained better results than 2-Parameter IA and EA4OP). For larger tasks, the method obtains slightly worse results than competing approaches, but this difference could be eliminated by further improving the technique.
Future work on this subject should check the efficiency of the HS in the context of using other local search techniques (other than 2-opt; e.g. 3-opt, Lin–Kernighan heuristic [46] or Lin–Kernighan–Helsgaun algorithm [47]) and places and criteria (e.g., allowing improving of slightly worse solutions from the worst HM harmony) of its occurrence is recommended (studies on the influence of the localization of the local search algorithm in HS are presented in the paper [41]). Furthemore, additional tests should be performed, including the assignment of optimal values of algorithm parameters and checking the effectiveness of the method on other tasks from OPLib. Finally, it would be worthwile adjusting the method to address extended OP variants (e.g., OP with time windows [48] and TOP [49]).
References
- 1. Golden BL, Levy L, Vohra R. The orienteering problem. Naval Research Logistics (NRL). 1987;34(3):307–318.
- 2. Vansteenwegen P, Souffriau W, Oudheusden DV. The orienteering problem: A survey. European Journal of Operational Research. 2011;209(1):1–10.
- 3. Tsiligirides T. Heuristic Methods Applied to Orienteering. The Journal of the Operational Research Society. 1984;35(9):797–809.
- 4. Schilde M, Doerner KF, Hartl RF, Kiechle G. Metaheuristics for the bi-objective orienteering problem. Swarm Intelligence. 2009;3(3):179–201.
- 5. Vidal T, Maculan N, Ochi LS, Vaz Penna PH. Large Neighborhoods with Implicit Customer Selection for Vehicle Routing Problems with Profits. Transportation Science. 2016;50(2):720–734.
- 6. Chao IM, Golden BL, Wasil EA. A fast and effective heuristic for the orienteering problem. European Journal of Operational Research. 1996;88(3):475–489.
- 7. Tasgetiren MF. A Genetic Algorithm with an Adaptive Penalty Function for the Orienteering Problem. Journal of Economic and Social Research. 2002;4(2):1–26.
- 8. Vansteenwegen P, Souffriau W, Berghe GV, Oudheusden DV. A guided local search metaheuristic for the team orienteering problem. European Journal of Operational Research. 2009;196(1):118–127.
- 9. Sevkli AZ, Sevilgen FE. StPSO: Strengthened particle swarm optimization. Turkish Journal of Electrical Engineering & Computer Sciences. 2010;18(6):1095–1114. https://doi.org/10.3906/elk-0909-18
- 10. Campos V, Martí R, Sánchez-Oro J, Duarte A. GRASP with path relinking for the orienteering problem. Journal of the Operational Research Society. 2014;65(12):1800–1813.
- 11. Kobeaga G, Merino M, Lozano JA. An efficient evolutionary algorithm for the orienteering problem. Computers & Operations Research. 2018;90:42–59.
- 12. Santini A. An adaptive large neighbourhood search algorithm for the orienteering problem. Expert Systems with Applications. 2019;123:154–167.
- 13. Faigl J. Data collection path planning with spatially correlated measurements using growing self-organizing array. Applied Soft Computing. 2019;75:130–147.
- 14. Pěnička R, Faigl J, Saska M. Variable Neighborhood Search for the Set Orienteering Problem and its application to other Orienteering Problem variants. European Journal of Operational Research. 2019;276(3):816–825.
- 15. Carrabs F. A biased random-key genetic algorithm for the set orienteering problem. European Journal of Operational Research. 2021;292(3):830–854.
- 16. Faigl J. GSOA: Growing Self-Organizing Array–Unsupervised learning for the Close-Enough Traveling Salesman Problem and other routing problems. Neurocomputing. 2018;312:120–134.
- 17. Chou X, Gambardella LM, Montemanni R. A Tabu Search algorithm for the Probabilistic Orienteering Problem. Computers & Operations Research. 2021;126:105107.
- 18. Sohrabi S, Ziarati K, Keshtkaran M. ACS-OPHS: Ant Colony System for the Orienteering Problem with hotel selection. EURO Journal on Transportation and Logistics. 2021;10:100036.
- 19. Chagas JBC, Wagner M. Efficiently solving the thief orienteering problem with a max–min ant colony optimization approach. Optimization Letters. 2021.
- 20.
Optimal design of water distribution networks using harmony search; 2000. PhD Thesis, Korea University.
- 21.
Geem ZW. Harmony Search in Water Pump Switching Problem. In: Wang L, Chen K, Ong YS, editors. Advances in Natural Computation. Berlin, Heidelberg: Springer Berlin Heidelberg; 2005. p. 751–760.
- 22.
Geem ZW. Harmony Search Algorithm for Solving Sudoku. In: Apolloni B, Howlett RJ, Jain L, editors. Knowledge-Based Intelligent Information and Engineering Systems. Berlin, Heidelberg: Springer Berlin Heidelberg; 2007. p. 371–378.
- 23. Degertekin SO. Optimum design of steel frames using harmony search algorithm. Structural and Multidisciplinary Optimization. 2008;36(4):393–401.
- 24. Al-Betar MA, Khader AT. A harmony search algorithm for university course timetabling. Annals of Operations Research. 2012;194(1):3–31.
- 25. Nowakowski P, Szwarc K, Boryczka U. Combining an artificial intelligence algorithm and a novel vehicle for sustainable e-waste collection. Science of The Total Environment. 2020;730:138726.
- 26. Hadwan M, Ayob M, Sabar NR, Qu R. A harmony search algorithm for nurse rostering problems. Information Sciences. 2013;233:126–140.
- 27. Sarkar SS, Sheikh KH, Mahanty A, Mali K, Ghosh A, Sarkar R. A Harmony Search-Based Wrapper-Filter Feature Selection Approach for Microstructural Image Classification. Integrating Materials and Manufacturing Innovation. 2021;10(1):1–19.
- 28. Twaróg S, Szwarc K, Wronka-Pośpiech M, Dobrowolska M, Urbanek A. Multiple probabilistic traveling salesman problem in the coordination of drug transportation–In the context of sustainability goals and Industry 4.0. PLOS ONE. 2021;16(3):1–19. pmid:33765056
- 29. Peddakapu K, Mohamed MR, Srinivasarao P, Leung PK. Frequency stabilization in interconnected power system using bat and harmony search algorithm with coordinated controllers. Applied Soft Computing. 2021;113:107986.
- 30.
Boryczka U, Szwarc K. The Adaptation of the Harmony Search Algorithm to the ATSP. In: Intelligent Information and Database Systems–10th Asian Conference, ACIIDS 2018, Dong Hoi City, Vietnam, March 19-21, 2018, Proceedings, Part I; 2018. p. 341–351.
- 31. Wolpert DH, Macready WG. No free lunch theorems for optimization. IEEE Transactions on Evolutionary Computation. 1997;1(1):67–82.
- 32.
Geem ZW, Tseng CL, Park Y. Harmony Search for Generalized Orienteering Problem: Best Touring in China. In: Wang L, Chen K, Ong YS, editors. Advances in Natural Computation. Berlin, Heidelberg: Springer Berlin Heidelberg; 2005. p. 741–750.
- 33.
Mahdavi M. In: Geem ZW, editor. Solving NP-Complete Problems by Harmony Search. Berlin, Heidelberg: Springer Berlin Heidelberg; 2009. p. 53–70.
- 34. Tsakirakis E, Marinaki M, Marinakis Y, Matsatsinis N. A similarity hybrid harmony search algorithm for the Team Orienteering Problem. Applied Soft Computing. 2019;80:776–796.
- 35.
Szwarc K. Usprawnienie algorytmu Poszukiwania Harmonii w celu rozwiazywania wybranych wariacji problemu komiwojażera; 2021. PhD Thesis, University of Silesia in Katowice.
- 36.
Yang XS. In: Geem ZW, editor. Harmony Search as a Metaheuristic Algorithm. Berlin, Heidelberg: Springer Berlin Heidelberg; 2009. p. 1–14.
- 37. Weyland D. A critical analysis of the harmony search algorithm–How not to solve sudoku. Operations Research Perspectives. 2015;2:97–105.
- 38. Kim JH. Harmony Search Algorithm: A Unique Music-inspired Algorithm. Procedia Engineering. 2016;154:1401–1405.
- 39.
Komaki M, Sheikh S, Teymourian E. A Hybrid Harmony Search algorithm to minimize total weighted tardiness in the permutation flow shop. In: 2014 IEEE Symposium on Computational Intelligence in Production and Logistics Systems (CIPLS); 2014. p. 1–8.
- 40. Golden BL, Wang Q, Liu L. A multifaceted heuristic for the orienteering problem. Naval Research Logistics (NRL). 1988;35(3):359–366.
- 41. Boryczka U, Szwarc K. An effective hybrid harmony search for the asymmetric travelling salesman problem. Engineering Optimization. 2019. https://doi.org/10.1080/0305215X.2019.1579804
- 42.
Szwarc K, Boryczka U. A Comparative Study of Techniques for Avoiding Premature Convergence in Harmony Search Algorithm. In: Nguyen NT, Gaol FL, Hong TP, Trawiński B, editors. Intelligent Information and Database Systems. Cham: Springer International Publishing; 2019. p. 203–214.
- 43.
KU LEUVEN. The Orienteering Problem: Test Instances [Online; accessed 02.01.2022];. https://www.mech.kuleuven.be/en/cib/op/instances/.
- 44.
Kobeaga G. OPLib [Online; accessed 02.01.2022];. https://www.github.com/bcamath-ds/OPLib/.
- 45. Boryczka U, Szwarc K. The adaptation of the harmony search algorithm to the ATSP with the evaluation of the influence of the pitch adjustment place on the quality of results. Journal of Information and Telecommunication. 2019;3(1):2–18.
- 46. Lin S, Kernighan BW. An Effective Heuristic Algorithm for the Traveling-Salesman Problem. Operations Research. 1973;21(2):498–516.
- 47. Helsgaun K. An effective implementation of the Lin–Kernighan traveling salesman heuristic. European Journal of Operational Research. 2000;126(1):106–130.
- 48. Kantor MG, Rosenwein MB. The Orienteering Problem with Time Windows. The Journal of the Operational Research Society. 1992;43(6):629–635.
- 49. Chao IM, Golden BL, Wasil EA. The team orienteering problem. European Journal of Operational Research. 1996;88(3):464–474.