General electives can be selected from all the courses offered at Koç University.

COMP 491 / COMPUTER ENGINEERING DESIGN I
Sınıf: Credit: 4Precondition: (COMP. 202 and COMP. 302) or consent of the instructor

A capstone design course where students apply engineering and science knowledge in a computer engineering design project. Development, design, implementation and management of a project in teams under realistic constraints and conditions. Emphasis on communication, teamwork and presentation skills.

COMP 492 / COMPUTER ENGINEERING DESIGN II
Sınıf: Credit: 3Precondition:

A capstone design project on an industrially relevant problem. Students work on teams in consultation with faculty and industrial members.

COMP 504 / DIGITAL SPEECH AND AUDIO PROCESSING
Sınıf: Credit: 3Precondition: ELEC. 201 or consent of the instructor

Sound and human speech systems, phonetics and phonology, speech signal representations, role of pitch and formants, pitch-scale and time-scale modifications, basics of speech coding and VoIP systems, fundamentals of pattern and speech recognition, search algorithms for speech recognition.

COMP 506 / DIGITAL IMAGE AND VIDEO PROCESSING
Sınıf: Credit: 3Precondition: ELEC. 303 or consent of the instructor

Review of multi-dimensional sampling theory, aliasing, and quantization, fundamentals of color, human visual system, 2-D Block transforms, DFT, DCT and wavelets. Image filtering, edge detection, enhancement, and restoration. Basic video file formats, resolutions, and bit rates for various digital video applications. Motion analysis and estimation using 2D and 3D models. Motion-compensated filtering methods for noise removal, de-interlacing, and resolution enhancement. Digital image and video compression methods and standards, including JPEG/JPEG2000 and MPEG-1/2 and 4. Content-based image and video indexing and MPEG-7.

COMP 508 / COMPUTER VISION AND PATTERN RECOGNITION
Sınıf: Credit: 3Precondition:

Study of computational models of visual perception and their implementation in computer systems. Topics include: image formation; edge, corner and boundary extraction, segmentation, matching, pattern recognition and classification techniques; 3-D Vision: projection geometry, camera calibration, shape from stereo/silhouette/shading, model-based 3D object recognition; color texture, radiometry and BDRF; motion analysis.

COMP 510 / COMPUTER GRAPHICS
Sınıf: Credit: 3Precondition: COMP. 202 or consent of the instructor

Theory and practice of 3D computer graphics. Topics covered include graphics systems and models; geometric representations and transformations; graphics programming; input and interaction; viewing and projections; compositing and blending; illumination and color models; shading; texture mapping; animation; rendering and implementation; hierarchical and object-oriented modeling; scene graphs; 3D reconstruction and modeling.

COMP 513 / INFORMATION THEORY
Sınıf: Credit: 3Precondition:

Entropy, Relative Entropy and Mutual Information; Asymptotic Equipartition Theory; Entropy Rates of a Stochastic Process; Data Compression; Kolmogorov Complexity; Channel Capacity; Differential Entropy; The Gaussian Channel; Maximum Entropy and Spectral Estimation; Rate Distortion Theory, Network Information Theory.

COMP 515 / DISTRIBUTED COMPUTING SYSTEMS
Sınıf: Credit: 3Precondition: COMP. 304 or consent of the instructor

Introduction to distributed computing, overview of operating systems, process synchronization and deadlocks, threads and thread synchronization, communication protocols, synchronization in distributed systems, management of time, causality, logical clocks, consistent global states, distributed mutual exclusion, distributed deadlock detection, election algorithms, agreement protocols, consensus, multicast communication, distributed transactions, replication, shared memory model, scheduling, distributed file systems, fault tolerance in distributed systems, distributed real-time systems.

COMP 528 / COMMUNICATION NETWORKS
Sınıf: Credit: 3Precondition:

Next generation communication systems, wireless cellular networks, machine-to-machine communications, Internet of things, software defined networking, physical layer data transmission, channel propagation characteristics, modulation, demodulation, medium access control layer, data link layer, forward and backward error control, routing layer, optimal routing, transport layer, flow control, congestion control.

