Comments by HGMuller


Didn't you know that moderator policy on this site is to censor every usage of a certain normal English word, out of fear for lawsuits? Joe Joyce explained this recently in another thread. But on topic: How do you imagine the 'Chess Variant Pages' to order anything? Who exactly would do the ordering. The moderators? The webmaster? The members? What would they use for money? I imagine a business selling Chess equipment that almost no one wants over the internet is not a very viable one. There are already so many doing that. And they offer already so many 10x10 boards for sale that there will be very little market for those, World wide. With pieces, it is always a problem what pieces to include in the set. I already have that problem software-wise, in WinBoard_F. You don't want the number of bitmaps to explode, especially if you hav to supply them in multiple sizes. When I made my own Ultima piece set, I used abstract designs like cubes and cylinders, so that it does not offend my sense of logic to use them for anything, (like it would when I use an Elephant to depict a Camel, or a Knight to depict a Lion).

My Ultima piece set used commonly available materials, like wooden beads,
broomsticks, square wooden sticks, draught chips:
I even designed diagram symbols to go with it:
The manufacturer you refer to seems to use procedures that are only suitable for
mass production. To make a mold for casting platic requires an investment of $150,000,
I was told. It seems to me like making wooden pieces in a small carpenter shop would
be a much more suitble way to go.

I was out for the weekend, but I let the match run on unsupervised. When I returned I saw it was still going. I noticed that after 213 games, the program that values Falcon below Rook has taken the lead, 120-93 (56%). This starts to be significant: the statistical error in 213 games is only ~3%. So this is a 2-sigma deviation, meaning that it is highly unlikely (only ~2%) that it is better to value Falcons above Rooks.


I put up the zip-file with Fairy-Max, a confiuration file including Falcon Chess, and the WinBoard_F GUI, all packed together as a ready-to play combination on my website. For those who want to try it out, the download link is: http://home.hccnet.nl/h.g.muller/WinBoard_F.zip (Beside Falcon Chess it also contains definitions for normal Chess, Capablanca Chess, the unspeakable variant, Knightmate, Shatranj, Courier Chess, Cylinder Chess.)

I decided to terminate the Falcon-Chess match (I had let it run so long only because I was away anyway) after 676 games, at a score 356-320 (53%). Although this seems only a small difference, this is always to be expected in symmetric playtesting: they start out with equal material, and not all games will have R for F trades. And even for those that have: when I ran games that were imbalanced from the outset (RR vs FF), I never saw more extreme scores than 57% (and for only a single R-F imbalance, that would be halved). Nevertheless, over this many games, a result of 53% is significantly different from equality. One side scored 36 more wins than the other. The standard deviation of the number of wins in 676 games is about 24. So the deviation translates to 1.49 standard deviations, which has only a 6.7% probability of occurring if the two engines were equal. So the conclusion must be that it is almost certain (more than 93% confidence) that it is better to value Falcons slightly lower than Rooks than to value them above Rooks (in a simple scheme that has fixed piece values throughout the game, like Fairy-Max). Current Fairy-Max has R=475, so I set F=450. (B=350, P=100.) I have not had time to watch many of the games. (I will study the PGN later.) Usually Fairy-Max is very materialistic: it has very little positional evaluation, and the diffence between having a Knight on a1 and on e4 is only about a quarter Pawn. If it lets undefended Pawns live, it is usually because they are heavily poisoned.

This shows the 10x10 side, the Chess board is on the other side.
It was made by a Chess-supplies company called 'Revanche', I don't
know
if they still exist. It measures 47 cm on the side. (A CD is shown in
the photograph for size reference.) Height of the shown King is 81mm.
If I wanted to play on a subset of the squares, I would clip something
over the edges that covers 10, 8 or 6 squares.

piece sets is fairly small numbers. The best way seems to make them of
wood, mostly cylindrically symmetric, so they can be easily machined.
Possibly with a little bit of finishing later, such as is done with
normal Chess pieces for making the cross on top of the King, the slit in
the Bishop, the crown of the Queen.
One could for instance se the following designs (lower row) to complement
a normal Staunton piece set (upper row).

exactly, this is what I had in mind. Except that the one that owns and operates the lathe doen't necessary have to be a variantist, but could simply be paid for his time. But it is upto us to come up with designs. If we could agree on a standard extension piece set it might not have to be so expensive at all to have them machined.

I was not aware of the existence of this 'Super-Chess' endeavor at all, so thanks for the link. (And there are even Dutch Championships!) It seems this guy is exactly doing what I had in mind. I don't like most of his piece deigns, though: their style seems a bit frivolous compared to normal Staunton pieces, for my taste. So there are three possibilities: 1) Buy his pieces 2) Pay him to make our designs, as he obviously has the equipment and experience to do this 3) Set up our own production line, and start competing with him

