Slashdot Mirror


2002 ICFP Programming Contest

Phil Bewig writes "The 2002 ICFP Programming Contest begins today. The programming task will be posted at 12:00 noon Pacific Time." Which should be... just about... now.

7 of 215 comments (clear)

  1. Amateur by Anonymous Coward · · Score: 2, Interesting

    If you read the rules you will see:

    "The edges of the world behave as if there were walls beyond them."

    A common trick to implement this is to allocate a [width+2][height+2] array, and store the wall character at x=0,width+1, y=0,height+1. This is faster than testing if (x,y) is off limits each time.

  2. This looks like a fun one by cardshark2001 · · Score: 2, Interesting

    A lot more interesting (to me) than last year's. But the problem is that you'll have to build a server to test your bot. And how will you know how good your bot is unless it competes against another one?

    For the first time, though, I think I may actually enter.

    I love that the game is played over sockets, so any language can be used that can implement sockets.

    All in all, it sounds like fun.

    --
    WWJD? JWRTFA!
  3. Anyone remember the old school robot games? by wackybrit · · Score: 3, Interesting

    Anyone remember AT Robots? You created EXE files that called routines in the server's API and did robot style stuff. The aim of the game was simply to kill the other robots though, and to survive the longest.

    You could use any language (that produced a DOS compatible EXE), and I remember coding robots in the early 90's and having a lot of fun. Tournaments still continue for that game!

    There was another game in which you had to program a robot that was a race car and get it to go around a track that it had to learn. I forget the name of that, but I heard tournaments also take place for that too.

    Does anyone have any links to other cool programming games?

  4. Ambiguities and other valuable considerations by Anonymous Coward · · Score: 2, Interesting

    There's no no-op command, just pick, drop, and move. Can you no-op by picking up a package that is not there, or does it kill the robot?

    In other matters, offense seems to be remarkably underpowered. If bots aren't next to each other, the only offense would consist of sitting your bot in a strategic location knowing it can't be passed. Thus offense is only possible on maps with chokes, i.e. thin corridors with walls and water on the sides.

    Guarding the home base and packages, and other such "turtling," may be fairly powerful.

    Note: offensive and defensive considerations tend to be important only in 1 on 1. In a multi-robot free for all, playing offensive or defensive will likely lose you the game to people who simply deliver packages fast.

    As for (1,1) being the corner, I assume this is done so people can simply make (0,y) and (x,0)consist of walls, simplifying the programming.

  5. Re:Programming Languages by Christopher_G_Lewis · · Score: 2, Interesting

    I guess you can't do it in VB :-)

  6. Team play? by tap · · Score: 3, Interesting
    Accoring to the rules, player's robots will be competing with 0 or more other robots from other contestants. What if a group of people each enter a robot, then have the robots work together.

    You could open a socket and have the other robots try to connect, then communicate that way. That might be hard, if for example the robots are running on different machines or the organizers check for open ports.

    Since all the robots have almost complete information, you don't need to communicate. Have your robot do a little dance at the beginning, left right left right up down or something, to identify it as a team member. Your robot knows what the team members are doing because it can just compute what their decisions will be. The only information you lack is the weight and destination of a package that a teammate picked up.

    You could have the robot with the lowest X & Y coordinates be the leader. The other robots stay around him so he doesn't get bumped. Or carry packages to him to deliver. Or hang next to the home bases, and when another robot moves onto them, bump them so they can't pick the package. Since it takes one turn to pick up a package, I think it would be trivial to make a robot that hanges near a base and can prevent any single other robot from ever picking the package.

  7. Language ehhh? by MoogMan · · Score: 2, Interesting

    First Prize ...
    Peer recognition: Finally, the contest judges agree to state at least once during the presentation of the awards that the winning team's programming language is "the programming tool of choice for discriminating hackers."

    Second Prize ...
    Peer recognition: The contest judges agree to state at least once during the presentation of the awards that the winning team's programming language is "a fine programming tool for many applications."


    Man, someone *must* do it in BRAINF*CK or even funnier... Visual Basic. You can just imagine them saying that "VB is the programming tool of choice for distriminating hackers"