Dolphin is a task orchestration language for autonomous vehicle networks. A Dolphin program expresses an orchestrated execution of tasks defined compositionally for multiple vehicles. Building upon the base case of elementary one-vehicle tasks, the built-in operators include support for composing tasks in several forms, for instance according to concurrent, sequential, or event-based task flow.
The language is implemented as a Groovy DSL, facilitating extension and integration with external software packages, in particular robotic toolkits. We have done so for the LSTS toolchain and work torwards support for the MAVLink drone protocol is in progress.
Keila Lima, Eduardo R. B. Marques, José Pinto, João B. Sousa, Programming networked vehicle systems using Dolphin - Field tests at REP’17, IEEE/MTS Oceans’18. This is a short paper describing field tests we conducted during REP’17.
Keila Lima, Dolphin: A domain-specific language for autonomous vehicle networks, MSc Thesis, MIERSI/DCC/FCUP, 2017, supervised by Eduardo R. B. Marques and José Pinto