볼록집합 (Convex Set)
쉽게 풀면
원이나 사각형처럼 움푹 파인 곳이 없는 도형을 떠올려 보세요. 그 안의 어느 두 점을 뽑아 자로 선을 그어도 선분이 도형 밖으로 삐져나가지 않습니다. 이런 성질을 가진 집합을 볼록집합이라고 부릅니다. 반대로 초승달 모양이나 별 모양처럼 오목하게 파인 부분이 있으면, 파인 부분 양쪽에서 점을 골랐을 때 선분이 도형 밖을 지나가게 되므로 볼록집합이 아닙니다. 이 개념이 중요한 이유는 최적화 문제와 직결되기 때문입니다. 어떤 문제의 "가능한 답들의 범위(제약조건)"가 볼록집합이고 목표로 하는 함수도 볼록함수라면, 그 문제에서 찾은 국소 최적해는 항상 전체에서 가장 좋은 해(전역 최적해)라는 사실이 수학적으로 보장됩니다.
왜 중요한가
볼록집합은 최적화 이론 전체를 떠받치는 기초 개념입니다. 실행가능 영역이 볼록집합이면 지역적으로 찾은 해가 곧 전역적으로 가장 좋은 해라는 강력한 보장을 얻을 수 있어, 알고리즘 설계와 수렴성 증명이 훨씬 단순해집니다. 그래서 최적화, 머신러닝, 제어이론, 경제학의 균형 분석 등 다양한 분야의 논문에서 문제를 볼록집합·볼록함수 형태로 정식화할 수 있는지를 먼저 따지는 경우가 많습니다.
논문에서는 이렇게 쓰입니다
이 문장은 "문제의 답이 될 수 있는 범위가 움푹 파인 곳 없는 매끈한 형태라는 것을 증명해서, 알고리즘이 찾아낸 해가 그 범위 안에서 가장 좋은 해라고 확신할 수 있다"는 뜻입니다. 최적화 이론, 머신러닝, 경제학의 균형 분석 등에서 해의 존재와 유일성을 논증할 때 핵심적으로 쓰입니다.
신경망이나 강화학습 모델의 출력이 특정 제약(확률 합이 1이 되는 등)을 항상 만족하도록 설계할 때, 출력 공간을 볼록집합으로 구성하면 별도의 보정 단계 없이도 유효한 값만 나오게 만들 수 있다는 뜻입니다.
운용과학이나 네트워크 자원 배분 문제에서 가능한 배분 방식들의 집합이 볼록집합이라는 성질을 활용하면, 효율적인 알고리즘으로 최적해를 빠르게 찾을 수 있다는 의미입니다.
조금 더 깊게 보면
실제 논문에서는 볼록집합 자체보다 그 위에서 정의된 볼록함수, 그리고 두 성질을 함께 활용하는 볼록 최적화(convex optimization)라는 틀을 더 자주 마주하게 됩니다. 실행가능 영역이 볼록집합이 아닐 때는 원 문제를 완화(relaxation)하거나 접평면·투영(projection) 같은 기법으로 볼록한 근사 문제로 바꾸어 푸는 방식도 널리 쓰입니다. 또한 여러 볼록집합의 교집합은 항상 볼록집합이 된다는 성질은 다수의 제약조건을 동시에 다루는 문제를 분석할 때 자주 활용됩니다.
주의할 점
집합이 볼록집합인지 아닌지는 도형을 눈으로 봤을 때의 느낌만으로 판단하면 안 되고, "임의의 두 점을 잇는 선분 전체가 포함되는가"라는 정의를 직접 확인해야 합니다. 또한 볼록집합이라는 성질과 볼록함수라는 성질은 서로 다른 개념이므로 혼동하지 않아야 하며, 두 조건이 함께 성립해야 최적화 문제의 좋은 성질(전역 최적해 보장)이 나온다는 점에 유의해야 합니다.