1. Esports World Cup 2025 13:00 | Шахматные звезды 5.0 | Дубов - Ниманн
    Тур чемпионов. Финал top!! | ЧМ рапид + блиц 25 top!!
    Последний довод короля Книга - NEW!
    Очень СКОРО переезжаем. Оставайтесь с нами!

Тестовый турнир четырех версий Тоги

Discussion in 'Машинное отделение' started by NS, 19 Dec 2006.

  1. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Четыре версии.
    одна секунда на ход, 2 секунды на ход, 3 секунды на ход, 4 секунды на ход.
    Исходя из результата посчитаю прибавку силы на двухкратном увеличении скорости (либо времени на обдумывания)

    Результаты Тестовых групп (CEGT) показывают что разные движки (сильные движки) имеют примерно одинаковую прибавку силы при увеличении контроля.

    Но данный тест немного искажен, так как играет одна и та-же программа, только с разными установками.

    Васик считает что увеличение времени в два раза прибавляет около 70 пунктов Эло.
    Мои расчеты по рейтингам SSDF, и реультаты тестовых матчей версий Анечки между собой показывают примерно то-же самое (больше 50 пунктов Эло)
     
  2. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    заодно на этих результатах проверю три формулы для расчета рейтинга.
    Линейные системы, систему Эло, и немного искаженную формулу Эло (формулу BayesElo)
     
  3. варяг
    Оффлайн

    варяг Учаcтник

    Репутация:
    0
    Так считает не только Васик :) Это давно всем известно. И относится это не только к сильным движкам :) Я тестировал свой не сильный - результат тот-же
     
  4. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Давно всем известно что? :)
    А каков результат теста движка?
    Есть предположение что в матчах одного движка с разными контролями - разница будет значительно больше :)
    И если это известно всем, то почему говорит об этом только Васик? :)
    И около 70 пунктов - это не цифра :)
    с 95% процентной достоверности на тестах сильнейших движков прибавка от удвоения [63,82] пунктов - вот это цифра :)
     
  5. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Уже неподтвердились как минимум два факта.
    1. Некоторые сильнейшие движки сильнее играю в блиц, а некоторые с длинными контролями
    Нет, похоже это не так, какова разница силы в блиц, такая-же и с длинными контролями, у всех сильнейших движков сила с увеличением контроля растет примерно одинаково, что показывает что нет смысла тратить время и сравнивать их на длинных контролях. Достаточно блица.
    2. Середнички при увеличении контроля начинают догонять лидеров по силе.
    Нет, никто никого не догоняет :) При увеличении контроля середнячки начинают еще сильнее отставать, и в отличии от Элиты - некоторые из них лучше в блиц, а некоторые лучше играют с длинными контролями.

    А у слабых движков прибавка силы от удвоения контроля значительно меньше чем у лидеров.
     
  6. варяг
    Оффлайн

    варяг Учаcтник

    Репутация:
    0
    Вот это: "что увеличение времени в два раза прибавляет около 70 пунктов Эло"

    Тебе конкретные цифры нужны? Время будет поищу, если результаты сохранились - сообщу. Тестировал давно

    Согласен, как правило так и есть. Правда слово "значительно" каждый понимает по своему :)

    Задолго до Васика об этом говорилось в книге "Behind Deep Blue". Нужна ссылка на конкретную страницу?

    Ну так это около 70 и получается :) А почему [63,82] и 95%? Откуда такие цифры? Это данные Васика или ты сам изобрел их?
     
  7. Dallaylaen
    Оффлайн

    Dallaylaen Константин Уварин

    Репутация:
    0
    А правда, как может движок обыграть себя же в таких условиях? Разве что дыра в ОФ... Типа перемудрит с длинным контролем, многие знания — многие скорби...
     
  8. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    95% - это общепринятая цифра. [63,82] это доверительный интервал, его и нужно посчитать. Сейчас он не подсчитан. 70 пунктов - отлично, кто считал, и где сам расчет?

    Deep Blue??? Во времена Дип Блю переборные алгоритмы были хуже, и есно сейчас прибавки другие.
    Так что если эта цифра идет от Дип Блю - то её нужно как раз пересматривать.
    Где результаты тестов на основании которых они подсчитали эту цифру?
    Или это так-же как и заявления ChessBase о прибавке 70 пунктов силы от применения четырехфигурных ЭБ? Кому-нибудь удалось пощупать эти 70 пунктов? :)

    Раньше вообще говорили что при длинных контролях прибавки от удвоения быстродействия меньше, чем при которотких... А сейчас? Так разные прибавки в зависимости от контроля? или всё-таки 70 пунктов? Или может восемьдесят? :)
     
  9. Kirr
    Оффлайн

    Kirr Staff Member Команда форума

    Репутация:
    8
    Сергей, можно узнать откуда сделаны эти выводы? И так же, где вы провели границу между сильнейшими и середнячками? (хотя бы примерно).
     
  10. варяг
    Оффлайн

    варяг Учаcтник

    Репутация:
    0
    Не 70, а около 70 :)

    Есно результаты они не публикуют. Это только со слов авторов :)
     
  11. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Ничего естественного в этом нет.
    Когда результаты не публикуют - это говорит о том что их просто нет!
    70 пунктов - это цифра взятая с потолка, примерная прикидка.
    Так-же может оказаться что это не 70 пунктов, а 100, а может и 50.
     
  12. варяг
    Оффлайн

    варяг Учаcтник

    Репутация:
    0
    Будем с нетерпением ждать пересмотра прибавок. Сомневаюсь, что будут кардинальные отличия, хотя от методики тестирования тоже многое зависит
     
  13. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Методика тестирования должна быть общепринятая.
    Пока примерная прикидка, а вообще нужно проводить большие матчи с тестовыми наборами движков.
    Пока я запустил небольшой турнир на 900 партий - но тут и партий мало, и соперники не те - всё-же играет одна и таже программа...
     
  14. варяг
    Оффлайн

    варяг Учаcтник

    Репутация:
    0
    Общепринятая кем? Обществом? Сообществом шахматных программистов? Этим форумом? Клубом любителей гольфа? :) Это вообще не реально. Уж тогда, наверное, проводя тестирование, нужно говорить, что оно проводится с таким-то набором движков, условия тестирования такие-то (оболочка, время, дебютная библиотека/начальные позиции и т.д.), кол-во партий такое-то и результат такой-то. А договориться об общепринятой методике тестирования со всеми заинтересованными сторонами вряд-ли удастся, хотя хотелось бы конечно

    Не понятно, ты запустил небольшой турнир на 900 партий, в котором играет одна и та же (ОДНА!) программа? :)
     
  15. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Всё написано в заголовке ветки.
    Играет одна программа, четыре версии с четыремя разными контролями.

    Общепринятая - это общепринятая. Общепринятая методика тестирования движков - это не принятая кем-то, а та, которую все используют. А все использует тестовые матчи с набором соперников.
     
  16. варяг
    Оффлайн

    варяг Учаcтник

    Репутация:
    0
    Да, и с разными условиями тестирования :)
     
  17. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Ну-ну... и в чем у них разница в условиях?
     
  18. варяг
    Оффлайн

    варяг Учаcтник

    Репутация:
    0
    Оболочки у всех тестрирующих одинаковые? А настроены оболочки у всех тестеров одинаково? А тестируют из каких начальных позиций? С какими книгами? А ЭБ используются? Какие? А у движков какие настройки, по умолчанию? Или такие, какие тестирующий считает наиболее оптимальными? А партии-двойники включаются в подсчет итоговых результатов? Это речь идет не о твоем конкретном турнире, а о той самой желаемой общепринятой методике. Манипулируя вышеназванными параметрами проведения тестовых турниров можно получить очень разные результаты, не так ли? В общепринятой методике должно быть все это прописано, а как это сделать?
     
  19. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Какие книги? Какая разница какая оболочка? Оболочка не играет в шахматы.
    Во всех движках настройки по-умолчанию с отключенным обучением, но при чем тут настройки? Мы не тестируем силу движков, а тестируем прибавку от изменения быстродействия.
    Откуда партии двойники возмутся на наборе тестовых позиций?
    Что значит манипулируя? Манипулировать можно только в том случае если необходимо выйти на какие-то цифры, когда тестированием занимается заинтересованное лицо.
     
  20. варяг
    Оффлайн

    варяг Учаcтник

    Репутация:
    0
    Книги - это дебютные библиотеки

    В шахматы оболочка не играет, но иногда принимает решение об исходе партий (например, засчитывает поражение за просрочку времени (падение флага)). Может так случиться, что на определенном (быстром) контроле времени более медленный движок будет все время ронять флаг просто из-за тормознутости оболочки. У меня неоднократно так было в Арене. Результат, конечно, исказится.

    Возьмутся оттуда, что тестировать можно (и лично я так делаю) не на наборах тестовых позиций, а из начальной позиции на доске в шахматной партии, т.е. из позиции rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1 и с использованием дебютной библиотеки

    Нет, не только. Манипулировать можно и от незнания и от желания получить "более точные результаты" (Мы же не знаем заранее квалификацию того, кто проводит тестирование). Но и заинтересованных лиц найдется немало. Наверняка найдется тот, кто скажет что-то типа: "Мой движок при увеличении быстродействия в 2 раза усиливается не на N пунктов ЭЛО, а на M пунктов", где M>N
     
  21. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    По пунктам.
    1. Какие книги? Используются наборы начальных позиций, например Nunn.
    2. Ничего оболочка не засчитывает. Достаточно посмотреть первый пост.
    У любого нормального челоовека не возникнет сомнений что в оболочке стоит контроль с запасом (у меня час на партию)
    3. Откуда такая уверенность что нужно тестировать не на наборах тестовых начальных (дебютных) позиций?
    4. Странный пост - в этой ветке написано, что сильнейшие движки усиливаются одинаково.
    На форуме есть ветка, где произведены расчеты по результатам CEGT, кто скажет, какой движок?
    Тестирую я, и Анечка в тестировании не участвует, и считается средняя цифра прибавки, никто не собирается сравнивать сильнейшие движки между собой - достаточно того что они растут примерно одинаково.
     
  22. варяг
    Оффлайн

    варяг Учаcтник

    Репутация:
    0
    В посте 18 сказано об этом, повторю еще раз. Речь идет не о твоем конкретном турнире, а о той самой желаемой общепринятой методике. "Общепринятой" - это твое выражение. С твоим турниром все понятно. Меня интересует, что это будет за общепринятая методика? Та методика, как у тебя сейчас? Есть много других вариантов. И как эта методика станет общепринятой? Вот ты, например скажешь: "Ребята, давайте тестировать прибавку вот так, как я это делаю". Я, например, скажу: "Ок, не возражаю". А Васик (или еще кто-то), скажет: "Не-а, я тестирую прибавку по другому! И результаты у меня тоже другие!" Где правда? Как эту (или какую-либо другую) методику сделать общепринятой?

    Уверенности никакой. Я только сказал как я делаю. Но ведь то-же можно спросить: Откуда такая уверенность что нужно тестировать на наборах тестовых начальных (дебютных) позиций? Потому что они считаются сбалансированными? Я читал об этом, но кто и как это доказал? Или может быть для того, чтобы исключить влияние влияние разыгрывания дебюта? Но опять-таки, кто и как это доказал, что тестовые позиции лучше, чем разыгрывать партию по дебютной библиотеке?
     
  23. NS
    Оффлайн

    NS Нефёдов Сергей баннер

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

    Чтоб сказать что результаты будут другие - нужно
    1. Это обосновать.
    2. Решить раз и навсегда, что не нужны никакие тесты, никакие турниры - и начать наконец всё тестировать самостоятельно. :)

    Преимущество набора тестовых позиций над библиотеками понятны без всяких экспериментов, так как дебютная библиотека тот-же набор тестовых позиций, но с внесенным элементом погрешности.
    Оболочка влиять не может, так как в процессе игры она вообще не участвует, а шлет время программе переходник, и шлет его командой go movetime

    Набор тестовых движков? Просто все сильнейший движки (последние версии) поддерживающие протокол UCI, с настройками по-умолчанию, и с оключеным обучением. Есть другие варинты? Будем тестировать прибавку сильнейших движков на тестах не сильнейших движков? :)
     
  24. WildCat
    Оффлайн

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

    Репутация:
    0
    Впервые прибавку от увеличения быстродействия определили SSDF. По их расчетам получилось, что разные движки усиливаются от 50 до 70 пунктов Эло. С тех пор все с ними соглашаются.
     
  25. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    С тех появились новые селективные методы, и значительно улучшили сортировки в программах.
    Пока о результатах говорить рано, но предварительно Тоги между собой показывают прибавку больше 70-ти пунктов.
    Надо было наверно сразу запустить турнир на несколько разных движков...
     
  26. Kirr
    Оффлайн

    Kirr Staff Member Команда форума

    Репутация:
    8
    Я не согласен. Если движок при разработке интенсивно тестировался на наборах позиций (например Nunn2), то сила движка на этих позициях будет выше чем на произвольных дебютных позициях (сила относительно других движков) - то есть будет внесена систематическая погрешность. Не говоря уже о такой возможности разработчика как встраивание мини-книжки для игры из позиций Nunn.

    Конечно можно сделать собственный набор позиций, но никто не мешает автору движка так же заточить движок под этот набор к следующей версии.

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

    Поэтому я предпочитаю тестировать с достаточно большой дебютной книжкой, общей для всех движков. Да, вносится некоторый элемент случайности, но зато мы свободны от систематических погрешностей.
     
  27. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    А я поэтому и не использую Nunn2 :)
    И погрешности не будет. Если движок тестировался на конкретном наборе позиций... ну и что?
    Мы же не сверяем движки между собой, а проверяем на конкретном движке влияние быстродействия (времени) И если ему удобна позиция с коротким контролем, то настолько-же удобней будет и с длинными контролями.

    То есть ты говоришь о сравнении силы разных движков, и о возможном влиянии удобства набора дебютных позиций, но я то не сравниваю силу разных движков!
     
  28. Kirr
    Оффлайн

    Kirr Staff Member Команда форума

    Репутация:
    8
    Да, я говорил именно о сравнении силы движков. Для оценки влияния времени проблем у набора позиций быть не должно.. :)
     
  29. WildCat
    Оффлайн

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

    Репутация:
    0
    Проще просто усилить движок, чем заточить его под набор позиций.
     
  30. WildCat
    Оффлайн

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

    Репутация:
    0
    Нет. Сравнение движка с самим собой тоже интересно.
    Кстати, я поставил на >100 именно в расчете на это.
     
  31. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    пока больше 70-ти, но меньше ста. (без программы тяжело точнее прикинуть) Но сыграно всего 115 партий.
    Еще не дописана программа для подсчета увеличения, доверительных интервалов, и сравнения трех систем расчета мат. ожидания результата...

    В Крафти были добавлено несколько дебютных паттернов в оценку...
    Скорей всего он налетел именно на наборах, хотя кто знает :)
    Я пытался корректировать игру в дебюте именно на Nunn2, поэтому использую другой набор :)
     
  32. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    пока немного больше 100 пунктов.
    Текущий результат:

    1 Toga 4s : 2309 69 (+ 33,= 30,- 6), 69.6 %

    Toga II 1.2.1a 1s : 23 (+ 15,= 7,- 1), 80.4 %
    Toga II 1.2.1a 2s : 23 (+ 10,= 10,- 3), 65.2 %
    Toga 3s : 23 (+ 8,= 13,- 2), 63.0 %

    2 Toga 3s : 2255 69 (+ 24,= 35,- 10), 60.1 %

    Toga II 1.2.1a 1s : 23 (+ 13,= 10,- 0), 78.3 %
    Toga 4s : 23 (+ 2,= 13,- 8), 37.0 %
    Toga II 1.2.1a 2s : 23 (+ 9,= 12,- 2), 65.2 %

    3 Toga II 1.2.1a 2s : 2171 69 (+ 14,= 33,- 22), 44.2 %

    Toga II 1.2.1a 1s : 23 (+ 9,= 11,- 3), 63.0 %
    Toga 4s : 23 (+ 3,= 10,- 10), 34.8 %
    Toga 3s : 23 (+ 2,= 12,- 9), 34.8 %

    4 Toga II 1.2.1a 1s : 2065 69 (+ 4,= 28,- 37), 26.1 %

    Toga 4s : 23 (+ 1,= 7,- 15), 19.6 %
    Toga II 1.2.1a 2s : 23 (+ 3,= 11,- 9), 37.0 %
    Toga 3s : 23 (+ 0,= 10,- 13), 21.7 %

    Рейтинг посчитан ЭлоСтат, но его в расчетах я использовать не буду, будет произведен расчет по индивидуальной статистике.
    Расчитаю вероятность исхода при каждом увеличении на удвоении контроля (с некоторым шагом, например в 0.1 пункт Эло), и соответственно будет посчитана наиболее вероятноятная прибавка, мат. ожидание прибавки и доверительные интервалы.

    Формула для расчета рейтингов в зависимости от прибавки Константа + Прибавка * ln(Время_на_ход) / ln(2)
     
  33. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    пока, по 158 партиям.
    По линейной системе MatOj:=0.5+Elo/800;
    Методом минимизации суммы квадратов отклонений по результатам шести микроматчей:
    Удвоение дает 126 пунктов, сумма квадратов отклонений 3.48

    по системе Эло 120 пунктов, сумма квадратов отклонений 3.93


    Странный результат - может действительно линейные системы лучше? Или просто пока мало партий?
     
  34. stirlitz
    Оффлайн

    stirlitz баннер

    Репутация:
    13
    А разве не надо этот результат разделить на два? Ведь они играют между собой...
     
  35. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Нет конечно :)
    У меня же смотрится именно разница в силе, и по разнице считается мат. ожидание результата.
    То есть если удвоение дает 100 пунктов, то относительная сила
    1s:0
    2s:100
    4s:200
    То есть ожидаемый результат матча 1s/2s расчитывается из разницы в 100 пунктов и т.д.
    Где тут можно поделить на два? :)