Online optimization algorithms 189
population of solutions. Here the solutions are considered as moving “particles” in the parameter space. The coordinates of the particles are the parameter values. The coordinates of each particle change in every iteration by an
increment called its “speed”,
x
k+1
i
= x
k
i + v
k
i ,
(7.22)
where v
k
i is the speed for particle i at iteration k. The speed consists of
contributions from three terms,
v
k+1
i
= wv
k
i + c 1 r 1 (p
k
i − x
k
i ) + c 2 r 2 (g
k
i − x
k
i ),
(7.23)
where on the right hand side the first term represents the previous speed,
the second term represents the acceleration toward the best solution on the
trajectory (denoted by p
k
i ) traversed by the particle, and the third term represents the acceleration toward the overall best solution (denoted by g
k
i ). r 1
and r 2 are random numbers drawn from the zone [0, 1]. The best solutions on
the trajectories and the overall best solution are updated in each iteration. In
case of a multi-objective optimization, a population of global best solutions
is kept and a randomly selected one is used for g
k
i every time. The control
parameters w, c 1 , and c 2 can be changed to adjust the algorithm behavior.
The values of w = 0.4 and c 1 = c 2 = 1 can be used. A small percentage of the
new particle coordinates can also be generated from the previous coordinates
with a mutation operation as is done in genetic algorithms.
The initial swarm of particles can be generated randomly around a known
good solution or throughout the parameter space. The initial speed is also
randomly specified. The magnitude of the initial speed may be chosen to be
a small fraction, e.g., 10%, of the parameter ranges. After the initial swarm
of particles is launched, it will sweep through the parameter space and be
attracted toward the optima.
Particle swarm optimization is also suitable for multi-objective problems.
One only needs to use non-dominated sorting in the selection of personal and
global best solutions.
Experiences of applying PSO and GA algorithms on the same problems
indicate that the PSO method is often more efficient than the GA method [92,
59]. It converges faster because it has high diversity in the new solutions and
hence there is less waste of time spent on re-evaluating known solutions.
7.2.3 Machine learning (ML) methods
Machine learning is the collection of advanced computer algorithms that can
analyze sample data to extract patterns or build models, which in turn are
to be used to make predictions or decisions with new data. Machine learning
techniques can be classified into three categories: supervised learning, unsupervised learning, and reinforcement learning. These techniques can be used
in function optimization by modeling the parameter space and providing effective strategies in exploring the parameter space.
population of solutions. Here the solutions are considered as moving “particles” in the parameter space. The coordinates of the particles are the parameter values. The coordinates of each particle change in every iteration by an
increment called its “speed”,
x
k+1
i
= x
k
i + v
k
i ,
(7.22)
where v
k
i is the speed for particle i at iteration k. The speed consists of
contributions from three terms,
v
k+1
i
= wv
k
i + c 1 r 1 (p
k
i − x
k
i ) + c 2 r 2 (g
k
i − x
k
i ),
(7.23)
where on the right hand side the first term represents the previous speed,
the second term represents the acceleration toward the best solution on the
trajectory (denoted by p
k
i ) traversed by the particle, and the third term represents the acceleration toward the overall best solution (denoted by g
k
i ). r 1
and r 2 are random numbers drawn from the zone [0, 1]. The best solutions on
the trajectories and the overall best solution are updated in each iteration. In
case of a multi-objective optimization, a population of global best solutions
is kept and a randomly selected one is used for g
k
i every time. The control
parameters w, c 1 , and c 2 can be changed to adjust the algorithm behavior.
The values of w = 0.4 and c 1 = c 2 = 1 can be used. A small percentage of the
new particle coordinates can also be generated from the previous coordinates
with a mutation operation as is done in genetic algorithms.
The initial swarm of particles can be generated randomly around a known
good solution or throughout the parameter space. The initial speed is also
randomly specified. The magnitude of the initial speed may be chosen to be
a small fraction, e.g., 10%, of the parameter ranges. After the initial swarm
of particles is launched, it will sweep through the parameter space and be
attracted toward the optima.
Particle swarm optimization is also suitable for multi-objective problems.
One only needs to use non-dominated sorting in the selection of personal and
global best solutions.
Experiences of applying PSO and GA algorithms on the same problems
indicate that the PSO method is often more efficient than the GA method [92,
59]. It converges faster because it has high diversity in the new solutions and
hence there is less waste of time spent on re-evaluating known solutions.
7.2.3 Machine learning (ML) methods
Machine learning is the collection of advanced computer algorithms that can
analyze sample data to extract patterns or build models, which in turn are
to be used to make predictions or decisions with new data. Machine learning
techniques can be classified into three categories: supervised learning, unsupervised learning, and reinforcement learning. These techniques can be used
in function optimization by modeling the parameter space and providing effective strategies in exploring the parameter space.
