Open AI Championship

Sandbox

Project

Sandbox

Round 1

Round 2

Finals

Песочница (на 10 января 2021 г.)

Recent comments

30 may 00:19: vedij30399 wrote comment on post Prizes
30 may 00:18: vedij30399 wrote comment on post Prizes
30 may 00:09: vedij30399 wrote comment on post Prizes
30 may 00:04: vedij30399 wrote comment on post Prizes
30 may 00:03: vedij30399 wrote comment on post Prizes
30 may 00:02: vedij30399 wrote comment on post Prizes
30 may 00:01: vedij30399 wrote comment on post Prizes
30 may 00:01: vedij30399 wrote comment on post Prizes
30 may 00:00: vedij30399 wrote comment on post Prizes
29 may 23:59: vedij30399 wrote comment on post Prizes

VK Group

Telegram chat

Discord

 

Sandbox — contest that lasts the whole period of CodeCraft 2020 championship.

To participate in the championship, you need to have at least one accepted strategy in the Sandbox at the moment Round 1 starts. You can submit your strategies to the Sandbox any time and create games with it. Qualification games are regularly created in the Sandbox. In a qualification game only your last submitted (and accepted by the system) strategy takes part. Participants of a qualification game are chosen randomly. Each strategy takes part in about one qualification game per hour (this interval may be changed by the jury, but is the same for all the participants). Rating of the participants is calculated based on results of these games. The starting rating value of 1200 is assigned to anyone, who submitted a strategy (and it is accepted by the system) to the Sandbox.

A modified version of the Elo rating system is used for rating calculation. In short: an expected place is calculated for each participant, and his rating increases in case of him taking a higher place, and decreases in case of taking a lower place.

1080 participants with the greatest rating in the Sandbox are chosen to participate in Round 1 (in case of equal ratings a participant who submitted his strategy earlier has bigger priority) at the moment of Round 1 beginning.

In addition to qualification games, participants can create their own games. To do so, you need to submit your strategy and choose opponents. You can choose any strategy submitted not later than your last accepted strategy as an opponent. You can select any version of your strategy available at the moment of creating a game. When you create a game, you can choose one of no more than three formats: Round 1, Round 2 or Finals format. Before Round 1 only its format is available, before Round 2 only formats of first two rounds are available. After Round 2 all 3 game types are available.

Results of games created by participants do not affect final results. Qualification games will be held until the end of the championship. These games affect only ratings of the participants in the Sandbox and will not be taken into consideration in the championship itself. Although, before each stage of the championship (except for Round 1) best strategies from the Sandbox will be allowed to take part in the championship. So, strategies with the greatest rating in the Sandbox, that did not pass to Round 2 in the main championship will be allowed to participate in Round 2. Similarly, additional strategies will be allowed to participate in the Finals. After the Sandbox closes, authors of the best strategies will be given prizes (Finals winners will be not included in this list).

Participants who have been eliminated from the championship can still improve and submit their strategies, as well as create their own games. They are still rightful participants of the Sandbox, and in case of high results also compete for special prizes.



Okke

Okke

Saint Petersburg

После одной созданной игры, возможность создавать новые пропала: появляется и тут же исчезает список игроков. В комментарии сказано, что можно создать 4 игры за 20 минут. Но у меня оказалась всего одна попытка, и, видимо, больше не предвидится.

Nov 30, 2020 4:44:34 AM
Hamster

Hamster

SOFTPOINT

А как так может быть, стратегия заняла первое место, а ей начислили -248?

Dec 1, 2020 12:04:27 PM
mixei4

mixei4

КГУ

Hamster

Hamster

SOFTPOINT

А как так может быть, стратегия заняла первое место, а ей начислили -248?

При отправке стратегии поставил галку “Увеличить изменчивость рейтинга”.

Dec 1, 2020 7:24:25 PM
steleal

steleal

Ulyanovsk

Hamster

Hamster

SOFTPOINT

А как так может быть, стратегия заняла первое место, а ей начислили -248?

