# Performance Analysis of Partitioned Step Particle Swarm Optimization in Function Evaluation
## 1 Introduction
### Review of Related Algorithms
#### 1.1.3 Harmony Search  
HS was introduced by [PERSON], [PERSON], and [PERSON] [PERSON] et al. (2018). It was inspired by how the music player improvises music to create better harmony. A generation of harmony can be done in three basic steps: (1) playing by memory, (2) playing a variation of the harmony, or (3) composing new harmony. With its simple structure, fast convergence, and a good balance between exploration and exploitation [PERSON] (2018), HS has been widely implemented and combined with other algorithms such as random search [PERSON] et al. (2018), PSO [PERSON] (1975), virus optimization algorithm [PERSON] (2018), etc.  
The format of HS is not quite as similar to the other algorithms, but concepts have some equivalent to other algorithms, such as GA's elitism and mutation and PSO's simplicity. In HS, the harmony is composed of different melodies (solution). The harmony is divided into harmony memory, a variation of the memory, and new melodies through initializing the percentage of each of these components. Better melodies are, then, saved in the harmony memory every iteration [PERSON] (1975). This concept of harmony division is done using a random selector variable that dictates what type of harmony a certain solution is, which is the inspiration for the proposed partitioned step particle swarm optimization (PSPSO).  
From the discussions above, it can be observed that there are four main components in an algorithm: the step, elitism, crossover, and mutation. In GA, each of these four components can easily be distinguished in its algorithm as they are separated. In HS, the step is merged with memory, variation, and composition, representing elitism, crossover, and mutation, respectively, in one equation. In a standard PSO, the representation of each of these components is not too obvious; the velocity computation is the step, within this step is its elitism (_gbest_ and _gbest_) and its limited mutation (the random multiplier on the_pbest_ and _gbest_). The crossover done by PSO is only with its _pbest_ and _gbest_-this means that particles only move toward the particle's best value and the current global best. While this can mean that each particle independently operates, lack of knowledge about other _pbest_ always maintains the velocity of the particle a little towards the _gbest_. This is the main reason why PSO suffers from premature convergence. Therefore, the PSO particles should learn how to communicate with other particles to improve their search capability.  
The PSPSO introduces a fast way of incorporating crossover and mutation without compromising the computational time. Two layers of search are also introduced. The first layer handles the direction of the inertia weight that is responsible for the partial mutation in PSO. The second is through a modified step equation that partitions the crossover of _pbest_ and _gbest_, and _pbest_ and another _pbest_. The proposed algorithm is then compared to different variants of the PSO in terms of the function's characteristics and computational time.  
This paper analyzes the effectivity of PSPSO in solving different benchmark problems as it was not done when it was first introduced by the authors in their paper [13]. This paper provides a better understanding as to how and why it is capable of solving such problems through conducting further tests on the PSPSO. Furthermore, only PSO variants were tested in this paper because we wanted to show its improvement on the PSO algorithm. The paper is organized as follows. Section 1.2 discusses in detail the components of PSO and its known variants found in the literature. Section 2 discusses the PSPSO algorithm and testing methods. Parameter setting results and function evaluation results are discussed in Section 3. Section 4 discusses the possible implications of the use of this algorithm. Lastly, Section 5 discusses the conclusion.