[問題] optim疑問

作者: bjbjbj123 (查無此人)   2019-04-22 23:15:26
[問題類型]:
R的optim套件在某些時候無法找到極值
舉例: f(x1,x2) = x1^10000+(1-x1)^10000+x2^10000+(1-x2)^10000, 0<x1<1 0<x2<1
這東西直接手算微分很容易
但optim套件會因為f幾乎都趨近於零導致無法迭代
請板上高手大大幫看
謝謝
[軟體熟悉度]:
使用者(已經有用R 做過不少作品)
[問題敘述]:
如問題類型所說
[程式範例]:
f = function(x){
x1 = x[1]
x2 = x[2]
return(x1^10000+(1-x1)^10000+x2^10000+(1-x2)^10000)
}
optim(par = c(0.3,0.3), fn = f)
[環境敘述]:
output 結果如下(事實上手算很容易知道極值為0.5 0.5)
$par
[1] 0.3 0.3
$value
[1] 0
$counts
function gradient
9 NA
$convergence
[1] 0
$message
NULL
作者: TreeMan (好啊...)   2019-04-23 17:25:00
R浮點運算的限制? check ?.Machine in R
作者: bjbjbj123 (查無此人)   2019-04-23 23:11:00
沒錯 我目前的解法是乘上一個常數項強迫讓他不要超過

Links booklink

Contact Us: admin [ a t ] ucptt.com