나무모에 미러 (일반/밝은 화면)
최근 수정 시각 : 2024-06-25 17:02:55

변분법

변분에서 넘어옴
해석학·미적분학
Analysis · Calculus
{{{#!wiki style="margin: 0 -10px -5px; min-height: calc(1.5em + 5px)"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin: -5px -1px -11px"
<colbgcolor=#26455A>실수와 복소수실수(실직선 · 아르키메데스 성질) · 복소수(복소평면 · 극형식 · 편각) · 근방 · 유계 · 콤팩트성 · 완비성
함수함수 · 조각적 정의 · 항등함수 · 역함수 · 멱함수 · 다변수함수(동차함수 · 음함수) · 다가 함수 · 함수의 그래프 · 좌표계 · 닮은꼴 함수 · 극값 · 볼록/오목 · 증감표
초등함수(대수함수 · 초월함수 · 로그함수 · 지수함수 · 삼각함수) · 특수함수 · 범함수(변분법 · 오일러 방정식) · 병리적 함수
극한·연속 함수의 극한 · 수열의 극한 · 연속함수 · ε-δ 논법 · 수렴(균등수렴) · 발산 · 부정형 · 점근선 · 무한대 · 무한소 · 특이점 · 0.999…=1
중간값 정리 · 최대·최소 정리 · 부동점 정리 · 스털링 근사 · 선형근사(어림)
수열·급수 수열(규칙과 대응) · 급수(멱급수 · 테일러 급수(일람) · 조화급수 · 그란디 급수(라마누잔합) · 망원급수(부분분수분해)) · 그물
오일러 수열 · 베르누이 수열 · 월리스 곱
단조 수렴 정리 · 슈톨츠-체사로 정리 · 축소구간정리 · 급수의 수렴 판정 · 리만 재배열 정리 · 바젤 문제 · 파울하버의 공식 · 오일러-매클로린 공식 · 콜라츠 추측미해결
미분 미분 · 도함수(이계도함수 · 도함수 일람) · 곱미분 · 몫미분 · 연쇄 법칙 · 임계점(변곡점 · 안장점) · 매끄러움
평균값 정리(롤의 정리) · 테일러 정리 · 역함수 정리 · 다르부 정리 · 로피탈 정리
립시츠 규칙 · 뉴턴-랩슨 방법 · 유율법 · 경사하강법
적분 적분 · 정적분(예제) · 스틸체스 적분 · 부정적분(부정적분 일람) · 부분적분(LIATE 법칙 · 도표적분법 · 예제) · 치환적분 · 이상적분(코시 주요값)
미적분의 기본정리 · 적분의 평균값 정리
리시 방법 · 2학년의 꿈
다변수·벡터 미적분 편도함수 · 미분형식 · · 중적분(선적분 · 면적분 · 야코비안) ·야코비 공식
라그랑주 승수법 · 오일러 동차함수 정리 · 선적분의 기본정리 · 스토크스 정리(발산 정리 · 그린 정리변분법
미분방정식 미분방정식(풀이) · 라플라스 변환
측도론 측도 · 가측함수 · 곱측도 · 르베그 적분 · 절대 연속 측도 · 라돈-니코딤 도함수
칸토어 집합 · 비탈리 집합
복소해석 코시-리만 방정식 · 로랑 급수 · 유수 · 해석적 연속 · 오일러 공식(오일러 등식 · 드 무아브르 공식) · 리우빌의 정리 · 바이어슈트라스 분해 정리 · 미타그레플레르 정리
함수해석 공간 위상 벡터 공간 · 국소 볼록 공간 · 거리공간 · 프레셰 공간 · 노름공간 · 바나흐 공간 · 내적공간 · 힐베르트 공간 · Lp 공간
작용소 수반 작용소 · 에르미트 작용소 · 정규 작용소 · 유니터리 작용소 · 컴팩트 작용소
대수 C*-대수 · 폰 노이만 대수
정리 한-바나흐 정리 · 스펙트럼 정리 · 베르 범주 정리
이론 디랙 델타 함수(분포이론)
조화해석 푸리에 해석(푸리에 변환 · 아다마르 변환)
관련 분야 해석 기하학 · 미분 기하학 · 해석적 정수론(1의 거듭제곱근 · 가우스 정수 · 아이젠슈타인 정수 · 소수 정리 · 리만 가설미해결) · 확률론(확률 변수 · 중심극한정리) · 수치해석학 · 카오스 이론 · 분수계 미적분학 · 수리물리학(양-밀스 질량 간극 가설미해결 · 나비에 스토크스 방정식의 해 존재 및 매끄러움미해결) · 수리경제학(경제수학) · 공업수학
기타 퍼지 논리 · 합성곱
}}}}}}}}} ||

