January 24 2019

Alfred - the Robot Receptionist

Vision

The idea we had was to build a autonomous receptionist using the AI platform from Furhat Robotics. It should be able to help employees and guests with simple tasks, such as supplying the wifi-password, reporting the weather, leaving messages for employees or keep track of office attendance.

Feature Wishlist

In the early stages, we discussed amongst ourselves what kind of features we would want the receptionist to have. Of course, there were a lot of imaginative ideas in the air, such as showing employee locations in the office, getting restaurant recommendations and user recognition with face id.

We soon realized some of these features would take some doing, and was not within the scope of what the MVP was going to be. In the end, we settled on these main features:

  • Ask for trivial things such as Wi-Fi password, drinks available or where the bathroom is
  • Ask what the current weather is
  • Get meeting room status
  • Philips Hue light control
  • Send and receive messages

With these features in the backlog we set up a basic kanban-board on the wall and got to work.

Implementation

Most of us in the project was totally new to developing within the Furhat Software Development Kit, and naturally it took some time to get acquainted with the platform and the language in which it is written (Kotlin). After a day of setting up the development environment, testing some interactions with the Furhat and implementing basic features, we started to feel more comfortable.

Some features were implemented way faster than we had first anticipated. This enabled us to work on some more complex features, like handling the lights in the office, a knowledge base feature which uses reddit to provide simple explanations of concepts from the popular subreddit explainlikeimfive, and some more.. Experimental features, like the Big Mac Rap.

Final feature list

In the end we had implemented a lot more features than originally planned, some better than others, some more useful than others:

  • Greet and say goodbye to users
  • Ask for trivial things such as Wi-Fi password, drinks available or where the bathroom is
  • Ask what the current weather is
  • Get the current time and date
  • Get meeting room status
  • Philips Hue light control
  • Send and receive messages
  • Explain like I’m five (ELI5)
  • Get user office attendance
  • Big Mac Rap

Conclusion

The last day and a half were mostly spent on improving the interaction between computer and human. It proved to be a challenge to anticipate how users would interact with ALFRED and naturally we had to reiterate a bunch of times to make conversation feel as smooth as possible.

In the end, we are very proud of the product we arrived at within the short time frame of five working days.