보다 작은 초기 인구 수를 사용하는 방법 당신은이 질문에 대한 DEoptim
패키지가 필요합니다 다음 help(DEoptim)
R DEoptim() 함수 : Npop
Rosenbrock <- function(x){
x1 <- x[1]
x2 <- x[2]
100 * (x2 - x1 * x1)^2 + (1 - x1)^2
}
lower <- c(-10,-10)
upper <- -lower
## run DEoptim and set a seed first for replicability
set.seed(1234)
DEoptim(Rosenbrock, lower, upper)
에서
install.packages("DEoptim")
library(DEoptim)
이제이 잘 작동 : 그러나 초기 인구를 제공하는 경우 Npop
을 dim(Npop)[1] < 10*length(lower)
xini <- cbind(runif(10),runif(10))
ran <- abs(lower - upper)
Npop <- apply(xini,2,function(x) x*ran+lower)
DEoptim(Rosenbrock, lower, upper,DEoptim.control(initialpop = Npop))
나는 다음과 같은 오류가 발생합니다 :
Error in DEoptim(Rosenbrock, lower, upper, DEoptim.control(initialpop = Npop)) :
Initial population is not a matrix with dim. NP x length(upper).
내가 어떻게 할 수 있습니까? R DEoptim() function: How to select parameters to be opimised?
예 :이 질문에 대한 관련
1 개 매개 변수를 추정하지 않고 내가 여기 DEoptim.control(initialpop)