Faculty of Technical Sciences

Subject: Theory of Algorithms (17.IFE211)

Native organizations units: Chair of Applied Computer Science
General information:
 
Category Theoretical-methodological
Scientific or art field Applied Computer Science and Informatics
Interdisciplinary No
ECTS 5
Educational goal:

The overall education goal of course is development of algorithmic culture in todays engineers, as an important part of general engineering culture. The particular education goals are development of student’s ability to ?) understand basic concepts from Theory of Algorithms and Computational Complexity disciplines, b) determine algorithmic hardness of the problems, c) chose algorithmic technique which is adequate to the hardness of the problem at hand and d) apply adequate algorithms in solving problem of interest.

Educational outcome:

The basic education outcomes are understanding and determination of algorithmic hardness of the problem and the complexity of algorithms, as well as independent algorithmic solving of engineering problems of interest.

Course content:

Introduction to the Theory of Algorithms and Computational Complexity. Determination of algorithmic hardness of the problem. Reductions among problems. Asymptotic notation, time and space complexity. Basic complexity classes. Types of algorithms. Greedy, divide-and-conquer algorithms, breadth and depth first search, dynamic programming, branch-and-bound algorithms. Randomized and probabilistic algorithms. Parameterized and approximation algorithms. Algorithmic heuristics and meta-heuristics. ??thematical programming. Single- and multi-objective optimization algorithms. Parallel and distributed algorithms.

Teaching methods:

Lectures. Exercises and computer lab exercises. Consultation. On lectures, students become familiar with general algorithmic techniques, which are adequate in solving problems of different algorithmic hardness. Lectures are followed with adequate example problems on exercises and in computer lab, which helps in understanding course topics and material. Besides lectures and exercises, consultations with students are regularly held.

Literature:
Authors Title Year Publisher Language
Kozen, Dexter, C Theory of computation 2006 Springer English
G. Ausiello, P. Crescenzi, V. Kann, Marchetti-sp, Giorgio Gambosi, Alberto M. Spaccamela Complexity and Approximation: Combinatorial Optimization Problems and Their Approximability Properties 1999 Springer English
Cormen, T.H. et al. Introduction to Algorithms 2009 MIT Press, Cambridge English
Zbigniew Michalewicz, David B. Fogel How to Solve It: Modern Heuristics 2010 Springer, 2nd Rev&Ext. edition English
Christos H. Papadimitriou Computational Complexity 1995 Addison Wesley Longman English
R. Sedgewick, K. Wayne Algorithms (4th Edition) 2011 Pearson Education, Inc. English
Knowledge evaluation:
Course activity Pre-examination Obligations Number of points
Complex exercises Yes Yes 30.00
Oral part of the exam No Yes 30.00
Test Yes Yes 10.00
Complex exercises Yes Yes 20.00
Test Yes Yes 10.00
Lecturers:

vanr. prof. dr Dragan Dinu

Associate Professor

Lectures

Asistent Simić Svetislav

Assistant - Master

Computational classes

Asistent Todorović Nikola

Assistant - Master

Computational classes
API Image

doc. dr Petrović Veljko

Assistant Professor

Lectures

Asistent Jovanović Jovana

Assistant - Master

Computational classes

Asistent Ivković Vladimir

Assistant - Master

Computational classes

Faculty of Technical Sciences

© 2024. Faculty of Technical Sciences.

Contact:

Address: Trg Dositeja Obradovića 6, 21102 Novi Sad

Phone:  (+381) 21 450 810
(+381) 21 6350 413

Fax : (+381) 21 458 133
Emejl: ftndean@uns.ac.rs

© 2024. Faculty of Technical Sciences.