Keywords

1 Introduction

The game of Go is a traditional board game originated in ancient China. There are two players in the game, Black and White. Two players take turn to place their stones on an empty intersection of a square grid-patterned game board, the size of which is 19 × 19 in most official games. The game ends when both sides agree that there will be no more moves. At the end of the game, the winner is determined by counting stones and points in Chinese Rules [1].

The game of Go has long been viewed as the most challenging of board games for artificial intelligence owing to its enormous search space and the difficulty of evaluating board positions and moves. Before 2016, there were no computer Go programs that can challenge a human professional player in the full-sized game. AlphaGo is the first computer program to defeat a human professional player in 19 × 19 game. It combines Monte Carlo simulation with value and policy networks to achieve a 99.8% winning rate against other Go programs [2]. In 2017, AlphaGo Zero achieved superhuman performance and winning 100-0 against AlphaGo [3].

The ground-breaking advances in computer Go brought artificial intelligence (AI) into public view and raised discussions on how to interact with machines and robots in the future. However, AlphaGo is still a highly intelligent computer program without emotion and personality. Although previous study raised emotional expression issues in the game of Go [4], it only aims to make Go beginners enjoy watching or playing Go game rather than personalize AI Go program as an individual with emotions. This paper aims to enable emotional expressions for the game of Computer Go, through which the human player views the AI player as an independent individual with identity, personality and feelings.

This work presents a novel game design of “Naughty AlphaGo”, which is an emotional Go robot player based on AI algorithm to support human players’ perception about the AI player’s emotional states through interaction. The system is implemented as an emotional tangible playground and was brought on public exhibition for validation. Result shows that the emotion expression mechanism based on behavioral and kinematic characteristics can support the perception of AI player’s emotions.

2 Related Work

The design and implementation of emotional robots have been widely discussed. In 1995, Rosalind Picard [5] first brought up Affective Computing to refer to the study and development of systems and devices that can recognize, interpret, process and simulate human affects. It views emotions as a kind of information and has been the mainstream of emotional artificial intelligence. For example, Suzuki implemented an intelligent agent system for human-robot interaction through artificial emotion [6], which expresses emotions through LED lights and music. However, this emotional design paradigm has been criticized as fake for its mathematical view of emotions [7].

In 2007, Boehner [8] brought up a new perspective of viewing emotions: emotions are expressed and perceived through interaction, which are dynamic, culturally mediated, and socially constructed and experienced. In this view, the design of emotional robot should aim to support human users in understanding, interpreting and experiencing emotions during interaction. A simple artwork Useless Box designed by Marvin Minsky is a representative of such design [9]. When the human user toggles the switch to open the box, the box will close itself by toggling the switch again. Through simple interaction, this box expresses a wide range of possible emotions such as lazy, capricious, negative or angry. This paradigm is also widely adopted in the emotional design of games [10].

The design and augmentation of the classic game of Go also draws much attention. In 2013, Lee proposes a soft-computing-based emotional expression mechanism for computer Go [4], which supports Go beginners to enjoy watching or playing Go game. However, its mathematical-model based design only enhances the enjoyment of human Go player but fails to build the AI player as an independent individual with identity, personality and feelings. Besides, this research is based on the video game of Go, which loses the tangible interaction to game objects in board games. Therefore, human player cannot observe the movements and duration spent for an action, which is important for one player to get an idea of what the other player was thinking [11].

Therefore, our study focuses on enable emotional expressions for the game of Computer Go, through which the human player views the AI player as an independent individual with identity, personality and feelings. Besides, the game is designed in 3D physical world with a serial robot arm representing the AI player, which enhances the AI player’s identity enables tangible interaction for better emotional perception (Fig. 1).

Fig. 1.
figure 1

Concept design of “Naughty AlphaGo”

3 Design Process

