April 10, 2017 | Written by: David Provan
Categorized: Events | Watson
Share this post:
During Wednesday’s Press Conference from the new press building and Augusta National Golf Club Chairman Billy Payne pointed to the Club’s mission to continuously improve even when some may consider them without peer in the tournament they deliver. As their partner our team operates with the same approach and philosophy.
This year, with the opportunity of a new working location within the new press building, our team undertook an exercise to re-imagine the client; members and guests experience for the IBM at The Masters Program. The focus for us was to bring IBM’s cognitive ambition and capabilities to the forefront, to demonstrate that Watson can be applied to every activity and touch point of an experience, and improve it. The idea formed from this approach became known as our “Cognitive Room”.
The Room is an immersive Watson driven exploration of IBM’s capabilities and solutions active at the Masters Tournament combined with a real-time conversation service.
In this post, we will be explaining how this solution was developed with offerings from the Bluemix Watson Catalog and how we structured them together to form a responsive real time solution.
High Level Design
To start that review let’s take a quick look at the goals we set ourselves to be successful.
- An immersive experience that helped people comprehend and appreciate IBM’s partnership with The Masters and desire for continuous excellence
- Provide insight into how cognitive capabilities can be used to improve experience
- Push the boundaries of the cognitive services available to us
As always with modern big idea projects the solution and experience would flux, but having these values at the front of what we did ensured we delivered, what we feel is, a breathtaking experience:
The high level architectural components for the room are split into four core areas:
- Visual Display – the wrap around experience for the room itself
- Watson Capabilities – Cognitive solutions
- Data Services – Micro services providing data end points for the room
- Message Delivery – A interface for allowing the room and Watson to talk to one another
Utilizing IBM Watson
The development of a cognitive immersive room presented us with several challenges. We wanted the room to respond, and respond quickly. We were keen for it to understand and improve and be able to rapidly prototype cognitive concepts to allow us to adapt and maneuver based on iterative feedback. Enter stage right; Bluemix.
The Bluemix catalog provides a variety of tools to allow you to access Watson’s cognitive capabilities however no common way to integrate those together. A recent addition to the Watson Developer Cloud aims to help with that, the Intu platform.
Intu helped us be successful in a variety of ways. Firstly, it allowed us to run speech to text on premise. This ensured we had no delay in understanding speech, we then would call out to the Watson Conversation Service on Bluemix to get the intent and from that direct the actions to take.
Another goal for us was for the room to recognize people as they entered the room, the Intu platform was integrated with Visual Recognition and we trained the service on several members of the digital group on-site. People are analyzed as they walk through the door and if someone is recognized the room will greet them with a “Welcome back John”.
We also wanted to allow people to interact with the room and ask questions based on the current state of the tournament. The Intu platform would locally turn the speech into text before passing to the Conversation service for intent and entity extraction, then we would call the identified data service to return the user the intended result.
Integrating Real-Time Data
The next challenge was integrating all the data we had and providing that back to Intu for use in the display. Bluemix again was utilized with a nodeJS runtime using the swagger framework to provide the validation and documentation. Our teams weren’t geo located together and the use of swagger UI also allowed our data services component to easily document and provide sample code to other teams. We also utilized Bluemix dev ops tools to rapidly deploy updates to the UI for the visual display and Intu to poll.
So finally, we had data, we had cognitive capabilities and a display now the way of wiring it together was our final challenge. For this we deployed Message hub on Bluemix and had the Intu platform send a HTTP POST into the Message Hub, the visual display would then get new messages pushed down to it for a real-time update to the display.
The full Bluemix delivered solution is detailed in the diagram below.
In review, we have had a great learning experience in understanding Watson’s current and future capabilities and the rapid integration and deployment capabilities of Bluemix allow us to take full advantage of that and pivot as we hit road blocks or learnt new things. A Continuous Delivery environment is crucial when trying to develop something new that pushes the boundaries of our current capabilities.
You can find out more about our solution in the Behind the Code video from IBM released on April 9th, 2017.
(**People involved in the build included @amrishchaubal, @micahforster and @fathead555)