In this page, we present PROMISE (simPle RObot MIssion SpEcification), a mission specification language and tool for teams of multiple robots, which is developed as an Eclipse plugin. With our research, we aim at providing a simple yet powerful and rigorous tool to specify, generate, and decompose missions for robotic teams. With this in mind, we integrated PROMISE into a software framework that allows not only mission specification but also execution. This framework is introduced here.
PROMISE was developed to support both developers—i.e., users with programming skills—and non-technical end users—i.e., users who are not necesserely knowledgeable on programming languages—in mission specification.
Our DSL supports the specification of complex missions via the use of a list of operators we proposed that permit the composition of tasks. These operators are inspired by behaviour tree operators [1], which are used in computer science, robotics, control systems and video games for structuring and model behaviors directed toward achieving goals. In turn, the tasks are implemented from an existing catalog of mission specification patterns. To illustrate the mission specification syntaxes of PROMISE we provide a detailed example in this website,
This page also provides details on the validation processes we followed during the study and development of PROMISE.
The implementation of PROMISE and its framework is available in Github repository. The repository contains installation instructions and guidelines for the usage and workflow of PROMISE and its framework using a virtual machine: https://github.com/SergioGarG/PROMISE_implementation
These are our publications related to PROMISE:
[1] M. Colledanchise, and P. Ögren. Behavior Trees in Robotics and Al: An Introduction. CRC Press, 2018.