MailRuChamps / raic-2018

Russian AI Cup — artificial intelligence programming contest. Official website: http://russianaicup.ru
43 stars 32 forks source link

Add javascript cgdk #75

Closed vahpetr closed 5 years ago

vahpetr commented 5 years ago

Тема http://russianaicup.ru/forum/index.php?topic=905.0

vahpetr commented 5 years ago

Странно что вы не используете: 1/ docker multistage build 2/ ENTRYPOINT + CMD команды Это позволит: 1/ Избавиться от *.sh файлов 2/ Сделать процесс сборки понятным

vahpetr commented 5 years ago

@kuviman сделал. Теперь в проекте используются классы и все значения берутся и json.

Конструирование из json объектов каждый тик даёт только накладные расходы и показывает структуры объектов явно в коде. Пока сделал по аналогии с другими языками, но лучше было бы полностью удалить папку model, в стратегию передавать json

vahpetr commented 5 years ago

Подготовил решение без моделей, https://github.com/MailRuChamps/raic/pull/83/files Выберите лучшее. Спасибо

vahpetr commented 5 years ago

Подскажите, есть ли ещё замечания?

kuviman commented 5 years ago

Конкретно здесь не решен вопрос с отсутствием bash, работой в /output

vahpetr commented 5 years ago

К сожалению, не знаю как вы включаете скрипт сборки и точку входа в процессе запуска. Постарался максимально приблизится к прочим пакетам. Добавил в контейнер bash, поправил сборку в обоих решениях

kuviman commented 5 years ago

Попробовал запустить ваше решение и первое предложенное (#52).

К сожалению, в вашем пакете очень медленно обрабатываются запросы --- игра в 20к тиков не успевает обработаться с пустой стратегией даже за 5 минут.

В связи с этим, будет добавлен #52

vahpetr commented 5 years ago

Очень странно, у меня пустая стратегия отрабатывает до первого гола (примерно 200 тиков) за 0.2-0.3 секунды

vahpetr commented 5 years ago

./codeball2018-macos/codeball2018 --noshow --team-size 1 --until-first-goal

Эта версия node client.js 0.10s user 0.02s system 18% cpu 0.694 total node client.js 0.22s user 0.05s system 25% cpu 1.062 total node client.js 0.09s user 0.02s system 10% cpu 1.091 total

Версия без маппинга node client.js 0.09s user 0.02s system 22% cpu 0.514 total node client.js 0.16s user 0.04s system 42% cpu 0.454 total node client.js 0.09s user 0.02s system 75% cpu 0.139 total

kuviman commented 5 years ago

Подозреваю проблема в работе с сетью, вероятно при локальном запуске без докеров все и правда хорошо

vahpetr commented 5 years ago

С докером time docker run -it javascript-cgdk 192.168.1.43

Эта версия docker run -it javascript-cgdk 192.168.1.43 0.04s user 0.02s system 2% cpu 2.191 total docker run -it javascript-cgdk 192.168.1.43 0.04s user 0.02s system 2% cpu 2.237 total docker run -it javascript-cgdk 192.168.1.43 0.03s user 0.02s system 3% cpu 1.692 total

Без моделей docker run -it javascript-cgdk 192.168.1.43 0.05s user 0.12s system 7% cpu 2.360 total docker run -it javascript-cgdk 192.168.1.43 0.04s user 0.02s system 3% cpu 1.886 total docker run -it javascript-cgdk 192.168.1.43 0.03s user 0.02s system 2% cpu 2.249 total