domingo, 4 de noviembre de 2018

Monitoring traffic in future cities with aerial swarms: developing and optimizing a behavior-based surveillance algorithm

SwarmCity Project has its first journal publication!



Traffic monitoring is a key issue to develop smarter and more sustainable cities in the future, allowing to make a better use of the public space and reducing pollution. This work presents an aerial swarm that continuously monitors traffic in SwarmCity, a simulated city developed in Unity game engine where drones and cars are modeled in a realistic way. The control algorithm of the aerial swarm is based on six behaviors with twenty-three parameters that must be tuned. The optimization of parameters is carried out with a genetic algorithm in a simplified and faster simulator. The best resulting configurations are tested in SwarmCity showing good efficiencies in terms of observed cars over total cars during time windows. The algorithm reaches a good performance making use of an acceptable computational time for the optimization.


P. Garcia-Aunon, J.J. Roldán and A. Barrientos. “Monitoring traffic in future cities with aerial swarms: developing and optimizing a behavior-based surveillance algorithm”. Cognitive Systems Research, 2018. Article

lunes, 23 de julio de 2018

SwarmCity: control and monitoring of cities with aerial swarms

Our student Diego Soto Martín has presented his MSc thesis "SwarmCity: control y monitorización de ciudades con enjambres aéreos" ("SwarmCity: control and monitoring of cities with aerial swarms").

During this academic year, he has worked to provide functionalities to the swarm. Specifically, he has developed a behavior-based architecture using IB2C library that allows the drones to perform multiple tasks. Among these tasks, we can find go to points, avoid obstacles, detect and follow cars and people, search the gradients of temperature and pollution, and fly in formation. Some videos are shown below...

Go to point and avoid obstacles:


Follow a car:



Follow a gradient of pollution:

viernes, 20 de julio de 2018

Treatment and visualization of urban data obtained by a drone swarm

Our student Javier Real Valdés has presented his BSc thesis "Tratamiento y visualización de datos urbanos obtenidos por un enjambre de drones" ("Treatment and visualization of urban data obtained by a drone swarm"). 

This work was focused on the treatment of the urban data provided by the aerial swarm, such as measurements of temperature or contaminant gases and detections of cars or pedestrians. This treatment aims to remove the redundant data and discover the relevant information. For this purpose, it applies Gaussian processes and neural networks. 

Gaussian processes are used to fuse the data provided by drones and obtain information referenced spatially and temporally. The spatial resolution and temporal window must be tuned to the specific variables to obtain valuable information. For instance, the spatial and temporal variabilities are wider for cars and pedestrians than for climate and pollution. 


Convolutional neural networks are applied to analyze the generated maps and determine the points of interest. These neural networks are trained with a set of maps manually tagged by an operator. Therefore, these evaluations have not only an objective part (e.g. the points with higher traffic are remarked), but also a subjective part (e.g. the operator choice between multiple traffic jams).


Finally, an immersive interface was developed to visualize the information of the city. This interface takes advantage of virtual reality to reproduce the city and overlap the maps of temperature, pollution, traffic and pedestrians. The resulting interface was comfortable and intuitive as shown by the following video.


We are preparing a scientific paper with the full details of this work!

jueves, 19 de julio de 2018

Algorithms for resource collection through ground robot swarms

Our student Fernando Cipriano Díaz has presented his BSc thesis "Algoritmos de recolección de recursos mediante enjambres de robots terrestres" ("Algorithms for resource collection through ground robot swarms").

This work has explored some of the key points of SwarmCity project, but developing and applying them in a foraging scenario with a ground swarm. Specifically, fourteen strategies have been developed to lead the robots to collect the resources, taking into account behaviors such as random move, come back to resources, area coverage, manage energy... These strategies have been developed as iB2C networks and implemented in Python with py-iB2C library.


The developed strategies have been integrated in ROS and tested in ARGoS, which is one of the most common simulators for multi-agent systems and robot swarms. This simulator has been used to evaluate the strategies with multiple fleets (from 5 to 25 robots) and resources (random, clustered and combined distribution). The results allow to compare the strategies in terms of resources collected in a certain time and time required to collect all the resources.


This work has familiarized us with behavior-based architectures, as well as has shown their potential in a widely-used testbed. We will work in the following months to transfer the results of the work to SwarmCity.

martes, 12 de junio de 2018

SwarmCity v2.0 released!


SwarmCity v2.0 has been released!

The main improvements are listed below:
  • Bugs fixed!
  • Traffic simulator improved!
    • Selection of number of cars.
    • Respawn of accidented and blocked cars.
    • Generation of traffic jams.
  • Population manager enhanced!
    • Generation of crowds in certain locations and moments.
  • Drone fleet improved!
    • Selection of number of drones.
    • Navigation with speed commands.

lunes, 12 de febrero de 2018

PyiB2C: The python implementation of iB2C

Py-iB2C has been released!

This is the Python implementation of iB2C (integrated Behavior-Based Control) developed by Pablo García Auñón. This architecture can be used to develop and execute behavioral networks to control intelligent agents. The Python library allows to easily create behaviors, implement them in networks and execute them in simulators.

The main functionalities are listed below:
  • Create new behaviors from scratch, implementing the transfer, activity and rating functions.
  • Create networks using the already implemented behaviors or new ones.
  • Save specific behaviors and reuse them in another network.
  • Save networks and use them as behavior modules.


jueves, 8 de febrero de 2018

SwarmCity v1.0 released!


SwarmCity v1.0 has been released!

The main functionalities are listed below:

  • A complete city: 
    • Buildings. 
    • Green areas. 
    • Industries.
    • Public facilities.
  • A traffic simulator.
  • A population manager.
  • A climate model:
    • Temperature.
    • Humidity.
  • A pollution manager: 
    • Particles.
    • COx.
    • NOx.
    • SOx.
  • A fleet of drones:
    • Navigation with waypoints.
    • Detection of obstacles.
    • Detection of cars and people with their main features.
    • Measurements of temperature and humidity.
    • Measurements of particles, COx, NOx and SOx.
  • A communication system:
    • Export of messages to ROS through rosbridge.