Header image
line decor
  
line decor
 
 

 
 
Imperialist Competitve Algorithm (ICA)

A Brief Description

Evolutionary optimization methods, inspired from natural processes, have shown good performance in solving complex optimization problems. For example, genetic algorithms (inspired from biological evolution of human and other species), ant colony optimization (based on ants effort to find optimal path to the food source) and simulated annealing (based on real annealing process in which a substance is heated over its melting point and then cooled to reach to a crystalline lattice) are widely used to solve engineering optimization problems.  

The proposed evolutionary optimization algorithms are generally inspired by modeling the natural processes and other aspects of species evolution, especially human evolution, are not considered. The method, proposed in this work, uses socio-political evolution of human as a source of inspiration for developing a powerful optimization strategy. Especially, this algorithm considers the imperialism as a level of human’s social evolution and by mathematically modeling this complicated political and historical process, harnesses it as tool for evolutionary optimization. Since its recent inception this novel method has been widely adopted by researchers to solve different optimization tasks. This method is used to design optimal layout for factories, adaptive antenna arrays, intelligent recommender systems, optimal controller for industrial and chemical possesses.  

Imperialist Competitive Algorithm (ICA) is a novel global search heuristic that uses imperialism and imperialistic competition process as a source of inspiration. We have developed this algorithm at Control and Intelligent Processing Center of Excellence, ECE School of University of Tehran.  Since its inception, this algorithm is used to solve many optimization tasks. Some projects including master thesis at University of Tehran, Tabriz University and Ferdowsi University of Mashhad in Iran and Universidad de Alcalá in Spain and AMICO industrial group use this algorithm to solve their optimization problems.

Read my interview with ISNA reporter (in Farsi) about Colonial Competitive Algorithm.

Fig. 1 Shows a big picture of the proposed algorithm.

Fig. 1. the big picture of the proposed algorithm.

Fig. 2 shows the pseudo code for this algorithm. This algorithm starts with some initial countries. Some of the best countries are selected to be the imperialist states and all the other countries form the colonies of these imperialists. The colonies are divided among the mentioned imperialists based on their power.

  • 1) Select some random points on the function and initialize the empires.
  • 2) Move the colonies toward their relevant imperialist (Assimilating).
  • 3) If there is a colony in an empire which has lower cost than that of imperialist, exchange the positions of that colony and the imperialist.
  • 4) Compute the total cost of all empires (Related to the power of both imperialist and its colonies).
  • 5) Pick the weakest colony (colonies) from the weakest empires and give it (them) to the empire that has the most likelihood to possess it (Imperialistic competition).
  • 6) Eliminate the powerless empires.
  • 7) If there is just one empire, stop, if not go to 2.

Fig. 2. Pseudo code for the proposed algorithm.

After dividing all colonies among imperialists and creating the initial empires, these colonies start moving toward their relevant imperialist state. This movement is a simple model of assimilation policy that was pursued by some  imperialist states. Fig. 3 shows the movement of a colony towards the imperialist. In this movement, θ and x are random numbers with uniform distribution and d is the distance between colony and the imperialist.


Fig. 3.  Motion of colonies toward their relevant imperialist.

The total power of an empire depends on both the power of the imperialist country and the power of its colonies. In this algorithm, this fact is modeled by defining the total power of an empire by the power of imperialist state plus a percentage of the mean power of its colonies.
In imperialistic competition, all empires try to take possession of colonies of other empires and control them. This competition gradually brings about a decrease in the power of weaker empires and an increase in the power of more powerful ones. This competition is modeled by just picking some (usually one) of the weakest colonies of the weakest empires and making a competition among all empires to possess these (this) colonies. Fig. 4 shows a big picture of the modeled imperialistic competition. Based on their total power, in this competition, each of empires will have a likelihood of taking possession of the mentioned colonies. The more powerful an empire, the more likely it will possess these colonies. In other words these colonies will not be certainly possessed by the most powerful empires, but these empires will be more likely to possess them.
Any empire that is not able to succeed in imperialist competition and can not increase its power (or at least prevent decreasing its power) will be eliminated. The imperialistic competition will gradually result in an increase in the power of great empires and a decrease in the power of weaker ones. Weak empires will lose their power gradually and ultimately they will collapse. The movement of colonies toward their relevant imperialists along with competition among empires and also collapse mechanism will hopefully cause all the countries to converge to a state in which there exist just one empire in the world and all the other countries are its colonies. In this ideal new world colonies have the same position and power as the imperialist.


Fig. 4. Imperialistic competition: The more powerful an empire is, the more likely it will possess the weakest colony of weakest empire.

For more information about ICA and its applications please refer to published papers about ICA, some of them available bellow.

Note: Some paper about ICA have referred to it by the name "Colonial Competitive Algorithm (CCA)".

 

Some Related Publication

