public override void Mutate()
{
var rand = Generator.Random;
// randomly choose mutation method
switch (rand.Next(3))
{
case 0: // ordinary gene mutation
MutateGene();
break;
case 1: // IS transposition
TransposeIS();
break;
case 2: // root transposition
TransposeRoot();
break;
}
}