임계점 판정법까지 공부하고 나면 최적화 문제를 어느 정도 풀 수 있다는 자신감이 생깁니다. 그런데 현실에서는 항상 조건이 붙습니다. 예산이 정해져 있다거나, 에너지 소비량 한도가 있다거나. 아무 제약 없이 최솟값을 찾는 건 쉬운데, 제약 조건 안에서 찾으라고 하면 갑자기 막막해집니다.
저도 라그랑주 승수법을 처음 봤을 때 수식이 왜 저런 형태인지 전혀 감이 안 왔습니다. 그런데 기하학적으로 어떤 상황인지를 먼저 이해하고 나니까 수식이 왜 그렇게 생겼는지 자연스럽게 연결됐습니다. 오늘은 그 순서대로 따라가 보겠습니다.

제약 조건이 있는 최적화 문제란
제약 없는 최적화는 앞서 배운 방식으로 풀 수 있습니다. 미분해서 0이 되는 지점을 찾으면 됩니다. 그런데 현실 문제는 대부분 이렇게 생겼습니다.
제약: g(x, y) = x + y = 10 을 만족하면서
x + y = 10이라는 조건이 없으면 xy는 무한히 커질 수 있습니다. 하지만 x + y = 10이라는 울타리 안에서만 움직여야 한다면 이야기가 달라집니다. 가능한 x, y의 조합이 직선 하나로 제한되는 거죠. 이 직선 위에서 xy가 가장 커지는 점을 찾는 게 목표입니다.
대입해서 풀 수도 있습니다. x = 10 - y를 넣으면 f = (10-y)y = 10y - y²이 되고 미분하면 됩니다. 하지만 변수가 10개, 제약 조건이 5개라면? 대입법은 불가능합니다. 라그랑주 승수법은 변수가 아무리 많아도 같은 방식으로 풀 수 있게 해 줍니다.

기하학으로 먼저 이해하기 — 등고선과 접선
수식보다 그림으로 먼저 이해하는 게 훨씬 빠릅니다. 목적 함수 f(x, y)의 값이 같은 지점들을 이으면 등고선이 됩니다. 지도에서 같은 높이를 이은 선과 같은 개념입니다. f 값이 클수록 등고선이 바깥쪽에 위치합니다.
제약 조건 g(x, y) = 10은 좌표계 위의 직선(또는 곡선)입니다. 우리는 이 직선 위에서만 움직일 수 있습니다. 이 직선이 등고선과 그냥 교차하는 동안에는 아직 최적이 아닙니다. 더 바깥쪽 등고선으로 이동할 여지가 있으니까요. 직선이 등고선에 딱 접하는 순간, 더 이상 바깥으로 못 나갑니다. 그 점이 최적점입니다.
두 곡선이 접한다는 건 그 지점에서 두 곡선의 기울기 방향이 같다는 뜻입니다. 수학적으로는 ∇f와 ∇g가 평행하다는 의미입니다. 방향이 같고 크기만 다르니 ∇f = λ∇g라고 쓸 수 있습니다. 이 λ가 라그랑주 승수입니다.
라그랑주 함수 — 수식이 저런 형태인 이유
∇f = λ∇g 조건을 편리하게 처리하기 위해 두 함수를 하나로 합칩니다. 이게 라그랑주 함수입니다.
이 함수를 x, y, λ 각각에 대해 편미분 해서 0으로 놓으면 연립방정식이 나옵니다. λ로 편미분하면 자동으로 원래 제약 조건 g(x, y) = c가 나오는 구조입니다. 제약 조건을 따로 챙기지 않아도 수식 안에 내장된 셈입니다.
무제약 최적화와 라그랑주 승수법의 차이를 정리하면 이렇습니다.
| 항목 | 무제약 최적화 | 라그랑주 승수법 |
|---|---|---|
| 탐색 범위 | 전체 공간 | 제약 조건 위 |
| 수학 도구 | f'= 0 | L 편미분 = 0 |
| 추가 변수 | 없음 | λ (승수) 추가 |
| 해의 의미 | 전체 공간의 극점 | 제약 조건 내 최적점 |
실제 숫자로 한 번 풀어보기
앞서 든 예시를 실제로 풀어보겠습니다. f(x, y) = xy를 최대화, 제약 g(x, y) = x + y = 10입니다.
② 편미분:
∂L/∂x = y - λ = 0 → y = λ
∂L/∂y = x - λ = 0 → x = λ
∂L/∂λ = -(x + y - 10) = 0 → x + y = 10
③ y = λ, x = λ이므로 x = y
x + y = 10에 대입 → x = y = 5
④ 최적해: x = 5, y = 5, λ = 5
최댓값: f(5, 5) = 25
x + y = 10 조건 아래에서 xy가 가장 커지는 건 x = y = 5일 때입니다. 산술-기하 평균 부등식으로도 같은 결론이 나오는데, 라그랑주 승수법은 이걸 체계적으로 도출해 냅니다. 변수가 수십 개여도 같은 절차로 풀 수 있다는 게 핵심입니다.

