“…Therefore, this challenge has led to the need to develop algorithms that can produce near-optimal solutions in a reasonable amount of time [12]. During the years, different solution approaches have been developed including exact algorithms (such as branch-and-bound [13,14] and branch-and-cut [15]), heuristic algorithms (such as the Clarke-Wright savings algorithm [16]), and metaheuristic algorithms (such as simulated annealing [17,18], genetic algorithms [19], tabu search [20], and ant algorithms [21]. Earlier, conventional heuristic algorithms were designed as a response to limited computer processing power.…”