콘텐츠로 이동

최적화 문제는 모두 같은 난이도를 가지지 않습니다. 어떤 함수는 바닥이 하나인 그릇처럼 생겨서 해를 찾기 쉽고, 어떤 함수는 울퉁불퉁해서 어디가 진짜 최저점인지 파악하기 어렵습니다. 볼록성은 이 문제의 모양을 구분하는 언어이고, 제약최적화와 라그랑주 승수법은 "아무 점이나"가 아니라 "조건을 만족하는 점들 중에서" 가장 좋은 점을 찾는 언어입니다.

먼저 알아둘 말

  • 최적화: 어떤 목적함수를 가장 작게 하거나 가장 크게 만드는 문제다.
  • 볼록집합: 집합 안의 두 점을 이은 선분이 항상 집합 안에 남는 집합이다.
  • 볼록함수: 함수 그래프가 그릇처럼 생겨 지역최소가 전역최소가 되도록 하는 함수다.
  • 제약조건: 해가 반드시 만족해야 하는 조건이다.
  • 제약최적화: 제약조건을 만족하는 범위 안에서 최적점을 찾는 문제다.
  • 라그랑주 승수: 목적함수와 제약조건을 하나의 식으로 묶기 위해 도입하는 보조 변수다.

이 강의에서 답할 질문

  • 왜 볼록한 문제는 상대적으로 풀기 쉬울까?
  • 제약이 붙으면 왜 최적화 문제의 성격이 달라질까?
  • 라그랑주 승수법은 제약을 어떻게 계산 안으로 끌어올까?

먼저 떠올릴 장면

  • 둥근 그릇 바닥에 구슬을 놓으면 결국 한 바닥점으로 굴러간다.
  • 반대로 울퉁불퉁한 산지형에서는 구슬이 중간 웅덩이에 멈출 수 있다.
  • 예산 제한, 자원 제한, 확률합이 1이어야 한다는 조건은 모두 자연스러운 제약이다.

즉 최적화는 단순히 미분계수를 0으로 만드는 계산이 아니라, 문제의 모양과 허용된 범위를 함께 보는 일입니다.

생각의 순서

  • 먼저 문제의 모양을 구분하는 볼록성부터 본다.
  • 그다음 조건이 붙으면 무엇이 달라지는지 본다.
  • 마지막으로 라그랑주 승수법이 왜 작동하는지 직관부터 잡는다.

본문

1. 문제의 모양이 최적화 난이도를 바꾼다

최적화에서 가장 중요한 질문 중 하나는 "이 함수가 어떤 모양인가?"입니다. 모양이 좋으면 해를 찾기 쉽고, 모양이 나쁘면 지역적으로만 좋아 보이는 점에 멈출 수 있습니다.

볼록성은 바로 이 모양을 정리하는 개념입니다. 먼저 볼록집합부터 생각해 봅시다. 어떤 집합 안의 두 점을 잡았을 때, 그 두 점을 잇는 선분 전체가 집합 안에 머물면 그 집합을 볼록집합이라고 합니다.

이 성질이 중요한 이유는 최적화가 중간 경로를 따라 움직일 때도 허용 영역을 벗어나지 않게 해 주기 때문입니다.

2. 볼록함수는 지역최소와 전역최소가 어긋나지 않는다

이제 함수 쪽으로 넘어가 봅시다. 함수가 볼록하다는 것은 두 점의 중간을 볼 때 함수값이 지나치게 아래로 꺼지지 않는다는 뜻입니다.

$$ f(tx + (1-t)y) \le t f(x) + (1-t) f(y) $$

여기서

$$ 0 \le t \le 1 $$

입니다.

이 식은 추상적으로 보이지만, 직관은 단순합니다. 함수 그래프 위의 두 점을 이은 선분이 그래프보다 아래에 놓인다는 뜻입니다. 그래서 그래프가 그릇처럼 생깁니다.

이 모양이 중요한 이유는 지역최소와 전역최소가 일치하기 때문입니다.

  • 지역최소: 근처에서만 가장 작은 점
  • 전역최소: 전체 영역에서 가장 작은 점

일반 함수에서는 지역최소가 많을 수 있습니다. 하지만 볼록함수에서는 한 번 아래쪽으로 내려간 점이 전체에서도 가장 낮은 점이 됩니다. 그래서 볼록문제는 "좋은 해를 찾았는데 사실 더 깊은 곳이 숨어 있었다"는 위험이 훨씬 작습니다.

3. 이차함수는 볼록성의 가장 쉬운 예다

가장 익숙한 예는 이차함수입니다.

$$ f(x) = x^2 $$

이 함수는 아래로 열린 그릇 모양입니다. 최솟값은

$$ x = 0 $$

에서 하나만 생깁니다. 근처에서 제일 낮은 점을 찾으면 전체에서도 가장 낮은 점입니다.

그래서 머신러닝에서 자주 쓰이는 제곱오차나 여러 볼록 손실함수는 해석과 계산이 상대적으로 단순합니다.

4. 제약이 생기면 움직일 수 있는 공간이 줄어든다

현실의 문제는 보통 아무 점이나 허용하지 않습니다. 예산이 정해져 있을 수 있고, 확률의 합은 1이어야 할 수 있고, 어떤 변수는 음수가 될 수 없을 수 있습니다.

예를 들어 다음 문제를 생각해 봅시다.

$$ f(x,y) = x^2 + y^2 $$

를 최소화하되,

$$ x + y = 1 $$

을 만족해야 합니다.

