Page 1 of 1

Newbie questions

Posted: Thu Aug 30, 2007 10:56 am
by jarkkop
If these are answered somewhere in FAQ, please point the link.

Why/What is FEG?

Is it doing basically the same thing, but different file format?

Nalimov tablebases can't be used by Toga, because of licensing conflicts.
Could FEG be used in it?

Is there source code to access FEG tablebases similar to crafty's Nalimov access source egtb.cpp?

Is it so that you can use Nalimov/FEG tablebases e.g. in Toga if you rewrite your own "egtb.cpp"?

Or is so that bitbases are the way to go as it is at the moment?

Does anyone know if there is timetable for 6 piece bitbases?

What is 5-1 EGTB?

Re: Newbie questions

Posted: Thu Aug 30, 2007 9:09 pm
by h.g.muller
As I understand it, FEG is a commercial EGTB generator belonging to ChessMaster, which generates EGTBs in a format that is not specified and that no one knows how to use. Except ChessMaster.

5-1 EGTBs are 6-men EGTBs where on side has 5 pieces and the other side only a bare King.

Re: Newbie questions

Posted: Fri Mar 07, 2008 6:42 am
by Dhanish
jarkkop wrote: Nalimov tablebases can't be used by Toga, because of licensing conflicts.
Is this correct? Then how is it being used in Scid and Crafty?

Re: Newbie questions

Posted: Fri Mar 07, 2008 11:33 pm
by ernest
Dhanish wrote:Is this correct? Then how is it being used in Scid and Crafty?
Toga is Open Source, Crafty is not.

See http://www.opensource.org/docs/definition.php

Re: Newbie questions

Posted: Sat Mar 08, 2008 4:48 pm
by guyhaw
FEG, unwisely named the 'Final Endgame Generator' by JdK, generates FEG EGTs. They are used exclusively by CHESSMASTER and have their own indexing-scheme and format - which has not been published but has been 'cracked' by Marc B. There is no 'open source' FEG EGT access code.
I guess there needs to be agreement with Eugene Nalimov before an engine uses Nalimov EGTs. Maybe this is getting harder to get.
Bitbases can be used to preface the use of Depth-oriented EGTs like 'Nalimov' and (in theory) FEG. There is an (unknown) 6-man bitbase-plan.
5-1 EGTs exist in FEG form, and in other forms - but I haven't made sense of any of the sets of statistics yet. Verified Nalimov-style stats would be welcome.
g

Re: Newbie questions

Posted: Wed Mar 07, 2012 9:35 pm
by kes_z
Hi, another newbie here.

Suppose I have a tablebase for a certain endgame type and would like to do with it things such as:
- search/count positions containing specified pattern;
- sort won positions according to a distance to win;
- etc.

For instance, I might be interested in taking 10000 random positions from KRKP tablebase, and calculating what percentage of them are won for White if Black pawn is on rank 3.

Are there any programs that could do it, or one would have to write one him/herself? And in the latter case, is it possible to access standard tablebases for such mass queries, or perhaps it is easier to create your own tablebases (for now I need such statistics for two 5 men endgames only)?

Sorry if this is a silly question, I'm a novice programmer and up until very recently didn't know anything about tablebases.

Thanks.

Re: Newbie questions

Posted: Thu Mar 08, 2012 11:04 am
by Codeman
You should try Wilhelm. The program itself is not under development anymore but can answer all questions you asked for. It accesses Nalimov Endgame Tablebases.

The webpage can be found on the internet archive: http://web.archive.org/web/200902230947 ... nglish.htm

Should you want to create your own query program it is much easier to query existing tablebases than having to create those from scratch. Nalimov Endgame Tablebases are from my experience the most complicated to query (best just look at the source code of crafty), whilst gaviota and sorpio (bitbases) have some very straight forward dll calls. However currently if you want to also access 6-men, you are stuck with the Nalimov format.

Re: Newbie questions

Posted: Fri Mar 09, 2012 12:59 pm
by kes_z
Vow, that Wilhelm program is a real gem!

Many thanks for the link and advice.

Re: Newbie questions

Posted: Thu Mar 22, 2012 12:01 am
by kes_z
I misspelled "wow" in my previous post, obviously.

It looks like I will have to write my own program afterall. I just wanted to ask - which compiler do you use to compile gaviota tablebases files? According to the readme.txt, there are ~30 files to be compiled and linked, but I have problems with several of them. I tried gcc and MVC++ compilers. The latter one failed to compile only 3 files (wrap.c, deflate.c and trees.c). The problem seems to be with z_uInt and z_Bytef undeclared identifiers (error C2065). But I have no idea were to declare them! I tried changing, deleting, commenting them out, but that only creates additional problems.

This is actually for a university project, not an engine, so maybe I don't even need all those files? I only need the tablebases for statistics, eg., to check what percentage of legal positions containing patterns p1 and p2, but not containing p3, are won for White, and what is the average DTM. But there will have to be several thousand of such queries, possibly involving >10 patterns, that's why I want to automate this process.