Chat:Ru/2022-01-19

From CG community
Jump to navigation Jump to search

Default avatar.png TheBigBadSkater_e81f: :nose_tone1:

Default avatar.png SmachnayaBebra: :vulcan_tone2:

AntonBlockchain: утром перед работой для затравки crash of code кто использует?

wlesavo: стоило вчера в чатике поныть и на в районе 20го сабмитнулся, это уже хоть что-то

Uljahn: круть, много ещё лег осталось зафармить?

wlesavo: очень много)

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

Uljahn: AntonBlockchain: я не программистом работаю, поэтому для затравки читаю https://arxiv.org/list/cs.AI/new

AntonBlockchain: http://chat.codingame.com/pastebin/ed7c7f43-9e25-4814-ad43-c3249720813f

AntonBlockchain: я для сына 9 лет сайт этот нашел. ему вообще хорошо зашел креш.

AntonBlockchain: https://www.codingame.com/profile/5bf72a2940393e32650b253031691b858935964

Uljahn: в клэшах качество задач очень варьируется, хотя самые хреновые вроде отсеивают

AntonBlockchain: синтаксис учить креш хорош. для 9 лет как раз.

Uljahn: по js можно ещё глянуть задачки на https://js.checkio.org/ (некоторые даже переведены на русский)

Uljahn: там и на питоне можно решать, хороший ресурс, решения от коммьюнити очень качественные

AntonBlockchain: переводить на русский как раз не надо. надо чтобы пользовался транслетом и из-за скорости читал на английском.

Uljahn: это дело

AntonBlockchain: простые задачки понятные 9 лет. + английский + синтаксис языка + видно как другие решили задачи. + 15 минут отсечка. идеал для ребенка

Uljahn: а почему js?

AntonBlockchain: выбор был между питоном и js. но питон сложнее. у него совершенно не информативные для ребенка ошибки трансляции.

AntonBlockchain: да и для взрослого

Uljahn: в новой версии, говорят, это поправили

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

AntonBlockchain: js имеет общий c подобный синтаксис с C# c++ ts. python имеет свой собственный не похожий ни на какой синтаксис. и что с ним случится за 10 лет пока 9 летний ребенок станет 19 летнем не ясно. он как паскаль со своим синтаксисом.

Uljahn: ну, за 30 лет ничего шибко плохого не случилось (кроме 2->3), так что надежда есть

AntonBlockchain: python был никому не известен 10 лет назад. так что корректно считать с момента попадания в top10. иначе это ошибка выжившего.

Uljahn: мне кажется, похожесть синтаксиса может сильно запутывать, т.к. начинаешь ожидать схожего поведения

AntonBlockchain: речь про единый синтаксис {} ? for(;;) s.длинна)

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

Uljahn: top10? а почему не топ20 или топ5? на питоне в начале 2000-х уже крупные игры делали (Severance: Blade of Darkness, Eve Online), numpy вышла в 2005-м, так что поболее 10 лет известен

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

AntonBlockchain: учить питон в 9 лет более рисковая стратегия

Uljahn: я бы кстати питон не советовал первым языком :)

Uljahn: лучше уж С какой-нибудь или даже паскаль

AntonBlockchain: про это и говорю. паскаль не надо - это уже пройденный этап. а c слишком сложный для 9 лет. там начинаются проблемы с памятью и борьба со ссылками вместо просто идей как проще закодитть.

AntonBlockchain: может быть ts выбрать сразу. или на него перейти в процессе.

Default avatar.png smallDick: дарова пацаны

Default avatar.png smallDick: что как жизнь

inem: да норм и С, в 95 году мне было 7 лет и спокойно разбирался по брошюрке по С с циклами, if и т.д. ))

Uljahn: я начинал на программируемом калькуляторе, а потом Бейсик и ассемблер на спектруме, вот веселуха-то была

Default avatar.png smallDick: вы что пацаны

Default avatar.png smallDick: отвлекитесь

Default avatar.png smallDick: как жизнь как дела

Uljahn: туда ли ты зашёл, пацанчик?

AntonBlockchain: тогда не было js.

AntonBlockchain: а сейчас он везде.

Default avatar.png smallDick: да вроде не ошибся

Uljahn: главное - он во всех браузерах

Default avatar.png smallDick: зашел поговорить с вами

Uljahn: тогда ник смени

Uljahn: и не позорься в #world

Default avatar.png smallDick: а что с ним не так?

