AlphaEvolve 評価ハーネスの評価指標を設計する際は、次の 3 つの異なるテストティアを確立します。
Tier 1: ソリューション検証テスト
これらのテストでは、完全な実行の前に、基本的なコード実行の安全性とポリシーの遵守を確認します。
実行の安全性: コードが実行されるかどうかを確認します。これには、構文の確認、コンパイル時間のチェック、静的解析の実行、インフラストラクチャの互換性のチェックが含まれます。
実行ポリシー: コードが機能する場合でも実行するかどうかを決定します。これには、linting、一般的なコード品質チェック、InfoSec レビュー、リスクとコンプライアンスの検証、API サプライ チェーンのチェックが含まれます。
考慮事項:
検証に失敗した場合は、
-10000や-100000などの高い負のスコアを返します。AlphaEvolve はこれらのプログラムを無視します。デバッグ用に、障害の種類とログを含めます。AlphaEvolve はこのメタデータを検索シグナルとして使用しませんが、障害モードの事後分析に役立ちます。
Tier 2: ソリューション検証テスト
これらのテストでは、単体テストと機能テストを使用して、アルゴリズムの正確性と制約の遵守を検証します。
機能の正確性: 単体テストと機能テストを使用して、コードが正しく動作するかどうかを確認します。
制約の遵守: ソリューションの実現可能性または制約の充足度を確認します。
報酬ハッキングの軽減: 報酬ハッキングを防ぐため、検証スコアをフィットネス関数の負のペナルティとして適用します。
-10000または-100000のスコアをアサートすることは、効果的なペナルティとなります。
考慮事項:
合格したテストの数または割合を返します。このアプローチでは、グラデーション信号が提供されます。5 つのテストのうち 4 つに合格したプログラムは、5 つのうち 0 つに合格したプログラムよりも正解に近いと認識されます。
検証はソフト制約の充足として扱います。厳しいシステム制約であっても、実行可能な空間への近接性に基づいてソフトなペナルティとして表現することで、AlphaEvolve はバイナリの合格または不合格よりも実用的な検索シグナルを得ることができます。
Tier 3: ソリューション評価テスト(パフォーマンス テスト)
これらのテストでは、最適化目標のタイプに応じて、目標のパフォーマンス指標が測定されます。
直接測定: 計測が可能な場合は、目標を直接トラッキングします。
決定論的推定: 古典的なオペレーションズ リサーチ スタイルの目的を分析的に計算します。
アウトオブサンプル検証: 機械学習パイプラインの最適化やエージェント ハーネスのチューニングに関連するユースケースについて、検証データセットに対してテストします。
シミュレーション ベースの推定: マルコフ連鎖モンテカルロ(MCMC)シミュレーション、ベイズ最適化タイプのプロキシ関数、その他のモデルベースのアプローチを使用します。
考慮事項:
粒度別スコアと集計スコアの両方を返します。
スコア計算を LLM にオフロードしないでください。評価ハーネス内で決定論的に計算します。AlphaEvolve は、事前に計算されたこれらのパフォーマンス スコアの合計に対してヒルクライムを行います。
部分的なクレジットは、検索の収束を加速するグラデーション信号を提供します。たとえば、5 つのテストのうち 4 つに合格したプログラムは、
Noneではなく0.8のスコアを受け取る必要があります。Noneを返すと、AlphaEvolve はプログラムを完全に無視し、有用なフィードバックが得られなくなります。スコアが0.8の場合、候補はほぼ正しく、最適化の可能性が高いことを示します。