public List<Organism> GAstep_mutation() throws Exception {
        /* mutation  */
        List<Organism> mutatedOrganisms = new ArrayList<Organism>();
        for (int i = 0; i < this.getSpeciesNumber(); i++) {
            mutatedOrganisms.addAll(species.get(i).mutation(getGenerationNumber()));
        }
        /**
         * speciate
         */
        if (!mutatedOrganisms.isEmpty()) {
            speciate(mutatedOrganisms);
        }
        return mutatedOrganisms;
    }