8

알고리즘과 문제 모듈 분할

AI999第4课:现代计算底座与张量化并行演化
00:00

EvoX의개방형 디커플링 기반에서는 하나의 완전한 진화 흐름이 교체 가능한 두 개의 '블록'으로 분리됩니다:알고리즘 모듈은 '어떻게 탐색할 것인가'를 담당하고,문제 모듈은 '무엇을 평가하고, 환경이 어떻게 피드백하는가'를 담당합니다. 두 모듈은 명확한 인터페이스 계약을 통해 연결되어 재사용, 교체, 이전이 가능한 진화 흐름을 구성합니다.

EvoX 개방형 디커플링 기반알고리즘 모듈과 문제 모듈의 인터페이스 상호작용 구성도알고리즘 모듈캡슐화: 어떻게 탐색할 것인가후보해 생성 및 개체군 초기화변이 / 교차 / 선택탐색 제어: 세대 수, 규모, 수렴 판정 기준목적 함수의 물리적 형태에 의존하지 않음문제 모듈캡슐화: 평가와 환경 피드백목적값, 적합도, 제약 위반량환경 상호작용 결과변수 차원과 값 범위동일한 후보해 집단에 일관된 평가 제공후보해 배치평가 결과: 목적 벡터 / 제약 위반량인터페이스 계약좁고 완전함① 후보해 배치 제출② 평가 결과 반환③ 개체군 갱신, 다음 세대 진행'제출 ⇄ 반환'의 한 번의 왕복이 한 세대의 진화를 구성합니다인터페이스 계약 안정 → 알고리즘과 문제를 독립적으로 교체, 확장, 작업 간 재사용 가능

알고리즘 모듈: '어떻게 탐색할 것인가'를 캡슐화

  • 후보해 생성과 개체군 갱신: 초기화, 변이, 교차, 선택, 엘리트 보존 등의 진화 로직은 알고리즘 모듈에서 일괄 구현됩니다.
  • 탐색 제어: 반복 세대 수, 개체군 규모, 재시작과 수렴 판정 기준, 연산자 매개변수 스케줄링은 모두 알고리즘 측의 결정입니다.
  • 알고리즘 모듈은 '후보해가 평가된다'는 추상적 전제에만 의존하며, 목적 함수의 물리적 의미와 구체적 형태에는 관심을 두지 않습니다.

문제 모듈: '무엇을 평가하고, 환경이 어떻게 피드백하는가'를 정의

  • 후보해를 비교 가능한 피드백으로 변환: 목적값, 적합도, 제약 위반량, 또는 한 번의 환경 상호작용 결과.
  • 문제 경계와 제약 선언: 변수 차원, 값 범위, 실행 가능 영역 규칙을 통해 알고리즘이 어디에서 후보해를 생성할 수 있는지 알 수 있게 합니다.
  • 동일한 후보해 집단에 일관된 평가를 제공하여 서로 다른 개체, 서로 다른 세대, 서로 다른 알고리즘 간에 횡적 비교가 가능하게 합니다.

인터페이스 계약: 후보해 배치 ⇄ 평가 결과

알고리즘 모듈이 문제 모듈에 제출하는후보해 배치; 문제 모듈이 반환하는구조화된 평가 결과(목적 벡터, 제약 위반량 및 선택적 추가 진단 정보); 알고리즘 모듈은 이를 기반으로 개체군을 갱신하고 다음 세대로 나아갑니다. 이 '제출—반환'의 한 번의 왕복이 한 세대의 진화를 구성합니다.

디커플링이 가져오는 이점

  • 독립적 확장: 알고리즘을 추가하거나 교체해도 문제 정의에 영향을 주지 않으며, 문제를 수정하거나 추가해도 알고리즘 모듈을 다시 작성할 필요가 없습니다.
  • 조합 가능: 동일한 문제 모듈에 서로 다른 진화 알고리즘을 연결할 수 있고, 동일한 알고리즘 모듈을 서로 다른 문제 모듈로 전환할 수도 있습니다.
  • 이전 가능: 인터페이스 계약이 안정적이라면 알고리즘과 문제는 작업 간 재사용, 교체, 이전이 가능합니다.

이 수업 시나리오에서 특히 중요한 이유: 다목적 트레이드오프와 고비용 피드백

이 수업은 실제 물리 세계의 공학 문제, 예를 들어 COMAC의초임계 익형 설계를 다룹니다. 이러한 문제는 일반적으로 세 가지 특징을 동시에 가집니다: 서로 상충하는 다수의 목표(예: 양력 향상은 흔히 항력 증가와 안정성 저하를 초래), 상호 중첩된 제약(예: 임계 버페팅 양력 계수, 최대 응력이 재료 허용값을 초과할 수 없음), 그리고고비용이고 희소한 피드백(고정밀 시뮬레이션의 1회 평가 비용이 매우 높음)입니다. 모듈 분할은 바로 이 세 가지에 대응하기 위해 탄생했습니다.

문제 모듈 측에서는 다목적과 제약이 비교 가능한 평가 결과로 통합 환산됩니다: 목적 벡터는 각 지표를 나타내고, 제약 위반량은 경계 초과 정도를 나타내며, 필요 시대리 모델을 통해 낮은 비용으로 근사 평가를 제공하여 고정밀 시뮬레이션이 초래하는 피드백 병목을 완화합니다. 알고리즘 모듈 측에서는 탐색이 더 이상 유일한 '최적해'로의 조기 수렴을 추구하지 않고,다양화된 후보 방안 집합을 유지하여 전문가가 양력, 항력, 안전 여유 사이에서 선호 최적화와 트레이드오프를 수행할 수 있게 합니다.

따라서 '후보해 배치 ⇄ 평가 결과' 계약은 단일 스칼라 적합도뿐만 아니라 목적 벡터와 제약 위반량도 담을 수 있어야 합니다: 다목적 트레이드오프는 알고리즘이 비지배 비교를 수행할 수 있어야 하고, 제약 처리는 알고리즘이 실행 가능과 불가능을 구분할 수 있어야 합니다. 계약이 불완전해지면 다목적과 제약 정보가 인터페이스 지점에서 영구적으로 손실되고, 디커플링이 가져오는 재사용과 이전 능력도 함께 무효화됩니다.

흔한 오해
목적 함수, 제약 처리 또는 문제 특유의 휴리스틱 규칙을 알고리즘 모듈에 작성하거나, 문제 모듈에서 선택과 개체군 갱신을 구현하는 경우입니다. 표면적으로는 '한 계층을 덜 작성한 것'처럼 보이지만, 실제로는 양측을 다시 결합시킵니다: 문제를 바꾸려면 알고리즘을 고쳐야 하고, 알고리즘을 바꾸려면 문제를 고쳐야 하며, 재사용과 이전 능력이 동시에 무효화됩니다.
인터페이스는 '좁고 완전하게'
좁다는 것은 필드가 적고 안정적이라는 뜻으로, 후보해 배치와 평가 결과 두 종류의 정보만 전달합니다. 완전하다는 것은 정보가 결손되어서는 안 된다는 뜻으로, 목적 벡터, 제약 위반량, 변수 경계가 모두 있어야 합니다. 단일 스칼라 적합도만 반환하면 제약 정보가 영구적으로 손실되어 제약이 있는 문제를 올바르게 처리하기 어려워집니다.