Zum Hauptinhalt springen

_evaluator

Modul zur Bewertung der Leistung eines Lösers.

Dieses Modul stellt Funktionen zur Verfügung, um die Leistung eines Lösers auf einem Datensatz zu bewerten. Es enthält Funktionen zur Bewertung der Sucheffizienz und der zeitlichen Leistung eines Lösers.

get_dataset

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

Ruft einen Datensatz aus einer Datei ab oder lädt ihn herunter, wenn er nicht existiert.

Argumente:

  • filename str - Der Dateiname des Datensatzes.

Rückgabewert:

  • dict - Der Datensatz.

evaluate_search_efficiency

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

Bewertet die Leistung des Modells hinsichtlich der zeitlichen Leistung.

Diese Funktion bewertet die Leistung des Modells, indem es eine Reihe von Scrambles mit verschiedenen Strahlbreiten löst. Anschließend wird ein Prädiktor angepasst, um die Beziehung zwischen Lösungslänge und Zeit zu modellieren, und die Lösungslänge vorhergesagt, die in nur einer Sekunde erreichbar ist.

Argumente:

  • solver - Der zu bewertende Löser.
  • num_samples int - Die Anzahl der für die Bewertung zu verwendenden Stichproben.
  • beam_width int - Die für die Bewertung zu verwendende Strahlbreite.
  • verbose bool - Ob ein Fortschrittsbalken angezeigt werden soll.

Rückgabewert:

  • dict - Die mittleren Ergebnisse.

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)

Bewertet die Leistung des Modells hinsichtlich der zeitlichen Leistung.

Diese Funktion bewertet die Leistung des Modells, indem es eine Reihe von Scrambles mit verschiedenen Strahlbreiten löst. Anschließend wird ein Prädiktor angepasst, um die Beziehung zwischen Lösungslänge und Zeit zu modellieren, und die Lösungslänge bei t=1 vorhergesagt.

Argumente:

  • solver - Der zu bewertende Löser.
  • num_samples int - Die Anzahl der für die Bewertung zu verwendenden Stichproben.
  • t_standard float - Die Standardzeit.
  • beam_width_space array - Die für die Bewertung zu verwendenden Strahlbreiten.
  • verbose bool - Ob ein Fortschrittsbalken angezeigt werden soll.

Rückgabewert:

  • float - Die vorhergesagte Lösungslänge bei t=1.