1. 개요2. 역사3. 변분법의 기본 보조정리
3.1. 증명
4. 오일러 방정식
4.1. 다변수함수오일러 방정식4.2. 구속 조건이 있는 오일러 방정식
4.2.1. 일반 구속 조건4.2.2. 적분형 구속 조건4.2.3. 예제
5. δ 표기법6. 관련 문서

1. 개요

/ calculus of variations

변분법은 수학의 한 분야로서 범함수의 최소, 최대를 찾는 방법 등을 가리키는 용어이다. 예를 들어 [math( (x_1,y_1) )] 라는 점과 [math( (x_2,y_2) )] 라는 점을 연결하는 다양한 곡선들의 집합을 생각해 보자. 이들 중 가장 짧은 것, 즉 두 점 사이의 최단경로는 두 점을 연결한 직선이 된다. 직관적으로는 답을 쉽게 알 수 있지만 그것을 실제로 수학적인 엄밀성을 갖춰 증명하는 것은 쉽지 않다. 또 다른 예로, 일정한 길이의 닫힌 곡선으로 만들 수 있는 도형을 생각해 보자. 무수히 많은 가능한 도형들 중 가장 넓이가 큰 것은 원이 될 것이다. 그러나 그 증명을 위해 모든 가능한 도형들을 만들어 넓이를 비교해 볼 수는 없다.

다양한 물리학 문제가 무언가를 최소화하거나 최대화하는 것을 요구하고 있고 고전역학을 기술하기 위해 도입된 페르마의 원리, 해밀턴의 원리 등을 실제로 적용하기 위해서는 최소 경로, 최소 시간, 최소 액션 등을 주는 운동을 찾아야 하므로 물리학자들에게 오히려 더 친숙한 수학적인 도구라고도 할 수 있다.

변분법 문제를 푸는 방법은 최적화 문제의 1계 조건에서 얻어지는 방정식의 해를 구하는 것이다. 이 1계 조건이 오일러-라그랑주 방정식이다. 또한 오일러-라그랑주 방정식은 최적화의 필요조건이므로 그 해가 충분조건도 만족하는지는 2계 조건을 따져 보아야 알 수 있다.

변수분리법과 헷갈리지 않게 주의하자.

2. 역사

1687년 뉴턴은 프린키피아에서 유체 내부에서 운동하는 물체의 저항을 최소로 만드는 표면의 모양에 대해서 논의한다. 이를 변분법의 시초라고 볼 것인지에 대해선 사람마다 의견이 다르다.

변분법은 1696년 6월 요한 베르누이Acta Eruditorum에 최속 하강 곡선(Brachistochrone curve) 문제를 다른 수학자들에게 난제로 제시하면서 시작되었다. 이 문제에 대해 라이프니츠, 아이작 뉴턴, 요한 베르누이 자신, 야코프 베르누이, 로피탈 등이 답을 제출하였다. 그 중에서 야코프 베르누이가 답을 구한 방식이 변분법의 아이디어의 단초가 되었다.

본격적인 변분법에 대한 연구는 오일러부터 시작되며 변분법이라는 이름도 오일러의 저서에서 비롯된다. 이후에 천재 소년 라그랑주가 오일러의 저서를 보고 연구하여 자신만의 개선점을 오일러에게 편지로 알리자 오일러가 자신의 방법을 버리고 라그랑주의 방법을 받아들였다는 것은 유명한 일화다.[1] 그래서 1계 조건 방정식이 오일러-라그랑주 방정식이라고 불린다.

