This year I didnt have other events scheduled during the ICFP contest so I was finally able to enter. After reading the contest info, I was distracted by a nearby Halo game which went on for longer than expected.
My idea was to enter in the lighting (<24hrs) division -- by entering the course manually, that would be something which wouldnt have to be written. The paths could then be fed into a post-processor which would shift them to be faster.
My program (race.cl) (written in common lisp) generated the track (trc) files which were submitted and it also generated images of the track. The color key for the maps is:
| Map Name | Route Image | Steps |
| 1_Simple | Map | 18548 |
| 2_Hairpins | Map | 31091 |
| 3_Sepang | Map | 29612 |
| 4_EatYouAlive | Map | 33631 |
| 5_Car | Map | 10507 |
| 6_IcfpContest | Map | 7905 |
| 7_Gothenburg | Map | 7724 |
| 8_ManyWays | Map | 18106 |
| 9_PhilAndSimon | Map | 21624 |
The total of steps is 178748. This is about twice as much compared to the other teams I have looked at.
As you can tell from looking at images, the optimiser didnt get written. Rather, the data entry turned a bit problematic. Had I known, it would take as much time, it would have been good to make a tool to capture the points. At the time, entering it by hand seemed to be quick, but the typos ate up time.
The first task was to write the motion simulator, map input and track output functions. This went pretty quickly and wasnt much fuss. Deciding on the rules for driving took some experimentation. I didnt need a great robot driver, as the (never written) optimiser was supposed to fix that up.
The simulator only takes a couple of seconds to run. If the diagnostic output were removed it would be even less.