Calypso for Cozmo

Visionary Machines LLC is here to redefine robotics and AI (artificial intelligence) education. Founded by Dave Touretzky, Research Professor at Carnegie Mellon University, the company has recently released its first product: Calypso.

Even if you’ve taught robotics before, Calypso probably looks like nothing you’re used to. That’s because it eschews more traditional coding interfaces and paradigms. Instead, it focuses on the type of robotics concepts that students learn at the university level—but presented in ways that are easy enough for a child to learn.

We recently had the chance to catch up with Prof. Touretzky to find out more about what Calypso is, how it can be used, and what makes it radically different—and more effective—than other robotics education platforms.

Anki: What exactly is Calypso?

Dave Touretzky: To put it simply, Calypso is software that helps people understand how Cozmo—and thus intelligent robots in general—work.

One way it does this is by providing a visual representation of how Cozmo views the world (his “world map”), as well as what he’s paying attention to at any given moment. This inside look into Cozmo’s mind is a game-changer for robotics education.

” …Calypso provides new ways to interact with Cozmo, such as by using voice input… “

In addition, Calypso provides new ways to interact with Cozmo, such as by using voice input, or a game controller. The latter is particularly user-friendly because millions of people are already familiar with these controllers. They’re an intuitive way to provide guidance to Cozmo when he needs a little help, and can also be used to prompt or stimulate him without having to, say, tap a light cube.

Who is Calypso for?

Calypso is intended for anyone interested in robotics, whether they’re 8 or 80. In fact, it’s already been used by a wide spectrum of people, from 8-year-olds just learning about robotics and AI, to computer science and electrical engineering majors from universities around the world.

Is Calypso only for learning about robotics?

Robotics is the most obvious application of Calypso, but it’s also an effective tool to teach the basics of programming, and to familiarize people with AI. The New Brighton Area School District in Pennsylvania will be using Calypso this fall to introduce its 3rd, 4th, and 5th graders to programming.

” Calypso is also a perfect complement to Code Lab and the Python SDK because it offers new capabilities to explore with Cozmo… “

One aspect of Calypso that makes it great for novice programmers is its powerful visual interface. Not only is the interface easy to “read,” it provides real-time feedback (e.g., what Cozmo is doing and reacting to as it happens), so people can truly understand how computer programs and robots work.

Calypso is also a perfect complement to Code Lab and the Python SDK because it offers new capabilities to explore with Cozmo, such as speech recognition, custom sounds, and special markers. These capabilities greatly open up the educational and engagement possibilities for both educators and students.

Calypso will be used this summer at the World Artificial Intelligence Competition for Youth.

How is Calypso different from Code Lab?

They’re both visual programming languages. The most obvious difference is that Calypso uses tiles instead of blocks. (Blocks nest; tiles do not.) But a more profound difference is that Code Lab is a procedural language like Python, while Calypso is a parallel rule-based language. Thus, for example, Calypso has no while loops because all the rules on a page run all the time. This is actually the Second Law of Calypso: “Any rule that can run, will run.”

Behind the scenes, there is a lot of sophisticated technology at work in Calypso. For instance, Calypso programs are state machines where each page of rules is a node. The software automatically lays out the state machine diagram for you so you can see the structure of your program and watch it change states as it runs.

This slideshow requires JavaScript.

Calypso’s five laws of computation are easy for students to learn and understand.

Can you explain what a state machine is and why are they’re important?

A popular real-world use case for state machines is video games. In Pac-Man, the player alternates between vulnerable and invincible states depending on whether a Power Pellet has been eaten. A state machine is what manages the two states and the transitions between them.

” [State machines’] usefulness in a wide range of fields makes them an important computer science concept to learn. “

Anything that has multiple states, from a traffic light to, yes, robots, can be created using a state machine. Their usefulness in a wide range of fields makes them an important computer science concept to learn.

Calypso not only teaches people how state machines work, it allows them to create their own to program Cozmo. And they can do it all with a game controller.

Programming using a game controller? Is Calypso considered “real” programming?

Absolutely. There is a general misconception that text-based languages teach “real” programming and visual ones do not. The truth is, visual programming languages require the same fundamental skills as text-based ones. There are some famous visual programming languages (LabView, Grasshopper, etc.) used in professional fields.

As for the game controller, it offers a convenient way to interact with Calypso and Cozmo, but it is by no means required. We provide full keyboard and mouse support for those who prefer those modes.

Can Calypso be used to satisfy various education and coding standards?

Unquestionably. Standards for K-12 computing education generally focus on high-level concepts rather than language-specific ones. For example, one of ISTE’s Student Standards is Computational Thinker, with one indicator described as:

“Develop plans that describe a program’s sequence of events, goals, and expected outcomes.”

Not only can Calypso be used to satisfy such goals, it provides an intuitive and engaging way to do so.

A look at the intuitive radial interface in Calypso.

A simulator is integrated into Calypso.

A racing game made with Calypso utilizing custom vision markers.

University students used Calypso at an event sponsored by the Association for the Advancement of Artificial Intelligence, the leading professional organization for AI researchers.

Students using Calypso at a community outreach event.

Does Visionary Machines provide a Calypso curriculum for educators?

We do. A draft curriculum that helps children learn to reason about computer programs, rather than simply write them, is already available for free on our website.

It is based on earlier research I’ve done with Christina Gardner-McCune and Ashish Aggarwal at the University of Florida on teaching Kodu Game Lab, the beginner’s programming language developed at Microsoft Research. Kodu was the inspiration for Calypso.

Can Calypso be used for activities other than education?

Calypso can be used in a multitude of ways, very much in the same way that the Python SDK can. (Calypso itself was built using the SDK.) One natural thing to do with Calypso is make games to play with Cozmo. We have a tutorial on our website that teaches people how to make and play a keep-away game that highlights this aspect of Calypso.

Finally, why did you make Calypso?

I want to help the public learn about and understand intelligent robots, because robots are becoming part of our daily lives at work and at home. Cozmo is a perfect example.

” Putting industrial-strength robotic AI into the hands of the general public is something only Cozmo makes possible. “

The best way I can think of to make intelligent robots understandable to people is to let them see what’s going on inside the robot’s head. Robotics experts call this “transparency”. In the coming months we’ll be releasing new features that not only make Cozmo smarter, they’ll also make him even more transparent. That’s the guiding principle of Calypso.

Putting industrial-strength robotic AI into the hands of the general public is something only Cozmo makes possible. So thank you, Anki.

Additional Resources

Calypso — Visit the official Calypso website for more information and access to the free curriculum.

Mr. Robot — Prof. Dave Touretzky also teaches Cognitive Robotics using Cozmo at Carnegie Mellon University. Find out more about his work and history in our in-depth interview.