Это самые часто наступаемые грабли на всех раиках. Требуйте переименовать галку с “Изменчивость рейтинга” на “Начать со стартового рейтинга”

Dec 1, 2020 8:51:02 PM
Hamster

Hamster

SOFTPOINT

Нелогично это. Увеличить изменчивость, по-моему, означает - увеличить влияние очередных игр на рейтинг, а не сломать логику оценки результатов. Т.е. выигрыши и проигрыши должны начислять больший рейтинг в обе стороны, но не менять выигрыш на проигрыш. Выиграл должно быть +, а проиграл -. При любом состоянии галки. Вот это человекопонятный принцип

Dec 1, 2020 9:17:43 PM
Hamster

Hamster

SOFTPOINT

mixei4

mixei4

КГУ

При отправке стратегии поставил галку “Увеличить изменчивость рейтинга”.

я понимаю, что поставил, только это маразм

Dec 1, 2020 9:19:03 PM
qubit

qubit

Kirov

Hamster

Hamster

SOFTPOINT

Нелогично это. Увеличить изменчивость, по-моему, означает - увеличить влияние очередных игр на рейтинг, а не сломать логику оценки результатов. Т.е. выигрыши и проигрыши должны начислять больший рейтинг в обе стороны, но не менять выигрыш на проигрыш. Выиграл должно быть +, а проиграл -. При любом состоянии галки. Вот это человекопонятный принцип

Ну так все и есть, просто вначале дается “штраф” в несколько сотен очков рейтинга.

Dec 1, 2020 10:11:05 PM
mixei4

mixei4

КГУ

steleal

steleal

Ulyanovsk

Это самые часто наступаемые грабли на всех раиках. Требуйте переименовать галку с “Изменчивость рейтинга” на “Начать со стартового рейтинга”

Всё таки не совсем со стартового, но большими буквами выделить, что рейтинг упадёт и упадёт он не в момент отправки, а со следующей игры, стоит.

Dec 1, 2020 10:25:30 PM
coolspawn

coolspawn

Shatura

не заливается стратегия… может кто скажет что имеет ввиду валидатор? Предыдущие норм залились В отладке все работает и теститься.. ПРОТОКОЛ stdout:

stderr: + cd /output + java -Xmx250m -jar ./aicup2020-jar-with-dependencies.jar gameserver 31003 b4eddb8b272fa76aaced30390e68627c07fd4f04_2 Exception in thread “main” java.io.IOException: Unexpected EOF at util.StreamUtil.readBytes(StreamUtil.java:23) at util.StreamUtil.readInt(StreamUtil.java:33) at model.ServerMessage.readFrom(ServerMessage.java:8) at Runner.run(Runner.java:29) at Runner.main(Runner.java:51) Exit code:1 Memory used: 39MB Consumed time: 2883

Dec 4, 2020 2:16:21 AM
bashnia007

bashnia007

Sabre

А сколько участников будет в Раундах и Финале? Не могу найти это в правилах

Dec 4, 2020 11:32:57 AM
alex_basic

alex_basic

Khanty-Mansiysk

Не могу понять чей код вылетает. Правил только MyStrategy.

“Unable to read beyond the end of the stream.” at System.IO.BinaryReader.InternalRead(Int32 numBytes) at System.IO.BinaryReader.ReadInt32() at Aicup2020.Model.ServerMessage.ReadFrom(BinaryReader reader) in C:\temp\aicup\aicup-CSharp2\aicup2020\Model\ServerMessage.cs:line 8 at Aicup2020.Runner.Run() in C:\temp\aicup\aicup-CSharp2\aicup2020\Runner.cs:line 32 at Aicup2020.Runner.Main(String[] args) in C:\temp\aicup\aicup-CSharp2\aicup2020\Runner.cs:line 56

Dec 8, 2020 9:35:39 AM
qubit

qubit

Kirov

bashnia007

bashnia007

Sabre

А сколько участников будет в Раундах и Финале? Не могу найти это в правилах