제약이 없다면 원점이 최솟값입니다. 하지만 지금은

$$ x + y = 1 $$

이라는 직선 위에서만 움직일 수 있습니다. 즉 최적점은 함수 자체만 보고 정해지지 않고, 허용된 영역과 함께 정해집니다.

이것이 제약최적화입니다. 문제는 더 이상 "전체 공간에서 가장 낮은 점"을 찾는 것이 아니라, "허용된 공간 안에서 가장 낮은 점"을 찾는 것으로 바뀝니다.

5. 라그랑주 승수법은 제약을 식 안으로 끌어온다

제약이 있는 문제를 푸는 대표적인 방법이 라그랑주 승수법입니다. 핵심 생각은 제약을 따로 관리하지 말고, 목적함수와 한 식 안에 묶어 버리자는 것입니다.

제약이

$$ g(x) = 0 $$

형태라면, 라그랑지안은 다음처럼 씁니다.

$$ \mathcal{L}(x,\lambda) = f(x) + \lambda g(x) $$

여기서 람다는 라그랑주 승수입니다. 이 값은 제약을 얼마나 강하게 반영해야 하는지를 조절하는 보조 변수로 볼 수 있습니다.

이제 우리는 원래 문제를 바로 푸는 대신, 라그랑지안을 기준으로 다음 조건을 함께 봅니다.

$$ \nabla_x \mathcal{L} = 0 $$

그리고

$$ g(x) = 0 $$

을 동시에 만족해야 합니다.

6. 라그랑주 승수법의 직관은 기울기의 균형이다

라그랑주 승수법을 공식으로만 외우면 쉽게 잊어버립니다. 직관은 이렇습니다.

최적점에서는 마음대로 움직일 수 없습니다. 제약조건 위에서만 움직일 수 있기 때문입니다. 따라서 목적함수를 더 줄이고 싶어도, 제약이 허용하는 방향으로는 더 이상 내려갈 수 없는 지점이 생깁니다.

이때 목적함수의 기울기와 제약조건의 기울기가 서로 맞물리게 됩니다. 즉 제약면이 이동을 막는 방향과 목적함수가 내려가려는 방향이 균형을 이루는 점에서 해가 정해집니다.

그래서 라그랑주 승수법은 단순한 계산 꼼수가 아니라, "허용된 방향 안에서는 더 좋아질 수 없는 상태"를 식으로 표현한 것입니다.

7. AI에서는 왜 중요한가

AI와 머신러닝에서도 이 개념은 계속 등장합니다.

  • 볼록성은 최적화가 얼마나 안정적으로 풀리는지 이해하게 해 준다.
  • 제약최적화는 확률의 합이 1이어야 하는 문제나 자원 제한 문제에서 등장한다.
  • 라그랑주 승수법은 제약이 있는 학습문제, dual formulation, 정규화 해석으로 이어진다.

즉 이 강의는 단순히 수학적 형식만 배우는 것이 아니라, "문제의 모양"과 "허용된 범위"가 학습을 어떻게 바꾸는지를 이해하는 단계입니다.

예제

  1. 볼록함수의 의미 읽기 문제: 함수

$$ f(x) = x^2 $$

가 왜 볼록하다고 말할 수 있는가? 풀이: 그래프가 아래로 열린 그릇 모양이어서 바닥이 하나만 있다. 근처에서 가장 작은 점이 전체에서도 가장 작다. 해설: 볼록성의 핵심은 "좋아 보이는 지역해가 사실 전체 최저점과 어긋나지 않는다"는 점이다.

  1. 제약이 문제를 바꾸는 이유 설명하기 문제: 함수

$$ f(x,y) = x^2 + y^2 $$

를 최소화할 때, 제약

$$ x + y = 1 $$

이 붙으면 왜 해가 달라지는가? 풀이: 제약이 없으면 원점으로 갈 수 있지만, 제약이 있으면 직선 위에서만 움직일 수 있다. 따라서 허용된 점들 중 가장 작은 값을 찾아야 한다. 해설: 제약최적화는 목적함수만이 아니라 허용된 영역까지 함께 보는 문제다.

  1. 라그랑주 승수법의 역할 설명하기 문제: 라그랑주 승수법은 왜 유용한가? 풀이: 제약을 목적함수와 하나의 식으로 묶어서, 제약이 있는 문제를 미분 가능한 형태로 다루게 해 주기 때문이다.

$$ \mathcal{L}(x,\lambda) = f(x) + \lambda g(x) $$

해설: 제약을 식 안으로 넣으면 "제약을 만족하는 최적점"을 계산 조건으로 바꿔 다룰 수 있다.

스스로 점검

연습 문제

  1. 볼록함수에서 지역최소와 전역최소가 왜 일치하는지 설명하라.
  2. 볼록집합이 무엇인지 그림 없이 말로 설명하라.
  3. 제약최적화가 필요한 현실 문제를 하나 들라.
  4. 라그랑주 승수법이 제약을 어떻게 처리하는지 설명하라.

복습 질문

  1. 볼록성은 최적화 난이도와 어떻게 연결되는가?
  2. 제약이 붙으면 왜 최적화 문제의 성격이 달라지는가?
  3. 라그랑주 승수는 어떤 역할을 하는가?

체크포인트

  1. 볼록성의 직관을 설명할 수 있다.
  2. 제약최적화의 의미를 설명할 수 있다.
  3. 라그랑지안의 기본 식을 읽을 수 있다.
  4. 기울기의 균형이라는 라그랑주 승수법의 직관을 설명할 수 있다.