Skip to main content
Summary

하나의 결과를 만드는 여러 입력

한 변수 함수는 보통 y = f(x)처럼 입력 하나가 출력 하나를 결정한다. 그러나 현실의 많은 양은 하나의 요인만으로 정해지지 않는다. 기온은 위치와 시간에 따라 달라지고, 기업의 생산량은 노동과 자본의 영향을 함께 받으며, 산의 높이는 평면 위의 위치에 따라 정해진다.

이처럼 여러 변수에 의존하는 함수를 다변수 함수라고 한다. 가장 먼저 다룰 대상은 두 변수 함수다.

f: D ⊂ R² → R, (x, y) ↦ f(x, y)

여기서 입력은 순서쌍 (x, y)이고 출력은 하나의 실수다. 정의역 D는 함수가 실제로 의미를 가지는 입력들의 집합이다. 한 변수 함수에서 정의역을 확인했듯이, 다변수 함수에서도 루트 안이 음수가 되지 않는지, 분모가 0이 되지 않는지, 로그 안이 양수인지 등을 먼저 확인해야 한다.

예를 들어

f(x, y) = √(4 - x² - y²)

의 정의역은 4 - x² - y² ≥ 0을 만족하는 점들의 집합이다. 즉 x² + y² ≤ 4인 원판 전체다. 이 함수의 그래프는

z = √(4 - x² - y²)

로 나타나는 위쪽 반구이다. 입력 (x, y)가 원판 안의 한 점이고, 출력 z가 그 점 위의 높이라고 생각하면 된다.

두 변수 함수의 그래프는 보통 3차원 공간의 곡면이 된다. 하지만 3차원 곡면은 종이에 그리기 어렵고, 머릿속으로도 한 번에 파악하기 쉽지 않다. 그래서 자주 쓰는 방법이 등위선이다.

등위선은 함수값이 같은 점들을 이은 곡선이다.

f(x, y) = c

를 만족하는 점들의 집합을 생각하면 된다. 지도에서 같은 높이를 연결한 등고선이 대표적인 예다. 예를 들어 f(x, y) = x² + y²라면 f(x, y) = c는

x² + y² = c

이므로, c ≥ 0일 때 원점 중심의 원들이 된다. 함수값이 커질수록 원의 반지름도 커진다. 등위선을 보면 함수가 어느 방향으로 증가하는지, 어느 곳에서 변화가 급한지 직관적으로 파악할 수 있다.

다변수 함수와 편미분AI 생성 이미지

편미분: 하나의 방향만 움직여 보기

한 변수 함수에서 미분은 입력을 조금 바꾸었을 때 출력이 얼마나 바뀌는지를 측정했다. 두 변수 함수에서는 입력이 (x, y) 두 개이므로 변화 방향이 여러 가지다. 가장 기본적인 방법은 한 변수만 움직이고 나머지는 고정하는 것이다. 이것이 편미분이다.

x에 대한 편미분은 y를 상수처럼 고정하고 x만 변화시켜 얻는다.

f_x(a, b) = lim_{h→0} [f(a+h, b) - f(a, b)] / h

마찬가지로 y에 대한 편미분은 x를 고정하고 y만 변화시킨다.

f_y(a, b) = lim_{h→0} [f(a, b+h) - f(a, b)] / h

기하적으로 보면 f_x(a, b)는 곡면 z = f(x, y)를 y = b라는 평면으로 잘랐을 때 생기는 단면 곡선의 접선 기울기다. f_y(a, b)는 x = a라는 평면으로 잘랐을 때 생기는 단면 곡선의 접선 기울기다. 다시 말해 편미분은 곡면 위에서 좌표축 방향으로 움직일 때의 기울기를 따로 재는 방법이다.

예를 들어

f(x, y) = x²y + sin y

라 하자. x에 대해 편미분하면 y는 상수이므로

f_x(x, y) = 2xy

이다. y에 대해 편미분하면

f_y(x, y) = x² + cos y

이다. 점 (1, 0)에서 보면

f_x(1, 0) = 0, f_y(1, 0) = 2

이다. 이는 (1, 0) 근처에서 x 방향으로만 조금 움직이면 함수값의 1차적인 변화가 거의 없고, y 방향으로 움직이면 함수값이 대략 움직인 양의 2배만큼 증가한다는 뜻이다.

편미분은 다변수 함수의 변화를 이해하는 출발점이다. 하지만 현실에서는 한 변수만 변하고 나머지가 완전히 고정되는 경우보다 여러 변수가 함께 변하는 경우가 많다. 이를 다루기 위해 전미분이 필요하다.

전미분: 모든 작은 변화를 한 번에 더하기

점 (a, b)에서 x가 dx만큼, y가 dy만큼 작게 변한다고 하자. 함수값의 실제 변화량은

f(a+dx, b+dy) - f(a, b)

이다. 이 값을 정확히 계산하기 어렵거나, 아주 작은 변화만 관심 있을 때는 일차식으로 근사한다.

df = f_x(a, b) dx + f_y(a, b) dy

