여기서 은 최적화 변수이고, 은 목적함수(objective function)이다. 이 목적함수를 최소화 또는 최대화하기 위한 조건은 무엇일까.
의 독립적 변화에 의해 유도된 함수 의 변화량을 계산해 보자. 의 변화량을 라고 하면, 함수의 증분(increment) 는 다음 식으로 주어진다.
변화량이 매우 작을 때, 즉 일 때는 미분(differential) 로 표기하고 함수의 증분도 미분 로 표기한다. 미분 와 미분 의 비율 를 도함수(derivative)라고 한다 (흔히 이것도 미분이라고 번역한다).
다음 그림은 최적화 변수가 스칼라일때의 함수의 증분과 미분 사이의 관계를 보여준다. 증분 는 의 변화량이 일 때 함수 의 변화량인 반면 는 점에서 계산한 접선(도함수)을 따라 생긴 변화량을 나타낸다. 즉 이다. 그래서 미분 를 1차(first-order) 증분 또는 선형 증분이라고 한다.
다음 그림은 최적화 변수가 2차원 벡터 일 때의 함수의 증분과 미분 사이의 관계를 보여준다. 증분 는 과 의 변화량이 각각 과 일 때 함수 의 변화량인 반면, 는 과 점에서 계산한 접면(도함수)을 따라 생긴 변화량을 나타낸다. 즉
함수의 변수가 일반적인 -차원 벡터 일 때의 함수의 미분 는 다음과 같이 계산된다.
만약 을 기준으로 을 만족하는 모든 에 대해서 인 어떤 값 가 존재한다면, 를 로컬 최소값이라고 하고, 이라면 를 로컬 최대값이라고 한다. 만약 값을 임의의 큰 값으로 정할 수 있다면 각각 글로벌 최소값, 글로벌 최대값이라고 한다. 그리고 이 때의 를 정류점(stationary point) 또는 극점(extremal point)이라고 한다.
정류점에서는 함수의 미분이 0이 된다. 즉. 이다. 이 말은 어떤 함수가 어떤 값 에서 (로컬) 최소값 또는 최대값을 갖는다면 그 값이 바로 정류점이고 그 때 함수의 미분은 0이라는 뜻이다. 즉, 함수 가 (로컬) 최소값 또는 최대값을 갖기 위한 필요조건은 다음과 같다.
증명해 보자. 먼저 함수가 에서 로컬 최소값을 갖는다면, 일 때 함수의 미분은 다음 식을 만족해야 한다.
여기서 이고 이며, 는 에서 계산한 에 대한 의 그래디언트(gradient)이다. 또한 함수가 에서 로컬 최소값을 갖는다면, 일 때도 다음 식을 만족해야 한다.
위 두 식에 의하면 동시에 과 을 만족해야 하므로, 함수가 에서 로컬 최소값을 갖는다면 또는 이 되야 한다. 동일한 방법을 사용하면 함수가 에서 로컬 최대값을 갖을 때에도 이 돼야 함을 증명할 수 있다.
정리하면, 함수 가 에서 (로컬) 최소값 또는 최대값을 갖기 위한 필요조건은 다음과 같다.
만약 의 성분이 모두 독립이라면, stationary point 는 다음 식으로 계산할 수 있다.
댓글