Sunday, November 01, 2009

PGN viewer almost ready

On my quest to find the pot with gold I'm almost ready with my new PGN-viewer. It took me 3 days of programming and I need another few hours. Of course only when it is finished the actual work begins: writing analysis-algorithms that answer my questions.

In the comments on a previous post there were different methods proposed to find the static value of a piece. A static value is some kind of average based on a statistical method. What I'm looking for though is the dynamic value of a piece. Based on what a piece actual does in a position. In the corner a rook sometimes has merely the same function as a pawn, just covering the pawn in front of him. Especially if he has little prospect in the future his value is about 1 (pawnunit, that is) . While a rook that is about to deliver mate has a value that approaches infinity. Usually the dynamic value will be hoovering somewhere in between and can change drastically during the game.

The algorithms I intend to write are meant to shed light on how it can be calculated what a piece actually does and how to calculate its future prospects. Since that is what you want to maximize.


  1. Tempo, if you have not done so already, you might want to take a look at this gentleman's work.


  2. Howard,

    thanks for pointing that out. I read it with great interest. Indeed our ideas have a lot in common. It encourages me to have a good think first before I start programming. John Jerz made a few mistakes and without reading him I might have fallen into the same traps, due to laziness of mind. Now I can avoid that.

    At the same time I consider a few things to be a flaw in his method.

    The first thing is that he uses a system of bonuses. That is very ugly. Since 20 types of different bonuses introduces a lot of complexity. I try to look after what all these different topics have in common. If you can find the common factors, the equation will have only two or three variables. Sofar I have found two of them: Space and tempo's.

    Second, you have to abandon the searchtree altogether. The first reason for that is that with the use of a tree of analysis you will not be able to distingish between what part of the performance of your chessprogram originates in brute force and which part stemms from your algorithm. Secondly the method of a searchtree feels very ugly to my programming consciousness and I feel that it might well be possible to do without.

    Instead I opt for defining the maximum potential force of a piece and to think backwards in order to find the reason why a piece hasn't it's maximum potency realized. Taking away the impediments should maximize the power of the pieces.

    I'm a bit afraid that my next posts will be a bit boring since I have to wrap my mind around the basics first. Sorry beforehand.

  3. Did you ever get your PGN viewer completed? I'm looking for things to put games onto a blog site. ChessTempo PGN viewer seems to be the best so far.
    admin at

  4. Sure, you can find it here

  5. Just kidding, of course (I thought you were joking, but you aren't now I read it again). Yes, the viewer is ready. It isn't suitable for distribution though since it requires a license of Magic runtime. Besides that I build it for reasons of personal investigations. Which means it will constantly change due to new insights and new arising research questions.