In general, both metaheuristics have good searching abilities, however, there is one main difference between them. SA is a single solution based algorithm, while GA is a population based algorithm. Meaning that, SA starts with only one solution and try to enhance it, while GA has several solutions - or maybe hundreds solutions based on the population size. In other words, SA has only (Exploitation), while GA has both ( Exploration and Exploitation ). Therefore, we called SA as a exploitative algorithm.
From the explanation above, both of these algorithms depend on the nature of the problem. If the problem has only one optimal solution ( Unimodal) then, SA and GA can be applied. If the problem has more than one optimal solution, GA will find solutions better than SA. Because in multi-model problems, we are looking for both searching capabilities (Exploration and Exploitation ) . SA will trap in the local optima because it doesn't have exploration.
Indeed Sinan Salih , as a matter of fact, when i combine SA and GA in multiagent based platforms vs when i used GA standalone, the results are comparably similar with the exception that standalone GA runs faster.
Thanks Todor Balabanov for the link, read it yesterday
For many problems, we see a lot of journal articles/publications having adopted a combination of both the techniques- Genetic algorithms+ Local search techniques such as Simulated Annealing/Tabu Search etc.
Have these algorithms produced better solutions, by and large, than a standalone GA-based approach?