Keywords

1 Introduction

Robot rescue is seen as a grand challenge for intelligent systems [13]. The mission of the urban search and rescue (USAR) robot competitions is to increase awareness of the challenges involved in search and rescue applications and to provide an objective evaluation of robotic implementations [23]. Rescue competitions have been a key part of the RoboCup Competition, and Rescue Simulation Leagues have been introduced from 2000 [2]. Simulation of rescue scenarios enables a more concerted focus on multi-agent collaboration, sensing, and mapping.

Although primarily viewed as a research activity, rescue robot simulation has also got the potential to make a significant impact to robotics education, and rolling such activity out could significantly benefit both the research community and education [7, 22]. Rescue simulation provides a means of teaching key robotics and computer science principles in an engaging and meaningful way, while requiring minimal hardware development [8, 11]. There has been the development of previous rescues robot platforms, most notably CoSpace Rescue Simulation, which has formed part of the RoboCup Junior Competition. In this robot rescue platform, robots autonomously navigate a small indoor environment with infrared sensors [11]. This replicates the RoboCup Rescue Virtual Robot competition, users can simulate multiple agents, whose capabilities closely mirror those of real robots [2]. The simulated environment models both indoor (building, factory) and outdoor environment (street) that have partially collapsed due to an earthquake [28]. The indoor map includes a maze of walls, doors, different floors, overturned furniture, and problematic rubble which provide various tests for robot navigation, communication, and mapping capabilities [25](See Fig. 1). The victims are distributed throughout the environment and the mission for the robots and its operators is to find victims, determine their location in its global map while each robot stays near a victim for further assistance [29].

Fig. 1.
figure 1

Example of indoor environments with different types of smoke (Courtesy RoboCup Rescue Simulation Technical Committee [28]).

There is a need for a rescue simulation platform which bridges education to research, specifically targeted at older secondary students (14+) to undergraduate university students [4]. This requires a platform which has a low barrier to entry to allow wide-scale uptake from schools while also providing the scope to explore the more interesting and challenging concepts which Rescue Simulation such as navigation and sensing.

In this paper, we summarize the requirements for a rescue based education simulation platform, review a number of different simulation platforms and associated interfaces, and provide some initial proof-of-concept platforms and approaches.

2 Current Challenge

Robotics has been demonstrated to be an excellent tool for teaching computer science and engineering and also exciting and engaging students [27]. However, obtaining suitably robust robots or robot kits can require significant financial outlay by a school, and can also demand a substantial time commitment from already busy teachers who need to become confident using the robot systems.

Fig. 2.
figure 2

A simple CoSpace world in the RoboCup Junior Rescue Simulation competition (Courtesy RoboCup Junior Technical Committee).

Yet, the current challenge is based on simple robots with a limited sensor suite (see Fig. 2), which makes it difficult to continue the learning experience with more advanced topics as computer vision, path-planning and simultaneous localization and mapping problem (SLAM). These are topics one would expect at the undergraduate level [19].

3 Requirements and Methods

To evaluate the suitability and potential of different simulation environments and interface, it is first necessary to define the requirements from both an education standpoint and a research perspective. From these requirements, metrics by which the different simulation platforms can be evaluated and can be determined.

3.1 Requirements

  • Free access to the software such that it is fully accessible to students to use, and, not a high requirement for high-performance computation facilities.

  • Ease of install such that installation does not become a barrier to entry.

  • Interface that is intuitive to use.

  • Scope in the platform such that it can be used to underpin robotics teaching from fundamentals to higher complexity to provide scope for students to explore and test.

  • A pathway that allows an easy transition to research-based platforms after use of the focused educational platform.

Following the defined requirements, we compared a number of free open source 3D robot simulators. In particular, the simulators Gazebo and Webots are considered, which both have different advantages and disadvantages.

4 Analysis of Simulation Platforms

In this section, we present an analysis of two different simulation environments and three associated interfaces. We provide a quantitative and qualitative assessment of the simulation environments which tie into the metrics and requirements provided in the previous section.

4.1 Gazebo and Associated Interfaces

Gazebo is the simulation environment integrated in Robot Operating System (ROS), although it was originally developed for the Player-Stage environment [14]. Gazebo development boosted when it was selected as the simulation environment for the DARPA Robotics Virtual Challenge (VRC) [1]. Although the aim of the VRC is also to rescue people, the fundamental difference between RoboCup Rescue and the DRC/VRC is the breadth of capabilities required of the robots [2].

