Professor of Computer Science Michael Littman tells us how to tell machines what to do


Michael Littman, a CS professor at Brown, believes that machines should be able to get better at what they do. For example, if you adjust a thermostat, it should recognize that it was at the wrong temperature and be like Damn, I messed up! I’ll do better next time.

Littman gave a talk on user-friendly programmable devices at yesterday’s Science Underground, a science café that hosts informal scientific lectures through Brown’s Science Center, The Triple Helix, and Sigma Xi. He is currently teaching an introductory course that uses a hands-on approach to problem solving: “CSCI0080: A First Byte of Computer Science.” (Get it? Byte, bite? 8, ate? Computer scientists can be punny, too.) He also leads the Humanity Centered Robotics Initiative, which aims to integrate robots into daily life in a beneficial and practical way. Littman’s research centers on artificial intelligence and machine learning, and he put these ideas into non-CS-concentrator terms at yesterday’s talk.

Computer science can seem out of reach, and Littman acknowledges that learning to program well is at least as difficult as learning to write English well. Traditional programming languages “look like gobbledygook” to a non-programmer. He wants to make devices more easily programmable, allowing people to customize and simplify daily tasks. Basically, he wants to shove computers into household objects to make them “taskable.”

First, Littman set out to understand what people wish smart devices could do. Using an online survey, he discovered that most people just want to be able to control simple tasks, such as telling a vacuum to clean the floor when the room is empty or a fan to turn on when it gets too hot.

These tasks can be achieved using the trigger-action approach to programming. It involves simple if-then statements, such as “if it is greater than 75 degrees, then turn the fan on.” These are easy to understand, and with the right interface can be easy for users to customize. Machines are made to do what we want, but too often it is difficult to tell them what that is. If we could apply this approach to devices, we would change the way we interact with machines.Screen Shot 2014-05-02 at 11.34.42 AM

Littman was inspired by a website called If This Then That (IFTTT), which allows users to create custom “recipes” to use triggers to perform actions, as well as download recipes that others have already built. For instance, a recipe that is currently trending automatically sets your latest Instagram photo as your phone’s wallpaper (why didn’t I think of this? #genius). Littman created his own model of IFTTT with some added features, and tested it out on people who had no experience with computer science. They were able to learn how to write recipes in one try, showing that asking users to program their own devices is feasible, even for humanities concentrators.

At this point in the talk, a light bulb lit up in the back of the room. Littman had programmed it to light up when he talked for too long. He said that though he has been a computer scientist for 40 years, he still gets excited when he tells a light to turn on and it obeys his command.

Littman has built other trigger-action programs that he uses daily. He wears a fitness band, and when he hits his target 10,000 steps per day, he programmed the light outside his house to light up blue. He confessed that he walks laps around his living room at 11:50 p.m., watching for the lamp to turn blue. For Harry Potter fans out there, Littman created his own Weasley Clock: a GPS tracks his location, and a change in location triggers a “clock” at his house to point to where he is, such as work or home. Littman joked that when he sees the clock, it’s always pointing to home, making it difficult to debug.

Littman left us with some wise words that most scientists can relate to: “In theory, theory and practice are the same. In practice, they are not.” He admitted that he had prepared four other demos for the talk, but couldn’t get any of them to work. Programmable devices are a great idea and are gaining more mainstream traction, but they are still far from perfect. While we’re waiting for Professor Littman to perfect them, try out this handy IFTTT recipe: every time you go to SciLi, it posts a link to on your Facebook timeline. You’re welcome.

Images via, via, and via.

Leave a Reply