[1][2] Like most of the methods in the area of evolutionary computation, ICA does not need the gradient of the function in its optimization process.
From a specific point of view, ICA can be thought of as the social counterpart of genetic algorithms (GAs).
This algorithm starts by generating a set of candidate random solutions in the search space of the optimization problem.
Revolution brings about sudden random changes in the position of some of the countries in the search space.
[1] Algorithm continues with the mentioned steps (Assimilation, Revolution, Competition) until a stop condition is satisfied.