Systems and Computer Engineering (SYSC) Courses
Simulation and Modeling
Simulation as a problem solving tool. Random variable generation, general discrete simulation procedure: event table and statistical gathering. Analyses of simulation data: point and interval estimation. Confidence intervals. Overview of modeling, simulation and problem solving using SIMSCRIPT, MODSIM and other languages.
Discrete Stochastic Models
Models for software, computer systems, and communications networks, with discrete states, instantaneous transitions and stochastic behaviour. Communicating finite state machines and Petri Nets. Review of concepts of probability, and of Markov Chains with discrete and continuous parameters. Basic queuing theory. Numerical methods for Markov Models.
Optimization for Engineering Applications
Introduction to algorithms and computer methods for optimizing complex engineering systems. Includes linear programming, networks, nonlinear programming, integer and mixed-integer programming, genetic algorithms and search methods, and dynamic programming. Emphasizes practical algorithms and computer methods for engineering applications.
Optimization Theory and Methods
Advanced theory, algorithms and computer methods for optimi zation. Interior point methods for linear optimization, advanced methods for nonlinear and mixed-integer optimization. Search methods. Applications in engineering.
Design of Real-Time and Distributed Systems
Characteristics of real-time and distributed systems. Modern midware systems, such as CORBA, DCE, RMI for building distributed applications: advantages and disadvantages. Analyzing designs for robustness, modularity, extensibility, portability and performance. Implementation issues. Major course project.
Prerequisite(s): SYSC 3303 and SYSC 5708 (ELG 6178) or similar experience.
Expert Systems
Survey of some landmark expert systems; types of architecture and knowledge representation; interferencing techniques; approximate reasoning; truth maintenance; explanation facilities; knowledge acquisition. A project to implement a small expert system will be assigned.
Prerequisite(s): COMP 4007 or COMP 5001 (CSI 5113) or permission of the Department.
Design of High Performance Software
Designing software to demanding performance specifications. Design analysis using models of computation, workload, and performance. Principles to govern design improvement for sequential, concurrent and parallel execution, based on resource architecture and quantitative analysis.
Also offered at the undergraduate level, with different requirements, as SYSC 4102, for which additional credit is precluded.
Performance Measurement and Modeling of Distributed Applications
Performance measurements, metrics and models of midware based systems and applications. Benchmarks, workload characterization, and methods for capacity planning and system sizing. Performance monitoring infrastructures for operating systems and applications. Introduction to the design and analysis of experiments and the interpretation of measurements.
Software Agents
Agent-based programming; elements of Distributed Artificial Intelligence; beliefs, desires and intentions; component-based technology; languages for agent implementations; interface agents; information sharing and coordination; KIF; collaboration; communication; ontologies; KQML; autonomy; adaptability; security issues; mobility; standards; agent design issues and frameworks, applications in telecommunications.
Methodologies For Discrete-Event Modeling And Simulation
Methodological aspects of simulation. Modeling discrete events systems. Modeling formalisms: FSA, FSM, Petri Nets, DEVS, others. Verification and validation. Cellular models: Cellular Automata, Cell-DEVS. Continous and hybrid models. Parallel and Distributed simulation (PADS) techniques. PADS middleware: HLA, Parallel-DEVS, Time-Warp.
Software Quality Engineering and Management
All aspects of software quality engineering. Software testing, at all stages of the software development and maintenance life cycle. Software reviews and inspections. Use of software measurement and quantitative modeling for the purpose of software quality control and improvement.
Prerequisite(s): an undergraduate course in software engineering such as SYSC 4800 or SEG 3300, or equivalent, and basic statistics.
Topics in Information Systems
Recent and advanced topics in the field of Information Systems and its related areas.
Teletraffic Engineering
Congestion phenomena in telephone systems, and related telecommunications networks and systems, with an emphasis on the problems, notation, terminology, and typical switching systems and networks of the operating telephone companies. Analytical queuing models and applications to these systems.
Algebraic Coding Theory
Review of Algebra, Finite Fields, Linear Block Codes and their Properties, Hamming Codes, Cyclic Codes, Hadamard Matrices and Hadamard Codes, Golay Codes, Reed-Muller Codes, BCH and Reed-Solomon Codes, Decoding Algorithms, Coding Bounds.
Computer Communication
Computer network types, introductory queuing theory and performance analysis. OSI layering and BISDN layering modifications. Data link layer. Local area networks and random access (CSMA- CD, switched ethernet, token ring, wireless LAN). Public Networks. IP networks, addressing, routing. Transport layer, flow control. Introduction to ISDN.
Prerequisite(s): Undergraduate preparation in probability theory equivalent to STAT 3502.
Applications in Biomedical Image Processing
Image processing methods applied to biomedical images. Overview of medical imaging modalities. Image enhancement, segmentation, registration and fusion. Image quality metrics. Image formats. Application examples.
Resource Management on Distributed Systems
Principles and techniques for resource management on distributed systems including clouds, grids and data analytics platforms; management of computing and storage resources; service level agreements; performance and energy aware techniques for scheduling, allocation, dynamic resource provisioning; cyber-physical systems and BigData; resource management for BigData analytics.
Distributed Systems Engineering
Techniques for representing distributed systems: graphical and textual models. Processes, threads, synchronization and inter-process communication techniques, RPC. Middleware: client-server (CORBA), grids, Web services. Resource management: processor allocation, load sharing, Grid scheduling, real-time issues. Protocol: OSI model, application and presentation layers.
Advanced Topics in Biomedical Engineering
Topics vary from year to year.
Prerequisite(s): permission of the Department.
Biomedical Instrumentation
Instrumentation designed to measure physiological variables related to the function of the heart, lungs, kidney, nervous and musculo-skeletal system; emergency, critical care, surgery and anaesthesia equipment.
Precludes additional credit for BIOM 5100 (BMG 5103).
Prerequisite(s): permission of the instructor.
Interactive Networked Systems and Telemedicine
Telemanipulator; human motoring and sensory capabilities; typical interface devices; mathematical model of haptic interfaces; haptic rendering; stability and transparency; remote control schemes; time delay compensation; networking and realtime protocols, history and challenges of telemedicine; telemedicine applications: telesurgery, telemonitoring, telediagnosis and telehomecare.
Medical Imaging Modalities
Mathematical models of image formation based on the image modality and tissue properties. Linear models of image degradation and reconstruction. Inverse problems and regularization for image reconstruction. Image formation in radiology, computed tomography, magnetic resonance imaging, nuclear medicine, ultrasound, positron emission tomography.
Mobile Computing Systems
Systems to build mobile applications. Covers data link layer to application layer. Emphasis on existing wireless infrastructure and IETF protocols. Focuses on view of mobile application developer; communication systems, middleware and application frameworks, defacto standards proposed/developed by industry consortia.
Prerequisite(s): EACJ 5607 (ELG 5374) or SYSC 5201 (ELG 6121) or permission of the Department.
Biological Signals
Modeling of neuromuscular biological signals, including subthreshold phenomena, active behaviour of cell membranes, and innervation processes. Measurement of biological signals, including electrode effects. Time domain, frequency domain, and adaptive filtering techniques for noise reduction.
Wavelets and Multiresolution Signal Analysis
Multirate signal processing: sampling rate conversion, polyphase representation. Bases, filter banks: series expansion of discrete-time signals, series expansion of continuous-time signals, multiresolution concept and analysis, construction of wavelet, wavelet series. Complexity of multirate discrete-time processing, filter banks, and wavelet series computation.
Adaptive and Learning Systems
System identification. Least squares and recursive identification techniques. Asymptotic and theoretical properties. Model structure selection. Prediction and estimation. Model reference adaptive control and self-tuning regulators. Nonlinear adaptive systems. Stability. Neural networks and neuro-control. Applications to robotics, control and pattern recognition.
Advanced Dynamics With Applications to Robotics
Lagrange equations and Hamilton's principle. Dynamics of lumped parameter and continuous systems. Natural modes and natural frequencies. Forced vibrations. Stability and bifurcation. Kinematics and dynamics of rigid bodies. Gyroscopic effects. Forward and inverse kinematics of robot manipulators. Denavit-Hartenberg notation. Derivation of manipulator dynamics.
Network Access Techniques
A range of access technologies with emphasis on broadband access. Physical channels and the state-of-the-art of coding, modulation, multiplexing strategies to overcome physical impairments. including high-speed transmission over twisted pair, wireless, fibre and co-axial media.
Multimedia Compression, Scalability, and Adaptation
This course covers media compression, in-depth issues of scalability in the compression domain (including audio, images, video, 2D and 3D graphics), and adaptation towards various contexts; as well is covering various popular media encoding standards (including JPEG and MPEG).
Pattern Classification and Experiment Design
Introduction to a variety of supervised and unsupervised pattern classification techniques with emphasis on correct application. Statistically rigorous experimental design and reporting of performance results. Case studies will be drawn from various fields including biomedical informatics.
Also listed as BIOM 5405.
Prerequisite(s): undergraduate introductory probability and statistics.
Network Routing Technologies
The course covers routing technologies for high-speed networks. The course addresses in-depth issues and technologies in traffic engineering, MPLS (Multiprotocol Label Switching) system components and architecture, constraint-based routing, quality of service, protection and restoration, virtual private networks, cross layer interworking, and special topics.
Planning and Design of Computer Networks
Planning process of computer networks; needs and technical requirements; modeling of different network planning problems; exact and approximate algorithms; topological planning and expansion problems; equipment (switch, router) location problem; approximate and optimal routing algorithms; presentation of various case studies.
Cross Layer Design for Wireless Networks
Quality of service measures at different layers. Parameter adaptation, tradeoffs, and optimization at physical, data-link, network, transport, and application layers. Examples of cross-layer design in cellular, ad hoc, sensor, local area, green, and cognitive radio networks.
Interactive Media and Digital Art
Interactive digital technologies as new media for art and entertainment. Topics include essential features of the digital media, interactivity, computer games and gamification, interactive stories, serious games, virtual worlds and social networks, and digital art.
Designing Secure Networking and Computer Systems
Network security with coverage of computer security in support of networking concepts. Covers various security issues in data networks at different protocol layers. Routing security, worm attacks, and botnets. Security of new mobile networks and emerging networked paradigms such as social networks and cloud computing.
Advanced Linear Systems
Modeling and state space realization. Review of signals and systems. Solution to the matrix DE. Discrete time systems and the Z transform. Canonical representations and transformations. Controllability, observability and controller and observer design. LQR design and the Kalman filter. Numerous examples and applications.
Stochastic Processes
Basic concepts of randomness, as applied to communications, signal processing, and queuing systems; probability theory, random variables, stochastic processes; random signals in linear systems; introduction to decision and estimation; Markov chains and elements of queuing theory.
Principles of Digital Communication
Elements of communication theory and information theory applied to digital communications systems. Characterization of noise and channel models. Optium Receiver theory. Modulation and coding for reliable transmission: MPSK, MQAM, M-ary orthogonal modulation. Channel coding, trellis coded modulation. Spread spectrum and CDMA communications.
Prerequisite(s): SYSC 5503 (ELG 5503) or ELG 5119 (EACJ 5109) or equivalent (may be taken concurrently).
Information Theory
Measure of information: entropy, relative entrophy, mutual information, asymptotic equipartition property, entropy rates for stochastic processes; data compression: Huffman code, arithmetic coding; channel capacity: random coding bound, reliability function, Blahut-Arimoto algorithm, Gaussian channels, coloured Gaussian noise and 'water-filling'; rate distortion theory; network information theory.
Prerequisite(s): SYSC 5503 (ELG 6153) or EACJ 5109 (ELG 5119) or equivalent.
Digital Systems Architecture
New architectural concepts are introduced. Discussion of programmable architectures (micro-controllers, DSPs, GP) and FPGAs. Memory interfacing. Scalable, superscalar, RISC, CISC, and VLIW concepts. Parallel structures: SIMD, MISD and MIMD. Fault tolerant systems and DSP architectures. Examples of current systems are used for discussions.
Adaptive Signal Processing
Theory and techniques of adaptive filtering, including Wiener filters, gradient and LMS methods; adaptive transversal and lattice filters; recursive and fast recursive least squares; convergence and tracking performance; implementation. Applications, such as adaptive prediction, channel equalization, echo cancellation, source coding, antenna beamforming, spectral estimation.
Prerequisite(s): SYSC 5503 (ELG 5503)or ELG 5119 (EACJ 5109) or equivalent; SYSC 5602 (ELG 6162) or ELG 5376 (EACJ 5507) or equivalent.
Neural Signal Processing
Multidimensional function approximation. The least squares adaptive algorithm and the generalized dela rule. Multi-layered perceptrons and the back-propagation algorithm. Approximation of non-linear functions. Radial basis functions. Self-organizing maps. Applications of neural signal processing to control, communications and pattern recognition.
Prerequisite(s): SYSC 5503 (ELG 6153) or equivalent. May be taken concurrently with SYSC 5503 (ELG 5503).
Digital Signal Processing
Review of discrete time signals and systems, A/D and D/A conversions, representation in time, frequency, and Z domain, DFT/FFT transforms, FIR/IIR filter design, quantization effects. Correlation functions. Cepstrum analysis. Multi-rate signal processing. Power spectrum estimation. Introduction to joint time-frequency analysis. DSP architecture: implementation approaches. Applications.
Digital Signal Processing: Microprocessors, Software and Applications
Characteristics of DSP algorithms and architectural features of current DSP chips: TMS320, DSP-56xxx, AD-21xxx and SHARC. DSP multiprocessors and fault tolerant systems. Algorithm/software/hardware architecture interaction, program activity analysis, development cycle, and design tools. Case studies: LPC, codecs, FFT, echo cancellation, Viterbi decoding.
Prerequisite(s): SYSC 5602 (ELG 6162) or ELG 5376 (EACJ 5507) or equivalent.
Advanced Topics in Digital Signal Processing
Recent and advanced topics in the field of digital signal processing and its related areas.
Advanced Digital Communication
Techniques and performance of digital signalling and equalization over linear bandlimited channels with additive Gaussian noise. Fading multipath channels: diversity concepts, modeling and error probability performance evaluation. Synchronization in digital communications. Spread spectrum in digital transmission over multipath fading channels.
Prerequisite(s): SYSC 5504 (ELG 6154) or equivalent.
Introduction to Mobile Communications
Mobile radio channel characterization: signal strength prediction techniques and statistical coverage; fading; delay spread; interference models and outage probabilities. Digital modulation and transmission system performance. Signal processing techniques: diversity and beamforming, adaptive equalization, coding. Applications to TDMA and CDMA cellular systems.
Source Coding and Data Compression
Discrete and continuous sources. Discrete sources: Huffman coding & run length encoding. Continuous sources: waveform construction coding; PCM, DPMC, delta modulation; speech compression by parameter extraction; predictive encoding; image coding by transformation and block quantization. Fourier and Walsh transform coding. Applications to speech, television, facsimile.
Wireless Communications Systems
Fundamentals of antenna systems and radio propagation, wireless channel characterization, link budget, spectrum, cellular and personal wireless communication systems, channel reuse, system capacity, mobility and location management, channel resource allocation, radio access network (RAN), multiple access principles, security and authentication, satellite networks, wireless LANs.
Digital Television
Television standards: NTSC, PAL, SECAM, and HDTV. Sampling and quantization of television signals: rec 601-1. Digital video compression: inter and intra-frame methods, spatial and transform/wavelet coding; H.261 and MPEG standards. Video conferencing systems and other digital video processing applications.
Spread Spectrum Systems
Types of spread spectrum systems, FH, DS-SS,TH-SS using impulse-radio. Hybrid DS/FH-SS. Pseudo-noise generators: statistical properties of M sequences, Galois field connections, Gold codes, OVSF codes. Code tracking loops, initial synchronization of receiver spreading code. Performance in interference environments and fading channels. CDMA systems. SS applications.
Operating System Methods for Real-Time Applications
Principles and methods for operating system design with application to real-time, embedded systems. Concurrent programming: mechanisms and languages; design approaches and issues; run-time support (kernel). Methods for hard real-time applications. Methods for distributed systems. Programming assignments in a suitable programming language.
Sensor Fusion for Autonomous Systems
Sensor fusion for autonomous navigation systems. Topics include reference frames, maps representation, state estimation, error modelling, localization and mapping, sensors for autonomous navigation, sensor fusion algorithms. The course is for students with background in signals/systems, linear-algebra, and probability. Programming in Matlab or Python is essential.
Integrated Database and Cloud Systems
Database definitions, applications, architectures. Conceptual design based on entity-relationship, object-oriented models. Relational data model: relational algebra and calculus, normal forms, data definition and manipulation languages. Database management systems: transaction management, recovery and concurrency control. Current trends: object-oriented, knowledge-based, multimedia, distributed databases.
Elements of Computer Systems
Concepts in basic computer architecture, assembly languages, high level languages including object orientation, compilers and operating system concepts (including concurrency mechanisms such as processes and threads and computer communication). Designed for graduate students without extensive undergraduate preparation in computer system engineering (or equivalent experience).
Analytical Performance Models of Computer Systems
Analytical modeling techniques for performance analysis of computing systems. Theoretical techniques covered include single and multiple class queuing network models, together with a treatment of computational techniques, approximations, and limitations. Applications include scheduling, memory management, peripheral devices, databases, multiprocessing, and distributed computing.
Model-Driven Development of Real-Time and Distributed Software
Advanced development of real-time and distributed systems by model-driven development that shifts the focus from coding to modeling. Different types of models. Generating code by model transformations. Design patterns for distributed/concurrent systems with examples from communication applications. Design issues for reusable software.
Advanced Topics in Software Engineering
Recent and advanced topics in the field of software engineering and related areas. Primary references are recent publications in the field.
Network Computing
Design and Java implementation of distributed applications that use telecommunication networks as their computing platform. Basics of networking; Java networking facilities. Introduction to open distributed processing; CORBA, JavalDL, JavaRMI, CGI/HTTP, DCOM, Componentware; Enterprise JavaBeans, ActiveX. Agents: Java code mobility facilities. Security issues; Java security model.
Advanced Topics in Computer Communications
Recent and advanced topics in computer-communication networks intended as a preparation for research. Students are expected to contribute to seminars or present lectures on selected topics.
Introduction to Information and System Science
An introduction to the process of applying computers in problem solving. Emphasis on the design and analysis of efficient computer algorithms for large, complex problems. Applications in a number of areas are presented: data manipulation, databases, computer networks, queuing systems, optimization.
Logic Programming
Review of relational databases, first order predicate calculus, semantics of first order models, deductive querying. Proof theory, unification and resolution strategies. Introduction to Prolog, and/or parallelism and Concurrent Prolog. Applications in knowledge representation and rule-based expert systems.
Advanced Topics in Communications Systems
Recent and advanced topics in communications systems.
Security Engineering
Fundamentals of Security Engineering and its activities, including security evaluation, threat modelling, risk assessment, formal methods for security, and security assurance. Examination and discussion of approaches and challenges for engineering secure and trustworthy systems in a variety of application areas.
Object Oriented Design of Real-Time and Distributed Systems
Advanced course in software design dealing with design issues at a high level of abstraction. Design models: use case maps for high-level behaviour description; UML for traditional object-oriented concerns. Design patterns. Forward, reverse, and re-engineering. Substantial course project on applications chosen by students.
Prerequisite(s): permission of the Department.
Advanced Topics in Computer Systems
Recent and advanced topics in computer systems. The course will generally focus on one or more of the following areas: specification, design, implementation, and modeling/analysis. Students may be expected to contribute to lectures or seminars on selected topics.
Communications Network Management
Network management issues. WANs and LANs. The Internet and ISO models of network management. Network management protocols SNMP, CMIP, CMOT, etc. Events, Managed Objects and MIBs. Fault management techniques. Current diagnostic theory and its limitations. AI and Machine learning approaches. Monitoring and fault management tools.
The Internet of Things
Main concepts of the Internet of Things (IoT) ranging from the physical devices and sensor networks to the applications and standards.
Systems Engineering Project
Students pursuing the non-thesis M.Eng. program conduct an engineering study, analysis, and/or design project under the supervision of a faculty member.
Research Methods for Engineers
Topics required to perform engineering research including literature surveys, identifying issues, objectives, and methodology. Technical writing, documenting and presenting engineering ideas and a review of statistics, simulation, optimization and data analysis.
Systems Engineering Project II
Students pursuing the non-thesis M.Eng. program conduct an engineering study, analysis, and/or design project under the supervision of a faculty member.
Prerequisite(s): permission of the Department.
Directed Studies
M.Sc. Thesis in Information and Systems Science
M.A.Sc. Thesis
Ph.D. Thesis
Note: Not all courses listed are offered in a given year. For an up-to-date statement of course offerings for the current session and to determine the term of offering, consult the class schedule at central.carleton.ca.
Summer session: some of the courses listed in this Calendar are offered during the summer. Hours and scheduling for summer session courses will differ significantly from those reported in the fall/winter Calendar. To determine the scheduling and hours for summer session classes, consult the class schedule at central.carleton.ca