COMP 303- COMPUTER ARCHITECTURE
Credits:3
Prerequisites: ELEC 204 or CoI
Hardware organization of computers. Computer components and their functions. Instruction sets, instruction formats and addressing modes. Pipelining and pipeline hazards. Instruction level parallelism. Assembly and machine language. Data and control paths. Computer arithmetic. Floating point representation. Memory hierarchy, cache organization and virtual memory. Parallel architectures.
COMP 306- DATABASE MGMT SYSTEMS
Credits:3
Prerequisites: COMP 202 or CoI
Introduction to database management systems, file structure, organization and processing, sequential files, direct files, sort/merge,
indexed and hash files, relational data model, logical database design, entity-relationship data model, data description and query languages.
COMP 317- EMBEDDED SYSTEMS
Credits:3
Prerequisites: ELEC 204 or CoI
Microcomputer fundamentals including architecture and operation of a typical microprocessor; bus organization; instruction set; addressing modes; analysis of clocks and timing; interrupt handling; memory (RAM and ROM); DMA, serial and parallel input/output; assembly language programming.
COMP 319A- MOBILE DEVICE PROGRAMMING-ANDR
Credits:3
Prerequisites:COMP 202 or COMP 132 or CoI
This course covers programming environments and languages over mobile devices. Mobile device architectures and environments, MIDP Application Model, User Interface Libraries, High Level User Interface Components, Low Level User Interface Libraries, MIDP Persistance Libraries. Mobile device operating system environments. Operating Systems such as Symbian, Android, Mobile Windows.
COMP 319B- MOBILE DEVICE PROGRAMMING-IOS
Credits:3
Prerequisites:COMP 202 or COMP 132 or CoI
This course covers programming environments and languages over mobile devices. Mobile device architectures and environments, MIDP Application Model, User Interface Libraries, High Level User Interface Components, Low Level User Interface Libraries, MIDP Persistance Libraries. Mobile device operating system environments. Operating Systems such as iPhone OS.
COMP 341- INTRO ARTIF. INTELLIGENCE
Credits:3
Prerequisites:ENGR 200 or ENGR 201 or MATH 201 or MATH 211 or MATH 202
Introduction to artificial intelligence concepts; agent based thinking; uninformed and informed search; constraint satisfaction; knowledge representation; logic; introduction to machine learning and its relation to artificial intelligence; representing uncertainty; markov decision processes; examples from vision, robotics, language and games.
COMP 403- CYBER FORENSICS
Credits:3
Prerequisites:
Introductory cyber forensics and digital forensics definitions, evidence collection methodologies, data recovery tools, software and hardware tools employed for forensic analysis, evidence reporting procedures and techniques.
COMP 404- DIGIT SPEECH & AUDIO PROCES
Credits:3
Prerequisites:ELEC 201 or CoI
Sound and human speech systems, phonetics and phonology, speech signal representations, role of pitch and formants, pitch-scale and time-scale modifications, basics of speech coding and VoIP systems, fundamentals of pattern and speech recognition, search algorithms for speech recognition.
COMP 405- APPLIED PENETRATION TESTING
Credits:3
Prerequisites:
Introductory penetration testing definitions, white hat attacking methodologies, network and software scanning and inventory tools, exploit tools, social engineering techniques, applied penetration testing software.
COMP 407- SECURE SOFTWARE CODING AND TESTING
Credits:3
Prerequisites:
Secure coding principles, software testing methodologies, techniques and tools for secure software coding, operating system and database support for secure software, reverse engineering, techniques for hiding code and
data.
COMP 408- COMP VISION & PATT. RECOGN.
Credits:3
Prerequisites:ELEC 201 or CoI
Study of computational models of visual perception and their implementation in computer systems. Topics include: image formation; edge, corner and boundary extraction, segmentation, matching, pattern recognition and classification techniques; 3-D Vision: projection geometry, camera calibration, shape from stereo/silhouette/shading, model-based 3D object recognition; color texture, radiometry and BDRF; motion analysis.
COMP 409- BLOCKCHAIN AND CRYPTO CURRENCIES
Credits:3
Prerequisites:
Blockchain, distributed consensus, distributed databases, flooding and broadcasting, crypto currencies, security of crypto currencies, blockchain applications, alternative blockchain and crypto currency proposals, smart contracts.
COMP 410- COMPUTER GRAPHICS
Credits:3
Prerequisites:COMP 202 or CoI
Theory and practice of 3D computer graphics. Topics covered include graphics systems and models; geometric representations and transformations; graphics programming; input and interaction; viewing and projections; compositing and blending; illumination and color models; shading; texture mapping; animation; rendering and implementation; hierarchical and object-oriented modeling; scene graphs; 3D reconstruction and modeling.
COMP 415- DISTRIBUTED COMP. SYSTEMS
Credits:3
Prerequisites:COMP 304 or CoI
Principles and concepts of distributed systems, middleware, peer-to-peer systems and algorithms, design and implementation issues, virtualization, communication and coordination in distributed systems, logical clocks, causality, distributed mutual exclusion, election algorithms, consistency and replication, consistent global states, fault tolerance, distributed deadlocks, recovery, agreement protocols, distributed transactions, cloud computing.
COMP 416- COMPUTER NETWORKS
Credits:3
Prerequisites:COMP 132 or CoI
Principles of data communications and computer networks; ISO/OSI reference model with emphasis on data link, network and transport layers; TCP/IP protocol suite; asynchronous and synchronous transmission; data link control; multiplexing; wide area networks; routing; congestion control; local area networks; communications architecture and transport protocols; distributed applications.
COMP 423- COMPUTER VISION FOR AUTONOMOUS DRIVING
Credits:3
Prerequisites:
Main problems, datasets, evaluation metrics, and approaches in computer vision for autonomous driving, depth / motion estimation, localization, mapping, free-space estimation, object detection / tracking, semantic / instance segmentation, and end-to-end learning of driving.
COMP 428- WIRELESS NETWORKS
Credits:3
Prerequisites:
Wireless network applications, wireless channel and communication fundamentals, medium access control protocol, routing protocol, topology control, time synchronization, data-centric networking, wireless communication standards.
COMP 429- PARALLEL PROGRAMMING
Credits:3
Prerequisites:COMP 132
Fundamental concepts of parallelism. Overview of parallel architectures, multicores, heterogeneous systems, shared memory and distributed memory systems. Parallel programming models and languages. Multithreaded, message passing, data driven, task parallel and data parallel programming. Design of parallel programs, decomposition, granularity, locality, communication, load balancing, and asynchrony. Performance modeling of parallel programs, sources of parallel overheads.
COMP 430- DATA PRIVACY AND SECURITY
Credits:3
Prerequisites:COMP 202
Threats to data privacy and security; methods for privacy-preserving data collection, analysis, and sharing; data anonymization; differential privacy; security and privacy in machine learning; adversarial machine learning; real- world applications and case studies.
COMP 434- COMPUTER & NETWORK SECURITY
Credits:3
Prerequisites:
Overview of Computer Security Techniques, Conventional Encryption, Public-Key Cryptography, Key Management, Message Authentication, Hash Functions and Algorithms, Digital Signatures, Authentication Protocols, Access Control Mechanisms, Network Security Practice, TCP/IP Security, Web Security, SSL (Secure Socket Layer), Denial-of-Service Attacks, Intrusion Detection, Viruses.
COMP 437- INTELL USER INTERFACES
Credits:3
Prerequisites:COMP 125 or COMP 131 or CoI
Applications of artificial intelligence in user interfaces. Design, implementation, and evaluation of user interfaces that use machine learning, computer vision and pattern recognition technologies. Supporting tools for classification, regression, multi-modal information fusion. Gaze-tracking, gesture recognition, object detection, tracking, haptic devices, speech-based and pen-based interfaces.
COMP 441- DEEP LEARNING
Credits:3
Prerequisites:
Basic linear models for classification and regression; stochastic gradient descent (backpropagation) learning; multi-layer perceptrons, convolutional neural networks, and recurrent neural networks; recent advances in the field; practical examples from machine translation, computer vision; practical experience in programming, training, evaluating and benchmarking deep learning models.
COMP 442- NAT LANG PROCESS
Credits:3
Prerequisites:COMP 341 or CoI
Fundamental concepts and current research in natural language processing. Algorithms for processing linguistic information. Computational properties of human languages. Analysis at the level of morphology, syntax, and semantics. Modern quantitative techniques of using large corpora, statistical models, and machine learning applied to problems of acquisition, disambiguation and parsing. Applications such as machine translation and question answering.
COMP 443- MODERN CRYPTOGRAPHY
Credits:3
Prerequisites:COMP 106 or CoI
Introduction to cryptographic concepts. Symmetric encryption, the public-key breakthrough, one-way functions, hash functions, random numbers, digital signatures, zero-knowledge proofs, modern cryptographic protocols, multi-party computation. Everyday use examples including online commerce, BitTorrent peer-to-peer file sharing, and hacking some old encryption schemes.
COMP 446- ALGORITHM DESIGN ANALYSIS
Credits:3
Prerequisites:COMP 202 or CoI
Advanced topics in data structures, algorithms, and their computational complexity. Asymptotic complexity measures. Graph representations, topological order and algorithms. Forests and trees. Minimum spanning trees. Bipartite matching. Union-find data structure. Heaps. Hashing. Amortized complexity analysis. Randomized algorithms. Introduction to NP-completeness and approximation algorithms. The shortest path methods. Network flow problems.
COMP 447- DEEP UNSUPERVISED LEARNING
Credits:3
Prerequisites:ENGR 200 and MATH 107 or CoI
Fundamental concepts and recent advances in deep unsupervised learning, autoregressive models, normalizing flow models, variational autoencoders, generative adversarial networks, energy-based models, discrete latent variable models, self-supervised learning, pretraining language
COMP 448- MEDICAL IMAGE ANALYSIS
Credits:3
Prerequisites:
Imaging modalities. Applications and challenges. Medical image segmentation. Feature extraction. Medical image classification. Deep learning for medical images. Convolutional neural networks. Fully convolutional networks. Generative adversarial networks. Multiple-instance learning. Case studies.
COMP 492- COMP. ENG. DESIGN II
Credits:3
Prerequisites:
A capstone design project on an industrially relevant problem. Students work on teams in consultation with faculty and industrial members.
ENGR 421- INTRO. TO MACHINE LEARNING
Credits:3
Prerequisites:MATH 107 and MATH 203 and ENGR 200 and (COMP 110 or COP 125 or COMP 131)
A broad introduction to machine learning covering regression, classification, clustering, and dimensionality reduction methods; supervised and unsupervised models; linear and nonlinear models; parametric and nonparametric models; combinations of multiple models; comparisons of multiple models and model selection.
ELEC 201- SIGNALS AND SYSTEMS
Credits:3
Prerequisites:MATH 107 and MATH 106
Introduction to discrete and continuous time signals and systems. Time-domain signal representations, impulse response of linear time-invariant (LTI) systems, and convolution. Frequency domain signal representations, frequency response of LTI systems, and Fourier analysis. Filtering of continuous and discrete time signals. Sampling and discrete time processing of analog signals. Laplace-transform domain analysis of continuous-time LTI systems. Exercises using MATLAB.