April 10, 2018 Marathon Matches: How They All Began

Running Wild – one of our first community members – started a forum discussion regarding ‘week long contests’ for algorithm problems.

His idea was to come up with a very basic image segmentation/reconstruction problem of sorts. “You are given two images, one is of a completed jigsaw puzzle, the other is of the pieces of the puzzle completely disassembled and face up. The pieces are arranged in some nice fashion so they can be numbered easily, and they are on some nice background so that you can easily find their edges. The problem is to decide where each piece ought to go.”

Eventually, his problem idea didn’t make the cut but the long-form algorithm contest had a number of takers. Later, that same year, the first ever Marathon Match was launched. How did the name ‘Marathon Match’ come about? Closer the launch date, another discussion thread was initiated by former admin dok (Greg Paul) to decide upon a name because in his words, ” ‘Long Competitions’ doesn’t really have a whole lot of pizzazz”!

Two of the suggested names in the reckoning were Marathon Match (given by KaasanErinn) and Extended Round Matches or ERMs (suggested by kaniskkunal). Although Extended Round Matches were more explanatory (following from SRMs), Marathon Match was the name that struck a chord with everyone. Thus began the trend of Marathon Matches.

So, what was the first Marathon Match like?

MM 1 was a Random Walking ‘fun’ challenge categorized under Graph Theory. 164 members took part in the challenge with an average submission rate of 4.11. Not bad for a first, eh! ctrucza from Romania was ranked #1 followed by rado42 (USA) and gsais (Mexico) Why were Marathon Matches initiated? Traditional algorithm rounds were great but they were also a bit restricted in the sense that they needed a fast response and solution. The Marathon Match format was aimed to provide a more flexible competition format with an extended timeline. It also offered different types of problems than what Topcoder algorithm rounds could offer. The MMs also encouraged participants to improve their solutions and resubmit iteratively throughout the length of the submission phase. The most recent submission is always the one that counts.

How MMs evolved over the years?

The first-ever MM was more of a learning process for competitors, or what we call a ‘Fun’ Marathon Match. Over the years, the types evolved. Competitors have to tackle the toughest algorithmic challenges — both real-world and theoretical– in a format where submissions are fairly open-ended, and not simply pass/fail. Examples include optimizing solar energy generation on ISS, cracking WWII Enigma codes, or simply putting out a forest fire. MMs are held 2-4 times per month with approximately 2-week long durations. The day and time of MMs vary from match to match. The matches are placed on the Marathon Match calendar anywhere from 1-2 weeks before the match begins.

What are the types of Marathon Matches?

If you are new to the community, this is where you can start to decide what kind of MMs you can compete in. Most Marathon Matches are “rated events”, which means your participation affects your Topcoder Rating. Each match will list whether it is a rated event or not. Broadly, there are three types of Marathon Matches:

  • “Fun” Marathon Matches
  • Client Marathon Matches
  • Advancement Tournament Marathon Matches (TCO)

If you are trying to improve your algorithmic skills, then the “Fun” Marathon are your best bet Client MMs are held for Topcoder’s customers and ask competitors to solve real-world problems, possibly in a restated format. The Topcoder Open (TCO) qualifiers and final championship rounds can be either theoretical or real-world problems. Marathon Matches have indeed come a long way and we are going to have 100th “Fun” Marathon Match. Yes, you heard that right. Watch our blog for more on Marathon Matches. 


categories & Tags


Sign up for the Topcoder Monthly Customer Newsletter

Thank you

Your information has been successfully received

You will be redirected in 10 seconds