Programmer wanted to write chess game for an exhibition

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

bpfliegel
Posts: 71
Joined: Fri Mar 16, 2012 10:16 am

Re: Programmer wanted to write chess game for an exhibition

Post by bpfliegel »

Nice job HGM!

There are even smaller boards as Los Alamos:
http://en.wikipedia.org/wiki/Minichess
Gerd Isenberg
Posts: 2250
Joined: Wed Mar 08, 2006 8:47 pm
Location: Hattingen, Germany

Re: Programmer wanted to write chess game for an exhibition

Post by Gerd Isenberg »

GameOn wrote:I am looking to improve our early games section as well as add a chess section to the show and I am looking for someone that can write me a program that will run under Linux (preferable something self booting) on a low end Net top computer or a Raspberry Pi that will play three early examples of chess games.

These being

El Ajedrecista - An electromechanical game that would play the rook king endgame.
Turochamp - Chess program based on Alan Turings chess algorithm
Los Alamos - Early 6x6 chess game on the Maniac 1
(I know Charles Shannon did create a realy chess computer sometime in the 50s but there does not seem to be too much information on this ditto with Machiavelli).
I can't help with programming. I am also interested in Shannon's relay-based chess machine:
Image
I didn't own and read the paper yet:

Claude Shannon (1950). A Chess-Playing Machine, Scientific American, Vol. 182 (No. 2, February 1950), pp. 48-51. Reprinted in The World of Mathematics, edited by James R. Newman, Simon & Schuster, NY, Vol. 4, 1956, pp. 2124-2133. Included in Part B

And don't forget a simulation of Nemes' Chess Machine ;-)
Image
Good luck,
Gerd
bpfliegel
Posts: 71
Joined: Fri Mar 16, 2012 10:16 am

Re: Programmer wanted to write chess game for an exhibition

Post by bpfliegel »

As Tihamér Nemes was Hungarian, for me the picture is easy to understand :) I should do a Nemes engine when I will have time...
Gerd Isenberg
Posts: 2250
Joined: Wed Mar 08, 2006 8:47 pm
Location: Hattingen, Germany

Re: Programmer wanted to write chess game for an exhibition

Post by Gerd Isenberg »

bpfliegel wrote:As Tihamér Nemes was Hungarian, for me the picture is easy to understand :) I should do a Nemes engine when I will have time...
Wow, that would be great. I am puzzled by the four cathode ray tubes far right. I guess the machine works similar to Mate-in-two by Dietrich Prinz.

Cheers,
Gerd
bpfliegel
Posts: 71
Joined: Fri Mar 16, 2012 10:16 am

Re: Programmer wanted to write chess game for an exhibition

Post by bpfliegel »

I should do it!
Might have some time end of November to go to the national library and dig up some info on it using your sources as the base. Unfortunately I'm a really bad electro engineer, so let's hope for the best regarding the cathode ray tubes :)

Thanks again Gerd!

Cheers, Balint

Ps: He had a plan for a bigger machine, but that was never realized. I'm really excited to find any plans on that one!
bpfliegel
Posts: 71
Joined: Fri Mar 16, 2012 10:16 am

Re: Programmer wanted to write chess game for an exhibition

Post by bpfliegel »

Just found his book 'Cybernetic machines' for sale - for around 7$ :)
User avatar
hgm
Posts: 27790
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Programmer wanted to write chess game for an exhibition

Post by hgm »

I uploaded the Torres engine to http://hgm.nubati.net/torres.tar.gz . The archive contains:

* a Linux executable
* the source code
* the fmax.ini file
* a KRK.fen starting position
* a README file with instructions
GameOn

Re: Programmer wanted to write chess game for an exhibition

Post by GameOn »

Been busy with other things but I shall reply to as many peoples queries as I can.
hgm wrote:I am not sure what exactly you have in mind. What do you mean by 'examples of Chess games'? Do you use 'Chess game' here in the sense of 'AI opponent'? Do you want people to be able to play against these opponents, where they are fully free to choose their own moves?
Basically a single chess board that people can click buttons to play one of the three variants of chess. A button for New Game and one that gives some information on the game (with an exit button so they can get back to the game).

The reason I want these games is because.

