Given a dataset and the desired Markovian order, this function returns a DBN structure ready to be fitted. It requires a folded dataset. Original algorithm at https://doi.org/10.1109/BRC.2014.6880957
psoho(
dt,
size,
f_dt = NULL,
n_inds = 50,
n_it = 50,
in_cte = 1,
gb_cte = 0.5,
lb_cte = 0.5,
v_probs = c(10, 65, 25),
r_probs = c(-0.5, 1.5),
score = "bge",
cte = TRUE
)
A 'dbn' object with the structure of the best network found
a data.table with the data of the network to be trained
Number of timeslices of the DBN. Markovian order 1 equals size 2, and so on.
previously folded dataset, in case some specific rows have to be removed after the folding
Number of particles used in the algorithm.
Maximum number of iterations that the algorithm can perform.
parameter that varies the effect of the inertia
parameter that varies the effect of the global best
parameter that varies the effect of the local best
vector that defines the random velocity initialization probabilities
vector that defines the range of random variation of gb_cte and lb_cte
bnlearn score function used
a boolean that determines whether the inertia, global best and local best parameters remain constant or vary as the algorithm progresses. Inertia and local best values decrease as the global best increases, to favor exploration at first and exploitation at the end.