build_gabin_population | R Documentation |
Build an initial population set for genetic algorithms
build_gabin_population(x, ...)
log_gabin_population(x, ...)
x |
a numeric vector coercible into a stats::ts object |
... |
arguments passed to methods |
Genetic algorithms require a method for randomly generating initial
populations (i.e., a first generation).
The default method used by GA::ga()
for changepoint detection is usually
GA::gabin_Population()
, which selects candidate changepoints uniformly at
random with probability 0.5.
This leads to an initial population with excessively large candidate
changepoint sets (on the order of n/2
), which makes the genetic
algorithm slow.
build_gabin_population()
takes a ts
object and runs several fast
changepoint detection algorithms on it, then sets the initial probability
to 3 times the average value of the size of the changepoint sets returned
by those algorithms. This is a conservative guess as to the likely size of
the optimal changepoint set.
log_gabin_population()
takes a ts
object and sets the initial
probability to the natural logarithm of the length of the time series.
A function
that can be passed to the population
argument of
GA::ga()
(through segment_ga()
)
GA::gabin_Population()
, segment_ga()
# Build a function to generate the population
f <- build_gabin_population(CET)
# Segment the time series using the population generation function
segment(CET, method = "ga", population = f, maxiter = 5)
f <- log_gabin_population(CET)
segment(CET, method = "ga", population = f, maxiter = 10)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.