private int[] geraSeleccao(double[] qualidade, double[] segmentos, double[] roleta) {
        int[] sel = new int[individuos.length];
        sel[0] = 0;

        ArrayList<Integer> resto = new ArrayList<Integer>(qualidade.length);

        Integer maior = 0;
        for (int i = 0; i < qualidade.length; i++) {
            resto.add(i);
            if (qualidade[maior] < qualidade[i]) {
                maior = i;
            }
        }
        sel[0] = maior;
        resto.remove(maior);

        int k = 0;
        maior = null;
        while (resto.size() > qualidade.length - elitismo) {
            k++;
            for (Integer ind : resto) {
                if (maior == null) {
                    maior = ind;
                } else if (qualidade[maior] < qualidade[ind]) {
                    maior = ind;
                }
            }
            sel[k] = maior;
            resto.remove(maior);
        }

        for (int i = elitismo; i < sel.length; i++) {
            for (int j = 0; j < segmentos.length; j++) {
                if (segmentos[j] > roleta[i - elitismo]) {
                    sel[i] = j;
                    break;
                }
            }
        }
        return sel;
    }