Agop Koulakezian

Ph.D. Candidate, M.A.Sc. (University of Toronto)

 
Home Research Teaching Courses Work

 

PhD Degree, University of Toronto

Winter 2012

CIV332 Transport II - Performance (audited)
An introduction to the performance characteristics of urban transport systems, concepts and methods used in the analysis of this performance, and basic principles of traffic engineering. Topics include measures of transport system performance, the definition, measurement and analysis of traffic flow and speed and facility capacity, traffic control, safety analysis, and environmental and energy impacts of transport operations. Emphasis is placed on the ability to describe, measure and analyze transport facility performance and to understand how these concepts are applied to the operational design of safe, efficient transport facilities.

Winter 2012

CIV359 Intelligent Transportation Systems (audited)
This course focuses on modern techniques to optimize the performance of a transportation system with emphasis on traffic networks in congested urban areas. The course introduces the broad components of Intelligent Transportation Systems then moves into more in-depth analysis of advanced traffic management and information systems as a core component of ITS. The course covers both basic fundamentals as well as advanced techniques. Topics include history of ITS, ITS user services and subsystems, ITS interoperability and system architecture, enabling technologies for ITS, introduction to telecommunication technologies for ITS, introduction to control theory for transportation systems, traffic flow modeling, static and dynamic transportation network analysis, incident detection, freeway control, and surface street network control. Some advanced topics such as the use of artificial intelligence in ITS will also be introduced.

Fall 2011

ECE1505 Convex Optmization (audited)
This course provides a comprehensive coverage of the theoretical foundation and numerical algorithms for convex optimization with engineering applications. Topics include: convex sets and convex functions; convex optimization problems; least-square problems; optimal control problems; Lagrangian duality theory. Karush-Kuhn-Tucker (KKT) theorem; Slater’s condition; generalized inequalities; minimiax optimization and saddle point; introduction to linear programming, quadratic programming, semidefinite programming and geometric programming; numerical algorithms: descent methods, Newton’s method, interior-point method; convex relaxation; applications to communications and signal processing.

Winter 2011

ECE568 Computer Security
As computers permeate our society, the security of such computing systems is becoming of paramount importance. This course covers principles of computer systems security. To build secure systems, one must understand how attackers operate. This course starts by teaching students how to identify security vulnerabilities and how they can be exploited. Then techniques to create secure systems and defend against such attacks will be discussed. Industry standards for conducting security audits to establish levels of security will be introduced. The course will include an introduction to basic cryptographic techniques as well as hardware used to accelerate cryptographic operations in ATMs and webservers.

Winter 2011

ECE1548 Advanced Network Architectures
The objective of this course is to present the key trends in the evolution of network architectures and the services and applications they support. Part I. Existing Architectures: Internet; LTE 4G architecture; Cloud computing; Apple and Google application platforms. Future Architectures: The Internet is broken; Future Internet proposals; Experimental networks and testbeds. Part II. Network Science Design Principles: Introduction to graph theory and optimization; Flow and capacity assignment; Topology design; Robustness and adaptation; Networked markets; Pricing strategies and market power. Part III. Designing Future Networks: Virtual networks; Green networks; Datacenters and computing clouds; Smart grids.

Winter 2011

ECE1541 Communication Networks I
This course teaches the fundamentals of network performance and analysis. The topics are: traffic modeling for voice, video and data, self-similarity and long range dependence in the internet, queueing systems, large deviations and buffer management, multiple access communications, scheduling and processor sharing, routing and dynamic programming, vehicular networks.

Fall 2010

ECE1762 Algorithms and Data Structures
This is a fundamental course for all majors in computer engineering and electronics. Initially, it will review background in combinatorics and basic data structures. Next, we will cover in detail advanced algorithmic design techniques and data structures, including: quicksort (randomized, deterministic), selecting in linear time, red-black trees, hash tables and hash functions, lower bounds, amortized analysis and splay trees, dynamic programming, greedy methods, graph algorithms, spanning trees, shortest paths, network flow, NP completeness and approximation algorithms.

Fall 2010

ECE1500 Stochastic Processes
This is a fundamental graduate course on Stochastic Processes.

Master's Degree, University of Toronto

Winter 2009

ECE1771 Quality of Service
This course aims to present a collection of fundamental design principles and guidelines in modern distributed systems and real-world large-scale networks. In the process, we review a small collection of important research results, not only in the recent literature but also in the literature spanning the past two decades, and see how they reflect fundamental design principles that we have discussed. Our focus is on more recent research literature, in the areas that have been studied extensively: multimedia networking, peer- to-peer networks, as well as multi-hop wireless networks. We start with an examination of our design objectives, including Quality of Service. We then introduce a number of fundamental design principles that may lead to a high-quality design. Subsequently, we take a leisure walk through more specific areas of research, spanning peer- to-peer networks, wireless mesh networks, secure protocols, so-called "killer" applications, as well as recent advances in network coding. Throughout the course, we revisit the design principles often, and see how they affect the successes (or failures) of research ideas.

