Monday, 11 September 2017

Assignment 6: Reading 4 - Sudoku

Bibliography:
Caio Monteiro, Meenakshi Narayanan, Seth Polsley, and Tracy Hammond. A Multilingual Sketch-Based Sudoku Game with Real-Time Recognition, Frontiers in Pen and Touch, Chapter 11, Springer, 2017.

Summary:
The paper is about an software application that recognizes and verifies the sudoku puzzle played by sketching. The current implementation is multilingual, and supports Hindi and Chinese. The
application however,uses a general purpose algorithm so that it can be trained to support multiple languages. The game can be used as a captivating learning tool, in order to learn numbers in a new
language.  Also, the system is capable of ignoring rough sketches. This allows the user to do rough work while playing the game, giving it a more paper-pen feel.

The system is implemented as two java applications. One is used to collect training data, for a set of languages. This data is stored in an XML file and passed to the second application, that uses this data
to train and generate templates for each digit, in each of the languages. The UI interface allows the user to check their partial results, at any stage of the game.

The game allows the user to select a language and play the game. User sketches are compared to the template sketches by using a one-sided Hausdorff distance for the sketch with each of the templates. The system then uses a k-NN classifier with neighbourhood size of 5 to improve the accuracy. k-fold cross validation is used for evaluating the accuracy. It was found that the system has a high overall accuracy, but some numbers (such as the hindi two and three) which were very similar had a lower accuracy. The authors' hope to improve the UI and allow the addition of language specific rules for higher accuracy.

Discussion:
The system is indeed a great way to learn a new language. The fact that it uses a general purpose template matching algorithm, makes it very easy to extend it to multiple languages.

I wonder if this template matching algorithm can be used for matching characters other than numbers as well. Seems like it can, as the training data for each language can be given to the first application. The idea of decoupling the training data, with the actual game, makes it very flexible to do this. This way, the system can be used to play more complex games such as cross-word as well.

No comments:

Post a Comment