glmulti se ejecuta indefinidamente cuando se utiliza un algoritmo genético con lme4

Estoy usando glmulti para el promedio del modelo en R. Hay alrededor de 10 variables en mi modelo, lo que hace que la detección exhaustiva sea poco práctica. Por lo tanto, necesito usar el algoritmo genético (GA) (llamada: método = "g").

Necesito incluir efectos aleatorios, así que estoy usando glmulti como envoltorio para lme4. Los métodos para hacer esto están disponibles aquí.http://www.inside-r.org/packages/cran/glmulti/docs/glmulti y también hay un pdf incluido con el paquete glmulti que incluye más detalles. El problema es que al decirle a glmulti que use GA en esta configuración, se ejecuta de forma indefinida, incluso después de que se haya encontrado el mejor modelo.

Este es el ejemplo tomado del pdf incluido en el paquete glmulti:

library(lme4)
library(glmulti)

# create a function for glmulti to act as a wrapper for lmer:
lmer.glmulti <- function (formula, data, random = "", ...) {
lmer(paste(deparse(formula), random), data = data, REML=F, ...)
}

# set some random variables:
y = runif(30,0,10) # mock dependent variable
a = runif(30) # dummy covariate
b = runif(30) # another dummy covariate
c = runif(30) # an another one
x = as.factor(round(runif(30),1))# dummy grouping factor

# run exhaustive screening with lmer:
bab <- glmulti(y~a*b*c, level = 2, fitfunc = lmer.glmulti, random = "+(1|x)")

Esto funciona bien. El problema es cuando le digo que use el algoritmo genético:

babs <- glmulti(y~a*b*c, level = 2, fitfunc = lmer.glmulti, random = "+(1|x)", method = "g")

Simplemente sigue funcionando indefinidamente y el AIC no cambia:

...

After 19550 generations:
Best model: y~1
Crit= 161.038899734164
Mean crit= 164.13629335762
Change in best IC: 0 / Change in mean IC: 0

After 19560 generations:
Best model: y~1
Crit= 161.038899734164
Mean crit= 164.13629335762
Change in best IC: 0 / Change in mean IC: 0

After 19570 generations:
Best model: y~1
Crit= 161.038899734164
Mean crit= 164.13629335762

... etc.

He intentado usar llamadas que le dicen a glmulti cuándo parar (deltaB = 0, deltaM = 0.01, conseq = 6) pero nada parece funcionar. Creo que el problema debe radicar en configurar la función (?). Puede ser algo realmente obvio, sin embargo, soy nuevo en R y no puedo resolverlo.

Cualquier ayuda con esto sería muy apreciada.

Respuestas a la pregunta(2)

Su respuesta a la pregunta