/** * Crea un objeto ConfiguracionTabuSearch con valores por defecto */ public ConfiguracionTabuSearch() { tipoAspiracion = CriteriosAspiracionEnum.POR_OBJETIVO; tipoParada = CriteriosParadaEnum.NUM_ITERACIONES; listaTabu = new TabuListMovimientos(); maximizacion = true; objetivo = 0; }
/** * Permite fijar el criterio de parada del algoritmo. Para los criterios de * parada que tienen en cuenta el valor de evaluación, adicionalmente se * fija un número máximo de iteraciones de forma interna para evitar que el * algooritmo se ejecute por siempre en caso de que no se pueda alcanzar el * objetivo * @param tipoParada es el criterio de parada a ser usado * @param objetivo es el objetivo a ser usado en el criterio de parada. * Su significado varía dependiendo del tipo de criterio de parada. e.g. * para algoritmos que tienen en cuenta el número de iteraciones el objetivo * es el número máximo de iteraciones, y para los que tienen en cuenta la * evaluación el objetivo es el valor de evaluación deseado */ public void setCriterioParada(CriteriosParadaEnum tipoParada, double objetivo) { this.tipoParada = tipoParada; this.objetivo = objetivo; }