Background
Foraging definition
-
Searching Robots inspect the search space for targets (or food). While the random walk is the most adopted strategy of search in unknown environments, several other search strategies can be used according to the environment structure and the amount of information provided to robots.
-
Homing Robots have to return home with the collected food by using prior information and/or on-board sensors, following a pheromone trail or even exploiting specific tools (e.g. compass).
-
Communication The cooperation between robots either in searching or in homing tasks can improve the group performance by accelerating the search when avoiding already visited regions or in homing when exploiting together found food. In several other problems cooperation can be achieved without communication, as in Feinerman et al. (2012). However, communication routine is necessary to share and receive information between agents in the swarm directly via transmitting messages or indirectly via the environment.
Foraging taxonomies
Existing taxonomies
Proposed taxonomy
Foraging related works
Real robotic implementation of foraging agents
Platform | Size and limits of the world | Number and nature of food | Max number of robots | Robot characteristics | Energy of the robot | Scalability | Performance metrics | ||
---|---|---|---|---|---|---|---|---|---|
Computer simulation
| |||||||||
Hoff et al. (2013) | Own developed multi-agent simulator | 10 m \(\times \) 10 m continuous | One unlimited | 20 | E-Puck, sensors for nest, food, and obstacles in direct proximity, communicate with nearby robots, measure the range and bearing from which each transmission came. Robots do not have global position measurement or global communication | Unlimited | N/A | Food found or not, How quickly food is found, the rate at which it returned the food to the nest | |
Lee et al. (2013) | Stage/Player | Circle of radius = 80 continuous | One food is generated at a random position per ten seconds | 40 | Agents can store information, sense locally their world and communicate with each other in unlimited range | Limited | Consider 25, 30, 35 and 40 agents | Energy efficiency | |
Magdy et al. (2013) | Own developed multi-agent simulator | N/A | One limited at fixed position | 50 | Agents are Turing machine equivalent which can communicate with nearby robots | Unlimited | Consider 10, 20, 25, 30, 40 and 50 agents | Food found or not at limited time, speed to find food | |
Pitonakova et al. (2014) | Own developed multi-agent simulator | 4000 \(\times \) 4000 continuous-space with periodic boundaries | Between 10 and 100 deposits with varied quality | 100 | Size 10 \(\times \) 10 units, subsumption architecture, initially randomly oriented, carry one unit, odometry, memory to store energy efficiency of a deposits | Limited | Consider 10, 20, 30, 40, 50, 60, 70, 80, 90 and 100 agents | Proportion of collected food | |
Simonin et al. (2014) | TurtleKit simulation platform | 2D bounded grid of varied size 25 \(\times \) 25 cells to 800 \(\times \) 800 cells | 20 with 10 units and 20 units each randomly distributed | 160 | Subsumption architecture, size of one cell, memory less, perceive the four neighboring cells, write on current cell integer value (APF value), read from cell, color trails with specific color, detect and follow trails, one cell can contain multiple agents | Unlimited | Consider 5, 10, 20, 40, 80 and 160 agents | Average foraging time | |
Zedadra et al. (2016) | Netlogo simulator | 2D bounded grid of varied size 100 \(\times \) 100 cells to 1200 \(\times \) 1200 cells | 1 to 10 sites with 500 to 1500 units | 10,000 | Subsumption architecture, size of one cell, memory less, perceive the four neighboring cells, deposit a pheromone on current cell, color trails with specific color, detect and follow trails, one cell can contain multiple agents | Unlimited | Consider 1 to 10000 agents | Average Foraging Time, Total Food Returned, Average Path Length | |
Zedadra et al. (2016) | Netlogo simulator | 2D bounded grid of varied size 100 \(\times \) 100 cells to 1000 \(\times \) 1000 cells | 1 to 10 locations, each with 500 units | 1000 | Subsumption architecture, size of one cell, memory less, perceive the four neighboring cells, deposit a pheromone on current cell, color trails with specific color, detect and follow trails, one cell can contain multiple agents | Limited | Consider 100 to 1000 agents | Total energy consumed, energy efficiency | |
Johnson and Brown (2016) | Enki 2.0 robot simulator | Circularly bounded 2D environment | Cylinders with a diameter of 10 cm | N/A | Enki’s e-puck model which have a diameter of 7.4 cm, inter-wheel distance of 5.1 cm, and weight of 152 g | Unlimited | N/A | Cluster targets to specific location | |
Real experiments
| |||||||||
Alers et al. (2014) | Turtlebot platform | Bounded 2D environment | One limited food | 4 | Turtlebot equipped with a laptop with a core-i3 CPU for computation, Kinect sensor, RGBD information used to detect and locate AR markers, wheel odometry and gyro information, six unique markers, toolkit called ALVAR, wi- with a UDP connection | Unlimited | N/A | Did robots converge to foraging | |
Geuther et al. (2012) | Lego Mindstorms NXT kits | 50x50 grid | Energy spots | Scouts: 25;Harvesters: 60 | USB port and Bluetooth module to communicate with a central system, IR light sources, compass sensor | Unlimited | Varying scouts 5, 10, 15, 20 and 25; Varying harvesters 20, 30, 40, 50 and 60 | Total energy harvested | |
Pitonakova et al. (2016) | ARGoS simulation environment | Continuous space and updates itself 10 times per second, 50 m 50 m | N deposit with volume v and quality Q varied at each simulation | 25 | MarXbot robots, differentially steered with a diameter of 0.17 m, four color sensors pointed to the g round, 2 4 infrared proximity sensors, light sensor used for navigation towards the base, a range and b earing module, wheel-mounted sensors utilized for odometry and a ring of eight color LEDs used for debugging | Unlimited | N/A | Resource collected | |
Russell et al. (2015) | N/A | Continuous real world with 28 pre-deployed beacons | One food | 8 | Differential drive robots of authors own design, capable of grasping a single beacon, moving it from place to place, Arduino Uno micro-controller coupled with a Raspberry Pi Linux computer, outfitted with a camera, 802.11 wireless communication, USB interfaces, five Sharp IR infrared distance sensors, two simple bump sensors, two encoded wheels, an embedded gripper capable of collecting small cans, a flat push surface, and an I2C-driven display, outfitted with a Tmote Sky wireless sensor mote attached to the Raspberry Pi, sensor motes communicated over 802.15.4, channel 26, via UDP multi-cast | Unlimited | Varying 1, 2, 4, and 8 robots | Total food pellets gathered so far | |
Heinerman et al. (2016) | N/A | 1 \(\times \) 1 m arena | One target | 6 | Thymio II robot, seven Infra-Red (IR) proximity sensors for obstacle detection, differential drive with the maximum wheel actuators set between −500 and 500, a cam-era, wireless communication, and a high capacity battery, A WiFi dongle for communication, battery, allowing for a total experimental time of 10 hours, LEGO gripper | Limited | N/A | Number of pucks collected in ten-minute intervals |
-
Columns two and three indicate that several configurations of the foraging problem have been considered, they are more complex in computer simulations, while in real experiments small bounded arenas have been considered and no outdoor, unknown and unstructured arenas have been considered;
-
Scalability was considered also by simulation works rather than real experiments. In this latter, the maximum number of robots do not exceed 60 robot;
-
In real experiments, robots are equipped with lots of idealized components (sensors, communication tools, unlimited energy...) even for simple robots;
-
Each of the works (simulated or real) uses its own platform (Simulator or robot) and there exists no unified platform to be used by all of the works;
-
Each of the works uses its proposed performance metrics which are different from the others. The difference between them makes the comparison of efficiency of MAF algorithms hard to do.