Currently there are four courses that I am regularly teaching at the University of Lavia - Construction and Analysis of Efficient Algorithms and Applied Cryptography for master degree students and Declarative Programming and Information and Coding Theory for undergraduate students.
As a kind of experiment in Autumn I have started a course Algorithms for Hard Problems for master degree students. In general the course covers various methods that could be attempted for solving NP-hard problems, however the main emphasis is on parameterized complexity theory and parameterized algorithms. The course is planned to be available each second year, however this is subject of number of students signing up for it.
In addition I am including some of the material of Bioinformatics course for master degree students (the main instructor for this course is Alvis Brazma from European Bioinformatics Institute).
The undergraduate course Artificial Intelligence was last time offered in year 2008 and there are no plans that I could be teaching it in future.
The web pages for these courses are generally avalaible during the terms they are offered (the algorithm, information and coding theory and artificial intelligence courses in spring, applied cryptography and declarative programming in autumn; the availability during other times may vary). The pages contain links to slides, handouts etc., usually the amount of material tends to increase towards the end of the term during which the course is offered.
Construction and Analysis of Efficient Algorithms
Algorithms for Hard Problems
Information and Coding Theory