mirror of
https://github.com/sockspls/badfish
synced 2025-04-30 08:43:09 +00:00
History gravity
Instead of using hard coded Min and Max values for history, always adjust the old value slightly downwards before adding a new value. The adjustment acts like gravity that prevents the value escaping too far from zero. Bench: 8020484 Resolves #407
This commit is contained in:
parent
087b638f6c
commit
7f300a7698
1 changed files with 3 additions and 3 deletions
|
@ -39,7 +39,7 @@
|
|||
template<typename T>
|
||||
struct Stats {
|
||||
|
||||
static const Value Max = Value(250);
|
||||
static const Value Max = Value(1<<28);
|
||||
|
||||
const T* operator[](Piece pc) const { return table[pc]; }
|
||||
T* operator[](Piece pc) { return table[pc]; }
|
||||
|
@ -53,8 +53,8 @@ struct Stats {
|
|||
|
||||
void update(Piece pc, Square to, Value v) {
|
||||
|
||||
if (abs(table[pc][to] + v) < Max)
|
||||
table[pc][to] += v;
|
||||
table[pc][to] -= table[pc][to] * std::min(abs(int(v)), 512) / 512;
|
||||
table[pc][to] += int(v) * 64;
|
||||
}
|
||||
|
||||
private:
|
||||
|
|
Loading…
Add table
Reference in a new issue