Pencegahan peretasan reward

Ada sejumlah risiko yang terkait dengan peretasan reward. Lihat hal berikut untuk mengetahui risiko dan strategi mitigasi yang sesuai.

Risiko 1:

Peretasan reward yang serakah. Jika Obj = w1*S1 + w2*S2 + w3*S3, AlphaEvolve dapat menemukan S2 untuk ditingkatkan dan berfokus sepenuhnya pada S2, dengan mengabaikan S1 dan S3.

Mitigasi:

Kurangi bobot sub-skor. Mungkin memerlukan 2-3 uji coba untuk mengkalibrasi bobot. Simulasi dasar awal dari beberapa hasil penilaian akan membantu.

Risiko 2:

Mengabaikan penalti batasan. Jika batasan fleksibel adalah penalti (Obj = Score - w*Penalty), AlphaEvolve dapat menemukan bahwa mengabaikan batasan akan menghasilkan Obj yang lebih tinggi.

Mitigasi:

Tingkatkan bobot penalti secara signifikan. Jika perilaku berlanjut, tambahkan petunjuk eksplisit dalam deskripsi masalah seperti "Solusi yang melanggar batasan X tidak valid, terlepas dari skornya".

Risiko 3:

Eksploitasi fungsi evaluasi. AlphaEvolve dapat menemukan input yang menyebabkan evaluator menampilkan skor yang sangat tinggi secara artifisial (kasus ekstrem floating-point, kebocoran data pengujian).

Mitigasi:

Evaluasi deterministik dengan nilai awal acak tetap. Validasi pemenang pada data yang disimpan setelah eksperimen.

Untuk mencegah peretasan reward, terapkan teknik umum berikut:

  • Gunakan pemeriksaan AST untuk primitif yang dilarang (sys, os, inspect, eval, exec, getattr, setattr) dan tampilkan None jika ditemukan.

  • Pastikan kode di luar EVOLVE-BLOCK tidak berubah (perbedaan teks atau AST).

  • Jalankan fungsi yang dikembangkan dua kali dengan input yang sama dan pastikan outputnya identik (mencegah peretasan acak).

  • Periksa waktu evaluasi. Jika selesai dalam mikrodetik, kemungkinan jawabannya dikodekan secara permanen.

  • Tempatkan logika penilaian dalam file terpisah yang tidak terlihat oleh LLM.