입자군집최적화 (Particle Swarm Optimization (PSO))
쉽게 풀면
여러 후보 해답들이 지금까지 자기가 찾은 가장 좋은 답과 무리 전체가 찾은 가장 좋은 답 쪽으로 조금씩 움직이며 점점 더 좋은 답을 찾아가는 방법입니다.
왜 중요한가
여러 후보 해가 자신과 집단의 최고 경험을 참고해 이동하며 최적해를 찾는 메타휴리스틱으로, 미분 정보가 없는 로봇 설계 파라미터 최적화, 경로 계획, 제어기 이득 조정에 쓰입니다. 구현이 단순하고 파라미터가 적어 공학 최적화의 기준선으로 자주 등장합니다.
논문에서는 이렇게 쓰입니다
각 후보 해는 관성으로 이전 방향을 유지하면서도, 자기 개인 기록과 전체 무리의 최고 기록 쪽으로 끌려가는 힘을 함께 받는다는 의미입니다.
이 문장은 입자군집최적화에서 입자 수를 조절하면 계산 속도와 해의 품질 사이에 거래 관계가 생긴다는 뜻입니다. 파라미터 하나를 바꾸는 것만으로도 알고리즘의 성능이 크게 달라질 수 있음을 보여 줍니다.
조금 더 깊게 보면
전역 최적을 보장하지 않고 조기 수렴으로 국소 해에 갇히기 쉬우며, 결과가 무작위 초기화에 따라 달라 여러 번 실행해 통계를 보고해야 비교가 의미 있습니다. 미분 가능한 문제에서는 경사 기반 방법이 훨씬 효율적이므로, 비볼록·불연속·시뮬레이션 기반 목적함수처럼 경사를 얻기 어려운 경우에 한정해 쓰는 것이 적절합니다. 각 입자는 자신이 지금까지 찾은 최선의 위치와 무리 전체가 찾은 최선의 위치라는 두 가지 정보를 향해 속도를 갱신하며 이동하는데, 이 두 항의 가중치 비율이 개인 경험과 집단 지식 사이의 탐색 균형을 결정합니다.
주의할 점
탐색 공간이 매우 복잡하거나 고차원일 경우 조기 수렴으로 인해 전역 최적해를 놓칠 수 있습니다. PSO는 미분 가능성을 요구하지 않아 적용 범위가 넓지만, 전역 최적해에 수렴한다는 이론적 보장은 없어 결과의 품질을 다른 방법과 비교 검증할 필요가 있습니다.