A lot of heuristic approaches have been explored in the last two decades in order to tackle large size optimization problems. These areas include parallel meta-heuristics, hybrid meta-heuristic, and cooperative search algorithms. Different taxonomies have been proposed in the literature for parallel and hybrid meta-heuristics. In these taxonomies, one can realize that cooperative search algorithms lie somewhere in between. This paper looks at cooperative search algorithms as a stand alone area. Two different taxonomies of cooperative search algorithm are proposed based on two different criteria. Different implementations in this area are reported and classified using these taxonomies.