Home Register | Login

Welcome to the 2012 Queue ICPC Challenge!

The Final Tournament has ended. Congratulations to the winners!

See the results here

Queue ICPC Challenge

Sign up

To submit a player, you need an ACM Web account. Registering is free. Sign up here.

Already have an account? Log in here.

2012 Queue ICPC Challenge

ACM Queue Magazine is offering an online programming competition based on the 2011 International Collegiate Programming Competition (ICPC) Challenge problem. Participants will get to code a player and compete with others in the game of Coercion. Preliminary matches during the one-month coding phase will let you know how well your player is doing. A final double-elimination competition among all the submitted players will decide whose player is best.

Coding and preliminary matches will run from the start of the GMT day on January 15, 2012 to the end of the GMT day on February 12.

The Game of Coercion

The Queue ICPC Challenge game, Coercion, is played in an environment that looks something like the following figure. A red player and a blue player compete to coerce regions of the playing field to their own color. Each player directly controls three playing pieces called pushers. These pieces can't directly change colors on the field, but, they can be used to push other playing pieces called markers around the field. If enough markers touch a region of the field for long enough, they can coerce it to their own color. If a marker is trapped for long enough in a region of a different color, it may be coerced to that region's color. The game rules describe how to play the game, how to score points and how to win.

Writing your Player

Your player will be implemented as a stand-alone program, in C++, Java, C#, Python or Javascript. 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.

Running a Match

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 coercion.jar -player cpp myPlayer -player java -cp java_example Migrate

If your player is implemented in Java, you can run it against the example player using a command like:

java -jar coercion.jar -player java -cp java_example Migrate -player java MyPlayer

The more detailed usage instructions describe more options for starting up the game, including how to run the 3D visualization, how to capture a match as a trace file and how to debug your player during execution.

Submitting your Player

During the coding phase, players can access the competition through the queue site at: http://queue.acm.org/icpc/ From this page, participants will be able to register for the competition, 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 once. 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.

Additional Information

The Queue ICPC Challenge website, http://queue.acm.org/icpc/, will provide regularly updated information during the coding phase of the competition. If corrections or clarifications are needed, they will be linked from here.

A Google Group http://groups.google.com/group/qicpc?pli=1 has also been set up to support player discussion about the competition. Volunteers from ACM Queue Magazine and ICPC will monitor this group and try to answer questions, but, often, other participants are able to answer questions before we get a chance to.

We also have a Listserv list, queue-icpc for announcements related to the challenge.

Subscribe by sending an email to LISTSERV@listserv.acm.org, including the text "subscribe queue-icpc" in the body.

---   ---   ---

This challenge is run by David Sturgill at the University of North Carolina State University (with some help from Matt Slaybaugh at ACM). For questions not answered on these pages, please post them to the Queue-ICPC Google Group.

Thanks to IBM, the ICPC Collaborative Learning Institute, Baylor University, and Dr. David Sturgill for hosting this contest on the IBM Virtual Machine Center at Baylor.
Thanks also to IBM's Tim DeBoer who pioneered the tournament problem model in the ICPC Challenge from 2002-2006.

(Information about the previous Queue ICPC Challenge from January 2011 is available here)