R 2个未知量的GenSA优化
我对R还是比较陌生的,而且还停留在一个优化问题上。我这里有一个相当笼统的问题。我试图最小化一个函数,比如R 2个未知量的GenSA优化,r,optimization,R,Optimization,我对R还是比较陌生的,而且还停留在一个优化问题上。我这里有一个相当笼统的问题。我试图最小化一个函数,比如 函数(a,b){2*a^2+b}, 使用GenSA函数处理两个未知数。每当我试着运行它时,它告诉我它找不到b。现在我想知道,是否有可能使用GenSA来处理2个未知项,或者使用一个不同的函数是否更合适?如果有人有主意那就太好了 顺便说一句,我用于GenSa函数的代码看起来是这样的(也尝试过使用向量,但也不起作用): >库(GenSA) > >极小值 >维度global.min tol >降低
函数(a,b){2*a^2+b},
使用GenSA函数处理两个未知数。每当我试着运行它时,它告诉我它找不到b。现在我想知道,是否有可能使用GenSA来处理2个未知项,或者使用一个不同的函数是否更合适?如果有人有主意那就太好了
顺便说一句,我用于GenSa函数的代码看起来是这样的(也尝试过使用向量,但也不起作用):
>库(GenSA)
>
>极小值
>维度global.min tol
>降低
>上层
>
>out control=list(threshold.stop=global.min+tol,verbose=TRUE))
>
>出[c(“价值”、“票面价值”、“计数”)]
这是一个二维问题,而不是一个三维问题。显然不是很令人兴奋,因为算法很容易找到最优解。当然,对于大多数问题,情况并非如此
> minim<-function(a){2*a[1]^2+a[2]}
> dimension<-2
> global.min <- 0
> tol <- 1e-15
> lower <- rep(0, dimension)
> upper <- rep(30, dimension)
> out <- GenSA(lower = lower, upper = upper, fn = minim,
+ control=list(threshold.stop=global.min+tol,verbose=TRUE))
Initializing par with random data inside bounds
It: 1, obj value: 0
> out[c("value","par","counts")]
$value
[1] 0
$par
[1] 0 0
$counts
[1] 32
>
>minim dimension global.min tol lower upper out[c(“值”、“标准值”、“计数”)]
美元价值
[1] 0
$par
[1] 0 0
美元计数
[1] 32
>
> minim<-function(a){2*a[1]^2+a[2]}
> dimension<-2
> global.min <- 0
> tol <- 1e-15
> lower <- rep(0, dimension)
> upper <- rep(30, dimension)
> out <- GenSA(lower = lower, upper = upper, fn = minim,
+ control=list(threshold.stop=global.min+tol,verbose=TRUE))
Initializing par with random data inside bounds
It: 1, obj value: 0
> out[c("value","par","counts")]
$value
[1] 0
$par
[1] 0 0
$counts
[1] 32
>