Wow! I like that 'modern Staunton set!' AAre these wooden pieces? Sure looks like it. (I hate plastic pieces.) So it seems there is actually plenty of choice: some of these pieces are very different from normal Chess pieces. As for 'Super Chess': from the description on his website, it seemed to me that Super Chess pretty much encompasses any variant, and is synonymous for 'Fairy Chess' in general. The guy just likes to rename everything in his own way (including the entire piececlopedia).


George: I am close to releasing a new version of the WinBoard Chess GUI, which I expect to become widely distributed amongst Windows and Linux users. Most of the people no doubt will only be interested in playing 'normal' Chess, but I planned to include Fairy-Max with the distribution, as it can both play normal and many variants. The distribution package would look a lot like the experimental version that can be downloaded from the link I gave in the post below. In this new WinBoard I included some support for Falcon Chess in the menus: people can click 'Falcon' as one of the options in the variant menu, and will then be able to use WinBoard as Graphical User Interface for an engine that could actually play it, provided they use one of the wildcard pieces supplied by WinBoard to represent the Falcons. I suppose you have no objection against this, and as WinBoard itself does not play the game, but only acts as a display, it probably does not fall under the patent anyway. As it would only be useful to use WinBoard this way if you did have a Falcon-Chess-playing engine, and the user can communicate with such an engine only through WinBoard, I make WinBoard pop up a licensing message, mentioning your name and the patent number. (Similar to what I make WinBoard do in Gothic Chess.) Fairy-Max, in the download below, does include Falcon Chess as a pre-defined variant, in its fmax.ini file, and when programmed by this preset, actually does play the game (as you could watch in the broadcast). Can I leave this in, or would you prefer me to take out the Falcon-Chess game definition? Please let me know ASAP, I hope to be able to releas this weekend.

Well, if we woud assume that the true score prcentage would be that of the total run, i.e. 356/676 = 52.66%, the expected scores for the first 213 and last 463 games would be 112 and 244 points, repectively. So the actual result is off by 8 points. This is kind of normal for 213 games: the standard deviation over N games is ~0.5*sqrt(N), or 7.3 for 213 games. So the observed deviation is indeed approximately 'standard'. It is clear already from the 52.66 result that Rook and Falcon are very close matches, (although the difference from 50% is significant!), and that the details of the strategy (for which number of Pieces or Pawns would you prefer Falcons over Rooks, and for which the opposite) could improve the results much more than fine-tuning of a single Falcon value used during the entire game in the range R-0.5 to R+0.5. Such subtle strategic evaluations are a bit beyond the scope of a simple program like Fairy-Max, which also doesn't use such considerations for the other pieces (e.g. it does not know about Rooks on open files, the Bishop pair or doubled Pawns). To do better, I would have to convert Joker80 to hndle the Falcon. (I already started with that, but I was a bit too busy recently to finish the job.)

Joker80 is supposed to do (b). But of course the FEN first has to pass through WinBoard before it is handed to Joker. This version of WinBoar doesn't necessarily require Rooks in the corners to castle with, as I could imagine there would exist variants that had some other piece there, with which you could castle. (Just like Knightmate allows Rooks to castle with the Royal Knight.) Allowing empty squares to castle was a very bad idea, though. I am not sure what the problem was. The link did not work (website was down?) when it was first posted, and when I look now, it points to a Smirf game.

OK, I see what causes the problem. Indeed there is a bug in Joker's FEN reader. If there is a King in the initial position (f1/f8), it also sets the flags for Rooks being in the initial position. Normally this bug should not be tested at all, as WinBoard is not supposed to pass incorrect FENs to the engine. Indeed, the version of WinBoard that is on my website now, (awaiting its official release as WinBoard 4.3.14, any day now), does not, and simply strips off the kq castling indicators as it sees there are no black Rooks on a8/j8. It just seems that the version of WinBoard that I used here was less strict in this area as well. Anyway, I will fix the bug next time I will do some work on Joker80. (I want to equip it for FRC/CRC, and this requires an overhaul of the castling code everywhere.) In the mean time, you could already download http://home.hccnet.nl/h.g.muller/alpha.tst and replace your current winboard.exe by it. Then illegal FENs with illegal castling rights would be corrected by WinBoard and corrected before they are passed to the engine.


If you implement the moving board by simply covering the squares that are supposed to be holes with an obstacle, as I suggested below, you would not have that problem. You could use draughts chips for marking the holes, but it would perhaps be nicer to have some square tiles of a third color that completely cover the squares. This is much more likely to work than actually trying to construct a board where all squares can move.