The design of “Naughty AlphaGo” is carried out under the Chinese rules of Go [1] with a 19 × 19 chess board, which is in accordance with AlphaGo to give human player the first impression of a serious Go match. The human player plays black stones to trigger the reaction of robot as it is a rule in the Go match that the player who owns black always takes first move.

3.1 Emotion Expression Mechanism

The emotions of Go robot can be expressed through both behavioral and kinematic characteristics, which are the key design goals in this research.

Behavioral characteristic is defined by how the robot behave towards certain input. This is further explained in Sects. 3.2, 3.3, 3.4. Kinematic characteristic is how the robot arm moves in kinematic way, which is illustrated in Sect. 3.5.

Besides, contrary to myriad possible inputs during the game play of Go, it’s too complicated and nearly impossible to recognize human player’s intentions for every possible input and response accordingly. Therefore, the personality of Go robot is firstly set to balance between various inputs and limited response patterns.

3.2 Personality Settings

Considering that AlphaGo is a master in the game of Go, we set the personality of our emotional robot to be naughty and proud. This personality is expressed through the following behavioral characteristics:

  1. (1)

    If the human player is good at Go, the robot will play Go game seriously and try to make best decision.

  2. (2)

    If the player has little knowledge in Go and makes a series of bad moves compared with the knowledge of our Go robot, the robot will tease the player by playing the Snake game or finishing patterns.

  3. (3)

    If the player makes a series of invalid moves, the robot will get mad and clear the chess board.

Bad moves are defined as the moves with low winning chance (<0.3) in Go mode. Invalid moves are the moves that violate pre-defined rules, which will be specified in Sect. 3.3.

Another factor affecting the game experience is the number of bad/invalid moves leading to mode switching, referred as to N. If N is too large, the interaction process before mode switching will be too long. If N is too small, no reliable judgment can be made upon the player’s Go level or understanding of current rules. In this research, N is set to be 3.

Through such personality settings, not only is AlphaGo’s highly intelligent identity strengthened, but also the possible inputs can be simplified by categorizing invalid input as a whole.

3.3 Game Design

As is shown in Fig. 2, there are four pre-defined game modes: playing Go, finishing patterns, playing Snake game and clearing the board.

Fig. 2.
figure 2

Different interactions in four game modes

Different game modes differ in behavioral characteristics, which reflect the robot’s different emotions. Playing Go is the default mode and reflects that the robot is taking the current match seriously. Finishing patterns and playing Snake game are two teasing modes which transform the chess board into a pixel game playground and reflect the robot’s irony. Clearing the board is a transient mode and reflects that the robot is enraged by the human player.

Playing Go.

During Go mode, both the human player and the robot can only place one stone per turn or remove stones with no liberties. Any other move is defined as invalid, which the robot will switch directly into a teasing mode. There is no noticeable hint of mode switching, which enhances the naughty personality of the robot.

Besides, if the player makes a series of N bad moves (which are low in winning chance), the robot will despise the human player by silently switching to a teasing mode.

Finishing Patterns.

The go chess board can also be seen as a pixel game playground, which is natural for minigames such as finishing pixelated patterns.

During finishing-pattern mode, the robot will guide the human players to finish a pre-defined pattern. All the patterns are designed with simple emotional meanings, which are easy to guess and understand for most players (Fig. 3).

Fig. 3.
figure 3

Examples of pre-defined pixelated patterns

When entering finishing-pattern mode, the robot will first remove extra stones, and then finishing half of the pattern including stones in the key position to make it easy for human player to guess the entire pattern.

The initially proposed valid input in this mode is to place one or more stones belonging to current pattern, or to remove one or more extra stones. To allow for occasional errors in the design, human player’s input is judged to be valid if the number of stones rightly placed or removed is larger than that of stones wrongly placed or removed.

Playing Snake Game.

Snake game is a well-known video game, with its classic design dating back to 1976 in arcade game Blockade [12]. The player controls a snake to eat food and avoid hitting the surrounding border as the snake grows in length.

