solver_hdpso: Hamming Distance PSO Solver

Description Usage Arguments Details Value References

View source: R/solver_hdpso.R

Description

Solves a instance of the 3-GCP problem using the Hamming Distance PSO (HDPSO) implementation described in Aoki et al., 2015.

Usage

1
solver_hdpso(G, nfe, args)

Arguments

G

the graph to be solved, represented by a list where G$V is the number of nodes, and G$E is a |E|x2 matrix of edges.

nfe

the number of function evaluations. The solver will stop after this number has been exceeded.

args

a list with arguments for the method. The list must contain the following names:

  • pop: Integer > 0. The size of the solution set X

  • w: Float in [0,1]. Weight for randomly choosing new colors.

  • c1: Float in [0,1]. Weight for choosing a color from Pbest.

  • c2: Float in [0,1]. Weight for choosing a color from Gbest.

Details

The HDPSO algorithm begins with a random set of solutions P. It keeps a set of best solution found at each position of X (P_best), a set of solutions found at the previous iteration (P_prev), and the best solution found so far (g_best).

The algorithm define the similarity between two solutions, x and y, as: similarity(x,y) = 1 - (sum(x != y) / length(x))

At each iteration, it generates a new set of solution based on the current set of solutions. For each solution x_i in P, it performs the following steps:

After the new set of solutions is generated, the current set replaces the previous set, and the new set replaces the current set. The new set is evaluated, and P_best and G_best are updated as necessary.

Value

A list with three names:

References

Takuya Aoki, Claus Aranha, Hitoshi Kanoh, "PSO Algorithm with Transition Probability Based on Hamming Distance for Graph Coloring Problem", IEEE International Conference On Systems, Man and Cybernetics, 2015.


caranha/EvoGCP documentation built on May 3, 2021, 3:40 p.m.