Description Usage Arguments Details Value References Examples
View source: R/geneticAlgorithm.R
GAfit
estimates specified GMAR, StMAR, or GStMAR model using a genetic algorithm.
The employed genetic algorithm is designed to find starting values for gradient based methods.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22  GAfit(
data,
p,
M,
model = c("GMAR", "StMAR", "GStMAR"),
restricted = FALSE,
constraints = NULL,
parametrization = c("intercept", "mean"),
conditional = TRUE,
ngen = 200,
popsize,
smart_mu = min(100, ceiling(0.5 * ngen)),
mu_scale,
sigma_scale,
initpop = NULL,
regime_force_scale = 1,
red_criteria = c(0.05, 0.01),
to_return = c("alt_ind", "best_ind"),
minval,
seed = NULL,
...
)

data 
a numeric vector or class 
p 
a positive integer specifying the autoregressive order of the model. 
M 

model 
is "GMAR", "StMAR", or "GStMAR" model considered? In the GStMAR model, the first 
restricted 
a logical argument stating whether the AR coefficients φ_{m,1},...,φ_{m,p} are restricted to be the same for all regimes. 
constraints 
specifies linear constraints imposed to each regime's autoregressive parameters separately.
The symbol φ denotes an AR coefficient. Note that regardless of any constraints, the autoregressive order
is always 
parametrization 
is the model parametrized with the "intercepts" φ_{m,0} or "means" μ_{m} = φ_{m,0}/(1∑φ_{i,m})? 
conditional 
a logical argument specifying whether the conditional or exact loglikelihood function should be used. 
ngen 
a positive integer specifying the number of generations to be ran through in the genetic algorithm. 
popsize 
a positive even integer specifying the population size in the genetic algorithm.
Default is 
smart_mu 
a positive integer specifying the generation after which the random mutations in the genetic algorithm are "smart". This means that mutating individuals will mostly mutate fairly close (or partially close) to the best fitting individual so far. 
mu_scale 
a real valued vector of length two specifying the mean (the first element) and standard deviation (the second element)
of the normal distribution from which the μ_{m} meanparameters are generated in random mutations in the genetic algorithm.
Default is 
sigma_scale 
a positive real number specifying the standard deviation of the (zero mean, positive only by taking absolute value)
normal distribution from which the component variance parameters are generated in the random mutations in the genetic algorithm.
Default is 
initpop 
a list of parameter vectors from which the initial population of the genetic algorithm will be generated from. The parameter vectors should be of form...
Symbol φ denotes an AR coefficient, σ^2 a variance, α a mixing weight, and ν a degrees of
freedom parameter. If 
regime_force_scale 
a nonnegative real number specifying how much should natural selection favor individuals
with less regimes that have almost all mixing weights (practically) at zero (see 
red_criteria 
a length 2 numeric vector specifying the criteria that is used to determine whether a regime is redundant or not.
Any regime 
to_return 
should the genetic algorithm return the best fitting individual which has the least "redundant" regimes ( 
minval 
a real number defining the minimum value of the loglikelihood function that will be considered.
Values smaller than this will be treated as they were 
seed 
a single value, interpreted as an integer, or NULL, that sets seed for the random number generator in the beginning of
the function call. If calling 
... 
We currently use this to catch deprecated arguments. 
The core of the genetic algorithm is mostly based on the description by Dorsey and Mayer (1995). It utilizes a slightly modified version of the individually adaptive crossover and mutation rates described by Patnaik and Srinivas (1994) and employs (50%) fitness inheritance discussed by Smith, Dike and Stegmann (1995). Large (in absolute value) but stationary AR parameter values are generated with the algorithm proposed by Monahan (1984).
By "redundant" or "wasted" regimes we mean regimes that have the time varying mixing weights basically at zero for all t. The model with redundant regimes would have approximately the same loglikelihood value without the redundant regimes and there is no purpose to have redundant regimes in the model.
Returns estimated parameter vector with the form described in initpop
.
Dorsey R. E. and Mayer W. J. 1995. Genetic algorithms for estimation problems with multiple optima, nondifferentiability, and other irregular features. Journal of Business & Economic Statistics, 13, 5366.
Kalliovirta L., Meitz M. and Saikkonen P. 2015. Gaussian Mixture Autoregressive model for univariate time series. Journal of Time Series Analysis, 36, 247266.
Meitz M., Preve D., Saikkonen P. 2021. A mixture autoregressive model based on Student's tdistribution. Communications in Statistics  Theory and Methods, doi: 10.1080/03610926.2021.1916531
Monahan J.F. 1984. A Note on Enforcing Stationarity in AutoregressiveMoving Average Models. Biometrica 71, 403404.
Patnaik L.M. and Srinivas M. 1994. Adaptive Probabilities of Crossover and Mutation in Genetic Algorithms. Transactions on Systems, Man and Cybernetics 24, 656667.
Smith R.E., Dike B.A., Stegmann S.A. 1995. Fitness inheritance in genetic algorithms. Proceedings of the 1995 ACM Symposium on Applied Computing, 345350.
Virolainen S. 2021. A mixture autoregressive model based on Gaussian and Student's tdistributions. Studies in Nonlinear Dynamics & Econometrics, doi: 10.1515/snde20200060
1 2 3 4 5 6  ## These are long running examples
# Preliminary estimation of GMAR p=1, M=2, model with the genetic algorithm
# using only 100 generations (200 is recommended):
pars12_ga < GAfit(data=simudata, p=1, M=2, model="GMAR", ngen=100, seed=1)
pars12_ga # Returns a parameter vector, not a class 'gsmar' object.

Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.