Форум » » IPPOLIT & ROBBOLITO » Ответить

IPPOLIT & ROBBOLITO

Bison: Предлагаю обсудить особенности устройства Ипполита. Все-таки некаждый день появляются сильнейшие opensource программы.

Ответов - 251, стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 All

Sentinel: Yuri, you are absolutely right. Rybka is using this nice nonlinear aggressive function, while in Robbo it is limited to TimeMax/movestogo in the most aggressive setting. That is why Robbo is taking time linearly, and always taking less. Also the absolute longest time Rybka can take is TimeMax*9/15, and for Robbo is TimeMax/2. Direct example in 40 moves time control, around 15th move, Rybka allocates 0.047*TimeMax, while Robbo allocates only 0.04*TimeMax and that only in the most aggressive setting (otherwise is half of it). This is definitively something that must be changed.

Bison: В этом интервью автор Рыбки рассказывал о WinFinder-е Я потратил много времени, работая над поиском в Рыбке 2.2, а WinFinder был небольшим экспериментом для некоторых моих идей. Я разрабатывал WinFinder всего пару дней, так что эта версия совершенно недоработана. Тем не менее, концепция создания WinFinder достаточно интересна, и в третьей версии вы увидите подобную модификацию Рыбки. Если я смогу выделить хотя бы две недели на разработку Rybka 3 WinFinder, то все будет сделано как следует. Если предположить, что корни Ипоолита (Робболита) растут из Рыбки (я в этом уверен на 99%), то возникает вопрос: В чем именно состоит «концепция создания WinFinder»? Либо это IID, чуть более продвинутая, чем у остальных, либо использование тактической составляющей ОФ при отсечениях (см. tower_dynamics->white_encoded_xray), либо что-то еще. Интересно узнать мнение поизучавших исходники.

italy_numero1: Quote: #define white_minor_stone (8<<2) #define black_minor_stone (16<<2) another better translation for pietras is flags rather than stone


kranium: great- thanks, i'll make the change

Carotino: Hello World! I am a lover of chess and Linux, where can I download RobboLito 0.085d3 for my Linux-box? There is a make-file for it?

bankuss: Carotino d3 no for linux

NS: Банкусс, а ты в D3 получение времени на timeGetTime заменил?

bankuss: NS нет uint64 clock_() { uint64 x; uint64 tt = 1000; x = GetTickCount() * tt; return x; }

NS: Лучше поменять, GetTickCount() считает не время, и какие только глюки с ним не бывают... У него одно преимущество - он быстрее, и если замена на timeGetTime не просадит NPS, то лучше заменить.

bankuss: NS почитал описание - функции похожие, только timeGetTime более точная. при простой вставке компиляция сразу выдает ошибку Ошибка 1 error LNK2001: неразрешенный внешний символ "__imp_timeGetTime" utils.obj

NS: winmm.lib

NS: http://www.gamedev.net/community/forums/topic.asp?topic_id=437577 timeGetTime "немного точнее" - MS имеет ввиду что на некоторых системах, в некоторых условиях GetTickCount может выдавать нечто даже отдаленно не похожее на время.

bankuss: сделал, скорость такая же. просадок не замечено.

NS: Сглючило меня. Совсем не время выдает PerformanceCounter, GetTickCount выдает время, но с большой погрешностью. timeGetTime обращается к таймеру напрямую, читая из него текущее значение внутреннего счетчика. Функция GetTickCount обращается к переменной в памяти, которая обновляется приблизительно раз в 16 мс. Приблизительно потому, что точно невозможно: в системе могут идти какие-то высокоприоритетные процессы, которые прерывать нельзя. Но в момент обновления в счетчик добавляется не 16, а столько, сколько реально набежало.

NS: http://www.gamedev.ru/code/forum/?id=121011&page=3 Тут человек проводил тесты функций получения времени на разных системах.

NS: Bison пишет: В чем именно состоит «концепция создания WinFinder»? Либо это IID, чуть более продвинутая, чем у остальных, либо использование тактической составляющей ОФ при отсечениях (см. tower_dynamics->white_encoded_xray), либо что-то еще. Интересно узнать мнение поизучавших исходники. Думаю что в WF просто убраны отсечения уменьшающие тактическую силу, и добавлены продления увеличивающие. И упрощена ОФ.

Sentinel: Time forfeits have nothing to do with GetTickCount(). Still 16ms is not precise enough, so in the next version there will be changes, I'm currently testing the code with QueryPerformanceCounter, and it seams to be working fine. Of course, the code compatibility is gone, but something must be scarified.

NS: http://support.microsoft.com/kb/895980 http://www.virtualdub.org/blog/pivot/entry.php?id=106

bankuss: сделал версию с родной поддержкой RB (robbobases) и даже генератор этих таблиц скомпилялся (пришлось многопоточность вырубать) но создание файлов таблиц надо коренным образом переписывать. ибо файловые системы линукса и винды отличаются, что линуксу хорошо, то винде смерть хотя он создает несколько файлов, но на генерации коня вылетает с ошибкой. (на 3-х фигурке пробую)

Кевин: bankuss пишет: сделал версию с родной поддержкой RB (robbobases) и даже генератор этих таблиц скомпилялся А ссылки будут?



полная версия страницы