Chat:Ru/2021-03-23
Uljahn: в дискорде был недавно такой вопрос, админы так и не ответили, а робостак про 10 секунд упоминал
miklla: я слышал, что несколько лет назад какой-то язык таймаутил на компиляции
miklla: пока его не обновили
Uljahn: https://discord.com/channels/466965651135922206/699972160688488468/817284986935050240
Uljahn: о, Crystal 1.0 вышел
MadKnight: Uljahn чё за крустал
MadKnight: кристал
Uljahn: растовый руби или типа того
MadKnight: ух
MadKnight: звучит адово
MadKnight: надо затестить
MadKnight: это всё же больше руби
Uljahn: извержение вулкана в Исландии онлайн: https://www.youtube.com/watch?v=BA-9QzIcr3c
Uljahn: до чего техника дошла, Automaton2000
Automaton2000: у меня в общаке смайлы не показывает
Uljahn: есть классный вариант Connect4, там два цвета и две формы фишек, надо по цвету или по форме соединять
Uljahn: по этим правилам даже чемпионаты AI проводят, вроде
MadKnight: Uljahn а мульти на CG по этой версии будет?)
tutubalin: кстати, а есть какое-то ограничение на время компиляции?
MadKnight: tutubalin ну вроде секунда на первый ход
Automaton2000: ну вот я и не знал что так можно
tutubalin: поздновато я, по уже похоже весь извергся
tutubalin: вопрос про таймауты компилиции был в связи с тем, что темплейты в С++ являются тьюринг-полными, поэтому некоторые задачи можно решать на этапе компиляции
tutubalin: попробовал сделать книгу дебютов для быков. для N от 5 до 7 получилось 16 тысяч строк
MadKnight: не люблю un-edited content
MadKnight: люблю только отредаченные и смонтированные
wlesavo: tutubalin это на какую глубину
tutubalin: глубина динамическая как только <все_комбинации>*<доступные_комбинации> становится меньше 9 миллионов, значит дальше ветку можно перебрать уже на лету
miklla: нашёл, наконец, один из серьёзных учебников по комбинаторным играм, на хрен знает какой странице гугла http://jnsilva.ludicum.org/TJ/TJ1920/Lessons_in_Play.pdf
Automaton2000: хоть гугл говорит, что существует полиномиальный алгоритм для выяснения изоморфизма двух графов степеней не выше d, но там жесть какая-то ...
miklla: ознакомился с теорией атомных весов, ну это ппц
miklla: там научились даже перемножать и делить игры
miklla: а мы тут складывать еле умеем :)
miklla: у меня есть сомнения, что я смогу такое запрогать, да ещё и в лимите на 2к строчек
miklla: (если что это подтеория теории комбинаторных игр, как раз можно применять в клоббере)
tutubalin: я вот думаю: а можно ли это как-то применить к UTTT?
miklla: вряд ли
miklla: мне известно 2 применения этих теорий
miklla: либо позиция распадается в сумму позиций, тогда вычисляем значения каждой из них и складываем, получаем значение целой
miklla: либо вычисляя значения позиций, подмечаются какие-то закономерности
miklla: вряд ли что-то такое будет в UTTTT
MadKnight: miklla чё за теория атомных весов?
miklla: дело в том, что обычно значения у позиций не очень простые, а значение большей позиции в канонической форме может даже растянуться в сотни страниц в печатном виде
miklla: идея в том, чтобы вместо этого значения рассмотреть к нему приближение в каком-то смысле, которое обычно устроено проще
miklla: но так как это приближение, то не всегда по н ему можно определить, кто выиграет
miklla: но достаточно часто
miklla: и эта теория работает только для бесконечно малых игр, а клоббер как раз из этих
miklla: и запрогать это нисколько не проще, не хотя бы вычислять значения игр :)
miklla: чем хотя бы*
miklla: (это приближение называется атомным весом позиции)
miklla: (atomic weight)
tutubalin: ну в UTTT можно каждую доску отдельно рассматривать в терминах "сколько мне ходов осталось закрыть, сколько противнику ходов осталось закрыть"
tutubalin: при этом делая ход мы переводим доску в другое состояние и одновременно даём ход противнику в другую доску
miklla: да, я знаю, но это дорога эвристик, суммы игр там нет