Chat:Ru/2022-05-31

From CG community
Jump to navigation Jump to search

wlesavo: ну у меня это самый легкий топ15 точно, просто переписал у ейлера симу, переписал у магуса коллизии, сделал какую-то версию смитси и все, буквально пара дней

wlesavo: заодно проверил как на мой визуализатор новая игра ложится, оказалось вообще без проблем, буквально пол часа и готово

wlesavo: ща еще надо столкновения оптимизировать, ато у меня всего в районе 100 сим на втором ходу на большом количестве фишек :smiley: и это еще немного оптимизировано, было вообще 20

Uljahn: кстати, по поводу визуализаций - сегодня наткнулся на целый фреймворк для RTS/TBS https://github.com/egg-west/Stratega

wlesavo: ох, ну это уж слишком, мне только линии да кружочки рисовать))

aangairbender: wlesavo а много ходов симулируешь? у меня как оказалось всего 2 хода на действия и еще 8 ходов просто wait

aangairbender: http://chat.codingame.com/pastebin/8ebf5896-c25b-4a10-9d50-adde9e9c9283

aangairbender: вот в таком конфиге (на 4 игрока) у меня 35 playouts

tutubalin: Uljahn прикольно. забукмаркал на всякий случай

wlesavo: aangairbender у меня похожая идея, 4 хода симуляции, потом 3 вейта, еще не сильно экспериментировал, с 2+8 в таком сетапе 60 плейаутов

aangairbender: wlesavo а ты пишешь на нормальных плюсах или на "си к классами"? прагмы я думаю все используют, а вот манера написания кода

aangairbender: я последние соревнования на плюсах писал, так вот по ощущениям намного проще чем на расте. На расте сейчас пишу и хочется сделать красиво (язык то позволяет) и из-за этого долго пишу

aangairbender: вообще хз как люди на плюсах пишут, посмотрел бы чей-то код для практики

tutubalin: aangairbender ну на гитхабе :) даже вот тот, который Ульян выше запостил

aangairbender: я имел в виду код для кодингейма

aangairbender: то есть учитывая -О0

wlesavo: aangairbender ну смотря что под нормальными плюсами понимать, думаю ближе к си с классами, но кое где есть темплейты итп, в большинстве случаев просто не нужно ничего. ну и конечно можно было бы сделать какие-то общие интерфейсы скелетные и реализации алгоритмов библиотечные, но мне это не сильно интересно пока, плюс надо заморачиваться потом с автоматическим собиранием этого всего в один файл

wlesavo: можешь посмотреть нетленную классику :slight_smile: https://github.com/kmyk/codingame-hypersonic/blob/master/Answer.cpp

wlesavo: там есть интересные фичи, но в целом это тяжело назвать полноценными плюсами

aangairbender: просто есть некие фишечки, например если хочется идти по вектору и удалять некоторые элементы, то можно идти с конца и свопать с последним по условию

aangairbender: в расте такая фишечка не заведется

aangairbender: зато в расте есть .swap_remove(index) у вектора, в плюсах я не нашел

aangairbender: точней в расте заведется все что и в плюсах, но это уже не совсем раст)

aangairbender: я кстати переписал когда-то uttt с плюсов на раст и был одинаковый перфоманс, потом переделал на более идиматичный раст и стало чуть медленее

aangairbender: например для отсутсвия значения использовал не -1, а Option<i32>

wlesavo: ремувать из вектора для cg вообще звучит не очень эффективной идеей

aangairbender: swap_remove же о(1) просто swap с последним и pop_back

aangairbender: я обычно просто inactive помечаю, но может фрагментацию делать иногда полезно

aangairbender: *дефрагментацию

wlesavo: а, так да, не сразу понял о чем ты, да я тоже помечаю inactive обычно, помню что как то пробовал делать дефрагментацию но ничего хорошего не придумал и было медленнее все-равно

wlesavo: YurkovAS раззадорили тебя разговорами и решил ресабмитнуть?))

YurkovAS: ресабмитить - не мешки ворочать :smiley:

wlesavo: у тебя число сим отображается это число ходов или полных плейаутов на всю глубину?

YurkovAS: 2-8 сабмитнул

wlesavo: а было?

YurkovAS: секрет а то обойдете)

wlesavo: у меня 2-8 хуже играет как-то

wlesavo: более менее 3-6 или 407

wlesavo: 4-7

YurkovAS: это были симуляции

wlesavo: полные?

wlesavo: офигеть тогда

YurkovAS: да у меня в том конфиге на 2м ходу 400 роллаутов

wlesavo: у тебя как-то коллизии хорошо прунятся лишнии видимо

YurkovAS: https://www.codingame.com/replay/638462094

wlesavo: а, 400 норм, порядок разницы, по цифрам мне казалось там раз в 30 разница с моими

YurkovAS: это 2-8 и та карта с 4 игроками

wlesavo: хм, так так пишет 2400

YurkovAS: 5й ход = 2ход как я понял

wlesavo: а погоди, я на смитси смотрю

YurkovAS: да, там роллауты и симы вывел

wlesavo: но у него видимо число ходов

wlesavo: просто у тебя раньше было тоже вроде sims: xxx

YurkovAS: было и скрою, пока не обыграли)

wlesavo: ну тогда норм в целом, у меня вроде есть идеи как ускорить немного

wlesavo: спасибо за инсайды, постараемся не обыгрывать))

wlesavo: а у тебя без avx это?

YurkovAS: без

YurkovAS: тут еще от кол-ва углов же зависит, наверное)

wlesavo: вообще я думаю долго не буду экспериментировать тут, может еще что начну лучше

YurkovAS: это да, согласен

YurkovAS: мне просто лень что-то начинать

wlesavo: от количества углов по логике не зависит число роллаутов, ботлнек там точно в коллизиях

YurkovAS: охото такое же простое найти, чтобы симуляцией затащить

wlesavo: ну тут как-то слишком легко получилось высоко забраться, даже визуализатор сильно не пригодился

YurkovAS: xmass-rush тоже смитсимакс

wlesavo: о, вот туда может схожу, давно смотрел на нее

wlesavo: там визуализатор конечно посложнее прикрутить будет, зато интересно

YurkovAS: недавно делал - тяжело было, еле вышел из золота пока всего бота не переписал и все пм-ы не поэкспериментировал

wlesavo: я пока стараюсь без пмов делать, смитси макс тож делал не читая плейграунд сначала, набил своих шишек, потом пошел смотреть как он обошел это

wlesavo: сегодня только понял что у меня деревья так скоррелированы были, что всегда у всех фишек одинаковый мув выбирался

YurkovAS: без ПМ-ов это круто!

wlesavo: потому что скор был просто общая масса, плюс нормировку он классную придумал конечно, я долго думал как отбалансить эксплор

wlesavo: в гостбастерах в итоге пошел читать, но ничего интересного не нашел, в итоге помогло то что свои баги все вычистил с визуализатором и трекинг сильно улучшил

YurkovAS: надо почитать к этой игре. давно ее делал - вроде сам придумал оценочную и без нормализации

wlesavo: ну нормализация там в плейграунде у смитси, что дерево мониторит минимальный и максимальный скор свой

YurkovAS: это про ксб?

wlesavo: ага

wlesavo: вообще сам алгоритм очень интересный, действительно большой потенциал у него, оособенно в таких играх, надо бы еще чокудай освоить =)

wlesavo: ладно, доброй ночи :slight_smile:

YurkovAS: спс и тебе!