Раунд 1: 1080 участников Раунд 2: 360 участников (300 - попадает через первый раунд, 60 - через песочницу) Финал: 60 участников (60 - попадает через второй раунд, 10 - через песочницу)

Dec 8, 2020 12:52:57 PM
qubit

qubit

Kirov

qubit

qubit

Kirov

Раунд 1: 1080 участников Раунд 2: 360 участников (300 - попадает через первый раунд, 60 - через песочницу) Финал: 60 участников (60 - попадает через второй раунд, 10 - через песочницу)

И в новой версии правил это теперь указано.

Dec 8, 2020 12:54:25 PM
coldmind

coldmind

Murino

Баг: https://russianaicup.ru/game/view/58214 Игра закончилась победой vickingur (остался 1 на карте), но победу почему-то засчитали мне.

Dec 8, 2020 2:42:16 PM
zn-soft

zn-soft

Fesco

coldmind

coldmind

Murino

Баг: https://russianaicup.ru/game/view/58214 Игра закончилась победой vickingur (остался 1 на карте), но победу почему-то засчитали мне.

Он же по очкам отстал, это баг его стратегии

Dec 8, 2020 2:48:14 PM
zn-soft

zn-soft

Fesco

zn-soft

zn-soft

Fesco

Он же по очкам отстал, это баг его стратегии

Заодно моей, я вообще первый вылетел

Dec 8, 2020 2:48:42 PM
coldmind

coldmind

Murino

zn-soft

zn-soft

Fesco

Заодно моей, я вообще первый вылетел

Перепроверил по правилам. Я был уверен что очки добавляются в конце, если остался 1 на карте. Судя по правилам - это есть только в Финале.

Dec 8, 2020 3:11:59 PM
anib

Getting this verification error:
stdout:

stderr:
+ cd /output
+ python ./main.py gameserver 31001 6029769f6a44565a73e7882652e5b9a79029aa33_0
Traceback (most recent call last):
File “./main.py”, line 45, in
Runner(host, port, token).run()
File “./main.py”, line 26, in run
message = model.ServerMessage.read_from(self.reader)
File “/output/model/server_message.py”, line 4, in read_from
tag = stream.read_int()
File “/output/stream_wrapper.py”, line 26, in read_int
return self.INT_FORMAT_STRUCT.unpack(self.stream.read(4))[0]
struct.error: unpack requires a buffer of 4 bytes
Exit code:1
Memory used: 8MB
Consumed time: 1804
Player crashed: IO error: -1 is invalid value
anyone know why this might be happening?

Dec 8, 2020 6:43:34 PM
kuviman

kuviman

Codeforces

Getting this verification error: stdout: stderr: + cd /output + python ./main.py gameserver 31001 6029769f6a44565a73e7882652e5b9a79029aa33_0 Traceback (most recent call last): File “./main.py”, line 45, in Runner(host, port, token).run() File “./main.py”, line 26, in run message = model.ServerMessage.read_from(self.reader) …

As the error says, “-1 is invalid value”. This is most likely one of the coordinates that you have sent. Only non-negative coordinates are valid

Dec 8, 2020 7:49:25 PM
mixei4

mixei4

КГУ

Getting this verification error: stdout: stderr: + cd /output + python ./main.py gameserver 31001 6029769f6a44565a73e7882652e5b9a79029aa33_0 Traceback (most recent call last): File “./main.py”, line 45, in Runner(host, port, token).run() File “./main.py”, line 26, in run message = model.ServerMessage.read_from(self.reader) …

Probably you return invalid coordinates which are outside the world in one of actions.

Dec 8, 2020 7:59:41 PM
anib
kuviman

kuviman

Codeforces

As the error says, “-1 is invalid value”. This is most likely one of the coordinates that you have sent. Only non-negative coordinates are valid

Thanks kuviman and mixei4. Seems I was using negative coordinates.

Dec 8, 2020 8:21:16 PM
modemaizer

modemaizer

VMedia

