FAQs

Contents
What is this project about?
Twitch Plays Robotics (TPR) is, in effect, a "school" for robots. Here, robots attempt to learn the meaning of words; you act as the teacher by helping them to learn. However, learning goes both ways: We are not sure what words these robots can learn; it is your job to figure that out.
How do I teach the robots?
Think of the robots as pets. If you want to teach your pet something, you issue a command to it like "sit". You then give your pet a treat if it obeys and withhold a treat if it doesn't. Here in TPR, if the robot is obeying the current command, you type in the robot's color and 'y' for 'yes' (this is equivalent to giving the robot a treat). If you think the robot is not obeying the current command, type its color and then 'n' for 'no' (this is equivalent to withholding a treat from the robot).
What are commands?
Here in TPR, you can vote on which command to teach the robots next simply by typing ![command], where [command] is one or more English words. Every three minutes, the most voted-on command is issued to the robots. Each robot over the next three minutes "hears" this command.
How do the robots learn?
At any one time, there is a population of robots, and one after the other is shown to the crowd. Over time, robots collect yes and no votes, as well as likes and dislikes, from the crowd. Periodically, robots that are less obedient (many no's and few yes's) and less popular (many dislikes and few likes) are deleted. They are replaced by randomly-modified copies of the more obedient and popular robots. Thus, the robots evolve rather than learn to become more obedient.
Why should I like (or dislike) a robot?
As mentioned above, a disobedient robot may "die". However, despite its disobedience, the robot may act in an interesting, funny, or it may exhibit the potential to learn other commands (for example, it may have jumped when the command was 'do not jump'). By 'liking' a robot, you can decrease the probability that it will be killed.
What commands are available?
It's up to you: there are no prespecified commands we wish to teach the robots. You can generate a vote for any command you like simply by typing ![command]. The full list of commands issued by the crowd so far is available here.
What robots are used in this project?
As you'll notice, the bodies and behaviors of the robots are all different. Indeed, what we wish to discover it not just which commands the robots can learn, but which robots are able to learn more command than others. When a robots spawns an offspring robot, the offspring has a slightly different morphology and/or behavior from its parent. Also, every hour, a new robot is "injected" into the population. Thus, like commands, there are no-prespecified robots.
What is the silver robot that's displayed?
Every hour, a silver robot will pop up onto the screen. This robot is before unseen, and if you're there to watch it, you can be the first to help train it!
Why are we using Twitch?
Twitch is ideal for our project because it supports bidirectional communication. You can easily speak to the robots, and the robots can show you which commands they've learned by obeying, or failing to obey, the current command.
Who is the TPR Team?
We're based at the University of Vermont and we are...
  • Josh Bongard: Professor of computer science and team lead.
  • Zahra Mahoor: Postdoctoral associate, database management and backend development.
  • Jack Felag: Undergraduate student, front-end development and website.
How is my score calculated?
Users collect points by helping the robots to learn. More specifically: if you propose a command that robots subsequent learn, you get more points. More technically: your score is a function of how many yes's were provided by other users, under commands that you proposed or voted for.
How are command scores calculated?
The higher a command's score, the better that command has been learned by the robots. More specifically, if a command collects increasing numbers of yes's as time passes, that command receives more points. It's the rate of increase in yes's that's important: a command that always collects yes's --- such as !be a robot --- will receive a low score.
Where can I learn more?
  • We published a paper, after we launched TPR v1.0 (this is v2.0).
  • There is also a reddit conversation thread that grew up around TPR v1.0.
  • Josh gave a lecture about it at the ALife conference in 2016.
Why can't I swear on your stream?
This is a publicly-funded scientific experiment. Thus, we maintain a zero-tolerance abuse policy: users who attempt to abuse the site or other users will be banned upon their first offence.
I'd like to speak to an operator.
  • Jack Felag will be available on stream (chat only) 11am-1pm ET Monday through Friday
  • Zahra Mahoor will be available on stream (chat only) 1-3pm ET Monday through Friday.
  • Josh Bongard will be available on stream 3-5pm ET Monday through Friday.