## Initialization

A pool of nodes is used to limit the search to a beam, rather than traversing the vast space of all possible solutions. We designate the pool at the i-th iteration as $\small&space;S_{i}$.

The nodes are organized in layers, starting from the 0-th layer consisting of the regressor nodes. By $\small&space;N_{i}^{l}(N_{j}^{m},N_{k}^{m})$, we designate the i-th node in the l-th layer, connected to nodes $\small&space;N_{j}^{m}$and $\small&space;N_{k}^{m}$ as inputs. By $\small&space;L_{i}$, we denote the i-th layer, being defined as

$L_{i}=\left\{N_{1}^{i},N_{1}^{i},\cdots,N_{n}^{i}\right\}$

where n is the number of nodes per layer, i.e. the width of the beam.

The algorithm starts with the pool of nodes empty, and the zeroth layer, a layer of regressor nodes, existing outside the pool.

$S_{0}=\varnothing\newline&space;L_{0}=\left&space;\{&space;N_{1}^{0},N_{2}^{0},\cdots&space;,N_{K}^{0}\right&space;\}$

Then it proceeds to the first iteration.