ciren/cilib

Add Set-Based PSO

Closed this issue · 1 comments

Implement the Set-Based PSO (SBPSO) algorithm by Langeveldt and Engelbrecht.

Both the position and velocity of particles consist of sets. What these sets contain is not important as long as they can be identified uniquely, eg. Position can be a set of 3-tuples of a string, an integer and a double. Velocities are defined as a set of pairs where each pair consists of an operation (Either removal or addition) and an element (The same type as the elements of the position set). The search space is defined as the set of all possible elements (The whole universe) and all positions are an element in the power set of the universe. Only the fitness function cares about what the elements represent - The rest of the algorithm only tests for equality of elements to perform operations such as addition and difference.

Support will have to be added to be able to support these data types.

Closing for now - we'll look at it again when needed