Dec 16, 2008

Robot Inspiration Series #17: Board Game Robots

This week's inspiration is to build a robot that can play against you in a physical game, such as connect four, checkers, etc. The challenges with such robots can include not only the programming challenge of giving the robot AI (Artificial Intelligence) so that it can play skillfully, but also the building challenge of enabling the robot to maipulate game pieces. Of course, both of these challenges can be greatly reduced if you want. For example, instead of making the robot play "smart", you may be able to program the robot to simply move randomly; it will most likely be easier to beat, but at least it could still play. To get the minimum building challenge, the robot could have the user input the game status, and then tell you where to play for itself.

There are several great examples of game-playing robots. Bryan Bonahoom made a Tic-Tac-Toe playing robot that can "read" the board and make moves all by itself. You can see his robot on the MINDSTORMS website, here. Steve Hassenplug made a robot that plays Connect-4, which you can see on his website, here.

-Jonathan

5 comments:

Pe-ads said...

There was a big RCX Connect-4 tournament a few years ago. Apparently, one bot took something like 10 seconds to do its move, and another about 2 minutes.
I've been considering making a boardgame playing bot for a while, but the piece manipulation and Ai always scared me.
I've found some algorithms on the net and am learning NXC now, so maybe I'll have a go...

Pe-ads

P.S.
Jonathan, how's your FTC going? Do you have a team site?

Brian Davis said...

I suspect the robot in question was Steve Hassenplug's - he actually ended up building one (for an rtlToronto contest), and then, when somebody challenged him that it couldn't be done with just "normal" electronics, he rebuilt it so it could... and still it would win handily :).

Bryan's WOPR also came out of a contest - one for Tic-Tac-Toe between robots. I only ever saw four of these completed, but it was wild watching them play against each other. With the NXT (and the motor encoders), this should be somewhat easier. The programming really isn't too bad - in the end, we used four different methods, written in four different languages, and working with four completely different hardware configurations... I really doubt we tapped out the potential.

If you want *really* simple strategy that most humans still don't get... try Nim. "Dr. Nim" was a toy that could actually play the game using nothing more than mechanical logic, so doing it with the NXT should be easy (strategically speaking).

Jonathan Daudelin said...

Pe-ads,

FTC is going great... I'm really enjoying building these kinds of robots. I just posted an update about the team, along with a link to out website (http://www.teampowersurge.org)

Abbeyjean said...

I recently built a NXT robot that plays checkers. You can see it at http://www.unitruck.co.za/nxt/cpr.htm

Anonymous said...

Excuse me but when is the next robot inspiration?

Related Posts Plugin for WordPress, Blogger...