ICFPC-2008

lilia_rass

Чё, кто-нть планирует участвовать? :mad:

agaaaa

Я планирую. В прошлом году понравилось :)

karkar

аналогичо

valodyr

О! О! Когда?
Посмотрел. Вероятно, попытаюсь )

agaaaa

11-14 июля

fufa58

отметилсо :cool:

lilia_rass

Где третий из нашей прошлогодней? :cool:

fufa58

в смысле, четвертый, StepLg?
Ботает, наверное.
Впрочем, я наверное отдельно пойду <_<

lilia_rass

Ты как, в одиночку или с кем-то?

agaaaa

Ещё один знакомый вызвался уже.

Helga87

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

evgen5555

А там регаться надо или нет?

lilia_rass

На шарпе? :D

lilia_rass

Надо, да, но ближе к делу.

agaaaa

C#/F#
Думаю всё-таки первый
В прошлом году плюсы показали свою несостоятельность. Проще написать вдвое-втрое более медленную прогу на C#, чем отлаживать аналогичную программу на C++

agaaaa

Странно, что в этом году до начала контеста никакой информации не видно.
В прошлом был "блог".

lilia_rass

В прошлом году плюсы показали свою несостоятельность.
Ну-ну, учитывая, что они победили :grin:

Helga87

Надо, да, но ближе к делу.
Напомнишь в этом треде? А то, чувствую, могу тупо продолбать момент :)

lilia_rass

Без проблем :D

Helga87

Ура!

lilia_rass

Кстати, в этом году ICFPC проходит в США, начинается в 12:00pm PDT (UTC-7 у нас сейчас MDT (UTC+4 т.е. у нас контест начнётся в 23:00 в пятницу :cool: и закончится в 23:00 в понедельник.
Первая ночь обещает быть увлекательной, ололо :grin:

lilia_rass

Да, правила существенно изменились... :shocked:

Helga87

Кто на каком языке будет писать?

lilia_rass

C++, вероятно.
Возможно ещё C, Perl.

Papazyan

Лучше всего на Q.

lilia_rass

Такого, вроде, нет в списке...

karkar

Кто на каком языке будет писать?
Мои предпочтения в порядке убывания: OCaml, Ruby, C#, C++. Никогда не писал под mono, поэтому c учетом новых правил насчет C# не уверен. А на С++ придется забыть про MFC, например (в прошлый раз CString'и очень пригодились).
Я тут на днях решил потренироваться и реализовал на окамле транслятор днк->рнк из прошлогоднего соревнования. По сравнению с моим прошлогодним решением на С++, вариант на OCaml в два раза короче по числу строк, потребляет меньше памяти и работает почти в 10 раз быстрее (54000 итераций в секунду на одном 2GHz ядре). Вот он:
http://stuff.thedeemon.com/endo_ocaml.zip
Из встреченных неудобств - ограничения 32-битной версии окамла на длину строк (пришлось делать надстройку над bigarray) и размер родных int'ов (они на 1 бит меньше обычного, из-за чего на self check один пункт не проходил, пришлось местами юзать int64).
Некоторые фичи использовал первый раз, поэтому времени убил довольно много - 8 часов на первоначальный вариант с копированием строк (он был в 4 раза быстрее аналогичного на С++) и еще часов 8 на вариант с хранением днк в виде дерева. :( Впрочем, на С++ написание заняло почти столько же времени.
Из забавного: оказалось, можно увеличить скорость проги в 6 раз просто выводя номер итерации не каждый раз, а пореже. :) Т.е. вывод на консоль офигенно медленный (в висте, по крайней мере).
А еще только недавно понял, почему инопланетянина так звали:
http://en.wikipedia.org/wiki/Endomorphism

Papazyan

Такого, вроде, нет в списке...
Легко добавить

lilia_rass

Вперёд, хуле.

Maurog

на С++, вариант на OCaml в два раза короче по числу строк, потребляет меньше памяти и работает почти в 10 раз быстрее
бросай С++ - это не твоё.
Впрочем, на С++ написание заняло почти столько же времени.
бросай OCaml - это не твоё.
Из забавного: оказалось, можно увеличить скорость проги в 6 раз просто выводя номер итерации не каждый раз, а пореже. Т.е. вывод на консоль офигенно медленный (в висте, по крайней мере).
это особенность консоли и не зависит имхо от языка или операционки. быстрее в файл флудить.

Vladislav177Rus

Тоже отмечусь.

lilia_rass

Где ж ты пропадал... ;)

karkar

Хм. Попробовал сейчас собрать прошлогодний вариант от Alex'a, про которой он говорил
Могу выложить наш исполнитель DNA->RNA, который работает достаточно быстро (порядка 45000 итераций в секунду на endo.dna).

Собрал в MinGW с GCC 3.4.5 с опцией -O2 (в MSVS он не компилится).
На моей машине он обрабатывает исходную днк 4 минуты (7800 итер/с) без вывода РНК и 5 минут с выводом. Может, я неправильно собираю или там что-то подкрутить надо?
Окамловый вариант исходную днк с выводом рнк транслирует за 37 секунд на той же машине, используя вдвое меньше памяти, а по строкам короче в 2,5 раза.

lilia_rass

irc.rinet.ru #flocal
присоединяйтесь)

