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 o peso da subpontuação. Pode ser necessário executar 2 ou 3 testes para calibrar os pesos. 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 o peso da penalidade substancialmente. 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 ponto flutuante, 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-BLOCKnão foi alterado (diferença de texto ou AST).Execute a função evoluída duas vezes com a mesma entrada e verifique se a saída é idêntica (detecta 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.