
notoriously hard problem (Tabacchi & Termini, 
2011). On the other hand, if we consider the network 
arrangement in space, the topology of the 
environment – that is, the absolute (with respect to 
space) and relative (with respect to other agents) 
position of each agent – has to be carefully taken 
into account. Optimal and sub-optimal solutions to 
well-known and highly idealized situations are 
already available in literature, including Steiner’s 
Tree (Hwang et al., 1992); however, it is harder to 
deal with harsher, possibly non-convex, non-
contiguous, and/or arbitrarily complex areas. 
In these cases, a soft-computing technique 
(Seising and Tabacchi, 2013) such as evolutionary 
programming (Michalewicz, 1996) could provide 
sub-optimal solutions in a reasonable amount of 
time. Evolutionary algorithms in general, and 
especially genetic algorithms, are already 
successfully applied to a huge number of 
optimization problems and they are proven of being 
capable to efficiently find “good” solutions, i.e. 
solutions that closely approximate the best one. 
In this work we propose a preliminary version of 
an evolutionary algorithm, which serves to optimize 
the number and position of agents in arbitrarily 
shaped areas, possibly populated by obstacles. 
Results have shown how the algorithm satisfies sub-
optimality criteria as well as strong connectivity 
requirements and were also obtained in an efficient 
way. Even more, the algorithm tries to optimize the 
number of agents, removing the superabundant ones 
from the map. 
This article is organized as follows: in the next 
section we shall describe in detail the problem we 
are concerned with and the approach we chose to 
face it. In the third section we shall present the 
algorithm as we implemented it, while analyzing the 
principal mechanisms regulating agents and entities 
of the simulation. Last section is devoted to 
conclusions and to possible further developments of 
this work. Some alternative methodologies and 
different approaches to this very problem are 
discussed and it will be pointed out how this work 
can be applied to problems of a very different nature 
than the one considered here.
 
2  METHODOLOGY 
In the study and analysis of an ideal network, it is 
crucial to focus on the first stages of its creation, 
since the initial topology can have a severe impact 
on network functionalities and evolution, as well as 
on its principal entities, i.e. those nodes establishing 
interconnections among peers. 
Amongst the fundamental aspects to be 
considered we should mention the minimization of 
the number of entities involved in the peer-
communication process, which plays an important 
role during the construction stage. In fact, an 
excessive number of agents can lead to some 
inconveniences  (already well-known in information 
theory) such as information redundancy and 
corruption due to signal degradation. However, 
decreasing the number of entities should not 
compromise the connection between them — 
therefore it turns out to be indispensable to evaluate 
the proportion between number of nodes and 
available space. 
Another point that should be carefully taken into 
account is that network topology could contemplate 
the presence of hubs, which play a fundamental role 
for the reasons discussed in the introduction; 
however, the number of hubs in a network should 
not exceed a critical limit, since otherwise we would 
get an inefficient network due to the redundancy of 
some connections. 
Some mathematical models to deal with 
canonically shaped areas  are already known in 
literature; they allow to find the “best” (with regard 
to communication efficiency and total number of 
entities) way of positioning entities in such highly 
idealized scenarios, though this formally restricts the 
possible choices by presenting characteristics that 
are not modifiable by those entities moving in the 
arbitrarily shaped spaces. 
Considering all the limits and problems arising in 
such situations, it comes as no surprise that finding 
the optimal solution is a computationally unfeasible 
problem. However, we can find suboptimal solutions 
in a reasonable amount of time using evolutionary 
programming techniques. In particular, in the next 
section we shall introduce and discuss a procedure 
that employs an evolutionary algorithm augmented 
by hill-climbing, of which many variants are 
available. 
Even though a full detailed description of the 
algorithm is the focus of the next chapter, we want 
to highlight that the algorithm plays a crucial role 
because of its capacity of satisfying all the requisites 
mentioned before. This very algorithm acts as a 
leader, imposing a direction for the entities to move, 
without asking them to act in a precise way. The 
leader also evaluates the solution at each stage of the 
process, using a fitness function, which is based on 
an evaluation of the total area covered by each 
agent.  
Some motivation for the leader to be 
AgentsDisplacementinArbitraryGeometricalSpaces-AnEvolutionaryComputationbasedApproach
199