PswarmEpochsSequential function

Intern function, do not use yourself

Intern function, do not use yourself

Finds the weak Nash equilibirium of the data bots for one epoch depending on a radius, which requires the setting of constants, grid, and so on in, see Pswarm.

PswarmEpochsSequential(AllDataBotsPos, MyDistanceMatrix, IndPossibleDBPosR, AllFreePosR0, NumAllDB, Lines, Columns, Origin, Happiness, GridRadii, GridAngle, QuadOrHexa, RadiusVector, Rmin, Rmax, Cls, Debug, pp, PlotIt = FALSE, Verbose = 1)

Arguments

  • AllDataBotsPos: Complex vector [1:n] of the current positions for the databots on a 2d and real plane in complex numbers.
  • MyDistanceMatrix: Numeric vector with vectorized distance matrix of the datapoints in the original (high-dimensional) data space
  • IndPossibleDBPosR: Numeric vector containing the possible positions around a databot dependent on the radius.
  • AllFreePosR0: NumericMatrix, see AllallowedDBPosR0 in setPolarGrid.
  • NumAllDB: Integer total number of databots
  • Lines: Integer stating the number of Lines the polar grid consists of.
  • Columns: Integer stating the number of columns the polar grid consists of.
  • Origin: Numeric origin of the positions of grid in two dimensions
  • Happiness: Numeric value indicating the global happiness over all databots
  • GridRadii: Numeric matrix with radius information of polar transformation for each grid position
  • GridAngle: Numeric matrix with angle information of polar transformation for each grid position
  • QuadOrHexa: optional, bool: If TRUE prints status every 100 iterations
  • RadiusVector: Numeric vector stating all moving radius in a descending order (cooling down scheme).
  • Rmin: Integer stating minimum radius.
  • Rmax: Integer stating maximum radius.
  • Cls: Integer vector stating the classification vector for each datapoints/databots.
  • Debug: optional, bool: If TRUE prints information for debugging.
  • pp: Numeric vector stating ratio of number of jumping simultaneously DataBots of one eppoch (per nash-equilibirum), this vector is linearly monotonically decreasing.
  • PlotIt: optional, bool: If TRUE creates plot of projection after each epoch.
  • Verbose: optional, integer stating degree of textual feedback. 0 = no output, 1 = basic notifications, 2 = progress bar, 3 = details.

Returns

list of - AllDataBotsPosRe: Numeric vector [1:n] of the current positions for the databots on first of two dimensions.

  • AllDataBotsPosIm: Numeric vector [1:n] of the current positions for the databots on second of two dimensions.

  • CourseOfHappiness: NumericVector, states the global happiness value per epoch.

  • RadiusPerEpoch: NumericVector, stating the radius used per epoch in order of computation.

Details

Algorithm is described in [Thrun, 2018, p. 95, Listing 8.1].

References

[Thrun, 2018] Thrun, M. C.: Projection Based Clustering through Self-Organization and Swarm Intelligence, doctoral dissertation 2017, Springer, Heidelberg, ISBN: 978-3-658-20539-3, tools:::Rd_expr_doi("10.1007/978-3-658-20540-9") , 2018.

Author(s)

Quirin Stier

  • Maintainer: Michael Thrun
  • License: GPL-3
  • Last published: 2024-06-20