Context-Role Oriented Programming in Julia: Advancing Swarm Programming
Research output: Contribution to book/Conference proceedings/Anthology/Report › Conference contribution › Contributed › peer-review
Contributors
Abstract
Collaborative multi-drone, or more generally, multirobot systems - also called swarms - have many possible operational scenarios. They can be used in scenarios that are dangerous for humans or where deploying humans or stationary hardware would cost many resources. However, developing software for swarms is challenging. Common software development tools make it complex to define collaborative operations and distribute individual information correctly. We present a solution that allows an elegant and comprehensible definition of swarms and their constituents' behavior. We introduce an implementation of the Context-Role-oriented Programming paradigm realized using the Julia programming language. Roles can then be used to assign tasks and specific behavior to certain swarm members. We evaluate the feasibility of our approach by implementing a surveillance task for a drone swarm. Using this application, we show how to define a swarm structure, how to implement role-specific behavior, and how roles can be used to distribute relevant information. We discuss centralized and decentralized swarms and provide a performance evaluation of CROP in Julia.
Details
| Original language | English |
|---|---|
| Title of host publication | 2025 IEEE/ACM 20th Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS) |
| Publisher | IEEE Computational Intelligence Society (CIS) |
| Pages | 85-95 |
| Number of pages | 11 |
| ISBN (electronic) | 979-8-3315-0181-5 |
| ISBN (print) | 979-8-3315-0182-2 |
| Publication status | Published - 29 Apr 2025 |
| Peer-reviewed | Yes |
Publication series
| Series | SEAMS International Workshop on Software Engineering for Adaptive and Self-Managing Systems, ICSE |
|---|---|
| ISSN | 2157-2305 |
Conference
| Title | 20th International Conference on Software Engineering for Adaptive and Self-Managing Systems |
|---|---|
| Abbreviated title | SEAMS 2025 |
| Conference number | 20 |
| Duration | 28 - 29 April 2025 |
| Website | |
| Degree of recognition | International event |
| Location | Rogers Centre |
| City | Ottawa |
| Country | Canada |
External IDs
| Scopus | 105009161299 |
|---|---|
| ORCID | /0000-0003-1537-7815/work/205991637 |
| ORCID | /0000-0002-3513-6448/work/205991856 |
| ORCID | /0009-0008-3887-3217/work/205992865 |
Keywords
ASJC Scopus subject areas
Keywords
- Collaboration, Drones, Hardware, Multi-robot systems, Performance evaluation, Programming, Software, Software development management, Software engineering, Surveillance, Swarms, Roles, Contexts, Julia, Teams, SelfAdaptive Systems