Skip to content

Latest commit

 

History

History
94 lines (76 loc) · 2.31 KB

README.md

File metadata and controls

94 lines (76 loc) · 2.31 KB

Citation

In scientific manuscripts that are based on simulations offered by this pluging, please cite the paper:

C. Pinciroli, M.S. Talamali, A. Reina, J.A.R. Marshall and V.Trianni. Simulating Kilobots within ARGoS: models and experimental validation. In Proceedings of 11th International Conference on Swarm Intelligence (ANTS), LNCS 11172: 176-187, Springer, Cham, 2018. doi: 10.1007/978-3-030-00533-7_14

Compiling the code

Make sure you have ARGoS >= 3.0.0-beta52 installed!

Commands:

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ../src
make
sudo make install

Lab 0

argos3 -c src/examples/experiments/kilobot_blinky.argos

Lab 1.2

argos3 -c src/examples/experiments/kilobot_simple_movement.argos

Lab 1.3

argos3 -c src/examples/experiments/kilobot_nonblocked_movement.argos

Lab 2.1-2.2

argos3 -c src/examples/experiments/kilobot_speaker_listener.argos

Lab 2.3-2.4

argos3 -c src/examples/experiments/kilobot_speaker_listener_mod.argos

Lab 3

argos3 -c src/examples/experiments/kilobot_disperse.argos

Lab 4

argos3 -c src/examples/experiments/kilobot_orbit.argos

Lab 5

argos3 -c src/examples/experiments/kilobot_move_to_light.argos

Lab 6

argos3 -c src/examples/experiments/kilobot_gradient_simple.argos

Lab 7

argos3 -c src/examples/experiments/kilobot_sync.argos

Differences between Kilombo and ARGoS

Kilombo

  • Architecture
    • Single-thread, single process wrapper around kilolib.h
      • Robots must run the same behavior
      • Global variables cannot be used to contain state
  • Models
    • Only model offered is the Kilobot
    • Motion is kinematics with simple overlap resolution
      • Robots cannot push other objects
    • Communication neglects obstructions
    • Message drop has uniform probability

ARGoS

  • Architecture
    • Multi-thread, multi-process architecture
    • Robots can run different behaviors
    • Global variables can be used to contain state
  • Models
    • Models of Kilobot, other robots, boxes, cylinders
      • Motion is full 2D dynamics
      • Robots can push other objects
    • Communication considers obstruction
    • Message drop considers local density