Regularnie biorę udział w tak zwanych „konkursach programistycznych”, w których rozwiązujesz trudne problemy algorytmiczne za pomocą własnego kodu i umiejętności rozwiązywania problemów w ograniczonym czasie. Aby zapoznać się z przykładowymi przykładami tego, jak mogą one wyglądać, wyszukaj konkursy takie jak np. Google Code Jam lub ACM-ICPC.
(Jeśli wiesz, jakie są konkursy programistyczne, możesz pominąć następujący akapit)
W tych konkursach możesz rywalizować indywidualnie lub w zespołach, na stronie fizycznej lub w Internecie, a celem jest rozwiązanie jak największej liczby problemów przed zakończeniem konkursu. Każdy problem wiąże się z pewnymi ograniczeniami, które musi spełnić twoje rozwiązanie, takimi jak czas działania, wykorzystana pamięć itp. Trudność problemu może wahać się od „oczywistych sposobów rozwiązania” do „wymagających dużej wiedzy lub dużej pomysłowości do złamania”. Głównym celem jest oczywiście dobra zabawa, ale sukces może w niektórych przypadkach prowadzić do nagród pieniężnych, honoru, a nawet wywiadu z rekruterami z najlepszych firm, takich jak Google.
(Jeśli pominąłeś powyższy akapit, przestań go pomijać, bo oto moje pytanie)
Dzięki konkursom programistycznym byłem w stanie rozwinąć prawdziwe zainteresowanie algorytmiką, ogólnie informatyką i ogólnym poczuciem znaczenia, jeśli chodzi o kodowanie i rozwijanie moich umiejętności rozwiązywania problemów. Chciałbym to zrobić również w informatyce naukowej.
Pytanie: Czy istnieją jakieś konkurencje w tym samym stylu co czysto algorytmiczne, ale z naciskiem na analizę numeryczną, optymalizację i tak dalej?
Próbowałem Googlinga, ale na pierwszy rzut oka nie mogłem znaleźć…
Dodatek: Mam propozycję sprawdzenia projektu Euler, ale tak naprawdę nie tego szukałem. To, czego chcę, to bardziej arena do ćwiczenia bardziej „brudnych” liczb, takich jak kreatywność ze schematami rozwiązań dla pde, rozwiązywanie problemów optymalizacji numerycznej i tak dalej. Dla porównania, Kaggle to strona, na której możesz ćwiczyć eksplorację danych, uczenie maszynowe itp. W różnych regularnie organizowanych konkursach. Chcę czegoś takiego, ale do wdrażania i kreatywności dzięki schematom numerycznym i tym podobnym.
Odpowiedzi:
Nie znam żadnych aktualnych konkursów, ale zdecydowanie możesz rzucić okiem na 100-cyfrowe wyzwanie SIAM. Jest to zestaw 10 problemów, dla których konkurs wymagał 10 poprawnych cyfr na problem. Wszystkie problemy są typu „jeśli zrobisz to na ślepo, dostaniesz tylko kilka cyfr” (chyba że skorzystałeś z arytmetyki wieloprecyzyjnej, w niektórych przypadkach wymagającej ogromnej ilości cyfr). Zobacz tutaj stronę Wikipedii zawierającą tylko wyzwania i 10-cyfrowe rozwiązania
Książka „ The SIAM 100-Digit Challenge ” omawia wszystkie dziesięć problemów i zapewnia różne podejścia do uzyskania poprawności 10 lub więcej cyfr. Serdecznie polecam. Ale fajnie jest spróbować najpierw bez podglądania, a następnie przeczytać o wszystkich zgrabnych algorytmach numerycznych, które istnieją w celu rozwiązania tych problemów.
źródło
Jedną alternatywą byłyby najlepsze konkursy w dziedzinie kodowania danych. Nie pasuje do twojego opisu, ale bardzo często możesz spotkać się z konkursami, które są kombinacją algorytmów - rachunku kombinatorycznego - rachunku numerycznego - uczenia maszynowego. Miałem ich na oku.
Link do strony głównej konkursów z zakresu nauki o danych znajduje się tutaj .
źródło
Czy widziałeś konkursy organizowane przez GECCO (Genetic and Evolutionary Computation Conference)? http://gecco-2016.sigevo.org/index.html/HomePage#&panel1-1
Istnieje kilka różnych konkursów na konferencję 2016 na stronie: http://gecco-2016.sigevo.org/index.html/Competitions
Niektóre konkursy można podjąć, nawet jeśli nie masz zamiaru uczestniczyć w konferencji.
źródło