CENG Doktora Yeterlilik Sınavı Yönergesi

Bilgisayar Mühendisliği Doktora Derecesi Yeterlilik Sınavı Yönergesi

Orta Doğu Teknik Üniversitesi Öğrenci El Kitabı'nda yer alan kural ve yönetmeliklere ek olarak Bilgisayar Mühendisliği Doktora Yeterlik Sınavı için aşağıdaki yönergeler belirlenmiştir.

Genel bilgi

  • Doktora yeterlik sınavı yazılı ve sözlü kısımdan oluşur. Aday her iki bölümü de geçtiğinde başarılı sayılır.
  • Doktora yeterlik sınavı Mayıs ve Kasım aylarında olmak üzere yılda iki kez yapılır.
  • Adayın sınavdan en az bir ay önce danışmanının onayını alıp bölüme dilekçe vermesi gerekmektedir. Öğrencinin sözlü (alan) sınavına ilişkin yazısının bir sayfalık özetini alan sınavına girme dilekçesi ekinde teslim etmesi gerekmektedir.
  • Doktora yeterlik sınavını geçemeyen adaya bir sonraki sınavda ikinci bir şans verilir. İkinci denemede başarısızlık, öğrencinin doktora programından ilişiğinin kesilmesine neden olur.

Doktora Yeterlik Sınavı

Sınav iki bölümden oluşmaktadır; Yazılı (Ana) sınav ve Sözlü (Alan) sınav.

Yazılı (Çekirdek) Sınav

Sınavın bu bölümü aşağıdaki 7 ana konuyu kapsamaktadır:

  • Data Structures (CENG 213),
  • Algorithms (CENG 315),
  • Discrete Math (CENG 223),
  • Theory of Computation (CENG 280),
  • Programming Languages (CENG 242),
  • Operating Systems (CENG 334),
  • Digital Design and Computer Architecture (CENG 232 & CENG331)