Uljahn: не вижу смысла общаться с кринжлордами

Default avatar.png smallDick: что так долго думал

Default avatar.png smallDick: бедолага

Uljahn: забанен, бедолага

wlesavo: прикольно один и тот же код сабмитнулся сначала на #80 потом на #18, видимо есть фундаментальная проблема которую если поправить станет сильно лучше

Uljahn: или рандом и RPS

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

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

Uljahn: в миде могут быть боты, заточенные на 1vs1, но слабые при большем количестве игроков, или наоборот

Uljahn: т.е. по силе как топ, но только в своей нише

Default avatar.png TTeaLL: а разве не все боты такие?

Uljahn: зависит от игры, где-то всегда два игрока, где-то рандомно от 2 до 4

wlesavo: разобрался в чем дело было, поправил, теперь стабильно топ 10-20, ща на топ10 натвикаю параметров и хватит)

Default avatar.png GHopper: приветы. подскажите плиз по By train or by car ? Что значит дистанция межу городами 0?

Default avatar.png GHopper: сколько на приодаление такой дистации понадобится автомобилю? Тоже 0? А поезд будет делать 8ми минутную остановку?

wlesavo: там нет нулевых расстояний в тестах вроде, посмотрел в валидаторах и в тестах

Default avatar.png GHopper: :thumbsup_tone1: спасибо. пнул в нужном направлении

YurkovAS: wlesavo :thumbsup:

wlesavo: спасибо) натвикал таки чегото)

wlesavo: интересно что финальное улучшение существенное было уменьшить стоимость расстояния оппонента в эвале

YurkovAS: а т.е. не просто distOp-distMy?

wlesavo: типа distopp*0.85 - distmy

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

YurkovAS: а глубина у тебя больше 5? ускорил

YurkovAS: немного наускорял, сейчас проверю. эх, жаль что у меня int-ы, там бы по быстрому проверил твою идею

YurkovAS: спасибо! кстати

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

wlesavo: а до того мне стабильность поправило все-таки учитывать победу третьего оппонента в эвале с небольшим штрафом. ну и баг исправил что глубина победы оппонента не правилньо учитывалась в эвале

YurkovAS: а ты пробовал на 3-го забивать и сражаться только против следующего? заметно хуже так

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

wlesavo: ну или тем у кого стены остались если у одного закончились

YurkovAS: эх, тебя немного спустил. не проблема? наускорял тут по быстрому доп глубину, интересно стало

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

wlesavo: не, не проблема конечно)

YurkovAS: у меня на 3-го совсем забивает и учитывает его только на глубине 1 - чтобы не замуровать нечайно

wlesavo: вообще у меня относительно тебя сильно медленнее, с 8 стенами до глубины 5-6 никогда не доходит в начале

wlesavo: вообще интересно что так хорошо играет игнорируя третьего оппонента

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

YurkovAS: https://www.codingame.com/replay/603715119 9, 7, 7, 7

wlesavo: эх, чуть до первого не хватило) надо ресабмитить))

YurkovAS: и как всегда проигра

wlesavo: 4 сотых))

YurkovAS: да, круто. улучшить немного 3-ные и будет топ

YurkovAS: он в них любит на 2м месте быть, т.к. за 3-м не смотрит

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

wlesavo: а можно в общих словах про ускорения для общего образования?) это битборды и интринсики или что-то более банальное?

YurkovAS: битборды и сдвиги

YurkovAS: ты юзаешь?

YurkovAS: бфс на битбордных сдвигах, без очереди

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

YurkovAS: +2 к глубине

YurkovAS: ссылок нет сохраненых, только про connect-4 игру: там битбордные сдвиги, но не бфс

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

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

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

YurkovAS: точно, забыл про нее

YurkovAS: да, надо бы заняться xmas-rush у него там интересные компактные хранилища для игры

YurkovAS: сейчас уже похоже не будет такой разницы с топ1 бот точно улучшился

wlesavo: YurkovAS а у тебя до этого без битбордов было?

YurkovAS: с битбордами

YurkovAS: бфс был с очередью

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

YurkovAS: да

YurkovAS: да мне часто проще поускорять, чем оценочную улучшить

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

YurkovAS: у меня так же и в основном простые опечатки

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

wlesavo: вроде разобрался, интересно конечно, образ мышления даже меняется от таких текстов)

Default avatar.png molly.pears: :rage: