Há vários riscos associados à invasão de recompensas. Confira a seguir os riscos e as estratégias de mitigação correspondentes.
Risco 1:
Invasão de recompensas gananciosa. Se Obj = w1*S1 + w2*S2 + w3*S3, o AlphaEvolve poderá descobrir o S2 para aumentar e se concentrar totalmente nele, ignorando o S1 e o S3.
Mitigação:
Diminua a ponderação da subpontuação. Pode exigir de 2 a 3 execuções de teste para calibrar as ponderações. Simulações de referência preliminares de alguns resultados de pontuação ajudam.
Risco 2:
Ignorar a penalidade de restrição. Se as restrições flexíveis forem penalidades
(Obj = Score - w*Penalty), o AlphaEvolve poderá descobrir que ignorar as restrições
gera um Obj maior.
Mitigação:
Aumente substancialmente a ponderação da penalidade. Se o comportamento persistir, adicione instruções explícitas na descrição do problema, como "As soluções que violam a restrição X são inválidas, independentemente da pontuação".
Risco 3:
Exploração da função de avaliação. O AlphaEvolve pode encontrar entradas que fazem com que o avaliador retorne pontuações artificialmente altas (casos extremos de usar pontos flutuantes, vazamento de dados de teste).
Mitigação:
Avaliação determinista com sementes aleatórias fixas. Valide os vencedores nos dados retidos após o experimento.
Para evitar a invasão de recompensas, implemente as seguintes técnicas gerais:
Use verificações de AST para primitivos proibidos (sys, os, inspect, eval, exec, getattr, setattr) e retorne
Nonese encontrados.Verifique se o código fora de
EVOLVE-BLOCKestá inalterado (diferença de texto ou AST).Execute a função evoluída duas vezes com a mesma entrada e verifique a saída idêntica (detecta a invasão de aleatoriedade).
Verifique o tempo de avaliação. Se terminar em microssegundos, provavelmente a resposta foi codificada.
Coloque a lógica de pontuação em um arquivo separado invisível para o LLM.