An efficient GPU-based parallel tabu search algorithm for hardware/software co-design