지난 강의에서 진화 시스템은 '생성—평가—선택—상속'이라는 폐루프를 통해 꾸준히 능력을 축적했습니다. 이번 강의에서는 이 사고를 한 단계 더 안쪽으로 밀어붙입니다. 즉 알고리즘이 문제를 푸는 것을 넘어, 알고리즘이 알고리즘을 개선하도록 만드는 것입니다.MetaDE MetaDE가 바로 이러한 중첩 진화 아키텍처입니다. 즉 차분 진화(DE)를 내부와 외부의 두 계층으로 분리하여 '알고리즘이 알고리즘을 최적화하는 것'을 실행 가능한 계산 과정으로 만들어 줍니다.
1. 두 계층의 역할 분담: 누가 풀고, 누가 진화하는가
MetaDE는 DE를 내부와 외부의 두 계층으로 구성하며, 두 계층이 다루는 대상은 완전히 다릅니다.
- 내부 DE(작업 계층): 실제 최적화 작업을 대상으로 후보해 집단을 유지하고, 변이·교차·선택을 반복 수행하여 해당 작업에서 우수한 해에 점차 다가갑니다. 이것은 '이 문제를 얼마나 잘 푸는가'에 답합니다.
- 외부 DE(메타 계층): 알고리즘 자체를 대상으로 하며, 집단의 각 개체는 작업해가 아니라 '변이 전략 + 파라미터'의 설정 전체입니다. 예를 들어 어떤 변이 방식을 사용하는지, 스케일링 인자와 교차 확률을 어떤 값으로 둘지 등입니다. 이것은 '이 알고리즘 설정이 쓸 만한가'에 답합니다.
따라서 외부 계층은 작업 변수를 직접 최적화하지 않으며, 작업 변수는 항상 내부 계층이 처리합니다. 외부 계층이 바꾸는 것은 내부 계층의 '작업 지침서'뿐입니다.
2. 상호작용 폐루프: 설정 하달과 성능 반환
두 계층은 양방향 통로로 결합되어 폐루프를 형성합니다. 외부가 먼저 하나의 알고리즘 설정을 생성하여 내부로 하달(→)하고, 내부는 그 설정에 따라 작업에서 실행한 뒤 종료되면 작업 성능(→)을 외부로 반환합니다. 외부는 이를 근거로 성능이 더 좋은 설정을 유지·재조합하고 다음 라운드의 설정을 만들어 냅니다. 전체 흐름은 '외부 설정 → 내부求解 → 작업 성능 → 외부 갱신'으로 요약되며 끊임없이 반복됩니다.
이 폐루프는 핵심적인 특성을 하나 가져옵니다. 내부 알고리즘의 변이 전략과 파라미터는 더 이상 사람이 한 번 설정한 뒤 고정되지 않고, 외부 탐색에 따라 계속 다시 쓰입니다. 알고리즘은 이로써 스스로를 개선하는 통로를 얻게 됩니다.
3. 실행 가능성의 전제: 병렬화와 비용 트레이드오프
중첩 구조에 대가가 없는 것은 아닙니다. 외부 평가를 할 때마다 하나의 설정을 작업에서 완전히 한 번 실행해야 하므로 평가 비용이 뚜렷하게 커집니다. 외부 집단이 클수록 총 비용은 더 높아집니다. 바로 이 때문에 MetaDE가 GPU 병렬화에 의존하는 것입니다. 여러 내부 설정을 동시에 평가할 수 있어 외부의 한 번의 반복에 필요한 시간이 크게 압축되며, 그제야 중첩 메타 진화가 엔지니어링 수준에서 실행 가능해집니다. 반대로 사용 가능한 병렬 자원이 부족하다면 외부 규모를 줄이거나 내부 평가 정밀도를 낮추는 것이 탐색을 무작정 확대하는 것보다 현실적입니다.
