CPSC 536H - Empirical Algorithmics (Spring 2016)

Latest news (16/01/08):

   Tue+Thu,9:30-11:00 in
DMP 101
   First class: Tue, 2016/01/05

   Holger H. Hoos
   E-mail: hoos "at" cs.ubc.ca
   Office: ICICS/CS complex, Room X541

What this course is about and why you might want to take it:

In a nutshell, it is about principled empirical methods for studying the performance and behaviour of algorithms that cannot be analysed using techniques from computational theory, and for building algorithms that perform well in practically interesting situations. These empirical methods are firmly grounded in established techniques from statistics, optimisation and machine learning, and they are being used increasingly widely and with great success in many areas of computing science and its applications. In particular, they play an increasingly prominent role in the development of state-of-the-art algorithms for solving a wide range of so-called NP-hard problems, which arise in many areas of computing science and its applications, including artificial intelligence (notably machine learning), hardware design, software engineering, electronic commerce, manufacturing, genome sequencing and molecular structure prediction.

So ... you want to conduct proper computational experiments for your thesis, for a paper or for a real-world application? You want to leverage computational power to build automatically better algorithms? You want to improve the state of the art in solving a difficult computational problem? Then this course if for you.

Furthermore, if you are interested in pursuing your MSc or PhD project under my supervision, you should take this course. I currently have openings for 1-2 new graduate students and will preferentially consider students who have taken and and shown outstanding performance in this course.

Course objectives:

Prerequisite knowledge: Algorithms, basic knowledge of statistics, high proficiency in programming. Students from outside computer science are welcome to take the course, if they have the prerequisite knowledge.

Topics covered in this course include:

Preliminary course outline

Note: The course will be based on my forthcoming book "Empirical Algorithmics" (Cambridge University Press, in preparation); students enrolled in this course will get access to the latest draft and have a chance to earn an acknowledgement in the printed version. The course will consist of three components: (1) pre-class reading assignments and exercises intended for initial familiarisation with key concepts and techniques; (2) in-class presentations, discussions and exercises, designed to reinforce and expand knowledge and skills; and (3) a sizeable course project. Discussion of advanced topics will be based in part on primary research literature selected based on the interests of the participants. Course projects can be related to the student's research interests / thesis topic and are determined in consultation with the instructor.

More information will be given in the first class (see above), and students interested in taking the course are highly encouraged to attend this class.

If you have any questions regarding the course, please contact Holger (hoos@cs.ubc.ca).

Last update: 16/01/03 [hh]