In 2016 Gazebo was selected as the simulation environment for the RoboCup Rescue Virtual Robot competition [24]. Previously, the RoboCup Rescue Virtual Robot competition was based on a simulation environment which was based on Gamebots on top of the Unreal Engine [12]. This simulation environment was called USARSim [3], which at the end also provided a ROS-interface [16]. Because also a USARSim interface in Gazebo was created [24], both backward and forward compatibility was guaranteed.

The main advantage of Gazebo is that it actively maintained by the Open Source Robotics FoundationFootnote 1, which allows a variety of robots and environments to be simulated. To give an example of the diversity of possible environment; Gazebo was recently used as the simulation platform for the DARPA Subterrain ChallengeFootnote 2, the RoboNation maritime Virtual RobotX competitionFootnote 3 and NASA’s Space Robotics Challenge [10]. The tight coupling with Robot Operating System (ROS) allows the usage of state-of-the-art ROS modules directly to the robots, simulated or real [15]. Yet, those state-of-the-art modules requires a deep understanding of robotics; an experience that has to build up at the undergraduate and graduate level [6]. An interface has been developed to allow Scratch, a GUI based programming language typically used in schools, to be used to control and interface with ROS topicsFootnote 4. This has the potential to provide a far easier and more intuitive interface to ROS and Gazebo.

4.2 Webots and Associated Interfaces

Webots is a simulation environment with a long history [18]. From the beginning, the environment was meant for both education and research. Webots was designed as a sensor-based simulator for mobile robotics [17], which allows transferring the behavior developed in simulation to be transferred to a real robot, due to the realistic responses of the IR proximity-sensors and a particular vision sensor, the EDI artificial retina.

Recently, Webots has become free open source software, released under the terms of the Apache 2.0 license, which makes it fulfill one of the requirements to be used at high-schools world-wide. In addition, the professional support of the Cyberbotics Ltd. has made installation easy and reliable on Windows, Linux and MacOS platforms. In addition, Olivier Michel, the founder of Cyberbotics, has initiated a WikiBook, which was further developed by Fabien Rohrer and Nicolas Heiniger. The WikiBook Cyberbotics’ Robot CurriculumFootnote 5 contains beginner, novice, intermediate and advanced levels (Table 2).

Table 1. A comparison of the different interfaces to Webots.

The interface of Webots is intuitive to use [9]. At the beginner level, BotStudio is used as an interface, which teaches the students the concept of an automaton. At the novice level, this is used to create simple behaviors as line following. On the intermediate level, several behavioral modules are combined, to the level of a full subsumption architecture [5]. At this level, also, the concept of image processing is introduced. On an advanced level, one can think of pattern recognition and simultaneous localization and mapping problem (SLAM) [26]. At the advanced level, one no longer works in the BotStudio, but directly programs the robot in a programming language as C (or C++, Python, Java, Matlab).

A number of third parties have created graphical interfaces to the simulator. For the younger age groups, BlocklyFootnote 6 appears to be the most suitable as it provides a ScratchFootnote 7 like environment while also allowing the potential for reasonable levels of complexity.

4.3 Comparison Between Webots and Gazebo

A comparison can be made between the simulation environments provided by Webots and Gazebo. This is provided in Table 2. This demonstrates how the scope and support of Gazebo are extensive in comparison to Webots. However, the windows compatibility and previously use in educational platforms makes Webots more suited for younger students.

Table 2. Comparison between different simulation environments: Webots and Gazebo

5 Case Studies: Prototype Platforms

5.1 Gamification in Gazebo

One of the smart tricks to enhance the involvement of students in the current design of the CoSpace challenge [8] is that the scoreboard is integrated into the environment, which increases the suspense and directly gives feedback on the progress. In principle, this sort of integration is also possible in Gazebo, yet it had to be demonstrated, which is done in this case study. A Gazebo environment has been developed, which recreates many of the elements which can be found in a CoSpace arena (see Fig. 3).

Gazebo supports a variety of research robots, such as the PR2 and the Atlas robot [1], but has no model for the small direct-drive robots typically used in education. Because the size of the robot directly has an influence on the design of the challenges (both objects and obstacles), a new model of a small direct-drive robot was created for this challenge. This robot not only has the size, but also the sensor suite typically used in education (see Fig. 4).

Fig. 3.
figure 3

The creation of a simple CoSpace world in the Gazebo environment.

Fig. 4.
figure 4

The Robot functionality.