COMP 529 / PARALLEL PROGRAMMING
Sınıf: Credit: 3Precondition:

Fundamental concepts of concurrency, non-determinism, atomicity, race-conditions, synchronization, mutual exclusion. Overview of parallel architectures, multicores, distributed memory. Parallel programming models and languages, multithreaded, message passing, data driven, and data parallel programming. Design of parallel programs, decomposition, granularity, locality, communication, load balancing. Patterns for parallel programming, structural, computational, algorithm strategy, concurrent execution patterns. Performance modeling of parallel programs, sources of parallel overheads.

COMP 532 / MULTIMEDIA COMMUNICATIONS
Sınıf: Credit: 3Precondition: ELEC. 406 or consent of the instructor

Review of multimedia (image, video and audio) source coding/compression techniques and standards (JPEG, MPEG, H26x); Review of communication and networking architectures and IP networks; QoS, delay, jitter, rate control, scheduling, and traffic engineering for real-time multimedia delivery; Reliability, error control, error concealment and resilience techniques; Streaming media and real-time communication techniques and protocols, RTP/RTCP, IntServ, DiffServ, MPLS; Transmission of multimedia over Internet, wireless channels, mobile cellular networks, GSM, 3G, 4G wireless systems, and satellite networks; Current and future applications of multimedia communications, e.g., voice-over-IP (VoIP), Internet Video conferencing, SIP, IMS, video-on-demand, digital video broadcasting systems, real-time delivery of 3DTV; Current state-of-the-art and future visions in multimedia communications research.

COMP 534 / COMPUTER AND NETWORK SECURITY
Sınıf: Credit: 3Precondition:

Overview of Computer Security Techniques, Conventional Encryption, Public-Key Cryptography, Key Management, Message Authentication, Hash Functions and Algorithms, Digital Signatures, Authentication Protocols, Access Control Mechanisms, Network Security Practice, TCP/IP Security, Web Security, SSL (Secure Socket Layer), Denial-of-Service Attacks, Intrusion Detection, Viruses.

COMP 537 / INTELLIGENT USER INTERFACES
Sınıf: Credit: 3Precondition: (COMP. 130 or COMP. 131) or consent of the instructor

Applications of artificial intelligence in user interfaces. Design, implementation, and evaluation of user interfaces that use machine learning, computer vision and pattern recognition technologies. Supporting tools for classification, regression, multi-modal information fusion. Gaze-tracking, gesture recognition, object detection, tracking, haptic devices, speech-based and pen-based interfaces.

COMP 540 / INFORMATION RETRIEVAL
Sınıf: Credit: 3Precondition:

Basic and advanced topics in information retrieval. Processing, indexing, querying and retrieval of textual documents. Modern search engines and their principles. Implementation of search engine systems for real-world applications.

COMP 541 / DEEP LEARNING
Sınıf: Credit: 3Precondition:

Basic linear models for classification and regression; stochastic gradient descent (backpropagation) learning; multi-layer perceptrons, convolutional neural networks, and recurrent neural networks; recent advances in the field; practical examples from machine translation, computer vision; practical experience in programming, training, evaluating and benchmarking deep learning models.

COMP 542 / NATURAL LANGUAGE PROCESSING
Sınıf: Credit: 3Precondition:

Fundamental concepts and current research in natural language processing. Algorithms for processing linguistic information. Computational properties of human languages. Analysis at the level of morphology, syntax, and semantics. Modern quantitative techniques of using large corpora, statistical models, and machine learning applied to problems of acquisition, disambiguation and parsing. Applications such as machine translation and question answering.

COMP 543 / MODERN CRYPTOGRAPHY
Sınıf: Credit: 3Precondition: COMP. 106 or consent of the instructor

Introduction to cryptographic concepts. Symmetric encryption, the public-key breakthrough, one-way functions, hash functions, random numbers, digital signatures, zero-knowledge proofs, modern cryptographic protocols, multi-party computation. Everyday use examples including online commerce, BitTorrent peer-to-peer file sharing, and hacking some old encryption schemes.

