The Olympics for Computer Science

20 August 2021
Associate Professor
Computer Science
SHARE THIS ARTICLE

The International Olympiad in Informatics (IOI) is one of the most prestigious competitions in the computer science world. Held every summer since 1987, the tournament sees exceptional high school students from over 80 countries gather to test their programming and problem-solving skills.

Over two days, students have to solve six tasks that test their skills in areas such as arithmetics and geometry, graph algorithms, and string processing. Each student works alone, with only a computer.

Competition is fierce — only half will win a medal, and only one-twelfth of all participants will take home a coveted gold.

“A gold medal can more or less decide the fate of a student,” says Tan Sun Teck, an associate professor at NUS Computing and a member of the IOI International. “Once someone gets a gold medal, they can enrol in a very good university, get scholarships, etc.”

For instance, NUS offers a full computer science scholarship to gold medallists, regardless of their nationality or A level scores, with no strings attached.

When they are undergraduates, the winners will also have a chance to take part in the International Collegiate Programming Contest, or ICPC, the university-level equivalent of IOI. A win there “will guarantee their future,” says Tan, “because the big tech companies will come calling.”

Competing in Covid times

The 2020 and 2021 editions of the IOI were hosted by Singapore. It was a most unusual competition, says Tan, mainly because the pandemic “forced us to move the whole thing online for the first time in IOI’s history.”

Staging a virtual competition presented Tan and his organising committee with many unprecedented problems. For one, they had to find a way to ensure the competition would still be fair. In order to create a level playing field, the team created virtual machines that participants had to install on their own computers.

They then had to figure out how to prevent cheating. To do this, Tan and his colleagues worked closely with each country’s team leader to establish proctoring guidelines. Depending on their country’s Covid-19 restrictions, the leaders either monitored their students online or gathered them at a single venue for the competition.

There was also the additional challenge of finding a suitable start time for IOI that would work across multiple time zones. And once the competition was over, Tan and his team had to wrangle with the logistical nightmare of sending out physical medals to 351 participants in 88 countries.

“IOI caused me many sleepless nights,” admits Tan.

“In 2020, we just did a basic tournament and focused on the technical aspects of carrying it out, but in 2021, we injected a lot of online activities and tried to make it as normal as possible,” he says. For instance, participants could join virtual tours of Singapore (including the Istana) and IOI committee members held an election online.

In the end, Tan says the stress was worth it. Despite numerous challenges, the two tournaments took place without a hitch, with Tan and his team earning numerous praises from participants and team leaders alike. They also received plaudits from Singapore’s leaders, including the president and deputy prime minister, who were the guests of honour for the opening and closing ceremonies, respectively.

“I’ll definitely remember these two years for the rest of my life,” says Tan. “I’m just happy we managed to do two successful events. Full credit should go to all the local organising committee members for their commitment and hard work throughout the six years of planning.”

Towards a Smart Nation

Participating in competitions like the IOI — one of several international science Olympiads held annually around the world — is important, says Tan, because it supports Singapore’s push to become an IT-focused, Smart Nation.

And by offering gold medallists full scholarships, the IOI also helps NUS Computing attract top talents to its programmes.

Tan and his colleagues help students prepare for the IOI months before the actual competition takes place every summer. “We invite local schools to send up to six students for training at NUS Computing, and we teach them different strategies to solve problems, give them practice questions, and help them apply what they learn,” he says.

Training is intense, occurring thrice weekly during the year-end school holidays. In March, the students compete in the National Olympiad in Informatics (NOI), which is similar to the IOI except that it’s held in just a day. The top four students at NOI go on to represent Singapore at the international competition.

“The NOI is a stepping stone for our high school students,” says Tan. “It’s a first step in the journey of becoming part of the IT community that is contributing to Singapore’s goals of being a Smart Nation.”

As Singapore wraps up two successful editions of the IOI, the team now looks forward to the next competition, which will be held in Indonesia next August.

In the future, Tan hopes to attract students from more diverse backgrounds to compete in NOI and IOI. Participants presently come from a handful of schools and are mostly male (only two female students have ever represented Singapore). To achieve this, he’s launched a programme where NUS scholars volunteer their time to train girls at the high school level, and another one to train their teachers.

“The hope is that if we can get more teachers interested in doing this, they’ll be able to train their students and eventually we’ll get more coming in, including female students,” says Tan.

He’s also looking to launch a competitive programming centre at NUS Computing. “If we can get the resources and funding, we’ll be able to send trainers to the secondary schools, rather than wait for the schools to send their students to us,” he says.

“With the cooperation of all stakeholders, we should be able to fulfil all the goals we set,” says Tan. “Just like how we managed to conduct two online IOIs, impossible tasks were made possible.”

Trending Posts