## TEACHING

### ECE272A: Stochastic Processes and Dynamical Systems I:

This graduate-level course provides an introduction to the analysis and synthesis of linear dynamical systems characterized by differential equations and recursions.

Topics: systems with memory, linearity in dynamical systems, time-invariant vs time-varying systems, definition of solutions, variations of constants formula, equilibrium points, stability notions, controllability, observability, stabilizability, detectability, Lyapunov functions, stability analysis, Kalman decompositions, canonical forms, state-feedback control, output-feedback control, observer design, separation principle, optimal control problems, the linear quadratic regulator.

### ECE 109: Engineering Probability and Statistics (Winter 2024)

This undergraduate-level course provides an introduction to probability theory.

Topics: Combinatorics, counting principles, axioms of probability, conditional probability, theorem of total probability, Bayes rules, continuous and discrete random variables, probability mass functions and densities, joint distributions, expected values, characteristic functions, transformation of random variables, moment-generating functions, Markov's and Chebyshev's inequalities, central limit theorem, weak and strong laws of large numbers, convergence in probability, almost sure convergence.

### ECE272A: Stochastic Processes and Dynamical Systems I: (Spring 2023)

This graduate-level course provides an introduction to the theory behind linear dynamical systems characterized by differential equations and recursions.

Topics: definition of solutions, variations of constants formula, equilibrium points, stability notions, controllability, observability, stabilizability, detectability, Lyapunov analysis, Kalman decompositions, canonical forms, state-based feedback control, output-based feedback control, the linear quadratic regulator, the linear quadratic regulator control, and the linear quadratic gaussian control.

This graduate-level course provides an introduction to the analysis of nonlinear, finite-dimensional, dynamical systems.

Topics: existence of solutions of nonlinear ODEs, uniqueness/non-uniqueness of solutions, Lyapunov stability theory, invariance principles, passivity and dissipativity, small-gain theorems, averaging and singular perturbation theory, and nonlinear control design. Different examples and applications in the areas of optimization, feedback control, machine learning, and cyber-physical systems are used to illustrate the main concepts of the class.

### Discrete Mathematics for Computer Engineers: (Fall 2020, Fall 2021)

This undergraduate-level course provides an introduction to the fundamentals of discrete mathematical structures that commonly emerge in engineering and computational systems.

Topics: Propositional logic: motivation, syntax, and semantics. Predicate logic: motivation, syntax, and semantics. Modeling with predicate logic. Satisfiability modulo theories: Z3. Quantifiers. Proof systems and inference rules. Sets and Functions: Naive set theory: basic notions, definitions, and properties. Russell's Paradox. Set algebra. Functions: basic notions. Injective, surjective, and bijective functions. Infinite sets: cardinality and bijection. Countable and uncountable sets. Diagonalization, the Halting Problem, and reductions. From Computability to Complexity: Growth of functions: asymptotics and practical considerations. The computational complexity of algorithms and decision problems. Complexity classes, tractability. Reducibility among problems, completeness. Induction: Weak and strong induction on the natural numbers. Induction and axiomatic theories of arithmetic. Well-orders. Inductive definitions. Recursive algorithms. Program correctness: introduction to Hoare Logic. Inductive invariants. Models of Computation: Formal languages and grammars. Regular expressions. Finite-State Automata. Limitations of finite-state models of computation. Beyond finite-state: machines with stacks and tapes. The Church-Turing thesis. Intro to Number Theory and Cryptography. Prime numbers and the Euclidean algorithm. Linear congruences and Fermat's little theorem. Private and public-key cryptography. The RSA cryptosystem. Intro to Combinatorics.

### Extremum Seeking Methods: (Spring 2021)

This graduate-level course provides an introduction to extremum-seeking methods: feedback-based algorithms for the solution of model-free optimization and decision-making problems with dynamic plants in the loop.

Topics: Different architectures and tools are studied using multi-time scale tools from control theory and algorithmic optimization. Particular attention is given to non-smooth and hybrid algorithms that combine continuous-time and discrete-time dynamics to overcome the fundamental limitations of smooth approaches traditionally studied in the literature.  Different examples and applications in engineering systems are also discussed.