OLYMPIADS IN INFORMATICS, 2016, Vol. 10, pp. 177 - 194
© IOI, Vilnius University

ISSN 1822-7732

DOI: 10.15388/ioi.2016.11

Distributed Tasks: Introducing Distributed Computing to Programming Competitions

Adam KARCZMARZ 1 , Jakub ŁĄCKI 2 , Adam POLAK 3 Jakub RADOSZEWSKI 1,4 , Jakub O. WOJTASZCZYK 5

1 Faculty of Mathematics, Informatics and Mechanics, University of Warsaw ul. Banacha 2, 02-097 Warsaw, Poland
2 Department of Computer, Control, and Management Engineering Antonio Ruberti at Sapienza University of Rome via Ariosto 25, 00185 Roma, Italy
3 Department of Theoretical Computer Science, Faculty of Mathematics and Computer Science, Jagiellonian University ul. Łojasiewicza 6, 30-348 Kraków, Poland
4 King’s College London Strand, London WC2R 2LS
5 Google Warsaw Emilii Plater 53, 00-113 Warsaw, Poland
e-mail: a.karczmarz@mimuw.edu.pl, j.lacki@mimuw.edu.pl, polak@tcs.uj.edu.pl, jrad@mimuw.edu.pl, onufry@google.com

Abstract

In this paper we present distributed tasks, a new task type that can be used at programming competitions. In such tasks, a contestant is supposed to write a program which is then simultaneously executed on multiple computing nodes (machines). The instances of the program may communicate and use the joint computing power to solve the task presented to the contestant. We show a framework for running a contest with distributed tasks, that we believe to be accessible to contestants with no previous experience in distributed computing. Moreover, we give examples of distributed tasks that have been used in the last two editions of a Polish programming contest, Algorithmic Engagements, together with their intended solutions. Finally, we discuss the challenges of grading and preparing distributed tasks.

Keywords:

programming contests, distributed tasks.


PDFTo preview full article text in PDF format click here

Get Free ReaderYou could obtain free Acrobat Reader from Adobe


Copyright © International Olympiads in Informatics, Vilnius University Institute of Mathematics and Informatics, 2016