Фича-реквест: Думаю, было бы здорово показывать хинт при наведении на ник участника в списке игр. Было бы удобно видеть там рейтинг участника - количество очей и текущее место.

Dec 9, 2020 5:14:39 PM
r41d3n7

Will Sandbox games switch to type Round 2 after Round 1 finishes (also to type Final after Round 2) ? Or will it include all available types of Rounds?

Dec 13, 2020 4:09:44 PM
steleal

steleal

Ulyanovsk

Will Sandbox games switch to type Round 2 after Round 1 finishes (also to type Final after Round 2) ? Or will it include all available types of Rounds?

It will be include all available types of Rounds.

Dec 13, 2020 6:14:33 PM
r41d3n7
steleal

steleal

Ulyanovsk

It will be include all available types of Rounds.

Thanks. Do you know if there will be an indication as to what type of Round it is?

Dec 13, 2020 6:21:03 PM
r41d3n7

Thanks. Do you know if there will be an indication as to what type of Round it is?

Sorry, never mind. It can be inferred.

Dec 13, 2020 6:29:28 PM
skittles1412

skittles1412

San Diego

I am somewhat frustrated about the grading method. I get a lot of TLEs, but upon benchmarking (by just printing to stdout the amount of time spent), my program (the total sum of processing each tick) has never exceeded 2 seconds, while inputting takes 80 seconds. I am using java. Any suggestions?

Dec 13, 2020 8:01:36 PM
r41d3n7
skittles1412

skittles1412

San Diego

I am somewhat frustrated about the grading method. I get a lot of TLEs, but upon benchmarking (by just printing to stdout the amount of time spent), my program (the total sum of processing each tick) has never exceeded 2 seconds, while inputting takes 80 seconds. I am using java. Any suggestions?

There is a time limit for strategy to reply with an action for each tick - 1 second of real time, as well as a time limit for the whole game - 40 seconds of cpu time.

I believe the time limit is only 1 sec.

Dec 13, 2020 8:05:04 PM
skittles1412

skittles1412

San Diego

There is a time limit for strategy to reply with an action for each tick - 1 second of real time, as well as a time limit for the whole game - 40 seconds of cpu time. I believe the time limit is only 1 sec.

The sum of all my ticks never exceeds 2 seconds, and I’m getting TLE because of the total time exceeding 40 seconds.

Dec 13, 2020 8:08:24 PM
r41d3n7
skittles1412

skittles1412

San Diego

The sum of all my ticks never exceeds 2 seconds, and I’m getting TLE because of the total time exceeding 40 seconds.

Oh, sorry. Weird.

Dec 13, 2020 8:20:35 PM
bibigul

bibigul

Хотам и П.В

  • cd /output
  • ./aicup2020 gameserver 31004 84cccc9c7c3d65d2b7648e5ba953b87f74450a69_3 run.sh: line 4: 8 Segmentation fault (core dumped) ./aicup2020 “$@” помогите с ошибкой

Dec 14, 2020 12:51:40 PM
chis

chis

Nizhny Novgorod

У меня такое было в том числе при использовании DebugInterface без проверки на nullptr. Похоже он не null только локалраннере.

Dec 14, 2020 5:21:19 PM
skittles1412

skittles1412

San Diego

skittles1412

skittles1412

San Diego

I am somewhat frustrated about the grading method. I get a lot of TLEs, but upon benchmarking (by just printing to stdout the amount of time spent), my program (the total sum of processing each tick) has never exceeded 2 seconds, while inputting takes 80 seconds. I am using java. Any suggestions?

Bump

Dec 14, 2020 8:04:45 PM
poedator

Не могу понять, почему строитель не может построить дом в выбранном месте. Вижу на карте, что он стоит с отступом от других строений, но дом не строится. Прошу помочь, в частности, пояснить правила выбора места для строительства.

Dec 15, 2020 4:11:18 AM
mixei4

mixei4

КГУ

Не могу понять, почему строитель не может построить дом в выбранном месте. Вижу на карте, что он стоит с отступом от других строений, но дом не строится. Прошу помочь, в частности, пояснить правила выбора места для строительства.

