Турнир среди шашечных программ

Главная Форумы Шашечные программы Шашечные программы Турнир среди шашечных программ

Просмотр 15 сообщений - с 541 по 555 (из 568 всего)
  • Автор
    Сообщения
  • #362147
    Kallisto
    Участник

    Вот если Игорь сделал бы в шашки такой же интерфейс как и в шахматы, где можно один движок сразу с несколькими сравнить, то это было бы интереснее — как какие-то изменения отражаются не только на игре с более сильным соперником, но и с более слабыми.

    Хорошо :)
    Сделаешь Аврору под наш протокол, будет версия с возможностью организации турниров (гаунтлеты и круговики).
    А то мне пока это делать тоже особого интереса нет.

    #362148
    Kallisto
    Участник

    Интересный вопрос: выгружать ли движки между партиями?
    Из=за загрузки ЭБ это может оказаться медленным. Хотя если память есть, операционка должна все закешировать.
    Держать все движки все время в памяти тоже не вариант :(

    Нужно сделать какую-то общую библиотеку для доступа к ЭБ. Тогда проблем с выгрузкой/загрузкой не будет. Да и все движки получат легкую возможность получить ЭБ.

    Лично я не очень заинтересован в создании хорошей ЭБ, поэтому мои базу для этих целей не годятся. Может кто-нибудь возьмется за это хорошее дело?

    #362149
    NS
    Участник

    При использовании PVS в дереве перебора очень мало PV ветвей, поэтому считается что Удлинения в PV это всегда хорошо, и что они особо не увеличивают дерева, а всевозможные продления в PV ветвях являются практически стандартом для шахматного программирования при использовании PVS/Negascout.

    Как это делается в шахматах — можно посмотреть в исходниках Тоги/Фрукта.
    http://www.uciengines.de/UCI-Engines/TogaII/togaii.html

    То есть используются и продления в конце PV вариантов (и более мощный ФВ в PV), в PV не делается отсечений, и в PV делается намного больше продлений на ветви.

    #362150
    Kvadrat
    Участник

    Интересный вопрос: выгружать ли движки между партиями?
    Из=за загрузки ЭБ это может оказаться медленным. Хотя если память есть, операционка должна все закешировать.
    Держать все движки все время в памяти тоже не вариант :(

    Нужно сделать какую-то общую библиотеку для доступа к ЭБ. Тогда проблем с выгрузкой/загрузкой не будет. Да и все движки получат легкую возможность получить ЭБ.

    Лично я не очень заинтересован в создании хорошей ЭБ, поэтому мои базу для этих целей не годятся. Может кто-нибудь возьмется за это хорошее дело?

    Речь о матче м/у двумя движками? Желательно сделать так, чтобы оба движка пользовались одной копией ЭБ в памяти. Если движок пользуется своей ЭБ, и памяти хватает только на один экземпляр баз — разумеется базы должны поменяться местами.

    #362151
    Kvadrat
    Участник

    Дальше — давно хотел сравнить результаты разницы в скорости, для этого запустил матчи где у Авроры было больше времени чем у Каллисто 3 (вариант уточненного PV как лучшего алгоритма из используемых):

    1:1 40,5% (+3-22=75)
    2:1 39,5% (+2-23=75)
    4:1 40% (+4-24=72)
    8:1 42% (+5-21=74)

    То есть при увеличении времени (скорости) в 2 и даже 4 раза клинически значимого результата в моем случае не получено.

    Клинически значимым (ИМХО) он станет при небольших контролях.
    Какой у Вас был контроль?

    #362152
    Kallisto
    Участник

    Речь о матче м/у двумя движками?

    Речь о турнире движков, но и для матча картина, в принципе, та же.

    #362153
    AlexanderS
    Участник

    Клинически значимым (ИМХО) он станет при небольших контролях.
    Какой у Вас был контроль?

    Контроль указан перед результатом в минутах. Т.е. минимум 1 против 1 (куда уж меньше-то, хотя я перед турниром проводил матчи и по 30 сек, и по 10 для быстрого получения результатов), максимум 8 мин против 1 мин. Проц A64-3800+ (одно ядро)

    Я думаю результат обусловлен тем, что поскольку PV удлиняется на 7 п/х, плюс уточняются последние ходы варианта, а увеличение скорости в 8 раз дает прирост всего 3 п/х то во второстепенных вариантах за эту глубину заметного усиления не находится, учитывая еще и слабую ОФ.

    Игорь конечно прав что 100 партий недостаточно точно, но даже если бы удвоение скорости давало бы 20 пунктов то 8:1 результат уже должен быть бы заметным и на 100 партиях. А NS вроде высказывал мнение что удвоение должно бы приносить и больше.

    Надо будет попробовать на других модификациях алгоритма.
    Игорь — добавь раздельную установку времени для движков посмотрим что Каллисто покажет.

    Движки держать все время по-моему вполне нормальный вариант. Кроме случаев нескольких копий Каллисто с ЭБ6 :) Зато переключение будет шустрым.

    Что касается ЭБ ждем что NS скажет :) Я готов присоединиться.
    Какие-нибудь результаты по хорошему сжатию есть?
    В крайнем случае можно обнаглеть и попросить Эда Гилберта модифицировать его код под русские — у него чекерс и итальянские есть, с открытой библиотекой доступа. Вот и будет универсальная библиотека для шашек-64 :)

    #362154
    NS
    Участник

    20 пунктов разницы по сотне партий ну никак достоверно не определить… Я не считаю что больше — я сейчас примерно так и думаю — удвоение дает около 20 пунктов.
    Бренчинг Фактор в шашках (у меня) около 1.5, удвоение увеличивает глубину на 2 полухода.

    Но, если предположить что во всех программах достаточно хорошие переборные алгоритмы, то без учета близости ничейной смерти прибавка от удвоения должна быть у всех программ примерно одинакова. (такая ситуция сейчас в шахматах — практически одинаковые прибавки от удвоения у разных программ, и ранжирование с контролем 4/40 такое-же как и с контролем 40/40 либо 120/40)

    Насчет ЭБ — я попробую алгоритмы сжатия, но после выхода версии 0.04, у меня все силы сейчас уходят на расчет ОФ.

    #362155
    AlexanderS
    Участник

    Бренчинг Фактор в шашках (у меня) около 1.5, удвоение увеличивает глубину на 2 полухода.

    Насчет ЭБ — я попробую алгоритмы сжатия, но после выхода версии 0.04, у меня все силы сейчас уходят на расчет ОФ.

    А какие силы? Там же автоматика :) Я сейчас закончу переделку и как на месяц запущу считаться, и буду дальше спать :)

    Ну у тебя и фактор… Игорь, а у тебя какая цифра?
    Теоретически он должен быть 2.2, у меня пока хэш не заполнится что-то около 1.8, дальше — 2.2. Если отсечения не используешь откуда 1.5 берешь?

    #362156
    NS
    Участник

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

    То есть конечно полная автоматика, но каждое утро перед запуском провожу полную ревизию алгоритмов.

    #362157
    NS
    Участник

    У Игоря Бренчинг-Фактор примерно такой-же как у меня, и примерно такой-же как и у Дамиры.
    Сокращения/отсечения в Каллисто используются — ProbCut и LMR.

    У меня также используются сокращения, и так-же LMR и аналог ProbCut (немного другой метод сокращения по плохой оценке)

    Насчет Бренчинг-Фактора 2.2 — такой Бренчинг-Фактор получается без Хеша перекрестных позиций, с ним (с Хешем) лучше даже без сокращений. (если убрать все продления)

    #362158
    Kallisto
    Участник

    Ну у тебя и фактор… Игорь, а у тебя какая цифра?

    Меня теория мало интересует.

    #362159
    Kvadrat
    Участник

    Речь о матче м/у двумя движками?

    Речь о турнире движков, но и для матча картина, в принципе, та же.

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

    #362160
    Kallisto
    Участник

    Можно делать так. Но тогда не будет промежуточных результатов турнира, т.е. будет не так интересно.

    #362161
    Kvadrat
    Участник

    Я на работе вообще могу организовать Шевенингенскую систему, тогда турнир может в 2 раза быстрее играться. :D
    А почему такая система неинтересная? Вообще можно начать с аутсайдеров или наоборот, с фаворитов.

Просмотр 15 сообщений - с 541 по 555 (из 568 всего)
  • Для ответа в этой теме необходимо авторизоваться.