Evolutionary and parallel approaches to NP problems