Строитель должен стоять вплотную к стене дома, по диагонали нельзя.

Dec 15, 2020 5:03:25 AM
stulentsev

stulentsev

Dublin

skittles1412

skittles1412

San Diego

Bump

you can now use graal vm, see the announcements.

Dec 15, 2020 12:29:38 PM
yerlandinata

yerlandinata

PT Visionet Internasional

Quick tip from me, if you keep getting verification error for no real reason, check your strat running time per ticks, especially in the beginning, if in the beginning you take up 500ms++, then the server may kick you out immediately

Dec 15, 2020 7:30:29 PM
MikeWazowski

MikeWazowski

Moscow

а кто-нибудь знает, как повторить игру в песочнице с той же картой ? делаю копию игры, участники те-же, а карта то другая …

Dec 18, 2020 12:32:38 PM
tyamgin

tyamgin

Simferopol

MikeWazowski

MikeWazowski

Moscow

а кто-нибудь знает, как повторить игру в песочнице с той же картой ? делаю копию игры, участники те-же, а карта то другая …

никак

Dec 18, 2020 12:37:24 PM
MikeWazowski

MikeWazowski

Moscow

tyamgin

tyamgin

Simferopol

никак

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

Dec 18, 2020 12:52:29 PM
dbf

dbf

Moscow

MikeWazowski

MikeWazowski

Moscow

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

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

Dec 18, 2020 12:53:20 PM
amurushkin

amurushkin

ХНУРЭ (бывш. ХИРЭ, ХТУРЭ)

А что правда никто не придумал? Если локально хочешь ту же карту, то открываешь в повторе. жмешь паузу на 0 тике. и Ctrl+E и потом начинать с сохраненной позиции. а вот на сервере похоже что никак

Dec 18, 2020 1:12:58 PM
dbf

dbf

Moscow

О, это интересно. Но не поможет если есть что-то связанное с другими игроками.

Dec 18, 2020 2:09:23 PM
MikeWazowski

MikeWazowski

Moscow

amurushkin

amurushkin

ХНУРЭ (бывш. ХИРЭ, ХТУРЭ)

А что правда никто не придумал? Если локально хочешь ту же карту, то открываешь в повторе. жмешь паузу на 0 тике. и Ctrl+E и потом начинать с сохраненной позиции. а вот на сервере похоже что никак

ctrl-E сохраняет карту ? а как потом запустить на ней стратегию ?

Dec 18, 2020 3:01:27 PM
amurushkin

amurushkin

ХНУРЭ (бывш. ХИРЭ, ХТУРЭ)

MikeWazowski

MikeWazowski

Moscow

ctrl-E сохраняет карту ? а как потом запустить на ней стратегию ?

в меню есть возможность загрузить состояние

Dec 18, 2020 3:07:31 PM
MikeWazowski

MikeWazowski

Moscow

amurushkin

amurushkin

ХНУРЭ (бывш. ХИРЭ, ХТУРЭ)

в меню есть возможность загрузить состояние

Спасибо! пошёл осваивать …

Dec 18, 2020 3:21:08 PM
Lyova

Lyova

Yandex

А почему некоторые партии считаются упавшими для всех участников? Я прогонял локально копию - по крайней мере моя не падала, да и поведение остальных не похоже на упавших до самого конца. пример: https://russianaicup.ru/game/view/378622

Dec 18, 2020 9:31:22 PM
Dimon777

Dimon777

Tula

Lyova

Lyova

Yandex

А почему некоторые партии считаются упавшими для всех участников? Я прогонял локально копию - по крайней мере моя не падала, да и поведение остальных не похоже на упавших до самого конца. пример: https://russianaicup.ru/game/view/378622

там TIME LIMIT EXCEEDED у победителя. Бывает такое, что падение одной стратегии вызывает ощущение падения у остальных.

Dec 18, 2020 9:41:03 PM
jayesh25

jayesh25

none

Yup

May 14, 2021 2:04:28 PM