Saltar al contenido principal

_evaluator

Módulo para evaluar el rendimiento de un solucionador.

Este módulo proporciona funciones para evaluar el rendimiento de un solucionador en un conjunto de datos. Incluye funciones para evaluar la eficiencia de búsqueda y el rendimiento temporal de un solucionador.

get_dataset

def get_dataset(filename="deepcubea-dataset--cube3.json")

Obtiene un conjunto de datos de un archivo o lo descarga si no existe.

Argumentos:

  • filename str - El nombre del archivo del conjunto de datos.

Retorna:

  • dict - El conjunto de datos.

evaluate_search_efficiency

def evaluate_search_efficiency(solver, num_samples=1000, beam_width=2**10 if device.type == "cpu" else 2**13, verbose=False)

Evalúa el rendimiento del modelo en un rendimiento temporal posterior.

Esta función evalúa el rendimiento del modelo resolviendo un conjunto de mezclas utilizando diferentes anchos de haz. Luego ajusta un predictor para modelar la relación entre la longitud de la solución y el tiempo, y predice la longitud de la solución alcanzable en solo un segundo.

Argumentos:

  • solver - El solucionador a evaluar.
  • num_samples int - El número de muestras a utilizar para la evaluación.
  • beam_width int - El ancho del haz a utilizar para la evaluación.
  • verbose bool - Si se debe mostrar una barra de progreso.

Retorna:

  • dict - Los resultados promedio.

evaluate_temporal_performance

def evaluate_temporal_performance(solver, num_samples=1000, t_standard=1.0, beam_width_space=2 ** np.arange(6 if device.type == "cpu" else 10, 16 + 1), verbose=False)

Evalúa el rendimiento del modelo en un rendimiento temporal posterior.

Esta función evalúa el rendimiento del modelo resolviendo un conjunto de mezclas utilizando diferentes anchos de haz. Luego ajusta un predictor para modelar la relación entre la longitud de la solución y el tiempo, y predice la longitud de la solución en t=1.

Argumentos:

  • solver - El solucionador a evaluar.
  • num_samples int - El número de muestras a utilizar para la evaluación.
  • t_standard float - El tiempo estándar.
  • beam_width_space array - Los anchos de haz a utilizar para la evaluación.
  • verbose bool - Si se debe mostrar una barra de progreso.

Retorna:

  • float - La longitud de solución predicha en t=1.