论文标题

在CSP中建模Turtle Python库

Modelling the Turtle Python library in CSP

论文作者

MacConville, Dara, Farrell, Marie, Luckcuck, Matt, Monahan, Rosemary

论文摘要

软件验证是建立关键系统可靠性的重要工具。机器人领域的一个潜在应用领域是机器人在日常区域和高度专业化的域中执行更多任务。如果此计划中存在错误,机器人通常会遵循机器人的计划。机器人不会可靠地执行。提前检查错误计划的能力可能会阻止这一点。 Python是通过使用机器人操作系统(ROS)和其他各种库中机器人域中流行的编程语言。 Python的Turtle软件包提供了一种移动代理,我们在此处使用通信顺序过程(CSP)正式对其进行建模。我们具有CSP模型和Python组件的交互式工具链CSP2TURTLE,可以在Python执行之前在CSP中验证乌龟计划。这意味着可以避免某些类别的错误,并为乌龟程序和更复杂的机器人系统进行更详细的验证提供了一个起点。我们用2D网格世界中的机器人导航和避免障碍物的示例来说明我们的方法。

Software verification is an important tool in establishing the reliability of critical systems. One potential area of application is in the field of robotics, as robots take on more tasks in both day-to-day areas and highly specialised domains. Robots are usually given a plan to follow, if there are errors in this plan the robot will not perform reliably. The capability to check plans for errors in advance could prevent this. Python is a popular programming language in the robotics domain, through the use of the Robot Operating System (ROS) and various other libraries. Python's Turtle package provides a mobile agent, which we formally model here using Communicating Sequential Processes (CSP). Our interactive toolchain CSP2Turtle with CSP model and Python components, enables Turtle plans to be verified in CSP before being executed in Python. This means that certain classes of errors can be avoided, and provides a starting point for more detailed verification of Turtle programs and more complex robotic systems. We illustrate our approach with examples of robot navigation and obstacle avoidance in a 2D grid-world.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源