El Ajedrecista - It is effectively one of the first computer games every built. It has a basic algorithm which is processed by the electromechanical circuits so effectively running a dedicated program. It is not quite the first as Torres did make a mechanical computer that played another game several years earlier.

Turochamp - From the research I have done, Alan Turing wrote his pseudo computer chess program before Donald Michie and Shaun Wylie wrote the Machiavelli program. As such it is the first documented written computer game.

Los Alamos - Again from the research I have done it is the first computer game that beat a human. Previous examples the computer would always beat you (El Ajedrecista), you could only lose or draw (OXO), who ever went first would win (the various Nim games created) and most early chess games played so badly that they got crushed.
If so, it seems that what you need is a GUI and 3 different engines. There already exists a (free) engine to play Los Alamos Chess under WinBoard I thought there also existed an engine 'Turing' that emulates Turing's paper algorithm, but it could be that this is only usable with Chess base. Almost any engine can play K+R vs K, but I suppose this one would have to play in a very peculiar way to mimic the same algorithm as El Ajedrecista. This probably does not exist.
El Ajedrecista has a very simple a algorithm, I even programmed a version on a Sinclair Spectrum in BASIC and it still was playable. So hopefully it should not be too hard to do.
I think the main challenge would be to prevent people getting access to the Operating System, after which they could pretty much wreck any havoc they like.
As stated mouse use would be the only way they could use this and it should be fairly simple to make the game play in full screen.
If this 'encapsulation' problem can be solved, what you would need is a GUI and the 3 mentioned engines. Now XBoard is open source, and very easily adaptable to what you want. It would be totally trivial do make a version that disables all menu functions, or leaves only a single menu with items 'Play against Turing', 'Play against El Ajedrecista' and 'Play Los Alamos Chess'. It would also be possible to make buttons for that above or below the board, in stead of a drop-down menu. Do you want them to be able to pick the color they play?

It would be a nice extra, as long as the original games allowed you to play as the other side. Although El Ajedrecista would not make any difference as you would still only have a king, but you would need to be able to place all three pieces on the baord in any position you wish.
Then all you would need is the engines. For Los Alamos you can just take the one that exists. El Ajedrecista would probably have to be built, but this could be easy. (Provided you can come up with the exact algorithm it used.) You could also cheat, and just let any engine play KRK to give people the flavor. I don't know about TuroChamp. If the existing one is not usable under XBoard, writing one from scratch might be more difficult.
I have a copy of the original algorithm that was used in Spanish, as it will be part of our display. The algorithm is on the chessprogramming wikispace page as mentioned.

Remembering that the White King starts on a8 and the white rook on b7. The King can be placed anywhere on the board from the 1st to 6th ranks. Three illegal moves and the game stops.

A later version created by his son, had some changes so that the pieces could be placed anywhere on the board.
In addition to the three you mention you could also offer the World's currently smallest Chess program (Toledo nanoChess) as opponent. And the World's current strongest Chess program (Houdini) set to think about 1 sec/move.
That would be something I would probably like to have but on a seperate unit with a seperate panel on computer chess.
Last edited by GameOn on Sun Nov 18, 2012 2:28 am, edited 1 time in total.
GameOn

Re: Programmer wanted to write chess game for an exhibition

Post by GameOn »

Gerd Isenberg wrote:I can't help with programming. I am also interested in Shannon's relay-based chess machine:

I didn't own and read the paper yet:

Claude Shannon (1950). A Chess-Playing Machine, Scientific American, Vol. 182 (No. 2, February 1950), pp. 48-51. Reprinted in The World of Mathematics, edited by James R. Newman, Simon & Schuster, NY, Vol. 4, 1956, pp. 2124-2133. Included in Part B
Would be nice to see a schematic of the computer. I would love to have this too if the engine is ever built.
And don't forget a simulation of Nemes' Chess Machine ;-)
I am avoiding those as they aren't technically games, although they are intresting. The CRTs are used as a simple form of memory.
bpfliegel
Posts: 71
Joined: Fri Mar 16, 2012 10:16 am

Re: Programmer wanted to write chess game for an exhibition

Post by bpfliegel »

I found some senior professors who actually worked together with Tihamér Nemes. His works are truly impressive - inventions covering a lot of diverse topics. I will dig deeper in libraries this week, got some new source references. This is really fun!

Cheers, Balint