lawl2 / swarm-pheromone-control

This project aims to simulate Digital Pheromones System used in several algorithms to surveil, identify and track possible targets or Area of Interest

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Digital Pheromones for Swarming Vehicle Control

image

The aim of the project

This work aims to simulate the Digital Pheromones Model presented in the paper Performance of Digital Pheromones for Swarming Vehicle Control used to implement different swarming algorithms used by authors to support a range of military scenarios

What about Digital Pheromones

Digital pheromones are stigmergic mechaninsm used by agents to coordinate with each other exchanging information and leaving signs in a shared environment.

  • Simplicity of agents with respect to individually intelligent agents
  • Scalability of stigmergic mechanism
  • Robustness of systemโ€™s performances against the loss of few individuals

The model mimics the behavior of chemical pheromones. Pheromones can be deposited in an area increasing the current amount of that flavor located at the place. They can evaporate over time. They can propagate from a place to nearby places. This leads to formation of pheromone gradients.

Pheromone parameters

Each place agent store information about single pheromone flavors. It performs aggregation, evaporation and propagation

  • ๐‘ƒ={๐‘_๐‘– } set of agents
  • N :๐‘ƒ โ†’๐‘ƒ neighbors relationship
  • ๐‘ (๐œ™_๐‘“, ๐‘, ๐‘ก) strenght of pheromone flavor f at place agent p at time t
  • d(๐œ™_๐‘“, ๐‘, ๐‘ก) deposit of pheromone flavor f leaved by an agent
  • g(๐œ™_๐‘“, ๐‘, ๐‘ก) propagated pheromone flavor
  • ๐ธ_๐‘“โˆˆ(0,1) evaporation factor for flavor f
  • ๐บ_๐‘“โˆˆ(0,1) propagation factor for flavor f

Pheromone equations

There are two equations describing how the digital pheromone evolves in time and how it propagates to nearby place agents

The first equation describes the evolution of the strenght of a single pheromone flavor at a given place agent

๐’”(๐“_๐’‡,๐’‘,๐’•)= ๐‘ฌ_๐’‡ โŒŠ((๐Ÿ โˆ’ ๐‘ฎ_๐’‡ )( ๐’”(๐“_๐’‡, ๐’‘,๐’•โˆ’๐Ÿ)+๐’…(๐“_๐’‡,๐’‘,๐’•))+๐’ˆ(๐“_๐’‡,๐’‘,๐’•)โŒ‹

The second equation describes the propagation received from direct neighbors ๐’ˆ(๐“_๐’‡,๐’‘,๐’•)= โˆ‘_(๐’‘^โ€ฒ โˆˆ ๐‘ต(๐’‘)) ใ€–๐‘ฎ_๐’‡/|๐‘ต(๐’‘^โ€ฒ )| (๐’”(๐“_๐’‡,๐’‘^โ€ฒ,๐’•โˆ’๐Ÿ)+๐’…(๐“_๐’‡,๐’‘^โ€ฒ,๐’•))ใ€—

Algorithms description

There are four pheromone flavors used in the algorithms Lawnใ€–(๐œ™ใ€—_๐‘™), Visi๐‘ก๐‘’๐‘‘ใ€–(๐œ™ใ€—_๐‘ฃ), Trackingใ€–(๐œ™ใ€—_๐‘ก), NeedsIDใ€–(๐œ™ใ€—_๐‘›)

  • At each update cycle, agents deposit pheromone flavors, pheromones start to propagate and evaporate.
  • Agents defines their next move based on the interpreting equation ๐‘‰(๐‘) built in the specific algorithm, using a deterministic action choosing the maximum of the interpreting equation and moving towards one the direct neighbors place agents.
  • Agents react depending on the task of the algorithm leaving or cancelling โ€˜signsโ€™ over the pheromone map

Surveillance & Patrol

The algorithm defines many Autonomous Surveillance Vehicles (ASVs) which task is to control an Area of Interest (AOI). Place agents in AOI continually emit Lawn pheromone which propagates creating an attractive gradient. ASVs move using the interpreting equation emitting continously Visited pheromone:

๐‘ฝ(๐’‘)=๐’”(๐“_๐’,๐’‘)โˆ’๐’”(๐“_๐’—,๐’‘)

This cause them to climb the gradient reaching the AOI. Once ASV has visited the AOI the pheromone is removed the Lawn pump is stopped for a desired surveillance time defined as a parameter

Target Aquisition

The algorithm defines two kinds of ASVs for this scenario: ASVdet can detect a target thanks to the Tracking pheromone ASVid will climb the gradient of the NeedID pheromone, identifing the target.

This is the equation for ASVdet higly influenced by Tracking pheromone

๐‘ฝ(๐’‘)=๐’”(๐“_๐’,๐’‘)โˆ’๐’”(๐“_๐’—,๐’‘)+๐Ÿ๐ŸŽ๐’”(๐“_๐’•,๐’‘)

This is the equations for ASVid highly influenced by NeedID pheromone

๐‘ฝ(๐’‘)=๐’”(๐“_๐’,๐’‘)โˆ’๐’”(๐“_๐’—,๐’‘)+๐Ÿ๐ŸŽ๐’”(๐“_๐’•,๐’‘)+๐Ÿ ใ€–๐Ÿ๐ŸŽใ€—^๐Ÿ๐Ÿ ๐’”(๐“_๐’,๐’‘)

Target Tracking

In this algorithm the Red avatar representing the target continually deposits Tracking pheromone, however ASV deposits a large amount of Visited pheromone, used to track it but also to inform the others that the target has been acquired. The target now after a constant time moves forward from a place to another depositing again Tracking pheromone which will again attract ASVs establishing another contact to update itโ€™s track. The interpreting equation for ASVs

๐‘ฝ(๐’‘)=๐’”(๐“_๐’,๐’‘)โˆ’๐’”(๐“_๐’—,๐’‘)+๐Ÿ๐ŸŽ๐’”(๐“_๐’•,๐’‘)

About

This project aims to simulate Digital Pheromones System used in several algorithms to surveil, identify and track possible targets or Area of Interest

License:MIT License


Languages

Language:NetLogo 100.0%