
Podcast
AlphaEvolve란 무엇인가?
AlphaEvolve는 Google DeepMind에서 개발한 혁신적인 AI 시스템입니다. 이는 고급 알고리즘 설계를 위한 Gemini 기반 코딩 에이전트입니다. 대규모 언어 모델(LLM)의 창의적인 문제 해결 능력과 자동화된 평가기를 결합하여 컴퓨터 분야의 수학 및 실제 애플리케이션을 위한 알고리즘을 발견하고 최적화하도록 설계되었습니다. AlphaEvolve는 단순히 코드를 생성하는 것을 넘어, 일반적인 알고리즘 발견 및 최적화를 위한 진화적 코딩 에이전트로서 작동합니다. Google의 Gemini 대규모 언어 모델의 창의성과 답변을 검증하는 자동화된 평가기를 결합하며, 가장 유망한 아이디어를 개선하기 위해 진화적 프레임워크를 사용합니다. 이는 단일 함수 발견을 넘어 전체 코드베이스를 진화시키고 훨씬 더 복잡한 알고리즘을 개발할 수 있도록 이전 작업인 FunSearch를 확장한 것입니다.
AlphaEvolve는 수학, 컴퓨터 과학 및 인프라 최적화와 같은 다양한 분야의 정교한 문제에 대응할 수 있도록 설계되었습니다. 이는 인간이 구축한 것보다 더 효율적인 알고리즘을 설계하며, DeepMind가 진정한 자율 AI를 향한 최신 단계로 간주됩니다. 이는 규칙을 따르는 것을 넘어 더 나은 규칙을 만들고, 인간의 개입 없이 새로운 알고리즘을 테스트, 선택 및 개선합니다. 결과적으로 더 빠르고 스마트하며 종종 완전히 새로운 프로그램이 탄생합니다.
AlphaEvolve의 작동 방식
AlphaEvolve의 핵심은 진화론적 접근 방식입니다. 이는 첨단 대규모 언어 모델의 앙상블을 활용합니다. 가장 빠르고 효율적인 모델인 Gemini Flash는 탐색되는 아이디어의 폭을 극대화하며, 가장 강력한 모델인 Gemini Pro는 통찰력 있는 제안으로 중요한 깊이를 제공합니다. 이러한 모델들은 알고리즘 솔루션을 코드로 구현하는 컴퓨터 프로그램을 제안합니다.
시스템은 다음 단계를 따릅니다:
- Prompt Sampler: 언어 모델을 위한 프롬프트를 구성합니다. 과학자나 엔지니어는 프롬프트 템플릿(AI에 질문하기 위한 청사진), 사용할 LLM, AI의 출력을 판단할 평가 코드, 시작할 초기 프로그램 등을 제공합니다.
- LLM Ensemble: Gemini Flash와 Gemini Pro 모델 앙상블이 프롬프트를 기반으로 새로운 프로그램을 생성합니다.
- Evaluators Pool: 자동화된 평가 지표를 사용하여 제안된 프로그램을 검증, 실행 및 점수를 매깁니다. 이러한 지표는 각 솔루션의 정확성과 품질에 대한 객관적이고 정량화 가능한 평가를 제공합니다. 이는 수학 및 컴퓨터 과학과 같이 진행 상황을 명확하고 체계적으로 측정할 수 있는 광범위한 도메인에서 특히 유용합니다. 알파이볼브가 잘못된 것을 스스로 아는 첫 번째 AI일 수 있다고도 언급됩니다.
- Programs Database: 평가된 프로그램은 프로그램 데이터베이스에 저장됩니다. 이 데이터베이스는 어떤 프로그램이 향후 프롬프트에 사용될지 결정하는 진화적 알고리즘을 구현합니다.
- Distributed Controller Loop: 시스템의 핵심은 이 반복적인 진화 프로세스입니다. AlphaEvolve는 가장 성능이 좋은 프로그램을 다음 개선 주기의 가이드로 사용합니다. 가장 성공적인 알고리즘이 다음 진화 라운드를 안내합니다. 시스템은 이러한 평가를 통해 솔루션 공간을 적극적으로 탐색하고 새로운 접근 방식을 발견하며 자동화된 평가 프로세스를 통해 이를 개선합니다.
AlphaEvolve는 훈련 데이터에서 코드를 생성하는 것뿐만 아니라, 솔루션 공간을 적극적으로 탐색하고, 새로운 접근 방식을 발견하며, 자동화된 평가 프로세스를 통해 이를 개선합니다. 명확한 평가 지표가 있는 모든 문제에서 작동할 수 있습니다. 이것이 LLM을 수십억 번 샘플링하는 것과 다른 점입니다. AlphaEvolve는 발견된 좋은 아이디어(“nuggets”)를 반복적으로 구축하고 개선하는 진화 알고리즘을 사용합니다.
주요 성과 및 영향
AlphaEvolve는 이미 Google 내부 및 외부에서 상당한 성과를 거두었습니다.
Google 컴퓨팅 생태계 최적화: AlphaEvolve가 발견한 알고리즘은 지난 1년 이상 Google의 데이터 센터, 하드웨어 및 소프트웨어 전반에 배포되었습니다. 이러한 개선 사항의 영향은 Google의 AI 및 컴퓨팅 인프라 전반에 걸쳐 확대됩니다.
- 데이터 센터 스케줄링 개선: AlphaEvolve는 Google의 방대한 데이터 센터를 보다 효율적으로 오케스트레이션하기 위한 간단하면서도 효과적인 발견법(heuristic)을 발견했습니다. 이는 Google의 대규모 클러스터 관리 시스템인 Borg를 강화하는 데 사용되었습니다. 이 솔루션은 1년 이상 프로덕션 환경에서 사용되고 있으며, 평균적으로 Google의 전 세계 컴퓨팅 자원의 0.7%를 지속적으로 회수합니다. 이는 동일한 컴퓨팅 발자국으로 더 많은 작업을 완료할 수 있음을 의미합니다. AlphaEvolve의 솔루션은 뛰어난 성능뿐만 아니라 인간이 읽을 수 있는 코드(human-readable code), 해석 가능성(interpretability), 디버깅 용이성(debuggability), 예측 가능성(predictability) 및 배포 용이성(ease of deployment) 이라는 운영상의 이점을 제공합니다. 이것은 이전에 사용된 난해한 강화 학습 모델과 대조됩니다. 이러한 변화만으로도 수백만 달러의 컴퓨팅 비용을 절감하고 연간 6,000가구가 사용할 전력을 절약했습니다.
- 하드웨어 설계 지원: AlphaEvolve는 행렬 곱셈을 위한 핵심 산술 회로에서 불필요한 비트를 제거하는 Verilog 재작성을 제안했습니다. 이 제안은 기능적 정확성을 확인하기 위한 견고한 검증 방법을 통과했으며, 향후 Tensor Processing Unit (TPU), 즉 Google의 맞춤형 AI 가속기에 통합될 예정입니다. 이는 AI와 하드웨어 엔지니어 간의 협업 접근 방식을 촉진합니다.
- AI 학습 및 추론 강화: AlphaEvolve는 AI 성능과 연구 속도를 가속화하고 있습니다. Gemini 아키텍처의 필수 커널인 대규모 행렬 곱셈 연산을 더 관리하기 쉬운 하위 문제로 분할하는 방법을 찾아 이 작업의 속도를 23% 향상시켰습니다. 이는 Gemini 학습 시간의 1% 감소로 이어졌습니다. 생성형 AI 모델 개발에 상당한 컴퓨팅 자원이 필요하기 때문에 모든 효율성 향상은 상당한 절약으로 이어집니다. 또한 커널 최적화에 필요한 엔지니어링 시간을 전문가 노력의 몇 주에서 자동화된 실험의 몇 일로 단축했습니다.
- 저수준 GPU 명령어 최적화: 컴파일러에 의해 이미 고도로 최적화된 영역에서도 Transformer 기반 AI 모델의 FlashAttention 커널 구현에서 최대 32.5%의 속도 향상을 달성했습니다. Nvidia A100 GPU에서 3.5%, A6000에서 9.9%, H100에서 최대 32.5%의 속도 향상을 보였습니다. 이러한 종류의 최적화는 전문가가 성능 병목 현상을 파악하고 개선 사항을 쉽게 코드베이스에 통합하여 생산성을 높이고 컴퓨팅 및 에너지의 미래 절약을 가능하게 합니다.
수학 및 알고리즘 발견 발전: AlphaEvolve는 복잡한 수학 문제에 대한 새로운 접근 방식을 제안할 수도 있습니다.
- 행렬 곱셈: 최소한의 코드 골격이 주어졌을 때, AlphaEvolve는 행렬 곱셈을 위한 여러 가지 새로운 알고리즘을 발견한 새로운 경사 기반 최적화 절차의 많은 구성 요소를 설계했습니다. 특히, 4×4 복소수 행렬을 48번의 스칼라 곱셈으로 곱하는 알고리즘을 찾아냈는데, 이는 1969년 Strassen 알고리즘(이전에는 49번이 최고 기록)을 56년 만에 경신한 것입니다. 이 발견은 행렬 곱셈 알고리즘에 특화된 이전 작업인 AlphaTensor의 4×4 행렬에 대한 결과보다 뛰어납니다. 총 14개의 행렬 곱셈 알고리즘에 대한 최첨단 성능을 개선했습니다. 이는 실수 행렬 곱셈에 사용되는 일반화 가능한 알고리즘이며, AlphaEvolve가 태스크를 더 어렵게 만들수록(복소수 행렬 곱셈을 탐색함으로써) 더 나은 솔루션을 찾을 수 있음을 보여줍니다. 3×3 행렬과 같이 더 작은 경우에도 여전히 알려지지 않은 최적의 곱셈 횟수(19와 23 사이)가 있다는 점은 주목할 만합니다. AlphaEvolve는 크기가 커질수록(예: 6×6) 최고 성능을 항상 능가하지는 못했지만, 이는 종종 특정 대칭이나 편향 없이 일반적인 접근 방식을 사용했기 때문일 수 있습니다.
- 오픈 문제 해결: 수학 분석, 기하학, 조합론 및 정수론의 50개 이상의 오픈 문제에 적용되었습니다. 대부분의 실험을 몇 시간 내에 설정할 수 있었습니다. 약 75%의 경우에서 최신 솔루션을 재발견했으며, 약 20%의 경우에서 이전의 최고 알려진 솔루션을 개선하여 해당 오픈 문제에 진전을 이루었습니다.
- 키싱 넘버 문제: 11차원에서 593개의 외부 구체 구성을 발견하여 새로운 하한선을 설정했습니다. 이는 이전 기록인 592개를 넘어선 것입니다.
기술적 통찰 및 과제
AlphaEvolve의 작동 방식은 LLM의 창의성과 엄격한 평가를 결합한 진화적 탐색을 통해 이루어집니다.
- 진화적 탐색 및 다양성: 진화 알고리즘은 탐색 프로세스에서 다양성을 제공하여 시스템이 너무 이른 단계에서 특정 접근 방식에 집중하지 않고 광범위한 가능성을 계속 탐색하도록 합니다. 특히 어려운 문제를 해결하고 새로운 과학적 발견을 할 때 어떤 접근 방식이 올바른지 미리 알 수 없으므로 다양한 가능성을 탐색하는 것이 중요합니다.
- 문제 표현의 유연성: AlphaEvolve는 문제 해결을 위한 다양한 수준의 추상화를 지원합니다. 때로는 솔루션을 직접 찾고, 때로는 솔루션을 구성하는 간단한 생성자 함수를 찾거나, 때로는 솔루션을 찾는 복잡한 검색 알고리즘(예: 행렬 곱셈의 경우)을 찾습니다. 또한 공동 진화(co-evolution)의 가능성도 있습니다. 올바른 추상화 수준을 선택하는 것은 직관에 의존하며 향후 연구 영역입니다.
- 자동 평가 및 제약: AlphaEvolve가 작동하려면 해결하려는 문제에 대한 명확한 평가 지표가 있어야 합니다. 이는 적용할 수 있는 문제의 범위를 제한하지만, 빠른 피드백 루프를 통해 시스템 개선을 가능하게 합니다.
- 정지 문제(Halting Problem): 프로그램 실행 시 정지 문제의 가능성(프로그램이 언제 종료될지 알 수 없음)은 존재하지만, 실제 적용에서는 문제가 되지 않았습니다. 문제를 해결 시간 제약(예: 10분 안에 진행할 수 있는 검색 알고리즘 찾기)을 포함하여 정의함으로써 이를 해결할 수 있습니다. 이는 인간 연구자가 언제 문제 작업을 중단해야 할지 결정하는 것과 유사합니다.
- 이산 문제에서의 Hill Climbing: 프로그램과 같이 이산적인 문제 공간에서도 Hill Climbing 기법을 통합할 수 있습니다. 때로는 자연스러운 보상 함수(예: 행렬 곱셈에서의 손실)가 있지만, 종종 창의적인 보조 보상(auxiliary rewards)을 고안하거나 커리큘럼(예: 작은 크기의 행렬부터 시작하여 점차 큰 크기로 이동)을 사용하여 점진적인 개선을 유도합니다. 여러 관련 작업을 동시에 최적화하는 것도 도움이 될 수 있습니다.
- 해석 가능성과 복잡성: AlphaEvolve는 매우 단순하고 인간이 쉽게 검증 및 배포할 수 있는 코드부터, 복잡하고 난해하지만 성능이 뛰어난 알고리즘까지 생성할 수 있습니다. 생성된 코드를 검사하여 새로운 수학적 통찰이나 가설을 도출할 수도 있습니다.
- 이진 보상 및 증명: 증명 찾기와 같이 성공/실패가 이진 보상(0 또는 1)인 문제에 대해서는 현재 AlphaEvolve가 점진적인 개선을 위한 부드러운 보상(soft scores)에 초점을 맞추고 있기 때문에 더 어렵습니다. 하지만 LLM에게 피드백을 제공하게 하여 진행 상황에 대한 부드러운 점수를 얻는 방식으로 이 문제를 해결할 가능성을 모색하고 있습니다.
- 시뮬레이션에서 실제 세계로: 로봇 공학이나 신약 개발과 같이 실제 세계 실험이 비싸거나 어려운 문제의 경우, 자동화된 검증(예: 시뮬레이션)과 비용이 많이 드는 실제 실험 사이의 격차를 해소해야 합니다. AlphaEvolve는 저렴한 방법으로 아이디어를 먼저 필터링한 다음, 가장 유망한 아이디어만 비용이 많이 드는 평가를 위해 진행하는 평가 캐스케이드(evaluation cascades)를 활용하여 이러한 문제를 해결할 수 있도록 잘 설정되어 있습니다. 이는 인간 연구자가 유한한 예산으로 수행하는 방식과 유사합니다.
- 지식 저장 및 재사용: 시스템은 제안된 프로그램을 실행한 결과를 통해 자체 지식을 늘릴 수 있습니다. 또한 시스템이 자체적으로 유용한 모듈이나 프롬프트 데이터베이스를 구축하는 것이 가능하며, 이는 미래 연구 영역입니다. 이미 잘 작동하는 프롬프트 집합을 큐레이션하는 메타 프롬프팅(meta prompting) 아이디어가 구현되었습니다. AlphaEvolve가 발견한 알고리즘을 사용하여 미래 실험을 초기화하는 것도 가능합니다.
인간-AI 협업
AlphaEvolve는 인간과 AI 간의 강력한 협업 루프를 지향합니다. 인간은 문제 정의, 평가 기능 설정, 초기 프로그램 제공 등 중요한 초기 입력을 제공합니다. 시스템은 이러한 입력 내에서 탐색, 개선 및 발견을 수행합니다. 생성된 코드는 인간 엔지니어에게 배포 및 디버깅 용이성을 제공하며, 심지어 인간이 새로운 통찰을 얻을 수 있는 기회를 제공하기도 합니다.
개발자들은 AlphaEvolve의 강점이 인간과 기계 간의 이러한 왕복(back and forth) 상호 작용에 있다고 강조합니다. 인간은 질문하고, 시스템은 답변을 제공하며, 이를 통해 인간의 직관과 질문 능력이 향상되어 더 나은 질문을 할 수 있게 됩니다. Google은 People + AI Research 팀과 함께 AlphaEvolve와의 상호 작용을 위한 사용자 인터페이스를 구축하고 있으며, 인간이 프로세스에 개입하고, 아이디어에 대해 코멘트하고, 새로운 아이디어를 주입하는 등의 기능을 탐색하고 있습니다. 이는 단순히 자동화하는 것을 넘어 인간과 AI 간의 공생 관계를 구축하는 것입니다.
미래 전망
AlphaEvolve는 대규모 언어 모델의 능력 향상과 함께 계속 발전할 것으로 예상됩니다. Gemini Pro 2.5와 같은 모델의 개선이 AlphaEvolve의 성능 향상으로 이어지는 것을 이미 확인했습니다. 또한, AlphaEvolve가 달성한 개선된 기능을 기본 모델 자체에 증류(distill)하는 가능성도 있습니다.
Google은 선정된 학계 사용자를 위한 얼리 액세스 프로그램을 계획하고 있으며, 더 광범위하게 제공할 가능성도 모색하고 있습니다. 관심 있는 경우 양식을 작성하여 등록할 수 있습니다.
AlphaEvolve는 현재 수학 및 컴퓨팅 분야에 주로 적용되고 있지만, 그 범용성은 알고리즘으로 설명되고 자동으로 검증될 수 있는 모든 문제에 적용될 수 있음을 의미합니다. 재료 과학, 신약 개발, 지속 가능성, 더 넓은 기술 및 비즈니스 애플리케이션과 같은 다양한 분야에서 변혁적 역할을 할 수 있을 것으로 기대됩니다.
이 시스템은 특정 도메인을 위한 알고리즘 발견에서 광범위한 실제 문제에 대한 더 복잡한 알고리즘 개발로의 진행을 보여줍니다. 최고의 인간-AI 협업이 오픈된 과학적 과제를 해결하고 Google 규모로 적용하는 데 도움이 될 수 있음을 보여줍니다. 또한 AlphaEvolve 자체의 인프라(예: Gemini 학습)를 최적화함으로써 재귀적 자기 개선(recursive self-improvement)의 초기 단계가 이미 일어나고 있음을 보여줍니다.
물론, 이러한 강력한 AI 시스템에는 투명성, 감독 및 강력한 윤리적 프레임워크의 필요성과 같은 위험도 수반됩니다. 누가 이러한 시스템을 통제하고 어떻게 공익을 위해 사용되며 악의적인 행위자의 손에 들어갔을 때 어떻게 되는지에 대한 질문은 여전히 남아 있습니다.
AlphaEvolve는 알고리즘 설계의 미래를 엿볼 수 있게 해주는 수년 만에 가장 흥미로운 발전 중 하나입니다. 이는 수십 년 또는 수세기 동안 인간의 지능에 도전해 온 문제를 해결할 수 있는 일반 목적 AI 에이전트의 힘을 보여줍니다.