Master Program in Information Technologies

Innovative Algorithms(IT 542)

Course Code Course Name Semester Theory Practice Lab Credit ECTS
IT 542 Innovative Algorithms 2 4 0 0 3 8
Prerequisites
Admission Requirements
Language of Instruction English
Course Type Compulsory
Course Level Masters Degree
Course Instructor(s) Gülfem ALPTEKİN gulfem@gmail.com (Email) Pınar ULUER puluer@gsu.edu.tr (Email)
Assistant
Objective The aim of this course is to teach students the fundamental concepts, types, and applications of algorithms, and to develop their skills in algorithm design and analysis. The course seeks to bridge the gap between algorithm theory and practical applications. Students will understand when and for what purposes algorithms should be used, and will be able to identify the appropriate class of algorithms to solve a given problem. Another objective is to raise students’ awareness of the social impacts of algorithms and their potential biases or unfairness.
Content 1. Fundamentals of algorithms, their role in everyday life, history, types of algorithms, definition of execution time, computational complexity.
2. Algorithm complexity analysis, time and space complexity, best, average, and worst-case analyses with examples.
3. Basic algorithms and decision-making mechanisms (randomized algorithms, sorting and searching algorithms, best-first search, A*, minimax algorithm).
4. Fundamental graph and shortest path algorithms, minimum spanning tree algorithms (traversal algorithms, Dijkstra, Bellman-Ford, Floyd-Warshall).
5 Heuristic and metaheuristic algorithms (local search, simulated annealing, tabu search).
6. Evolutionary algorithms (genetic algorithm, particle swarm optimization, ant colony optimization, artificial bee algorithm).
7. Dynamic programming, greedy algorithms.
8. Midterm exam.
9. Planning algorithms: basic decision theory, game theory, reinforcement learning, decision-making under uncertainty.
10. Algorithm ethics, fairness, and open problems.
11. Student projects.
Course Learning Outcomes Students who successfully complete this course will acquire the following skills:

1. Analyze the fundamental principles of algorithms in terms of time and space efficiency used in algorithm analysis.
2. Develop the ability to understand, implement, and determine when to use a wide range of algorithms.
3. Gain in-depth knowledge of evolutionary algorithms and learn how to apply them to solve real-world problems.
4. Acquire knowledge of current and innovative algorithms, and develop the ability to understand them and engage in informed discussions about them.
5. Gain awareness of algorithm ethics and bias, and develop the ability to consider these issues when designing and implementing technological solutions.
Teaching and Learning Methods Theoretical and practical instruction, classroom lectures, interactive question–answer sessions, and discussions.
References 1. T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein, Introduction to Algorithms, 4th edition, The MIT Press; (April 5, 2022).
2. S.M. LaValle, Planning Algorithms, Cambridge University Press; Illustrated edition (May 29, 2006).
3. A. Bhargava, Grokking Algorithms: An illustrated guide for programmers and other curious people, Manning Publications; 1. basım (31 Aralık 2015).
Print the course contents
Theory Topics
Week Weekly Contents
1 Fundamentals of algorithms, their role in everyday life, history, types of algorithms, definition of execution time, computational complexity.
2 Algorithm complexity analysis, time and space complexity, best, average, and worst-case analyses with examples.
3 Basic algorithms and decision-making mechanisms (randomized algorithms, sorting and searching algorithms, best-first search, A*, minimax algorithm).
4 Fundamental graph and shortest path algorithms, minimum spanning tree algorithms (traversal algorithms, Dijkstra, Bellman-Ford, Floyd-Warshall).
5 Heuristic and metaheuristic algorithms (local search, simulated annealing, tabu search).
6 Evolutionary algorithms (genetic algorithm, particle swarm optimization, ant colony optimization, artificial bee algorithm).
7 Dynamic programming, greedy algorithms.
8 Midterm exam.
9 Planning algorithms: basic decision theory, game theory, reinforcement learning, decision-making under uncertainty.
10 Algorithm ethics, fairness, and open problems.
11 Student projects.
Practice Topics
Week Weekly Contents
Contribution to Overall Grade
  Number Contribution
Contribution of in-term studies to overall grade 1 50
Contribution of final exam to overall grade 1 50
Toplam 2 100
In-Term Studies
  Number Contribution
Assignments 0 0
Presentation 0 0
Midterm Examinations (including preparation) 1 50
Project 0 0
Laboratory 0 0
Other Applications 0 0
Quiz 0 0
Term Paper/ Project 0 0
Portfolio Study 0 0
Reports 0 0
Learning Diary 0 0
Thesis/ Project 0 0
Seminar 0 0
Other 0 0
Make-up 0 0
Toplam 1 50
No Program Learning Outcomes Contribution
1 2 3 4 5
1 X
2 X
3 X
4 X
5 X
6 X
7 X
8 X
9 X
10 X
11 X
Activities Number Period Total Workload
Class Hours 11 4 44
Working Hours out of Class 11 5 55
Assignments 0 0 0
Presentation 0 0 0
Midterm Examinations (including preparation) 1 45 45
Project 0 0 0
Laboratory 0 0 0
Other Applications 0 0 0
Final Examinations (including preparation) 1 45 45
Quiz 0 0 0
Term Paper/ Project 0 0 0
Portfolio Study 0 0 0
Reports 0 0 0
Learning Diary 0 0 0
Thesis/ Project 0 0 0
Seminar 0 0 0
Other 0 0 0
Make-up 0 0 0
Yıl Sonu 0 0 0
Hazırlık Yıl Sonu 0 0 0
Hazırlık Bütünleme 0 0 0
Total Workload 189
Total Workload / 25 7.56
Credits ECTS 8
Scroll to Top