nlm () 함수의 코드 변수


9

R에는 Newton-Raphson 알고리즘을 사용하여 함수 f를 최소화 하는 함수 nlm () 이 있습니다. 특히이 함수는 다음과 같이 정의 된 변수 코드의 값을 출력합니다.

최적화 프로세스가 종료 된 이유를 나타내는 정수를 코딩하십시오.

1 : 상대 기울기가 0에 가까우며, 현재 반복이 솔루션 일 것입니다.

2 : 허용 오차 내에서 연속 반복, 현재 반복이 솔루션 일 것입니다.

3 : 마지막 전역 단계가 예상보다 낮은 지점을 찾지 못했습니다. 추정값이 함수의 대략적인 로컬 최소값이거나 스텝 톨이 너무 작습니다.

4 : 반복 한계를 초과했습니다.

5 : 최대 스텝 크기 stepmax가 연속 5 회를 초과했습니다. 함수가 아래에서 제한되지 않거나 어떤 방향으로 위에서 유한 한 값으로 점근 적으로 나타나거나 stepmax가 너무 작습니다.

누군가가 1-5의 상황에 대해 나에게 설명 할 수 있습니까 (단 하나의 변수 기능을 가진 간단한 그림을 사용하고있을 수도 있음)?

예를 들어 상황 1은 다음 그림에 해당 할 수 있습니다.

여기에 이미지 설명을 입력하십시오

미리 감사드립니다!

답변:


8

이러한 상황은 최소화 또는 최대화가 실제로 무엇이고 최적화가 어떻게 작동하는지 염두에두면 더 명확하게 이해됩니다.

로컬 최소값을 갖는 함수 가 있다고 가정하십시오 . 최적화 방법 은 수렴 하는 시퀀스 를 구성하려고 시도합니다 . 이론상으로 구성된 시퀀스는 함수의 일부 클래스 대한 로컬 최소 점으로 수렴 함을 항상 보여줍니다 .fx0xix0f

반복에서 다음 후보 얻으려면 이 모든 알고리즘은 반복 횟수를 제한하는 것이 일반적이다, 그래서 긴 과정이 될 수 있습니다. 이것은 상황 4에 해당합니다 .i

그런 다음 각각 에 가까운 우리는이 . 따라서 이면 최소값에 도달했음을 나타냅니다. 상황 3에 해당합니다.xx0f(x)>f(x0)f(xi)>f(xi1)

함수 가 미분을 가지면 반드시 입니다. Newton-Raphson 방법은 각 단계에서 기울기를 계산하므로 경우 는 아마도 솔루션이며 상황 1에 해당합니다 .fx0f(x0)=0f(xi)0xi

실제 벡터 각각 수속 순서는 코시 대략 경우 즉, 반대의 순서 및 그 반대를 근접이고 다음 근접이고 반대로 역도, 반복 수이다. 따라서 경우 이론적으로 가 수렴 하면 최소 점에 가까워 야합니다. 이것은 상황 2에 해당합니다 .xix0xixi+1i|xixi1|<εxix0

수렴 시퀀스는 수축하는 속성을 갖습니다. 즉, 수렴에 가까운 경우 시퀀스의 나머지 모든 요소가 작은 영역에 포함됩니다. 이론적으로 수렴해야하는 순서가 큰 단계를 시작하기 시작하면 아마도 수렴이 없음을 나타냅니다. 상황 5에 해당합니다.

참고 엄격한 수학적 정의는 의도적으로 제외되었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.