We are talking about initialization of the Zobrist table. That will happen
once per execution of the program; or even just once ever, if he just
generates the table and hard-codes it into the program --which is what I do.

Álvaro.



On Fri, Oct 16, 2015 at 10:29 AM, Igor Polyakov <weiqiprogramm...@gmail.com>
wrote:

> If you're only getting 1000 table generations a second, you should look
> into your algorithm. You should get at least 100,000 table generations a
> second!
>
>
> On 2015-10-16 7:21, Álvaro Begué wrote:
>
> That sounds kind of obsessive. I think the probability of having a 0 or
> repeated numbers in the table is about 3.18*10^-15 (someone else please
> check my math). To generate some intuition for how small this number is, if
> you did this a thousand times per second, the expected time to finding a
> problematic table is about 10,000 years.
>
> Álvaro.
>
>
>
> On Fri, Oct 16, 2015 at 9:59 AM, Gonçalo Mendes Ferreira < <go...@sapo.pt>
> go...@sapo.pt> wrote:
>
>> I'm currently using random numbers ensuring they are not 0 or repeated in
>> the table, for obvious reasons. I suspect the next step for those
>> interested would be ensuring each bit has a similar ratio of occurrences,
>> or bruteforcing it.
>>
>> On 16/10/2015 14:51, Álvaro Begué wrote:
>>
>>> Btw does anyone have a good initialization vector for the Zobrist table?
>>>>
>>> The obvious thing to try is random numbers. Another idea is turning your
>>> Zobrist key into CRC64, which I think is what you get if you generate
>>> your
>>> numbers like this:
>>>
>>> #include <cstdio>
>>>
>>> int main() {
>>>    unsigned long long const P = 0x42F0E1EBA9EA3693ull;
>>>    unsigned long long h = P;
>>>    for (int i = 0; i < 1000; ++i) { // Or as many as you need
>>>      std::printf("%016llx\n", h);
>>>      h = (h & 0x8000000000000000ull) ? (h << 1) ^ P : (h << 1);
>>>    }
>>> }
>>>
>>>
>>> Álvaro.
>>>
>>
>> _______________________________________________
>> Computer-go mailing list
>> Computer-go@computer-go.org
>> http://computer-go.org/mailman/listinfo/computer-go
>>
>
>
>
> _______________________________________________
> Computer-go mailing 
> listComputer-go@computer-go.orghttp://computer-go.org/mailman/listinfo/computer-go
>
>
>
> _______________________________________________
> Computer-go mailing list
> Computer-go@computer-go.org
> http://computer-go.org/mailman/listinfo/computer-go
>
_______________________________________________
Computer-go mailing list
Computer-go@computer-go.org
http://computer-go.org/mailman/listinfo/computer-go

Reply via email to