7.126 입자 군집 최적화(PSO)

1. 기본 원리

입자 군집 최적화(Particle Swarm Optimization, PSO)는 케네디(Kennedy)와 에버하트(Eberhart)가 1995년에 제안한 모집단 기반 메타휴리스틱 최적화 방법이다. 새 떼나 물고기 떼의 집단 행동에서 착안하여, 다수의 입자(particle)가 탐색 공간을 이동하면서 개인적 경험과 집단적 정보를 공유하여 최적점을 탐색한다.

2. 알고리즘

N개의 입자로 구성된 군집에서, 각 입자 i는 위치 \mathbf{x}_i \in \mathbb{R}^n과 속도 \mathbf{v}_i \in \mathbb{R}^n을 갖는다.

초기화: 위치와 속도를 탐색 공간 내에서 무작위로 초기화한다.

갱신 규칙:

\mathbf{v}_i^{k+1} = w\mathbf{v}_i^k + c_1 r_1 (\mathbf{p}_i - \mathbf{x}_i^k) + c_2 r_2 (\mathbf{g} - \mathbf{x}_i^k)

\mathbf{x}_i^{k+1} = \mathbf{x}_i^k + \mathbf{v}_i^{k+1}

여기서:

  • w는 관성 가중치(inertia weight)
  • c_1은 인지 계수(cognitive coefficient, 개인 학습률)
  • c_2는 사회 계수(social coefficient, 집단 학습률)
  • r_1, r_2 \sim U(0, 1)은 독립 균일 난수
  • \mathbf{p}_i는 입자 i의 개인 최적 위치(personal best)
  • \mathbf{g}는 전체 군집의 전역 최적 위치(global best)

3. 매개변수의 역할

관성 가중치 w: 이전 속도의 관성을 제어한다. w가 크면 탐색(exploration)이 강화되고, w가 작으면 수렴(exploitation)이 촉진된다. 통상 w = 0.7 \sim 0.9이 사용되며, 반복에 따라 점진적으로 감소시키는 스케줄이 효과적이다.

w_k = w_{\max} - (w_{\max} - w_{\min})\frac{k}{k_{\max}}

인지 계수 c_1과 사회 계수 c_2: c_1이 크면 개인 경험에 의한 탐색이 강화되고, c_2가 크면 집단 정보에 의한 수렴이 가속된다. 통상 c_1 = c_2 = 2.0이 표준이며, c_1 + c_2 \leq 4의 조건이 안정성을 위해 권장된다.

4. 위상 구조

전역 최적 \mathbf{g}의 정의는 군집의 통신 위상(topology)에 의존한다.

전역 위상(gbest): 모든 입자가 전체 군집의 최적 위치를 공유한다. 수렴이 빠르지만 조기 수렴(premature convergence)의 위험이 있다.

국소 위상(lbest): 각 입자가 인접한 소수의 입자와만 정보를 공유한다. 수렴이 느리지만 다양성이 유지되어 전역 탐색에 유리하다.

링 위상: 각 입자가 좌우 이웃과만 통신하는 1차원 링 구조이다.

5. 수렴 분석

PSO의 수렴 거동은 속도 갱신 방정식의 동역학으로 분석된다. 난수를 기대값으로 대체한 결정론적 근사에서, 각 차원의 동역학은 다음의 2차 차분 방정식으로 기술된다.

x_{k+1} = (1 + w - \phi)x_k - wx_{k-1} + \phi p

여기서 \phi = c_1 r_1 + c_2 r_2의 기대값이다. 이 시스템이 안정(수렴)하기 위한 조건은 다음과 같다.

0 < \phi < 2(1 + w), \quad \lvert w \rvert < 1

이 조건 밖에서는 입자가 발산하여 탐색 공간 밖으로 이탈한다.

6. 변형과 개선

구속 인자(Constriction Factor): 클레르크(Clerc)와 케네디(Kennedy)가 제안한 구속 인자 \chi를 적용하여 안정적 수렴을 보장한다.

\mathbf{v}_i^{k+1} = \chi[\mathbf{v}_i^k + c_1 r_1(\mathbf{p}_i - \mathbf{x}_i^k) + c_2 r_2(\mathbf{g} - \mathbf{x}_i^k)]

\chi = \frac{2}{\lvert 2 - \phi - \sqrt{\phi^2 - 4\phi} \rvert}, \quad \phi = c_1 + c_2 > 4

속도 제한: \lVert \mathbf{v}_i \rVert \leq v_{\max}로 속도를 제한하여 탐색의 발산을 방지한다.

7. 장점과 한계

장점: 구현이 단순하고, 도함수가 불필요하며, 병렬 처리에 자연스럽게 적합하다. 매개변수 튜닝이 상대적으로 직관적이다.

한계: 고차원 문제에서 효율이 저하되며, 수렴률에 대한 이론적 보장이 약하다. 제약 처리가 직접적이지 않아 벌점법이나 수리 기법과의 결합이 필요하다.

8. 로봇 공학에서의 응용

로봇 경로 계획: 경유점의 위치를 입자의 위치로 표현하고, 경로 길이와 장애물 근접도의 가중 합을 최소화하는 PSO 기반 경로 계획이 연구되어 있다.

PID 이득 튜닝: 로봇 관절 PID 제어기의 이득 매개변수 (K_p, K_i, K_d)를 PSO로 최적화한다. 폐루프 성능 지표(정착 시간, 오버슈트 등)를 목적 함수로 설정한다.

다중 로봇 과업 할당: 다수의 로봇에 과업을 배분하는 조합 최적화 문제에 이산 PSO가 적용된다.

9. 참고 문헌

  • Kennedy, J., & Eberhart, R. (1995). “Particle Swarm Optimization.” Proceedings of the IEEE International Conference on Neural Networks, 4, 1942–1948.
  • Clerc, M., & Kennedy, J. (2002). “The Particle Swarm — Explosion, Stability, and Convergence in a Multidimensional Complex Space.” IEEE Transactions on Evolutionary Computation, 6(1), 58–73.
  • Shi, Y., & Eberhart, R. (1998). “A Modified Particle Swarm Optimizer.” Proceedings of the IEEE International Conference on Evolutionary Computation, 69–73.
  • Poli, R., Kennedy, J., & Blackwell, T. (2007). “Particle Swarm Optimization: An Overview.” Swarm Intelligence, 1(1), 33–57.

version: 1.0