Комментарии 11
Вопрос по работе арены — для готового к торгу участника каким образом арена выбирает пару? Любой из свободных на данный момент? Что происходит, если в данный момент нет других свободных участников?
Или арена выбирает произвольного участника из всех (кроме этого участника кому ищет пару) независимо от их текущей занятости, ставит «торг-пару» в очередь и первый участник ждёт пока второй освободится?
Просто в первом случае организации торгов велик шанс, что ввиду не очень большого числа участников освободившись после торгов друг с другом пара скриптов опять же найдёт друг друга же и будет снова торговать между собой, а не с иными участниками.
Или это как-то иначе решается на арене? Например рандомной и разной небольшой задержкой для обоих скриптов-участников после окончания их торга и отдачей предпочтения (если возможных свободных на данный момент соперников более 1) не тому же с кем был предыдущий торг?
Или арена выбирает произвольного участника из всех (кроме этого участника кому ищет пару) независимо от их текущей занятости, ставит «торг-пару» в очередь и первый участник ждёт пока второй освободится?
Просто в первом случае организации торгов велик шанс, что ввиду не очень большого числа участников освободившись после торгов друг с другом пара скриптов опять же найдёт друг друга же и будет снова торговать между собой, а не с иными участниками.
Или это как-то иначе решается на арене? Например рандомной и разной небольшой задержкой для обоих скриптов-участников после окончания их торга и отдачей предпочтения (если возможных свободных на данный момент соперников более 1) не тому же с кем был предыдущий торг?
+1
Для каждой арены может быть только один ожидающий клиент (или ни одного). Если новый приходит, когда ожидающего нет, то становится ожидающим. Если ожидающий уже есть, то он вместе с новым образует пару.
Сейчас на арене
Сейчас на арене
standard
каждую секунду в среднем завершается 2.5 сеансов, что достаточно много для «перемешивания» пар.0
лучше самому добавить рандомную задержку между запусками.
0
В той самой предложенной UNIX shell команде которой,
можно например так:
Или под виндой такой батничек `client.bat` получился,
(сообщающий что ещё живой через каждые 100 сделок)
`0.05 .001 0.5` — рандомная задержка между торгами от 50 до 500 мс.
while true; do node haggle.js --id me@example.com:1234abcd myscript.js wss://hola.org/challenges/haggling/arena/standard; done
можно например так:
while true; do node haggle.js --id me@example.com:1234abcd myscript.js wss://hola.org/challenges/haggling/arena/standard; seq 0.05 .001 0.5 | shuf | head -n1 | xargs sleep; done
Или под виндой такой батничек `client.bat` получился,
@echo off
set cnt=0
echo "start trading"
:loop
node haggle.js --id me@example.com:1234abcd myscript.js wss://hola.org/challenges/haggling/arena/standard
seq 0.05 .001 0.5 | shuf | head -n1 | xargs sleep
set /a cnt+=1
set /a cntb = cnt%%100
if %cntb% equ 0 echo "trades count %cnt%"
goto loop
(сообщающий что ещё живой через каждые 100 сделок)
`0.05 .001 0.5` — рандомная задержка между торгами от 50 до 500 мс.
0
каков примерно будет процент участников «K» (второго этапа) от общего количества?
0
Возможно, сделаем не по проценту, а по пороговому значению среднего исхода сеанса. Ну и на решения посмотрим. Там же наверняка треть окажутся копиями example.js, как это бывает в каждом конкурсе.
0
Гипотетически, если example.js окажутся лучшими и займут топ, ведь не будет дискриминации по алгополовому признаку, и именно они пройдут во второй тур и возможно выиграют? ;)
Оно конечно понятно, что суть соревнования была не в этом, но пусть уж участвуют и такие решения на равных основаниях. Как и прочие, лишь бы правилам конкурса соответствовали.
Да, и ещё такая ремарка — там где есть рандом, всегда может выстрелить и не самая удачная стратегия, возможности, кондиции. Футбол сегодняшний хороший пример — чемпионы немцы (уже экс) прекрасные заслуженные результаты показывали, но вот наступил чемпионат-2018 и в раскладах ног, мяча и векторов $10 за все шляпы и книги забрала себе команда Южной Кореи. (не только Старкрафтом единым, молодцы, ага)
Так что а вдруг, и example.js окажется в тройке или даже победителем! Фантастический опыт тоже опыт.
Оно конечно понятно, что суть соревнования была не в этом, но пусть уж участвуют и такие решения на равных основаниях. Как и прочие, лишь бы правилам конкурса соответствовали.
Да, и ещё такая ремарка — там где есть рандом, всегда может выстрелить и не самая удачная стратегия, возможности, кондиции. Футбол сегодняшний хороший пример — чемпионы немцы (уже экс) прекрасные заслуженные результаты показывали, но вот наступил чемпионат-2018 и в раскладах ног, мяча и векторов $10 за все шляпы и книги забрала себе команда Южной Кореи. (не только Старкрафтом единым, молодцы, ага)
Так что а вдруг, и example.js окажется в тройке или даже победителем! Фантастический опыт тоже опыт.
0
Беда
«Added proof-of-work anti-spam measure (older clients may be asked to upgrade)»
Я первоначальную версию под себя переписал, теперь снова адаптировать.
«Added proof-of-work anti-spam measure (older clients may be asked to upgrade)»
Я первоначальную версию под себя переписал, теперь снова адаптировать.
0
Сегодня залили на арену каких-то ботов, которые 10 отдают, получая при этом 0.
Получается, свою стратегию нормально не потестируешь на арене (((
Получается, свою стратегию нормально не потестируешь на арене (((
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Конкурс по программированию: Торговля (объявления)