이번역페이지는최신내용을담고있지않습니다。최신내용을문으로보려면여기를클릭하십시오。
최소제곱(모델피팅)알고리즘
최소제곱정의
일반적으로최소제곱은제곱합인함수의국소최소점인벡터x를구하는문제이며,일부제약조건이적용될수있습니다。
이때<年代pan class="inlineequation">A·x≤b, Aeq·x = beq, lb≤x≤ub조건을충족해야합니다。
다양한유형의F (x)와다양한유형의제약조건에대해여러优化工具箱™솔버를사용할수있습니다。
솔버
F (x)
제약 조건
mldivide
C·x - d
없음
lsqnonneg
C·x - d
X≥0
lsqlin
C·x - d
범위,선형
lsqnonlin
일반F(x)
범위
lsqcurvefit
F(x, xdata) - ydata
범위
优化工具箱솔버에는mldivide에서사용되는알고리즘외에다음과같은다섯가지최소제곱알고리즘이있습니다。
lsqlinActive-set를제외한모든알고리즘은대규모알고리즘입니다。대규모알고리즘과중간규모알고리즘비교항목을참조하십시오。비선형최소제곱방법에대한일반적설문조사는데니스(丹尼斯)의문헌[8]을참조하십시오。Levenberg-Marquardt방법에대한구체적인세부사항은모레(更多)의문헌[28]에서확할수있습니다。
선형최소제곱:internal - point또는Active-Set
lsqlin“内点”알고리즘은Quadprog의内点凸알고리즘을사용하고,lsqlin“激活集”알고리즘은active-setquadprog알고리즘을사용합니다。quadprog문제정의는다음과같이2차함수를최소화하는것입니다。
여기에는선형제약조건과범위제약조건이적용됩니다。lsqlin함수는벡터Cx - d에대한2 -노름의제곱값을최소화하며,여기에는선형제약조건과범위제약조건이적용됩니다。다시말해서,lsqlin은다음을최소화합니다。
이는h행렬을2c .<年代up>TC로설정하고C벡터를<年代pan class="inlineequation">(2 c<年代up>Td)로설정하면quadprog프레임워크에잘맞습니다。부가항d<年代up>TD는최솟값의위치에아무런향도미치지않습니다。이렇게lsqlin문제를다시정식화한후,quadprog는해를계산합니다。
참고
quadprog의“interior-point-convex”알고리즘에는두개의코드경로가있습니다。가하나는헤세행렬H双형으로구성된일반(비희소)행렬인경우실행하고,다른하나가는H희소행렬인경우실행합니다。희소데이터형에대한자세한내용은희소 행렬항목을참조하십시오。일반적으로,이알고리즘은h를稀疏的로지정하는경우0이아닌항이상대적으로적은큰문제에서더빠릅니다。이와유사하게,이알고리즘은h를完整的로지정하는경우상대적으로조밀한문제또는작은문제에서더빠릅니다。
信任区域反射최소제곱
信任区域反射최소제곱알고리즘
优化工具箱솔버에사용되는대부분의방법이최적화의단순하지만강력한개념인<年代pan class="emphasis">신뢰역을기반으로합니다。
최적화에대한信赖域접근법을이해하기위해제약조건이없는최소화문제를살펴보고,f (x)를최소화해보겠습니다。여기서함수는벡터수를받고스칼라를반환합니다。n공간에서점x에있고향상,즉더낮은함수값을가지는점으로이동하기를원한다고가정해보겠습니다。기본적인발상은점x주위에있는이웃N에서함f의수동작을잘반영하는더간단한함q수를사용하여f를근사하는것입니다。이이웃을신뢰역이라고합니다。시행스텝s는N에대한최소화(또는근사최소화)를수행하여계산됩니다。이를trust-region하위문제라고하며,다음과같습니다。
(1)
현재 점은<年代pan class="inlineequation">F (x + s) < F (x)경우x + s가되도록업데이트됩니다。그렇지않은경우현재점은변경되지않고그대로유지되며신뢰영역N은축소되고시행스텝계산이반복됩니다。
f (x)를최소화하기위한특정信赖域접근법을정의할때고려해야할핵심질문은근삿값q(현재점x에서정의됨)를선택하고계산하는방법은무엇인가,신뢰영역N을선택하고수정하는방법은무엇인가,그리고信赖域하위문제를얼마나정확하게풀수있는가입니다。이섹션에서는제약조건이없는문제를집중적으로설명합니다。뒷부분에나오는섹션에서는변수에대한제약조건이존재함으로인해복잡성이얼마나가중되는지에대해설명합니다。
` ` ` `준trust-region방법([48]2)에서는차근삿값q x가에서F에대한테일러근사의처음두항으로정의되며,이웃N은일반적으로구면또는타원형태입니다。수학적으로trust-region하위문제는대개다음과같이通讯录기됩니다。
(2)
g는여기서현재점x에서f의기울기이고,H는헤세행렬(2계도함수의대칭행렬)이고,D는대각스케일링행렬이고,Δ는양의스칼라이며,∥。∥는2-노름입니다。수식2을푸는데사용할수있는좋은알고리즘이있습니다([48]참조)。이러한알고리즘은일반적으로다음과같은고유방정식에적용되는뉴턴과정및h의모든고유값에대한계산을포함합니다。
이러한알고리즘은수식2에대한정확한해를제공합니다。하지만,이알고리즘을사용하려면H에대한여러행렬분해에비례하는시간이필요합니다。따라서,trust-region문제에대해서는다른접근법이필합니다。수식2기반한여러근사법과발견법전략이참고문헌([42]및[50])에서제되었습니다。优化工具箱솔버에서따르는근사접근법은信赖域하위문제를2차원부분공간([39]및[42])로제한하는것입니다。부분공간s가계산되고나면수식2를푸는방법은간단합니다。비희소고유값/고유벡터정보가필한경우에도마찬가지입니다。그이유는부분공간에서는문제가2차원뿐이기때문입니다。이제수행해야하는주된작업은부분공간을결정하는것입니다。
2차원부분공간s는아래에설명되어있는선조건적용켤레기울기법과정을통해결정됩니다。솔버는S를S<年代乌兰巴托>1및年代<年代乌兰巴托>2에의해생성되는선형공간으로정의합니다。여기서s<年代乌兰巴托>1은기울기g의방향이고s<年代乌兰巴托>2는 근사뉴턴방향,즉다음수식에대한해를말합니다。
(3)
또는다음과같은음의곡률의방향입니다。
(4)
이러한年代선택의바탕이되는철학은(최속강하법방향또는음의곡률방향을통해)전역수렴을강제적용하고(존재하는경우뉴턴스텝을통해)신속하게국소수렴을달성한다는것입니다。
信赖域알고리즘을사용한제약조건이없는최소화과정은이제다음과같이간단하게요약할수있습니다。
2차원trust-region하위문제를정식화합니다。
F (x + s) < F (x)이면<年代pan class="inlineequation">X = X + s입니다。
Δ를조정합니다。
이네단계는수렴할때까지반복됩니다。Trust-region차원Δ는通讯录준규칙에따라조정됩니다。특히,시행스텝이받아들여지지않은경우,즉<年代pan class="inlineequation">F (x + s)≥F (x)ric경우에는trust-region차원이축소됩니다。이사항에대한자세한내용은[46]항목과[49]항목을참조하십시오。
优化工具箱솔버는비선형최소제곱,2차함수,선형최소제곱등의특화된함수를사용하여f에대한몇가지중요한특수사례를처리합니다。하지만,기반이되는알고리즘적발상은일반적marketing사례와동일합니다。이러한특수사례에대해서는뒷부분에나오는섹션에서설명합니다。
대규모비선형최소제곱
F (x)의중한특수사례는다음과같은비선형최소제곱문제입니다。
(5)
여기서F(x)는F(x)의성분i가F<年代乌兰巴托>我(x)와동일한벡터값함수입니다。이문제를푸는데사용되는기본방법은비선형최소화를위한信任区域방법에설명되어있는일반적사례와동일합니다。그러나,효율성을높이기위해비선형최소제곱문제의구조가이용됩니다。특히,근사가우스-뉴턴방향,즉다음에대한해s가
(6)
(여기J는F (x)의서야코비행렬임)2차원부분공간年代를정의하는데도움이되도록사용됩니다。성분함수f<年代乌兰巴托>我(x)의2계도함수는사용되지않습니다。
각반복마다선조건적용켤레기울기방법이정규방정식,즉다음에대한근사해를구하기위해사용됩니다。
정규방정식이명시적으로구성되지않은경우에도마찬가지입니다。
대규모선형최소제곱
이사례에서풀려는함수f(x)는다음과같습니다。
여기에는선형제약조건이적용될수있습니다。이알고리즘은제한내에서국소해로수렴하는엄밀히실현가능한반복을생성합니다。각반복에는대규모선형시스템(차수가n,여기서n은x의길이)의근사해가포함됩니다。반복행렬은행렬c의구조를갖습니다。특히,선조건적용켤레기울기법은정규방정식,즉다음에대한근사해를구하기위해사용됩니다。
정규방정식이명시적으로구성되지않은경우에도마찬가지입니다。
부분공간trust-region방법은탐색방향을결정하는데사용됩니다。하지만,비선형최소화사례에서처럼스텝을(가능한)하나의반사스텝으로제한하는대신차2문제의사례에서와마찬가지로각반복마다조각별반사직선탐색이수행됩니다。직선탐색에대한자세한내용은[45]항목을참조하십시오。궁극적으로,선형시스템은해에서의1차최적성조건을포착하는뉴턴접근법을나타내며,그결과강한국소수렴속도가실현됩니다。
야코비행렬의곱셈함수。lsqlin
은행렬C를명시적으로사용하지않고선형제약조건이있는최소제곱문제를풀수있습니다。대신,다음과같이야코비행렬의곱셈함수jmfun을사용합니다。
W = jmfun(Jinfo,Y,flag)
이함수는사용자가직접제공합니다。이함수는행렬y에대해다음곱을계산해야합니다。
标志== 0이면W = c '*(c * y)입니다。
标志> 0이면W = c * y입니다。
标志< 0이면W = c '* y입니다。
이는c가크지만그구조가c를명시적으로구성하지않고jmfun을작성하는것으로충분한경우에유용할수있습니다。예제는线性最小二乘雅可比乘法函数항목을참조하십시오。
Levenberg-Marquardt방법
최소제곱문제는제곱합함수f(x)를최소화합니다。
(7)
이유형의문제는다수의실제응용사례에서나타나며,특히비선형파라미터추정과같이모델함수를데이터에피팅하는응용사례에서나타납니다。이문제유형은목적함수가벡x와터스칼라t에대한연속모델궤적φ(t)를따르는출력값y (x, t)를구하는함수인경우제어시스템에도나타납니다。이문제는다음으로@ @현할수있습니다。
(8)
여기서y(x,t)와φ(t)는스칼라함수입니다。
다음과같이적분을이산화하여근삿값을구합니다。
(9)
여기서t<年代乌兰巴托>我는간격이균일합니다。이문제에서벡터F(x)는다음과같습니다。
이러한유형의문제에서는현실적으로실현가능한목표궤적을설정하는것이보통이므로잔차<年代pan class="inlineequation">∥∥F (x)는최적해에서작은값이될가능성이큽니다。제약조건이없는최적화관련기본사항의설명에나와있듯이,수식7의함수는제약조건이없는일반적인최소화기법을사용하여최소화할수있지만문제의특정한특성은풀이절차의반복효율성을향상시키는데종종이용될수있습니다。수식7의기울기와헤세행렬은특수한구조를가집니다。
F (x)의m×n야코비행렬을J (x)로나타내고,F (x)의기울기벡터를G (x)로나타내고,F (x)의헤세행렬을H (x)로나타내고,각F<年代乌兰巴托>我(x)의헤세행렬을<年代乌兰巴托>我(x)로나타내면다음을얻게됩니다。
(10)
여기서
행렬Q(x)에서x<年代乌兰巴托>k가해에접근함에따라잔차<年代pan class="inlineequation">∥∥F (x)가0에가까워지며Q(x)도0에가까워집니다。따라서<年代pan class="inlineequation">∥∥F (x)가해에서작은값을갖는경우,최적화절차의근간으로가우뉴스——턴방향을사용하는것이효과적입니다。
각각의주반복k에서가우뉴스——턴방법에서는다음과같은선형최소제곱문제의해인탐색방향d<年代乌兰巴托>k가구해집니다。
(11)
이방법에서도출된방향은항<年代pan class="inlineequation">Q(x) = 0일때뉴턴방향과동일합니다。이알고리즘에서는탐색방향d<年代乌兰巴托>k를직선탐색전략의일부로사용하여각반복시함수f (x)가감소하도록할수있습니다。
2차항Q (x)를무시할수없는경우가우뉴스——턴방법에서종종문제가발생할수있습니다。Levenberg-Marquardt방법으로이문제를해결할수있습니다。
Levenberg-Marquardt방법([25]및[27]참조)은다음선형방정식세트의해marketing탐색방향을사용하거나,
(12)
또는,선택적으로다음방정식의해marketing탐색방향을사용합니다。
(13)
여기서스칼라λ<年代乌兰巴托>k는d<年代乌兰巴托>k의크기와방향을모두제어하고,诊断接头(A)는一个의대각항으로구성된행렬을의미합니다。수식12를선택하려면옵션ScaleProblem을“没有”으로설정하고,수식13을선택하려면ScaleProblem을的雅可比矩阵로설정하십시오。
InitDamping옵션을사용하여파라미터λ<年代乌兰巴托>0의초기값을설정할수있습니다。경우에따라,이옵션의디폴트값0.01이적합하지않을수있습니다。Levenberg-Marquardt알고리즘이초기에거의진척이없는것으로확되면InitDamping을디폴트값과는다른값(예:1 e2)으로설정해보십시오。
λ<年代乌兰巴托>k가0이면방향<年代乌兰巴托>k는가우스-뉴턴방법의방향과동일합니다。λ<年代乌兰巴托>k가무한대로가려함에따라d<年代乌兰巴托>k는최속강하법방향을향하려하며,크기는0에가까워지려합니다。따라서충분히큰어떤λ<年代乌兰巴托>k에 대해 항<年代pan class="inlineequation">F (x<年代乌兰巴托>k+ d<年代乌兰巴托>k) < F(x<年代乌兰巴托>k)가성립한다는것을의미합니다。따라서알고리즘에서가우뉴스——턴방법의효율성을제한하는2차항이발생할때도하강을계속하도록항λ<年代乌兰巴托>k를제어할수있습니다。스텝이성공적(낮은함수값을제공함)일경우알고리즘은λ<年代乌兰巴托>k+1=λ<年代乌兰巴托>k/10을설정합니다。스텝이성공적이지않을경우알고리즘은λ<年代乌兰巴托>k+1=λ<年代乌兰巴托>k*10을설정합니다。
내부적으로,Levenberg-Marquardt알고리즘은최적성허용오차(중지기준)1的军医에함수허용오차를곱한값을사용합니다。
따라서Levenberg-Marquardt방법은가우뉴스——턴방향과최속강하법방향을번갈아이용하는탐색방향을사용합니다。
Levenberg-Marquardt방법의또다른이점은야코비행렬J의랭크가부족할때발휘됩니다。이경우에는수식11에서최소화문제의조건이나쁘기때문에가우뉴스——턴방법에수치적문제가있을수있습니다。이와반대로,Levenberg-Marquardt방법에서는각반복시완전랭크를가지므로이런문제를피할수있습니다。
다음그림은어렵기로악명높은최소제곱형식의최소화문제인로젠브록함수를최소화할때Levenberg-Marquardt방법의반복을보여줍니다。
로젠브록함수에대해실행된Levenberg-Marquardt방법
반복점을생성하는스크립트를포함하여위그림에대한더자세한설명을보려면바나나함수최소화항목을참조하십시오。
Levenberg-Marquardt방법의범위제약조건
문제에범위제약조건이포함되어있을경우lsqcurvefit과lsqnonlin은Levenberg-Marquardt반복을수정합니다。x가제안된반복점범위밖에있는경우,이알고리즘은가장가까운실현가능점으로스텝을투영합니다。즉,p가실현불가능점을실현가능역으로하는투영연산자로정의되어있을때,이알고리즘은제된점x를P(x)로수정합니다。다음정의에따라P x<年代乌兰巴托>我에대해독립적으로동작합니다。
또는다음과같이할수도있습니다。
이알고리즘은1차최적성측정값에대한중지기준을수정합니다。X를제된반복점이라고가정하겠습니다。제약조건이없는경우중지기준은다음과같습니다。
(14)
여기서tol은최적성허용오차값으로,1 * FunctionTolerance的军医입니다。유계문제marketing경우,중지기준은다음과같습니다。
(15)
이기준을이해하려면먼저x가실현가능한영역내부에있는경우연산P자가아무런효과도없다는점에주의하십시오。따라서중지기준은다음과같이됩니다。
이는제약조건이없는원래중지기준<年代pan class="inlineequation">
과같습니다。경계제약조건이활성상태여서<年代pan class="inlineequation">X -∇f(X)가실현가능하지않은경우,알고리즘이중지해야하는점에서그경계에있는점의기울기는경계에수직입니다。따라서다음그림에` ` `시된것처럼` `점x ` `는최속강하법스텝의` ` ` ` `<年代pan class="inlineequation">P(x -∇f(x))와같습니다。
Levenberg-Marquardt중지조건
참고 항목
quadprog
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqlin
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqcurvefit
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqnonlin
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqnonneg
관련 항목
최소제곱정의
일반적으로최소제곱은제곱합인함수의국소최소점인벡터x를구하는문제이며,일부제약조건이적용될수있습니다。
이때<年代pan class="inlineequation">A·x≤b, Aeq·x = beq, lb≤x≤ub조건을충족해야합니다。
다양한유형의F (x)와다양한유형의제약조건에대해여러优化工具箱™솔버를사용할수있습니다。
솔버
F (x)
제약 조건
mldivide
C·x - d
없음
lsqnonneg
C·x - d
X≥0
lsqlin
C·x - d
범위,선형
lsqnonlin
일반F(x)
범위
lsqcurvefit
F(x, xdata) - ydata
범위
优化工具箱솔버에는mldivide에서사용되는알고리즘외에다음과같은다섯가지최소제곱알고리즘이있습니다。
lsqlinActive-set를제외한모든알고리즘은대규모알고리즘입니다。대규모알고리즘과중간규모알고리즘비교항목을참조하십시오。비선형최소제곱방법에대한일반적설문조사는데니스(丹尼斯)의문헌[8]을참조하십시오。Levenberg-Marquardt방법에대한구체적인세부사항은모레(更多)의문헌[28]에서확할수있습니다。
일반적으로최소제곱은제곱합인함수의국소최소점인벡터x를구하는문제이며,일부제약조건이적용될수있습니다。
이때<年代pan class="inlineequation">A·x≤b, Aeq·x = beq, lb≤x≤ub 다양한유형의F (x)와다양한유형의제약조건에대해여러优化工具箱™솔버를사용할수있습니다。 优化工具箱솔버에는
솔버 F (x) 제약 조건
mldivide
C·x - d
없음
lsqnonneg
C·x - d
X≥0
lsqlin
C·x - d
범위,선형
lsqnonlin
일반F(x) 범위
lsqcurvefit
F(x, xdata) - ydata 범위 mldivide
lsqlin
선형최소제곱:internal - point또는Active-Set
lsqlin“内点”알고리즘은Quadprog의内点凸알고리즘을사용하고,lsqlin“激活集”알고리즘은active-setquadprog알고리즘을사용합니다。quadprog문제정의는다음과같이2차함수를최소화하는것입니다。
여기에는선형제약조건과범위제약조건이적용됩니다。lsqlin함수는벡터Cx - d에대한2 -노름의제곱값을최소화하며,여기에는선형제약조건과범위제약조건이적용됩니다。다시말해서,lsqlin은다음을최소화합니다。
이는h행렬을2c .<年代up>TC로설정하고C벡터를<年代pan class="inlineequation">(2 c<年代up>Td)로설정하면quadprog프레임워크에잘맞습니다。부가항d<年代up>TD는최솟값의위치에아무런향도미치지않습니다。이렇게lsqlin문제를다시정식화한후,quadprog는해를계산합니다。
참고
quadprog의“interior-point-convex”알고리즘에는두개의코드경로가있습니다。가하나는헤세행렬H双형으로구성된일반(비희소)행렬인경우실행하고,다른하나가는H희소행렬인경우실행합니다。희소데이터형에대한자세한내용은희소 행렬항목을참조하십시오。일반적으로,이알고리즘은h를稀疏的로지정하는경우0이아닌항이상대적으로적은큰문제에서더빠릅니다。이와유사하게,이알고리즘은h를完整的로지정하는경우상대적으로조밀한문제또는작은문제에서더빠릅니다。
여기에는선형제약조건과범위제약조건이적용됩니다。
이는h행렬을2c .<年代up>T 참고lsqlin
“内点”
“激活集”
quadprog
稀疏的
完整的
信任区域反射최소제곱
信任区域反射최소제곱알고리즘
优化工具箱솔버에사용되는대부분의방법이최적화의단순하지만강력한개념인<年代pan class="emphasis">신뢰역을기반으로합니다。
최적화에대한信赖域접근법을이해하기위해제약조건이없는최소화문제를살펴보고,f (x)를최소화해보겠습니다。여기서함수는벡터수를받고스칼라를반환합니다。n공간에서점x에있고향상,즉더낮은함수값을가지는점으로이동하기를원한다고가정해보겠습니다。기본적인발상은점x주위에있는이웃N에서함f의수동작을잘반영하는더간단한함q수를사용하여f를근사하는것입니다。이이웃을신뢰역이라고합니다。시행스텝s는N에대한최소화(또는근사최소화)를수행하여계산됩니다。이를trust-region하위문제라고하며,다음과같습니다。
(1)
현재 점은<年代pan class="inlineequation">F (x + s) < F (x)경우x + s가되도록업데이트됩니다。그렇지않은경우현재점은변경되지않고그대로유지되며신뢰영역N은축소되고시행스텝계산이반복됩니다。
f (x)를최소화하기위한특정信赖域접근법을정의할때고려해야할핵심질문은근삿값q(현재점x에서정의됨)를선택하고계산하는방법은무엇인가,신뢰영역N을선택하고수정하는방법은무엇인가,그리고信赖域하위문제를얼마나정확하게풀수있는가입니다。이섹션에서는제약조건이없는문제를집중적으로설명합니다。뒷부분에나오는섹션에서는변수에대한제약조건이존재함으로인해복잡성이얼마나가중되는지에대해설명합니다。
` ` ` `준trust-region방법([48]2)에서는차근삿값q x가에서F에대한테일러근사의처음두항으로정의되며,이웃N은일반적으로구면또는타원형태입니다。수학적으로trust-region하위문제는대개다음과같이通讯录기됩니다。
(2)
g는여기서현재점x에서f의기울기이고,H는헤세행렬(2계도함수의대칭행렬)이고,D는대각스케일링행렬이고,Δ는양의스칼라이며,∥。∥는2-노름입니다。수식2을푸는데사용할수있는좋은알고리즘이있습니다([48]참조)。이러한알고리즘은일반적으로다음과같은고유방정식에적용되는뉴턴과정및h의모든고유값에대한계산을포함합니다。
이러한알고리즘은수식2에대한정확한해를제공합니다。하지만,이알고리즘을사용하려면H에대한여러행렬분해에비례하는시간이필요합니다。따라서,trust-region문제에대해서는다른접근법이필합니다。수식2기반한여러근사법과발견법전략이참고문헌([42]및[50])에서제되었습니다。优化工具箱솔버에서따르는근사접근법은信赖域하위문제를2차원부분공간([39]및[42])로제한하는것입니다。부분공간s가계산되고나면수식2를푸는방법은간단합니다。비희소고유값/고유벡터정보가필한경우에도마찬가지입니다。그이유는부분공간에서는문제가2차원뿐이기때문입니다。이제수행해야하는주된작업은부분공간을결정하는것입니다。
2차원부분공간s는아래에설명되어있는선조건적용켤레기울기법과정을통해결정됩니다。솔버는S를S<年代乌兰巴托>1및年代<年代乌兰巴托>2에의해생성되는선형공간으로정의합니다。여기서s<年代乌兰巴托>1은기울기g의방향이고s<年代乌兰巴托>2는 근사뉴턴방향,즉다음수식에대한해를말합니다。
(3)
또는다음과같은음의곡률의방향입니다。
(4)
이러한年代선택의바탕이되는철학은(최속강하법방향또는음의곡률방향을통해)전역수렴을강제적용하고(존재하는경우뉴턴스텝을통해)신속하게국소수렴을달성한다는것입니다。
信赖域알고리즘을사용한제약조건이없는최소화과정은이제다음과같이간단하게요약할수있습니다。
2차원trust-region하위문제를정식화합니다。
F (x + s) < F (x)이면<年代pan class="inlineequation">X = X + s입니다。
Δ를조정합니다。
이네단계는수렴할때까지반복됩니다。Trust-region차원Δ는通讯录준규칙에따라조정됩니다。특히,시행스텝이받아들여지지않은경우,즉<年代pan class="inlineequation">F (x + s)≥F (x)ric경우에는trust-region차원이축소됩니다。이사항에대한자세한내용은[46]항목과[49]항목을참조하십시오。
优化工具箱솔버는비선형최소제곱,2차함수,선형최소제곱등의특화된함수를사용하여f에대한몇가지중요한특수사례를처리합니다。하지만,기반이되는알고리즘적발상은일반적marketing사례와동일합니다。이러한특수사례에대해서는뒷부분에나오는섹션에서설명합니다。
대규모비선형최소제곱
F (x)의중한특수사례는다음과같은비선형최소제곱문제입니다。
(5)
여기서F(x)는F(x)의성분i가F<年代乌兰巴托>我(x)와동일한벡터값함수입니다。이문제를푸는데사용되는기본방법은비선형최소화를위한信任区域방법에설명되어있는일반적사례와동일합니다。그러나,효율성을높이기위해비선형최소제곱문제의구조가이용됩니다。특히,근사가우스-뉴턴방향,즉다음에대한해s가
(6)
(여기J는F (x)의서야코비행렬임)2차원부분공간年代를정의하는데도움이되도록사용됩니다。성분함수f<年代乌兰巴托>我(x)의2계도함수는사용되지않습니다。
각반복마다선조건적용켤레기울기방법이정규방정식,즉다음에대한근사해를구하기위해사용됩니다。
정규방정식이명시적으로구성되지않은경우에도마찬가지입니다。
대규모선형최소제곱
이사례에서풀려는함수f(x)는다음과같습니다。
여기에는선형제약조건이적용될수있습니다。이알고리즘은제한내에서국소해로수렴하는엄밀히실현가능한반복을생성합니다。각반복에는대규모선형시스템(차수가n,여기서n은x의길이)의근사해가포함됩니다。반복행렬은행렬c의구조를갖습니다。특히,선조건적용켤레기울기법은정규방정식,즉다음에대한근사해를구하기위해사용됩니다。
정규방정식이명시적으로구성되지않은경우에도마찬가지입니다。
부분공간trust-region방법은탐색방향을결정하는데사용됩니다。하지만,비선형최소화사례에서처럼스텝을(가능한)하나의반사스텝으로제한하는대신차2문제의사례에서와마찬가지로각반복마다조각별반사직선탐색이수행됩니다。직선탐색에대한자세한내용은[45]항목을참조하십시오。궁극적으로,선형시스템은해에서의1차최적성조건을포착하는뉴턴접근법을나타내며,그결과강한국소수렴속도가실현됩니다。
야코비행렬의곱셈함수。lsqlin
은행렬C를명시적으로사용하지않고선형제약조건이있는최소제곱문제를풀수있습니다。대신,다음과같이야코비행렬의곱셈함수jmfun을사용합니다。
W = jmfun(Jinfo,Y,flag)
이함수는사용자가직접제공합니다。이함수는행렬y에대해다음곱을계산해야합니다。
标志== 0이면W = c '*(c * y)입니다。
标志> 0이면W = c * y입니다。
标志< 0이면W = c '* y입니다。
이는c가크지만그구조가c를명시적으로구성하지않고jmfun을작성하는것으로충분한경우에유용할수있습니다。예제는线性最小二乘雅可比乘法函数항목을참조하십시오。
信任区域反射최소제곱알고리즘
优化工具箱솔버에사용되는대부분의방법이최적화의단순하지만강력한개념인<年代pan class="emphasis">신뢰역을기반으로합니다。
최적화에대한信赖域접근법을이해하기위해제약조건이없는최소화문제를살펴보고,f (x)를최소화해보겠습니다。여기서함수는벡터수를받고스칼라를반환합니다。n공간에서점x에있고향상,즉더낮은함수값을가지는점으로이동하기를원한다고가정해보겠습니다。기본적인발상은점x주위에있는이웃N에서함f의수동작을잘반영하는더간단한함q수를사용하여f를근사하는것입니다。이이웃을신뢰역이라고합니다。시행스텝s는N에대한최소화(또는근사최소화)를수행하여계산됩니다。이를trust-region하위문제라고하며,다음과같습니다。
(1)
현재 점은<年代pan class="inlineequation">F (x + s) < F (x)경우x + s가되도록업데이트됩니다。그렇지않은경우현재점은변경되지않고그대로유지되며신뢰영역N은축소되고시행스텝계산이반복됩니다。
f (x)를최소화하기위한특정信赖域접근법을정의할때고려해야할핵심질문은근삿값q(현재점x에서정의됨)를선택하고계산하는방법은무엇인가,신뢰영역N을선택하고수정하는방법은무엇인가,그리고信赖域하위문제를얼마나정확하게풀수있는가입니다。이섹션에서는제약조건이없는문제를집중적으로설명합니다。뒷부분에나오는섹션에서는변수에대한제약조건이존재함으로인해복잡성이얼마나가중되는지에대해설명합니다。
` ` ` `준trust-region방법([48]2)에서는차근삿값q x가에서F에대한테일러근사의처음두항으로정의되며,이웃N은일반적으로구면또는타원형태입니다。수학적으로trust-region하위문제는대개다음과같이通讯录기됩니다。
(2)
g는여기서현재점x에서f의기울기이고,H는헤세행렬(2계도함수의대칭행렬)이고,D는대각스케일링행렬이고,Δ는양의스칼라이며,∥。∥는2-노름입니다。수식2을푸는데사용할수있는좋은알고리즘이있습니다([48]참조)。이러한알고리즘은일반적으로다음과같은고유방정식에적용되는뉴턴과정및h의모든고유값에대한계산을포함합니다。
이러한알고리즘은수식2에대한정확한해를제공합니다。하지만,이알고리즘을사용하려면H에대한여러행렬분해에비례하는시간이필요합니다。따라서,trust-region문제에대해서는다른접근법이필합니다。수식2기반한여러근사법과발견법전략이참고문헌([42]및[50])에서제되었습니다。优化工具箱솔버에서따르는근사접근법은信赖域하위문제를2차원부분공간([39]및[42])로제한하는것입니다。부분공간s가계산되고나면수식2를푸는방법은간단합니다。비희소고유값/고유벡터정보가필한경우에도마찬가지입니다。그이유는부분공간에서는문제가2차원뿐이기때문입니다。이제수행해야하는주된작업은부분공간을결정하는것입니다。
2차원부분공간s는아래에설명되어있는선조건적용켤레기울기법과정을통해결정됩니다。솔버는S를S<年代乌兰巴托>1및年代<年代乌兰巴托>2에의해생성되는선형공간으로정의합니다。여기서s<年代乌兰巴托>1은기울기g의방향이고s<年代乌兰巴托>2는 근사뉴턴방향,즉다음수식에대한해를말합니다。
(3)
또는다음과같은음의곡률의방향입니다。
(4)
이러한年代선택의바탕이되는철학은(최속강하법방향또는음의곡률방향을통해)전역수렴을강제적용하고(존재하는경우뉴턴스텝을통해)신속하게국소수렴을달성한다는것입니다。
信赖域알고리즘을사용한제약조건이없는최소화과정은이제다음과같이간단하게요약할수있습니다。
2차원trust-region하위문제를정식화합니다。
F (x + s) < F (x)이면<年代pan class="inlineequation">X = X + s입니다。
Δ를조정합니다。
이네단계는수렴할때까지반복됩니다。Trust-region차원Δ는通讯录준규칙에따라조정됩니다。특히,시행스텝이받아들여지지않은경우,즉<年代pan class="inlineequation">F (x + s)≥F (x)ric경우에는trust-region차원이축소됩니다。이사항에대한자세한내용은[46]항목과[49]항목을참조하십시오。
优化工具箱솔버는비선형최소제곱,2차함수,선형최소제곱등의특화된함수를사용하여f에대한몇가지중요한특수사례를처리합니다。하지만,기반이되는알고리즘적발상은일반적marketing사례와동일합니다。이러한특수사례에대해서는뒷부분에나오는섹션에서설명합니다。
优化工具箱솔버에사용되는대부분의방법이최적화의단순하지만강력한개념인<年代pan class="emphasis">신뢰역 최적화에대한信赖域접근법을이해하기위해제약조건이없는최소화문제를살펴보고,f (x)를최소화해보겠습니다。여기서함수는벡터수를받고스칼라를반환합니다。n공간에서점x에있고향상,즉더낮은함수값을가지는점으로이동하기를원한다고가정해보겠습니다。기본적인발상은점x주위에있는이웃N에서함f의수동작을잘반영하는더간단한함q수를사용하여f를근사하는것입니다。이이웃을신뢰역이라고합니다。시행스텝s는N에대한최소화(또는근사최소화)를수행하여계산됩니다。이를trust-region하위문제라고하며,다음과같습니다。 현재 점은<年代pan class="inlineequation">F (x + s) < F (x) f (x)를최소화하기위한특정信赖域접근법을정의할때고려해야할핵심질문은근삿값q(현재점x에서정의됨)를선택하고계산하는방법은무엇인가,신뢰영역N을선택하고수정하는방법은무엇인가,그리고信赖域하위문제를얼마나정확하게풀수있는가입니다。이섹션에서는제약조건이없는문제를집중적으로설명합니다。뒷부분에나오는섹션에서는변수에대한제약조건이존재함으로인해복잡성이얼마나가중되는지에대해설명합니다。 ` ` ` `준trust-region방법( g는여기서현재점x에서f의기울기이고,H는헤세행렬(2계도함수의대칭행렬)이고,D는대각스케일링행렬이고,Δ는양의스칼라이며,∥。∥는2-노름입니다。
이러한알고리즘은 2차원부분공간s는아래에설명되어있는 또는다음과같은 이러한年代선택의바탕이되는철학은(최속강하법방향또는음의곡률방향을통해)전역수렴을강제적용하고(존재하는경우뉴턴스텝을통해)신속하게국소수렴을달성한다는것입니다。 信赖域알고리즘을사용한제약조건이없는최소화과정은이제다음과같이간단하게요약할수있습니다。 2차원trust-region하위문제를정식화합니다。 F (x + s) < F (x) Δ를조정합니다。 이네단계는수렴할때까지반복됩니다。Trust-region차원Δ는通讯录준규칙에따라조정됩니다。특히,시행스텝이받아들여지지않은경우,즉<年代pan class="inlineequation">F (x + s)≥F (x) 优化工具箱솔버는비선형최소제곱,2차함수,선형최소제곱등의특화된함수를사용하여f에대한몇가지중요한특수사례를처리합니다。하지만,기반이되는알고리즘적발상은일반적marketing사례와동일합니다。이러한특수사례에대해서는뒷부분에나오는섹션에서설명합니다。
(1)
(2)
(3)
(4)
대규모비선형최소제곱
F (x)의중한특수사례는다음과같은비선형최소제곱문제입니다。
(5)
여기서F(x)는F(x)의성분i가F<年代乌兰巴托>我(x)와동일한벡터값함수입니다。이문제를푸는데사용되는기본방법은비선형최소화를위한信任区域방법에설명되어있는일반적사례와동일합니다。그러나,효율성을높이기위해비선형최소제곱문제의구조가이용됩니다。특히,근사가우스-뉴턴방향,즉다음에대한해s가
(6)
(여기J는F (x)의서야코비행렬임)2차원부분공간年代를정의하는데도움이되도록사용됩니다。성분함수f<年代乌兰巴托>我(x)의2계도함수는사용되지않습니다。
각반복마다선조건적용켤레기울기방법이정규방정식,즉다음에대한근사해를구하기위해사용됩니다。
정규방정식이명시적으로구성되지않은경우에도마찬가지입니다。
F (x)의중한특수사례는다음과같은비선형최소제곱문제입니다。 여기서F(x)는F(x)의성분i가F<年代乌兰巴托>我 (여기J는F (x)의서야코비행렬임)2차원부분공간年代를정의하는데도움이되도록사용됩니다。성분함수f<年代乌兰巴托>我 각반복마다선조건적용켤레기울기방법이정규방정식,즉다음에대한근사해를구하기위해사용됩니다。
정규방정식이명시적으로구성되지않은경우에도마찬가지입니다。
(5)
(6)
대규모선형최소제곱
이사례에서풀려는함수f(x)는다음과같습니다。
여기에는선형제약조건이적용될수있습니다。이알고리즘은제한내에서국소해로수렴하는엄밀히실현가능한반복을생성합니다。각반복에는대규모선형시스템(차수가n,여기서n은x의길이)의근사해가포함됩니다。반복행렬은행렬c의구조를갖습니다。특히,선조건적용켤레기울기법은정규방정식,즉다음에대한근사해를구하기위해사용됩니다。
정규방정식이명시적으로구성되지않은경우에도마찬가지입니다。
부분공간trust-region방법은탐색방향을결정하는데사용됩니다。하지만,비선형최소화사례에서처럼스텝을(가능한)하나의반사스텝으로제한하는대신차2문제의사례에서와마찬가지로각반복마다조각별반사직선탐색이수행됩니다。직선탐색에대한자세한내용은[45]항목을참조하십시오。궁극적으로,선형시스템은해에서의1차최적성조건을포착하는뉴턴접근법을나타내며,그결과강한국소수렴속도가실현됩니다。
야코비행렬의곱셈함수。lsqlin
은행렬C를명시적으로사용하지않고선형제약조건이있는최소제곱문제를풀수있습니다。대신,다음과같이야코비행렬의곱셈함수jmfun을사용합니다。
W = jmfun(Jinfo,Y,flag)
이함수는사용자가직접제공합니다。이함수는행렬y에대해다음곱을계산해야합니다。
标志== 0이면W = c '*(c * y)입니다。
标志> 0이면W = c * y입니다。
标志< 0이면W = c '* y입니다。
이는c가크지만그구조가c를명시적으로구성하지않고jmfun을작성하는것으로충분한경우에유용할수있습니다。예제는线性最小二乘雅可比乘法函数항목을참조하십시오。
이사례에서풀려는함수f(x)는다음과같습니다。
여기에는선형제약조건이적용될수있습니다。이알고리즘은제한내에서국소해로수렴하는엄밀히실현가능한반복을생성합니다。각반복에는대규모선형시스템(차수가n,여기서n은x의길이)의근사해가포함됩니다。반복행렬은행렬c의구조를갖습니다。특히,선조건적용켤레기울기법은정규방정식,즉다음에대한근사해를구하기위해사용됩니다。
정규방정식이명시적으로구성되지않은경우에도마찬가지입니다。 부분공간trust-region방법은탐색방향을결정하는데사용됩니다。하지만,비선형최소화사례에서처럼스텝을(가능한)하나의반사스텝으로제한하는대신차2문제의사례에서와마찬가지로각반복마다조각별반사직선탐색이수행됩니다。직선탐색에대한자세한내용은 야코비행렬의곱셈함수。 이함수는사용자가직접제공합니다。이함수는행렬y에대해다음곱을계산해야합니다。 이는c가크지만그구조가c를명시적으로구성하지않고lsqlin
은행렬C를명시적으로사용하지않고선형제약조건이있는최소제곱문제를풀수있습니다。대신,다음과같이야코비행렬의곱셈함수W = jmfun(Jinfo,Y,flag)
标志== 0
标志> 0
标志< 0
Levenberg-Marquardt방법
최소제곱문제는제곱합함수f(x)를최소화합니다。
(7)
이유형의문제는다수의실제응용사례에서나타나며,특히비선형파라미터추정과같이모델함수를데이터에피팅하는응용사례에서나타납니다。이문제유형은목적함수가벡x와터스칼라t에대한연속모델궤적φ(t)를따르는출력값y (x, t)를구하는함수인경우제어시스템에도나타납니다。이문제는다음으로@ @현할수있습니다。
(8)
여기서y(x,t)와φ(t)는스칼라함수입니다。
다음과같이적분을이산화하여근삿값을구합니다。
(9)
여기서t<年代乌兰巴托>我는간격이균일합니다。이문제에서벡터F(x)는다음과같습니다。
이러한유형의문제에서는현실적으로실현가능한목표궤적을설정하는것이보통이므로잔차<年代pan class="inlineequation">∥∥F (x)는최적해에서작은값이될가능성이큽니다。제약조건이없는최적화관련기본사항의설명에나와있듯이,수식7의함수는제약조건이없는일반적인최소화기법을사용하여최소화할수있지만문제의특정한특성은풀이절차의반복효율성을향상시키는데종종이용될수있습니다。수식7의기울기와헤세행렬은특수한구조를가집니다。
F (x)의m×n야코비행렬을J (x)로나타내고,F (x)의기울기벡터를G (x)로나타내고,F (x)의헤세행렬을H (x)로나타내고,각F<年代乌兰巴托>我(x)의헤세행렬을<年代乌兰巴托>我(x)로나타내면다음을얻게됩니다。
(10)
여기서
행렬Q(x)에서x<年代乌兰巴托>k가해에접근함에따라잔차<年代pan class="inlineequation">∥∥F (x)가0에가까워지며Q(x)도0에가까워집니다。따라서<年代pan class="inlineequation">∥∥F (x)가해에서작은값을갖는경우,최적화절차의근간으로가우뉴스——턴방향을사용하는것이효과적입니다。
각각의주반복k에서가우뉴스——턴방법에서는다음과같은선형최소제곱문제의해인탐색방향d<年代乌兰巴托>k가구해집니다。
(11)
이방법에서도출된방향은항<年代pan class="inlineequation">Q(x) = 0일때뉴턴방향과동일합니다。이알고리즘에서는탐색방향d<年代乌兰巴托>k를직선탐색전략의일부로사용하여각반복시함수f (x)가감소하도록할수있습니다。
2차항Q (x)를무시할수없는경우가우뉴스——턴방법에서종종문제가발생할수있습니다。Levenberg-Marquardt방법으로이문제를해결할수있습니다。
Levenberg-Marquardt방법([25]및[27]참조)은다음선형방정식세트의해marketing탐색방향을사용하거나,
(12)
또는,선택적으로다음방정식의해marketing탐색방향을사용합니다。
(13)
여기서스칼라λ<年代乌兰巴托>k는d<年代乌兰巴托>k의크기와방향을모두제어하고,诊断接头(A)는一个의대각항으로구성된행렬을의미합니다。수식12를선택하려면옵션ScaleProblem을“没有”으로설정하고,수식13을선택하려면ScaleProblem을的雅可比矩阵로설정하십시오。
InitDamping옵션을사용하여파라미터λ<年代乌兰巴托>0의초기값을설정할수있습니다。경우에따라,이옵션의디폴트값0.01이적합하지않을수있습니다。Levenberg-Marquardt알고리즘이초기에거의진척이없는것으로확되면InitDamping을디폴트값과는다른값(예:1 e2)으로설정해보십시오。
λ<年代乌兰巴托>k가0이면방향<年代乌兰巴托>k는가우스-뉴턴방법의방향과동일합니다。λ<年代乌兰巴托>k가무한대로가려함에따라d<年代乌兰巴托>k는최속강하법방향을향하려하며,크기는0에가까워지려합니다。따라서충분히큰어떤λ<年代乌兰巴托>k에 대해 항<年代pan class="inlineequation">F (x<年代乌兰巴托>k+ d<年代乌兰巴托>k) < F(x<年代乌兰巴托>k)가성립한다는것을의미합니다。따라서알고리즘에서가우뉴스——턴방법의효율성을제한하는2차항이발생할때도하강을계속하도록항λ<年代乌兰巴托>k를제어할수있습니다。스텝이성공적(낮은함수값을제공함)일경우알고리즘은λ<年代乌兰巴托>k+1=λ<年代乌兰巴托>k/10을설정합니다。스텝이성공적이지않을경우알고리즘은λ<年代乌兰巴托>k+1=λ<年代乌兰巴托>k*10을설정합니다。
내부적으로,Levenberg-Marquardt알고리즘은최적성허용오차(중지기준)1的军医에함수허용오차를곱한값을사용합니다。
따라서Levenberg-Marquardt방법은가우뉴스——턴방향과최속강하법방향을번갈아이용하는탐색방향을사용합니다。
Levenberg-Marquardt방법의또다른이점은야코비행렬J의랭크가부족할때발휘됩니다。이경우에는수식11에서최소화문제의조건이나쁘기때문에가우뉴스——턴방법에수치적문제가있을수있습니다。이와반대로,Levenberg-Marquardt방법에서는각반복시완전랭크를가지므로이런문제를피할수있습니다。
다음그림은어렵기로악명높은최소제곱형식의최소화문제인로젠브록함수를최소화할때Levenberg-Marquardt방법의반복을보여줍니다。
로젠브록함수에대해실행된Levenberg-Marquardt방법
반복점을생성하는스크립트를포함하여위그림에대한더자세한설명을보려면바나나함수최소화항목을참조하십시오。
Levenberg-Marquardt방법의범위제약조건
문제에범위제약조건이포함되어있을경우lsqcurvefit과lsqnonlin은Levenberg-Marquardt반복을수정합니다。x가제안된반복점범위밖에있는경우,이알고리즘은가장가까운실현가능점으로스텝을투영합니다。즉,p가실현불가능점을실현가능역으로하는투영연산자로정의되어있을때,이알고리즘은제된점x를P(x)로수정합니다。다음정의에따라P x<年代乌兰巴托>我에대해독립적으로동작합니다。
또는다음과같이할수도있습니다。
이알고리즘은1차최적성측정값에대한중지기준을수정합니다。X를제된반복점이라고가정하겠습니다。제약조건이없는경우중지기준은다음과같습니다。
(14)
여기서tol은최적성허용오차값으로,1 * FunctionTolerance的军医입니다。유계문제marketing경우,중지기준은다음과같습니다。
(15)
이기준을이해하려면먼저x가실현가능한영역내부에있는경우연산P자가아무런효과도없다는점에주의하십시오。따라서중지기준은다음과같이됩니다。
이는제약조건이없는원래중지기준<年代pan class="inlineequation">
과같습니다。경계제약조건이활성상태여서<年代pan class="inlineequation">X -∇f(X)가실현가능하지않은경우,알고리즘이중지해야하는점에서그경계에있는점의기울기는경계에수직입니다。따라서다음그림에` ` `시된것처럼` `점x ` `는최속강하법스텝의` ` ` ` `<年代pan class="inlineequation">P(x -∇f(x))와같습니다。
Levenberg-Marquardt중지조건
최소제곱문제는제곱합함수f(x)를최소화합니다。 이유형의문제는다수의실제응용사례에서나타나며,특히비선형파라미터추정과같이모델함수를데이터에피팅하는응용사례에서나타납니다。이문제유형은목적함수가벡x와터스칼라t에대한연속모델궤적φ(t)를따르는출력값y (x, t)를구하는함수인경우제어시스템에도나타납니다。이문제는다음으로@ @현할수있습니다。 여기서y(x,t)와φ(t)는스칼라함수입니다。 다음과같이적분을이산화하여근삿값을구합니다。 여기서t<年代乌兰巴托>我
이러한유형의문제에서는현실적으로실현가능한목표궤적을설정하는것이보통이므로잔차<年代pan class="inlineequation">∥∥F (x) F (x)의m×n야코비행렬을J (x)로나타내고,F (x)의기울기벡터를G (x)로나타내고,F (x)의헤세행렬을H (x)로나타내고,각F<年代乌兰巴托>我 여기서
행렬Q(x)에서x<年代乌兰巴托>k 각각의주반복k에서가우뉴스——턴방법에서는다음과같은선형최소제곱문제의해인탐색방향d<年代乌兰巴托>k 이방법에서도출된방향은항<年代pan class="inlineequation">Q(x) = 0 2차항Q (x)를무시할수없는경우가우뉴스——턴방법에서종종문제가발생할수있습니다。Levenberg-Marquardt방법으로이문제를해결할수있습니다。 Levenberg-Marquardt방법( 또는,선택적으로다음방정식의해marketing탐색방향을사용합니다。 여기서스칼라λ<年代乌兰巴托>k λ<年代乌兰巴托>k 내부적으로,Levenberg-Marquardt알고리즘은최적성허용오차(중지기준) 따라서Levenberg-Marquardt방법은가우뉴스——턴방향과최속강하법방향을번갈아이용하는탐색방향을사용합니다。 Levenberg-Marquardt방법의또다른이점은야코비행렬J의랭크가부족할때발휘됩니다。이경우에는 다음그림은어렵기로악명높은최소제곱형식의최소화문제인로젠브록함수를최소화할때Levenberg-Marquardt방법의반복을보여줍니다。 로젠브록함수에대해실행된Levenberg-Marquardt방법 반복점을생성하는스크립트를포함하여위그림에대한더자세한설명을보려면 문제에범위제약조건이포함되어있을경우
또는다음과같이할수도있습니다。
이알고리즘은1차최적성측정값에대한중지기준을수정합니다。X를제된반복점이라고가정하겠습니다。제약조건이없는경우중지기준은다음과같습니다。 여기서tol은최적성허용오차값으로, 이기준을이해하려면먼저x가실현가능한영역내부에있는경우연산P자가아무런효과도없다는점에주의하십시오。따라서중지기준은다음과같이됩니다。
이는제약조건이없는원래중지기준<年代pan class="inlineequation">
과같습니다。경계제약조건이활성상태여서<年代pan class="inlineequation">X -∇f(X) Levenberg-Marquardt중지조건
(7)
(8)
(9)
(10)
(11)
(12)
(13)
InitDamping
Levenberg-Marquardt방법의범위제약조건
(14)
(15)
참고 항목
quadprog
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqlin
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqcurvefit
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqnonlin
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqnonneg
관련 항목
quadprog
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqlin
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqcurvefit
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqnonlin
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqnonneg