K-INFO
HU
EN
Login

Algorithms and Complexity

Algoritmusok és bonyolultságuk
A tantárgyleírás hatályossága
Hatályosság kezdete:
2026. March 21.
Hatályosság vége:
Subject name (Hungarian, English)
Algoritmusok és bonyolultságuk
Algorithms and Complexity
Subject code BMEVISZMA00
Subject type
Training Level
Course types and hours (weekly/semester)
Course type lecture tutorial laboratory
hours (weekly) 2 1 0
type (linked/independent) derived course
Assessment type félévközi érdemjegy
Credits 4
Subject coordinator
DR. Friedl Katalin
position: egyetemi docens
Responsible department
Számítástudományi és Információelméleti Tanszék
Faculty Villamosmérnöki és Informatikai Kar
Subject website cs.bme.hu/algbony
Primary curriculum type
Direct prerequisites – Strong prerequisite none
Direct prerequisites – Weak prerequisite none
Direct prerequisites – Parallel prerequisite none
Direct prerequisites – Milestone prerequisite none
Direct prerequisites – Exclusion none

Objectives

Programme

Introduction of selected topics.

Interactive proofs -- a possible generalization of NP. Strong and weak players,  the AM and IP classes. Probabilistically checkable proofs.

 Communication complexity : computation with minimal information exchange. Connection to the matrix of the function. Nondeterministic complexity and its relation to deterministic complexity. Randomized protcols and their efficiency.

 Geometrical algorithms: computations without division, closest pair of points, efficient convex hull computation .

Advanced search techniques: k-th element in linear time, computation of rank. How to store intervals

Pattern matching: KMP and Boyer-Moore algorithms. Pattern matching by finite automaton. Matching with errors, approximate solutions, and the efficient computation of edit distanc.

 Parallel algorithms: variants of the PRAM model. Comparisons for simple cases.  Computations organized in binary trees. The effect of changing the numer of processors (Brent's theorem)

 Parallel algorithms for sorting (Batcher). Prefix sum computation and its applications. Computation of ranks.

Distributed algorithms: theoretical model. Leader selection algorithms on rings and on general graphs.

Distributed algorithms whith failers: fails in lines, when processors stop, and byzantine errors.

 Network topologies from graph theoretical point of view: grid, cube, cube connected cycel, butterfly, Benes(shortest paths, diameter, cuts). Embeddings,algorithmical aspects.

 Random graphs: different models, their basic properties (degrees, paths, connectedness). Random graphs as models of networks.

Parametric complexity: NP-hard problems with efficient solution for small values of a parameter.  Bounding the depth of a search tree.Grpah minor theorem and consequences. The kernel method. W[1] complexity.

On-line algorithms: measure of effifiency. Examples. Scheduling algorithms.

Quantum computation:  tools from linear algebra, simple algorithms (teleporting, Deusch-Jozsa). Qunatum Fourier transformation, the idea of prime factorization. Quantum cryptography.

 

 In order to improve algorithmical thinking  to learn advanced algorithmical techniques, to see modern techniques, learn the limits of new models (e.g. parallel, ditributed and quantum computation computation). 

Learning outcomes

Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:

Knowledge

No learning outcomes recorded.

Skills

No learning outcomes recorded.

Attitudes

No learning outcomes recorded.

Autonomy and responsibility

No learning outcomes recorded.

Oktatási módszertan

Large part is like a seminar, the students present the topic of their own choice. The possibel topics and their order is changing from year to year, depending on interest. We discuss the details on the first class.

Tanulástámogató anyagok

Online források
T. Corman, C. Leiserson, R. Rivest, C.; Stein: Introduction to Algorithms; H. Attiya: Distributed Computing lecture; notes;  J. Flum, M. Grohe: Parameterized Complexity Theory, Springer 2006.; A. Gibbons, W. Rytter: Efficient Parallel; Algorithms, Cambridge University Press, 1988.

Recommended preliminary knowledge for completing the subject

Knowledge type competencies
(azon előzetes ismeretek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
Basics of algorithms and complexity theory
Skill type competencies
(azon előzetes képességek és készségek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
nincs
Recommended (non-compulsory) preliminary competencies
(azon ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák összessége, amelyek jelentősen hozzájárulnak a tantárgy eredményes teljesítéséhez)
Basics of algorithms and complexity theory
General rules
Requirements: Paticipation in the discussions and giving a presentation.
Assessment methods
In-term assessments

No detailed assessments provided.

Weight of in-term assessments

No weights provided.

Exam-period assessments

No detailed assessments provided.

Weight of exam elements

No weights provided.

Grade calculation

No grade thresholds provided.

Attendance requirements

No attendance requirements provided.

Rules for retake and resubmission

Not provided.

Short description

Not provided.

Detailed description

Not provided.

Recommended courses

Not provided.

Workload to complete the subject

No workload breakdown provided.

Validity of subject requirements
Requirements valid from:
Requirements valid until:
Curriculum placement

No curriculum placements recorded for this subject version.