이 식을 전미분이라고 한다. 뜻은 간단하다. 전체 변화는 x 방향 변화가 만든 효과와 y 방향 변화가 만든 효과를 더한 것으로 근사할 수 있다는 것이다.

따라서

f(a+dx, b+dy) ≈ f(a, b) + f_x(a, b) dx + f_y(a, b) dy

라고 쓸 수 있다. 여기서 ≈는 아무렇게나 비슷하다는 뜻이 아니라, dx, dy가 충분히 작을 때 일차항만으로 함수값의 변화를 잘 설명한다는 뜻이다.

앞의 함수 f(x, y) = x²y + sin y를 다시 보자. 점 (1, 0)에서 f_x(1, 0)=0, f_y(1, 0)=2였다. 만약 dx = 0.03, dy = -0.01이라면 함수값의 변화는 대략

df = 0·0.03 + 2·(-0.01) = -0.02

이다. 즉 함수값은 약 0.02만큼 감소한다고 예측할 수 있다.

여기서 중요한 점이 있다. 편미분이 존재한다고 해서 항상 전미분으로 좋은 근사가 가능한 것은 아니다. 함수가 점 근처에서 너무 거칠게 행동할 수도 있기 때문이다. 다만 실전에서 자주 쓰는 충분조건은 간단하다. 어떤 점 근처에서 f_x, f_y가 존재하고 연속이면, 그 함수는 그 점에서 미분 가능하며 전미분 근사를 사용할 수 있다. 이 조건은 충분조건이지 반드시 필요한 조건은 아니지만, 처음에는 "편미분들이 근처에서 매끄럽게 변하면 전미분 근사가 가능하다" 정도로 이해하면 좋다.

그래디언트와 방향도함수

편미분들을 하나의 벡터로 모은 것을 그래디언트라고 한다.

∇f(x, y) = (f_x(x, y), f_y(x, y))

그래디언트는 단순히 편미분을 나열한 것이 아니다. 함수가 어느 방향으로 가장 빨리 증가하는지를 알려 주는 벡터다.

방향을 나타내는 단위벡터를 u = (u₁, u₂)라 하자. 점 (a, b)에서 u 방향으로 움직일 때 함수값의 순간변화율을 방향도함수라고 한다. 함수가 미분 가능하면 방향도함수는 다음처럼 계산된다.

D_u f(a, b) = ∇f(a, b) · u

즉 그래디언트와 방향벡터의 내적이다. 이전에 배운 내적의 의미를 떠올리면 이유가 보인다.

∇f · u = |∇f| |u| cos θ

여기서 u는 단위벡터이므로 |u| = 1이다. 따라서 방향도함수는

|∇f| cos θ

가 된다. 이 값은 θ = 0일 때, 즉 u가 그래디언트와 같은 방향일 때 가장 크다. 그러므로 그래디언트가 0이 아닌 곳에서는 그래디언트 방향이 함수가 가장 빠르게 증가하는 방향이다. 최대 증가율은 |∇f|이다. 반대로 그래디언트와 반대 방향으로 가면 가장 빠르게 감소한다. 만약 그래디언트가 0이라면 모든 방향의 1차적인 변화율이 0이므로, 그 점에서는 방향만으로 증가와 감소를 바로 판단할 수 없다.

등위선과의 관계도 중요하다. 등위선 위에서는 함수값이 변하지 않는다. 따라서 등위선을 따라 아주 조금 움직이면 1차 변화량은 0이어야 한다. 그런데 전미분으로 보면

df = ∇f · (dx, dy)

이므로, 등위선의 접선 방향 (dx, dy)는 그래디언트와 수직이다. 즉 그래디언트는 등위선에 수직인 방향을 가리킨다. 지도에서 등고선을 직각으로 가로지르는 방향이 가장 가파르게 올라가는 방향인 것과 같다.

다변수 연쇄법칙

한 변수 미적분에서 연쇄법칙은 합성함수를 미분하는 방법이었다. 다변수에서도 원리는 같다. 다만 변화 경로가 여러 변수에 걸쳐 있으므로 각 변수의 변화가 최종 함수값에 미치는 영향을 모두 더해야 한다.

z = f(x, y)이고, x = x(t), y = y(t)라고 하자. 그러면 z는 결국 t의 함수다. 이때

dz/dt = f_x(x(t), y(t)) dx/dt + f_y(x(t), y(t)) dy/dt

이다.

이 식은 전미분의 생각과 잘 맞는다. 아주 작은 변화에 대해

dz ≈ f_x dx + f_y dy

라고 볼 수 있으므로, 양변을 dt로 나누어 생각하면

dz/dt = f_x dx/dt + f_y dy/dt

가 된다. 즉 t가 변할 때 x가 변해서 생기는 효과와 y가 변해서 생기는 효과를 더한다.

예를 들어

f(x, y) = x² + 3xy, x=t, y=t²

라 하자. 먼저 직접 대입하면

z = t² + 3t³

이므로

dz/dt = 2t + 9t²