psihodog

а там как-нть регистрироваться надо?
а то написано, что не надо, вроде, но вдруг я что не так понял? =)

lilia_rass

Вроде не надо. В рассылке дополнительно это уточняли.

Dmitriy82

Скачайте пожалуйста лайвсиди в локалку, у кого анлим...
http://icfpcontest.org/live-cd.html

fufa58

это ж ещё не финальная версия?
счас сскачаю, тем не менее

fufa58

у меня медленно качается, утром выложу - несмертельно, надеюсь?

Dmitriy82

Не критично. Может и вправду лучше подождать последней версии. Спасибо.

katrin2201

меня другое интересует
что такого особенного может быть в задании, что для этого пришлось выкладывать лайвсиди образ в 700мег?
или задание будет обычным, а это просто такая перестраховка.

vall

кстати когда по MSD оно начнётся?

katrin2201

ихнее PDT это UTC-7
наше MSD это UTC+4
соответственно их 12 дня это наши 11 вечера

Dmitriy82

Я думаю это некоторый способ формализовать понятие исполняемого субмишена. А исполняемые субмишены - наверное потому что основным содержанием контеста будет разработка сложной существенно интерактивной программы.
И ещё такая, совсем безумная мысль. Поскольку организаторы пока как-то туманно выражаются насчёт того, как будет сделана регистрация, можно предположить, что просто все присланные решения будут копошиться в определённом энвайронменте и кричать название своей команды. Кто громче крикнет - победитель.

katrin2201

вообще я внимательней перечитал фак - там написано что онлайн тестирования не будет, так что большая вероятность что это тупая перестраховка от последующих протестов типа "а наше решение тоже выдавало ответ!"
снимаю свой вопрос =)

Dmitriy82

А он убитый какой-то. Всего 150MB.

Helga87

Кто готов уже? На чем таки решили писать?
У нас 4 человека (3 сегодня уже готовы, 4-й завтра будет доступен). Осложняется тем, что один из сегодняшних троих в другом часовом поясе (11 часов разницы с Москвой). Будем писать на C#
Команда называется P Squared (хотя, я так понял, что до конца соревнований мы так и не узнаем мест, т.к. все проверки будут после завершения).

Dmitriy82

Вы лайвсиди скачали уже? Если да - заделитесь.

Helga87

