Exemplo n.º 1
0
        public int Controle()
        {
            double[]   dissimilaridades     = CalculaDistancias();
            double     menorDissimilaridade = dissimilaridades.Min();
            double     maiorDissimilaridade = dissimilaridades.Max();
            double     pulaLimiar           = (maiorDissimilaridade - menorDissimilaridade) / quantidadeLimiares;
            List <int> limiares             = new List <int>();

            for (double i = menorDissimilaridade; i <= maiorDissimilaridade; i += pulaLimiar)
            {
                for (int j = 0; j < iteracaoPorLimiar; j++)
                {
                    BSAS_NG BSAS = new BSAS_NG(padroes, i);
                    limiares.Add(BSAS.Agrupa());
                    Shake();
                }
            }

            int[] lista          = limiares.Cast <int>().ToArray();
            int   maisRecorrente = EstimaK(lista);

            Console.WriteLine("Moda" + maisRecorrente);
            Console.ReadLine();
            return(maisRecorrente);
        }
Exemplo n.º 2
0
        public int[] Controle()
        {
            ArrayList numerosGrupos = new ArrayList();

            CalculaDistancias();
            int[] vetorLimiares = new int[iteracaoPorLimiar];
            for (double i = menorDissimilaridade; i < maiorDissimilaridade; i += pulaLimiares)
            {
                for (int j = 0; j < iteracaoPorLimiar; j++)
                {
                    BSAS_NG BSAS = new BSAS_NG(padroes, i);
                    vetorLimiares[j] = BSAS.Agrupa();
                    Shake();
                }
                numerosGrupos.Add(EstimaK(vetorLimiares));
            }
            int[] lista = numerosGrupos.Cast <int>().ToArray();
            return(lista);
        }