이다.

연쇄법칙으로 계산해 보자.

f_x = 2x + 3y, f_y = 3x, dx/dt = 1, dy/dt = 2t

따라서

dz/dt = (2x+3y)·1 + (3x)·2t

이고 x=t, y=t²를 대입하면

dz/dt = 2t + 3t² + 6t² = 2t + 9t²

로 직접 계산한 결과와 같다.

변수가 더 많아져도 절차는 같다. 중간 변수마다 "최종 함수가 이 변수에 얼마나 민감한가"를 나타내는 편미분을 구하고, 그 변수가 실제 입력에 따라 얼마나 변하는지를 곱한 뒤 모두 더한다.

라그랑주 승수법: 조건이 있는 최적화

한 변수 함수의 최적화에서는 도함수가 0인 점과 끝점을 확인했다. 다변수 함수에서도 제약조건이 없으면 내부의 극값 후보는 보통

∇f = 0

에서 찾는다. 하지만 현실의 최적화 문제에는 조건이 붙는 경우가 많다. 예를 들어 예산은 정해져 있고 효용을 최대로 하고 싶거나, 재료의 총량은 정해져 있고 넓이를 최대로 하고 싶은 경우다.

제약조건이

g(x, y) = c

이고 이 조건 아래에서 f(x, y)를 최적화한다고 하자. 조건 g(x, y)=c는 평면 위의 곡선이다. 제약곡선이 매끄럽고 최적점이 그 곡선의 보통 점, 즉 ∇g ≠ 0인 점에 있다면, 최적점에서는 대개 f의 등위선이 제약곡선에 접한다. 만약 접하지 않고 가로지른다면, 제약곡선을 따라 조금 움직여 더 큰 함수값이나 더 작은 함수값으로 갈 수 있기 때문이다.

등위선에 수직인 벡터는 그래디언트다. 따라서 최적점에서는 f의 그래디언트와 g의 그래디언트가 같은 방향 또는 반대 방향이어야 한다. 즉 서로 평행해야 한다.

이를 식으로 쓰면

∇f(x, y) = λ∇g(x, y)

이다. 여기서 λ를 라그랑주 승수라고 한다. 제약조건까지 함께 써서 다음 연립방정식을 푼다.

∇f = λ∇g, g(x, y) = c

예를 들어 둘레의 절반, 즉 x + y = 10이 정해져 있을 때 직사각형의 넓이 A = xy를 최대로 하고 싶다고 하자. 단 x ≥ 0, y ≥ 0이다.

목적함수는

f(x, y) = xy

제약조건은

g(x, y) = x + y = 10

이다. 그래디언트를 구하면

∇f = (y, x), ∇g = (1, 1)

이다. 라그랑주 조건은

(y, x) = λ(1, 1)

이므로

y = λ, x = λ

이다. 따라서 x = y이고, 제약조건 x + y = 10에서

x = 5, y = 5

를 얻는다. 이때 넓이는 25다. 경계점 (0, 10), (10, 0)에서는 넓이가 0이므로 최대는 (5, 5)에서 얻어진다.

라그랑주 승수법을 쓸 때는 다음을 기억해야 한다. 첫째, 제약조건을 반드시 함께 풀어야 한다. 둘째, 경계나 모서리처럼 매끄럽지 않은 곳은 따로 확인해야 한다. 셋째, 구한 점이 최대인지 최소인지는 문제의 정의역과 경계값까지 보고 판단해야 한다.

핵심 정리

다변수 함수는 여러 입력이 하나의 출력을 결정하는 함수다. 두 변수 함수는 정의역을 평면 영역으로, 그래프를 공간의 곡면으로, 등위선을 함수값이 같은 점들의 곡선으로 해석한다.

편미분은 한 변수만 움직였을 때의 변화율이다. 전미분은 여러 변수가 동시에 조금 변할 때 전체 함수값의 변화를 일차식으로 근사한다.

그래디언트는 편미분들을 모은 벡터이며, 그래디언트가 0이 아닌 곳에서는 함수가 가장 빠르게 증가하는 방향을 가리킨다. 방향도함수는 그래디언트와 방향벡터의 내적으로 계산된다.

다변수 연쇄법칙은 여러 경로로 전달되는 변화를 모두 더하는 규칙이다. 최종 함수의 편미분과 중간 변수의 변화율을 곱해 합한다.

제약조건이 있는 최적화에서는 라그랑주 승수법을 사용한다. 최적점에서 목적함수의 등위선과 제약곡선이 접한다는 기하학적 사실이 ∇f = λ∇g라는 식으로 표현된다.

책 목록

대학교 수학: 정의에서 응용까지

전체 목차 보기

이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.

틸노트는 사용자가 AI를 활용해 노트를 쉽게 작성하거나 편집할 수 있는 서비스입니다.

AI 스퀘어 단톡방에 함께해요

AI 활용과 틸노트 사용 팁을 나누는 오픈채팅방입니다. 입장 비밀번호는 tilnote입니다.

참여하기