System Edukacji Młodych Informatyków Autonomiczny System Konkursów Informatycznych Bartosz Gęza Wojciech Łowiec Patryk Spanily Bartosz Szreder 26 czerwca 2009 () SEMI 26 czerwca 2009 1 / 12
1 Konkursy informatyczne Czym są? Przykłady konkursów 2 Stowarzyszenie Talent 3 Dotychczasowe rozwiązania 4 SEMI Czemu od nowa? () SEMI 26 czerwca 2009 2 / 12
Konkursy informatyczne Czym są? Zadania Treść z prostą fabułą opisuje problem algorytmiczny. () SEMI 26 czerwca 2009 3 / 12
Konkursy informatyczne Czym są? Zadania Treść z prostą fabułą opisuje problem algorytmiczny. Rozwiązaniem jest nieinteraktywny program wczytujący dane tekstowe i dający odpowiedź w formie tekstowej. () SEMI 26 czerwca 2009 3 / 12
Konkursy informatyczne Czym są? Zadania Treść z prostą fabułą opisuje problem algorytmiczny. Rozwiązaniem jest nieinteraktywny program wczytujący dane tekstowe i dający odpowiedź w formie tekstowej. Dana jest specyfikacja formatu wejścia i wyjścia programu oraz przykład takich danych. () SEMI 26 czerwca 2009 3 / 12
Konkursy informatyczne Czym są? Sprawdzanie rozwiązań Do zadania przygotowany jest zbiór danych testowych i rozwiązanie wzorcowe. () SEMI 26 czerwca 2009 4 / 12
Konkursy informatyczne Czym są? Sprawdzanie rozwiązań Do zadania przygotowany jest zbiór danych testowych i rozwiązanie wzorcowe. Rozwiązania są uruchamiane przy ograniczonych zasobach systemowych (czas procesora, ilość procesów, pamięć). () SEMI 26 czerwca 2009 4 / 12
Konkursy informatyczne Czym są? Sprawdzanie rozwiązań Do zadania przygotowany jest zbiór danych testowych i rozwiązanie wzorcowe. Rozwiązania są uruchamiane przy ograniczonych zasobach systemowych (czas procesora, ilość procesów, pamięć). Czas wykonania jest porównywany z czasem rozwiązania wzorcowego, a odpowiedź jest sprawdzana pod kątem poprawności. () SEMI 26 czerwca 2009 4 / 12
Konkursy informatyczne Przykłady konkursów Olimpiada Informatyczna Olimpiada Infromatyczna Gimnazalistów Potyczki Algorytmiczne High School Programming League Wielka Przesmycka () SEMI 26 czerwca 2009 5 / 12
Stowarzyszenie Talent Stowarzyszenie Talent Wyzwania, którym staramy się sprostać to: kształcenie kultury matematycznej i informatycznej; kształtowanie zdolności twórczego rozwiązywania problemów; [...] Zdania te realizowane są w szczególności poprzez: [...] organizowanie obozów naukowych, kursów, szkoleń, sympozjów, warsztatów, seminariów, konkursów w zakresie informatyki i matematyki; przeprowadzanie konkursów, ustanawianie nagród, fundowanie stypendiów dla osób, grup, instytucji, firm i środowisk; () SEMI 26 czerwca 2009 6 / 12
Dotychczasowe rozwiązania Bez sieci komputerowej Każdy uczeń dostawał dyskietkę z treściami zadań, na której zapisywał swoje rozwiązania. Nauczyciel skryptem *.bat uruchamiał rozwiązanie, uczeń z ekranu odczytywał wynik punktowy. () SEMI 26 czerwca 2009 7 / 12
Dotychczasowe rozwiązania Bez sieci komputerowej Każdy uczeń dostawał dyskietkę z treściami zadań, na której zapisywał swoje rozwiązania. Nauczyciel skryptem *.bat uruchamiał rozwiązanie, uczeń z ekranu odczytywał wynik punktowy. Nieskalowalne, niewygodne () SEMI 26 czerwca 2009 7 / 12
Dotychczasowe rozwiązania Obozy informatyczne Problemy ze skalowalnością rozwiązania dyskietkowego były odczuwalne przy około 60 uczestnikach obozów. Powstał prosty system CGI, który udostępniał treści i pobierał rozwiązania przez http. Rozwiązania były automatycznie sprawdzane i po krótkim czasie na stronie widoczne były wyniki. () SEMI 26 czerwca 2009 8 / 12
Dotychczasowe rozwiązania Obozy informatyczne Problemy ze skalowalnością rozwiązania dyskietkowego były odczuwalne przy około 60 uczestnikach obozów. Powstał prosty system CGI, który udostępniał treści i pobierał rozwiązania przez http. Rozwiązania były automatycznie sprawdzane i po krótkim czasie na stronie widoczne były wyniki. Prosty w konstrukcji, ale nie w obsłudze. Obsługiwany był wyłącznie przez twórców. Gdy twórcy nie przyjeżdżali na obóz, ktoś pisał nowy system. W ten sposób przeszły chyba 3 iteracje. () SEMI 26 czerwca 2009 8 / 12
Dotychczasowe rozwiązania SIO - System Internetowy Olimpiady Rozbudowany system używany w czasie Olimpiady Informatycznej. W ciągu roku na Olimpiadzie pojawia się około 15 zadań. () SEMI 26 czerwca 2009 9 / 12
Dotychczasowe rozwiązania SIO - System Internetowy Olimpiady Rozbudowany system używany w czasie Olimpiady Informatycznej. W ciągu roku na Olimpiadzie pojawia się około 15 zadań. Na jednym obozie w ciągu 5 dni pojawia się nawet 40 zadań, często dodawanych z dnia na dzień. () SEMI 26 czerwca 2009 9 / 12
Dotychczasowe rozwiązania SIO - System Internetowy Olimpiady Rozbudowany system używany w czasie Olimpiady Informatycznej. W ciągu roku na Olimpiadzie pojawia się około 15 zadań. Na jednym obozie w ciągu 5 dni pojawia się nawet 40 zadań, często dodawanych z dnia na dzień. SIO nie jest przystosowane do szybkiej zmiany danych testowych w razie potrzeby. Administrator potrzebował często 2 godzin dziennie na umieszczenie zadań w systemie. Uruchomienie SIO wymaga dużo czasu i umiejętności. () SEMI 26 czerwca 2009 9 / 12
SEMI Czemu od nowa? Cele Prosty w obsłudze - wszystko da się wyklikać, nie trzeba znać SQL Prosty w instalacji - wsadzasz płytę, wybierasz opcję Mobilny - historię i konta użytkowników można przenosić między obozami () SEMI 26 czerwca 2009 10 / 12
SEMI Czemu od nowa? Cele Prosty w obsłudze - wszystko da się wyklikać, nie trzeba znać SQL Prosty w instalacji - wsadzasz płytę, wybierasz opcję Mobilny - historię i konta użytkowników można przenosić między obozami Innowacyjny () SEMI 26 czerwca 2009 10 / 12
SEMI Czemu od nowa? Co nowego? Zestawy testów Administrator nie musi ręcznie uruchamiać rozwiązań zadania i ustawiać limitów czasu oraz punktacji. Testy są podzielone w zestawy sprawdzające określone aspekty rozwiązania zadania. Czasy wykonań są porównywane z wybranymi wzorcówkami. małe, duże rozmiary danych, liczby pierwsze, grafy z cyklami Dynamiczna punktacja Organizator konkursu chce premiować zawodników, którzy wcześnie wyślą rozwiązania lub rozwiążą zadanie, które mało kto rozwiązał. Jest to bardziej skomplikowany ranking niż dotychczasowe zsumuj i posortuj. System uprawnień i grup użytkowników Można przydzielić użytkownikowi uprawnienia do edycji podzbioru konkursów i dostęp do części zadań oraz nadzór nad grupą użytkowników, aby dostarczyć funkcjonalność potrzebną nauczycielowi. () SEMI 26 czerwca 2009 11 / 12
SEMI Czemu od nowa? Prezentacja systemu Krótka prezentacja działającego systemu. () SEMI 26 czerwca 2009 12 / 12