Evaluating the effectiveness of mutation operators on the behaviour of geneticalgorithms applied to non-deterministic polynominal problems