»Hi Tina
Maze! Where are you hiding your skis?«. Aha, under the blue cylinder. I already
saw it, when I was delivering his hamlet to Peter Prevc. I should return to it;
I have to find the right path. It will be better to turn left, because I will
arrive at the goal faster, and I will avoid obstacles better. I have to deliver
the skies to Tina, and then I’m done for today with my job as a DeliveryBot.

Such type
of communication and reasoning is needed to solve complex tasks, such as the
one described above. We, humans, are very good in performing such types of
tasks, however intelligent robots are capable of such behavior as well. Such
intelligent agents consist of modules for machine perception (the use of
sensors, signal processing, object recognition, image interpretation, localization),
as well as modules for control, tactical and strategic reasoning and learning. Similarly
as humans, the intelligent robot systems can also perceive the environment,
experiment, learn, and apply the acquired knowledge for solving the tasks in
the future.

The course
is very practically oriented with the emphasis on the hands-on experience. The
solutions will be implemented and integrated on real robotic platforms using
the Robot Operating System, ROS. We will work with mobile robots, which we
built from the robot vacuum cleaner iRobot Roomba, the RGBD camera Kinect and other
electronic parts. The robots will have to autonomously solve complex tasks,
such as the delivery task described above. And of course, to make the development
of such robots even more interesting and challenging, the robots developed by the groups of
students will compete between themselves in a real robot competition. Let
the best robot win!

Humans have always been interested in the idea of intelligent machines. Yet, what is intelligence? Is the computer which beats the world champion in chess really intelligent? Or the robot which independently researches the Mars' surface? What about the computer program which diagnoses cancer more accurately than physicians? Do some characters in computer games act intelligently? Form the very beginning of computer era there are philosophical and scientific discussions about possibility to create an artificial system which will act intelligently. The research in the area of artificial intelligence has, besides clarifying the basic questions about intelligence, brought a series of tools and approaches for solving problems, which are difficult or even impossible to solve with other methods. In the Intelligent Systems course, you shall learn some of the most useful techniques. A robot or an agent has to reason about an unknown environment. It has to search through different possibilities. It has to analyze data obtained  from different sensors. It has to learn from its successes and failures. Techniques which enable such intelligent behavior are often based on the ideas that stem from nature, such as neural networks and evolutionary learning, but use also the discoveries from statistics, modeling, decision theory, natural language processing, and cognitive modeling. The focus of the course is to prepare students for practical use of theoretical knowledge and application of learned techniques in practical scientific and business problems.  

Practical part of the course is in the form of programming assignments, solving problems, and web quizzes. Assistant is available for consultations. The grade of practical work is a summary of assignment grades, where each assignment has to be finished on time and graded with at least 50% of points. The precondition for passing practical work is achieving at least 50% of points in web quizzes.

The final course grade consists of practical work grade (50%) and written exam (50%), in both parts one has to achieve at least 50% of points. Oral exam is optional.

Machine perception is a rapidly developing exciting field with a wealth
of applications available as well as those still to come. This course
will cover in depth the mathematics and basic techniques of computer
vision which are widely used in a broad spectrum of modern applications.
If you have ever wondered what kind of methods devices like Google
glasses, Robotic vehicles, Panorama stitching, Photo editing software,
etc., use, this course will address that curiosity and more. At the end
of this course, the student is expected to have a grasp in the following
topics: (i) Basic image processing techniques, (ii) Image derivatives
and edges, (iii) Model fitting, (iv) Local descriptors, (v) Stereo
vision, (vi) Subspace methods for recognition, (vii) Object detection,
(viii) Object recognition, (ix) Basics of motion. The course is composed
of (i) the lectures in which we will cover the relevant theory and (ii)
exercises in which the students will implement the basic techniques and
solidify the theory.