Temel bölümdeki sorular lisans düzeyinde olacak ve aşağıdaki Temel konular tablosunda listelenen içeriği kapsayacaktır. Sınavda her konudan iki soru sorulacak ve öğrencinin her bir konudan yalnızca bir soruyu denemesi istenecektir. Her derse 20 puan üzerinden not verilir ve toplam notu 140 üzerinden 84 (maksimum notun %60'ına tekabül eden) olan öğrenci başarılı sayılır. Ayrıca öğrenci çekirdek sınavda başarısız olursa 20 üzerinden en az 14 puan aldığı konulardan muaf tutulacaktır. Bir sonraki sınavda ise yalnızca kalan konulardan maksimum notun %60'ı kadar puan alması beklenecektir. Öğrenci dilerse “muaf olmama” hakkını saklı tutar. Bir dersten muafiyet durumu yalnızca bir sonraki sınav dönemi için geçerlidir.

Sözlü (Alan) Sınavı

Sınavın Amacı, öğrencinin doktora düzeyinde araştırma yapma yeteneğini ve potansiyelini değerlendirmek ve öğrenciyi araştırmaya daha erken katılmaya teşvik etmektir.

Sınav Öncesi Öğrenciden Beklentiler

  • Öğrencinin araştırma alanı dahilinde bir konu seçmek.
  • Bu konuya aşağıda açıklandığı gibi katkıda bulunmak.
  • “IEEE konferans bildirisi formatında” en az 6 en fazla 8 sayfalık bildiri hazırlamak.
  • Bildiri için Özgünlük Raporu hazırlanmalı ve tez danışmanı tarafından imzalanmalıdır. Başkalarının çalışmaları ile benzerlik %20’yi geçmemelidir. Orijinallik Raporu Turnitin (https://www.turnitin.com/) veya Ithenticate (https://www.ithenticate.com/) intihal kontrol yazılımı kullanılarak hazırlanabilir. Özgünlük raporu için benzerlik indeksinin ilk sayfasının çıktısının alınması yeterlidir.
  • Alan sınavına girme dilekçesi ekinde bu bildirinin bir sayfalık özetini göndermek.
  • Bu belgeyi Özgünlük Raporu ile birlikte sözlü (alan) sınav döneminin ilk gününden en az 10 gün önce sınav komitesine (jüriye) teslim etmek.

Sınav Sırasında Öğrenciden Beklentiler

  • Öğrencinin çalışmasını sunmak (en fazla 20 dakika)
  • Çalışmayla ilgili soruları yanıtlamak (10 dakika)
  • Öğrencinin doktora alanından sorulacak genel soruları yanıtlamak. (20 dakika, jüri gerekli görürse soru cevap kısmı uzatılabilir).

Beklenen Katkı Öğrenci aşağıdaki katkı türlerinden bir veya daha fazlasını yapmayı seçebilir:

  • Literatür değerlendirmesi: Her çalışmada literatür taraması yapılması zorunludur ancak bu kategoriyi seçen öğrencilerden daha önce yapılan çalışmaların avantaj ve dezavantajlarını belirleyerek daha detaylı bir literatür taraması yapmaları, seçilen konudaki literatürü birbirleriyle karşılaştırmaları ve bir analiz-sentez sunmaları beklenecektir.
  • Uygulama: Öğrenci, danışmanıyla birlikte seçmesi gereken bir konuda bir makale uygulayacak ve varsa çeşitli parametre değerlerini değiştirerek sonuçlar üretecektir.
  • Yeni yaklaşım: Öğrenci seçilen bir soruna yeni bir yaklaşım önerecek ve bu yaklaşımı sonuç üretmek için uygulayacaktır. Bu kategori, mevcut bir algoritmanın farklı bir yaklaşım kullanılarak geliştirilmesini içerir.
  • Karşılaştırma: Öğrenci, seçtiği iki veya daha fazla algoritmayı danışmanıyla karşılaştıracak ve bu karşılaştırma sonucunda elde edilen sonuçları tartışacaktır.
  • Teorik katkı: Öğrenci formül, teori, kanıt vb. gibi yeni bir teorik yaklaşım önerecek ve bu yaklaşımın doğruluğunu, faydasını ve arkasındaki mantığı gösterecektir.
  • Vaka çalışması: Öğrenci mevcut bir yöntemi veya süreci gerçekçi bir probleme uygulayacak ve elde edilen sonuçları tartışacaktır.

Notlandırma Öğrencinin performansı her jüri üyesi tarafından aşağıdaki tabloya göre ayrı ayrı değerlendirilir. 60 ve üzeri not, o jüri üyesinin "geçer" oyu olarak kabul edilir. En az üç jüri üyesinin "geçti" oyu vermesi durumunda öğrenci başarılı sayılır, aksi takdirde öğrenci sınavda başarısız olur.

Oran

Puan [0-100]

%40

Yazılı eser

%20

Sunum ve sunumla ilgili sorular

%40

Seçilen alandaki genel sorular

Ağırlıklı Toplam:

100

Sınavın Uygulanmasına İlişkin Genel Esaslar

  • Yeterlik sınavı komitesi, bu sınava girecek her öğrenci için doktora derecesine sahip 5 kişiden ve seçilen alanda uzman kişilerden oluşan bir jüri oluşturacaktır. Bu jüride öğrencinin danışmanı yer alacaktır. Jüri üyelerinin sınav öncesinde çalışmayı okuması ve sınav sırasında sorulacak soruları hazırlaması önemlidir.
  • Yeterlik Sınavı Komitesi, jüri üyelerinden birini başkan olarak belirler. Başkan, sınav sürecinin yürütülmesinden sorumludur.
  • Öğrencinin hazırladığı yazılı eserin özgün olması gerekmektedir. Önceki çalışmalardan kopyalayıp yapıştırılarak bir araya getirilmemelidir.
  • Jüri üyeleri, öğrencinin sunduğu belgeyi intihal açısından ODTÜ'nün abone olduğu https://www.ithenticate.com/ adresinden kontrol edebilir.
  • Yüksek lisans tezi için hazırlanan çalışma doğrudan sınavında kullanılamaz. Konu aynı kalsa dahi doktora çalışmaları sırasında katkı sağlanması beklenmektedir.
  • Bu sınavda öğrencinin asıl yazarı olarak yazdığı (yayınlanmış veya yayınlanmamış) bir makale kullanılabilir. Ancak aynı makale birden fazla öğrenci tarafından kullanılamaz ve yayımlanmışsa sınava 12 aydan fazla süre kala yayımlanmamalıdır.
  • İlk kez başarısızlık durumunda yeni bir konu seçilebilir veya aynı konunun kullanılması durumunda jürinin ikinci sınav için öğrenciden beklentilerini belirtmesi gerekir.
  • Öğrencinin aynı konudan ikinci kez bu sınava girmesi durumunda, çalışmanın son hali ile birlikte önceki versiyona göre değişiklikleri açıklayan destekleyici bir belgenin öğrenci tarafından jüriye sunulması gerekmektedir.

Yazılı (Temel) Sınav Müfredatı

Ders

Konular

Kaynaklar

Data Structures

Algorithm analysis for data structures

* Mark Allen Weiss, Data Structures and Algorithm Analysis in C++ (3rd ed.), Addison Wesley, 2006

Lists, stacks, queues

Trees

Priority queues

Hashing

Algorithms

Analysis of Algorithms

* Introduction to Algorithms, T. H. Cormen, C. E. Lieserson, R. L. Rivest, C. Stein, Mc Graw-Gill

Sorting, Searching

String Processing

Graph Algorithms

Greedy Approach

Divide and Conquer Algorithms

Dynamic Programming

Exhaustive Search

Complexity Classes, NP-completeness

Discrete Mathematics

Propositional Logic: Logic, Equivalences

* K.H. Rosen, Discrete Mathematics and its Applications, (Sixth Edition) McGraw-Hill, 2007. 
* W.K. Grassmann and J.P. Tremblay, Logic and Discrete Mathematics: A Computer Science Perspective, Prentice Hall, 1996

Predicate Logic: Predicates and Quantifiers, Nested Quantifiers, Methods of Proof

Sets and Functions: Sets, Set Operations, Functions, Growth of Functions, Complexity of Algorithms

Integers: Integers and Division, Integers and Algorithms

Induction and Recursion: Sequences and Summations, Mathematical Induction, Recursive Definitions and Structural Induction, Recursive Algorithms

Counting: Permutations and Combinations, Recurrence Relations, Solving Recurrence Relations, Generating Functions, Inclusion and Exclusion

Relations: Relations and Their Properties, Representing Relations, Closure of Relations, Equivalence Relations, Partial Orderings

Graphs: Int to Graphs, Graph Terminology, Representing Graphs, Connectivity, Euler and Hamiltonian Paths, Shortest Path Problem, Graph Coloring

Trees: Int to Trees, Applications of Trees, Spanning Trees, Min Spanning Trees

Theory of Computation

Finite Automata and Regular Expressions: Alphabets and languages, Finite representations of languages,Deterministic finite automata, Nondeterministic finite automata, Equivalence of DFA and NFA, Finite automata versus regular languages, Pumping lemma and its applications, State minimization

* Elements of the Theory of Computation, H.R.Lewis, C.H.Papadimitriou, (2nd ed.), Prentice-Hall, 1998. 
* Introduction to the Theory of Computation, M.Sipser, Course Technology, 2005.

Push-down Automata and Context Free Grammars: Parse trees and derivations,Pushdown automata, Pushdown automata versus context-free grammars, Closure properties,Pumping theorem and its applications, Deterministic PDAs

Regularity and context-freeness of languages

Turing Machines and unrestricted grammars: Turing machines – definition and examples, Computing with TMs, Recursive and recursively enumerable languages, Extensions of TMs, Nondeterministic TMs, Unrestricted grammars

Church-Turing thesis, universal Turing machines

Halting problem

Programming Languages

Storage structures, control structures, scope and binding

* Programming Language Concepts and Paradigms, D.A. Watt, Prentice-Hall, 1990. 
* Programming Languages: Concepts and Constructs, R. Sethi, Addison Wesley, 1996.

Data and procedural abstraction

Type systems

Lexical and syntactic description of languages

Object-oriented programming languages

Functional programming languages

Logic programming languages

Operating Systems

Operating Systems Structures

* Modern Operating Systems, A.S. Tanenbaum, Prentice-Hall, ISBN 0-13-595752-4, 1992. 
* Operating System Concepts, A. Silberschatz, P.B. Galvin, (4th ed.), Addison-Wesley, ISBN 0-201-50480-4, 1994. 
* Design and Implementation of the 4.3BSD Operating System, S.J. Leffler, M.K. McKusick, M.J. Karels, J.S. Quarterman, Addison-Wesley, ISBN 0-201-06196-1, 1989.

Processes, Threads and Their Management

Process and Processor Scheduling

Process Synchronization

Interprocess Communication

Deadlocks

Memory Management

Storage Management (I/O Processing, File Systems)

Protection and Security

Digital Design and Computer Architecture

Combinational Circuits

* Digital Design, M. Mano, Prentice-Hall, ISBN 0-13-212994-9, 1991. 
* Computer Organization, C. Hamacher, Z.G. Vranesic, S. Zaky, (4th ed.) McGraw-Hill, ISBN 0-07-114323-8, 1996. 
* Computer Organization and Design, D.A. Patterson, J.L. Hennessy, (2nd ed.), Morgan-Kaufmann, ISBN l-55860-491-X, 1998. 
* Computer Systems: A Programmer’s Perspective by Randal E. Bryant and David R. O’Hallaron Prentice Hall, 2003

Combinational Circuit Minimization: Algebraic and Karnaugh-map minimization

Synchronous Sequential Circuits

Registers, Counters

RAM, ROM, PLA, and PAL

Arithmetic Logic Unit, Multiplication and Division, Floating Point operations

Pipelining: Hazards, Forwarding, Branch Prediction

Memory Hierarchy: Interleaving, Cache Memory, Virtual Memory

I/O Systems: Buses, I/O Interfaces, Interrupts, DMA

Sözlü (Alan) Sınav Müfredatı

Ders

Konular

Kaynaklar

Artificial Intelligence

Uninformed and Heuristic Search

* Artificial Intelligence: A Modern Approach, S.Russell, P.Norvig, Prentice Hall, 1995. 
* Logical Foundations of Artificial Intelligence, M.R.Genesereth, N.Nilsson, Morgan Kaufmann, 1988.

Game Playing

Constraint Satisfaction and Propagation

Knowledge and Reasoning

Theorem Proving

Planning

Reasoning with Uncertainty

Machine Learning: Learning from examples (supervised learning, decision trees, Regression and classification, ANN, SVM), Learning probabilistic models (Bayesian learning, Naive Bayes classifiers, EM algorithm), Reinforcement Learning (passive RL, active RL)

Computer Graphics

Rendering Pipeline: Major stages of the rendering pipeline

* Computer Graphics: Principles and Practice, Foley, Van Dam, Feiner, Hughes, (2nd ed.), Addison Wesley, 1995. 
* Computer Graphics, Hearn, Baker,(2nd ed.), Prentice Hall, 1994. 
* Fundamentals of Computer Graphics, Shirley and Marschner, (3rd ed.), AK Peters, 2009. 
* Realistic Ray Tracing, Shirley and Morley, (2nd ed.), AK Peters, 2003.

Geometric Transformations: Homogeneous coordinates, Vectors, points, normals, Translation, scaling, rotation, sheer transformations (2D and 3D)

Raster Algorithms: Line rasterization, Triangle rasterization, Antialiasing

Viewing: Parallel projections, Perspective projections, Clipping, Viewport transformation

Visible Surface Detection: Back-face elimination, Z-buffer algorithm

Phong Shading Model: Ambient Light, Diffuse Reflection, Specular Reflection

Polygonal Surface Shading: Flat shading, Goraud shading, Phong shading

Texturing: Generating of uv coordinates (for both 2D and 3D texture mapping), Mipmapping, Bilinear interpolation, Bump mapping

Volume Rendering: Marching cubes algorithm, Direct volume rendering

Three Dimensional Object Representations: Hermite curve, Natural cubic splines, Bezier curves and surfaces, Geometric continuities, Joining curves and surfaces

Ray tracing: Parametric lines, Parametric and implicit surfaces, Ray-object intersections (triangle, sphere, plane), Basic ray tracing algorithm, Generating simple shadows with ray tracing, Accelleration structres (bounding boxes, oct-tree, kd-tree)

Radiosity: Basic radiosity algorithm, Radiosity equation, Hemicube method for form factor calculations, Jacobi iteration and Gauss Seidel for solving Ax=b

Natural Language Processing

Linguistic knowledge representation and propagation

* Speech and Language Processing, Jurafsky and Martin, Prentice-Hall, 2000. 
* Natural Language Understanding, J.Allen,2.ed,Benjamin-Cummings, 1995. 
* Prolog and Natural Language Analysis, F.C.N. Pereira, S.M. Shieber, CSLI, 1987.

Computational aspects of Morphology

Syntactic representation in NLP (phrase structure, dependency, unification)

Parsing strategies for natural languages (bottom-up,top-down, mixed)

Parsing decisions and improvements (determinism, non-determinism, charts)

Grammar formalisms (dependency grammars, categorical grammars, phrase-structure grammars) and hierarchy for natural languages

Handling non-local dependencies

Compositional semantics: Lambda-calculus and logical form

Basics of data-intensive linguistics (n-grams, language models, classifiers)

Database Systems

Physical data organization

* Database Management Systems, Raghu Ramakrishnan, McGraw-Hill. 
* Principles of Database and Knowledge-base Systems, volume 1, Ullman, Computer Science Press. 
* Database system concepts, Silberschatz & Korth, McGraw-Hill.

Data models

Relational database design theory (normalization)

Relational query languages

Integrity and security

Transaction management

Concurrency control

Recovery techniques

Query optimization

Numerical Computation

Numerical stability of algorithms and conditioning of problems

* Numerical Methods, G.Dahlquist, A.Björck, Prentice-Hall. 
* Matrix Computations, G. Golub, C.F. Van Loan, THe Johns Hopkins University Press.
* Yousef Saad, Iterative Methods for Sparse Linear Systems, SIAM.

Linear systems: Norms, matrix norms, Gaussian elimination, forward and backward substitution, pivoting, Householder’s reflection, Given’s rotations, Gram-Schmidt method, QR, Singular Value Decomposition, Linear Least Squares problems and curve fitting, Relaxation methods (Jacobi, Gauss-Seidel)

Matrix eigenvalue Problems: Power method, inverse iteration, Rayleigh Quotient, and QR iterations, Jacobi method, Arnoldi and Lanczos processes, Krylov subspace methods for solution of linear systems (GMRES, CG, BiCGStab), preconditioning

Finding roots of nonlinear equations: Bisection, Secand, Newton’s methods, fixed point iteration

Interpolation: Lagrange interpolation, Newton’s interpolation and divided differences, Runge’s phenomenon, Splines, Orthogonal polynomials

Numerical integration: Interpolatory quadrature, Composite quadrature rules

Software Engineering

Lifecycles and process models

* Software Engineering: a Practitioners Approach, R.S. Pressman, (4th ed.), McGraw-Hill. 
* Software Engineering, Sommerville, (4th ed.), Addison-Wesley

Software project management

Specification and modeling techniques

Traditional, object oriented and component based approaches

Software metrics

Software quality

Testing and integration methods

Maintenance

Pattern Recognition and Image Analysis

Image Transform: Discrete Fourier transform (FFT excluded), Discrete Haar Wavelet transform

* Digital Image Processing, R. C. Gonzales and R. E. Woods, Prentice-Hall, 3rd edition, 2008.
* Pattern Classification, R.O. Duda, P. E. Hart and D. G. Stork, Wiley-Interscience, 2nd edition, 2000. 
* Computer Vision, L. G. Shapiro and G. C. Stockman, Prentice Hall, 2001.

Image Enhancement Techniques: Point Processing (basic intensity transformations), Histogram processing, Image negation, power law, log transformations, Spatial Filtering, Convolution (smoothing, sharpening)

Image Compression: Redundancy and measuring image information, Huffman coding

Morphological Operations: Erosion, dilation, opening, closing

Image Segmentation: Edge detection (Canny, Hough transform), Thresholding

Image Representation and Description: Chain codes, Polygons, Regional descriptors

Texture: Texel-based Texture Descriptions, Quantitative Texture Measures

Content-based image retrieval: Image Distance Measures (Color, Texture and Shape Similarity Measures), Precision, Recall and F-score Performance Analysis

Motion from 2D images: Image Subtraction

Stereo Vision: Matching: Cross Correlation, Symbolic Matching, The Epipolar and The Ordering Constraints

Bayesian Decision Theory: Gaussian Density Estimation, Classifier Discriminant Functions

Maximum Likelihood Method: Gaussian Density Estimation

Non-parametric techniques: Parzen Window, K-Nearest Neighbor

Unsupervised learning: Mixture Resolving, Unsupervised Bayes Method, Maximum Likelihood Method

Clustering: K-means Clustering, Hierarchical Clustering, Component Analysis

Neurocomputing

Learning and generalization

* Neural Computing: Theory and Practice, P.D. Wasserman. 
* Introduction to the Theory of Neural Computation, J. Hertz, A. Krogh, and R.G. Palmer, Addison-Wesley, 1991. 
* Neural Networks: A Comprehensive Foundation, S. Haykin, Macmillan, 1994.

Multilayer perceptrons and the backpropagation algorithm

Hopfield model

Recurrent networks

Unsupervised learning and self organizing maps

Adaptive resonance theory

Radial basis function networks

Higher order neural networks

Neurodynamics

Parallel Computing

Parallelism and classification of parallel computers: Performance bottlenecks, Classification of parallel computers and applications, Programming models for parallel computers

* Introduction to Parallel Computing, by Grama, Gupta, Kumar, and Karypis, Addison Wesley, 2003. 
* Parallel Programming for Multicore and Cluster Systems, Rauber and Runger, Springer Verlag, 2010. 
* Sourcebook of parallel computing, Jack Dongarra, et.al. Kaufmann, 2002.

Pipelining and vector processing: Instruction pipelining, superscalar execution, and instruction scheduling, Pipelining arithmetic operations, Performance analysis of pipelined operations

Interconnection topologies and implementing various communication operations: Metrics for evaluating performance of interconnection networks, Point to point and collective communication operations and their implementation

Task decomposition and design of parallel algorithms: Principles of parallel algorithm design, Task interaction and dependency graphs, Graph partitioning/clustering, Load balancing

Analysis of parallel algorithms: Speed improvement and efficiency, Amdhal’s law, Gustafson’s law, Weak and strong scalability

Parallelism in various applications (e.g. matrix problems in scientific applications, sorting and searching, etc.)

Distributed Systems

Time Synchronization

* Distributed Systems: Principles and Paradigms, 2nd edition, A.S. Tanenbaum, M. Van Steen, Pearson Higher Education, 2007. 
* Distributed Systems: Concepts and Design 4th edition, J. Dollimore, T. Kindberg, G. Coulouris, Addison-Wesley, 2006. 
* Principles of Concurrent and Distributed Programming, 2nd edition, B. Ben-Ari, Addison-Wesley, 2006.

Coordination

Structuring Distributed Systems

Process Interaction and Group Communication

Distributed File Systems

Concurrency Control

Distributed Shared Memory

Basics of Fault-Tolerance and Real-Time Systems

Programming Languages and Compilers (Advanced)

Typed lambda calculus

* Foundations for Programming Languages, (first six chapters) J.C. Mitchell, MIT Press, 1996. 
* Compilers: Principles, Techniques, and Tools, A.V. Aho, R. Sethi, J.D. Ullman, Addison-Wesley, 1986.

Semantic specification of languages: Operational, denotational and axiomatic approaches

Algebraic specification of data types

Partial correctness proofs with before and after assertions

Lexical and syntactic analysis of languages

Syntax-directed translation, attribute grammars

Abstract machines, intermediate languages

Code generation

Networked Systems

The principles and techniques employed in computer and wireless networks; the seven-layer protocol suite known as ISO model

* Computer Networking: A top down approach, 6th Ed., J.F. Kurose, K.W. Ross, Addison-Wesley, 2012. 
* Computer Networks, 5th Ed., A.S. Tanenbaum, Prentice Hall, 2011. 
* Cryptography and Network Security: Principles and Practice, 5th Ed., W. Stallings, Prentice Hall, 2011.

Data link layer issues (medium access control, reliable data transfer)

Network layer issues (packet- versus circuit-switching, routing algorithms, IP, QoS)

Transport layer issues (error control, flow control, congestion control, end-to-end argument, TCP, UDP)

Network programming (socket interface)

Performance evaluation of computer networks

Security of computer networks (confidentiality, integrity, and authentication)

Wireless networks (Cellular networks, mobility management, WLAN)

Bioinformatics

Sequence analysis, next generation sequencing: Genome annotation, Computational evolutionary biology, Comparative genomics, Genetics of disease, Analysis of mutations in cancer

* Understanding Bioinformatics, M. Zvelebil and J.O. Baum, Garland Science, 2008. 
* Bioinformatics: the machine learning approach, 2nd Ed., Baldi and S. Brunak, MIT press, 2001. 
* Principles of Computational Cell Biology, V. Helms, Wiley-Blackwell, 2008.

Gene and protein expression, gene regulation

Structural bioinformatics: Protein folding problem, prediction of secondary/tertiary structure, Structural alignment, Multiple structural alignment, Protein docking

Functional classification of proteins, human genome annotation

Statistical modeling of biological data

Biological Text Mining

Bioimage Informatics: High-throughput image analysis

Biological networks and computational systems biology