Books

  • Ramin Rajabioun, Esmaeil Atashpaz-Gargari and Caro Lucas, “Colonial Competitive Algorithm as a Tool for Nash Equilibrium Point Achievement”, Book Chapter, Springer Lecture Notes in Computer Science, Springer, 2008. pp. 680-695. (PDF)

Journal Papers

Published Journal Papers

  • Esmaeil Atashpaz Gargari, Farzad Hashemzadeh, Ramin Rajabioun and Caro Lucas, “Colonial competitive algorithm: A novel approach for PID controller design in MIMO distillation column process”, International Journal of Intelligent Computing and Cybernetics (IJICC),Vol. 1 No. 3, 2008, pp. 337-355, Invited Author. (PDF)
  • Biabangard-Oskouyi, E. Atashpaz-Gargari, N. Soltani, C. Lucas, “Application of Imperialist Competitive Algorithm for Materials Property Characterization from Sharp Indentation Test”, to be appeared in International Journal of Engineering Simulation.  (PDF)
  • Arash Khabbazi, Esmaeil Atashpaz Gargari and Caro Lucas, “Imperialist Competitive Algorithm for Minimum Bit Error Rate Beamforming”, To be appeared in International Journal of Bio-Inspired Computation (IJBIC), Invited Author. (PDF)

Under Revision Journal Papers

  • E. Atashpaz Gargari, Farzad Hashemzadeh, Ramin Rajabiyoun, Farzad Rajaiee Salmasi, “A Decentralized PID controller based on Optimal Shrinkage of Gershgorin Bands and PID tuning Using Colonial Competitive Algorithm”. Under Revision International Journal of Innovative Computing, Information and Control (IJICIC). (PDF)
  • M. Roshanaei, E. Atashpaz-Gargari and C. Locus, “Colonial Competitive Algorithm as an Optimization Tool for Adaptive Beamforming”. Under Revision Engineering Optimization. (PDF)
  • Biabangard-Oskouyi, E. Atashpaz-Gargari, N. Soltani, C. Lucas, “Materials Property Characterization from Spherical Indentation Test using Colonial Competitive Algorithm”, submitted to Actamateria. (PDF)

Conference Papers

  • E. Atashpaz Gargari & Caro Lucas, “Imperialist Competitive Algorithm: An Algorithm for Optimization Inspired by Imperialistic Competition”, IEEE Congress on Evolutionary Computation, Singapore, 2007, pp 4661-4667. (PDF)
  • Ramin Rajabioun, Farzad Hashemzadeh, Esmaeil Atashpaz-Gargari, Bahman Mesgari & Farzad Rajaiee Salmasi, “Identification of a MIMO Evaporator and Its Decentralized PID Controller Tuning Using Colonial Competitive Algorithm”, Proceedings of the 17th World Congress, The International Federation of Automatic Control, Seoul, Korea, July 6-11, 2008, pp. 9952-9957. (PDF)
  • E. Atashpaz Gargari, Farzad Hashemzadeh & Caro Lucas, “Designing MIMO PIID Controller using Colonial Competitive Algorithm: Applied to Distillation Column Process”, Proceeding of IEEE CEC 2008, within IEEE WCCI 2008, Hong Kong, pp. 1929-1934. (PDF)
  • Mahnaz Roshanaei, Esmaeil Atashpaz-Gargari, Caro Lucas, “Adaptive Beamforming Using Colonial Competitive Algorithm”, 2nd International Joint Conference on Computational Engineering, Vancouver, Canada, 2008. (PDF)
  • Ashkan M. Jasour, Esmaeil Atashpaz Gargari, Caro Lucas, “Vehicle Fuzzy Controller Design Using Imperialist Competitive Algorithm”, Second First Iranian Joint Congress on Fuzzy and Intelligent Systems, Tehran, Iran, 2008. (PDF)
  • E. Atashpaz Gargari & Caro Lucas, “Designing an optimal PID controller using Colonial Competitive Algorithm", First Iranian Joint Congress on Fuzzy and Intelligent Systems, Mashhad, Iran, 2007. (PDF)

 

ICA Code in MATLAB

I have prepared a general purpose and easy to use code for this algorithm in MATLAB. You can download it in the link bellow. A "How to use" guide is also available with files.

Imperialist_Competitve_Algorithm_ICA

 

Farsi Tutorial about ICA

A complete description and analysis of ICA is available in the link bellow. This tutorial i a part of my thesis at university of Tehran.

Tutorial About ICA

 

PowerPoit Presentation files about ICA

In the links bellow you might get two of my powerPoint presentations about ICA. The first one is my presentation in IEEE WCCI 2008. The second is for my presentation in the defense session of my thesis.

presentation of ICA in IEEE WCCI 2008, Hong Kong

presentation of ICA in the defense session of my thesis

 

Movies

ICA evolution to the optimal solution of the problem is interesting. It is a fight between countries and empires to possess the entire world. In the bellow link you may find an screen shot of ICA effort to find the optimal solution of a standard cost function. The stars are imperialists and the circles are their colonies.

ICA Evolution Movie