Белка

Тема в разделе "Машинное отделение", создана пользователем WildCat, 3 ноя 2007.

  1. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Контроль каждый берет тот, который считает наиболее удобным, но не менее 1+1.
    На этой стадии развития Белки эти слабые движки вполне годятся для тестирования.
    Я не совсем понял о чем речь. Стрелка не поддерживает эндшпильные таблицы. Не может она обращаться к таблицам Шреддера.
  2. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Это по турниру из 36 партий? Шутить изволите? :)
    Вроде должна занижать. Сейчас посмотрю в чем там дело.
  3. VP Учаcтник

    • Участник
    Рег.:
    06.05.2007
    Сообщения:
    181
    Симпатии:
    0
    Репутация:
    0
    Адрес:
    Красноярск
    Оффлайн
    Налимова ТВ тож пока нет поддержки?
    Я по оболочке хотел спросить, мож кто знает, можно ли прерывать турнир-вызов, например с 45 деб. позицией прервать.
    Потом когда открываем турнир доигрывать, с какой он начинает играть дебют? с 45 ? или с 1 снова?
    Мои предложения по замене движков 9-10 остаются, надо заменить их на Zappa-Mexico, Fritz10
  4. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Заменил Аларик на Заппу. Будем тестировать на этом наборе!
    Никаких кривых Фрицев нам не нужно. :cool:

    Все нормально занижается.
  5. Orlov Учаcтник

    • Участник
    Рег.:
    27.02.2007
    Сообщения:
    177
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    На двух и более ядрах возможен запуск нескольких тестовых турниров в разных оболочках (естественно без mp версий и пондеринга). Я пробовал на Core2Duo запускать одновременно два турнира используя интерфейсы Chessbase и Shredder Classic. Падение скорости движков не наблюдалось, а если и было, то незначительное, зато кол-во партий *2 :)
  6. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    Код:
    1' 1"
    
    Shredder 11 UCI   - Strelka 1.8 UCI     60.5 - 39.5    +49/-28/=23    60.50%
    Shredder 11 UCI   - Belka 1.8.7         47.0 - 53.0    +30/-36/=34    47.00%
    Шредер сильнее Стрелки, но слабее Белки...

    Партии матчей с Рыбкой и Шредером тут: http://slil.ru/25063306
  7. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Партии лучше кидайте в мыло.
  8. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    у меня глючит почта
  9. Fruit Александр

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    12.02.2006
    Сообщения:
    2.201
    Симпатии:
    64
    Репутация:
    3
    Оффлайн
    У меня Белка идёт на 45, 14% после 72 партий с Shredder 11 UCI
  10. VP Учаcтник

    • Участник
    Рег.:
    06.05.2007
    Сообщения:
    181
    Симпатии:
    0
    Репутация:
    0
    Адрес:
    Красноярск
    Оффлайн
    Код:
    Q6600@3600MHz, 3'+1"
    
                                     1234567890123
    1   Belka 1.8.7            2700   1111100½½01½1   8.5/13
    2   Crafty 21.6BH x64-smp  2600  0000011½½10½0    4.5/13
    Не помогли Лукавому_ 4 ядра и х64
  11. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    Закончил матч 1+1 с Наумом. Для наглядности приведу все свои результаты на сегодня:

    Rybka 2.3.2a 32-bit - Strelka 1.8 UCI 65.5 - 34.5 +48/-17/=35 65.50%
    Rybka 2.3.2a 32-bit - Belka 1.8.7 62.5 - 37.5 +43/-18/=39 62.50%

    Shredder 11 UCI - Strelka 1.8 UCI 60.5 - 39.5 +49/-28/=23 60.50%
    Shredder 11 UCI - Belka 1.8.7 47.0 - 53.0 +30/-36/=34 47.00%

    Naum 2.2 - Strelka 1.8 UCI 47.5 - 52.5 +33/-38/=29 47.50%
    Naum 2.2 - Belka 1.8.7 37.0 - 63.0 +17/-43/=40 37.00%

    Если судить по этим 600 партиям, то небольшой прирост силы есть.
    Партии с Наумом - http://slil.ru/25066122
  12. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    По этим партиям прирост довольно значительный. Интересно, что покажут партии других тестеров.
  13. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    Игорь, Юрий! Может еще какие смелые идеи есть? Давайте тестить! Рыбу догонять надо!
  14. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Для начала надо систему тестирования наладить. :)
  15. Осипов Юрий Учаcтник

    • Участник
    Рег.:
    18.06.2007
    Сообщения:
    399
    Симпатии:
    475
    Репутация:
    11
    Адрес:
    Правда
    Оффлайн
    Ну а пока нет отлаженной системы тестирования, придется действовать методом грубой силы - гонять тысячи партий. У меня уже накопилось шесть версий Стрелки, в каждой из которых внесено небольшое изменение по сравнению с версией 1.8. Хотелось бы их проверить. В принципе, могу их покласть на какой-нибудь ifolder, но лучше - пишите мне на почту: [email protected].

    Да, Игорь, хотел бы уточнить - что конкретно ты сделал в Белке - какой диапазон стадий партии используется, и какова окончательная формула расчета оценки?
  16. Fruit Александр

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    12.02.2006
    Сообщения:
    2.201
    Симпатии:
    64
    Репутация:
    3
    Оффлайн
    Я уже 5 матчей наиграл с Белкой. Теперь со Стрелкой такие же наиграю за 4-5 дней. Посмотрим, что получится.
  17. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Оставил 25 стадий партии, как и должно было быть (закомментировал строчку в emater.c, где они размножаются до 65).
    Интегральня оценка считается так:
    Код:
      phase = flags >> 4;
      value = ((phase * endgame + (24 - phase) * opening) / 24) >> 5;
    Похоже что с этим изменением лучше играет в дебюте.
  18. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    WildCat, как вы в целом представляете себе "отлаженную систему тестирования"?
  19. Осипов Юрий Учаcтник

    • Участник
    Рег.:
    18.06.2007
    Сообщения:
    399
    Симпатии:
    475
    Репутация:
    11
    Адрес:
    Правда
    Оффлайн
    Игорь, спасибо за комментарий. Значит, из моих шести новых версий одну можно исключать - я там сделал точно то же самое. И прогон по тестовым позициям почти совпал.

    Хотя - оценки все-таки иногда отличаются на одну сотую, и число узлов чуть другое, но это уже мелочи. Хотя и интересно - почему бы это? Может, ты еще что-то слегка изменил?
  20. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Больше вроде ничего.

    Я в первом посте постарался описать.
  21. Осипов Юрий Учаcтник

    • Участник
    Рег.:
    18.06.2007
    Сообщения:
    399
    Симпатии:
    475
    Репутация:
    11
    Адрес:
    Правда
    Оффлайн
    Игорь, я нашел причину расхождения между Белкой и моим вариантом, но это наводит на грустные размышления.

    У тебя написано: value = (....) >> 5;
    А у меня было: value = (....) / 32;
    Когда я поменял на >> 5 - получилась абсолютная копия Белки. Ставлю обратно деление на 32 - появляются небольшие расхождения.

    Чего-то я не понимаю в этой жизни. Всегда считал, что деление на 32 равнозначно сдвигу вправо на 5. В чем может быть глюк?
  22. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.492
    Симпатии:
    3.121
    Репутация:
    95
    Адрес:
    Москва
    Онлайн
    В отрицательных числах?
    В разных правилах дополнения для signed/unsigned?
  23. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.492
    Симпатии:
    3.121
    Репутация:
    95
    Адрес:
    Москва
    Онлайн
    И действительно:

    Код:
    #include <stdio.h>
    
    int main(int argc, char *argv[])
    {
        signed char x1 = 42;
        unsigned char x2 = 42;
        signed char x3 = -42;
    
        printf("(signed char) %d / 32 = %d\n", x1, x1 / 32);
        printf("(signed char) %d >> 5 = %d\n", x1, x1 >> 5);
        printf("(unsigned char) %d / 32 = %d\n", x2, x2 / 32);
        printf("(unsigned char) %d >> 5 = %d\n", x2, x2 >> 5);
        printf("(signed char) %d / 32 = %d\n", x3, x3 / 32);
        printf("(signed char) %d >> 5 = %d\n", x3, x3 >> 5);
        return 0;
    }
    (signed char) 42 / 32 = 1
    (signed char) 42 >> 5 = 1
    (unsigned char) 42 / 32 = 1
    (unsigned char) 42 >> 5 = 1
    (signed char) -42 / 32 = -1
    (signed char) -42 >> 5 = -2

    Компилятор gcc, режим -ansi.
    Операция целочисленного деления производит "truncation towards zero", a операция сдвига - нет.
  24. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Хаха. Т.е. ">>5" - это деление на 32, а "/32" - нет.
  25. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Хотя для ОФ, наверно, более правильно использовать загадочную операцию "/32".
  26. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.492
    Симпатии:
    3.121
    Репутация:
    95
    Адрес:
    Москва
    Онлайн
    Продолжаем курить стандарт (языка С99):

    6.5.7

    5. The result of E1 >> E2 is E1 right-shifted E2 bit positions. If E1 has an unsigned type or if E1 has a signed type and a nonnegative value, the value of the result is the integral part of the quotient of E1 / 2E2. If E1 has a signed type and a negative value, the resulting value is implementation-defined.

    Т.е., вообще говоря, хак непереносимый и никто ничего не обещает :)
  27. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Совсем ничего не обещают? Т.е. сдвиг может вообще не работать?
  28. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.492
    Симпатии:
    3.121
    Репутация:
    95
    Адрес:
    Москва
    Онлайн
    Именно так. Я на эти грабли уже как-то наступал, и зарёкся сдвигать знаковые числа.
    Кстати, результат неопределён и в том случае, если правый операнд (величина сдвига) отрицательный.
    Т.е. (x >> (-5)) != (x << 5), как бы этого иногда ни хотелось :)

    Думаю, современные компиляторы достаточно умны, и сами оптимизируют деление на небольшие степени двойки операцией сдвига, причём корректным образом для любого знака.
  29. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    Почему бы, в целях экономии времени и получения более достоверного результата не ограничиться тестированием на Рыбке? Уж если она для всех является главной мишенью. Если вырастут результаты с Рыбой, с другими соперниками они скорее всего тоже вырастут.

    Например, Райлих, по его словам, тестировал свою программу в основном на Шреддере, который был тогда №1, и соответственно был главной мишенью. В результате Рыба потом имела Шреддера, как никого другого....
  30. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Необязательно. Легко может получиться так что вырастут результаты с Рыбой, но при этом "средний результат" станет хуже.
  31. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    Но противоположное гораздо вероятней.
  32. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    И какая же здесь экономия?
  33. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    В том, что 500 партий с Рыбой статистически могут дать более надежну и полезную информацию, чем по 100 партий с 10 разными движками, нет?
  34. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    По 50 партий с 10 разными движками даст более достоверную информацию чем 500 партий с Рыбой. Доверительный интервал зависит только от количества партий (ну еще желательно чтоб соперники были близки по силе к тестируемому движку), но 500 партий с одним соперником хуже тем, что вполне возможно что мы выбрали удобный/неудобный по стилю движок.
    В итоге вместо роста силы получим антирыбку.
  35. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    сомневаюсь

Поделиться этой страницей