There are so many entries to the All Japan Micromouse contest that it takes two days to get the job done. For most, the Saturday is qualifying day. All the robots get to run and then best times are used to select the finalist.
For the 2012 event, held at Shibaura Institute of Technology, there were 83 entries in the expert classic class, 41 entries in the half-size class, 112 entries in the line follower and 100 in the freshman classic class. In addition, about 10 entries in the classic and 4 in the half-size were from seeded entrants who did not need to qualify in order to get a place in the final. These robots had already proven themselves in a regional heat over the last few months.
The freshman class is for beginners. I believe you only get to be a freshman once then you must enter the expert class. There are so many entries in this class that four qualifying events are run simultaneously to get their finalists because the final is run the same day. I do not have any information about who did what in that event.
My event is the expert classic and there were two simultaneous qualifying runs going on. This takes pretty much all day. If you are lucky, you get a high number and run later in the day. A low number puts you on the spot early with no additional time for tuning or debugging. To my immense relief, I drew number B-24 which gave me a couple of hours to see if I could fix the problem I discovered the day before. It took until 30 minutes before my run to sort it out. On the way, several minor issues got fixed but the real bug eluded me.
When I finally found it, I was embarrassed to have made such a stupid mistake that should have been spotted immediately. Two variables in the code that steer the mouse were used without being initialised if the mouse entered a cell with no walls. The result was a random and, usually violent, turn off to one side or another and a crash. All this took so long that the tuning of things like sensor values and turn points simply did not get done and I went into the qualifying with some doubt that it would go well.
The maze was reasonable with three principal routes (although my solver only finds two) and D2D went its merry little way and found the centre in 40.235 seconds. On the way back, while searching some more of the maze, it crashed. You only get five runs so that was one gone. I put it back to the start and set it off again but got an error that said it could not find the goal. The crash had put in walls where there were none and I had not noticed that it was in a critical error. The sensible thing would have been to completely reset the mouse but I didn’t. Big mistake on my part. Now I had to start again from scratch with only three runs left.
D2D found the goal again in about the same time as before and set about searching some more of the maze. Then it committed a cardinal sin by re-visiting the start cell while searching. That meant another run lost. Clearly there was an error but I had only one run left. You are not allowed to pick up the mouse unless it has clearly stopped and, when it came back to the start again, it had not learned enough to try a speed run. My mistake as an operator rather than in the mouse code had not made stuff any better. In the end, I got 35th place and no chance of an entry in the final.
Dave Otten’s MITEE 13 fared significantly better in 15th place with a best run time of 10.772 seconds. The leaderboard however, was topped by Khiew Tzong Yong with a time of 6.342 seconds. With all the top ten mice managing times within half a second, it was clear that the final would be hard fought. Only one Japanse entrant, Nakajima san, finished in that top ten. Four entries were from Taiwan, and four from Singapore. In case you were wondering, Ng Beng Kiat was unable to attend this year and Kato-san, Kojima-san and Hirai-san and were seeded so we did not get to see them run.
This years stand-out interesting entry was MM7 from Shinichi Yamashita. A recurring theme in micromouse building is the idea of placing a camera such that it can see the whole maze, analyse the image and then just run. Few actually try and even fewer succeed. MM7 came a lot closer than most.
The camera has a resolution of 1300×974 pixels and sits on the end of a boom arm with a very nice parallel movement that raises it about 25cm from the maze. From here it takes three pictures giving it coverage of the entire maze. The tops of the walls are detected by a colour differencing filter and the image is mapped back to an overhead view by inverse perspective transformations. Since the pegs are in known locations, the image can be manipulated to map onto hos positions. Walls then are detected as the presence or absence of data in between the pegs. All the image processing takes place in custom FPGA chips. Having seen the images and the resulting maps, I am extremely impressed and how well this mouse performs. It did not run the maze but, as far as I could tell from the results, that was not because it failed to map the walls correctly. Here you can see the images generated by the camera (the mouse does not care if they are upside down), and the resulting mapping onto the maze.
In the half-size contest, 13 mice were selected to go through to the final with the fastest time being set, once again, by Khiew Tzong Yong, from Singapore with Excel mini-3.
The line follower was a big event and I find it increasingly interesting. Unlike the micromouse, there is still a wide variety of solutions and not much evidence of convergent design. Dave Otten’s Jehu attracted some interest for its minimalist design and a completely different take on the sensor issue. Instead of conventional sensors looking down over a part of the line, he uses a PSD device to look ahead, covering about a 40mm width 100mm or so in fron of the mouse. This sensor gives a position directly without interpolating at the cost of two, simultaneous A/D conversions rather than the dozen or more normally needed. Jehu is a very smooth runner but is still in its early days and was unable to get a fast time on the qualifying track.
Another attention grabber was Nakajima-san’s entry. This 8 wheeled demonstration of engineering skill is also in its early stages and, although somewhat slow, showed some promise with three successful runs.
Somewhat predictably, the leader of the 32 finalists at the end of qualifying was Hirai-san’s Cartis03.
After the qualifying, there is the mouse party. This year’s buffet was above average and I actually failed to get to try everything. Must be losing my touch.