Robotic Chess Opponent

[youtube=http://www.youtube.com/watch?v=CkGqn5rNzK8]

[Dennis] is using a robotic arm as a chess opponent. Rather than using an under-board movement system, a Lynxmotion AL5A robotic arm plucks each piece and moves it to the next space. He tells us that he’s using a Python script that he created to process the moves and decide what’s next. That must mean he’s using a webcam to capture the location of the pieces on the board. About half way through you can see the robot run into one of the pawns. We’d like to know if he has problems with picking up the pieces as the game progresses and they get further away from the center of each square. From what we can see, looks like a great job!

22 thoughts on “Robotic Chess Opponent

  1. @Moggie100
    probably because it was easier for him to program a move knowing it’s starting from a “home” position. it would be more efficient if it only moved however far it needed to.

    i think this is amazing.

    one thing he could do to make it a little more fluid (and i’m stretching) is to add an electro-magnet to the claw. by activating the magnet when it begins to clamp, he might be able to make up for the placement variations that the summary mentions.

  2. The placement variations could be taken care of by small magnets in the board and base of the pieces, once a piece is placed on a square the magnets will atract each other and slide the piece into centre, but the magnets would be weak enough so the robot (and player) could move the pieces. And if he wanted to make the robot seem more like a human player it should knock the board over when it loses! So I guess a chess/boxing robot is next?

  3. I like the idea of this robot. sounds like it would be a much more enjoyable way to play a computer than via a keyboard and screen.

    but, is it thinking? it doesn’t seem so. there is nothing in the video to suggest it is doing anything other than simple pre-programmed movements (erratically at that, see the nudge at 0:38). there are not piece captures, and as soon as the keyboard button is pressed the arm moves — it doesnt seem to assess what has been played on the human side at all (not even after the opening move).

    theres nothing other than a video and a youtube description as far as the specifics go… and that doesn’t say it is thinking either.

    “That must mean he’s using a webcam to capture the location of the pieces on the board.”
    —> Really? It must mean that? I don’t see the camera…

    It just seems like such a great idea/project (best on ive seen on HAD in a while for sure) that if it were doing what is being claimed it would have been explained in more detail (you know, the creator would want to brag more).

    I want to believe, but my better judgment tells me this is being controlled by a man behind a curtain somewhere.

    I hope I am wrong. Truly.

  4. Yea, the problem is that this project lies somewhere in between “cool hack” and “complete solution.” He’s built a decent arm (albiet, they can easily be purchased in kit form so its hard to say how much of it is an original design). But, as you can see from the above comments, people are faulting him because his apparent AI isn’t good enough. Are there any demonstrations of AI that can play as well as deepblue or better? I doubt it — and, deepblue doesn’t use a learning algorithm, just brute force.

  5. Awesome.

    On the ‘smarts’ — there are plenty of chess programs out there that can beat me with no meaningful pause between plays. Maybe he rolled his own, or maybe he’s interfacing with an off the shelf program.

    I think that returning to the “thinking” position is a classy touch, actually.

    The big improvement that I want to see is the machine recognizing when you’ve made your move, so there are no buttons to press at all.

    Riffing on Hirudinea’s idea, if the manipulator was magnetic instead of a claw, then there wouldn’t be any propagating error over multiple moves. That makes it easier to control the robot with simple go-to-grid commands, instead of needing to see the pieces. I think the claw is more fun, though.

  6. We have to do this sort of thing (only for checkers) for our Mechatronics course. I’m an ME, but we have a brilliant EE on our team who has gotten a SCARA pick and place robot working for us. It’s pretty sweet, if I do say so myself.

  7. niceeee.

    “That must mean he’s using a webcam to capture the location of the pieces on the board.”

    Very interesting, I think it’s more likely that the robot use some kind of sensors. It would be hard and nearly impossible for robot to see the location of the pieces through webcam and so quickly decide what to do..

    Or maybe the guy is just pressing a button, to tell the robot where he put his chess..

  8. Nice work on the AL5A. Not the standard kit, Elongated arm means probably stronger servos too. Just a suggestion though, it’s called inverse kinetics. Having the math do the work of arm position means you can concentrate on simple x,y,z position translations. Not as difficult as it sounds and will save endless hours of sequence programming.

  9. oops errata.. It’s called inverse kinematics, if your using the ssc-32 then you have a program disk that demonstrates it, and I do believe the lynxmotion forum has a couple of articles.

  10. @ Flint

    Given that there are “chess-capable” AIs written in assembly code for the ti-8x series calculators, Javascript for computers and mobile phones and many other language to many other platforms… How exactly does it being in Python prevent it from being “chess-capable”?

Leave a Reply to HirudineaCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.