We present a programming model and typing discipline for complex multi-robot coordination programming. Our model encompasses both synchronisation through message passing and continuous-time dynamic motion primitives in physical space. We specify \emph{continuous-time motion primitives} in an assume-guarantee logic that ensures compatibility of motion primitives as well as collision freedom. We specify global behaviour of programs in a \emph{choreographic} type system that extends multiparty session types with jointly executed motion primitives, predicated refinements, as well as a \emph{separating conjunction} that allows reasoning about subsets of interacting robots. We describe a notion of \emph{well-formedness} for global types that ensures motion and communication can be correctly synchronised and provide algorithms for checking well-formedness, projecting a type, and local type checking. A well-typed program is \emph{communication safe}, \emph{motion compatible}, and \emph{collision free}. Our type system provides a compositional approach to ensuring these properties. We have implemented our model on top of the ROS framework. This allows us to program multi-robot coordination scenarios on top of commercial and custom robotics hardware platforms. We show through case studies that we can model and statically verify quite complex manoeuvres involving multiple manipulators and mobile robots---such examples are beyond the scope of previous approaches.
翻译:我们为复杂的多机器人协调编程提供了一个编程模型和打字纪律。 我们的模型包含通过信息传递和连续时间动态动态原始在物理空间中同步, 我们在一个假设- 保证逻辑中指定\ emph{ 连续时间运动原始}, 以确保运动原始和碰撞自由的兼容性。 我们在一个固定模式类型系统中指定程序的全球行为, 将多会话类型与联合执行的运动原始、 预测的改进以及\emph{ 分离连接。 我们的类型系统提供了一种对互动机器人子集进行推理的方法。 我们描述一种全球类型的概念, 以确保运动和通信能够正确同步, 并提供算法, 检查运动和通信的完善性、 预测类型和当地类型检查。 一个完善型的程序是 emph{ 通信安全} 、 情绪兼容 以及 emph{ { collisition} 和 empholliion 自由} 。 我们的型系统提供了一种配置方法, 以确保这些交互式机器人的特性。 我们用最高级的模型来进行软化的软化的软体化模型研究。