The agents update their opinions as a result of interactions with their neighboring agents. Consider two neighboring agents
i and
j with opinions as
x
i
and
x
j
, respectively. Their opinions at time
n + 1 will be a function of their previous opinions, i.e.
x
i
(
n + 1) =
f1(
x
i
(
n),
x
j
(
n)),
x
j
(
n + 1) =
f2(
x
i
(
n),
x
j
(
n)). If certain conditions are met, after a number of updates in these values, the agents can reach a consensus in their opinions (Kozma & Barrat
2008; Carletti et al.
2006). The collective behavior of the agents over complex networks largely depends on the structural properties of the networks (Amblard & Deffuant
2004), and minor modification in the structure of the network can have drastic effects on the behavior of opinion formation (Nardini et al.
2008).
There are a number of rules for modelling opinion formation in complex networks. For example, considering discrete opinions, in the voter model, randomly selected agents exchange their opinions by that of one of their neighbours (Krapivsky & Redner
2003). The agents might influence their neighbouring agents to change their opinions based on their strength and the neighbours’ threshold (Leskovec et al.
2006). In the evolution of continuous opinions on a network, the opinions of two connected agents are updated if their difference is less than a threshold, i.e. the agents have evolving opinions (Deffuant et al.
2001; Amblard & Deffuant
2004; Lorenz
2007; Kurmyshev et al.
2011; Hegselmann & Krause
2002; Guo & Cai
2009).
In this work we considered a specific form of continuous bounded confidence model in which each agent has an opinion in the range [−1,1] - denoted by opinion space – and update its opinions based on a specific rule (Deffuant et al.
2001; Fortunato et al.
2005). First, each agent takes a random value from opinion space. Then, at each proceeding step, each agent finds its best-matching neighbour, i.e., the one that optimizes the objective function furthest among the neighbours, and then updates its opinion value with this best-matching adjacent. The update rule for agent
i is as
(1)
where f is the desired cost (or objective) function to be optimized, N is the network size and N
i
is the set of neighbours of agent i. μ is the convergence (or influence) parameter, which often takes a value between 0 and 1. This parameter controls the speed of convergence in such a way that small values of μ corresponds to slow but smooth convergence, while the large values of μ corresponds to faster but wavy convergence.
To some extent, the above model for opinion formation imitates the behavior of agents in real social networks. A person may know many individuals in the society; however, he/she is only influenced by his/her closest friends (i.e., neighbors in the network). In many cases, individuals get the maximum influence through their best (closest) friends and try to make themselves similar to them, i.e., making their opinion closer to their closest friends. People try to behave like their best friends for establishing and maintaining their friendships and they influenced by them more than the others in their life. Sometimes these changes will happen because people want to preserve their connections and friendships and they will act or behave like their close friends (Barry & Wentzel
2006). They project their own attitudes and habits to their friends. Furthermore, research showed that, in general, the influence of the very best friend approximately is equal or comparable to the influence of multiple friends (Berndt & Murphy
2003).
In our model, each agent finds one of its neighboring agents that have the best value in the objective function – which is denoted by best-matching neighbor. For example, if the objective function is an energy function; the neighbor with minimal energy function is selected. The agents then update their opinions using equation (
1). It has been shown that considering proper connection weights can enhance the consensus properties of the network, i.e., the network reaches to consensus in a shorter time (Jalili
2013a; Jalili
2013b; Yang et al.
2009; Brunetti et al.
2012). Therefore, we also took proper weights while updating the opinions. The update equations read
(2)
where ϵ is a small value (in order to make the denominator non-zero). The above weighted update rules can be justified as follows. Let us suppose that an objective functions is to be minimized. As the best-matching neighbor is found for each agent, it influences the agent according to its fitness, i.e., its value in the objective function. To this end, the weight for the update rule of an agent gets as the fitness function at that agent divided by the fitness value of the best-matching neighbor, often resulting in a value in the range 0–1 (note that the opinions are updated only when the fitness of best-matching neighbor is better than that of the agent). It is worth mentioning that in some cases, the opinions are in multi dimensions, i.e., x is vector, in which the best matching agent is obtained separately for each dimension.
The method largely depends on the diffusion of good opinions (i.e., those that are good in terms of the objective function) in the network. Agents with opinion values close to the optimal objective function disseminate their opinions through communicating with their neighbors, i.e., getting into consensus with them. Indeed, influence of opinions is in two folds. Indeed, closer opinions to the optimal value of the objective function have a better chance to be selected as best-matching neighbors.
The above rule for opinion formation is somehow inspired by communication in human societies. Our friends influence our behavior in daily life; however, we are usually affected only when our friends are better than us. Here, similarly, for each agent, first, the best matching agent is found, and then, its opinion is updated (using equation (
2)) if the fitness of the best-matching neighbor is better (i.e., it results in a lower value in the objective function) than that of the agent.
It is worth mentioning that the consensus (or synchronization) properties of dynamical networks largely depend on their structure and some topologies are favored for fast consensus (Belykh et al.
2005; Ajdari Rad et al.
2008). Network topology plays also important role in the evolution of other dynamical phenomena over complex networks, such as evolution of cooperative behavior among interacting agents (Perc & Szolnoki
2010; Perc
2009).
A pseudo-code of the proposed consensus-based optimization algorithm is illustrated in section Pseudo-Code as follows.
Pseudo-Code for the proposed consensus-based optimization method
Function CBO
N: number of agents in the population (network size)
M: number of attributes of opinion vector
Boundaries: the range of the opinions
F: desired objective function which is needed to be optimized (minimized in this case)
Begin
-
Initialize N * M matrix X by a random normal distribution for the opinion values in Boundaries;
-
net = Create a structured network;
-
Repeat
-
for each agent i in population do
-
for each attribute a do
-
neighbors_opinion = mask other attributes of the opinions x in neighbors of agent i in network net by a dummy value;
-
self_opinion = mask other attributes of the opinions x agent i;
-
j = find the best agent in neighbors_opinion resulting in the best value for F;
-
if neighbor_opinion of agent
j optimizes F better than
self_opinion then
-
end if
-
end for
-
end for
-
Until stopping condition(s) has/have been met
-
End
In the beginning of the process, the agents are initialized by some random values in a range acceptable by their opinion values. As indicated by Watts and Dodds (
2007) “a minority of individuals who influence an exceptional number of their peers” (Watts & Dodds
2007), there is often a minority of agents that have a significant influence on others, which is mainly due to their specific position in the network The hypothesis of influential agents demonstrated that initiating influential individuals will be explicitly different from initiating non-influential ones in the size and likelihood of a cascade (Watts & Dodds
2007). This means that initial opinions for influential agents probably would bias the result of the consensus. This phenomenon will not happen in proposed method, since CBO is not based on the bounded confidence model. Every agent selects his/her best-matching neighbor regardless of its great social power and degree.
Consensus of opinion values
In this section, we provide a mathematical proof that the update rule expressed in equation (
2) leads the opinions to converge. To this end, let us rewrite it as follows (Hegselmann & Krause
2002):
(3)
where
x(
t) = [
x1(
t),
x2(
t), …,
x
n
(
t)] is the opinion vector at time
t and
A is a time-dependence state transition matrix that also depends on the opinion vector. We would like to verify that starting from an initial opinion values
x(0), whether or not all opinions converges to a single value, that is lim
t → ∞x
i
(
t) =
x∗ for
i = 1, 2, …,
N. Let us define diameter
d of the opinions as
(4)
Lemma 1 (Krause
2000): Consider a stochastic matrix
A (i.e., a nonnegative matrix with row-sums equal to 1 is defined as a stochastic matrix), then, one has
(5)
or equivalently,
(6)
The above lemma was proved in (Seneta
1981); however, we also give another proof using a simpler method.
Proof: Expression (6) can be written as
Our proposed weighted update rule for opinion formation, as expressed by equation (
2), can be rewritten as
(7)
It is clear that in the above representation, matrix A is a stochastic matrix.
Theorem 1: The product of two stochastic matrixes is a stochastic matrix.
Proof: Let
A and
B are two stochastic matrices, and
C =
A.B is their product. Entries of
C are multiplications of entries of
A and
B. Since
A and
B are stochastic, their elements are non-negative and, thus, the entries of
C are also non-negative. The row-sum of
C (
C
i
for
i = 1, 2, …,
N) can be obtained as
(8)
Therefore, C is a matrix with nonnegative entries and row-sums of equal to 1, and thus, it is a stochastic matrix.
Let
t1 and
t2 represent time steps (
t1 <
t2) and
B(
t1,
t2) =
A(
t1-1)
A(
t1-2)
A(
t1-3)…
A(
t2), which models the accumulated weights between time
t1 and
t2 (Hegselmann & Krause
2002). It can be simply shown that for any
r ≥ 0, 1 –
r ≤
e–r.
Theorem 2 (Convergence Theorem): Considering opinion update rule (2), suppose we have a matrix B(t1,t2) = [b
ij
(t1,t2)], which is a stochastic matrix and models accumulated weights where b
ij
is an element of matrix B the sequences 0 = t0 < t1 < t2 < … ≤ T and δ1, δ2, …, δ
i
, … are such that 0 ≤ δ
t
≤ 1 and . If for all m ≥ 1 and 1 ≤ i, j ≤ N, then for any initial condition, there exists a consensus, i.e., lim t → ∞x
i
(t) = x* for i = 1, …, N.
Proof: see the Appendix section.
Optimization tasks
We applied our optimization procedure on a number of benchmark problems and compared its performance with some well-known methods including genetic algorithms (GA), particle swarm optimization (PSO), differential evolution (DE) and distributed dual averaging (DDA) algorithms. GA has been successfully applied to many optimization problems and was used as a basic paradigm in this work. It starts with a population of some random solutions – denoted by chromosomes. Therefore, the first step is to encode the initial solutions from phenotype to genotype. The objective function is then used for ranking the chromosomes. GA works iteratively and, in each step, uses some operators such as parent selection, recombination or cross over and mutation (Holland
1975). There are a number of parameters that should be tuned in order for a GA to work well. These include crossover probability, mutation probability, population model and parent selection models. Crossover probability
P
c
indicates the probability of creating a new chromosome from two parents. Mutation probability
P
m
indicates the portion of the population that undergoes mutation in each iteration of the algorithm.
DE is one of the best-performing evolutionary algorithms frequently used for optimization tasks, which often results in the optimal solution in shorter steps as compared to other optimization algorithms. DE uses the difference of a randomly selected pair of chromosomes – indicating diversity of the population – and adds it to one of the chromosomes in the population. Then, it uses crossover operators such as binomial and exponential crossover to combine the chromosomes (Storn & Price
1997). The parameters of the algorithm are as follows.
β is a real value showing the coefficient of the difference between two selected chromosomes and controls the amplification of differential variation.
P
r
indicates the probability of using the mutant (trial) vector.
N
v
is an integer number indicating the number of couple chromosomes in calculating the mutant vector.
We also compared our algorithm with PSO that is a well-known optimization algorithm based on swarm intelligent (Kennedy & Eberhart
1995). In this algorithm, there is a population of agents called swarms (or particles) interacting with other agents – like our algorithm. PSO has two components: cognitive and social components. The cognitive component is the experience of each particle while the social component is the experience of the community the agents belong to. PSO has shown high degree of flexibility and acceptable speed in solving many optimization problems. Here we used one of the best extensions of PSO that is PSO with Inertia weights (Eberhart & Shi
2000). This feature plays an important role in balancing the powers of exploration and exploitation and making the algorithm more stable. PSO has a number of control parameters. Let us denote the parameters controlling the cognitive and social power of the algorithm as
c1 and
c2, respectively.
Distributed dual averaging (DDA) algorithm – inspired by Nesterov’s dual averaging algorithm (Xiao
2010; Nesterov
2009) – has been proposed for optimizing convex functions (Duchi & Wainwright
2012). Similar to CBO optimization algorithm, DDA is a network-based optimization method in which each node computes sub-differential of a local function while receiving information from its neighboring nodes. There is also a weight matrix to model the weighting process of the method. In any iteration, each node updates its solution vector by multiplying the stochastic weight matrix by the summation of its neighbors’ parameters and the sub-gradient of the objective function. DDA is computationally efficient and the convergence time depends on properties of the objective function and underlying network topology. Expander graphs have been proposed as efficient connection topology for DDA optimization algorithm (Duchi & Wainwright
2012). Alternating direction method of multipliers (ADMM) is another optimization method which uses properties of dual decomposition and augmented Lagrangian methods simultaneously (Boyd & Vandenberghe
2004). The Lagrange dual function is obtained by convex conjugate definition and the dual problem is solved using gradient ascent.
Benchmark problems
We evaluated the performance of the proposed optimization strategy on a number of benchmark problems. As the first problem, we considered the following cost function
(9)
which is a function with many local optima. The optimal point for which the minimum 1 is achieved for this function is at x
*
= 0.1.
We used a number of multiple competitive functions which have been introduced as benchmarks in optimization problems (Tang et al.
2009). The first function of this type is Shifted Rastrigin’s function that is defined as
(10)
which is a multimodal, shifted, separable and scalable function. The other function of this type considered here is Shifted Ackley’s function, which is defined as
(11)
We also considered Shifted Schwefel’s function, defined as
(12)
and Shifted Elliptic function, defined as
(13)
In all above functions except F1, x ∈ [−5, 5]
D
. Furthermore, the global optimum - which is F2* = F3* = F4* = F5* = 0 - is achieved at x
*
which is a random and different vector of real numbers in each run.
Network structures
One of the key ingredients of the proposed optimization algorithm is the graph structure used for connecting the agents, which is kept unchanged during the optimization process. In other words, the set of neighbours are not changed for the agents. In this work, we used a number of well-known graph structures including, Erdős-Rényi random, Watts-Strogatz small-world and Barabasi-Albert scale-free networks.
We used the model introduced by Erdős and Rényi for construction of pure random networks (Erdős & Rényi
1960). In this model,
N nodes are considered and each pair is connected with probability
P. Research showed that real networks are neither random nor regular but somewhere in between; they are indeed small-world. In order to construct small-world networks, we used the original model proposed by Watts and Strogatz, as follows (Watts & Strogatz
1998). Starting with a regular ring graph in which each node is connected to its
k-nearest neighbours, each edge is rewired with probability
P, provided that self-loops and duplication of edges are prohibited. They showed that for some intermediate values of the rewiring probability
P, we obtain a network with low characteristic path length, comparable to that of random networks, and high clustering coefficient (i.e., transitivity) that is much higher than corresponding random networks.
Erdős-Rényi and Watts-Strogatz models result in networks with almost homogeneous degree distribution. However, it was shown that many real networks have heterogeneous degree distribution; there are many low-degree nodes in the network, while a few nodes are hubs with high degrees (Albert & Barabasi
2002; Barabasi & Albert
1999; Barabási
2009). Barabasi and Albert proposed a preferential attachment growth model for constructing such networks, which is used in this work (Barabasi & Albert
1999). The model starts with a
k + 1 all-to-all connected nodes. In each step, a new node with
k links is added to the network. This node tips to the old nodes with probability that is proportional to their degree, i.e., the higher is the degree of an old node in the network, the higher the probability of the making connection with the new node. The model results in scale-free networks whose degree distribution obeys a power-law (Barabasi & Albert
1999).