λ(람다)의 경제적 의미 — 잠재 가격
풀이 과정에서 λ = 5가 나왔습니다. 이게 뭘 의미할까요. 경제학에서는 이 λ를 잠재 가격(Shadow Price)이라고 부릅니다. 제약 조건이 한 단위 완화될 때 목적 함수가 얼마나 변하는지를 나타냅니다.
위 예시에서 λ = 5라는 건, x + y의 한도를 10에서 11로 늘리면 최댓값이 25에서 약 30으로 늘어난다는 의미입니다. 예산을 1 더 투입했을 때 얻는 이득이 5라는 뜻이죠. 기업이 어느 자원에 추가 투자해야 할지 결정할 때 이 λ값을 비교합니다. λ가 큰 제약 조건일수록 그 한도를 늘렸을 때 효과가 크다는 신호입니다.
SVM에서 라그랑주 승수법이 쓰이는 방식
머신러닝의 SVM(서포트 벡터 머신)은 데이터를 두 그룹으로 나누는 경계선을 찾는 알고리즘입니다. 이때 목표는 경계선과 가장 가까운 데이터 포인트 사이의 거리(마진)를 최대화하는 겁니다. 그런데 동시에 모든 데이터가 올바른 쪽에 있어야 한다는 제약 조건이 붙습니다.
마진 최대화 + 분류 제약 조건. 전형적인 제약 최적화 문제입니다. 여기에 라그랑주 승수법을 적용하면 복잡한 원 문제(Primal Problem)가 훨씬 풀기 쉬운 듀얼 문제(Dual Problem)로 변환됩니다. 이 과정에서 λ > 0인 데이터 포인트들, 즉 경계에 걸쳐 있는 데이터들이 서포트 벡터가 됩니다. 나머지 데이터는 λ = 0이라 계산에서 사라집니다.
수식에서 추상적으로 보이던 λ가 실제로는 "이 데이터 포인트가 경계 결정에 얼마나 기여하는가"를 나타내는 값이었던 겁니다. 이걸 알고 SVM 코드를 보면 support_vectors_ 라는 속성이 왜 존재하는지 바로 이해가 됩니다.

제약 조건이 처음에는 문제를 어렵게 만드는 것처럼 보입니다. 그런데 라그랑주 승수법으로 보면 제약 조건이 오히려 해의 범위를 좁혀줘서 더 빠르게 최적점을 찾게 해주는 도구가 됩니다. 미분, 행렬, 임계점, 그리고 라그랑주 승수법까지 이어지는 흐름이 결국 하나의 방향을 가리키고 있다는 걸 느낄 수 있을 겁니다.
'데이터 과학 수학' 카테고리의 다른 글
| 다변수 함수와 편미분, 라이프니츠 표기법의 연산 마법 (0) | 2026.04.04 |
|---|---|
| 딥러닝 학습의 복병, 안장점의 위협과 고차원 최적화 (0) | 2026.04.04 |
| 함수 최적화의 열쇠, 임계점과 극대·극소 판정법 원리 (0) | 2026.04.03 |
| 경사하강법(Gradient Descent)의 원리, 미분의 역할, AI 학습의 핵심 알고리즘 (0) | 2026.04.03 |
| [라이프니츠 미분학 연재 #10] 라이프니츠 미분학의 의미, 변화의 개념이 만든 현대 기술 (0) | 2026.04.03 |