Would someone be interested in programming....

Discussion of chess software programming and technical issues.

Moderators: bob, hgm, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
neoliminal

Would someone be interested in programming....

Post by neoliminal » Thu Sep 20, 2007 12:50 am

Would someone be interested in programming a fairy piece evaluation function I've created? It's very simplistic but it does accurately guess the values of FIDE chess pieces. It *might* weight knight or leaping pieces too highly, but I want to test for that.

Ideally I would like to be able to rate even strange pieces that normally don't conform to computed valuations.

Pradu
Posts: 287
Joined: Sat Mar 11, 2006 2:19 am
Location: Atlanta, GA
Contact:

Re: Would someone be interested in programming....

Post by Pradu » Thu Sep 20, 2007 6:38 am

neoliminal wrote:Would someone be interested in programming a fairy piece evaluation function I've created? It's very simplistic but it does accurately guess the values of FIDE chess pieces. It *might* weight knight or leaping pieces too highly, but I want to test for that.

Ideally I would like to be able to rate even strange pieces that normally don't conform to computed valuations.
Are you talking about some kind of self-tuning method?

mjlef
Posts: 1454
Joined: Thu Mar 30, 2006 12:08 pm
Contact:

Re: Would someone be interested in programming....

Post by mjlef » Thu Sep 20, 2007 7:37 am

If you want a quick and dirty place to see what one other program thinks weights are for Fairy Chess peices, Zillions of Games does that. I has a lot of the standard Fairy Chess pieces already. You can create a file with the peices defined however you want them to move, then when you load the program, right clicking on a piece will show you what the program thinks the piece is worth on that position. The evaluation is based on things like mobility, board topoplogy and the goal of the game. In otherwords, nonsense, but it is fun to see what it comes up with!

If you have a better evaluation or search method, you can also write an external engine as a DLL and have the program use that.

Mark

User avatar
hgm
Posts: 24731
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: Would someone be interested in programming....

Post by hgm » Thu Sep 20, 2007 8:48 am

neoliminal wrote:Would someone be interested in programming a fairy piece evaluation function I've created? It's very simplistic but it does accurately guess the values of FIDE chess pieces. It *might* weight knight or leaping pieces too highly, but I want to test for that.

Ideally I would like to be able to rate even strange pieces that normally don't conform to computed valuations.
It is not clear what you have precisely in mind.

You have designed an ab-initio algorithm to derive the value of a piece from its rules of movement/capture? And it is so complicated that a computer program is needed to perform the calculation?

Most of us would be inclined to think that this is a meaningless way to evaluate pieces, as we know that even the value of ordinary FIDE pieces is not constant during the game. So usually we tweek our piece values by empirically determine how they perform in games. That way you evaluate the piece in its 'natural environment'.

neoliminal

Re: Would someone be interested in programming....

Post by neoliminal » Thu Sep 20, 2007 1:40 pm

What I've got is a very low level system for evaluation of initial piece values. Not for computer use, but more likely for human reference (although I can't say for sure that a computer wouldn't find it useful...)

The process is not complicated and can be done by hand (although tediously), but I would rather have a program where you could enter an arbitrary piece and have the process evaluate it. This would give me a better sense of if the system works or if it needs tweaking.

Does that make more sense?

User avatar
hgm
Posts: 24731
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: Would someone be interested in programming....

Post by hgm » Thu Sep 20, 2007 2:10 pm

Yes, it does. Doesn't sound like very much work either, for so far I can see without knowing your system.

neoliminal

Re: Would someone be interested in programming....

Post by neoliminal » Thu Sep 20, 2007 3:13 pm

Well if anyone is interested I'll share the system with you. Honestly it's probably 2 hours of work to get it running. I just am not enough of a programmer to make something like this easily.

nczempin

Re: Would someone be interested in programming....

Post by nczempin » Thu Sep 20, 2007 3:16 pm

neoliminal wrote:Well if anyone is interested I'll share the system with you. Honestly it's probably 2 hours of work to get it running. I just am not enough of a programmer to make something like this easily.
you can probably do it with just Excel or OpenOffice-Calc.

neoliminal

Re: Would someone be interested in programming....

Post by neoliminal » Thu Sep 20, 2007 3:18 pm

Unfortunately yes and no.

It does require a board configuration to test against.

I have done it by hand and did use a spreadsheet to calculate values, but again, this was tedious...and prone to error as someone pointed out to me later. (Very embarrassing)

User avatar
Ovyron
Posts: 4392
Joined: Tue Jul 03, 2007 2:30 am

Re: Would someone be interested in programming....

Post by Ovyron » Fri Sep 21, 2007 8:53 am

mjlef wrote:The evaluation is based on things like mobility, board topoplogy and the goal of the game. In otherwords, nonsense, but it is fun to see what it comes up with!
It could be fun, but it could also be a waste of time. When I was creating my chess variant Pawnmate, I noticed that Zillions played it really bad, and then I went to check the piece values.

The reason was that the Spurious (A piece combining the moves of the pawn and the king, including promotion) was evaluated with a value of over 10000 (A knight in zillions is valued around 5000), when actually its value should be lower than 6000, because you start with 8 Spurious, and they go in the way of each other, lessening their strength.

The reason for the high value was the many moves the piece could do, and the way they were implemented, as it seems Zillions values the pieces on how you code them (So 2 identical pieces may have a very different value depending on how you implement them).

The only way to fix this was to add "invisible" moves to all the other pieces so Zillions would over-value all of them equally, but this proved to be a tiresome task so I gave up.

(To check this, go to a game that Zillions plays badly and check the value it gives to the pieces).
Your beliefs create your reality, so be careful what you wish for.

Post Reply