The regular tournaments for the 2013 ICPC Challenge are complete, and we've run one more tournament combining the top eight teams from the regular 2013 ICPC Challenge and the 2013 Open ICPC Challenge. For this extra trounament, we used all new maps, so every match could be any player's game. The tree below shows how the tournament played out. Congratulations to the following ICPC World Finalist Teams for taking the top four places in the tournament.
|Ludwig-Maximilians Universität München||First Place|
|University of Lethbridge||Second Place|
|Universidad Tecnologica de Pereira||Third Place|
|University of Toronto||Fourth Place|
Clicking on the little blue circles in the tournament tree will try to launch an applet to view the match. You can also download the trace file for each match using the links below and watch it in the TracePlayer that's included in the game binary for coderunner.
The tournament for the 2013 ICPC Challenge is complete. Congratulations to the following teams for finishing in the top four places in the tournament.
|Ludwig-Maximilians Universität München||First Place|
|Universität Rostock||Second Place|
|Universidad Tecnologica de Pereira||Third Place|
|University of Lethbridge||Fourth Place|
The following image shows how it played out. Clicking on the little blue circle for a match will try to start up an applet playing the match. If this isn't working for you, you can use the links below to download a trace file for the match and play it locally. Soon, we will be posting videos of the tournament that was presented at the World Finals in Saint Petersburg.
For 2013, anyone could compete in the Open ICPC Challenge. After receiving submissions from 14 participants, we ran a double elimination tournament to determine the winners. Congratulations to the following teams for placing in the top 4. Starting in the week of July 7, we will conduct one more double elimination tournament between the top eight participants in the Open ICPC Challenge and the top eight World Finalist teams from the ICPC Challenge. Visit this page to see how this tournament plays out.
|St. Petersburg State University of IT, Mechanics and Optics - vi34||First Place|
|University of Lethbridge - Lerner||Second Place|
|Aalto University - flowerpot||Third Place|
|University of British Columbia - Purple Puppy||Fourth Place|
In the tree below, if you click on a little blue circle for a match, you may be able to watch the match inside an applet. If this isn't working for you, the links below will let you download a gzipped trace file for the match. After uncompressing this, you should be able to watch it in the TracePlayer, just like any of the preliminary matches.
We've finished the last night of preliminary matches. We ran more than 600 matches among the participating teams and used the following rankings to build the tournament tree above.
|Ludwig-Maximilians Universität München||30|
|Universidad Tecnologica de Pereira||24|
|Can Tho University||18|
|University of Wisconsin - Madison||18|
|University of Lethbridge||15|
|Belarusian State University||12|
|University of Toronto||10|
|The Chinese University of Hong Kong||9|
|Cairo University - Faculty of Computers and Information||4|
|Escuela Superior De Computo Instituto Politecnico Nacional||2|
|Kazakh-British Technical University||1|
|University of Central Florida||0|
|Samara State Aerospace University||0|
|Renmin Unversity of China||0|
At the end of the coding phase for the Open ICPC challenge, here's what the preliminary player rankings looked like. We used these rankings to build the final tournament tree for this contest.
|St. Petersburg State University of IT, Mechanics and Optics - vi34||18|
|Ural State University - Dandelion||16|
|Moscow State University - Ocksumoron||12|
|National Institute of Technology, Warangal - nitwteam||11|
|University of Lethbridge - Lerner||9|
|Balashov Institute of Saratov State University - BiSGU||9|
|Urmia University - yashar_sb_sb||8|
|Carnegie Mellon University - Future Gadget Lab||6|
|Universidad de Oriente - Sede Antonio Maceo - Napster||5|
|University of Lethbridge - uleth individual 2||4|
|National Research University Higher School of Economics - dedpyhto||3|
|Free University of Tbilisi - GeorgiaTeam||0|
|University of British Columbia - Purple Puppy||0|
|North American College - NAC #1||0|
|Misr International University - loay||0|
The ICPC Challenge gives programming teams and their coaches a chance to work on a different kind of problem. Working with their coach, teams implement a player and compete against other teams' players in a new game called CodeRunner. Preliminary matches during the two-week coding phase will let teams know how well their players are doing. A final double-elimination competition among all the submitted players will decide whose player is the best.
Coding and preliminary matches will run from the start of the UTC day on June 3 to the end of the UTC day on June 16. World Finals teams can work on developing their players, submit preliminary player versions, compete in matches against other teams' players and see how their strategy compares. After the coding phase ends, a tournament among the latest versions of all teams' players will be presented as part of the 2013 ICPC World Finals events in Saint Petersburg.
The 2013 ICPC Challenge game, CodeRunner, has a playing field that looks something like the following figure. A red player and a blue player compete to collect gold, while avoiding several enemies that are moving around the map. Each player directly controls a single runner character, who can move left and right, climb up and down ladders and break temporary holes in the floor with a large hammer. In addition to collecting gold, players earn points by exploring the map and trapping enemies and their opponent in holes. The game rules describe how to examine the state of the map and control the runner. All you have to do is figure out how to win.
The 2013 ICPC Challenge is brought to you by a team from Saratov State University. Nikolay Kuznetsov and Dmitry Matov, both students at Saratov and former ICPC world finalists and medalists, worked with Mike Mirzayanov, their former coach and head of the Programming Competitions Training Center at Saratov, to develop the idea for Coderunner. They implemented, tested and refined it until it was ready, and without their generous contribution of time and expertise, this year's challenge would not have been possible.
Your player will be implemented as a stand-alone program in C++ or Java. You will interact with the game by reading information about the game world from standard input and writing your next move to standard output. The sample players can be a quick way for you to get started writing your player and interacting with the game. A more detailed description of the execution environment explains the input and output format for your player as well as other rules for what your player can do.
Once you have a player written, you can run it by starting up the game and pointing it to your player's executable. If you have written a player in C++, you can run it against the sample Java player using a command like:
java -jar coderunner.jar -player cpp myPlayer -player java -cp java_example GoToNearestGoldPlayer
If your player is implemented in Java, you can run it against the example player using a command like:
java -jar coderunner.jar -player java -cp java_example GoToNearestGoldPlayer -player java MyPlayer
The more detailed usage instructions describe more options for starting up the game, including how to capture a match as a trace file, how to debug your player during execution, etc.
During the coding phase of the competition, players can access the competition through the ICPC Challenge site at: http://icpc.baylor.edu/challenge/ From this page, participants will be able to login to the submission system, submit player code, and see how they are doing in preliminary matches. The latest working submission is considered the participant's current player. The final tournament and the nightly preliminary matches will use the most recently submitted player code that successfully builds.
All source code and supporting files for a player must be submitted at the same time. From the submission interface, select each source file that's part of your player, and then press the "Upload Files" button to upload the whole thing. If you forget to submit an important file, you will need to re-submit everything to have a working player.
As the contest runs, we'll post a summary of corrections and clarifications here.
The ICPC Challenge website, http://icpc.baylor.edu/challenge/, will provide regularly updated information during the coding phase of the competition. If corrections or clarifications are needed, they will be linked from here.
The ICPC Challenge is an effort to continue to offer the kinds of visual, interactive, competitive programming problems popularized by previous offerings of the Java Challenge. Teams implement player code that competes with other teams' players in a game-like simulation. A tournament among the players determines the winner.
If you like the challenge, join our community on Facebook. Visit our fanpage and become a fan.
For the 2012 ICPC World Finals, we offered the ICPC Bumper Boat Rally. Teams developed programs that would pilot their boats around an aquatic course. Players didn't know what the shape of the course would be or what their fleet of boats would be like until the start of the match. See the 2012 ICPC Challenge Page for a more detailed description of the problem and the winners. You can also watch videos of the tournament and even try out the problem yourself.
The 2011 ICPC finals featured an ICPC Challenge problem called coercion. Teams developed a program to try to claim territory on a map by pushing around markers and then using these to convert map regions to their own color. See the 2011 ICPC Challenge Page for a description of the problem and the winners. You can also check out preliminary standings from the coding phase of the competition and see the results of the final tournament. You can even watch videos of the matches. If you want to try the problem for yourself, you can download the game binary and write your own player.
The 2010 ICPC finals featured an ICPC Challenge problem appropriate to the February weather in Harbin, China. Teams developed a program to control a group of children in a snow-covered field. See the 2010 ICPC Challenge Page for a description of the problem and the winners.
The 2009 ICPC finals featured an offering of the ICPC Challenge. The 2009 ICPC Challenge Page describes the challenge problem from that year and gives the preliminary standings from the coding phase of the competition. You can see the results of the final tournament and even watch videos of the matches. If you want to try the problem for yourself, you can download the game binary and write your own player.
If you are excited about helping out with the ICPC Challenge, or if you have questions, please contact the ICPC Challenge Director, David Sturgill ().