Senior Lecturer: Computer Science, Stellenbosch University.
My personal web pages are available here.
My main research area is currently computational intelligence in games, i.e. improving computer players/bots/agents in various games.
I am looking for good students to work in this field, and have potential project topics at undergraduate, Honours and Masters level, as well as the potential for "skripsie" topics for E+E engineering students. So if you're interested, please contact me.
Specific projects I am interested in (and seeking students for):
- Further development of our Monte Carlo tree search based Go agent, Oakfoam.
- Further development of our Risk agents (our best agent so far uses Monte Carlo tree search).
- Development of an Ingenious agent using Monte Carlo tree search techniques (part of a potential collaboration with the Games group at the University of Maastricht).
Also see the page of our Decision-making research group.
- Detecting Potholes Using Simple Image Processing Techniques and Real-world Footage (with Sonja Nienaber and Thinus Booysen), 2015 South African Transport Conference, 2015, Pretoria. This articles gives an image processing pipeline for detecting potholes from camera images under good visibility conditions.
- Sample Evaluation for Action Selection in Monte Carlo Tree Search (with Dirk Brand), 2014 Conference of the South African Institute for Computer Scientists and Information Technologists, September 2014, Pretoria, pages 314-322. This article proposes leveraging a (possibly poor) evaluation function for selecting nodes to expand in MCTS when the branching factor is very high by selecting a node with the best evaluation from a sample. The proposal is evaluated on the board Game Risk.
- Decision Trees for Computer Go Features (with Francois van Niekerk), 2013 International Joint Conference on Artificial Intelligence Workshop on Computer Games, August 3, Beijing. This article proposes using decision trees for extracting domain knowledge in the context of Monte Carlo Tree Search for Computer Go.
- Binary Jumbled String Matching for Highly Run-Length Compressible Texts (with Golnaz Badkobeh, Gabriele Fici, and Zsuzsanna Lipták), Information Processing Letters, Volume 113, Issue 17, 30 August 2013, Pages 604–608 (DOI: 10.1016/j.ipl.2013.05.007). This article presents an alternative algorithm for jumbled pattern matching on binary strings making use of a different index to previous approaches. Typically, the index is smaller than the traditional approach, but query times are no longer constant. The advantage of our approach is most pronounced for strings with short run-length encoding.
- Monte-Carlo Tree Search Parallelisation for Computer Go (with Francois van Niekerk, Gert-Jan van Rooyen, and Cornelia Inggs), Proceedings of the 2012 Annual Research Conference of the South African Institute for Computer Scientists and Information Technologists, October 2012. This article presents results of parallelisation of Monte-Carlo Tree Search for multi-core and cluster systems in the Computer Go program Oakfoam. (Some results from this paper were also presented by Francois van Niekerk at a talk at the 2012 International Go Symposium, "New Work on MCTS Parallelisation and The State of the Art of Supercomputer Go and its Future".)
- Unsupervised Construction of Topic-based Twitter Lists (with Francois de Villiers and McElory Hoffmann), Proceedings of the 2012 ASE/IEEE International Conference on Social Computing (SocialCom 2012), Amsterdam, Netherlands, September 2012. This article investigates compares different document representation techniques, similarity measures, and clustering methods for unsupervised list construction according to topics tweeted about in Twitter.
- A Community-Based Model of Online Social Networks (with Leendert Botha), Proceedings of the 4th SNA-KDD Workshop on Social Network Mining and Analysis (SNAKDD 2010), Washington D.C., USA, July 2010 (accepted). (Also a poster presentation at the Eighth Workshop on Mining and Learning with Graphs (MLG-2010), Washington D.C., USA, July 2010.) This article describes a model for generating social networks with similar properties to existing social networks.
- Generalizing the Margin Concept to Arbitrary Classifiers (with Sarel Steel), Proceedings of the 57th Session of the International Statistics Institute, Durban, South Africa, August 2009 (abstract) - This paper highlights a result from my Ph.D. thesis, which extends the margin concept from thresholding real-valued classifiers to classifiers in general metric spaces.
- A PAC-Bayesian Generalization of a Result of Devroye (with Sarel Steel), Slides from a talk presented at the South African Statistical Conference, 2008 - This presentation highlights selected results from my PhD thesis concerning classical covering number bounds: a classical covering number bound for classification is generalized to regression and arbitrary ghost sample sizes, inter alia, and it is shown the resulting bound is actually a form of PAC-Bayesian bound employing a transductive "prior".
- A Framework for Estimating Risk, Ph.D. Thesis, Stellenbosch University, 2008 - This research was related primarily to risk estimation, notably constructing confidence intervals for the risk of a fitted model from the data used to fit the model.
- Getting to Grips with Support Vector Machines: Theory (with Christian Omlin), South African Statistical Journal, 38(2), pp. 93-114, 2004 - An introduction to the theory underlying SVMs, based on material in my Masters thesis.
- Getting to Grips with Support Vector Machines: Application (with Christian Omlin), South African Statistical Journal, 38(2), pp. 159-172, 2004 - Illustrates the use of LIBSVM for analyzing a simple data set.
- Support Vector Machines, Generalization Bounds and Transduction, Masters Thesis, Stellenbosch University, 2003 - Surveys the theory of Support Vector Machines and Generalization Bounds, and presents a transductive generalization bound.
- Putting the SVM in context (with Sarel Steel), Slides from a talk presented at the South African Statistical Conference, 2003 - This presentation presents the SVM from the regularization viewpoint, contrasting it with other well-known regularization techniques such as the lasso.
- Bounding Generalization of Support Vector Machines (with Christian Omlin), Slides from a talk presented at the South African Statistical Conference, 2003 - This presents the core ideas behind classical covering number bounds, applied to SVMs.
- A Covering Number PAC Bound for Transductive Problems with Applications to SVMs (with Christian Omlin), Unpublished manuscript, 2003 - This contains the transductive bound for SVMs presented in my Masters thesis.
Talks at colloquiua, seminars, etc.
- Decision Trees for Computer Go Features, A presentation based on joint work with Francois van Niekerk at University of Maastricht's Department of Knowledge Engineering, June 2014.
- The Bias-Variance Dilemma and Regularization Paths, Slides from a series of 3 seminars presented to Vision and Learning at Stellenbosch research group, October-November 2009 - Covers bias-variance decomposition of mean-squared error, the role of regularization in this context, and then investigates the relationships between forward stagewise modelling, least angle regression, and the lasso.
- Margin Bounds for Arbitrary Classifiers, Slides from a seminar presented to Vision and Learning at Stellenbosch research group, September 2009 - This presentation was a slight revision of my ISI presentation earlier in the year.
- Covering Number Bounds and Statistical Learning Theory, Slides from a seminar presented to Vision and Learning at Stellenbosch research group, July 2009 - This presentation was an introduction to core concepts in deriving covering number bounds and their relationship to basic ideas of uniform laws of large numbers in statistical learning theory.
- Bounding Generalization of Support Vector Machines, Slides from Department of Statistics Seminar series, Stellenbosch University, 2003 - This presents the core ideas behind classical covering number bounds, applied to SVMs.
- An introduction to Support Vector Machines, Slides for a Masters course in Intelligent Systems at the Department of Computer Science, Stellenbosch University, 2000 - Very simple introduction to SVMs
Project notes for honours students w.r.t. supervision (largely applicable to Masters and PhD students as well). (Last updated: 25 October 2012.)
Current Masters students
- Sonja Nienaber (from 2014): Sonja is working on pothole detection from a windscreen-mounted camera.
- Hilgard Bell (from 2012): Hilgard is working on using Monte-Carlo Tree Search trees to assess difficulty of puzzles for procedural content generation.
Completed Masters students
- Moonyoung Yoon (April 2015): Moonyoung worked on using reinforcement learning to acquire skills in robotic soccer.
- Francois van Niekerk (April 2014): Francois worked on decision trees for computer Go features. Now at Clockwork Acorn. (Thesis notes: the q subscripts for w, l, d, and r in Section 3.4.1 are unnecessary, since they are the same for all candidate queries; in description of the NEW query for stone graphs, "edge" should be "side".)
- Francois de Villiers (April 2013): Francois worked on recommender systems with social media.
- Leendert Botha (December 2011): Modeling Online Social Networks using Quasi-clique Communities. Now at Google.
- Andre Kriek (March 2009): RoboCup Formation Modeling. Now at 4i Software Development.
- James Saunders (2011): James worked on using graphical models for social-ecological systems. Now at Business Optics.