# An Improved Particle Swarm Optimization Algorithm for Data Classification
## 1 Introduction  
Data classification is widely used in machine learning to solve problems such as spam email filtering, social network analysis, biological data analysis, diagnosing medical diseases, image and speech recognition [1]. The classification process contains two steps: the first step is training, which builds a model from the training samples, and the second step is the model predicting the labels of unlabeled test samples. In the machine learning field, an artificial neural network (ANN) is a classification problem-solving technique [2]. ANNs trained with Back-Propagation (BP) based on gradient descent technique generally slow convergence, are stuck in local optima, and require more training time [3]. The use of evolutionary algorithms in ANN teaching overcomes these shortcomings. Swarm Intelligence is a field that consists of many individuals and deals with natural and artificial systems [4]. These systems are coordinated through self-organisation and decentralised control. In particular, this area focuses on collective behaviour that is displayed as a result of regional interactions between people and the environment [5]. Examples of checking systems through swarm intelligence are ants and termite swarms, fish swarms,bird swarms, and terrestrial animal swarms [6]. The swarm intelligence population consists of simple agents that are closer to the optimal outcome and interact with each other and environments. Emerging intelligence that communicates with its ecosystem is based on simple independent agents, is composed of other agents but behaves relatively individually from all other agents. Independent agents do not follow global plans or the instruction of other participants. Over the past two decades, swarm intelligence and nature-inspired computing have generated a lot of interest in almost all fields of science, industry, and engineering. Some human artifacts also belong to the field of swarm intelligence; in particular, some multi-robot systems. They are written to solve data analysis [7] and optimisation problems. Particle Swarm Optimization (PSO) [8], Cat Swarm Optimization (CSO) [9], Artificial Bee Colony (ABC) [10], Cuckoo Search (CS) [11] and Bat algorithm (BA) [12] belong to SI. Particle Swarm Optimization (PSO) is a well-known example of swarm intelligence, introduced by [PERSON] and [PERSON] in 1995 [13] to solve global optimisation problems. Because of its simplicity and efficiency, it has been described in various engineering fields and has become the most effective method for solving optimisation problems. In PSO, different numbers of particles are known as a swarm, which search for the best possible solutions in search space [13; 14; 15]. In PSO, individuals are known as particles searching from one position to another; if any particle finds food without wasting time getting the food and sharing information of its position with another particle, all particles have to follow to reach that position [16]. Each particle follows the basic rule for determining its previous best position or neighbour. Each particle finds the optimal solution in search space. To enhance learning factors, minimise weights, and ANN architecture, the PSO algorithm has been used [17]. Consequently, it is usually used in engineering fields with practical applications. For example, PSO is commonly used for price forecasting, clustering, planning optimisation parameter optimisation, image processing and the medical field [18]. The PSO algorithm suffers from premature convergence and diversity problems. If PSO parameters are not properly set, then there are chances that it can get trapped in local optimum due to lack of local exploitation, global exploration and diversity issues in the search space [19]. To solve the combinatorial optimization problems, multiple modified PSO variants are proposed in [20; 21], such as multi-objective optimization [22], constraint optimization [23], opposition-based variant [24], adaptive inertia weight [25] and mutation operator [26].