The MathWorks announced the results of its 20th online programming contest, open to MATLAB programmers around the world. Dr. Alfonso Nieto-Castañón, a PhD in cognitive and neural systems, was the winner of the programming challenge posed by The MathWorks on MATLAB Central, an online open exchange for the MATLAB and Simulink user community.
The challenge, titled “Color Bridge,” was a path finding problem that required MATLAB users to create the most efficient path of colored squares to connect two points. Making the challenge considerably more difficult, each of the squares was assigned a point value, and the winning program needed to find a path that resulted in the lowest number of total points. The online programming contest was both competitive and collaborative; Nieto-Castañón’s winning entry was a successful collaboration among many programmers, as participants continually built on and improved upon others’ submissions.
According to Ned Gulley of The MathWorks, “With each contest, I am amazed and impressed with our users’ submissions and participation. The MATLAB community has this incredible enthusiasm, following the contest throughout the week. Entries build on each other, as each entrant pushes the contest solution forward. Sometimes a small programming change can lead to a huge improvement in the solution.”
Dr. Nieto-Castañón ran a set of alternative search algorithms on every board. The algorithms assessed three basic measures: the true cost associated with a given color change; the distance to target measure, representing the minimal number of color changes necessary to reach the target at any step of the search; and the number of clusters of each color remaining in the board. His final, winning entry implemented five alternative search algorithms, each with up to three possible variations (when avoiding one color all together).
He said, “This was my fifth time participating in a MATLAB contest and as always, it was an incredibly fun learning experience. Although I was only able to participate in the contest’s beginning and end stages, I came out of it with a bag full of new tricks, algorithms and implementation ideas. I cannot wait to see the new problem that the MATLAB Central team comes up with in the next contest for us!”