ton4eg ([info]ton4eg) wrote,
@ 2009-06-30 02:28:00
Previous Entry  Add to memories!  Tell a Friend  Next Entry
Рецепт хороших выходных.
Наконец-то мы поучаствовали в http://icfpcontest.org/. Это програмерский контест приуроченный к конференции по функциональному программированию, и его смысл заключается в том, чтобы померяться какой язык круче.

Вот здесь феерическое описание контеста 2006 года. http://users.livejournal.com/_adept_/24049.html

Задания бывают очень интересные(2006, 2007), а бывают не очень(2008).

В этом году суть заключалась в том, чтобы управлять спутником, причем физическая модель спутника закодиравано в бинарных файлах представляющих программу для виртуальной машины, которую нужно было написать. Влияя на входные порты виртуальной машины можно было управлять спутником. Самая простая задача заключалась в том, чтобы перевести спутник с одной круговой орбиты на другую. Самая сложная заключалась в том, чтобы пролететь по 11 спутникам, причем можно посещать заправочную станцию и кроме земли в модели присутствует еще Луна!

3 из 4х задач мы решили и в предварительном рейтинге заняли аж 58 место. http://icfpcontest.org/scoreboard.php

В прошлом году мы учавствовали с n0mad-0 и дрюней и жоско слили. В этом году [info]n0mad_0  слинял в Киев, и типа писал что это круче чем кодить все выходные. А мы с дрюней решили собрать дрим тим. В пятницу чурс уговорил Мишу поехать с нами, а второй Миша не уговорился мотивируя тем что будет ботать. За ночь Миша дописал ядро виртуальной машины и тоже уехал бухать в лес. Дрюня написал гуи и уехал в зоопарк. Чурс ничего не написал и уехал бухать в лес и встретил там того Мишу, который должен был ботать. Вася написал решение первых задач и уехал на концерт. Я остался один закомитил решение а оно не работает, поэтому я лег спать.(Это было днем в субботу). Вот такая вот Санта Барбара.

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

В третьей задачке нужно было встретиться со спутником, который летает по произвольной орбите. После долгих обсуждений придумали решение, посчитали теоретически, но обнаружили проблему, что теоретическое решение из-за погрешностей связанных с дискретностью модели давало ошибку в несколько километров, в то время как требовалась точность в 1 километр. Мы потратили много времени на подгонку, наверное, нужно было написать автоматический подгоняльщик, но у нас не дошли руки. В понедельник Васю осенило написать "неоптимальный вариант", который "следит" за спутником который надо догнать. Алгоритм работал надежно но не совсем оптимально. То есть топливо тратилось чуть больше чем нужно.

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

Еще у нас была проблема, как объединять код, дело в том, что Миша пишет на си, Вася на си++ с классами, но юзает сишные библиотеки и немного stl, а мне хочеться юзать только плюсовые потоки, каждого воротит от кода другого и каждый норовил переписать чужой код.

Совсем не пользовались чудесами цивилизации типа контроля версий. Вообще писал в основном Вася, поэтому без котроля версий было терпимо.

В целом, задачка была интереснее чем в прошлом. Нам удалось сделать хоть чтото =) Но до хакерских задач 2006 2007 она не дотягивает.

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

Выходные прошли не зря...

ЗЫ
Здесь менее сумбурное описание происходящего:
http://users.livejournal.com/_adept_/94839.html#cutid1
Мы обогнали адепта на 1 место в преварительном рейтинге)



(4 comments) - (Post a new comment)


[info]n0mad_0
2009-06-30 04:49 am UTC (link)
да нее, мне жаль, что я не принял участия =(
но, с другой стороны, если бы я не развеялся на етих выходных, то я бы все равно не принес никакой пользы.

Моя был замучан.

А вообще супер. Я думаю ближайшие стопяццот лет нам не повторить успеха =D

(Reply to this) (Thread)


[info]n0mad_0
2009-06-30 04:52 am UTC (link)
я думаю, вы не смогли до конца реализовать главный козырь - у вас была полная команда физиков-всеросов и астрономов-межнаров, закончивших мипт =D

(Reply to this) (Parent)(Thread)


[info]ton4eg
2009-06-30 04:57 am UTC (link)
в прошлом году тоже физика была.

(Reply to this) (Parent)(Thread)


[info]n0mad_0
2009-06-30 06:09 am UTC (link)
мы тогда до нее не дошли )

(Reply to this) (Parent)


(4 comments) - (Post a new comment)

Create an Account
Forgot your login or password?
Login w/ OpenID
English • Español • Deutsch • Русский…