So, to recreate the important elements which define the interaction with the world in a CoSpace-like challenge the following functionality had to be added to Gazebo:

  1. 1.

    Two small direct-drive robots, each with an own color.

  2. 2.

    The sensor suite which can be expected on such small robot: a webcam (Fig. 5), three distance sensors and two color sensors.

  3. 3.

    Controllable LEDs to indicate the status of the robot.

  4. 4.

    2D objects which indicate the location of victims (and disappear when driven over).

  5. 5.

    A scoreboard which indicates how many victims are picked up by team Red and Blue.

  6. 6.

    A game manager who implements the rule of the game, such as creating victims on new (random) locations once they’re picked up.

A sensor which is not part of the current CoSpace-like challenge, but which could facilitate an interesting challenge for the age 14–18, is the webcam mounted on the simulated robot (see Fig. 5).

Fig. 5.
figure 5

A view image from the webcam on the robot.

The camera feed allows introducing Computer Vision and Pattern Recognition to those students. An example of such an assignment would be the recognition of a few landmarks on the walls by combining a simple artificial neural network with a backpropagation algorithm.

The result is a world which resembles one of the CoSpace worlds, which can now be controlled with standard ROS-commands as cmd_vel(See Fig. 6).

Fig. 6.
figure 6

A connection diagram between the robot models and the team control programs.

This challenge can be easily extended to more advanced challenges in the future. One of the challenges which seems to be on an appropriate level for undergraduates (and in the spirit of the RoboCup Rescue Virtual Robot competition) is the virtual equivalent of the perception tasks as defined in the RoboCup Rapid Manufacturing Challenge, such as visual/thermal activity, motion, color, and Hazmat tests (see Fig. 7).

Fig. 7.
figure 7

The detection of thermal activity in a standard test crate (Courtesy RoboCup Rescue Technical Committee).

5.2 An Advanced Challenge in Webots

A prototype environment has been created based upon the Webots simulation platform. An environment has been created using Python to create a rescue scenario which includes gamification. Within this environment, two E-Puck robots are active (one for each team), as illustrated in Fig. 8. The environment is more complicated than the current CoSpace challenge because there are now also crate based obstacles (which could be pushed out of the way, but also intentionally or accidentally pushed to a location where it blocks the route (of the other team) to the ball deposit area). The victims are now also no longer 2D locations, but 3D objects (balls) which could be ’saved’ by moving them to a deposit area (representing a medical post).

Fig. 8.
figure 8

Webots simulation environment created.

This has been implemented by using the Webots by using the Webots concept of a supervisor node. A set of functions are available for each robot object whose supervisor field is set to true. This has been set for all the ball and deposit areas to allow the status and location of the balls to access to determine the scoring. The Supervisor API is then used to access the position and other state variables of the ball objects. A GUI for the scoring has then been created using Tkinter. This is summarized in Fig. 9.

Fig. 9.
figure 9

Summary of the different components to implement the simulation.

The robots that are driving around in this new challenge are E-Puck robots. The robots are especially designed for educational purposes [20]. The robots can be controlled with code inside the Webots environment, or controlled by an external program. The same E-Puck Monitor program which can control a real E-Puck via its wifi-interface can also be used to control the simulated robot (see Fig. 10). The task for the students is to make autonomous decisions based on the sensor information which is available.

Fig. 10.
figure 10

Connection of the official E-Puck Monitor with Webots.

Going forwards, this platform will be tested with student groups to explore and test how best this meets the requirements. In particular, this process will investigate the level of complexity, to explore if it has a sufficiently low entry barrier, yet lets students explore high-level concepts.

The ability to customize the rescue scenario and implement gamification provides the flexibility and ability to tailor the challenge and over time, create increasingly more interesting and complex scenarios.

6 Discussion and Conclusion

In this review, we discussed that suitable robot simulation platforms for different age groups with respect to the requirements required for a natural learning curve. In particular, we focused on the appropriate platforms for a RoboCup Rescue Challenge for various age groups. The rescue robot simulation has also got the potential to make an impact on robotics education, and rolling such activity out could benefit both the research community and school. To realize the long learning, new simulation platforms are necessary to bridge education to research, specifically targeted at older secondary students (14+) to undergraduate university students. This could assist in engaging students into Rescue Robotics Research and encouraging participation in leagues such as the RoboCup Virtual Robotic Simulation Competition. Also, we summarized the requirements for a rescue based education simulation platform, review two suitable different simulation platforms and associated interfaces and provided some initial proof-of-concept platforms and approaches.