Автоматический подбор параметров движка

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

  1. TopicStarter Overlay

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

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Ну ладно уж... ;)
    Он притормаживает машину равномерно. Так что вреда быть не должно.
  2. Orlov Учаcтник

    • Участник
    Рег.:
    27.02.2007
    Сообщения:
    177
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Завтра после работы запущу на ночь.
  3. Orlov Учаcтник

    • Участник
    Рег.:
    27.02.2007
    Сообщения:
    177
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    мне кажется что в большинстве случаев в эндшпиле ферзю гораздо важнее находиться на полях e4,e5,d4,d5 чем на полях a1,a8,h1,h8. Тоже касается и слона.
  4. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Ферзь в центре в эндшпиле - точно работает. В моей программе работает. Даже простейший пример - помогает выигрывать без ЭБ в эндшпиле ферзь с центральной пешкой против ферзя.
  5. Orlov Учаcтник

    • Участник
    Рег.:
    27.02.2007
    Сообщения:
    177
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    А если машина не очень быстрая? Да еще при супер коротком контроле? Возможно это будут не шахматы, а поддавки?
    Что думаешь?
  6. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Я настраивал ОФ в уголках с глубиной 3 полухода :) Глубина в шахматах будет больше даже при 10 мс. на ход на медленной машине. 5000 Nodes это в среднем около 6 полуходов. Дл настройки ОФ вполне нормально.
  7. Vertu Старожил

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

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    В ветке есть - я получил 100 пунктов Эло прибавки в своей шашечной программе именно на такой настройке. Программа в силе скакнула от Мастера до Гросса.
    Хотя я не знаю у кого текущие алгоритмы подстройки ОФ лучше.

    Вообще эффект должен быть - 10 кругов дают стабильность, то есть сила не будет падать. Прибавка может быть будет и небольшая, но она будет. Только 3 дня счета, неделя счета - это наверно всё-таки очень мало.
  9. Fruit Александр

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    12.02.2006
    Сообщения:
    2.201
    Симпатии:
    64
    Репутация:
    3
    Оффлайн
    Пока проверка. Пробуем почкование теперь....
  10. Fruit Александр

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    12.02.2006
    Сообщения:
    2.201
    Симпатии:
    64
    Репутация:
    3
    Оффлайн
    Да, я не собираюсь целыми днями музыку слушать...Просто любопытно было, что можно делать за компом, а что нельзя....Winamp загружает комп на 7-10%, думаю, это не так существенно - 2530mhz или 2200mhz мы получим.
  11. TopicStarter Overlay

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

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

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

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

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

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

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    12.02.2006
    Сообщения:
    2.201
    Симпатии:
    64
    Репутация:
    3
    Оффлайн
    конечно, продолжит...автоматика :)
  16. TopicStarter Overlay

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

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Есть еще идея попробовать как делал Марков. Не играть реальные партии (это очень долго и нужна целая сеть компов), а пытаться максимизировать число угадываний хороших ходов.
    Взять много игр хорошего качества и вперед! Так мы итерации сможем проводить намного быстрее. А в случайном поиске количество итераций это очень важно!
    Кто возьмется собрать базу партий с хорошими ходами?
  17. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Не быстрее :)
    Разница в сто пунктов дает разницу в 2% угадываний.
    Сколько нужно просмотреть позиций чтоб получить ту-же достоверность в 100 пунктов? Чем это быстрее чем набор тестовых матчей? И не получится ли подстройка под стиль?
  18. NS Нефёдов Сергей

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

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

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

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

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

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    12.02.2006
    Сообщения:
    2.201
    Симпатии:
    64
    Репутация:
    3
    Оффлайн
    Последняя версия генератора очень медленная, за счёт увеличения кол-ва игр между персоналиями. Чтобы один турнир закончился нужно 3 ночи! Так, может не только недели, но и месяца не хватить. :)
  22. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    За сутки тестируется не одна версия, а 30.
    И больше погрешность не получается. 30 версий в 4 круга. Та-же погрешность на каждой особи (100 пунктов) 1800 партий. на каждую по 100мс*100 = 10 секунд.

    18000 секунд на 30 особей.

    На тестовых партиях/позициях проверка совпадения ходов на таком-же контроле.
    30 версий*100мс*10000 позиций = 30000 секунд.

    Разница не 15минут/сутки, а в почти в раза, только немного в другую сторону :)

    Это если действительно есть 2% разницы в угадывании от прибавки 100 пунктов. Насчет точной зависимости Процента от разницы в силе можно спросить у Fruit-а, у него эти цифры есть.

    Я перед тем как начать считать на тестовых турнирах прикинул этот вариант - он ничем не лучше.
  23. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    Возьмите позиции из партий Рыбки (их много в сети) и подстраивайтесь под ее стиль. Вот и база ходов хороших. По-крайней мере, неплохих.
  24. Fruit Александр

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    12.02.2006
    Сообщения:
    2.201
    Симпатии:
    64
    Репутация:
    3
    Оффлайн
    В сети есть 2млн партий рыбки? Именно столько нужно для подстройки позиционных признаков.
  25. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Лучше уж тогда не партии Рыбки, а взять срез из MegaBase с фильтром по рейтингу.
    Но всё-равно - мне такой способ не нравится, и мне (в шашках) он точно не подходит.
    WildCat, если нужно то я вышлю в формате PGN. Только сколько партий, и на сколько ходов тебе нужно?
  26. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Это мнение Маркова :) На самом деле нужно меньше. Хотя всё-равно их нужно очень много... Хотя-бы на миллион ходов. 10000 конечно не хватит.
  27. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    Миллион ходов - это около 20-25 тыс. партий. Уж столько-то рыбкиных в сети найдется.
  28. Vertu Старожил

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    А может, имеет смысл сделать алгоритм, чтобы персоналии играли не друг с другом, а рыбкой там или с тогой? Может, Райлих так своего малька на Шреддер науськивал?
  29. NS Нефёдов Сергей

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

    А в случае набора готовых тестовых позиций - нет смысла в повторном проходе, и точнее силу уже не определить.
  30. Vertu Старожил

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

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

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    И если у разных тестеров выживут схожие персоналии, значит эта оптимизация дает приближение к базовым параметрам рыбки (или другой сильной проги)...
  33. Fruit Александр

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    12.02.2006
    Сообщения:
    2.201
    Симпатии:
    64
    Репутация:
    3
    Оффлайн
    Да, это мнение С. Маркова. Причём, он его высказал, когда я предложил ему использовать партии рыбки. На 10тыс он бы уж точно не согласился....
  34. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Три полухода... А чем набор тестовых партий с глубиной в три полухода хуже? :)

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

    • Участник
    • Старожил
    Рег.:
    22.12.2006
    Сообщения:
    972
    Симпатии:
    44
    Репутация:
    4
    Оффлайн
    Сейчас устроил матч на 3 полуходах между последними Рыбкой и Хиарксом. Счет +20-0=1. Дальше продолжать не стал...

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