CSC401 Advanced Algorithms
Advanced Algorithm Analysis Techniques. Computational Geometry. Maximum Flow. String Matching and other Bioinformatics related algorithms. NP-completeness. Search Techniques. Randomized Algorithms. Heuristic and Approximation Algorithms.
CSC402 Advanced Computer Networks
Overview of basic concepts of computer networks. Principles of application layer protocols. Application layer protocols such as HTTP, FTP, SMTP, DNS, Private networks. Best-effort service. Multimedia applications and QoS requirements. Real-Time Streaming Protocol (RTSP).RTP, RTCP, RSVP. Integrated services. Differentiated services. Scheduling and traffic policing. TCP and UDP, in depth study of TCP congestion control. IPv6. Multicasting. Frame relay protocol and QoS. ATM and current status of ATM networks. Virtual LANs. Wireless networks: Architectures, MAC layer protocols (such as IEEE 802.11, Bluetooth). Routing and transport protocols. Application layer protocols (such as WAP).
CSC403 Advanced Data Management Techniques
Types of data (semi-structured, spatial, scientific, biodata, etc.). Storage and indexing techniques and issues. Query processing techniques. Data analysis and mining techniques.
CSC405 Component-based Computing
Fundamentals: Definition & nature of components, components & interfaces, patterns, frameworks & architectures, benefits of components; Component Models & Platforms: object request broker (CORBA, CCM, OMA & MDA, etc.), Java component technologies (JavaBeans, EJB & J2EE, etc), the .NET framework (common language infrastructure, COM& DCOM, etc.); Component-based application development: component design and assembly, use of objects and object life cycle services, component-oriented design; Component architectures: the roles of an architecture, a tiered component architecture, components & middleware, component frameworks.
CSC406 Computer Architecture
The elements of computer architecture. Arithmetic logic unit. Control unit. Memory and storage Systems. Instruction set processor architecture. Pipelined processors. System interconnections. Parallel architectures.
CSC407 Computer Game Programming
History of computer/video game technology. Game genres and design principles. The social impact of games. Event loops and execution threads. Rendering and animation in 3D. Terrain/background representation. Polygonal models. Texturing. Collision detection. Physically-based modeling. Game AI. Multi-user games and networking.
CSC408 Computer Vision and Image Processing
Image formation and segmentation. Image acquisition. Image representations and organisations. Digital image characterisation. Image enhancement and restoration. Image coding and data compression. Geometry for 3D vision. Pattern recognition using neural networks. Image analysis and understanding. Machine vision applications.
CSC409 Cryptography and Network Security
Introduction: security mechanisms, security services, and ITU-T X.800 security architecture. Shared-key cryptographic algorithms and Kerberos. Public-key cryptographic algorithms and PKI Infrastructure. Security Protocols: PAP, CHAP, RADIUS, SSL/TLS. Security Tunnels and VPN: PPTP, L2F. L2TP and Ipsec. Perimeter Security Design: firewalls, SOCKS. Intrusion detection systems. Case Studies: security in Windows networking, WEP in 802.11 LAN. Internet banking.
CSC410 Digital Libraries
Concepts: Definition of digital library, components, collections. Organisation: Metadata, interoperability, standards. Collection management: development, creation, acquisition, linking, and distributed holdings of digital information resources. Access: Searching, access management. Management issues: Integration with traditional library resources, legal, ethical, social issues. licensing, subscriptions Research projects in digital libraries & Digital Libraries Initiatives.
CSC411 Distributed Computing CSC415 Information Retrieval
Introduction: Components of distributed systems, communication technologies, communication services. Distributed algorithms and protocols: examples of distributed algorithms, clock synchronization, logical and vector clocks, election algorithms, consensus algorithms, proof of correctness, complexity analysis. Distributed operating systems: system models, file services, name services, process synchronization and coordination, case studies. Distributed shared memory: algorithms for implementing DSM, coherence protocols. Distributed resource management: load sharing, load balancing, resource monitoring. Failure recovery and fault tolerance: check-pointing, recovery, fault-tolerant models and protocols. Research issues in distributed systems, real-time protocols, standardization issues, cluster and grid computing.
CSC416 Intelligent Agents
Overview: introduction, definitions, fundamental concepts, applications. Agent theories: commitments, intentions, decision-theoretic agents, Markov decision processes. Agent architectures: simple reactive agents, reactive planners, deliberative agents, layered architectures, cognitive agents, advanced architectures. Multi-agent systems: collaborative agents, agent teams. Agent languages and implementation. KQML, agent communication languages, learning agents, believable agents. Software agents: personal assistants, information access, robotic agents, agent applications.
CSC417 Introductory Bioinformatics
Basic bioinformatics concepts, databases, tools and applications. Introduction: cell biology's central dogma, biological technologies for collecting and storing genomic sequence data. Methods of computational biology. Genomic and proteomic resources: information networks, DNA sequence databases, cDNA libraries of expressed genes, Protein sequence and structure databases. Human Genome Project. Sequence and structure analysis tools: dynamic programming for sequence alignment, pairwise and multiple alignment techniques, Predication of RNA secondary structures, Homology modelling for 3D protein structure. Microarray technology, clustering and classification. Imaging and visualisation technologies.
CSC418 Linear Programming
Linear programming. The simplex algorithm. Duality. Gaussian elimination and matrices. Revised simplex. General LP problems. Sensitivity analysis. Connections with geometry. Case studies in efficient allocation of scarce resources. Scheduling production and inventory & game theory.
CSC419 Machine Learning
Overview: introduction, definition, fundamental concepts, applications. Unsupervised learning: K-means, vector quantization, self-organizing neural networks. Supervised learning: K nearest neighbour, learning vector quantization, decision tree, supervised neural networks. Graphical models: belief networks, Bayesian networks, Hidden Markov models, incremental learning, reinforcement learning, machine learning applications
CSC421 Natural Language Processing
Biological neural systems. Introduction to artificial neural networks. Supervised and unsupervised learning. Merits and limitations of neurocomputing. Perceptron as a linear classifier. Perceptron learning algorithms: ADALINE, MADALINE. Multi-layer perceptron. Generalized delta-rule. Backpropagation learning. Linear associated memory networks. Bidirectional memory. Recurrent networks. Hopfield networks. Stochastic neural networks. Boltzmann machine. Simulated annealing. Kohonen networks. Self-organizing feature maps. Adaptive resonance theory: ART1 architecture. Hybrid networks. Radial basis function networks. Counterpropagation networks. Fuzzy neural networks. Genetic algorithms. Hardware implementation of neural networks. Application of neural networks.
CSC422 Neural Networks CSC423 Parallel Processing
Biological neural systems. Introduction to artificial neural networks. Supervised and unsupervised learning. Merits and limitations of neurocomputing. Perceptron as a linear classifier. Perceptron learning algorithms: ADALINE, MADALINE. Multi-layer perceptron. Generalized delta-rule. Backpropagation learning. Linear associated memory networks. Bidirectional memory. Recurrent networks. Hopfield networks. Stochastic neural networks. Boltzmann machine. Simulated annealing. Kohonen networks. Self-organizing feature maps. Adaptive resonance theory: ART1 architecture. Hybrid networks. Radial basis function networks. Counterpropagation networks. Fuzzy neural networks. Genetic algorithms. Hardware implementation of neural networks. Application of neural networks.
CSC424 Robotics
Introduction to robotics. Forward and inverse kinematics. Motion kinematics. Low-level and High-level trajectory planning. Static force and torque relations. Internal sensory devices: position and velocity sensors. External sensory devices: force, tactile and proximity sensors, machine vision. Robot programming: multi-level approach, programming techniques, world modelling, off-line programming and simulation.
CSC425 Simulation and Modelling
Introduction and basic simulation procedures. Different types of simulation models: Monte Carlo simulation, discrete-event simulation. Continuous system simulation. Mixed continuous/discrete-event simulation. Queuing networks: analytical and simulation modelling of queuing systems. Input and output analysis: random numbers, generating and analysing random numbers. Sample generation. Trace- and execution-driven simulation. Point and interval estimation.
CSC426 Software Testing
Testing context. Risk analysis. Basic object-oriented concepts. Testing analysis and design models. Testing classes. Testing State-based classes. Parallel architecture for component testing. Planning for component testing. Measuring the effectiveness of component testing. System testing. Organizing for testing.