Optimierung mehrerer Ziele

AlphaEvolve kann mehrere Ziele gleichzeitig optimieren. AlphaEvolve unterstützt zwar die Optimierung mehrerer Ziele, die Anzahl der einzelnen Ziele sollte jedoch auf die Anzahl beschränkt sein, die ein menschlicher Experte bei der Analyse der Ergebnisse erfassen kann.

Mit den folgenden Ansätzen können Sie Ihre Suchstrategie mit mehreren Zielvorhaben strukturieren:

  1. Kombinierte Zielfunktion: Ein Ansatz für die Optimierung mehrerer Ziele ist die Verwendung einer kombinierten Zielfunktion:

    obj = w1 * in_stock_rate - w2 * inventory_level
    
  2. Ein Ziel als Einschränkung behandeln: Ein anderer Ansatz besteht darin, ein Ziel als Einschränkung zu behandeln. Das ist nützlich, um einen Messwert zu optimieren und gleichzeitig zu verhindern, dass der andere einen Grenzwert über- oder unterschreitet.

    obj = in_stock_rate` # Optimize this
    
    # With: inventory_level <= budget (enforced as penalty where if inventory
    # level exceeds budget then a high negative value is returned)
    

    Bei diesem Ansatz müssen möglicherweise mehrere Tests mit unterschiedlichen Einschränkungsstufen durchgeführt werden, um die Pareto-Front zu ermitteln.

  3. Fügen Sie verschiedene Messwerte als einzelne Messwerte in das Wörterbuch ein. Beachten Sie die folgenden wichtigen Überlegungen zu diesem Ansatz:

    • Beschränken Sie die Optimierung mehrerer Ziele auf 3–5 Messwerte. Bei zu vielen Messwerten schlägt der Pareto-Komparator fehl – fast jedes Programm dominiert bei mindestens einem Messwert. MAP Elites verbringt die meiste Zeit damit, Eltern zu entwickeln, die triviale oder verrauschte Messwerte optimieren. Reduzieren Sie die Dimensionalität durch Aggregation, Auswahl oder PCA auf 3–5 aussagekräftige Messwerte.

    • Einzelne Punktzahlen pro Benchmark können zu einer Überanpassung führen. Wenn Sie einzelne Punktzahlen für 5 Benchmarks übergeben, kann dies zu einer Überanpassung bei einigen Benchmarks führen. Wenn Sie nur die aggregierte Summe übergeben, lässt sich das besser auf unbekannte Benchmarks verallgemeinern. Wenn Generalisierung wichtig ist, sollten Sie die Bewertungen aggregieren, bevor Sie sie an AlphaEvolve übergeben, anstatt jeden Benchmark unabhängig zu optimieren.

Wenn Sie diese Funktion aktivieren, verfolgt AlphaEvolve eine Pareto-Grenze und MAP-Elites behält das beste Programm für jeden Messwert bei. Kombinierte gewichtete Bewertungen bieten jedoch einfachere Argumentation und Fehlerbehebung.