Winter 2009

ECE 1770 Trends in Middleware Systems - Event Processing
A “middleware system” (a.k.a. computing infrastructure) constitutes a set of services that aim at facilitating the development of distributed applications in heterogeneous environments. The primary objectives of middleware are to foster application portability, distributed application component interoperability, and facilitate software component integration. At least conceptually, the ‘middleware layer” comprises a layer below the application and above the operating system and network substrate. Common middleware platforms include CORBA, DCOM, Java RMI, J2EE, MQSeries, MSMQ, and Web Services. The course is taught in two flavours alternating over the years. One instance of the course looks at the broader picture of middleware and discusses current industry trends and the other instantiation looks at research trends. These trends are manifest in algorithms, protocols, and systems found in application domains such as selective information dissemination, sensor networks, and peer-to-peer computing. These trends also cover emerging paradigms for designing middleware platforms, including component technologies, aspect orientation, and reflection. It is the objective of this course to discuss research papers about these matters. This course targets research-oriented graduate students who would like to learn more about middleware systems research.

Fall 2008

CSC2203 Packet Switch and Network Architectures
This is an MSc/PhD level course on high-performance packet switching computer networks. The course introduces the theory and practice of designing packet switches, such as Internet routers, Ethernet switches, and ATM switches. It consists of two parts which will be presented in an interleaved fashion. The first part will develop basic tools from queueing theory, stochastic analysis, and algorithms. The second part of the course will focus on packet switch architecutres: the evolution of switches and routers, and practical issues in this area.

Fall 2008

ECE 1639 Analysis and Control of Stochastic Systems I
This is the first course of a two-term sequence on stochastic systems designed to cover some of the basic results on estimation, identification, stochastic control and adaptive control. Topics include: stochastic processes and their descriptions, analysis of linear systems with random inputs; prediction and filtering theory: prediction for ARMAX systems, the Kalman filter and the Riccati equation; stochastic control methods based on dynamic programming; the LQG problem and the separation theorem; minimum variance control.

Fall 2008

CSC2206 System Modeling and Analysis
The emphasis of the course is on models for systems with uncertainty. We study the properties of various models and discuss how they can be applied to analyze system performance. Concepts covered include Poisson, renewal, and Markov processes. Case studies involve computer networks, computer systems, and examples from machine learning.

Bachelor’s Degree, American University of Beirut

In addition to the Bachelor’s degree, I completed a Minor in Philosophy. The following are the main Engineering courses I took.

Fall 2007

EECE640 Wireless Communications
A course on wireless channel models; performance of digital modulation schemes in wireless channels; diversity techniques; channel coding and interleaving in fading channels; adaptive equalization in wireless channels; multiple access techniques; fundamentals of cellular communications; current wireless communication systems.

Fall 2007

EECE646 Advanced Digital and Data Communications
A course that addresses digital communication principles and techniques aimed at achieving improved reliability. The course examines information measures; such as entropy and mutual information for discrete and waveform channels, source coding, channel capacity and coding theorem, linear block and cyclic codes, hard and soft decision decoding, spread spectrum modulation.

Fall 2007

EECE451L Internetworking Laboratory
A laboratory course that covers the technologies and protocols of the Internet. The experiments cover the Internet Protocol, Address Resolution Protocol, Internet Control Message Protocol,Transmission Control Protocol, the Domain Name System, routing protocols (RIP, OSPF, BGP), network address translation, dynamic host configuration, network management protocols, and IP multicast.

Spring 2007

EECE460 Control Systems
A course that covers mathematical modeling (transfer functions, state models) of linear continuous and discrete time invariant single input/single output dynamical systems; performance specifications;analysis and design of closed loop analog and digital (computer based) control systems.

Spring 2007

EECE433 Database Systems
A course that covers the nature and purposes of database systems and an introduction to data modeling: entity relationship model, relational model with relational algebra, relational calculus and SQL, integrity constraints, file organization and index files, and normalization.

Spring 2007

EECE450 Computer Networks
A course that outlines data communications; wide area networks; circuit and packet switching; routing; congestion control; local area networks; communications architecture and protocols; inter-networking.

Fall 2006

