The proposed MAPSO algorithm is used to solve the proposed optimization model in this paper, which combines PSO and MAS. This section presents the specific steps of the proposed method.
5.2. Multi-Agent System (MAS)
As an important branch of distributed artificial intelligence, MAS is a complex and useful system, which is composed of many independent agents. It is an advanced form of conventional distributed control system having abilities to control huge and multifaceted entities. An agent is considered to be a system, being located in an environment, having the capability to autonomously perform actions in the environment in order to encounter the design objective of the system. Each agent has typical characteristics, as follows [
25].
Reactivity: Agents respond to any deviations in the environment through the help of intelligent systems without directly affecting the environment.
Autonomy: An agent has the ability to perform tasks independently in the network without external interference from other agents or people. These attributes can protect the internal state of the agents from external influences and isolate them from external disturbances.
Inferential ability: Refers to the ability of an agent to operate in intellectual goal stipulations, that is, the ability to infer observations by simplifying information. This can be done by manipulating the appropriate content of existing information.
Responsiveness: Refers to the ability of an agent to observe the current state of the environment and respond to it in the shortest possible time. This capability is of great significance in the real-time application of the system.
Pro-activeness: An agent must present a positive rebuttal of the immediate conditions without involving the general behavior in order to support the agent to achieve its determined goal in response to a specific variation in the atmosphere.
Social behavior: Even though the agent has the ability to make independent decisions, it is still important to have the ability to interact/communicate with external sources (possibly other agents, humans, or control units in the environment) in order to achieve a specific goal. This helps agents to cooperate, negotiate, or compete with other agents.
5.3. Multi-Agent Particle Swarm Optimization (MAPSO) Algorithm
From the introduction of PSO and MAS, it can be seen that agents are different from particles under three aspects, as follows. Firstly, particles are not considered to be autonomous, but agents search space with more flexibility and autonomy. Secondly, particles have low intelligence and low computing ability, but learning is an ability of agents. Thirdly, the particles of PSO move synchronously to maintain the simplicity of algorithm, while agents of MAS move asynchronously due to its learning, autonomy, and cooperation ability. However, the two methods have certain similarities. For example, they are both population based and they cooperatively do their tasks, so these two methods can be matched on each other. A particle can be considered as an agent and PSO can be regarded as a simple MAS. When combining these two methods, the simplicity of PSO algorithm and the learning and autonomy ability of agents in MAS can both be used [
26,
27].
In MAPSO, an agent represents not only the candidate solution of a problem, but also a particle in PSO. For the MAPSO algorithm, a lattice-like environment should be initially established, where each agent is fixed at a lattice-point. In order to more accurately obtain the optimal solution, each agent competes and cooperates with its neighboring several agents and uses self-learning to obtain high-quality solution. The mechanism of PSO algorithm can develop a rapid transmission of information between agents, and therefore MAPSO can achieve rapid convergence and improve the accuracy of the results with the combination of agents and PSO search mechanism.
(1) Purpose of each agent. At each iteration of PSO, each particle is approaching to the optimal solution, with the intention of searching for the optimum of fitness value. In MAPSO, each particle is an agent, so the purpose of an agent is to find the optimal solution of fitness value. In this model, for an agent α, its purpose is to minimize COE.
(2) Definition of global environment. All of the agents in MAS need a living environment, as shown in
Figure 3. Each lattice point in this figure represents an agent and the number in the circle represents the position of this agent in the environment. There are
m × n agents, which mean × particles. Since all of the particles of PSO have the position and velocity attributes, each agent also has these two attributes.
(3) Definition of the local environment. Although a MAS has a global environment, but for one of the agents, it also has a local environment that plays its role. Therefore, how to define the local environment is very critical in the MAPSO method. In this paper, it is supposed that the local environment of an agent is composed of eight other agents adjacent to it. Suppose that an agent α located at (
i,j) is presented as
,
i = 1, 2, …,
m;
j = 1, 2, …,
n. Subsequently, the local environment
of
is defined, as follows:
where
,
,
,
.
In Equation (22), it can be seen that each agent has eight neighbors. They constitute a local environment, in which agent can only sense. For example, for agent , their neighbors are . will compete and cooperate with other eight agents in .
(4) Behavioral strategy for agents. In order to obtain the final solution quickly and accurately, every agent has some behaviors. In MAPSO, each agent shares useful information in the global environment. On the basis of these behaviors, in this paper, we proposed a strategy to obtain the more accurate result.
Suppose that the search space of agent
is denoted as
where
N represents the dimension of this agent. Let
be the agent with smallest fitness value in the local environment of
. If Equation (23) is satisfied, the position of agent
remains unchanged; otherwise, the particle position is adjusted according to Equation (24) to search the solution with a smaller fitness value.
It can be seen that, by adjusting the position of particles, not only the original effective information can be maintained, but also the information of the other eight agents in the local environment can be absorbed to obtain the solution with a smaller fitness value.
(5) Steps of MAPSO. The specific implementation steps of MAPSO algorithm are as follows, as shown in
Figure 4.
Step 1: Input the parameters of MAPSO, including the maximum number of iterations, PSO inertia variables, acceleration coefficient, etc., and define the upper and lower limits of variables.
Step 2: Define a lattice-like environment m × n.
Step 3: Randomly initialize each agent, that is, the initial position and speed of each particle.
Step 4: Calculate the local environment of the current agent according to Equation (22), that is, eight neighbors of the agent.
Step 5: Update iteration number t = t + 1.
Step 6: Obtain the individual extreme value and the global optimal solution. Afterwards, calculate the fitness value of each agent and obtain p-best and g-best.
Step 7: Perform the neighborhood competition and cooperation operation of each agent according to Equations (23) and (24).
Step 8: Update the velocity and position of particles according to Equations (19) and (20).
Step 9: Calculate the fitness of each particle and update the individual extreme value p-best and the global optimal value g-best according to fitness.
Step 10: If the condition of iteration termination is not met, return Step 5; otherwise, proceed with Step 11.
Step 11: Output the optimal agent.