April 15, 2014

The Scientist: Prof. John Hopcroft Researches Algorithms, Improves Education

Print More


While Prof. John Hopcroft, computer science, won perhaps the most prestigious award in computer science — the Turing Award — in 1986, he still continues to pursue the forefront of research and engage in educational outreach across the globe. Hopcroft said he strongly believes in pursuing the advancement of the informational age, which he says will impact any field that utilizes technology.

“Computer science is undergoing a fundamental change … the past 30 years we have taught a lot of discrete mathematics, and in the future it’s going to be probability and statistics because the amount of data we are going to be looking at is so large,” Hopcroft said.

Currently, Hopcroft said his research focuses on developing algorithms to analyze communities and to apply high dimensional data to everyday solutions.

“Suppose I had a photograph and I accidentally scratched it — how would you recover the photograph and get rid of the scratch? Mathematically you are given the sum of two matrices — one is the photograph and the other is the scratch. You would like to separate them and mathematics would allow you to do that,” Hopcroft said. “It’s a lot of math, but it’s important.”

Hopcroft received the Turing award for developing a novel way to analyze algorithms. He said that people used to analyze computer algorithms by how long they would take to run. But Hopcroft, recognizing the problem of ever-increasing data, instead suggested that computer scientists should evaluate algorithms by how much of a computer’s memory they use up, known as their growth rate.

“At the time, people said it was stupid,” Hopcroft said. “And today everyone is saying, wasn’t that so obvious? This led to material that is now taught around the world. It is a very simple idea — people now say ‘John that’s trivial,’ but it wasn’t then.”

Advancing algorithms | Prof. John Hopcroft, computer science, received a Turing Award in 1986 for his development of new methods of algorithm analysis.