EECE480 Engineering Electromagnetics
This course applies the electromagnetic model consisting of Maxwell’s equations to the study of static electric fields in vacuum and dielectrics, conductors, capacitance, the study of magnetic fields in magnetic and non-magnetic media, and inductance. The concepts of electrostatic and magnetic potentials, energy and forces are introduced. The second part of the course emphasizes the study of time-varying fields, plane wave propagation in unbounded media, propagation in lossless media, and wave reflection and transmission at normal incidence. The basic bridge between electric circuits and electromagnetics is done through the study of transmission lines.

Fall 2006

EECE421 Computer Architecture
A course on the principles, techniques, and trade-offs used in designing modern processor architectures. Topics include: benchmarking and performance evaluation, long-latency instruction pipelining, hardware and software techniques for exploiting instruction-level parallelism (out-of-order, speculative, and predicated instruction execution; multithreading; loop unrolling, software pipelining, and trace scheduling), high performance memory systems, and multiprocessor systems and programming.

Fall 2006

EECE311L Electronics Laboratory
A laboratory course that focuses on amplifier characteristics: BJT and FET amplifiers; low-frequency and high-frequency response; bipolar and CMOS op-amps; output stages; active filters; wavegenerators.

Fall 2006

EECE311 Electronics II
A course on BJT amplifiers; FET amplifiers; differential amplifiers; frequency response of amplifiers; feedback; A/D and D/A converters; output stages; operational amplifiers; filters, signal generators; SPICE simulations.

Fall 2006

EECE442 Communication Systems
A course that introduces students to the transmission and reception of analog signals; performance of analog communication systems in the presence of noise; analog to digital conversion and pulse coded modulation; transmission and reception of digital signals; performance of digital communication systems in the presence of noise and inter-symbol interference; equalization.

Spring 2006

EECE440 Signals and Systems
A course on signals and systems; linear time-invariant systems; review of Fourier series representation of periodic signals; Fourier transform and its applications; discrete-time Fourier transform; time and frequency characterization of signals and systems; sampling; introduction to communication systems; review of the Laplace transform and the Z-Transform. memory system; input/output interfacing techniques; system buses.

Spring 2006

EECE 420L Digital Systems Laboratory
A laboratory course with experiments in computer organization and interfacing techniques; digital hardware design using CAD tools and FPGAs; program-controlled and interrupt-driven I/O; memory organization; simple peripheral devices and controllers; bus interfaces; microcontroller-based designs.

Spring 2006

EECE321 Microprocessor Systems
A course that covers the organization of modern computer systems. In addition to learning how to program computers at the assembly level, students learn how to design the main components of a von Neumann computer system, including its instruction set architecture, datapath, control unit, memory system, input/output interfaces, and system buses. To consolidate the material presented in class, students work on assembly-language programming and datapath design assignments, and a major computer interfacing project

Fall 2005

EECE320 Digital System Design
A course that covers number systems and codes, switching algebra; combinational circuit analysis, synthesis, and practices; minimization methods, sequential logic design principles, latches and flip-flops, clocked synchronous state machines, designing state machines using state tables and state diagrams, and an introduction to the VHDL hardware description language.

Fall 2005

EECE310L Electric Circuits Laboratory
A laboratory course that covers passive electronic components; laboratory instruments; voltage-divider circuits; sources and Thevenin’s theorem; the oscilloscope; RC lead-lag networks; series resonance; the transformer; op-amps circuits; single-phase rectifier circuits; LEDs; Zener diode regulator; diode clamping and clipping; BJT and MOSFET characteristics.

Fall 2005

EECE310 Electronics I
A course on semiconductors, PN junctions; diodes and diode circuits; MOS transistor and applications; bipolar junction transistor and applications; basic amplifier stages; frequency response; basic switching circuits. Circuit simulation using SPICE.

Summer 2005

EECE330 Data Structures and Algorithms
A course that covers fundamental algorithms and data structures that are used in software applications today. Particular emphasis is given to algorithms for sorting, searching, and indexing. Data structures such as linked lists, binary trees, heaps, B-Trees, and graphs are covered along with their associated algorithms. The course also covers basic algorithmic analysis techniques and seeks to promote student programming skills.

Spring 2005

EECE210 Electric Circuits
A course on fundamentals of electric circuits; basic elements and laws; techniques of circuit analysis; ideal operational amplifiers;inductance,capacitance,and mutual inductance; transient circuit response; steady state AC circuits; transformers; three phase power; application of Laplace transform and Fourier expansion in circuit analysis.

Fall 2004

EECE230 Computers and Programming
A course that seeks to impart a sound understanding of computer systems and the basic principles of programming and their application to the solution of engineering problems using a high level programming language. This course includes an introduction to hardware and software and internal representation of information. This course covers the basic data types, control structures, functions, arrays, and classes. Weekly laboratory assignments are an integral part of this course.

                                                                                
 
Copyright © 2013 by Agop Koulakezian
Last Updated: May 2013