My first reaction is that something must have gone wrong installing the new WinBoard alpha, and that you are somehow still using an old one. When I start the alpha with this FEN with two Joker80 engines, I can see in the debug file that the FEN really sent to the engine only has KQ, not KQkq castling rights. So first check: click the 'help -> about' menu item on the WinBoard that you are using, and check if it says WinBoard 4.3.14k. If not, we have a mixup. If this is indeed WinBoard 4.3.14, it is not possible for me to make any sensible guess as to what is wrong without having the winboard.debug file of this game. (This file records all communications between engine and WinBoard.) WinBoard should be started up with the option /debug on the command line to instruct it to make this file. (And when an irregularity happens, immediately rescue that file by renaming it, before you restart WinBoard!) If Joker80 would castle when receiving a FEN that says it has no castling rights, it is inconceivable that H would not have noticed that before, as I played many thousands of games with it, also from positions without Rooks (but then I also deleted the castling rights for that side, as WinBoard 4.3.14 does here in my tests too). As you can see, WinBoard does not accept such a castling as a legal move when it is actually done, not even the version that erroneously passed the non-exsting castling rights to the engine. And even though I don't examine every game I play, I always scan the PGN file of a large run with a text editor for the occurrence of the string 'forfeit' and 'on time', to see if there were problems.


Checkering the board is not really useful in the absence of Bishops.
So in stead the light / dark square colors are used to contrast the
river banks and palaces. The Mandarins are indicated by a mandarin cap,
which is then used to represent Ferz throughout all variants in WinBoard.
The Elephants and Cannons speak for themselves.
The 'Generals', which we of course tend to think of as Kings, are represented
by the WinBoard Wazir symbol. I am not sure if it would be better to use the
ordinary King symbol here to represent royalty, or use the Wazir to indicate
the moves of the piece. The ornament on the Wazir turban is of course ideal
for indicating royalty. A normal Wazir could use a turban without ornament.



| So just in four turns, the number of possibilities is quite large. | First player turn X Second player turn X First player turn X Second | player turn. And this is still not sufficient for effective play. | The depth-search would need to be at least eight plys just to offer | a 'good' move. Well, this is how it worked in the stone age, before they invented alpha-beta, null-move pruning and late-move reductions. I would be surprised if with these modern search techniques you would not reach 10 ply in a minute or so for this game. In normal Chess the top programs reach 20 ply in that time. That is in a game with on the average 40 moves per position, so according to your calculation, that should require them to search 40^20 or about 10^32 positions. Yet they can do it when searching about 1 million per second (so ~10^8 in total). They thus search about 4 times deeper than your equation suggests. It is true that Zillions is rather inefficient in handling games with drops. It does not seem to reduce the search depth for them, as it should. But Zillions is of course hardly a standard to measure things by. Don't get me wrong, I think it is a miraculous product, and have great respect for its designers. But in being completely general, it is unavoidable that a lot of efficiency gets lost. A dedicated Chess program, even my 100-lines miniature micro-Max / Fairy-Max, totally crushes Zillions in the games that it is able to play (e.g. Capablanca Chess, Shatranj, Knightmate). The reason I think HiveQueen would be easy to program is that most positions seem rather quiet to me: many pieces cannot capture at all. So it should be easy to evaluate by 'wood counting'.

| Pruning techniques are commonly based on calculated values of the | piece movements. But what if these values are 'outside' the movement? It seems your thinking is badly influenced by Zillions, which indeed seems to derive values of the pieces from their mobilities. It must, because it does not have any prior knowledge of the value of the pieces. When I write a dedicated program for a certain game, though, I measure the value of the involved pieces through asymmetric play-testing, and then program these values in 'by hand'. | For example: The Drone would be calculated at an extremely low value | since its immediate movement does not result in the loss of material | for the opponent. But it has another value which does not present | itself until later in the game. Without a Drone, a player cannot | promote a Highborn and thus risks losing the production phase of the | turn. If having an extra Drone is as good as having 5 extra Soldiers, for whatever reason, the play-testing will reveal that. And I would simply award that score for the Drone being on the board, even if a Drone were a piece thas no moves at all. These are not properties that make a game difficult for a computer to play. It might be difficult to acquire the knowledge that need to go in such a program, and it is unlikely that the program will be able to derive deep strategic motives in a few seconds with no other information than the rules. It takes thousands of high-quality Capablanca Chess games to derive a value for Archbishop and Chancellor. But it is not realistic to require that a program has to discover that knowledge for itself within a single game. If we teach people how to play Chess, we do tell them the piece values, even though they are not part of the rules at all.


Well, if we are down to nitpicking: it never 'must' capture, even if it had no non-capture moves at all, because it might stay where it is, and you might move another piece. Only in checkers capture is a must (and even then you might have a choice). So I still think the description is a little ambiguous, although it was very logical that this is what you meant: without non-capture moves the Highborn would not be able to save itself after a capture, so that most captures would be rather suicidal, and the whole game would become rather static. I asked because I was considering how difficult it would be to adapt micro-Max to play this game, n order to prove you wrong. That the board is 9x9 when mapped on square topology is a bit of a show-stopper, though, as expanding the board beyond 8 ranks is still on the to-do list.


25 comments displayed
Permalink to the exact comments currently displayed.