PC² - PC²

PC² Programlama Yarışma Kontrol Sistemidir. California Eyalet Üniversitesi, Sacramento Bilgisayar Programlama Yarışması faaliyetlerini desteklemek için ACM ve özellikle ACM Uluslararası Üniversite Programlama Yarışması. 1990'da ve 1994'ten 2009'a kadar ACM ICPC Dünya Finallerini yürütmek için kullanıldı. 2010'da ACM ICPC Dünya Finalleri, Kattis, KTH otomatik öğretme aracı; ancak, PC2 dünya çapında çok sayıda ICPC Bölgesel Yarışması için kullanılmaya devam ediyor.

Bilgisayar programlama yarışmaları ve PC²

Bilgisayar programlama yarışmasının, başvuruları değerlendirmek için kuralları ve yöntemleri vardır. Aşağıda genel bir şekilde bir yarışma açıklanmaktadır. PC2 kullanıldı.

Bilgisayar programlama yarışması, takımların jüriye çözümler (bilgisayar programı) sunduğu bir yarışmadır. Ekiplere sınırlı bir süre içinde çözmeleri için bir dizi problem verilir (örneğin, 5 saat içinde 8-13 problem). Daha sonra jüri, sunulan çözümlere geçti / kaldı kararı verir. Ekip sıralamaları, çözümlere, çözümlerin ne zaman sunulduğuna ve sorunu çözmek için kaç girişimde bulunulduğuna göre hesaplanır. Hakemler bir Kara kutu testi Takımların hakemlerin test verilerine erişimi olmadığı durumlarda.

PC2 tek veya çok siteli programlama yarışmalarını yönetir. Ekibe oturum açmak, çözümleri test etmek, çözümleri göndermek ve jüri üyelerinin kararlarını görüntülemek için bir yol sağlar. PC2 jüri üyelerine ekip çözümleri talep etmeleri için bir yol sağlar (bir PC2 sunucu) çözümü çalıştırın / çalıştırın ve bir yargı girin. PC2 çetele modülü, sıralamaları ve istatistik web sayfalarını hesaplar ve oluşturur (HTML /XML )

Kullanım ve Kullanıcı Deneyimleri

PC2 için kullanıldı ACM Uluslararası Üniversite Programlama Yarışması 1994-2009 Dünya Finalleri. Ayrıca dünya çapında yüzlerce ICPC Bölgesel Yarışmasında da kullanılmıştır. 1989'dan beri ACM Pasifik Kuzeybatı Bölge Yarışması'nın yanı sıra Arap ve Kuzey Afrika Bölgesi, Asya'daki çok sayıda Bölgesel Yarışma ve ABD'deki çeşitli Bölgesel Yarışmalar dahil olmak üzere diğer birçok ICPC Bölgesel Yarışması tarafından sürekli olarak kullanılmaktadır. ICPC Bölgesel Yarışmaları için en yaygın olarak kullanılan Yarışma Kontrol Sistemi.[1]

PC2 ACM Orta Atlantik Programlama Yarışması tarafından birkaç yıldır kullanılmaktadır. Daha önceki yıllarda, sistem yöneticileri, dağıtılmış yapısı nedeniyle programla sınırlı bir başarı elde etti. Yarışma sitelerinin her biri bir bilgisayar çalıştırdı2 başlatmak ve kabul etmek için gereken sunucu Java RMI. 2005 sonbaharında merkezi bir veri merkezi kullanmak herhangi bir sorun ortaya koymadı. 2014'te, PC2 Yarışmaya 3: 45h düştü ve takımların gönderimleri için makbuz almasını engelledi. Jüri başvuruları alamadı - yarışma bir kazanan açıklanmadan sona erdi. Bu gönderimleri kurtarmaya çalışmak bir hafta sürdü. 2016'da da benzer bir hata meydana geldi. Sistem yöneticileri bir web eklentisi dağıtmaya karar vermişti. PC2 daha sonra yük altında başarısız oldu. Yarışma başlama zamanı 90 dakika ertelendi. Takımlar sorunları gönderemediler ve yarışma direktörü, ekiplerin sorunları daha sonra değerlendirilmek üzere bir zaman damgasıyla kurtarmasına olanak tanıyan bir çözüm bulmak için çabaladı. 2013 yılında, sistem operatörleri doğru takım adlarını giremedi ve takımları yarışmadaki sıralamalar (skor tahtası) hakkında bilgi sahibi olmadan bıraktı. Sistem operatörleri yarışma sırasında takım isimlerini düzeltemedi. Bu olaylar nedeniyle, bölgeyi düzenleyenler artık alternatif bir sisteme geçmeyi düşünüyorlar. Kattis, ACM tarafından ICPC Dünya Finalleri için kullanılan resmi sistemdir.

Sürüm 9'un tanıtımıyla (priz sürüm tabanlı) gecikmeler, sürüm 8'deki çoğu güvenlik duvarı sorunu giderildi.

Kısa bir revizyon geçmişi

SürümYılAna ÖzelliklerUygulama Dili
1.01989İlk sürüm MS-DOS, disket iletişimTurbo Pascal
2.01990Çoklu site KermitTurbo Pascal
4.2B1994LAN destekTurbo Pascal
6.11996pencereler versiyonVisual Basic
7.01998Windows, FreeBSD veya Linux; Java RMI iletişimIBM VisualAge için Java
8.02004Kod yeniden yazmayı tamamlayınTutulma Java
9.02008Tek Site Yöneticisi, Geliştirilmiş güvenlik ve konfigürasyon kontrolü, priz temelli iletişimJava
9.12009Otomatik Değerlendirme, Run / Clar Filtreleme, Harici API, ICPC Verilerini İçe Aktarma, Yerel LAFJava
9.22012GUI Olmayan Sunucu, Güvenlik İyileştirmeleri, Sunucuların Yönetici denetimi, Yeni yapılandırma seçenekleri, Rapor OluşturmaJava
9.32015YAML aracılığıyla yarışma yapılandırması, CLICS Etkinlik Besleme oluşturucu, Yarışma Profili değiştirme, Web Arayüzü, Çoklu Test Durumları ve Büyük Veri Dosyaları için destek, GUI Olmayan Jüri, Komut Satırı Çalıştırma Gönderimi, CLICS JSON puan tabloları için destek sağlayan Gömülü web sunucusu, yeni Yapılandırma SeçenekleriJava
9.42016İyileştirilmiş yarışma yapılandırması içe aktarımı; otomatik yarışma başlatma desteği; genişletilmiş REST Web HizmetleriJava
9.52017CLICS Giriş ve Çıkış Doğrulayıcıları için destek; Ek REST Web Hizmetleri; Gelişmiş API işlevselliği; GUI Olmayan Skor TablolarıJava

[2]

Ayrıca bakınız

Referanslar

  1. ^ ICPC Bölgesel Yarışma Direktörleri Anketi, ICPC RCD Sempozyumu, ICPC Dünya Finalleri, Mayıs 2017, Rapid City, Güney Dakota, ABD
  2. ^ Sürüm Geçmişi

Dış bağlantılar

Diğer kullanımlar

  • PC², Almanya Paderborn Üniversitesi'nin bir enstitüsü olan Paderborn Center for Parallel Computing'in kısaltmasıdır (http://www.upb.de/pc2 )