Chat:Ru/2020-09-03
Uljahn: ух ты, в дискорде про дату контеста говорят: "mid November. Official update to come soon"
mykeich: молодцы
MadKnight: мукич
MadKnight: чё пилишь мукич ?
mykeich: ты вчера упомянул про гоночки, решил разобраться с одним моментом неопределенным в коде
tutubalin: MadKnight пока ты в подполье скрывался, тебя в крестиках все кому не лень порекали
Uljahn: кроме меня и gybson_samara, разве что :)
gybson_samara: эээээ
Uljahn: а ты в леге уже?
Uljahn: а, вижу - в голде, значит меда не порекал
Uljahn: ну, на питоне в крестиках только в голде и сидеть
gybson_samara: так я пока и не того
gybson_samara: в восресенье займусь
gybson_samara: в блокноте-то я сделал монте-карлу, набросал
MadKnight: tutubalin у меня баг в крестиках
MadKnight: mykeich чё за момент?
mykeich: фильтр хода с щитом в минимаксе
MadKnight: и чё у тебя с ним было?
mykeich: чет запутано, исправил, но на результат сильно не сказалось
tutubalin: MadKnight зафиксируй его )
MadKnight: кто-нить вообще оценочную для крестиков запилил?
YurkovAS: щит можно выключить со 2+ хода. да и на 1-ом не всегда использовать
vrabosh: оказыватс есть сайт с чатлогами
Uljahn: :slowpoke:
vrabosh: Ghost in the Cell - прикольная задачка, я пока не могу сообразить короткий алгоритм.
MadKnight: мой мэдкенштейн бы отлично подошёл
vrabosh: надо както проектировать логику.. вот сейчас болею, очень сложно сразу вголове далеко логически уходить мыслями..
MadKnight: так ты не уходи далеко
MadKnight: начинай с самого верха
MadKnight: надо как-то находить лучшее решение
MadKnight: откуда его брать?
MadKnight: есть какая-то логика для каких-либо случаев, как получить 100% наилучшие ходы?
vrabosh: как я представляю надо решать гхост, надо создавать массив большой, на все хода.. и потом на каждый ход просчитывать. т.к. там есть дополнительные переменые виде бомб, незваченых баз которые чуть подругому ведут.. не получается это сразу все соединить в голове
MadKnight: ты собрался брутфорсить?)
vrabosh: я не могу эту всю картину увидеть в голове
MadKnight: не надо брутфорсить
MadKnight: слишком много комбинаций
MadKnight: сделай отдельную функцию которая собирает массив всех доступных ходов
vrabosh: да хоть какбы сделать логично, а не просто массив и там ифами подгонять
MadKnight: и логичь над массивом всех доступных ходов
vrabosh: хоть тотже брутфорс
MadKnight: так есть логичные методы выбора хода хоть для каких ситуаций?
vrabosh: пока 2 массива, мой, опонента и функция которая показывет куда выгодней всего ходить.. оценка там такая продукция / растояние
vrabosh: если мне хватает ботов, я иду туда. если на меня идет толпа и за 5 ходов они моей базе сделаю -хп я с друго базы передаю туда
MadKnight: а как же выбирать откуда лучше всего ходить?
MadKnight: вдруг откуда-то ещё лучше?
vrabosh: вот как раз функция эта показывает
vrabosh: n[idbazi] = addbot/dist
vrabosh: n[idbazi] = addbot/dist, colvoHP
vrabosh: то выще покозатель дает, отуда и иду, если хп хватает
vrabosh: ну и если у моей базы через какоето время будет -хп, то я сначало защищаю свою базу если на ней есть добавлялки хп.. нуливые не защищаю
vrabosh: хотя и захваываю их единичыми иногда
vrabosh: и потом получается делаешь на каждую ситуацию свой иф.. и получается каша.. типа если рядом стоит в 1 ход куча людей, то не отправлять с базы некого, а то отправлю а он ее за 1 ход захватит
vrabosh: но это не дело так писать..
vrabosh: я так пару ифов написал и понял, что лучше думать подругому как сделать
MadKnight: как это?
MadKnight: а поиск пути ты запилил?
MadKnight: чтобы a->b->c вместо a->c
vrabosh: какой поиск?
vrabosh: если моих ботов больше чем на той базе, то кидаю туда
vrabosh: приоритетно те которые ближе и больше хп дают за ход
vrabosh: или ты имеешь введу, что лучше ходить через ближайшие клетки?
gsomix: Uljahn, хорошо, что контест не пересечется с Hacktoberfest. Планирую поучаствовать. :)
MadKnight: именно
vrabosh: хм.. а зачем? но тольк если вначале когда надо быстрее нейтральные захватить
vrabosh: ну и я еще понял, что надо просчитывать, когда захватываешь нейтральну не презахватит ли он.. т.к. я получается при захвате теряю , а он в 0 уходит
vrabosh: мне покабы без поиска найти алгоритм которые просто хорошо напрямую менеджмент ведет.
vrabosh: этого думаю хватит для золота?
vrabosh: а потом уже и через несколько клеток думать.
vrabosh: есть что посмотреть по этой теме?
vrabosh: этож посути логистика? типа базы это магазины, мои боты это товар, чужой это покупатели сколько хотят купить)
vrabosh: кароче надо все порешать. а потом уже всять однотипные задачи какие нравятся и изучать эту тему.. потомучто как я щаз посмотрел, тема логистики большая..
vrabosh: прикиньте мне сейча в унитер пойти?) я бы наверно преподов своими задачками из контеста замучалбы..
MadKnight: зато им было бы не скучно
MadKnight: тут вон один препод такой сидит который студентов на CG учит
MadKnight: а в #world таких ещё несколько
mykeich: решение задач не самое главное на работе. главное научиться говорить ку при виде начальника и не сообщать ему что он идиот:)
vrabosh: mykeich работа для рабов)
vrabosh: свободные люди умеют жить за 10к руб)
mykeich: психика, привычки и инстинкты размножения и властвования не позволят жить на 10к руб. Как ты собираешься доминировать в сфере пол, секс, власть на 10 к руб?:)
vrabosh: не собираюсь)
vrabosh: здесь буду учиться доминировать)
MadKnight: а как же жить не с маман?)
MadKnight: или ты из МД ?)
vrabosh: я не что такое мд
MadKnight: и хорошо
vrabosh: прикиньте как круто с маман жить, гуляешь когда хочешь и где хочешь, занимаешься чем хочешь.. но да, с отношениями проблемы.. но если взять отношения, то сразу появляетя 8 часавая работа, обязаности, и на себя пару часов в день)
vrabosh: остается только.
MadKnight: это зависит от отношений
MadKnight: может она будет тебя содержать
MadKnight: потому что ты так хорошо кодишь
vrabosh: но работать всерано придется.
MadKnight: так ты не можешь работать кодером?
MadKnight: на заказ
MadKnight: кодить
vrabosh: не интересно
MadKnight: а что интересно?
MadKnight: найди себе друга который хочет запилить топ приложуху, запили её с ним, и будет у вас безусловный доход
vrabosh: то что хочется сегодня
vrabosh: это может быть разное
vrabosh: а потом ее потдерживай несколько лет.
vrabosh: а еще можешь полгода потратить на разработку а оно не зайдет народу
MadKnight: так ты предугадывай, зайдёт ли
vrabosh: я неумею предугадывать
MadKnight: вот я и говорю - найди кто может и кто хочет
vrabosh: я так один раз игру буковки для вк сделал. смотрю в аппл сторе приложуи с буквами топовые.
vrabosh: придумал свое, там чат был, пвп игра, а не просто соло, всякие ачивки, прокачка итд..
vrabosh: играло в итоге пару бабушек
vrabosh: рекламу сделал хорошую, там наверно под 50к установок было. непомню уже.. из за того что вк апи поменял. мне впадлу было потом переделывать закрыл
MadKnight: так там дело было в том что это игра под мобилку
vrabosh: https://sun9-3.userapi.com/c639724/v639724197/3af02/zPtXj6GLhSU.jpg - вот дизайн
MadKnight: так под мобилку надо было такую делать
vrabosh: https://sun9-52.userapi.com/c9636/u6593694/112981946/y_f832c200.jpg - вот моя первая игра, 10 лет назад начал делать.. уже тоже закрыл
Uljahn: vrabosh: в GitC можно разделить карту на базы, которые ближе к твоему штабу, и которые ближе к штабу соперника, и стремиться захватывать в первую очередь базы на своей "территории"
vrabosh: а самая удачная вот эта была https://sun9-52.userapi.com/c9569/u6593694/112981946/y_083890c6.jpg и меньше всего времени на нее потратил.. и больше всего профита было
vrabosh: Uljahn у меня так и делает.. сначало на своей территории. потом если есть войска еще отправляю на противника
vrabosh: яж говорю, сделал рейтинг..
Uljahn: лучше апгрейдить свои базы сначала
vrabosh: но у меня еще нету просчета что будет допустим на след ход или на 5ход.. чтобы знать когда куда кого отправлять. логистики адекватной нет.
gsomix: vrabosh, нет смысла мучать преподавателей задачами с CG. Это слишком узкая тема, требующая специальных навыков и тренировки.
vrabosh: Uljahn может быть еслиб апгрейт сделал, лучше зашло.
Uljahn: эх, у меня тоже в GitC бот тухлый, начал переписывать и забросил
vrabosh: https://sun9-48.userapi.com/c625423/v625423694/ec6d/unkHBOXOqkM.jpg - вот классно приложение зашло, мне обходился 1чел по рекламе в 10копеек, но потом вк забанила, из за того. что нельзя просить пользователей постить запись на стену.
MadKnight: лул
MadKnight: ну так продолжай пилить
MadKnight: может однажды в топ выйдешь)
vrabosh: вообщем устал я эти приложения делать, 10 лет делал.. может отдохну опять захочется. Или может мир что нить интересное подкинет, куда захочется вникнуть
vrabosh: кстати если кому интересно создания игр, вк сейчас каждый год чемпионаты делает по новым играм, топовым местам призы, деньги в реклам кабинет... если игра годная там посути можно сразу под 100к людей получить..
vrabosh: игру в 2 чела вполне длается за полгода.. художник и фултеск программер
vrabosh: а в пандасе можно для ячейки задавать формулу как в экселе? если да, то можно некоторые задачки встиле эксель решать)
Uljahn: и в чём профит?
Uljahn: pandas работает с датафреймами, которые внешне похожи на нампайные structured arrays
vrabosh: ну чтобы цыклы лишнии не писать.. можно в одной матрице формулы накидать..
vrabosh: незнал что такое есть в нампи
vrabosh: а в столбцы можно кидать функции, формулы.. типа чтобы столбец 1 и 2 просумировались в 3
Uljahn: arr[:, 2] = arr[:, 0] + arr[:, 1]
Uljahn: правда, операции со столбцами супермедленные по сравнению со строками
Uljahn: конечно, если С-order используется, для F-order наоброт
Uljahn: *наоборот
MaddoxX94: На винде в хроме не работает c# ассист. Я один такой? з.ы. на убунте норм работает
Uljahn: проблема известна админам, в дискорде обсуждение видел
Uljahn: они долго не могли воспроизвести проблему у себя локально, видимо винды под рукой не было :)
Uljahn: MaddoxX94: а винда у тебя какая? десятка?
Uljahn: у меня на 8.1 не работает
Uljahn: и на сервере 2012
MaddoxX94: на в браузере edge тоже не работает =D
Uljahn: скорее всего, винда виновата, раз на убунте работает
MaddoxX94: хотя кажется странным это. Ведь это онлайн инструмент, а не прога, которая берет ресурсы с компа.
tutubalin: кто-то сегодня жаловался, что в линухе не работает
vrabosh: я как понял, тут иногда даже 1000 чел в контестах не участвует?
vrabosh: почему так мало?
MadKnight: это в каких контестах так?
vrabosh: вот в кухне 781
Uljahn: в поворятах 1,543 участников было в контесте, в мульти может быть и меньше - не все код ресабмитнули, это сейчас сделали автоматический ресабмит
gsomix: А можно в Online IDE как-то увеличить количество отображаемых строк для stderr?
gsomix: Или сдампить куда-нибудь?
MadKnight: можно в оффлайн запустить тот же ход
gsomix: Но вопрос про онлайн. :)
gsomix: Я понимаю, что можно сдампить всю игру и анализировать оффлайн.
MadKnight: можешь скачать реплей
MadKnight: он в xml
gsomix: Ответ "Нет, нельзя", меня тоже устроит. Спасибо. :)
MadKnight: просто они экономят на размерах реплеев
MadKnight: больше вывода - больше размер реплея
gsomix: Разве то, что я запускаю в Online IDE не является короткоживущим и не требующим хранения?
Uljahn: создатели CG решили, что лучше хранить
Uljahn: то, что ты в online ide запускаешь, можно даже найти среди реплеев - номера у них инкрементальные
gsomix: Ох!
Uljahn: именно так год назад утекли реплеи контеста
Uljahn: до его официального начала
Uljahn: там был закрытый хакатон сначала для одной компании, а один кулхацкер игрался с номерами реплеев как раз, прибавлял и отнимал единички, и наткнулся на неизвестную игру :)
Uljahn: это UTG было, насколько помню. народ начал по реплеям правила реверсить
Uljahn: сейчас вроде пофиксили, да и дебаг дают только тому пользователю, который есть в реплее и авторизован в данный момент
Uljahn: на сайте есть API, так что можно реплеи скачивать хоть на питоне
Uljahn: в смысле, скриптом
gsomix: Пока не охота возиться. :)
gsomix: Может быть позже напишу загрузку реплеев, чтобы оффлайн тестировать.
gsomix: Оффлайн, конечно, приятнее. Можно дебаггером подрубиться. :)
amurushkin: надо же мой бот 1 раз нейронку победил https://www.codingame.com/replay/485023237
amurushkin: наба стал побеждать иногда, и юркова со смитсом. еще б чего докрутить :)
amurushkin: 44.45 набрал. прямо рекорд для моего бота
ConstantBolzmann: все нейронки ради этого, а это они пока не могут) https://youtu.be/W357uIC6DDU
MadKnight: это чё такое?
gsomix: Я наконец-то поправил все баги в диаграммах Вороного в Tron Battle.
gsomix: Жду промоушн в золотую лигу.
Uljahn: :thumbsup:
gsomix: Дальше, наверное, на машинки переключусь. Попробую наивный Монте-Карло реализовать по совету BorisZ. :)
YurkovAS: неплохо так меня апнули в ксб, почти на 2 места :smiley:
ConstantBolzmann: а я пишу матрицу, попутно учусь с ксб и попутно много чего еще учу)
ConstantBolzmann: нейрон себе написал) для наглядности)
tutubalin: ConstantBolzmann молодца!
tutubalin: ConstantBolzmann посмотри, вот тут классная интерактивная статья, хорошо объясняющая нейрон https://jalammar.github.io/visual-interactive-guide-basics-neural-networks/
tutubalin: и там дальше следующие статьи в этом блоге тоже отличные
gsomix: tutubalin, спасибо, сохранил. :)
QuantumQQ: как перейти на следующий уровень в гонках?
gsomix: QuantumQQ, победить босса в текущей лиги, подождать перевода в следующую.
gsomix: *лиге
tutubalin: gsomix сохранить мало, надо почитать ) мне особенно понравилось, когда я сперва руками нейрон "обучал", регулируя веса ползунками, а потом автоматика это сделала гораздо лучше
gsomix: tutubalin, ага, очень нравятся такие наглядные примеры.
QuantumQQ: жалко тут 1С нет, а то бы разорвал бы всех :))))))
gsomix: Всё, Tron Battle можно отложить в сторону на некоторое время. Доброй ночи.
tutubalin: QuantumQQ ага, особенно в Shortest Mode )
QuantumQQ: я еще с ошибкой в коде выигрывал. Но похоже не хватает для перехода.
MadKnight: QuantumQQ ты бы разорвал всех чисто засчёт языка?)
QuantumQQ: ну это же шутка. Я думал мозги совсем жиром заплыли.
MadKnight: https://www.codingame.com/share-replay/485085947
MadKnight: я тут пытаюсь запустить поиск всех 4 машинок сразу на глубину 6
MadKnight: и всего 10к rollouts'ов
YurkovAS: мало, со смитси в 10+ раз больше
MadKnight: смитси каждую по отдельности ищет
MadKnight: у него вообще 4 дерева
MadKnight: а у меня одно дерево сразу на все 4 машинки и на 2401 чайлда
YurkovAS: 4 пода на глубину 7 = 1 роллаут. и получается 100к+
YurkovAS: да, 4 дерева.
YurkovAS: ну ноды дерева берутся из одного общего большого массива
MadKnight: чё за 1 общий массив?
MadKnight: а, ты про pool
MadKnight: да это понятно
YurkovAS: массив нод общий да, про пул
MadKnight: это вообще чисто оптимизация
YurkovAS: синусы закешить
YurkovAS: хотя это не много добавляет. скорее всего само дерево тормозит
MadKnight: а ты попробуй запустить дерево с 2401 чайлдами
YurkovAS: у меня используется ~600k чаелдов (ну нод из пула) очень много.
YurkovAS: суммарно всмысле, там счетчик след ноды, вот он, на все 4 дерева.
MadKnight: да прикол не в этом
MadKnight: https://www.codingame.com/share-replay/485088423
YurkovAS: во, нашел, смитс как-то писал, про свой pruning лишних ходов yeah it really is 40-60k for me
MadKnight: зато у тебя нет такой командной игры как у меня на 32 ходу
YurkovAS: не открываются реалеи
MadKnight: короче у меня машинка свою машинку "подбросила"
MadKnight: щитом
MadKnight: у тебя так не умеют
MadKnight: твои друг другу не доверяют из-за смитси
YurkovAS: да, они друг другу помогают
MadKnight: но осторожно
MadKnight: у тебя они друг другу не доверяют - смитси не умеет комбинировать
MadKnight: и им приходится осторожничать даже когда помогают друг другу
MadKnight: https://www.codingame.com/share-replay/485088880
MadKnight: а этот откроет?
YurkovAS: слабо еще играет? попробуй профайлером подключиться. можно в брутал тестере дебажную версию запустить и подключиться по имени процесса (я так иногда делаю) там нормально статы соберется
YurkovAS: не открывается, ошибка UNAUTHORIZED
MadKnight: а теперь?
YurkovAS: во, открылось
YurkovAS: даже проще с профалером запустиь просто на 1 ход
MadKnight: зацени как машинки помогают друг другу
YurkovAS: 10к мало. вдруг что-то простое, как пофиксишь и всех порвешь
MadKnight: у тебя так сильно не помогают
YurkovAS: :thumbsup:
MadKnight: https://www.codingame.com/share-replay/485090962
MadKnight: на глубину 5 уже не так криво ищет
MadKnight: YurkovAS а у тебя 100к ?
YurkovAS: > 200k
MadKnight: это rollouts ?
MadKnight: или просто ходов?
YurkovAS: да, роллауты (4х7) = 1 роллаут
MadKnight: это у тебя чё, 1 200 000 симуль?
YurkovAS: ой, сорян, это симы
YurkovAS: ~15-20к роллаутов
YurkovAS: тогда почти как у тебя все
MadKnight: да, но у меня 1 дерево, и веток не 9, а 2401
YurkovAS: в общем бы проверить именно на твоей версии - сравнить с классическим смитсимаксом. чтобы понять, есть ли профит. а дальше уже улучшать-ускорять.
MadKnight: вот этим и занят
YurkovAS: но это наверное долго делать такое сравнение.
YurkovAS: а, ну понятно. хотел спросить что дальше будеш делать.
gsomix: Доброе утро.
gsomix: Tron Battle — странная игра. Вчера кое-как выбрался из серебряной лиги, но потом на одном и том же боте докатился до легендарной. 🤔