이후에 야코비, 바이어슈트라스 등의 수학자들이 2계 조건에 관한 연구를 진척시켰다. 특히 힐베르트의 23가지 문제중 마지막 변분법에 대한 문제는 그 문제를 설명하면서 힐베르트가 2계 충분 조건의 기존 성과를 정리하고 자신의 연구결과를 덧붙이는 것을 발표하는 것으로 사실상 문제 아닌 문제가 되어버렸다. 이후 변분법은 좀더 유연한 최적제어론(Optimal control)과 동적 계획법(Dynamic programming)으로 계승되어 발전된다.

3. 변분법의 기본 보조정리

변분법의 기본 보조정리(Fundamental Lemma of Calculus of Variations)는 오일러-라그랑주 방정식의 증명에 있어서 핵심적인 보조정리이다.

[math(f\,:\, [a,\,b] \rightarrow \mathbb{R})]이 연속함수이고, 컴팩트 지지이자 매끄러운 임의의 함수 [math(\eta(x))]에 대하여 다음이 성립한다고 하자,
[math(\displaystyle \int_{a}^{b} f(x) \eta(x)\,dx=0 )]
그러면, [math(f \left( x \right) \equiv 0)]이다.

참고로, 매끄러운 함수는 무한번 미분가능한 함수를 뜻하고, 컴팩트 지지 함수는 [math(\{x\in \mathbb{R}|\eta(x)≠0\})]의 폐포(closure)가 유계인 것을 의미한다.

컴팩트 지지 대신에 좀 더 약한 조건인 [math(c \notin (a,\,b))]인 모든 점 [math(c)]에 관해 [math(\eta(c)=0)]인 조건을 넣기도 한다.

3.1. 증명

[math(f \left( x \right) \not\equiv 0)]이라 가정하자. 편의상 [math(x = \xi)]의 근방 [math(\mathcal{N} = \left\{ x \in \left[ a, b \right] : \xi_1 < x < \xi_2 \right\})]에서 [math(f \left( x \right) > 0)]이라 하자.
이때, 위에서 언급하였던 조건보다 약화되어 두 번 미분가능한 함수에 대해 위 명제를 보일 것이다. [math(\eta \left( x \right) = {\left( x - \xi_1 \right)}^4 {\left( x -\xi_2 \right)}^4 {\bold{1}}_{\mathcal{N}} \left( x \right))][2]이라 하자.

그러면,
[math(\displaystyle \int_{a}^{b}{f \left( x \right) \eta \left( x \right)}\mathrm{d}x)]
[math(\displaystyle = \int_{a}^{\xi_1}{f \left( x \right) \eta \left( x \right)}\mathrm{d}x + \int_{\xi_1}^{\xi_2}{f \left( x \right) \eta \left( x \right)}\mathrm{d}x + \int_{\xi_2}^{b}{f \left( x \right) \eta \left( x \right)}\mathrm{d}x)]
[math(\displaystyle = \int_{\xi_1}^{\xi_2}{f \left( x \right) \eta \left( x \right)}\mathrm{d}x)]
여기서 [math(f, \eta)] 모두 [math(\mathcal{N})]에서 양의 부호를 가지므로, 적분의 성질에 의해 [math(\mathcal{N})] 위의 적분 [math(\displaystyle \int_{\xi_1}^{\xi_2}{f \left( x \right) \eta \left( x \right)}\mathrm{d}x)]도 양의 부호를 갖는다.
따라서 [math(\displaystyle \int_{a}^{b}{f \left( x \right) \eta \left( x \right)}\mathrm{d}x > 0)]인데, 이는 가정에서 [math(\displaystyle \int_{a}^{b}{f \left( x \right) \eta \left( x \right)}\mathrm{d}x = 0)]라고 한 것과 모순이다.
같은 논지로 [math(f < 0)]인 경우도 증명할 수 있다.
그러므로 [math(f \left( x \right) \equiv 0)]이다.

4. 오일러 방정식

변수를 하나만 가지는 함수 [math(y\left(x\right))]와 그 도함수 [math(y^\prime \left(x\right))]를 변수로 가지는 어떤 범함수(functional)
[math(\displaystyle J = \int_{ x_1 }^{ x_2 }{ f \left\{ y \left( x \right) , y^\prime \left( x \right) ; x \right\} } dx )]

