평가 하네스 내에서 후보 코드 항목을 점수화, 정규화, 페널티를 적용하는 방법을 결정할 때는 다음 아키텍처 원칙을 적용하세요.
목표 직접 최대화
AlphaEvolve는 모든 최적화 타겟을 언덕 오르기 작업으로 취급하여 최대화 검색만 실행합니다. 지연 시간이나 오류율과 같은 측정항목을 최소화하려면 최종 계산 값 score = -latency_ms # AE maximizes -> minimizes latency를 부정해야 합니다.
엄격한 함수 단조성 유지
단조 점수 매기기 함수만 구현해야 합니다. 반환된 숫자 점수는 후보 솔루션이 개선됨에 따라 일관되게 증가해야 합니다. 비단조 점수를 통합하면 검색 성능이 저하되고 최적화 경로에 논리적 불일치가 발생합니다.
세부적인 측정항목 제공
세부 점수는 전반적인 검색 품질을 직접적으로 개선합니다. 단일 핵심 비즈니스 목표에 맞게 최적화하는 경우에도 보조 또는 프록시 측정항목을 통합하면 AlphaEvolve가 복잡한 검색 공간을 더 효과적으로 탐색할 수 있습니다. LLM이 세대 간 성능 트레이드오프에 관해 명시적으로 추론할 수 있도록 개별 하위 점수를 구조화된 통계로 시스템에 다시 전달합니다.
드문 결과보다 부분적인 성공에 보상
터미널 또는 바이너리 결과에만 전적으로 의존하지 않고 부분적인 성공에 대한 보상을 제공합니다. 항상 희소한 점수 신호보다 밀도 높은 점수 신호를 선호합니다.
이진 또는 저해상도 목표 (예: 토너먼트 기반 게임 문제에서 승리한 경기 추적)는 여러 후보자가 동점인 대규모 성능 정체 구간을 만듭니다. 이 동작으로 인해 AlphaEvolve가 아슬아슬한 경우와 좋지 않은 해결 방법을 구분할 수 없어 상위 선택 루프가 중단됩니다.
검색 경사 방향을 유지하려면 다음 단계를 따르세요.
세부적인 하위 신호 추가: AlphaEvolve가 그렇지 않으면 동점인 후보를 순위 지정하고 유망한 솔루션 공간으로 언덕 오르기를 할 수 있도록 최종 목표를 향한 점진적인 진행 상황 (예: 경기 내에서 획득한 개별 점수)을 측정합니다.
정렬과 가중치를 신중하게 조정하세요. 하위 신호가 실제 목표와 단조롭게 정렬되고 그 아래에서 안전하게 가중치를 부여해야 합니다. 가중치가 올바르게 지정되지 않으면 AlphaEvolve가 실제 목표를 희생하여 프록시 측정항목을 최적화합니다 (리워드 해킹 발생).
예를 들어 포인트를 논리적 동점 타이브레이커로 사용하여 스칼라 목표 함수를 구성합니다(use score = matches_won + w * (points_scored / points_possible)).
추가 터미널 승리가 항상 경기 내 포인트 누적보다 순위가 높도록 가중치 제약 조건을 w < 1로 구성하여 하위 신호를 엄격하게 동점 타이브레이커로 처리합니다.
단일 목표로 시작
단일 목표 함수로 구현을 시작하는 것이 좋습니다. 포괄적인 파레토 프런티어 추적을 통한 다중 목표 최적화는 데이터베이스에서 기본적으로 완전히 지원되지만, 여기서 MAP-Elites는 측정항목별로 최적의 프로그램을 추적하고 시스템은 모든 측정항목에서 실행 중인 파레토 프런티어를 유지합니다. 단일 스칼라 목표는 초기 배포 중에 추론하고 디버그하는 것이 훨씬 간단합니다. 문제에 여러 목표가 필요한 경우 목표를 하나의 가중치가 적용된 스칼라로 결합하거나 처음부터 다중 측정항목 추적 도구를 활용할 수 있습니다.
결합하기 전에 크기 조정 및 정규화
최적화 편향을 방지하려면 측정항목 전반에 걸쳐 엄격한 규모 균형을 적용하세요.
범위 간 재조정: 측정항목을 결합하기 전에 비교 가능한 범위로 정규화합니다. 명시적으로 크기를 조정하지 않고 경계가 있는 점수 (
0~1)와 경계가 없는 점수 (0~infinity)를 결합하면 경계가 없는 측정항목이 적합성 환경을 지배하게 됩니다.곱셈 조합보다 덧셈 구조를 선호하세요. 곱셈 목표는 분모의 미세한 변화에 지나치게 민감해져 검색 정확도와 안정성을 저해할 수 있습니다. 대신 가중치가 적용된 합계를 구현하세요(
w1*A - w2*L - w3*M). 이 형식을 사용하면 실적 매개변수별로 가중치를 간단하게 조정할 수 있습니다.초기 값에 상대적으로 정규화: 검색 경로가 왜곡되지 않도록 가중치를 적용하고 결합하기 전에 모든 측정항목이
1.0의 기준에서 시작되도록 각 측정항목을 해당 초기 기준 값으로 나눕니다.
최소한의 숫자 차이 증폭
숫자 점수 차이가 작으면 기본 LLM에 유용한 최적화 신호를 제공하지 못할 수 있습니다. 유능한 후보자가 1e-7점을 받고 약한 후보자가 1e-8점을 받으면 LLM이 컨텍스트를 검토할 때 이들을 의미 있게 구분하지 못할 수 있습니다. 생성 프롬프트 내에서 증분 코드 개선사항이 수치적으로 명확해지도록 최종 점수를 명확하고 사람이 읽을 수 있는 범위 (예: 0~100)로 조정합니다.