Hacker News new | ask | show | jobs
by leeber 4211 days ago
I wrote a program to solve chess once. After I realized that it would take a massive amount of computing resources to finish in my lifetime, I abandoned the project.

Most interesting to me is that it really isn't that hard to create a program to solve chess (i.e. the logic behind it), it just would take too much time/money to actually do it.

It's much more difficult to create AIs and approximations like this.

Kinda weird once you realize that fact...approximating a solution to chess is much more difficult, logic wise, than actually solving chess.

Though I wouldn't be surprised if chess is solved in the next couple decades or so.

5 comments

Well, theoretically a brute force universally solves any set of constraints, just takes too long. Intelligence is really only about efficiency and timescales, i.e. the dumbest algorithm would look insanely smart to us if it ran fast enough.
Actually it just might be possible to do, at least in a probabilistic sense. The author of Rybka at least managed to 'prove' (in a weak sense) that a certain opening is unplayable. Quite facinating: http://en.chessbase.com/post/rajlich-busting-the-king-s-gamb...
That article is an April Fool's joke. See http://en.chessbase.com/post/the-chebase-april-fool-s-prank.
A second of April joke. Cheeky. The follow up comments from Vas Rajlich are still interesting though.
Vas Rajlich could write a program that solved chess. He would simply have to find an existing program that solved chess and copy it.
From a quick Google there appear to be about 10^120 possible chess games. So if you could store each game as 1 bit then:

Landauer's principle says we need at least 10^-21 Joules to change a single bit. That means we need 10^99 Joules to run through all our games. The mass-energy of the observable universe is 10^69 Joules.

Therefore, if we could convert one million trillion trillion observable universes entirely into energy, then we'd have enough to run through all our chess games on our theoretically perfect computing machine.

I'm not sure we'll get that done in the next couple of decades.

[of course, there may well be shortcuts that we can take to cut down that number a bit!]

There's weak and strong level of solving chess.

You don't need to know the best move in every position of every possible chess game in order to play perfectly.

Eg. playing with White it is enough for you to always know what your best move is. And once you stick to it, then 99.9999... of these possible games will NEVER occur, because that would require White making at least one non-perfect move on the way.

You might be interested in learning about AIXI. It is in fact trivially easy to create a general intelligence effective in arbitrary domains ... if you assume infinite computational capability. It goes to show that the problem of artificial intelligence is really approximations and heuristics.
Its trivially easy to write some formulas down on paper ;) I was looking up AIXI the other day, but couldn't figure out what the acronym stands for.
Actual implementations of AIXI are also quite easy. I've written one before. Not that it's very interesting to run -- it is basically indistinguishable from an infinite loop.

As for what the acronym stands for, heck if I know.

Last time I looked we still hadn't created the computing resources needed to solve chess before the heat death of the universe.

I'm curious to see how the solution to chess will play out (hoping it happens in my lifetime).

Yes, it would be interesting to see if the solution is like that of checkers where the solved variant is always a draw, or would it be a win for white. (Or much less likely from evidence so far, a win for black).