Global Optimization by Repulsive Particle Swarm method

The Repulsive Particle Swarm method is a variant of the Particle Swarm method invented by Eberhart and Kennedy (1995) (see Wikipedia, Particle Swarm Optimization). It is an instance of successful application of the philosophy of Simon's bounded rationality and decentralized decision-making to solve the global optimization problems (Simon, 1982; Bauer, 2002; Fleischer, 2005). It allows for limited knowledge, memory, habit formation, social learning, etc, not entertained before. In the animal world we observe that a swarm of birds or insects or a school of fish searches for food, protection, etc. in a very typical manner. If one of the members of the swarm sees a desirable path to go, the rest of the swarm will follow quickly. Every member of the swarm searches for the best in its locality - learns from its own experience. Additionally, each member learns from the others, typically from the best performer among them. The Particle Swarm method mimics this behavior (see Wikipedia: Particle Swarm Optimization). Every individual of the swarm is considered as a particle in a multidimensional space that has a position and a velocity. These particles fly through hyperspace and remember the best position that they have seen. Members of a swarm communicate good positions to each other and adjust their own position and velocity based on these good positions. There are two main ways this communication is done: (i) "swarm best" that is known to all (ii) "local bests" are known in neighborhoods of particles. This makes the basis of updating of the position and velocity are done in each iteration (Mishra 2006; 2007).

The traditional RPS, however, gives little scope of local search to the particles. They are guided by their past experience and the communication received from the others in the swarm. We have modified the traditional RPS method by endowing stronger (wider) local search ability to each particle. Each particle flies in its local surrounding and searches for a better solution. The domain of its search is controlled by a new parameter (nstep). This local search has no preference to gradients in any direction and resembles closely to tunneling. This added exploration capability of the particles brings the RPS method closer to what we observe in real life. However, in some cases moderately wide search (nstep=9, say; see program) works better (Mishra, 2009).

The program (source codes) provided here includes numerous test (benchmark) functions. The user may remove or retain them and add a specific subroutione to formulate the problem of interest. The user-written subroutine must be linked to the main program through SUBROUTINE FSELECT(KF,M,FTIT) and SUBROUTINE FUNC(X,M,F). The program may be compiled by a suitable FORTRAN compiler (e.g. Microsoft Fortran Compiler or or FORCE Fortran 77 compiler; note that FORCE Compilers are free downloadable), which, after compilation will yield RPS.EXE.

A typical subroutine is given here. It is also shown how the SUBROUTINE TREFETHEN is joined to SUBROUTINE FSELECT(KF,M,FTIT) and SUBROUTINE FUNC(X,M,F). The main program calls FSELECT and FUNC subroutines (and others, too).

References :
  • Bauer, J.M. (2002) "Harnessing the Swarm: Communication Policy in an Era of Ubiquitous Networks and Disruptive Technologies", Communications and Strategies, 45, 2002.
  • Eberhart R.C. and Kennedy J. (1995) "A New Optimizer using Particle Swarm Theory", Proceedings Sixth Symposium on Micro Machine and Human Science, pp. 39-43. IEEE Service Center, Piscataway, NJ, 1995.
  • Fleischer, M. (2005) "Foundations of Swarm Intelligence: From Principles to Practice", Swarming Network Enabled C4ISR, arXiv:nlin.AO/0502003 v1 2 Feb 2005.
  • Mishra, S.K. (2006) "Performance of Repulsive Particle Swarm Method in Global Optimization of Some Important Test Functions: A Fortran Program" , Social Science Research Network (SSRN), Working Papers Series, , 2006.
  • Mishra, S.K. (2006) "Some New Test Functions for Global Optimization and Performance of Repulsive Particle Swarm Method", Social Science Research Network (SSRN):, Working Papers Series, 2006.
  • Mishra, SK (2009) "Global Optimization by Particle Swarm Method", ICFAI University Journal of Computational Mathematics, II(4), 2009, pp. 7-16.
  • Simon, H.A. (1962) Models of Bounded Rationality, Cambridge Univ. Press, Cambridge, MA, 1982.


Other Fortran Computer Programs



Journal of Alternative Economic Analysis

The Journal focuses on the research contributions to various upcoming approaches to analysis of the functioning of real-world economies in different countries. It welcomes original research articles/papers on agent-based computational, evolutionary, old (new) institutional, behavioral, ecological and environmental economics.

Quarterly Bulletin of the Department

The Department publishes a quarterly bulletin to publicize the research output of high quality emanating from the research work/activities of its faculty members and research scholars.
Current Research Work in the Department

A number of research topics, especially on the economy of the upland areas, are currently being investigated in the Department.
Design downloaded from free website templates.