의 극값(극소 또는 극대)가 될 때, [math( f )]가 만족하는 미분방정식은 다음과 같다.
[math(\displaystyle \frac{ \partial f }{ \partial y } - \frac{ d }{ dx }\left( \frac{ \partial f }{ \partial y' } \right) = 0 )]

이를 오일러 방정식이라 한다. 증명 및 자세한 내용은 오일러 방정식 문서에 있다.

4.1. 다변수함수오일러 방정식

범함수 [math( J )]가 [math( y(x) )]뿐만 아니라 다른 변수 [math( y_1 (x), y_2 (x), y_3 (x), \cdots )] 등을 가질 수도 있다. 이때는 단순히 각 변수에 대해 오일러 방정식을 여러 번 써 주면 된다. 예를 들어
[math(\displaystyle J = \int_{ x_1 }^{ x_2 }{ f \left\{ y \left( x \right) , y^\prime \left( x \right) ,z \left( x \right) , z^\prime \left( x \right) ; x \right\} } dx )]

가 극값이 될 때 [math( f )]가 만족하는 미분방정식은 다음 연립방정식이다.
[math(\displaystyle \frac{ \partial f }{ \partial y } - \frac{ d }{ dx }\left( \frac{ \partial f }{ \partial y' } \right) = 0 , \frac{ \partial f }{ \partial z } - \frac{ d }{ dx }\left( \frac{ \partial f }{ \partial z' } \right) = 0 )]

일반적으로 간단히 [math( J = \int_{ x_1 }^{ x_2 }{ f \left\{ y_i \left( x \right) , y_i^\prime \left( x \right) ; x \right\} } dx \quad (i=1,2,\cdots,n) )]가 극값이 되는 [math( f )]는 다음 연립방정식이 성립한다.
[math(\displaystyle \frac{ \partial f }{ \partial y_i } - \frac{ d }{ dx }\left( \frac{ \partial f }{ \partial y_{i}' } \right) = 0 )]

4.2. 구속 조건이 있는 오일러 방정식

라그랑주 승수법에 의하면, 어떤 조건 [math( g(x,y,z)=0 )]를 만족할 때 [math( f(x,y,z) )]의 극값의 좌표는, 어떤 실수 [math( \lambda )]가 존재하여 다음 식을 만족한다.
[math(\displaystyle \boldsymbol{\nabla} f(x,y,z) + \lambda \boldsymbol{\nabla} g(x,y,z) = 0 )]

그러면 위 식에서 나온 3개의 연립방정식과 구속 조건 [math( g(x,y,z)=0 )]까지 4개의 식을 연립하여 [math( x,y,z,\lambda )]를 구하면 된다. 구속 조건이 있는(contrained) 오일러 방정식도 비슷한 방법으로 풀 수 있다.

4.2.1. 일반 구속 조건

비슷한 원리로, 구속 조건 [math( g(y,x)=0 )]를 만족하는 범함수 [math( J = \int_{ x_1 }^{ x_2 }{ f \left\{ y( x ) , y'( x) ; x \right\} } dx )]가 극값이 될 때, 어떤 함수 [math( \lambda (x) )]가 존재하여 다음 방정식을 만족한다.
[math(\displaystyle \frac{ \partial f }{ \partial y } - \frac{ d }{ dx } \frac{ \partial f }{ \partial y' } + \lambda (x) \frac{ \partial g }{ \partial y } = 0 )]

그런 다음 구속 조건 [math( g=0 )]이랑 연립해서 [math( y )]와 [math( \lambda )]를 둘 다 구할 수 있다.

일반적으로, [math( f )]가 여러 변수 [math( y_1, y_2, \cdots , y_m )]의 함수이고, 구속 조건도 [math( g_1, g_2, \cdots , g_n )]로 여러 개라면, [math( J )]가 극값이 되는 방정식은 다음과 같다. (각각의 [math( i )]마다 성립하는 [math( m )]개의 연립 방정식이고, 서로 다른 어떤 함수 [math( \lambda_1, \lambda_2, \cdots , \lambda_n )]가 존재한다.)
[math(\displaystyle \frac{ \partial f }{ \partial y_i } - \frac{ d }{ dx } \frac{ \partial f }{ \partial {y_i}' } + \lambda_j (x) \frac{ \partial g_j }{ \partial y_i } = 0 )]

그러면 위 [math( m )]개의 연립 방정식과 [math( n )]개의 구속 조건 [math( g_j = 0 )]를 연립해서 [math( y_1, y_2, \cdots, y_m, \lambda_1, \lambda_2, \cdots , \lambda_n )]를 구할 수 있다. ([math( m+n )]개의 식이 있으므로 [math( m+n )]개의 미지수를 풀 수 있다.)

4.2.2. 적분형 구속 조건

범함수 [math( J )]가 있을 때, 가끔 구속 조건이 단순한 [math( y,x )]에 대한 함수가 아니라 다음과 같은 적분으로 정의된 범함수의 꼴일 수도 있다.
[math( \displaystyle K = \int_{ x_1 }^{ x_2 }{ g \left\{ y( x ) , y'( x) ; x \right\} } dx )]

이런 경우 푸는 방법은 더 쉬워진다. 그냥 어떤 실수 [math( \lambda )]가 존재하여 [math( J + \lambda K )]가 극값이 되면 된다. 즉, [math( \int_{ x_1 }^{ x_2 }{ (f + \lambda g) } dx )]가 극값을 가지면 된다. 이때 만족하는 방정식은 다음과 같이 될 것이다.
[math(\displaystyle \frac{ \partial f }{ \partial y } - \frac{ d }{ dx } \frac{ \partial f }{ \partial y' } + \lambda \left( \frac{ \partial g }{ \partial y } - \frac{ d }{ dx } \frac{ \partial g }{ \partial y' } \right) = 0 )]

4.2.3. 예제

5. δ 표기법

가끔 변분법에서 [math( J)](범함수,functional)에대해서 [math( \frac{\partial x}{\partial \alpha} d \alpha )]를 간단히 [math( \delta \left(\text{델타} \right) )]를 사용해 [math( \delta x )]로 표시하기도 한다. 설명하자면 [math( \delta )]는 무한소만큼 벗어난 매개변수에 대한 차이이다. 예를 들어, 오일러 방정식의 유도 과정에서 다음 식을 보자. (먼저 오일러 방정식 문서를 읽고 와야 이해하기 쉽다)
[math( \displaystyle \frac{ \partial J }{ \partial \alpha } = \int_{ x_1 }^{ x_2 }{ \left[ \frac{\partial f}{\partial y} - \frac{d}{dx} \frac{\partial f}{\partial y'} \right] \eta \left( x \right) dx } )]

여기서 관계식 [math( \eta (x) = \frac{ \partial y }{ \partial \alpha } )]를 대입하고 양변에 [math( d \alpha )]를 곱하면 다음과 같은 형태로 쓸 수 있다.
[math( \displaystyle \frac{ \partial J }{ \partial \alpha } d \alpha = \int_{ x_1 }^{ x_2 }{ \left[ \frac{\partial f}{\partial y} - \frac{d}{dx} \frac{\partial f}{\partial y'} \right] \frac { \partial y }{ \partial \alpha } d \alpha dx } )]

이것을 [math( \delta )] 표기법으로 쓰면 다음과 같다.
[math( \displaystyle \delta J = \int_{ x_1 }^{ x_2 }{ \left[ \frac{\partial f}{\partial y} - \frac{d}{dx} \frac{\partial f}{\partial y'} \right] \delta y dx } )]

이때, [math( \delta y )]를 [math( y )]의 변분이라고 한다. 여기서 [math( \delta y )]가 의미하는 것은 실제 경로 [math( y(0,x) )]에서 무한소만큼 살짝 벗어난 경로와의 차이이다. 오일러 방정식에서와 마찬가지로, 이것은 임의의 [math( \delta y )]에 대하여 0이 되어야 한다. 따라서 [math( J )]가 극값을 가진다는 것은 다시 말하면 [math( \delta J = 0 )]로도 쓸 수 있다. 따라서 다음은 모두 동치이다.
[math( \displaystyle \delta J = 0 \Longleftrightarrow \left[ {\frac{ \partial J }{ \partial \alpha }} \right] _ {\alpha = 0} = 0 \Longleftrightarrow \frac{ \partial f }{ \partial y_i } - \frac{ d }{ dx }\left( \frac{ \partial f }{ \partial y_{i}' } \right) = 0 )]

그런데 여기까지만 보면 그냥 표기법만 달라진 것인데 굳이 왜 [math( \delta )]를 쓰는지 잘 이해가 되지 않을 수 있다. 지금까지 계속 '무한소만큼 벗어난 매개변수에 대한 차이'라는 표현을 썼는데, 이것이 직관적으로 의미하는 것이 무엇인지 알아보자. 예를 들어 [math( \delta y )]는 다음 그림과 같다.

파일:변분법_2.png

즉, [math( \delta y )]는 아주아주 살짝 벗어난 경로와의 차이라고 이해하면 된다. 이때 [math( J )]의 차이는 [math( \delta J )]이다. 그런데 [math( J )]의 정의를 보자.
[math(\displaystyle J = \int_{ x_1 }^{ x_2 }{ f \left\{ y \left( x \right) , y^\prime \left( x \right) ; x \right\} } dx )]
이 식에서 [math( f )]는 [math( y(x), y'(x), x )]의 함수이다. 그런데 [math( y(x), y'(x) )]는 또 [math( x )]의 함수이다. 이때, [math( y(x), y'(x) )]를 variable이라 하고, [math( x )]를 parameter라고 한다. 그런데 변분이란 [math( \alpha )]에 대한 작은 변화를 보는 것이다. 알다시피 [math( y, y' )]만이 [math( \alpha )]의 함수이고 [math( x )]는 독립이다. 즉 parameter인 [math( x )]는 제외하고 variable인 [math( y )]와 [math( y' )]의 변화만 보겠다는 것이다. 즉 변분은 일종의 variable만 고려하는 전미분과 비슷하다. 그래서 변분법을 영어로 calculus of variations라고 하는 것이다. 따라서 전미분과의 차이는 다음과 같다.
전미분: [math(\displaystyle df =\frac{ \partial f }{ \partial y } dy + \frac{ \partial f }{ \partial y' } dy' + \frac{ \partial f }{ \partial x } dx )]
변분: [math(\displaystyle \delta f =\frac{ \partial f }{ \partial y } \delta y + \frac{ \partial f }{ \partial y' } \delta y' )]

그러면 [math( \delta )]표기법을 써서 오일러 방정식을 증명할 수도 있다.
[math(\displaystyle \delta J = \int_{x_1}^{x_2}{ \delta f dx } = \int_{x_1}^{x_2}{ \left( \frac{ \partial f }{ \partial y } \delta y + \frac{ \partial f }{ \partial y' } \delta y' \right) dx} )]

그런데, [math( \delta y' = (\delta y)' )]가 성립한다. 따라서 오일러 방정식에서 했던 것처럼 두 번째 항을 부분적분하면
[math(\displaystyle \delta J = \int_{x_1}^{x_2}{ \left( \frac{ \partial f }{ \partial y } - \frac{ d }{ dx } \frac { \partial f }{ \partial y' } \right) \delta y dx} )]

따라서 [math( \delta J = 0 )]이 되려면 괄호 안이 0이 되어야 하고 오일러 방정식을 얻는다.

다만 주의할 것은, 이 표기법은 그저 편리를 위해 간단히 줄여 쓴 것일 뿐이지 수학적으로 아주 엄밀한 것은 아니라는 것이다. 그래서 이 표기법은 주로 물리학에서 사용한다.

6. 관련 문서



[1] 현재의 변분법 과목에서도 라그랑주의 아이디어를 이용해서 1계 조건을 도출하는 방법을 설명한다.[2] [math({\bold{1}}_{\mathcal{N}})]은 근방 [math(\mathcal{N})]에 속하는 원소인지를 판별하는 지시함수이다.