Suppose I want to implement a basic algorithm such as AlphaBeta with transposition table for a deterministic game with full observability, I would need a function key(state) such that if any two states s1 and s2 are equivalent (in the sense they have similar futures, whatever the past) then key(s1)=key(s2).
I haven't found such a function in the API.
At first glance, I have the feeling that serialize() may produce different results for equivalent states. Similarly, I have the feeling that state representation may produce identical results for different states (eg in chess there are special rules about repetitions, en passant, etc...)
Have I missed something ? (sorry if this is the case)
Suppose I want to implement a basic algorithm such as AlphaBeta with transposition table for a deterministic game with full observability, I would need a function key(state) such that if any two states s1 and s2 are equivalent (in the sense they have similar futures, whatever the past) then key(s1)=key(s2).
I haven't found such a function in the API.
At first glance, I have the feeling that serialize() may produce different results for equivalent states. Similarly, I have the feeling that state representation may produce identical results for different states (eg in chess there are special rules about repetitions, en passant, etc...)
Have I missed something ? (sorry if this is the case)