PhD Courses
| Course Code | Course Name | Description | Prerequisite(s) | ||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| CENG 501 | Introduction to Statistical Data Processing | Organization and application of computers and statistical techniques to data processing. Data handling in terms of coding, preparation, acquisition (with and without computers), screening and reduction; summarization, tabulation and analysis; random variables, statistical estimation and hypothesis testing, enumerated data analysis, linear models (regression, correlation, analysis of variance). Recommended or Required Reading Baron, Michael. Probability and statistics for computer scientists. Chapman and Hall/CRC, 2019.
Grading Midterm 30% Homework 40% Final 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 502 | System Modeling and Computer Simulation | Introduction, System concept, System modeling, Monte Carlo technique, definition and selection of system input variables, generation and examination of random numbers, generation of random variables, Discrete System simulation, Discrete System Simulation Software. Course Objective Introduction to system and model concepts. To provide information about the theoretical foundations of simulation studies. To realize an actual system simulation study. Recommended or Required Reading Neelamkavil, F. (1987) Computer Simulation and Modelling. John Wiley and Sons. ,Law, A.M. and Kelton, W.D. (1991) Simulation Modelling and Analysis. 2nd Ed. McGraw-Hill. Learning Outcomes 1. Gaining the concepts of system and model 2. Use of simulation technique in problem solving 3. Learning the foundations of simulation studies and gaining the ability of implementing simulation techniques 4. Learning how to estimate using simulation
Grading Midterm: 30% Homework: 10% Final: 60% |
|||||||||||||||||||||||||||||||||||||||
| CENG 503 | Computer Applications in Medicine and Biology | Computer applications in medicine and biology, medical imaging technics, disease diagnosis with medical image processing, hospital information systems, patient tracking systems, mathematical modelling of medical information, networking in medical information systems. Course Objectives 1. To teach the use of computer Networks in medical informatics, 2. To examine mathematical modelling of medical information, 3. To examine medical information systems, 4. To teach the application areas of processes and differential equations in medical informatics, 5. To examine the principles of hospital information systems. Recommended or Required Reading Introduction to medical informatics, Lecture notes, N. Baykal, E. Musluoğlu, Sas Bilişim, 2000. Learning Outcomes 1. Gain knowledge about computer applications in medicine and biology 2. Understand application fields of the computer networks in medicine and biology 3. Understand the usage of mathematical modelling in medicine and biology 4. Learn medical imaging techniques 5. Learn mathematical modelling of the raw data which is provided by the medical imaging methods 6. Understand application fields of medical imaging 7. Understand processes and differential equations in medicine and biology 8. Understand hospital information systems
Grading Midterm: 25% Homework: 25% Presentaiton: 20% Final: 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 504 | Optimization Methods | Unconstrained optimization; one-dimensional search, gradient search methods. Constrained optimization; linear and integer programming. Heuristics. Non-derivative methods (metaheuristics); simulated annealing, genetic algorithms, neural networks. Class Hours 3 lecture hours Prerequisite: Knowledge of calculus and elementary programming. OBJECTIVE To provide the fundamental concepts and mathematical tools in optimization theory. LEARNING OUTCOMES
TEXTBOOK Chong, E. K. P., and Zak, S. H., An Introduction to Optimization, Fourth Edition, John Wiley & Sons, 2013.
|
|||||||||||||||||||||||||||||||||||||||
| CENG 505 | Advanced Computer Networks | Discussing the protocols, algorithms and other software that are essential to design advanced network services. Studying new research topics by focusing on the latest services and protocols. Course Objectives To recall the design issues of advanced network services and to discuss the latest research Recommended or Required Reading Andrew S. Tanenbaum, Computer Networks, 4th edition ,H. Zimmermann, “OSI Reference Model — The ISO Model of Architecture for Open Systems Interconnection, IEEE Transactions on Communications, 28(4), April, 1980, pp. 425-432 ,Yves Legrandgerard and Mohsen Souissi, “IPv6 Tutorial”, G6 Aristote – Renater IPv6 Conference, Paris, Oct 2002 ,Vern Paxson, “End-to-End Internet Packet Dynamics”, ACM SIGCOMM, Sep 1997 Learning Outcomes 1. To know computer networks 2. To be able to design networks 3. To be able to synthesis novel network protocols 4. To demonstrate the ability to take precautions for increasing network performance
Grading Midterm: 30% Presentation: 40% Final: 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 506 | Deep Learning | This course covers methods for designing and training deep neural networks. The course content includes the historical evolution of deep neural networks, their fundamental working principles and image classification and object detection and recognition in images using convolutional neural networks. Learning Outcomes: Ability to comment about historical evolution of biometric recognition
Ability to list the basic working principles of artificial neural networks
Ability to apply the learned fundamental principles to train artificial neural networks
Ability to classify images using convolutional neural networks
Ability to apply the acquired knowledge in practice using artificial neural network coding frameworks such as torch, TensorFlow.
|
|||||||||||||||||||||||||||||||||||||||
| CENG 507 | Introduction to Biometric Recognition | This course covers biometric recognition and identification methods and systems. The course content includes the historical evolution of biometric recognition, the fundamental principles of biometric recognition systems and basic face and fingerprint recognition algorithms. Course Objectives The fundamental aim of this course is for students to gain basic knowledge on biometric recognition methods and systems. By teaching basic methods for two example biometric modes (face and fingerprint) and making them into project assignments, the given theoretical knowledge is aimed to be applied in practice. The course’s target audience is beginning graduate students. Recommended or Required Reading Introduction to Biometrics, Anil K. Jain, Arun A. Ross, Karthik Nandakumar, Springer Science & Business Media, 2011. Course Learning Outcomes:
Grading Midterm: 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 508 | Digital Image Processing | This course covers the materials required to process and enhance photographic images, remote sensor multispacial scanner data and others. Topics include transform techniques, records and discriminate function. Learning Outcomes: To be able to describe the fundamental concepts in image processing
To identify state-of-the-art techniques in image processing research area
To implement algorithms to solve the encountered problems/requirements in the area of image processing
To prepare written and oral presentation for the performed work
|
|||||||||||||||||||||||||||||||||||||||
| CENG 509 | Vision Based Tracking and Modeling | This course covers the tracking of object and camera positions from images and videos by using computer vision techniques. Course contents include the mathematical theory and the algorithms used in practice necessary for modeling the objects and scene to be tracked. Course Objectives To provide the students with the necessary mathematical background required for basic object and camera tracking topics as well as information about the algorithms employed by state-of-the-art approaches. Recommended or Required Reading Kalman Filtering: Theory and Practice using MATLAB, 4th Edition, 2014 ,Multiple View Geometry by R. Hartley and A. Zissermen, 2nd Edition, 2003 Learning Outcomes 1. Describe the fundamental theoretical concepts in computer vision based tracking 2. Identify and discuss the state-of-the-art object tracking approaches 3. Design and implement a complete object tracking approach 4. Implement high performance real-time software for object tracking
Grading Homework: %30 Research Presentation: %40 Final Exam: %30 |
|||||||||||||||||||||||||||||||||||||||
| CENG 511 | Advanced Information Theory | This course will begin by explaining the methods of types. It will then address the rate distortion theory. It will also cover multiple-users channels and channels with random parameters. Finally, correlated source encoding will be provided. Course Objectives To teach the fundamental principles behind modern communication systems To state the difficulties that are experienced during the design of communication systems To give the ability to optimize such systems. Recommended or Required Reading T.M. Cover and J.A. Thomas, “Elements of Information Theory”, Wiley, 2nd Edition, 2006. ,Imre Csiszár and J. Körner, “Information Theory: Coding Theorems for Discrete Memoryless Systems”, Akademiai Kiado, 3rd edition, Budapest, 1997. ,R.G. Gallager, “Information Theory and Reliable Communication”, Wiley, 1968. ,G. Kramer, “Topics in Multi-User Information Theory”, Foundations and Trends in Communications and Information Theory, vol. 4, nos. 4–5, pp. 265–444, 2007. ,J.L. Massey, “Applied Digital Information Theory I and II”, lecture notes, Swiss Federal Institute of Technology (ETH), Zurich, Switzerland. ,J.S. Muller, “Asymmetry: The Foundation of Information”, Springer, 2007. ,J.G. Roederer, “Information and Its Role in Nature (The Frontiers Collection)”, Springer, 2005. ,Claude E. Shannon, “A mathematical theory of communication”, Bell System Technical Journal, vol. 27, pp. 379–423 and 623–656, July and October 1948. ,R.W. Yeung, “A First Course in Information Theory”, Kluwer Academic Publishers, 2005. Learning Outcomes 1. Know basic ideas of information theory. 2. Evaluate the modern communication systems by stating the pros and cons of them 3. Discuss the feasibility of new communication systems 4 Design communication systems
Grading Midterm: 30% Research Presentation: 30% Final Exam: 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 512 | Advanced Theory of Computation | This course will begin by explaining the different models of computation. It will then address the Church-Turing thesis. The course will also cover the topics of decidability and reducibility. Finally, detailed information is provided about complexity and related concepts. Course Objectives To define and teach different formal models of computation. To give the ability to prove the statements regarding the formal computational models. By covering the complexity classes, to make students use the concepts of NP-completeness to provide proofs for the newly introduced problems. Recommended or Required Reading L. Harry R., P. Christos H.,‘Elements of the Theory of Computation’, 2nd Ed., Upper Saddle River, NJ: Prentice-Hall, 1998 ,C. Daniel I.A.,’Introduction to Computer Theory’, 2nd Ed., John Wiley & Sons, Inc., 1997 ,L. Peter, ‘An Introduction to Formal Languages and Automata’,4th Ed., Jones and Bartlett Publishers, Inc., 2001 ,R. Elaine,’Automata, Computability, and Complexity Theory and Applications’, Upper Saddle River, NJ: Prentice-Hall, 2008 ,S. Arora and B. Barak, ’Complexity Theory: A Modern Approach’, Cambridge University Press, Cambridge, 2009 ,S. Cook, ‘The complexity of theorem-proving procedures’, In Proceedings of the 3rd ACM Symposium on the Theory of Computing, ACM, NY, pp 151–158, 1971. ,L. Fortnow, ‘The status of the P versus NP problem’, Commun. ACM. 52, 9 pp 78-86, 2009. ,M. Garey and D. Johnson, ‘Computers and Intractability. A Guide to the Theory of NP-Completeness’ , W. H. Freeman and Company, NY, 1979 ,A. Razborov and S. Rudich, ‘Natural proofs’, Journal of Computer and System Sciences 55, 1 pp 24–35, 1997 ,M. Sipser, ‘Introduction to the Theory of Computation’, PWS Pub. Co, 2005 Learning Outcomes 1. Recognize different computational models 2. Prove the representative models of computation for the given language definitions 3. Distinguish different complexity classes 4. Identify some hard problems of computer science and provide proofs for them
Grading Midterm Exam: 30% Homework: 30% Final Exam: 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 513 | Compiler Design and Construction | This graduate-level course provides theoretical and practical concepts of compiler design. It will cover the front-end, including scanners and parsers, middle-end optimizations, and back-end with instruction selection, register allocation, and instruction scheduling techniques. We will have practical examples based on the LLVM framework. Course Objectives 1. Understand scanning and parsing techniques. 2. Understand high-level optimizations and code transformations. 3. Practice and implement basic compiler structures. 4. Understand machine-dependent optimizations and low-level execution details. Recommended or Required Reading – Engineering a Compiler, Keith D. Cooper, Linda Torczon, Morgan Kaufmann. – Practical examples with LLVM framework Learning Outcomes 1. Know the theoretical fundamentals of compiler theory 2. Recognize theoretical limits on the abilities of compilers 3. Discuss the next generation compilers 4. Design and implement compilers
Grading 20% Midterm Exam – Take Home 20% Programming Assignments 20% Paper Reproduce and Presentation 40% Final Exam – Take Home |
|||||||||||||||||||||||||||||||||||||||
| CENG 514 | Computational Number Theory | The course Schedule includes the mathematical theories, and tools which are important for the cryptography such as the divisibility, prime numbers, congruencies, arithmetic with large integers, polynomial arithmetic, random numbers etc. Course Objectives To prepare the students for cryptography courses. (1,3) To develop skills to understand the divisibility, prime numbers, congruencies, arithmetic with large integers, polynomial arithmetic, random numbers, and related theories . Recommended or Required Reading J. H. Silverman, A Friendly Introduction to Number Theory , Second Edition ,Shoup, A Computational Introduction to Number Theory and Algebra , Version 2, E-Book, http://shoup.net/ntb ,N. Koblitz, A Course in Number Theory and Cryptography , Second Edition ,D. Bressoud and S. Wagon, A Course in Computational Number Theory ,D. E. Knuth, The Art of Computer Programming , volume 2, Second edition, 1981 Learning Outcomes 1. To be able to recognize and implement of the mathematical concepts of behind the cryptographic applications. 2. To be able to employ the coding of computational number theorical components and algorithms. 3. To be able to compare of different mathematical structures according to requirements of cryptosystems. 4. To be able to analyze the mathematical structers of symmetrical and asymmetrical cryptosystems.
Grading Midterm: 30% Presentation: 40% Final: 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 515 | Topics in Computer Science | In this course the recent popular subjects and new technologies are discussed. The inspiring innovations in different fields in computational sciences are examined. New ideas are discussed and open subjects in hot topics are clarified. Course Objectives 1. To discuss the milestones of the computer science, 2. To discuss the recent Technologies, 3. To examine inspiring topics in computer science, 4. To search open subjects in popular research fields in computer science. Recommended or Required Reading Supplementary course material provided by the course instructor. Learning Outcomes 1. To learn fundamental innovations in computer science 2. To have knowledge about new and recent technologies 3. To examine different computational Technologies and to present potential research fields 4. To build innovative and creative thinking 5. To search open subjects and hot topics in recent technologies 6. To discuss new and innovative ideas
Grading Midterm: 30% Homework: 30% Final: 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 516 | Advanced Programming Languages | Functional and logic programming, concepts of programming language design, and formal reasoning about programs and programming languages. Course Objectives 1. To understand fundamental concepts in programming languages. 2. To analyze and design programming languages. 3. To study some recent topics in programming languages research. Recommended or Required Reading B. C. Pierce, Types and Programming Languages , MIT Press, 2002. ,G. Winskel, The Formal Semantics of Programming Languages , MIT Press, 1993. Learning Outcomes 1. Understand, generalize and analyse different programming languages. 2 Design and implement programming languages. 3 Compare and evaluate different programming languages. 4 Apply different programming languages to real world problems.
Grading Midterm: 30% Presentation: 40% Final: 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 517 | Classics Works in Computer Science | Gödel’s undecidability theorem, computability, game theory ideas, information theory basics, graphs, networks, new directions in cryptography, the Antikythera mechanism, declarative programming, relational database model, machines and intelligence, computational complexity. Course Objectives Knowledge of ideas and basic assumptions inside the classics articles of computer science provides the understanding of the boundaries of the field. This paves the way for advanced research. The objective of the course is thus to provide this necessary background to give new perspectives. Recommended or Required Reading D. E. Denning, “A Lattice Model of Secure Information Flow”, Commun. ACM, vol. 19, pp. 236 243, 1976 Learning Outcomes 1. Know the basic assumptions and ideas in computer science 2. Know the scientists who are leading the way in computer science
Grading Midterm: 30% Homework: 30% Final: 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 518 | Introduction to Research Methodology and Ethics | Empirical computer science. Basic research methodology. Research and experimental questions. Experimental evaluation. Ethics in research. Study of the larger Course Objectives This course includes an understanding of what computer science researchers do and the philosophy and ethics related to how they do it. Recommended or Required Reading Research Methods in Computer Science Course Notes by Prof.Dr. Ullrich Hustadt, Department of Computer Science, University of Liverpool (2008) Learning Outcomes 1. The internalization of the research methodology. 2. Able to do experimental design. 3. Able to construct and test experimental hypotheses. 4. The internalization of general ethical issues and ethics in research.
Grading Report 40% Homework 40% Final 20% Important remark for incoming Erasmus students: This course is graded as Pass/Fail. You cannot get AA, BA or any letter grade from it. |
|||||||||||||||||||||||||||||||||||||||
| CENG 521 | Advanced Operating Systems | Students will study advanced operating system topics and be exposed to recent developments in operating systems research. This course involves readings and lectures on classic and recent papers. Topics: virtual memory management, synchronization and communication, file systems, protection and security, operating system structure and extension techniques, fault tolerance, and history and experience of systems programming. Course Objectives To teach the fundamentals topics and theorems of computer science. To teach the research, analyze, compare and modeling techniques of computer science. To teach the hot topic concepts, research areas and problems of computer science. Recommended or Required Reading Yee, Sehr, Dardyk, Chen, Muth, Ormandy, Okasaka, Narula, Fullagar / Ben Hawkes, Native Client: A Sandbox for Portable, Untrusted x86 Native Code Exploiting Native Client ,Dersin belirlenmiş bir kitabı yoktur. Öğrencilerin verilen sırada makale/bildirileri okuyarak derse gelmeleri beklenir. ,Richard Gabriel, The Rise of “Worse is Better” ,Savage, Burrows, Nelson, Sobalvarro, and Anderson, Eraser: A Dynamic Data Race Detector for Multithreaded Programs ,Butler Lampson,Experience with Processes and Monitors in Mesa ,Hans-J. Boehm,Threads cannot be implemented as a library ,Ousterhout, von Behren, and Adya, Cooperative Task Management without Manual Stack Management, Why Threads Are A Bad Idea, Why Events Are A Bad Idea ,Navarro, Iyer, Druschel, and Cox, Practical, Transparent, Operating System Support for Superpages ,Waldspurger,Memory Resource Management in VMware ESX Server ,Rinard, Cadar, Dumitran, Roy, Leu, Beebee, Enhancing Server Availability and Security Through Failure-Oblivious Computing ,Adams and Agesen, A Comparison of Software and Hardware Techniques for x86 Virtualization ,Rosenblum and Ousterhout, The Design and Implementation of a Log-Structured File System ,Nightingale, Veeraraghavan, Chen, Flinn, Rethink the Sync (slides) ,Mogul and Ramakrishnan, Eliminating Receive Livelock in an Interrupt-Driven Kernel ,Sandberg et al. / Gray and Cheriton, Design and Implementation of the SUN Network Filesystem Leases: An Efficient Fault-Tolerant Mechanism for Distributed File Cache Consistency ,Muthitacharoen, Chen, and Mazieres, A Low-Bandwidth Network File System ,Dean and Ghemawat / DeWitt and Stonebraker, MapReduce: Simplified Data Processing on Large Clusters MapReduce: A major step backwards ,Bessey, Block, Chelf, Chou, Fulton, Hallem, Henri-Gros, Kamsky, McPeak, A Few Billion Lines of Code Later: Using Static Analysis to Find Bugs in the Real World. Learning Outcomes 1. The analyzing and modelling capability of the changing and the new requirments of the operating systems which are coming with technological improvements. 2. Defining and modelling capability of computer science hot topic research problems. 3. To have the estimate and plan capability for the future studies and research areas on computer science. 4. To be able to analyze and compare the architectural design of new operating systems.
Grading Midterm: 30% Application: 40% Final: 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 522 | Advanced Embedded System Design | Nature of embedded systems, their role in computer engineering; special and general purpose microprocessor design, embedded microcontrollers, embedded software; real time systems, problems of timing and scheduling; testing and performance issues, reliability; design methodologies, software tool support for development of such systems; problems of maintenance and upgrade; introduction to Application Specific Integrated Circuit (ASIC) Design, VHDL Course Objectives Discussing the latest issues on advanced embedded system design. Recommended or Required Reading “Real-Time Systems Design and Analysis”. Phillip A. Laplante. A John Wiley & Sons, Inc., Publication ,“Software Engineering for Real-Time Systems”, J.E. Cooling, Addison Wesley. ,Adamski, Marian Andrzej. Design of Embedded Control Systems, Boston, MA : Springer Science+Business Media, Inc., 2005. ,Berger, Arnold. Embedded systems design:an introduction to processes tools and tecniques. San Francisco;Lawrence, Kan: CMP Books, c2002 ,“Modeling and Verification of Real-Time Systems Using Timed Automata: Theory and Practice”. Paul Pettersson. PhD. Thesis. Uppsala University. Learning Outcomes 1. To have knowledge of embedded systems fundamentals 2. To be able to design real-time systems 3. To know the state-of-the-art of embedded systems 4. To know the state-of-the-art of fault-tolerant systems
Grading Midterm: 30% Research Presentation: 30% Final Exam: 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 523 | Advanced Topics of Real Time Systems | Real-Time software design issues, real-time operating systems, real-time scheduling algorithms, formal methods in software specification, modeling and verification using timed-automata, software design, programming languages, testing, performance analysis and optimization, documentation, software re-use, fault-tolerance. Course Objectives To give the students the latest research issues on the software development, programming, design, test and documentation for real-time systems Recommended or Required Reading Phillip Laplante, Real-Time Systems Design and Analysis – An Engineer’s Handbook, IEEE Press, 1993. Learning Outcomes 1. To have knowledge of real-time systems fundamentals
Grading Written Midterm Exam: 20%
Written Final Exam: 30%
Assignments: 10%
Term Project: 40%
|
|||||||||||||||||||||||||||||||||||||||
| CENG 524 | Advanced Computer Architecture | Basic principles of processor design, instruction set architecture, pipelining, design of advanced memory hierarchies, multithreading, task-level and instruction-level parallelism, inter-processor communication models, multiprocessors, future trends. Course Objectives To give a comprehensive discussion about the latest develeopments on computer architecture and recent microprocessors on the market. To study the latest research topics by focusing especially on Pentim 4, multicore and EPIC processors. Recommended or Required Reading David A. Patterson, John L. Hennessy. Computer Organization and Design . 3rd Ed. 2005. Morgan Kaufmann Pub. ,John L. Hennessy and David A. Patterson. Computer Architecture: A Quantitative Approach; 4th ed., Morgan Kaufmann Publishers. ,Hesham El-Rewini, Mostafa Abd-El-Barr. Advanced Computer Architecture and Parallel Processing. 2005, Wiley, online library. Learning Outcomes 1. To have knowledge of computer architecture fundamentals 2. To be able to design microprocessors 3. To know the state-of-the-art of computer architectures 4. To know the state-of-the-art of parallel computing and multi-core architectures
Grading Midterm: 30% Research Presentation: 30% Final: 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 525 | Fault Tolerant Computing | Fault modeling, testing and redundancy techniques to achieve fault tolerance in computer systems, error detection, failure recovery, error coverage, current research in the field. Course Objectives To introduce fault modeling, testing and redundancy techniques to achieve fault tolerance in computer systems Recommended or Required Reading Israel Koren, C. Mani Krishna, Fault-Tolerant Systems, Morgan Kaufmann, 2007. Learning Outcomes 1. To be able to understand faults and testing
Grading Written Midterm Exam: 20% Written Final Exam: 30% Assignments: 10% Term Project: 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 531 | Advanced Artificial Intelligence | Approaches to AI; higherorder logic; planning; expert systems; environment of AI systems; soft computing in AI systems; nonsymbolic learning; natural language processing; intelligent agent; multiagent system; semantic web; robotics. Course Objectives 1. Analysing cognitive models 2.Analysing interaction models 3.Develop sample smart systems Recommended or Required Reading Luger, George; Stubblefield, William; 2004; “Artificial Intelligence: Structures and Strategies for Complex Problem Solving”; The Benjamin/Cummings Publishing; ISBN 0805347801 ,Russell, Stuart; Norvig, Peter; 2003; “Artificial Intelligence – A Modern Approach”; Prentice-Hall; 0131038052 ,Giarratano, Joseph C.; Ritel, Gary D.; 2005; “Expert Systems – Principles and Programming”; Thompson Course Technology; 0534384471 ,Munakata, Toshinori; 2007; “Fundamentals of the New Artificial Intelligence Neural, Evolutionary, Fuzzy and More”; Springer; 9781846288395 ,Maedche, Alexander; 2002 ; “Ontology learning for the semantic web”; Kluwer Academic Publishing; 0792376560 ,Hjelm, Johan; 2001; “Creating the semantic Web with RDF: professional developer s guide”; John Wiley; ,Goertzel, Ben; Pennachin, Cassio; 2007; “Artificial General Intelligence”; Springer; 9783540237334 ,Nabiyev, Vasif V.; 2005; “Yapay Zeka”; Seçkin Yayıncılık; 9753479859 Learning Outcomes 1. Develop smart behaviours 2. Programme in declarative or rule-based languages 3. Develops interactive systems 4. Develops distributed systems
Grading Midterm 30% Homework 10% Research Presentation 30% Final 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 532 | Expert Systems and Knowledge Engineering | Analyse concepts that facilitate modelling knowledge, like propositional logic, predicate logic, uncertainty and fuzzy logic, analyse concepts that enable the development of purpose-oriented architectures, like knowledge representation, corpus, language processing and production systems, and analyse advanced systems that involve expert systems, like ontologies & intelligent agents, decision support systems and behavioural robotics. Course Objectives 1.Analyse concepts that facilitate modelling knowledge 2.Develop purpose-oriented architectures 3.Analyse concepts for building advanced systems Recommended or Required Reading Giarratano, Joseph C.; Ritel, Gary D.; 2005; “Expert Systems – Principles and Programming”; Thompson Course Technology; 0-534-38447-1 ,Helbig, Hermann; 2006; “Knowledge Representation and the Semantics of Natural Language”; Springer; 3-540-24461-1 ,Wooldridge, Michael; 2009; “An Introduction to MultiAgent Systems”; Wiley; 978-0-470-51946-2 ,Siler, W; Buckley, JJ; 2005; “Fuzzy expert systems and fuzzy reasoning “; Wiley Learning Outcomes Upon the completion of this course a student : 1. Acquire and model knowledge
Grading Midterm 30% Homework 10% Research Presentation 30% Final 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 533 | Probabilistic Reasoning | Graphical Probability Models. Bayesian Reasoning. Bayesian Networks. Learning in Bayesian Networks. Knowledge Engineering. Temporal Models. Inference in Dynamic Bayesian Networks. Markov Decision Processes. Course Objectives The challenges of modeling and reasoning under uncertainty is defined and solution approaches based on probabilistic reasoning are discussed in this course. Recommended or Required Reading Bayesian Artificial Intelligence; Kevin B. Korb, Ann E. Nicholson; Chapman & Hall/CRC, 2004. ,Learning Bayesian Networks; Richard E. Neapolitan, Prentice Hall, 2003. ,Probabilistic Reasoning in Intelligent Systems (2nd Edition); Judea Pearl; Morgan Kaufmann Publishers Inc., 1988. Learning Outcomes 1. Teaching the concept of uncertainty 2. To teach graphical probabilistic models 3. Being able to understand reasoning and learning in Bayesian networks 4. Being able to design Bayesian network applications
Grading Midterm : 15% Homework : 20% Research Presentation: 30% Final : 35% |
|||||||||||||||||||||||||||||||||||||||
| CENG 534 | Deep Learning for Natural Language Processing | Natural language processing (NLP) is one of the most important technologies of theinformation age. In traditionalNLP, task-specific feature engineering and language-specific solutions were common. Recently, deep learning approaches have obtained very high performance across many different NLP tasks, and multilingual solutions have been introduced. This course covers cutting-edge research in deep learning applied to NLP. Topics include word vector representations, window-based neural networks, recurrent neural networks, long-short-term-memory models, recursive neural networks, convolutional neural networks as well as some very novel models involving a memory component. A term project to implement, train, test, and visualize a custom neural network solution to a large scale NLP problem will be given. Course Objectives To advance students on the cutting-edge research in deep learning applied to NLP. Recommended or Required Reading Goodfellow, I., Bengio, Y., and Courville, A. (2016). Deep Learning: MIT Press. ,Goldberg, Y., &Hirst, G. (2017). Neural Network Methods in Natural Language Processing: Morgan & Claypool Publishers. ,Mikolov, T., Sutskever, I., Chen, K., Corrado, G., &Dean, J. (2013). Distributed representations of words and phrases and their compositionality. In: Advances in Neural Information Processing Systems – Volume 2, Lake Tahoe, Nevada. ,Mikolov, T., Chen, K., Corrado, G.,and Dean, J. (2013). Efficient Estimation of Word Representations in Vector Space. CoRR, abs/1301.3781. ,Pennington, Jeffrey and Socher, Richard and Manning, Christopher D. (2014). Glove: Global Vectors for Word Representation. In: Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP), 14. ,Huang, Eric H., Richard Socher, Christopher D. Manning, and Andrew Y. Ng. 2012. Improving word representations via global context and multiple word prototypes. In Proceedings of the 50th Annual Meeting of the Association for Computational Linguistics: Long Papers – Volume 1. Jeju Island, Korea: Association for Computational Linguistics. ,Collobert, Ronan, Jason Weston, #233, onBottou, MichaelKarlen, KorayKavukcuoglu,and PavelKuksa. 2011. Natural Language Processing (Almost) from Scratch. J. Mach. Learn. Res. no.12:2493-2537. ,Hirschberg, J.and Manning, C.D. (2015) Advances in Natural Language Processing. Science, 349, 261-266. , Turney, P. D., &Pantel, P. (2010). From frequency to meaning: vector space models of semantics. J. Artif. Int. Res., 37(1), 141-188. Learning Outcomes Upon the completion of this course a student :
Grading Midterm 30% Research Presentation 35% Final 35% |
|||||||||||||||||||||||||||||||||||||||
| CENG 541 | Advanced Database Management Systems | Relational theory and extensions, such as relational calculus, relational algebra, higher order normal forms; advanced DBMS concepts, such as integrity, recovery, concurrency, security, query optimisation; object-oriented databases; distributed databases, related techniques and protocols, such as data replication, data fragmentation, synchronisation, load balancing; parallel databases; deductive databases; federated databases and homogeneity/heterogeneity. Course Objectives 1.Learn advanced topics of database field 2.Gain ability to capture research articles 3.Gain ability to make a survey, propose solution and develop a project Recommended or Required Reading E.F. CODD. A Relational Model of Data for Large Shared Data Banks, Coomunication of the ACM, vol 15, June 1970 ,P.G. SELLINGER, M.M. ASTRAHAN, D.D. CHAMBERLIN, R.A. LORIE and T.G. PRICE, Access Path Selection in a Reletional Database System, ACM, 1979 ,S.CHAUDHURI, An Overview of Query Optimization in Relational Systems, PODS 1998 ,A. GUTTMAN. R-TREES. A Dynamic Index Structure for Spatial Searching, ACM 1984 ,J. NIEVERGELT and H. HINTERBERGER. The Grid File: An Adaptable, Symmetric Multikey File Structure, ACM 1984 ,P.O’NEAL and D. QUASS. Improved Query Performance with Variant Indexes, ACM 1997 ,D.J. DeWITT and J. GRAY.Parallel Database Systems: The Future of High Performance Database Processing, Communications of the ACM, Vol. 36, No. 6, June 1992 ,M. STONEBRAKER, P. M. AOKI, W. LITWIN, A. PFEFFER, A. SAH, J. SIDELL, C. STAELIN, A. YU. Mariposa: a wide-area distributed database system, The VLDBJournal, Springer-Verlag 1996 ,R. SNODGRASSF and I. AHN. A Taxonomy of Time in Databases, ACM, 1985 ,R. AGRAWAL and R. SRIKANT. Fast Algorithms for Mining Association Rules, Proceedings of the 20th VLDB ConferenceSantiago, Chile, 1994 ,J. GRAY, S. CHAUDHURI, A. BOSWORTH, A. LAYMAN, D. REICHART and M. VENKATRAO. Data Cube: A Relational Aggregation Operator Generalizing Group-By, Cross-Tab, and Sub-Totals, Data Mining and Knowledge Discovery 1, 29–53 (1997) ,S. BRIN and L. PAGE The Anatomy of a Large-Scale Hypertextual Web Search Engine, Proceeding of 7th International Conference on World Wide Web, 1998 ,C.J. Date, An Introduction to Database Systems, Addison-Wesley, Seventh Edition, 2010 Learning Outcomes 1. Learn the history and development of aproaches and methods behind the functions of database management system (PO1, PO3), 2. Gain ability to read, abstract and discuss the important articles of the feld (PO1, PO3), 3. Understand, present and discuss the present research in the field of database.
Grading Midterm 30% Research Presentation 30% Final 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 542 | Knowledge Discovery | Knowledge discovery and data mining, data warehousing, data preparation and data mining primitives, concept description, mining association rules in large databases, classification and prediction, cluster analysis, web mining, applications in data mining. Course Objectives 1.Read, abstarct and discuss research papers on one of the topics of computer science field (1), 2.Make a survey, propose a solution and test the performance of the solution on one of the open problems of the field (2, 3), 3.Document and present the research process (4) Recommended or Required Reading J. Han, Data Mining: Concepts and Techniques, Morgan Kaufman, 2000 ,M. H. Dunham, Data Mining Introductory and Advanced Topics, Prentice Hall, Pearson Education, 2003. ,R. J. Roiger and M. W. Geatz, Data Mining: A Tutorial Based Primer, Addison Wesley, 2003. ,M. J. A. Berry and G. S. Linoff, Mastering Data Mining Wiley, 2000. Learning Outcomes 1. Recall the process of knowledge discovery and data mining algorithms and be able to compare them 2. Make a survey on one of the open problems of the field 3. Gain the ability of developing a knowledge discovery process using using data mining tools 4. Document and present the project of the developed knowledge discovery process
Grading Midterm: 30% Research Presentation: 40% Final: 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 543 | Information Retrieval Systems | This course covers the components of information retrieval systems that are used to search within document collections that contain unstructured data. Information retrieval from text documents as well as documents containing rich media (such as images and video) is included in the course contents. Course Objectives To teach the fundamentals of information retrieval systems. To increase awareness to the differences between structured databases and unstructured data collections. To improve practical software design and implementation skills needed for processing large data collections. Recommended or Required Reading Search Engines: Information Retrieval in Practice by W. B. Croft, D. Metzler, and T. Strohman, 2010 ,Information Storage and Retrieval Systems by Kowalski G., Maybury M.T., 2000 Learning Outcomes 1. To be able to explain fundamental theoretical concepts of information retrieval 2. Identify and discuss the state-of-the-art information retrieval systems 3. Design and implement a complete information retrieval system 4. Analyze high performance software that can process very large scale data sets
Grading Midterm 30% Homework 10% Research Presentation 30% Final 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 544 | Large-Scale Data Management | This course introduces the fundamental concepts and computational paradigms of large-scale data management. This includes major methods for storing, updating and querying large datasets as well as for data-intensive computing. The course covers concepts, algorithms, and system issues on the topics of parallel and distributed databases, peer-to-peer data management, MapReduce and its ecosystem, Spark and dataflows, datalakes and NoSQL databases. Course Objectives To introduce students to the current trends in large-scale data management covering concepts, architectures, algorithms and system issues. Recommended or Required Reading T. Özsu, P. Valduriez. Principles of Distributed Database Systems. Springer, 4th ed., 2020. M. Kleppman. Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems. O’Reilly Media, Inc., 2017. Learning Outcomes
Midterm: 30% Research Presentation: 30% Final: 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 551 | Advanced Software Engineering | This course will begin by explaining the concept of software engineering. Afterwards, the software development process is described. The course will then cover software requirements, software specification, software analysis, and formal analysis. Finally, quality management, product metrics, process metrics, COTS, and software psychology are addressed. Course Objectives To provide the graduate students with the ability to evaluate the software engineering techniques and approaches To present the current level of software engineering practices and inform about the historical progress To give the ability of professional decision making in choosing the right approaches for the project at hand. Recommended or Required Reading Glass, Robert L.;2003; “One Giant Step Backward.” Communications Of the ACM 46, no. 5. ,Gray, Lewis.;1998; “Gray Rebuts Bach: No Cowboy Programmers!” Computer pp 102, 103 and 105. ,Hatton, Les.;1998; “Does OO Sync with How We Think?” IEEE Software pp 46-54. ,Hoare, C. A. R.;1969; “An Axiomatic Basis For Computer Programming.” Communications of the ACM 12, no. 10 pp 576-583. ,Howard, Alan.;2001; “Software Engineering Project Management.” Communications Of The ACM 44, No. 5 pp 23 and 24. ,Kearney, Joseph K., Robert L. Sedlmeyer, William B. Thompson, Michael A. Gray, and Michael A. Adler.;1986; “Software Complexity Measurement.” Communications of the ACM 29, No. 11 pp 1044-1050. ,Krueger, Charles W.;1992; “Software Reuse.” ACM Computing Surveys 24, No. 2 pp 132-183. ,Lawrence, Brian, Karl Wiegers, and Christof Ebert.;2001; “The Top Risks of Requirements Engineering.” IEEE Software pp 62 and 63. ,Ledgard, Henry F.;2001; “The Emperor with No Clothes.” Communications of the ACM 44, no. 10 pp 126-128. ,Mackeyn, Karen.;2000; “Mars versus Venus.” IEEE Software pp 14-15. ,Mantei, Marilyn.;1981; “The Effect of Programming Team Structures on Programming Tasks.” Communications of the ACM 24, no. 3 pp 106-113. ,Martin, Robert C.;2000; “eXtreme Programming Development through Dialog.” IEEE Software pp 12 and 13. ,McConnell, Steve.;1998; “Problem Programmers.” IEEE Software pp 126-128. ,McConnell, Steve.;2000; “Cargo Cult Software Engineering.” From The Editor column, IEEE Software pp 11-13. ,Meyer, Bertrand.;1999; “A Really Good Idea.” Computer pp 144-147. ,Parnas, David Lorge.;1985; “Software Aspects of Strategic Defense Systems.” Communications of the ACM 28, 12 pp 1326-1335. ,Paulk, Mark C., Bill Curtis, Mary Beth Chrissis, and Charles V. Weber. “The Capability Maturity Model for Software.” IEEE Software. ,Pressman, Roger S.;1998; “Can Internet-Based Applications Be Engineered?” IEEE Software pp 104-109. ,Rettig, Mark.;1990; “Software Teams.” Communications of the ACM 33, no. 10 pp 23-27. ,Rothman, Johanna.;1998; “Of Crazy Numbers and Release Criteria.” Computer pp 127-128. ,Saiedian, Hossein.;1996; “An Invitation to Formal Methods.” Computer pp 16-30, New York. ,Schaible, Dawn, and Keith Britton.;2003; “Testing in NASA Human-Rated Spacecraft Programs: How Much is Just Enough?” SDM Master s thesis. MIT, Chaps. 2, 4, and 5. ,Shapiro, Stuart.;1997; “Splitting the Difference: The Historical Necessity of Synthesis in Software Engineering.” IEEE Annals of the History of Computing 19, no. 1 pp 20-54. ,Watkins, Robert, and Mark Neal.;1994; “Why and How of Requirements Tracing.” IEEE Software pp 104-106. ,Weyuker, Elaine J.;1998; “Testing Component-Based Software: A Cautionary Tale.” IEEE Software pp 54-59. ,Williams, Laurie, Robert R. Kessler, Ward Cunningham, and Ron Jeffries.;2000; “Strengthening the Case for Pair Programming.” IEEE Software pp 19-25. ,Wing, Jeannette M.;1990; “A Specifier s Introduction to Formal Methods.” Computer pp 8-24. ,Wirth, Niklaus.;1971; “Program Development by Stepwise Refinement.” Communications of the ACM 14, no. 4 pp 221-227. ,Wirth, Niklaus.;1995; “A Plea for Lean Software.” Computer pp 64-68. ,Yamaura, Tsuneo.;1998; “How to Design Practical Test Cases.” IEEE Software pp 30-36. ,Highsmith, Jim, and Alistair Cockburn.;2001; “Agile Software Development: The Business of Innovation.” Computer pp 120-122. ,Bollinger, Terry;1997; “The Interplay of Art and Science in Software.” Computer pp 125-127 and 128. ,Brooks.;1987; “No Silver Bullet: Essence and Accidents of Software Engineering.” Computer. ,Budgen, David.;1999; “The Loyal Opposition: Software Design Methods: Life Belt or Leg Iron?” IEEE Software pp 133-136. ,Cockburn, Alistair, and Jim Highsmith.;2001; “Agile Software Development: The People Factor.” Computer pp 131-133. ,DeMillo, Richard A., Richard J. Lipton, and Alan J. Perlis.;1979; “Social Processes and Proofs of Theorems and Programs.” Communications of the ACM 22, no. 5. ,Ferdinandi, Patricia L.;1998; “Facilitating Communication.” Culture At Work column, IEEE Software pp 92-96. ,Garlan, David, and Mary Shaw.;1993; “An Introduction to Software Architecture.” In Advances in Software Engineering and Knowledge Engineering. Vol. 1. Edited by V. Ambriola, and G. Tortora. New Jersey: World Scientific Publishing Company. Also appears as CMU Software Engineering Institute Technical Report CMU/SEI-94-TR-21, ESC-TR-94-21. ,Glass, Robert L.;1998; “The Loyal Opposition: Reuse: What s Wrong With This Picture?” IEEE Software pp 57-59. Learning Outcomes 1. To have knowledge of software engineering concepts 2. Ability to learn from common software engineering faults 3. Discuss software engineering problems 4. Ability of professional decision making
Grading Homework 100% |
|||||||||||||||||||||||||||||||||||||||
| CENG 552 | Software Testing | Techniques, methods, and tools which help in the systematic and effective testing of software systems. Course Objectives 1. To obtain an insight of systematic testing within the software development cycle. 2. To learn different kinds, phases, and aspects of systematic testing. 3. To get experience in applying some test development techniques and some test tools. Recommended or Required Reading A.P. Mathur, Foundations of Software Testing , Addison-Wesley, 2008. ,P. Ammann, J. Offutt, Introduction to Software Testing , Cambridge University Press, 2008. Learning Outcomes 1. Understand, generalize and analyse different testing methods. 2. Design, implement, and apply different test strategy and tools. 3. Compare and evaluate different testing methods. 4. Apply testing methods to real world problems.
Midterm: 30% Homework: 30% Final: 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 555 | Analysis and Design of Microservice Based Systems | This course arms students with the knowledge and expertise to “design” and “engineer” services using state of the art technology. Students will learn the Service Oriented Architecture (SOA) as a way to design an enterprise environment that features cross-platform compatibility, agility and cost-efficiency. In particular, microservice based architectures, reactive systems and event-oriented modelling will be taught and serverless computing will be introduced. Reference book(s):
Course Objectives: To introduce students to the current trends in software architectures and event oriented modeling analysis and design of systems.
Grading:
Course Learning Outcomes: CO1- Describe different architectural design approaches and their role in engineering software. CO2- Apply modelling of services in different settings CO3- Be competent in designing, managing and documenting services CO4- Understand techniques for enterprise modelling of simple and complex structures as well as their associated technical standards and technologies. Contribution of Program Learning Outcomes:
P01 P02 P03 P04 P05 P06 P07 CO1 x x x x CO2 x x CO3 x CO4 x x x Justification of the course: An elective course of the Computer Engineering Master of Science and PhD Programs. ‘Software Architectures’ are one of the most significant areas of the software engineering discipline. This is the first course that focus on the state of the art software architectures. Today’s modern era permeates with phenomenal growth and advancement across a wide range of areas: from science and technology, to medicine and art, as well the social sciences. Amongst all, the notion of “services” plays a critical role to abstract and make available snippets of innovation, that can thereby be used cross-disciplinary to create bigger, better and more interesting innovations. This course arms students with the knowledge and expertise to “design” and “engineer” services using modern Web technology. Overlapping with or complementing topics in courses: CENG 551 Advanced Software Engineering – General software engineering knowledge is a crucial part for understanding and designing software systems. Although, CENG 551 is not a prerequisite for this course, students are advised to have general knowledge on software engineering, software analysis and design methods and programming. |
|||||||||||||||||||||||||||||||||||||||
| CENG 556 | Software Management | This course focuses on two advanced aspects of software management; organizational change and software measurement. Primary topics include software process improvement frameworks, agile maturity models, software process modeling languages, software measurement and social aspects of organizational change. Students participate in a modelling and organizational assessment project as well as gain hands on experience on measurement and prediction for software projects. Reference book(s):
Course Objectives: To advance students on the current trends in software quality management and software measurement.
Grading: Final Exam %40 Term Project %40 Assignments %20 Course Learning Outcomes: C1 – Assess and describe software organizations maturity levels C2 – To be able to model organizational processes in different setting by various notations C3 – Measure size of software products using different techniques C4 – Understand and apply techniques to predict effort for software projects Contribution of Program Learning Outcomes:
P01 P02 P03 P04 P05 P06 P07 C01 x x x C02 x x C03 x x C04 x x Justification of the course: An elective course of the Computer Engineering Master of Science and PhD Programs. Management of software is crucial for overall success of software systems development. This course gives a thorough grounding in software management from quality and measurement perspectives and establishes the skills needed to manage innovative technologies and techniques. It is the first course focused on Software Management within the department. Overlapping with or complementing topics in courses: CENG 551 Advanced Software Engineering – General software engineering knowledge is a crucial part for understanding and evaluating the models of software management. Although, CENG 551 is not a prerequisite for this course, students are advised to have fundamental knowledge on software engineering. |
|||||||||||||||||||||||||||||||||||||||
| CENG 557 | Advanced Software Design Patterns | This course focuses on advanced software design patterns. Primary topics include advanced object-oriented programming principles, object-oriented design patterns, patterns of enterprise application architecture, enterprise integration patterns, and patterns related to domain-driven design. Students will learn concepts of modern software development with design patterns and participate in development of a mid-size programming project working in teams. Course Objectives To advance students on the current trends in software design patterns Recommended or Required Reading Design Patterns: Elements of Reusable Object-Oriented Software, Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Addison-Wesley, 1995. ,Patterns of Enterprise Application Architecture, Martin Fowler, Addison-Wesley, 2003. ,Enterprise Integration Patterns, Gregor Hohpe, Bobby Wolf, Addison-Wesley, 2011. ,Patterns, Principles, and Practices of Domain-Driven Design, Scott Millett, Nick Tune, John Wiley & Sons, 2015. Learning Outcomes 1. To be able to identify and explain design principles and patterns in software 2. To be able to apply design principles and patterns when developing software in teams 3. To be able to critically evaluate and report consequences of design patterns with respect to desired software qualities 4. To be able to analyze and report the relationship between design principles, design patterns, and programming language design, application frameworks, or application domains
Grading Homework 20% Research Presentation 40% Final 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 561 | Advanced Information Security | Concepts and applications of system and data security. Topics include risks and vulnerabilities, policy formation, controls and protection methods, database security, encryption, authentication technologies, host-based and network-based security issues, personnel and physical security issues, issues of law and privacy. Areas of particular focus include secure network design, implementation and transition issues, and techniques for responding to security breaches. Course Objectives To teach the fundamental topics and theorems of computer security. To teach the doing research, problem analyzing, defining alternative solutions, comparing them and modeling the solution techniques for the ICT security. To teach the hot topic concepts, research areas and problems of computer science which are related to ICT security. Recommended or Required Reading Aleph One – Smashing the Stack for Fun and Profit: http://www.phrack.org/issues.html?issue=49&id=14#article ,US Security Awareness (.org): http://www.ussecurityawareness.org/highres/index.html ,NSU InfoSec web site (of course): http://infosec.nova.edu/ ,Bruce Schneier – Crypto-gram Newsletter: http://www.schneier.com/crypto-gram.html ,Microsoft Security Guidance Center: http://www.microsoft.com/security/guidance/default.mspx ,B. Matt, Introduction to Computer Security ,Addison-Wesley, Pearson Education, 2005 ,SNORT.ORG: http://www.snort.org/ Learning Outcomes 1 . The analyzing and modelling capability for the security architectures of the Information and Communication systems which are the coming with technological improvements. 2. Defining and modelling capability of security problems of new technological improvements and related hot topic security research problems. 3. To have the estimate and plan capability for the future study and research areas of security and the theoretical parts of computer science. 4. To be able to design and manage new information security interdisciplinary projects which have the positive impact to social life.
Grading Midterm 25% Presentation 40% Final 35% |
|||||||||||||||||||||||||||||||||||||||
| CENG 562 | Internet Security | Computer network security, encryption, access control, network package security, e-mail security, IP security, firewalls, intrusion detection systems. Course Objectives 1. To teach the fundamentals of computer network security. 2. To provide students with the fundementals of network package security. 3. To teach the fundementals of computer local/cooperate network security. Recommended or Required Reading W. Stallings, Network Security Essentials: Applications and Standards , Prentice-Hall, 2010. ,C. Kaufman, R. Perlman, M. Speciner, Network Security: PRIVATE Communication in a PUBLIC World , Prentice-Hall, 2002. Learning Outcomes 1. Know and compare different network security approaches. 2. Analyze network security problems, design and implement solutions. 3. Demonstrate the ability to abstract in security context. 4. Apply security engineering methods to real world problems.
Grading Midterm 30% Presentation 40% Final 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 563 | Database and Software Security | The methodologies in developing and maintaining secure software and secure databases as well as the techniques such as authentication, authorization, auditing, encryption, access control, safety, availability, reliability and durability. Course Objectives 1. To identify and analyze security problems in software and databases. 2. To devise, evaluate, and explain solutions to software and database security. 3. To teach authentication -authorization -auditing -transparent data encryption -granular access control and label security. Recommended or Required Reading G. McGraw, Software Security: Building Security in. , 2008. ,B. Natan, Implementing Database Security and Auditing , 2005. ,M. Dowd, J. McDonald, J. Schuh, The Art of Software Security Assessment: Identifying and Preventing Software Vulnerabilities. , 2006. Learning Outcomes 1. Identify potential threats and vulnerabilities early in software development and database administration lifecycle and apply measures that prevent or reduce them. 2. Know techniques and tools to be used in software and database security. 3 .Create and maintain software and databases with security in mind. 4. Apply secure software and database development methods to real world problems.
Grading Midterm 30% Presentation 40% Final 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 564 | Information Systems Policy, Management and Organization | The policy based management for planning, developing, installing, operating, and maintaining information systems in organizations with focus on political, economic, technological, physical and organizational factors Course Objectives 1. To conceptualize and comprehend complex nature of information systems management. 2. To devise and evaluate solutions for information systems management. 3. To teach strategic importance of policy based management of information systems for organizations. Recommended or Required Reading J. Ward, J. Peppard, Strategic Planning for Information Systems , John Wiley, 2002. Learning Outcomes 1 . Identify information systems management actions which add value to business. 2. Know techniques and tools to be used in management of information systems. 3. Policy based design, implementation and maintenance of information systems with quality and trust in mind. 4. Apply information systems management techniques to real world problems.
Grading Midterm 30% Presentation 40% Final 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 565 | C4I and Information Warfare | Concepts, Terminology, Command-Control-Communications-Computers and Intelligence (C4I ) Structure, Aims and Threats, Attacks and Defenses in Cyber Space, Economic – Psychological and Intelligence Warfare, Information Warfare Strategy, Intelligence and Counterintelligence in Cyber Space, Cyber Terrorism. Course Objectives To teach the C4I and information warfare concepts To highlight the decisive role of information and communication technologies in contemporary warfare To give the ability to analyze the performed cyber attacks To introduce the tools that support the intelligence function and give an implementation project on this topic Recommended or Required Reading A. Kott, “Information Warfare and Organizational Decision Making”, Artech House, 2006. ,E. Waltz, “Information Warfare Principles and Operations”, Artech House, 1998. ,S. Zi, V.H. Mair, “Art of War: Sun Zi s Military Methods”, Columbia University Press, New York, 2009. Learning Outcomes 1. Have knowledge of information warfare terminology 2. Evaluate work related to information warfare 3. Define information warfare strategy, specify the associated tactics and tools 4. Able to analyze performed cyber attacks
Grading Midterm 30% Homework 30% Final 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 566 | Privacy Enhancing Technologies | Data privacy is an important issue for the scientific community and industry. This course will give an overview of privacy concepts and terminology as well as concrete examples of privacy-enhancing technologies (PET) and some of their applications. Course Objectives To advance students on the current trends in privacy enhancing technologies Recommended or Required Reading C. Dwork and A. Roth, The Algorithmic Foundations of Differential Privacy, Foundations and Trends in Theoretical Computer Science, 2014. ,R. Cramer, I.B. Damgård, JB Nielsen. Secure Multiparty Computation and Secret Sharing. Cambridge University Press, 2015. ,A. Gkoulalas-Divanis, and L. Grigorios. Medical data privacy handbook. Springer, 2015. Learning Outcomes 1. Selecting appropriately privacy mechanisms 2. Developing privacy technologies 3. Assessing / Evaluating privacy protection 4. Reasoning about privacy concerns
|
|||||||||||||||||||||||||||||||||||||||
| CENG 600 | PhD Thesis | Program of research leading to PhD degree, arranged between a student and the faculty member. Students register to this course in all semesters starting from the beginning of their second semester while the research program or write-up of the thesis is in progress. Course Objectives To conduct and present an independent theoretical or experimental study under the supervision of a faculty advisor. Recommended or Required Reading Resources suggested by the academic advisor Learning Outcomes 1. To be able to inspect and apply proper theoretical and practical methods in an area of study 2. To be able to recognize ethical guidelines to follow in a research 3. To be able to evaluate a specific problem in a scientifically sound, thorough and precise manner in the course of a given period of time 4. To be able to understand how to deal with data sets or information gathered to reach a solution for the problem being tackled and to be able to present the thoughts and findings in a convincing way Grading Class Participation: 20 % Research Presentation: 80 % |
|||||||||||||||||||||||||||||||||||||||
| CENG 608 | 3D Photography | This course covers algorithms and applications to extract 3D information (especially shape) from images. It starts with the camera model and calibration, 2D and 3D projective geometries and extracting feature points. Then it covers passive 3D reconstruction techniques such as single view reconstruction, structure from motion, shape from silhouettes. Active sensing techniques (time of flight cameras, structured light, laser scanners etc.) that directly obtain 3D data are also briefly covered. Course Objectives To teach the imaging geometry of cameras. To describe the algorithms used in 3D information and shape extraction and to improve ability to implement these algorithms. To form acquaintance with the applications of this research area. To improve the ability of written and oral presentation. Recommended or Required Reading Computer Vision: Algorithms and Applications, Richard Szeliski, Springer, 2010. Learning Outcomes: 1. Describe the fundamental concepts in imaging geometry 2. Identify state-of-the-art techniques used in 3D information and shape extraction from images 3. Construct programs that implement algorithms of 3D information extraction and 3D reconstruction 4. Prepare written and oral presentation for the performed work
Grading Midterm 25% Homework 15% Presentation 30% Final 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 611 | Advanced Design and Analysis of Algorithms | This course examines a variety of theoretical issues that have important practical consequences in the design and analysis of algorithms. We emphasize the importance of asymptotic analysis and the common methodology used in the analysis of sequential and parallel algorithms. We will analyze the factors that influence the performance of algorithms on different computer architectures (such that many cores and parallel computers and high performance computers) and their implications on scientific applications of interest. We will survey major design strategies used in the complexity analysis of different algorithms. New models for parallel computation will be studied and critically evaluated. The complexity and limitations of these models will be discussed. Course Objectives Algorithms are important for scientific researches and engineering due the changing technologies. These algorithms should be evaluated and optimized from many points such as their used time and space, complexities. The aim of the course is to learn to the students related concepts, techniques and methodologies Recommended or Required Reading Introduction to Algorithms, second edition. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein. The MIT Press, 2001 Learning Outcomes To be able to analyze the complexity of applications
Grading Midterm 25% Homework 40% Final 35% |
|||||||||||||||||||||||||||||||||||||||
| CENG 612 | Category Theory in Computer Science | Under this course, the students will learn to use the category theory for the topics of computer science. Therefore the abstraction methodologies and concepts of Category Theory will be studied. Course Objectives This course aims to provide foundations on the mathematical theory of categories as needed in applications to computer science. On completion of this course students should: be learn the basic language and proof methods of category theory, and thereby be able to read and study research papers in computer science that use and/or are based on category theory Recommended or Required Reading M. Barr and C.Wells. Category Theory for Computing Science. Centre de Recherches Math_ematiques, third edition, 1999 Learning Outcomes 1. Learning the basic language and proof methods of category theory 2.Gaining the ability to use category theory in computer science research Grading Midterm 25% Homework 35% Final 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 613 | Research Methods in Computer Science | What is experimental computer science; Computing science research methodology; Statistics of interest; Exploratory data analysis; Hypothesis testing; Sampling; Experiment design; Explaining performance; Parametric modeling, regression; Generalization. Course Objectives This course gives a rigorous background in empirical methods for students working in any area of applied computer science. It covers experimental design, probabilistic modeling, exploratory data analysis, hypothesis testing, and system tuning. It encourages the use of computer-intensive statistical methods as an alternative to classical statistics. Recommended or Required Reading Cohen, P. R. (1995). Empirical methods for artificial intelligence, MIT Press. Knuth, D. E. (1997). Seminumerical Algorithms. Reading, MA, USA, Addison-Wesley. Learning Outcomes 1. Understand the importance of empirical research. 2.Construct a causal model between input and output variables. 3.Apply hypothesis testing. 4.Adopt computer-intensive statistical methods. 5.Assess performance.
Grading Midterm 30% Project 30% Project Publication 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 631 | Cognitive Computing | Human brain; cognitive concepts, models and architectures; mathematical models for cognitive concepts; modelling evolution of mind; collaborative cognition; cognitive machines. Course Objectives Development of cognitive concepts and models that simulate human intelligence. Development of sample cognitive systems. Recommended or Required Reading Thagard, P; 2005; “Mind: Introduction to Cognitive Science”; MIT Press; ISBN 026270109X ,Konar, A; Jain, LC; 2005; “Cognitive engineering: a distributed approach to machine intelligence”; ISBN 1852339756 ,Raab, M; Johnson, JG; Heekeren , HR; 2009; “Mind and motion: the bidirectional link between thought and action”; Elsevier; ISBN 978-0-444-53356-2 ,Bermúdez, JL; 2010; “Cognitive Science: An Introduction to the Science of the Mind”; Cambridge University Press; ISBN 978-0-521-70837-1 ,Wang, Y; 2010; “Discoveries and Breakthroughs in Cognitive Informatics and Natural Intelligence”; IGI Global snippet; ISBN 1605669024 ,Cohen, H; Lefebvre , C; 2005; “Handbook of categorization in cognitive science”; ISBN 0080446124 ,Eysenck, MW; Keane , MT; 2005; Cognitive psychology: a student’s handbook”; ISBN 1841693596 ,Mataric, Maja J; 2007; “The Robotics Primer”; MIT Press; ISBN 026263354x ,; 2000; “Temporal logic: mathematical foundations and computational aspects”; Oxford: Clarendon press; ISBN 0-19-853768-9 ,Baeten, JCM; Basten, T; Reniers, MA; 2009; “Process algebra: equational theories of communicating processes “; Cambridge University Press; SBN 0521820499 Learning Outcomes 1. Cognitive concepts and structures required to model human reasoning 2. Cognitive architectures combining symbolic and evolving artificial intelligence methods 3. Data structures and algorithms for cognitive architectures
Grading Midterm 30% Homework 10% Presentation 30% Final 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 632 | Computational Intelligence | Perceptrons, multi-layer perceptrons, recurrent neural networks, genetic algorithms, differential evolution, particle swarm intelligence, ant colony optimization. Course Objectives To introduce students to the fundamentals and applications of computational intelligence techniques inspired by natural systems, including neural networks, evolutionary algorithms, and swarm-based optimization. The course aims to equip students with the skills to model, analyze, and solve complex problems using biologically inspired computational approaches. Recommended or Required Reading Kruse, R., Borgelt, C., Braune, C., Mostaghim, S., Steinbrecher, M., Klawonn, F., & Moewes, C. (2011). Computational intelligence. Vieweg+ Teubner Verlag. Eiben, A. E., & Smith, J. E. (2015). Introduction to evolutionary computing. springer. Learning Outcomes: 1. To be able to explain computational intelligence and its main mechanisms. 2. To be able to identify the most appropriate computational intelligence method for a given problem. 3. To be able to apply computational intelligence methods to machine learning and optimization problems. 4. To be able to design experimental studies for computational intelligence algorithms.
Grading:
Submissions: Project, Report Supplementary course: CENG 504, CENG 506 |
|||||||||||||||||||||||||||||||||||||||
| CENG 641 | Data Integration | This course will begin by explaining the different reasons that make data integration hard: systems, logical and social reasons. The course will then cover the fundamentals of data integration, such as languages for resolving heterogeneity, automatic schema mapping techniques, query processing in heterogeneous systems and novel architectures for data integration. Finally, the commercial state of the art in this area and data spaces will be discussed. Course Objectives Today, organizations are in need of accessing information from heterogeneous data sources through a single uniform interface. This course discusses the basics and main challenges in data integration together with the state of art technologies and future directions. Recommended or Required Reading J.M. HELLERSTEIN, M.J. FRANKLIN, S. CHNADRASEKARAN, A. DESHPANDE, K. HILDRUM, S. MADDEN, V. RAMANA and M.A. SHAH; Adaptive Query Processing: Technology in Evolution, IEEE Data Engineering Bulletin, vol. 23, no. 2, 2000. ,Y.E. IOANNIDIS and E. WONG; Query Optimization by Simulated Annealing, Proc. of ACM STGMOD Conf., 1987. ,O. M. DUSCHKA; Query Planning and Optimization in Information Integration. Ph.D thesis, Stanford University, Stanford, Calfornia, 1998. ,M.J. FRANKLIN, B.T. JONSSON and D. KOSSMANN; Performance Tradeoffs for Client-Server Query Processing, SIGMOD Conference, 1998, pp. 9-18. ,R. GOLDMAN and J. WIDOM; WSQ/DSQ: A Practical Approach for Combined Querying of Databases and the Web. Proc. of ACM SIGMOD Conf., 2000. ,L.M. HAAS, D.KOSSMANN, E.L. WIMMERS and J.Y. YANG; Optimizing Queries Across Diverse Data Sources, Proc. of the VLDB Conference, 1997, pp.276-285. ,S. CHAUDHURI and K. SHIM; Query optimization in the presence of foreign functions, Proc. of the VLDB, 1993. ,A.Y. HALEVY; Answering Queries Using Views: A Survey, VLDB Journal, 2001, pp. 270-294. ,Z. IVES, A. HALEVY and D. WELD; Adapting to Source Properties in Processing Data Integration Queries, Proc. of ACM SIGMOD International Conference on Management of Data, June, 2004. ,C. LI; Computing Complete Answers to Queries in the Presence of Limited Access Patterns, The VLDB Journal, Vol. 12, 2003, pp. 211-227. ,L.F. MACKERT and G.M. LOHMAN; R* Optimizer Validation and Performance Evaluation for Distributed Queries, Proc. of the 12th Int. Conf. On VLDB, 1986 pp. 149-159. ,A. RAJARAMAN and Y. SAGIV, J. ULLMAN; Answering Queries Using Templates with Binding Patterns. Proc. of ACM PODS, San Jose, CA, 1995. ,I. MANOLESCU, L. BOUGANIM, F. FABRET and E. SIMON; Efficient Querying of Distributed Resources in Mediator Systems. Proc. of the Confederated International Conferences DOA, CoopIS and ODBASE, LNCS 2519, Springer-Verlag, 2002, pp. 468 – 485. ,T. OZSU and P. VALDURIEZ; Principles Of Distributed Database Systems, Prentice Hall, 2013. Learning Outcomes 1. To learn the underlying approaches and methods behind all functionalities of a data integration system 2.To acquire the ability to read, comprehend, and discuss key publications in the field of data integration 3.To develop solution proposals for a research problem in the domain of data integration 4.To implement the proposed solution for the selected research problem, evaluate its performance, and present the findings in both written and oral forms as a technical report
|
|||||||||||||||||||||||||||||||||||||||
| CENG 642 | Privacy Preserving Data Mining | Due to the combinatorial nature of the problem, the proposed methodologies span from simple, time and memory efficient heuristics and border-based approaches, to exact hiding algorithms that offer guarantees on the quality of the computed hiding solution at an increased, however, computational complexity cost. Course Objectives This course provides an extensive survey on a specific class of privacy preserving data mining methods that belong to the knowledge hiding thread and are collectively known as association rule hiding methods. Recommended or Required Reading A.G.GKOULALAS-DIVANIS and V.S. VERYKIOS. Association rule hiding functions, Springer, 2010. ,O. ABUL, M. ATZORI, F. BONCHI, and F. GIANNOTTI. Hiding sequences, In Proceedings of the 23rd International Conference on Data Engineering Workshops (ICDEW), pp.147–156, 2007. ,C. C. AGGARWAL and P. S. YU. Privacy preserving data mining: Models and algorithms, Springer–Verlag, 2008. Learning Outcomes 1. Understand and compare the approach and algorithms of privacy preserving data mining 2. Make a survey on one of the open problems of the field 3. Model and implement one of the tasks of privacy preserving data mining 4. Document and present the project of the developed
Grading Midterm 30% Homework 30% Final 40% |
|||||||||||||||||||||||||||||||||||||||
| CENG 643 | Pattern Discovery in Data Mining | This course introduces students to different aspects of pattern discovery (frequent pattern mining or pattern mining or association rule mining) which is the earliest and most popular task of data mining where the objective is to find hidden frequent patterns in massive data. Frequent patterns are important in many domains like market-basket analysis, software bug mining, web click analysis, phrase mining, image processing, recommender systems, etc. The course will cover the key aspects of the field in terms of algorithms, variations, scalability, data types and applications. The topics include frequent patterns, pattern usage in compression, patterns in dynamic data (streams, sequences and spatiotemporal objects), big data frequent pattern mining, frequent patterns in classification and clustering and privacy in pattern mining. Course Objectives
To introduce students to the current trends in frequent pattern mining with a broad view that captures their usage domains, algorithms, data types, scalability and applications.
Recommended or Required Reading
C.C. Aggarwal and J. Han. Frequent Pattern Mining, Springer, 2014 ,J. Han, M. Kamber, J. Pei. Data Mining Concepts and Techniques, Morgan-Kaufmann-Series-in-Data-Management-Systems, 2012 ,P-N. Tan, M. Steinbach, A. Karpatne, V. Kumar, Introduction to Data Mining (2nd Edition), Pearson, 2019 Learning Outcomes 1. Learn state-of-the-art research and industry trends in pattern mining, 2. Understand the fundamental principles of the field, 3. Be able to make design decisions in deploying pattern mining tasks in data centric applications as well as to identify the bottlenecks of such applications, 4. Learn how to read-understand-present-discuss research articles of the field.
Grading Quizzes 20% Assignments 20% Class Participation 20% Final Exam 40%
|
|||||||||||||||||||||||||||||||||||||||
| CENG 651 | Formal Methods for Safety and Security | This course presents how to incorporate formal methods within software engineering methodologies, especially for those applications which are critical for safety and security. The course introduces some specific formal notations, such as the CSP process algebra and Temporal Logics, as well as automatic tools for system modeling and verification. Finally, the course investigates the use of formal methods in the analysis of safety and security properties of systems. Course Objectives: To teach formal methods within software engineering for safety and security. To describe the algorithms used within software engineering for safety and security and to improve ability to implement these algorithms. To form acquaintance with the applications of this research area. To improve the ability of written and oral presentation. Recommended or Required Reading: B. Bérard et al.. Systems and Software Verification, Model Checking Techniques and Tools, Springer-Verlag, 2001 Learning Outcomes: 1. Describe the fundamental concepts in formal methods within software engineering for safety and security 2. Identify state-of-the-art formal methods used in software engineering for safety and security 3. Construct programs that implement algorithms for safety and security of software systems 4. Prepare written and oral presentation for the performed work
Grading: Midterm: 30% Homework: 10% Research Presentation: 30% Final: 30% |
|||||||||||||||||||||||||||||||||||||||
| CENG 661 | Advanced Asymmetrical Cryptosystems | This course follows on from the introductory cryptography course. In that course cryptographic algorithms were introduced according to the properties they possessed and how they might fit into larger security architecture. In this unit, the most popular and widely deployed algorithms are studied and highlighted design and cryptanalytic trends over the past twenty years. This course is, by necessity, somewhat mathematical and some basic mathematical techniques will be used. However, despite this reliance on mathematical techniques, the emphasis of the module is on understanding the more practical aspects of the performance and security of some of the most widely used cryptographic algorithms Course Objectives: At the end of the course, the students will be analyzed the open research topics of asymmetrical cryptography and its security functions. They will learn the recent solution protocols, related standards and their already exist vulnerabilities. The students will have the ability to do risk analysis and assessment for asymmetrical cryptographic solution mechanisms. Recommended or Required Reading: Resources suggested by the instructor Course Outcomes: 1. Learning asymmetric cryptosystem problem solving and design techniques. Grading: Midterm: 25% Homework: 40% Final: 35% |
|||||||||||||||||||||||||||||||||||||||
| CENG 662 | Advanced Symmetrical Cryptosystems | The students should be know the analysis of the security level of these cryptosystem and which cryptanalytic attacks are how much efficient on it. Course Objectives: The aim of this course is to prepare the students for the design and analysis of symmetrical cryptosystem. Therefore the students should be know the analysis of the security level of these cryptosystem and which cryptanalytic attacks are how much efficient on it. Recommended or Required Reading: Introduction to Cryptography with Coding Theory 2 nd Ed., W. Trappe, L.Washington, 2006. Course Outcomes: Learning the basic structures and techniques of symmetric cryptosystems. Grading: Midterm: 25% Homework: 40% Final: 35% |
|||||||||||||||||||||||||||||||||||||||
| CENG 663 | Cryptanalysis | The aim of this course is to prepare the students for the design and analysis of any cryptosystem. Therefore the students should be know the analysis of the security level of the cryptosystem and which cryptanalytic attacks are how much efficient on it. Course Objectives: At the end of the course the students will have the ability to analyze the security level of the cryptographic solutions and design cryptosystems to resistant for the known cryptanalytic attacks. Recommended or Required Reading: Decrypted Secrets, Methods and Maxims of Cryptology, 4th revised and extended Ed., F.L. Bauer, 2007, Springer. Course Outcomes: Learning analysis techniques and attack methods of security levels of cryptosystems. Grading: Midterm: 25% Homework: 40% Final: 35% |
|||||||||||||||||||||||||||||||||||||||
| CENG 690 | Advanced Seminar | The course is composed of the research, analyze, data collecting and reporting the results of the master student relating to the specific subject the student aims to study. Course Objectives: The aim of this course is that students could gain knowledge via literature search, make the report and present it as a seminar. Besides, this course aims to inform students about presentation techniques, format and outline. Recommended or Required Reading: Articles, textbooks and class notes relating to the seminar subject. Course Outcomes: 1. To be able to make a literature research and data arrangement on a given subject 2. To be able to analyze the results obtained and make a scientific report 3. To be able to express themselves in front of the audience 4. To be able to make a presentation by using the appropriate technics, format and content Grading: Application / Practical Work: 100% |
