polarcbo.dynamic.PolarCBS

class polarcbo.dynamic.PolarCBS(x, V, beta=1.0, tau=0.1, mode='sampling', kernel=<polarcbo.functional.Gaussian_kernel object>)[source]

Bases: ParticleDynamic

Polarized CBS class

This class implements the polarized CBS algorithm as described in [1].

Parameters:
  • x (array_like) – The initial positions of the particles. The shape of the array should be (num_particles, num_dimensions).

  • V (obejective) – The objective function \(V(x)\) of the system.

  • beta (float, optional) – The heat parameter \(\beta\) of the system. The default is 1.0.

  • tau (float, optional) – The time constant \(\tau\) of the noise model. The default is 0.1.

  • mode (str, optional) – The mode of the algorithm. The default is sampling.

  • kernel (object, optional) – The kernel function \(K(x_i, x_j)\) that is used to compute the mean \(\mathsf{m}(x_i)\). The default is Gaussian_kernel().

References

step(time=0.0)[source]

Perform one step of the algorithm

Parameters:

time (float, optional) – The current time of the algorithm. The default is 0.0.

Return type:

None.

covariance_noise()[source]

Compute the covariance noise

Returns:

noise – The covariance noise.

Return type:

array_like

update_covariance(ind=None)[source]

Update the covariance matrix \(\mathsf{C}(x_i)\) of the noise model

Parameters:

ind (array_like, optional) – The indices of the particles for which the covariance matrix is updated. The default is None.

Return type:

None.

compute_mean(ind=None)[source]

Compute the mean \(\mathsf{m}(x_i)\) of the noise model

Parameters:

ind (array_like, optional) – The indices of the particles for which the mean is computed. The default is None.

Return type:

None.