Aller au contenu principal

_evaluator

Module pour évaluer les performances d'un solveur.

Ce module fournit des fonctions pour évaluer les performances d'un solveur sur un jeu de données. Il inclut des fonctions pour évaluer l'efficacité de recherche et les performances temporelles d'un solveur.

get_dataset

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

Obtient un jeu de données à partir d'un fichier ou le télécharge s'il n'existe pas.

Arguments:

  • filename str - Le nom du fichier du jeu de données.

Retourne:

  • dict - Le jeu de données.

evaluate_search_efficiency

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

Évalue les performances du modèle sur une performance temporelle en aval.

Cette fonction évalue les performances du modèle en résolvant un ensemble de mélanges en utilisant différentes largeurs de faisceau. Elle ajuste ensuite un prédicteur pour modéliser la relation entre la longueur de la solution et le temps, et prédit la longueur de solution réalisable en une seconde.

Arguments:

  • solver - Le solveur à évaluer.
  • num_samples int - Le nombre d'échantillons à utiliser pour l'évaluation.
  • beam_width int - La largeur de faisceau à utiliser pour l'évaluation.
  • verbose bool - Indique s'il faut afficher une barre de progression.

Retourne:

  • dict - Les résultats moyens.

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)

Évalue les performances du modèle sur une performance temporelle en aval.

Cette fonction évalue les performances du modèle en résolvant un ensemble de mélanges en utilisant différentes largeurs de faisceau. Elle ajuste ensuite un prédicteur pour modéliser la relation entre la longueur de la solution et le temps, et prédit la longueur de la solution à t=1.

Arguments:

  • solver - Le solveur à évaluer.
  • num_samples int - Le nombre d'échantillons à utiliser pour l'évaluation.
  • t_standard float - Le temps standard.
  • beam_width_space array - Les largeurs de faisceau à utiliser pour l'évaluation.
  • verbose bool - Indique s'il faut afficher une barre de progression.

Retourne:

  • float - La longueur de solution prédite à t=1.