COMP 546 / ALGORITHM DESIGN AND ANALYSIS
Sınıf: Credit: 3Precondition: COMP. 202 or consent of the instructor

Advanced topics in data structures, algorithms, and their computational complexity. Asymptotic complexity measures. Graph representations, topological order and algorithms. Forests and trees. Minimum spanning trees. Bipartite matching. Union-find data structure. Heaps. Hashing. Amortized complexity analysis. Randomized algorithms. Introduction to NP-completeness and approximation algorithms. The shortest path methods. Network flow problems.

COMP 570 / BIOINFORMATICS AND ALGORITHMS IN COMPUTATIONAL BIOLOGY
Sınıf: Credit: 3Precondition:

Algorithms, models, representations, and databases for collecting and analyzing biological data to draw inferences. Overview of available molecular biological databases. Sequence analysis, alignment, database similarity searches. Phylogenetic trees. Discovering patterns in protein sequences and structures. Protein 3D structure prediction: homology modeling, protein folding, representation for macromolecules, simulation methods. Protein-protein interaction networks, regulatory networks, models and databases for signaling networks, data mining for signaling networks.

COMP 589 / SOFTWARE RELIABILITY: SPECIFICATION, TESTING AND VERIFICATION
Sınıf: Credit: 3Precondition:

Tools and techniques for ensuring software reliability. Specification formalisms and languages. Modeling tools and languages. Unit and integration testing. Automated testing and verification tools and algorithms. Mathematical representations for programs and executions. Hoare logic. Specification using modular contracts: Preconditions, postconditions, loop and object invariants. Ownership systems. Automated test generation. Model-based testing. Coverage metrics for testing adequacy. Type and effect systems for reliable software. Software model checkers. Static analysis. Concurrent/multi-threaded programs. Correctness criteria for concurrent programs: race-freedom, atomicity, linearizability and serializability. Testing, verification and debugging tools for concurrent programs.

ELEC 100 / INTRODUCTION TO ELECTRICAL AND ELECTRONICS ENGINEERING
Sınıf: Credit: 3Precondition:

A Brief History of Electrical and Electronics (EE) Engineering, overview of EE curriculum and tracks, overlaps of tyracks and current applications, description of signals and frequencies, presentation of some subjects by experts such as Signal Processing, Electronics, Communications, Electromagnetism, Optics and their natural extensions Micro-Electro-Mechanical systems, Networks, Vision and Video Processing, Lasers and Photonic systems,Biomedical, MATLAB Programming Language.

ELEC 201 / SIGNALS AND SYSTEMS
Sınıf: Credit: 4Precondition: MATH 107 & MATH 106

Introduction to discrete and continuous time signals and systems. Time-domain signal representations, impulse response of linear time-invariant (LTI) systems, and convolution. Frequency domain signal representations, frequency response of LTI systems, and Fourier analysis. Filtering of continuous and discrete time signals. Sampling and discrete time processing of analog signals. Laplace-transform domain analysis of continuous-time LTI systems. Exercises using MATLAB.

ELEC 202 / CIRCUITS
Sınıf: Credit: 4Precondition: MATH 106 & MATH 107

DC Circuits, Basic Concepts, Basic Laws, Methods of Analysis, Circuit Theorems, Operational Amplifiers, Capacitors and Inductors, First-Order Circuits. AC Circuits: Sinusoids and Phasors, Sinusoidal Steady-State Analysis, AC Power Analysis, , Magnetically Coupled Circuits, Applications of the Laplace Transform, Frequency Response, Bode plots

ELEC 204 / DIGITAL DESIGN
Sınıf: Credit: 4Precondition:

Computer technology, digital hardware, boolean algebra, logic functions and gates, canonical forms, simplification of boolean functions, Karnaugh maps, number systems, conversions, complement arithmetic, adders, multiplexers, tri-state outputs, decoders, encoders, sequential logic, flip-flops, sequential circuit analysis, sequential circuit design, registers and counters, memory and programmable logic, central processing unit. A design project.