Nick Howe is back! He’s taken (ordered?) the Early Bird Special by submitting the best entry before the 8PM deadline, our first mid-contest award in Daylight.
Our next prize is the Saturday Leap, awarded to the contestant who makes the biggest single improvement to the score between midnight and midnight Eastern Time. You can track the leaps via the statistics.
By the way, we’ve created an event for the MATLAB Contest on Facebook. If you’re participating in the contest, or even just watching, you’re welcome to RSVP for the event or just “like it“.
The current leading entry has a time of 89s, result of 663581, cyc of 9, and nodes of 1961. Here’s a breakdown of the current tradoffs:
-cyc and score are a 1:1 ratio (i.e. each point shaved off cyc is a point shaved off the score)
-time and score are a 1:0.2 ratio
-result and score are a 1:0.01 ratio
-node and score are a 1:0.001 ratio
As is common at this point in the contest, Nick Howe’s entries have already settled in just below the ‘knee’ of the time exponential curve, which is rather flat until about ~110s. However, because of results are so high right now and change quite a bit with small tweaks, I think we are going to find more payoff in trying to reduce the results by searching the boards for a bit longer, at least until the times get up around the 120s range. Unfortunately that also means that during the various contest end times the queue is going to get very backlogged, since each entry will take several minutes to execute.
Unfortunately, unlike in any of the contests since I’ve been doing this, the leading code is so complicated I wasn’t able to fully understand or document it, even after spending several hours on it today.
Perhaps I’m just being dense lately, but I think part of the reason is there are some VERY sophisticated graph theory type calculations going on in the code, which I was having difficulty following. As a result, only about 80% of the code is documented, but that should be enough to give people a general idea of what’s going on.
Interestingly enough the cyc complexity and node counts of the code are equal to or less than what we’ve seen in other contests, so those aren’t really good measures this time around regarding the ‘readability’ of the code.
Hopefully this won’t discourage people from participating during the rest of the contest. If anyone with a better grasp of the various sections or graph theory is willing to pick up on commenting the code where I left off, I encourage you to!
Leave a Reply
About
The MATLAB Programming Contest is a semi-annual competition where contestants submit MATLAB code to try to solve a challenge. For more information, see the overview.
I have been able to figure out the scoring formula and am posting it here as I traditionally do. As usual, it’s very similar to the recent contests:
score = k1*result + k2*e(k3*runtime) + k4*max(complexity-10,0) + k5*nodes
Where:
k1 = 0.01
k2 = 0.001
k3 = 1/12 (0.08333…)
k4 = 1
k5 = 0.001
The current leading entry has a time of 89s, result of 663581, cyc of 9, and nodes of 1961. Here’s a breakdown of the current tradoffs:
-cyc and score are a 1:1 ratio (i.e. each point shaved off cyc is a point shaved off the score)
-time and score are a 1:0.2 ratio
-result and score are a 1:0.01 ratio
-node and score are a 1:0.001 ratio
As is common at this point in the contest, Nick Howe’s entries have already settled in just below the ‘knee’ of the time exponential curve, which is rather flat until about ~110s. However, because of results are so high right now and change quite a bit with small tweaks, I think we are going to find more payoff in trying to reduce the results by searching the boards for a bit longer, at least until the times get up around the 120s range. Unfortunately that also means that during the various contest end times the queue is going to get very backlogged, since each entry will take several minutes to execute.
As I traditionally do about this time in the contest, I’ve submitted a heavily commented version of the code, which happens to currently be at the top of the leaderboard:
‘ComplicatedMess3′, submission 53910
http://www.mathworks.com/contest/flooding.cgi/view_submission.html?id=53910
Unfortunately, unlike in any of the contests since I’ve been doing this, the leading code is so complicated I wasn’t able to fully understand or document it, even after spending several hours on it today.
Perhaps I’m just being dense lately, but I think part of the reason is there are some VERY sophisticated graph theory type calculations going on in the code, which I was having difficulty following. As a result, only about 80% of the code is documented, but that should be enough to give people a general idea of what’s going on.
Interestingly enough the cyc complexity and node counts of the code are equal to or less than what we’ve seen in other contests, so those aren’t really good measures this time around regarding the ‘readability’ of the code.
Hopefully this won’t discourage people from participating during the rest of the contest. If anyone with a better grasp of the various sections or graph theory is willing to pick up on commenting the code where I left off, I encourage you to!