Intelligent and Collaborative Robotic System: Comparison
Please note this is a comparison between Version 1 by Alessandro Gasparetto and Version 3 by Rita Xu.

Collaborative robotics represents a modern and efficient framework in which machines can safely interact with humans. Coupled with artificial intelligence (AI) systems, collaborative robots can solve problems that require a certain degree of intelligence not only in industry but also in the entertainment and educational fields.

  • collaborative robotics
  • computer vision
  • trajectory planning

1. Introduction

In recent years, collaborative robotics has been increasingly adopted in the manufacturing industry to allow machines and humans to work and interact in a shared space for a common task while still ensuring human safety [1][2][1,2]. However, collaborative robotics is not a privilege of the industrial sector but has also been applied for entertainment purposes thanks to the development of proper AI algorithms. Several examples of entertainment robotic systems can be found in the literature, demonstrating that robots can safely cooperate with humans while playing board games (such as Tic Tac Toe [3] and Connect 4 [4]), painting [5], or playing music [6], just to mention a few applications of collaborative robotics in this field. Particularly, the possibility of playing chess and checkers against an artificial player has been widely investigated, developing several solutions in order to accomplish this purpose [7][8][9][7,8,9].
Developing a robot that autonomously plays checkers or chess is a complex multidisciplinary problem since it involves elements from different technical fields, like computer science, electronics, and mechanics, which have to be combined for executing a real-world task. This problem is relevant not only for entertainment reasons but also for educational purposes because playing board games helps to develop brain functions and logical thinking. Furthermore, the techniques and methodologies developed for robotic systems in the field of board games can be easily applied in the industry, such as vision systems for recognizing objects or trajectory planning approaches for pick-and-place tasks.
Researchers pursued the goal to develop a collaborative robotic system for interactively playing Italian checkers using a Franka Emika robot with seven degrees of freedom (DOFs) as a piece manipulator and a vision system for game state acquisition (Figure 1). The robotic system is able to identify the current game state, employ a developed decision-making algorithm to determine the best move, and physically manipulate the game pieces on the board through pick-and-place actions.
Figure 1. Experimental setup.

2. Intelligent and Collaborative Robotic System

The recognition of the board and pieces is usually challenging since it occurs mainly through computer vision, which can be influenced by lighting conditions. The board is usually less problematic to be recognized since computer vision libraries, like the open-source OpenCV, provide many tested and robust algorithms based on model recognition suitable to fulfill this purpose. Examples are Harris corner detection [10][11][11,12], Canny edge detection, and Hough Line Transform [12][13][13,14]. These algorithms are suitable when the relative position between the robot and board can change since they find the board position fairly accurately and quickly. However, they require a proper calibration process that has to be performed before the game starts, and they increase the total computational time. Differently, piece position and color are often more difficult to obtain. There are different solutions to reduce this issue, such as using colored pieces (they are normally black and white) in order to increase the contrast with squares (also usually black and white) [14][15][15,16], adopting a dedicated lighting system [16][17], or implementing strategies to compensate for distortions and lighting variations [12][17][13,18].
Nevertheless, computer vision is not the only way to obtain board position and configuration; other methods to solve this problem exist, such as those that exploit electro-magnetic phenomena. An example is reported in [18][19], where the authors installed light-dependent resistors (LDRs) under squares. LDRs are sensors that exhibit a high resistance when they do not receive light (occupied square), whereas their resistance decreases when they are enlightened (empty square). Therefore, by applying LDRs, whether a square is occupied or not can be known, but not the type and color of the piece. This issue is easily solved by knowing the starting board configuration and tracking the game state. Another example is described in [19][20], where the authors propose to place Hall sensors under squares for detecting the pieces on the board. Hall sensors recognize the presence and magnitude of a magnetic field. Using magnetic pieces, this system can detect only the presence or absence of a piece in a certain square. Similar to the previous case, the actual configuration is known by the initial one and tracking the game state. Finally, in order to know if the human player has made a move, detecting a change in the board configuration can be sufficient [17][18].
The second element of autonomous robot players is the game engine, which first aims at finding all the possible available moves that the artificial player can make. Furthermore, its purpose is to select the best one among all according to a chosen game strategy. Moreover, the development of such algorithms is not a simple task, especially if the aim is to develop an efficient and competitive system. To easily solve this problem, some authors preferred to implement an open-source game engine like Stockfish [13][20][14,21] for chess and Raven [15][16] for checkers. Instead, other researchers tried to develop a game engine by themselves. An example is the development of a checkers-playing GUI based on a minimax algorithm, presented in [21][22]. It consists of a game tree search algorithm that aims to find the path that leads to the most favorable configuration, but its calculation time increases exponentially with the tree depth. In order to decrease it, an alpha–beta pruning algorithm can also be considered [22][23]. This algorithm “prunes” the branches that definitely cannot lead to a better situation with respect to another previously evaluated, thus reducing the tree breadth. Another method to reduce computation time is illustrated in [23][24], where the authors develop a hybrid tree search algorithm on parallel CPU and GPU in order to exploit the full potential of the computer. A method different from the tree search is to adopt a neural network, as outlined in [19][20].
The last component of these systems has the purpose of driving the robot for physically executing the selected move. This part has a certain importance because, although checkers and chess do not necessarily need a physical implementation of a robotic player (a GUI interface can be sufficient), it is proved that this improves the user experience and the game attractiveness to human players, making the game more realistic [24][25][25,26]. Nevertheless, pieces are often arbitrarily shaped (especially in chess), so their manipulation is not always straightforward. The manipulation of the pieces on the board can be performed by adopting custom grippers that adapt to piece shape [25][26], pneumatic grippers [26][27], or electro-magnetic grippers [27][28]. However, the last two solutions require custom pieces in order to successfully grasp them.
Another challenge regarding the physical implementation of a robotic player is correctly driving the robot to move the pieces and remove them in the case of capture. The accuracy of the vision system has a particular influence in this context since it has to detect as accurately as possible the pieces’ positions. In this manner, the gripper can correctly reach and grasp the pieces. As robotic agents, robotic arms are mainly used [11][13][17][12,14,18] thanks to their dexterity and manipulation capability. Cartesian mechanisms are also used [18][25][19,26] due to their easy control, but their structure is often large and bulky. Moreover, there has been an exploration of the potential to improve the user experience by enabling the robot to engage with the human player using sounds and facial expressions. One instance of this can be seen in Baxter, a two-armed robot equipped with a display that reflects facial expressions corresponding to its game status [12][15][13,16]. Another example is NAO, a humanoid robot that mimics real person movements, making the game more realistic [10][14][11,15].