In sharp contrast to the game of Go, Snake game requires much less mental activity and has wider popularity. Therefore, it’s integrated as a teasing game mode in “Naughty AlphaGo”, which will appear when the human player is bad at Go (Fig. 4).

Fig. 4.
figure 4

Snake game on the platform of mobile phone and the chess board. (a) classic Snake game [13]. (b) Snake game on chess board

In Snake game mode, the robot controls the movement of the snake composed of white stones to eat food represented by black stones on the chess board. The human player’s input is judged to be valid if the number of newly placed food (black stones) is larger than that of wrongly removed ones.

Besides, if the human player moves any one of white stones, the robot will feel offended and clear the board immediately to express its anger.

Clearing the Board.

Clearing the board is a transient mode and reflects that the robot is enraged by the human player. After clearing the board, “Naughty AlphaGo” will switch to a random mode and start a new round of game (Table 1).

Table 1. Rules and valid user input for different game modes

3.4 Interaction Design

Interaction Flow.

Different game modes are integrated into a complete interaction flow based on the personality settings of “Naughty AlphaGo”. In brief, if the human player obeys the AI player’s intention, the AI player will continue with current mode. Otherwise, the AI player will laugh at the human player or even get mad (Fig. 5).

Fig. 5.
figure 5

Interaction flow of the mental model of “Naughty AlphaGo”

Dealing with Guidance.

“Naughty AlphaGo” is specially designed to express its proud and naughty personality by capriciously switching from one game mode to another without any obvious hint. However, in order not to confuse human player, proper guidance is needed for user to understand different game modes through interaction.

When entering finishing-pattern mode, the robot will first remove extra stones, and then finish half of the pattern including stones in the key position to make it easy for human player to guess the entire pattern. Besides, the robot will also double tap on the chess board to give the user a hint of right position for black stones.

When entering Snake game mode, the robot will initialize the board with a snake at least 3-stone long and 3 pieces of food. Then it will eat all the food by itself to give user the intuition of Snake game.

Tangible User Interface.

As shown in Fig. 7, the user interface is designed similar to standard Go match layout. The counting-down clock is a common device in standard Go match for both players to make move by turns. In this design, it can also help to detect when the human player has finished current turn by detecting the state of the player side button, which will be difficult otherwise with any possible input.

Besides, no clearing-board button is provided for the human player to draw a distinguished line between the AI identity and the human user. Only “Naughty AlphaGo” can clear the board on his own will, not as a servant for human player (Fig. 6).

Fig. 6.
figure 6

User interface of the game playground

3.5 Kinematic Characteristic Design

Kinematic characteristic also plays an important role in reflecting the personality of robots. As is shown in Table 2, there are two main options for kinematic design. One is the humanoid way, which makes the robot imitate human as detailed as possible. Another is the mechanical way, which express its emotions by speed change and interactions.

Table 2. Comparison between mechanical and humanoid way of kinematic characteristics

To compare the effectiveness of expressing emotions for both options, a user study was carried out based on Universal Robot 3 among 8 participants with no previous experience interacting with robot arms. The study adopts a within-subject design, which requires all participants to watch two series of recorded videos in Table 2 and evaluate the degree of emotion expression using 7-point Likert Scale. Different participants watch videos in different order for counterbalancing.

Figure 7(b) shows that mechanical way can better support users’ understanding of its emotion and naughty personality. Therefore, the mechanical way of kinematic design is adopted in the final system.

Fig. 7.
figure 7

User study for kinematic characteristic design

Overall, different game modes are combined with various kinematic characteristics and patterns on the chess board to let the robot express a wide range of emotions such as serious, capricious, arrogant or angry, which are expected to be perceived by human players through interaction.

4 Implementation

4.1 System Architecture

The whole system architecture is illustrated in Fig. 8. The system recognizes current board situation using an RGB camera and senses the existence of human player through a pressure transducer attached to the seat. The mental model processes the input based on AI algorithm and emotional state machine to decide the next output, which is shown in both behavior characteristic and robot arm movements.

