The New Gen Ed Lottery System, Explained


Armed Individuals Sighted in Harvard Square Arraigned


Harvard Students Form Coalition Supporting Slave Photo Lawsuit's Demands


Police Apprehend Armed Man and Woman in Central Square


107 Faculty Called for Review of Tenure Procedures in Letter to Dean Gay

Program Catches Computer Science Cheaters

By Andrew S. Chang

Would-be cheaters had better think twice before enrolling in a computer science course.

The teaching staff for Computer Science 50, "Introduction to Computer Science I," and Computer Science 51, "Introduction to Computer Science II," use a program affectionately known as "the cheat detector" to look for similarities among assignment solutions.

Assignments for both courses are submitted electronically as well as on paper. The cheat detector then compares the digital submissions by searching for patterns and creating a statistical score between different submissions.

"We try to determine among the scores which ones are too similar to be coincidental," said Abhi Shelat '98, who was the head teaching fellow for CS 50 last fall.

Significantly similar submissions reach the attention of the course's professor.

"Usually, it is reported to the professor, then the professor talks to the student and the matter goes to the Ad Board," Shelat said.

Shelat said that every year "a few cases" of dishonesty in CS 50 reach the Ad Board.

The cheat detector program, which was written a few years ago by graduate student Trevor L. Blackwell, uses a well-known pattern-matching procedure called the Rabin-Karp algorithm to generate the similarity scores, according to Shelat.

Students in CS 50 are repeatedly told at the start of the course that copying solutions is not allowed. But the existence of the "cheat detector" is not announced until after the third assignment, Shelat said.

"It's funny that after we tell everyone about the program, we tend to see a drop in the similarity scores," he said. "That might be due to other factors, but it's an amusing observation."

Shelat said he believes the program does not weed out all cheaters and errs in favor of students.

"I don't think it will ever identify people who are not cheaters as cheaters," he said. "Any sort of error will be on the side of not being effective enough."

"I'm sure there are ways to fool it," he added.

Students in both courses are allowed to collaborate in producing "design documents" which outline assignment solutions.

"Generally, even if people admit that they collaborate, as long as they implement their solutions separately, they're okay," Shelat said.

Shelat stressed that the program is no designed to trap students.

"We're not out to set people up," he said "It's not that we ever want to dissuade people from talking about problems, it's just that we want them to finish the problems separately."

Shelat said he does not envision the program being adapted for use in other courses outside of computer science.

"I don't think it would work in any sort of medium where the homework isn't submitted on a digital form like [in computer science courses]," he said.

Want to keep up with breaking news? Subscribe to our email newsletter.