An open exchange for the MATLAB and Simulink user community |
Hosted by The MathWorks |
Golf Contest StatisticsBy Matthew Simoneau and the MATLAB Contest Team. As usual, the MATLAB Contest resulted in a pile of interesting data to pick through. Fortunately, MATLAB is an excellent tool for the task. We've made some plots to help us understand the action. Contents
Entries per holeLet's start by looking at the participation for each of the seven holes individually. This chart shows the total number of entries submitted for each hole. It bounces around between 269 and 441 without any overall trend. The three late-afternoon (EST) contests (Encryption, Heaviest, and Snake) drew the largest number of entries.
Participants per holeIf we look at the number of participants for each hole, we see a very different picture. It definitely trends downward as the contest continued. Perhaps this is because the problems grew harder and required more investment from the author.
Entries per participantCombining the last two sets of numbers shows the average number of entries per participant. The average number of submissions from each player rose steadily from under 3 to more than 8. Those who played the latter holes played them intensely.
Participation per participantKeeping the same colors from the previous charts, here we use the 305 contestant names as the primary sort. With the exception of Per Rutquist, all of the winners of individual holes are in the top 20: Guy Shechter, Imre Polik, Stijn Helsen, Claus Still, François Glineur, and Nicke. Remarkably, Per, our overall winner, submitted only 17 entries througout the entire series. Of the five holes he entered, he came away with two first place and two second place finishes.
One hole at a timeLet's look at each hole chronologically. For each one, we'll take three slices on the data: showing how the entries accumulated while the hole was open, showing the score of all the passing entries, and listing all the leaders. FrequenciesChristopher Cheng was the first person to submit a passing entry for the first hole in the first MATLAB Golf contest. And it only took him only 14 minutes. ![]() ![]() Chronological list of leaders 1. 10:14 Christopher CHeng, "Chris's Entry", 144 chars 2. 10:15 walter kuhn, "freqsort", 109 chars 3. 10:19 Alex Backer, "freqsort 2", 103 chars 4. 10:19 Emmanuel Lange, "freq", 98 chars 5. 10:21 Laszlo Sragner, "first2", 92 chars 6. 10:25 jed pack, "hello", 90 chars 7. 10:26 Alex Backer, "randperm", 89 chars 8. 10:32 Jason Friedman, "small optimizations", 87 chars 9. 10:34 Christopher Cheng, "different from my previous", 77 chars 10. 10:37 Mark Bartsch, "Pretty good", 60 chars 11. 11:19 Julian, "j1", 37 chars 12. 11:49 Guy Shechter, "j11", 36 chars PalindromeThis hole converged quickly. After the first 35 minutes, the length only dropped four more characters and the rate of new submissions decreased. After nearly an hour with the same leader, Per and Imre squeaked out a character each in the final 20 minutes of play. ![]() ![]() Chronological list of leaders 1. 13:11 Stijn Helsen, "test_1", 122 chars 2. 13:11 cyclist, "cyclist_1", 85 chars 3. 13:17 François, "premiereidee", 79 chars 4. 13:18 Philip Top, "top4", 78 chars 5. 13:20 Philip Top, "top5", 74 chars 6. 13:24 Per Rutquist, "PPal", 67 chars 7. 13:31 Per Rutquist, "PPal2", 66 chars 8. 13:35 trail, "shameless_1", 64 chars 9. 13:42 shameless_1, "shameless_2", 62 chars 10. 14:40 Per Rutquist, "PPal999", 61 chars 11. 14:50 Imre Polik, "Shame n", 60 chars EncryptionHere is another fast hole. Per's winning entry, only 45 characters long, held the lead for the final 48 minutes of play, longer than any other winner. Also, jed pack demonstrates the first case of successful, incremental, extended self-improvement, taking the lead four times in a row and shaving off another character each time. ![]() ![]() Chronological list of leaders 1. 16:08 walter kuhn, "bruteforce1", 91 chars 2. 16:08 Christopher Cheng, "try 2", 81 chars 3. 16:10 Christopher Cheng, "try 3", 78 chars 4. 16:11 Bowen Kerins, "Attempt #1", 71 chars 5. 16:12 Stijn Helsen, "test_0", 68 chars 6. 16:12 Christopher Cheng, "try 4", 64 chars 7. 16:14 Stijn Helsen, "test_1", 63 chars 8. 16:14 Stijn Helsen, "test_2", 62 chars 9. 16:16 jed pack, "hmmm", 56 chars 10. 16:17 jed pack, "hmm", 55 chars 11. 16:19 jed pack, "hmmmm", 54 chars 12. 16:28 jed pack, "N!", 53 chars 13. 16:53 christian ylämäki, "sheapshots", 52 chars 14. 16:56 peng, "peng04", 51 chars 15. 17:03 jed pack, "hmm hmm HA", 49 chars 16. 17:09 christian ylämäki, "test_7 tweak", 48 chars 17. 17:12 Per Rutquist, "PCode", 45 chars InfectionClaus' winning entry held the competition at bay for nearly as long, 38 minutes. Notice all the blue dots distributed evenly over the whole space. Some contestants, it seems, enjoy submitting their entry just to see if they've solved the puzzle, even if they know they won't place. ![]() ![]() Chronological list of leaders 1. 10:20 GreatRumpuscat, "Fierce/Hairy_again", 113 chars 2. 10:22 Jeff Foster, "?", 112 chars 3. 10:23 Laszlo Sragner, "fourth", 111 chars 4. 10:24 wak, "try4", 107 chars 5. 10:26 Alex Vorwerk, "takeANY", 89 chars 6. 10:28 Christopher Cheng, "chris try 1", 87 chars 7. 10:29 Imre Polik, "Try 2", 86 chars 8. 10:32 Mark Bartsch, "Kinda short", 69 chars 9. 10:33 Mark Bartsch, "Kinda short 2", 66 chars 10. 10:36 Mark Bartsch, "Kinda short 3", 63 chars 11. 10:37 Porpeta, "Porps2", 62 chars 12. 10:48 Niilo Sirola, "take this", 61 chars 13. 11:22 Claus Still, "FSec4", 60 chars HeaviestFrancois submitted the winning entry with less than a minute on the clock, bumping out his own entry out of first place. ![]() ![]() Chronological list of leaders 1. 15:14 Stijn Helsen, "test_01", 118 chars 2. 15:15 yixin li, "test_test", 114 chars 3. 15:17 Francois Glineur, "FDA12.1", 105 chars 4. 15:21 Antony Pearson, "ant1", 102 chars 5. 15:29 Francois Glineur, "FDA12.3", 100 chars 6. 15:54 Stijn Helsen, "test_09", 98 chars 7. 16:00 Mohsen Nosratinia, "5th try!", 96 chars 8. 16:27 Francois Glineur, "FDA12.5", 95 chars 9. 16:59 Francois Glineur, "FDA12.01", 91 chars PathfinderThis was our toughest hole. Peter was the first contestant to submit a passing entry one hour and eleven minutes after we posted the challenge. We were really starting worry that we'd made a mistake in the testing machinery until his entry "Finally?" made it through the queue. Solving the problem from scratch is difficult. We're considering awarding a prize for the first entry to pass in future contests. On this hole, we can really see the effect of the queue lag. Notice the two plateaus the entries lie on. Those in the first big clump are trying to improve on Peter's entry because it was at the top of the leaderboard. Meanwhile, Christopher had already moved ahead 49 characters, but nobody could tell because it hadn't been scored yet. The process repeats with his entry. ![]() ![]() Chronological list of leaders 1. 11:11 Peter J. Acklam, "Finally?", 250 chars 2. 11:15 Peter J. Acklam, "Tweak", 243 chars 3. 11:19 Christopher Cheng, "probably not the shortest", 194 chars 4. 11:35 Christopher Cheng, "... - tweak", 193 chars 5. 11:46 Christopher Cheng, "... - tweak 2", 192 chars 6. 11:54 Christopher Cheng, "... - tweak again 4", 191 chars 7. 12:04 wak, "also ran", 185 chars 8. 12:07 Imre Polik, "zero1", 183 chars 9. 12:21 wak, "also ran2", 160 chars 10. 12:23 wak, "also ran 3", 152 chars 11. 12:41 Per Rutquist, "PPath III", 130 chars 12. 12:52 Per Rutquist, "PPath IV", 128 chars SnakeOur final hole ends in a photo finish, with Nicke submitting a significantly improved entry with less than two minutes left. His winning entry has elements of John's. Even though it probably hadn't even been processed yet, Nicke must have spotted its promise in the queue. ![]() ![]() Chronological list of leaders 1. 15:38 Martijn, "transpose", 277 chars 2. 15:39 anitha, "transpose1", 276 chars 3. 15:39 cyclist, "cyclist_4", 274 chars 4. 16:07 cyclist, "cyclist_13", 273 chars 5. 16:11 Colin Ross, "Wobbbling Woburn", 262 chars 6. 16:16 Martijn, "transpose 3", 255 chars 7. 16:21 Martijn, "transpose 4", 254 chars 8. 16:23 Francois Glineur, "Serpent2.3", 252 chars 9. 16:24 Martijn, "transpose 5", 248 chars 10. 16:34 Guy shechter, "transpose5.1", 247 chars 11. 16:39 PU, "x2", 238 chars 12. 16:42 PU, "x3", 231 chars 13. 17:05 John Arthur, "h8", 179 chars 14. 17:27 John Arthur, "h10", 175 chars 15. 17:35 John Arthur, "h11", 174 chars 16. 17:53 John Arthur, "h13", 172 chars 17. 17:58 Nicke, "Revolution IV", 139 chars ConclusionThank you everyone who participated. Your feedback has given us some great ideas for the next MATLAB Golf contest and also the next traditional-style MATLAB contest. Please keep your suggestions coming by posting to the newsgroup or e-mailing us. We'll see you in the queue! |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Related Topics |
| New Products | Support | Documentation | Training | Webinars | Careers | Newsletters | RSS |
| Problems? Suggestions? Contact us at contest@mathworks.com | © 1994-${current_year} The MathWorks, Inc. Trademarks Privacy Policy |