Fig. 8.
figure 8

System architecture of “Naughty AlphaGo”

The implementation of “Naughty AlphaGo” consists of three parts: (1) mechanical system to bring the AI player into 3D physical world and enable tangible interactions; (2) electronic and control system to control the logics of electronic installations; (3) algorithms to implement the emotional and intelligent mental model.

4.2 Mechanical System

Robot Arm.

Robot arm is a physical representation of AI player. Its mechanical performance not only affects the game play of Go, but also has a greatly impact on the human user’s perception about AI player’s identity. Therefore, the robot arm should have the mobility to reach the whole chess board and the precision to place stones on certain location. Besides, its movement should be smooth and flexible with adjustable speed.

A serial robotic arm with 3 degree of freedom (DOF) shown in Fig. 9(a) is selected instead of the parallel ones, since it’s more similar to human’s upper limb. Universal Robot 3 with 7 DOF shown in Fig. 7(a) was used in the early stage of research but not adopted in final design because it is unable to reach the full range of 19 × 19 chess board. Besides, too much DOF is unnecessary and does not resemble the structure of a real human’s arm.

Fig. 9.
figure 9

Mechanical system design

Chess Table with Automatic Clearance.

Clearing the chess board is an important behavior for the AI player to express its anger. To achieve automatic clearance, the chess table is specially designed using aluminum extrusions. The automatic clearance system is realized by tilting the chess board with a linear actuator, as shown in Fig. 9(b).

Stone Picker.

Stone picker at the end of the robot arm is specially designed using air pump to pick up and place stones in a stable and robust way, as shown in Fig. 9(c). In the early stage the approach of electromagnets and iron stones is also experimented but not adopted because the stones need to be specially made and the electromagnet may pick up a bunch of stones since they are close on the chessboard and attract each other.

4.3 Electronic and Control System

The electronic and control system architecture of “Naughty AlphaGo” is shown in Fig. 10. Raspberry Pi 3B+ is used as main controller, which receives inputs from RGB camera, pressure transducer and chess clock. After making decisions using the mental model described in 5.4, the robot arm motors and air pump are controlled to perform interactions. A chess clock shown in Fig. 11 is modified to coordinate with the main controller.

Fig. 10.
figure 10

Electronic and control system architecture

Fig. 11.
figure 11

Hacking into chess clock

4.4 Algorithms

Chess Board Recognition.

The recognition of chess board situation is realized using a computer vison method. The Logitech Pro C920 camera first captures a photo of the chess board, then the intersections on chess board are recognized using linear interpolation and solving linear equation, as shown in Fig. 12. The average value of RGB channels within a rectangle at the center of each intersection is computed to identify stones on the chess board (Fig. 13).

Fig. 12.
figure 12

Algorithm for chess board recognition

Fig. 13.
figure 13

Recognition of intersections on chess board

Emotional State Machine.

The emotional design is implemented with an emotional state machine, which specifies the switching relationship between different game modes. The decision rules for mode switching in Go chess mode are shown in Fig. 14. For other modes, the switching relationship can be derived with the design in 3.3.

Fig. 14.
figure 14

Decision rules in Go chess mode

AI Go Algorithm.

The AI Go algorithm in this research is similar to that used in AlphaGo [2], which combines deep neural networks with same structure and Monte Carlo tree search to take moves. This algorithm is validated in an official competition between Golaxy and Kejie on May 27, 2018.

5 Experimentation and Results

5.1 User Study

“Naughty AlphaGo” was on exhibition for 23 days during June and July 2018 in Tsinghua University. User study of the system was carried out during public exhibition to verify the effectiveness of its emotion expression ability and playfulness. Limited to the exhibition environment, an open-ended interview was conducted with 18 visitors during 2 continuous days, mainly inquiring about their experience and understanding of the AI Go player, their emotion perception during interaction and suggestions.