У нас все граждане не в локалке :(

fufa58

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

karkar

Кто готов уже? На чем таки решили писать?

Я опять в одиночку рубиться буду, похоже. Писать планирую на OCaml. LiveCD скачан и протестирован, ocaml и ruby там работают, а вот с С++ проблемы, судя по обсуждениям в мейллисте.

fufa58

я тоже хочу в одиночку, но у меня пропадает время до 10 часов субботы и почти весь понедельник :(

valodyr

Понеслась!

fufa58

сервера лежат =/

6yrop

ну наверное дело в CD? (я читал только этот тред)

valodyr

До условия я достучался. И что-то оно меня не возбуждает, честно говоря.

fufa58

да ужжж, год назад трава у них была позабористей :crazy:

karkar

Задача напоминает icfpc 2003 года, только тут еще монстры и карта неизвестна.
Подстава, что симулятор не выложили вовремя.

Helga87

Чо то у них физика меняется слишком часто. :( Только что обнаружил, что они тихонечко выложили новую версию симулятора, в которой совсем по-другому работают повороты и мб еще что-то.
Мягко говоря разочарован.

karkar

?
Я вижу версию 1.1, которая там лежит с раннего утра. Более раннюю я и не застал.

Helga87

Я как только начался контест и не обнаружилось симулятора, поставил крон, который мне сообщил сразу же. Я скачал и начал юзать. Уже даже написал эксперимент по определению параметров и предиктор. А потом случайно зашел на страницу download-а и выяснил, что теперь все совсем по-другому и надо переделывать.
Ощущение, что они вообще не готовились к контесту - c++ не работал, сервер глючит (например, сейчас наблюдается эффект, что если пропускать ходы, т.е. не посылать команд, нерегулярно приходит телеметрия - иногда до 180 миллисекунд разница бывает) и пр.

agaaaa

да, как-то грустно в этом году
вот сейчас мне на вопрос отвечают, что по мнению организаторов детали физики не имеют особого значения
хотя как без них держаться на траектории я вообще не понимаю
I don't think details of physics simulation matters too much.

Helga87

Вот еще один замечательный баг в sample server:
http://projects.cecs.pdx.edu/~jgmorris/icfpc08/index.cgi/ti...
The sample server uses the same acceleration value for both accelerating and breaking. To see this, edit simple-small.wrld and change "brake" to zero. Your robot will accelerate and brake at the same rates however with zero "brake", it shouldn't be able to brake at all.
* owner changed from gm to jhr.
Yeah, there may be a problem there.
Короче говоря, организаторы слажали. Полтора дня потрачено в пустую.

Helga87

Вот это замечательно (правда, я уже уехал из офиса, проверить не могу):
Anyway, I observed that running the server with graphics yields different
results than running it w/o or (using the no-gui version).

agaaaa

Ну это добавляет доп. задержку.
Я всё равно уже написал свой визуализатор на клиентской стороне.

SPARTAK3959

Надо им устраивать контесты раз в месяц, а не раз в год - тогда опыта как topcoder наберутся и лажать будут меньше.

fufa58

нухз. предыдущие два года задания были зачотные.

vall

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

karkar

опыта как topcoder наберутся и лажать будут меньше.
Все дело в том, что организаторы каждый год совсем разные. Потому и уровень задач и организации отличается. Видимо, универам Чикаго и Портленда далеко до Утрехта и Карнеги Мелона.

pitrik2

дык чо там? результы известны? ктонить из форумчан в сотку попал?

fufa58

результаты афаик в конце сентября будут

pitrik2

а ну да
там же в этом году не показывались предварительные результы
мдеее

agaaaa

я в итоге забтл
организаторы не порадовали :(

apl13

организаторы не порадовали :(
Под линукс писать заставляли?

agaaaa

С тех пор, как есть моно, этот вопрос меня не парит особо, уважаемый Автор Сарказма. Я, конечно, поматерился про себя, но стерпел.
Хотя, имхо, это был идиотский ход.
В основном они не порадовали выдумкой с LiveCD, багами тестового сервера, а главное - отказами отвечать на некоторые вопросы (у меня сложилось впечатление, что они и сами не знают как точно работает физика в их симуляции).

Helga87

Полностью солидарен.

karkar

Результаты пока неизвестны, есть лишь некоторые неофициальные сравнения, вроде этого:
http://www.hackerdom.ru/ICFP/2008
Подозреваю, что нормальный с сервер с умными марсианами организаторы еще не сделали просто. :)
Отчеты:
http://projects.cecs.pdx.edu/~jgmorris/icfpc08/index.cgi/wi...
Многие участники говорят, что поначалу были разочарованы заданием, но потом оказались довольны - задача имела низкий порог вхождения (по сравнению с парой предыдущих лет) и неограниченную глубину.
Мой отчет с картинками и видео:
http://www.thedeemon.com/icfpc08/

karkar

"Выдумка с LiveCD" была на ICFPC и в предыдущих заданиях, когда надо было присылать проги, это просто способ убедиться, что присланный код запустится. Другое дело, что в этот раз организаторы сильно слажали - многие вещи на их LiveCD не работали (Scheme, C++ не имели необходимых библиотек (Haskell) или вообще не были представлены (например, Common Lisp был выкинут, а бинарник в нем собрать - отдельная история).

Chupa

фпятёрке :D

conv3rsje

и ниипет :D

pitrik2

церемония награждения
http://video.google.com/videoplay?docid=-4697764813432201693
результы по местам лучше видны тут:
http://shinh.skr.jp/icfp08/
Judges prize: Stephen Hicks, using LaTeX
Lightning round winner: Alexey Shchepin. Using ML! — "ML is the programming tool of choice for rapid prototyping"
Overall winner: Team Smartass wins again. Java is the programming language of choice for discriminating hackers.
Top 10 languages: Top 10 languages: Java, C++, Java, Haskell, Haskell, C , C++ , C , C++, C++
Half the contest entries were in C++, C and Java. Haskell made up ~10%
functional languages represent 1/4th of all entries
336 teams, 140 lightning round entries, an estimated 18 person-years of work
North America, Europe, Russia, Japan, Australia well represented. Poor following outside Japan & Korea in Asia (not a single submission from an IP within China --- laughs ensue in the video). Highest density (teams/million) in New Zealand.

rosali

"Error 404" это мы! :cool:
не надо оваций :p

karkar

Молодцы! А меня съели марсиане на 8-й карте.

lubanj

ребята, а расскажите вашу фишку?! ну или какие там могут быть стратегии
//я условие читал, вникал, подробно смотрел, в мероприятии не участвовал

conv3rsje

Там походу какой-то рандом был сплошной :)
У нас не была закоммичена последняя версия, но все равно нигде не съели...
ЗЫ Поздравляю :)

rosali

ну какая там может быть стратегия, pathfinding. перебираем возможные пути, выбираем самый короткий. что такое путь, что такое короткий и что такое возможный - всё на эвристиках ясное дело.
от марсиан убегать там кстати у нас прикольный метод использовался - анти-метод-параллельного-сближения :) берем вектор скорости марсианина, и наш. думаем куда нам нужно повернуть (с сохранением модуля скорости) чтобы с ним встретиться. ну и в месте этой самой встречи ставим "тень марсианина". потом pathfinder на самих марсиан вообще не смотрит, а "тени" обрабатывает так же как кратеры и булыжники.
если интересно подробнее могу дать ссылку на svn =)
PS. спасибо всем за поздравления! :)

conv3rsje

Как-то у вас сложно все :)
У нас был просто стек алгоритмов, которые модифицировали управляющие команды в зависимости от ситуации
Например, проверка на то, что поворот который сейчас хотим сделать никуда нас не влепит в ближайшие ходы
А марсиане считались булыжниками диаметром = скорости сближения :)

karkar

Кто на чем писал?

rosali

> Top 10 languages: Java, C++, Java, Haskell, Haskell, C , C++ , C , C++, C++
мы 3-ие
Оставить комментарий
Имя или ник:
Комментарий: