PC² - PC²
PC² je Programovací systém řízení soutěží vyvinutý na Kalifornská státní univerzita v Sacramentu na podporu činností Počítačového programového soutěže ACM, a zejména ACM International Collegiate Programming Contest. Sloužilo k vedení světového finále ACM ICPC v roce 1990 a od roku 1994 do roku 2009. V roce 2010 přešlo světové finále ACM ICPC na Kattis automatizovaný výukový nástroj KTH; nicméně, PC2 se nadále používá pro velký počet regionálních soutěží ICPC po celém světě.
Soutěže o počítačové programování a PC²
Soutěž v programování počítačů má pravidla a metody pro posuzování příspěvků. Následující text obecně popisuje soutěž, kde PC2 se používá.
Soutěž o počítačové programování je soutěž, kde týmy předkládají (počítačový program) řešení soudcům. Týmy dostanou řadu problémů, které je třeba vyřešit v omezeném čase (například 8–13 problémů za 5 hodin). Soudci poté vydají úsudky vyhovující / nevyhovující předloženým řešením. Pořadí týmů se počítá na základě řešení, kdy byla řešení předložena a kolik pokusů o vyřešení problému bylo učiněno. Soudci testují v a Testování černé skříňky kde týmy nemají přístup k testovacím údajům rozhodčích.
PC2 spravuje soutěže o programování na jednom nebo více webech. Poskytuje týmu způsob, jak se přihlásit, otestovat řešení, odeslat řešení a zobrazit rozsudky soudců. PC2 poskytuje soudcům způsob, jak požadovat týmová řešení (od a PC2 server) spusťte / spusťte řešení a rozhodněte. The PC2 modul scoreboard počítá a vytváří tabulky a statistické webové stránky (HTML /XML )
Využití a uživatelské zkušenosti
PC2 byl použit pro ACM International Collegiate Programming Contest Světové finále v letech 1994–2009. Rovněž byl použit ve stovkách regionálních soutěží ICPC po celém světě. Od roku 1989 je nepřetržitě využívána v ACM Pacific Northwest Regional Contest, stejně jako v mnoha dalších regionálních soutěžích ICPC včetně regionu Arabské a Severní Afriky, mnoha regionálních soutěžích v Asii a několika regionálních soutěžích v USA. nejpoužívanější systém řízení soutěží pro regionální soutěže ICPC.[1]
PC2 je již několik let využívána středoatlantickou programovací soutěží ACM. V dřívějších letech měli správci systémů s programem omezený úspěch kvůli jeho distribuované povaze. Na každém ze soutěžních webů byl spuštěn počítač2 server, který bylo potřeba zahájit a přijmout Java RMI. Použití centrálního datového centra na podzim roku 2005 neodhalilo žádné problémy. V roce 2014 PC2 narazil 3: 45h do soutěže a zabránil týmům v získávání potvrzení za jejich podání. Porotci nebyli schopni získat podání - soutěž skončila bez oznámení vítěze. Trvalo jeden týden, než se pokusili tyto podklady obnovit. Podobné selhání nastalo v roce 2016. Správci systému se rozhodli nasadit webový doplněk do PC2 který pak selhal při zatížení. Čas zahájení soutěže byl zpožděn o 90 minut. Týmy nedokázaly předložit problémy a ředitel soutěže se snažil najít řešení, které by týmům umožnilo ušetřit problémy s časovým razítkem, které je třeba zvážit později. V roce 2013 operátoři systému nezadali správné názvy týmů, takže týmy neměly informace o pořadí v soutěži (srovnávací přehled). Provozovatelé systému nebyli schopni během soutěže opravit názvy týmů. Kvůli těmto incidentům nyní organizátoři regionu uvažují o přechodu na alternativní systém, jako je např Kattis, což je oficiální systém používaný ACM pro světové finále ICPC.
Se zavedením verze 9 (zásuvka zpoždění, byla vyřešena většina problémů s bránou firewall ve verzi 8.
Stručná historie revizí
Verze | Rok | Hlavní rysy | Jazyk implementace |
---|---|---|---|
1.0 | 1989 | První vydání MS-DOS, disketa sdělení | Turbo Pascal |
2.0 | 1990 | Více stránek prostřednictvím Kermit | Turbo Pascal |
4.2B | 1994 | LAN Podpěra, podpora | Turbo Pascal |
6.1 | 1996 | Okna verze | Visual Basic |
7.0 | 1998 | Windows, FreeBSD nebo Linux; Java RMI sdělení | IBM VisualAge pro Jáva |
8.0 | 2004 | Kompletní přepis kódu | Zatmění Jáva |
9.0 | 2008 | Single Site Admin, Vylepšené zabezpečení a kontrola konfigurace, zásuvka - komunikace na základě | Jáva |
9.1 | 2009 | Automatizované posuzování, filtrování běhu / Clar, externí API, import dat ICPC, nativní LAF | Jáva |
9.2 | 2012 | Server bez grafického uživatelského rozhraní, vylepšení zabezpečení, správa serverů, nové možnosti konfigurace, generování zpráv | Jáva |
9.3 | 2015 | Konfigurace soutěže prostřednictvím YAML, generátor CLICS Event Feed, přepínání profilů soutěže, webové rozhraní, podpora více testovacích případů a velkých datových souborů, rozhodčí bez GUI, zadávání běhu příkazového řádku, vestavěný webový server poskytující podporu pro srovnávací tabulky CLICS JSON, nové možnosti konfigurace | Jáva |
9.4 | 2016 | Vylepšený import konfigurace soutěže; podpora automatického zahájení soutěže; rozšířené webové služby REST | Jáva |
9.5 | 2017 | Podpora pro validátory CLICS vstupu a výstupu; Dodatečné webové služby REST; Vylepšená funkčnost API; Srovnávací tabulky bez grafického uživatelského rozhraní | Jáva |
Viz také
Reference
- ^ Průzkum regionálních ředitelů soutěží ICPC, ICPC RCD Symposium, světové finále ICPC, květen 2017, Rapid City, Jižní Dakota, USA
- ^ Historie vydání
externí odkazy
Jiná použití
- PC² je zkratka Paderborn Center for Parallel Computing, institutu Paderborn University, Německo (http://www.upb.de/pc2 )