15 out of 18 participants interacted with “Naughty AlphaGo” for more than 10 min while the other 2 visitors only played for less than 5 min. 4 of 18 visitors have previous experience with the game of Go (Fig. 15).

Fig. 15.
figure 15

Public exhibition of “Naughty AlphaGo”

5.2 Results and Analysis

The result of our user study shows that 11 out of 18 participants built a good understanding of its naughty personality through interaction. 3 participants built a basic understanding of its different game modes but didn’t view it as naughty. 2 participants got confused and thought there might be some bug. Another 2 participants who played for less than 5 min just feel it unattractive and didn’t experience with mode switching. Some of their comments are as follows:

  • “I hardly know about Go but was attracted by the robot at first glance, so I gave it a try. Later I found out that it was playing the Snake game rather than Go. It’s kind of like laughing at me.” (P3, male, interacting duration >20 min)

  • “I’m a teacher in primary school and the minute the robot cleared the board, I thought: ‘Yeah, it’s just like my student who sweeps away all his stationery on the desk when dissatisfied’.” (P16, male, >20 min)

  • “It’s capricious like my three-year old cousin, who will get mad when I don’t do things according to her will.” (P9, male, >20 min)

  • “I figured out it was finishing a pattern about heart, but I didn’t know why it did this.” (P1, female, 10–20 min)

  • “It did something unexpected and I thought there must be some bug… I’m an engineer myself and I have got used to this.” (P5, male, 10 ~ 20 min)

  • “I just walked in front of this art work and placed a stone on the board. But I’m not into chess game and left soon.” (P12, female, <5 min)

It can be seen that previous experience has an important impact on human players’ understanding of the personality of the robot through interaction. P9 and P16 both mentioned about their experience with naughty person, which helps their understanding of “Naughty AlphaGo”. P5 and P16 both talked about their career, while P12 talked about her previous experience with chess game. This is reasonable because emotion perception through interaction relies a lot on previous experience.

Besides, longer interaction time is in positive correlation with better understanding of the personality of Go robot. This shows the importance of attractive display design and beginners’ guide design.

Overall, 61% of the participants agree that this robot has naughty personality and emotions. 55% of the participants are willing to play for longer time if there’s no limit to time and space. It can be concluded that “Naughty AlphaGo” can basically support human players’ perception about an emotional AI player through interaction. But the playfulness of game design needs to be improved.

The limitations and suggestions from all participants include: “confused when switching game mode” (6 times), “adding more game modes” (mentioned 5 times), “speed up the robot arm” (5 times), “polishing appearance of the robot arm” (3 times), and “patterns are hard to guess” (twice).

6 Conclusion and Future Work

6.1 Conclusion

This study designed and implemented an emotional tangible intelligent Go robot “Naughty AlphaGo”, which can support human players’ perception about an emotional AI player through interaction.

Emotion expression mechanism based on behavioral and kinematic characteristics can support the perception of AI player’s emotions. Behavioral characteristic is defined by how the robot behave towards certain input, which can be specified through interaction design. The mechanical way of kinematic characteristic design can better support users’ understanding of the emotion and naughty personality in this research.

Longer interaction time is in positive correlation with better understanding of the personality of Go robot. Besides, previous experience of the human players has an important impact on understanding the personality of Go robot through. This shows the importance of attractive display design, beginners’ guide design and the use of common experience to provide better emotional experience for users.

6.2 Future Work

To expand the variety of emotions “Naughty AlphaGo” can express, more game modes (such as the chess of Gomoku) can be designed and integrated into the emotional state machine.

The user guidance when switching among different modes needs to be polished to avoid confusing human users. Hints of current patterns can be shown on a LED display to reduce the difficulty of predicting the patterns.

Besides, the mechanical performance of robotic arm can be improved to shorten waiting time per turn. The appearance of the robotic arm should also be considered to enhance its naughty personality.