Tuesday, March 29, 2005
I knew it!
One or two of my reductions are buggy. From my test it has to be my implementation of Tord's probably FH pruning and/or my statistical pruning. Both with good results in previous tests. Now they both got the results very low when on and very high when off:
- AlaricNoTo........26,5
- AlaricNoSt.........20,5
- AlaricSt................6,5
- AlaricTo...............6,0
- St...............116,5
- To..............110
Compare with IID for instance that got 131
So I turned them off and started a "deeper" look.
Thursday, March 17, 2005
Lübeck this time
Went to Lübeck. No Alaric here but the test will be running...
It happened again!
I corrected a bug and the program went worse...
What does that indicate? I suppose that there is another bug that interference with the other. So now I will start a big test. Described below.
The bug
In the Quiescense I should have something like this:
pmove=GenMoves(....) // will set pointer to first pmove
while (pmove->ok) {
....MakeMove(pmove)
....pmove=GenMoves(....) // will set next pmove pointer
}
the bug was that I had MakeMove(pmove++) meaning that every second capture was removed from Quiescense!
When I fixed this bug the program went worse. At least in my first tests.
The big test
I suspect that one of my extensions/prunings are the source for this. The tournament will consist of:
What does that indicate? I suppose that there is another bug that interference with the other. So now I will start a big test. Described below.
The bug
In the Quiescense I should have something like this:
pmove=GenMoves(....) // will set pointer to first pmove
while (pmove->ok) {
....MakeMove(pmove)
....pmove=GenMoves(....) // will set next pmove pointer
}
the bug was that I had MakeMove(pmove++) meaning that every second capture was removed from Quiescense!
When I fixed this bug the program went worse. At least in my first tests.
The big test
I suspect that one of my extensions/prunings are the source for this. The tournament will consist of:
- AlaricAll (Everything on)
- AlaricClean (No nothing on. Just search)
- AlaricHa (Hashtab on - nothing else)
- AlaricSt (Statistical prune on - nothing else)
- AlaricTo (Tords Prob FH pruning on - nothing else)
- AlaricIID (IID on - nothing else)
- AlaricSEE (SEE on - nothing else)
- AlaricPV (FullPV on - nothing else) No prune if (beta-alpha>1)
- AlaricDr (Draw detection on - nothing else) Detect eternal draws
- AlaricNoHa (Everything on except Hashtabs)
- AlaricNoSt (Everything on except Statistical pruning)
- AlaricNoTo (Everything on except Tords ProbFH pruning)
- AlaricNoIID (Everything on except IID)
- AlaricNoSEE (Everything on except SEE)
- AlaricNoPV (Everything on except Full PV)
- AlaricNoDr (Everything on except Draw detection)
Wednesday, March 16, 2005
Back to business...
After a few wonderful weeks in Brazil I'm back in Sweden and now when Terra 3.4 is finally released I can go back to Alaric development again!
- The endgame development will continue
- Search & move order tricks are constantly under test.
BTW. Where do all the new very strong engines come from? A new engine today is much stronger than any new engine 3 years ago (Ruffian not counted...)
Starting up
I've changed my development log at the Alaric site to a blog.
This will make it easier for me to make fast updates of the log.
The Alaric updates, though, will be as hard as before I'm afraid...
This will make it easier for me to make fast updates of the log.
The Alaric updates, though, will be as hard as before I'm afraid...