top of page
R2D2 Command Center 

CIS521: Artificial Intelligence — Summer 2019 

Python

Overview

This project is a delve into the Natural Language Processing topic of CIS521: Artificial Intelligence. For this experience, I worked with R2D2 and R2-Q5 robots by Sphero. R2D2 has some pre-programmed commands that you can give it through the terminal. However, I thought to myself, how could we talk to R2D2 conversationally such that it can take in commands and execute them?

 

Multiple different commands can be interpreted to mean the same thing. For example, if we want R2D2 to make some noise, we may say “start singing” or “play some music” or “make a noise”. Although these are all worded differently, they can be interpreted to mean the same command. Through using word embeddings given by the GloVe word vectors (https://nlp.stanford.edu/projects/glove/),we can begin to give R2D2 natural language commands like so. 

First, along with my group members, I compiled a list of possible commands that R2D2 can process, and different ways they can be interpreted.  

Dictionary.png
words1.png
words2.png

After that, using a Python script and the Pymagnitude package, I was able to compare the cosine similarity of words with words in the compiled dictionary of R2D2 commands. Through this, any user-input commands would be compared with the entire dictionary of R2D2's possible actions, and the phrase with the most similarity is the one that R2D2 ends up performing. 

 

Here is a video showcasing the R2D2 Command Center.   

Here is the link to the GitHub repository for this project. 

©2022 by saranya.

bottom of page