Course Syllabus

Welcome (back) to campus!

The UW is returning to instruction on campus in Autumn 2021, a fact that fills us with both excitement and concern.  We are looking forward to having more substantial and natural interactions in the classroom, but we are also sensitive to the unpredictable and unequal effects the ongoing pandemic has on all our lives -- both on-campus as students or instructors and off-campus as care-givers and -receivers, wage earners, and allies.

Thus, although we will encourage synchronous and in-person interaction as part of this course, we will work hard to ensure the course can be successfully completed remotely and asynchronously.  If you are unable to participate synchronously or in-person for class sessions -- at all or in any particular week -- we will respect that constraint and do our best to facilitate your learning.  Reciprocally, we respectfully request your understanding and accommodation if we are unable to offer in-person or synchronous person interactions as planned in any particular week or session.

To help keep each of us safe, we will all respect the following COVID policies: 

  • Don't come to campus if you are sick.  We are teaching this class in a "flipped" format with remote and asynchronous options -- see next section for details.
  • Wear a mask.  You can remove it to take a drink of water; we cannot eat in the classroom.
  • Practice physical distancing.  Our classroom has 80 seats, but there are only ~25 people enrolled.

Class format:  "flipped"

We will provide recorded lectures and notes for you to review asynchronously, then we will meet synchronously for interactive tutorials and group work during the first hour of the scheduled class time followed by office hours for the second hour of class time.  We expect that you will review the materials provided in advance and, when you are able, come to class prepared to ask and answer questions.

Ideally, we will offer and you will join all of the synchronous meetings in-person.  However, we understand that this ideal may not be achievable for everyone at all times, e.g. if you cannot come to campus, don't have access to a stable Internet connection in a quiet workspace, or if you aren't in or near Seattle's time zone, so we will endeavor to record these sessions and host them simultaneously on Zoom.

FAQ

Q:  What should I do if I can't come in person to a class meeting or office hour?

A:  Connect to Zoom -- you will be able to listen to the tutorial and participate in group work with others who joined on Zoom.

Q:  What should I do if Prof Burden can't come in person to a class meeting or office hour?

A:  Attend the class meeting -- in person if possible, otherwise connect to Zoom.


Overview

This course focuses on analysis and design of linear feedback control systems.  It provides foundational tools that will enable you to understand and engineer control systems in a variety of application domains including electrical circuits, embedded systems, robotics, power systems, and neuroengineering.  The class will build on your preparation in signal processing (ECE 235) and linear algebra (MATH 308), providing new analytical and computational tools for system modeling and control.

Learning Outcomes [LO] -- by the end of this course, you will be able to:

  1. represent a linear system in state space and transfer function form;
  2. determine the effects caused by including feedback in a system;
  3. linearize a nonlinear system around an operating point;
  4. determine if a system is stable;
  5. understand a system's sensitivity and its noise and disturbance rejection properties;
  6. apply scientific computing tools to model, design and simulate systems;
  7. determine the performance of a system both analytically and from simulation;
  8. apply root locus, frequency response and full-state feedback methods to design a feedback control system to meet specific performance requirements;
  9. design a full-state observer for a system;
  10. apply an observer and controller to simultaneously estimate and stabilize a system's state.

Course materials

We will provide lecture notes, homework assignments, and other materials using the following Git repository, hosted on Github:  https://github.com/sburden/447.   Note that you do not need to know what Git is or how to use Github -- we will post links to specific files here on Canvas, so you can simply follow the links to download the files.  However, you are welcome to watch or fork the repository.

Textbook references

There is no required textbook for this course, i.e. you do not need to purchase a textbook.

I will draw material from several references about control systems:

Control Systems Engineering (7th edition) by Nise [Nv7] is available for purchase through the UW Bookstore; it includes many worked examples, but unfortunately it is quite expensive.

Feedback Systems (2nd edition) by Astrom and Murray [AMv2] is freely available from the book's wiki, which also includes helpful resources like lecture slides, a list of exercises organized by Chapter, an FAQ, and errata, but it has fewer worked examples.

In addition, I will draw on the following references.  I have endeavored to provide a variety of references with overlapping coverage to accommodate different learning styles; if you find one reference unhelpful, I encourage you to sample another.  I have also tried to find references that are freely available (for UW students, if not the general public).

Prerequisites

Math language and logic:  Calculus (MIT OpenCourseWare) by Strang; Real mathematical analysis by Pugh; Essence of Calculus by 3Blue1Brown

Linear algebra:  Introduction to Applied Linear Algebra by Boyd and Vandenberghe; Linear Algebra by Hefferon; Essence of Linear Algebra by 3Blue1Brown

Signals and Systems:  Systems, Signals, and Transforms by Phillips, Parr, and Riskin; Signals and Systems by Oppenheim, Willsky, and Hamid

Scientific computing:  Dive into Python; NumPy ManualColaboratory Notebook

Advanced topics

Differential equations:  Differential Equations (MIT OpenCourseWare) by Haynes and Miller; Differential Equations by 3Blue1Brown

Dynamical systems theory:  Nonlinear dynamics and chaos by Strogatz

Optimal control and estimation: Optimal Control and Estimation by Stengel


Computational Tools

The analytical techniques we learn in class are useful for reasoning formally about control systems.  However, real systems rarely admit pen-and-paper analysis, hence in practice we rely extensively on results obtained from computational tools.  Therefore this course will emphasize both analytical and computational tools, and highlight the advantages and limitations of each.

The computational toolkit we will use in this course is based on Python (with NumPy, SciPy, iPython, Matplotlib, and the Control System Toolbox); it is free, open-source, cross-platform, and full-featured.  We will release example code, homework assignments, and homework solutions using this toolkit.

If this course will be your first experience with Python, I recommend using the Colaboratory Notebook.

For the more adventurous, you are welcome to set up your own local Python / Jupyter notebook environment -- I have collected some helpful references on the Python page.

To familiarize yourself with programming and scientific computing in Python, I created the following notebooks and videos:


Homework

See the Assignments page linked from the course homepage for homework assignments and deadlines.

Workload:  there will be a weekly homework assignment submitted in electronic form as a .pdf on Canvas (watch this video for help converting a Colaboratory notebook to pdf). There will be approximately eight (8) homework assignments and they will account for 50% of the grade.

In addition to completing assigned homework, I encourage you to work through examples and exercises from the provided references, and to implement abstract concepts in concrete numerical examples.

Collaboration guidelines

You are welcome (and encouraged) to:

  • work together, synchronously and asynchronously, in study groups;
  • use analytical and numerical computational tools -- specify the tool(s) in sourcecode and/or text;
  • reuse example sourcecode and other materials provided in this course;
  • consult textbooks, websites, and other publicly-available materials -- include full citation(s) with the URL and/or DOI.

Submission guidelines

You will submit your homework writeup by uploading a .pdf on the Canvas Assignment.  We will only grade legible .pdf files -- we will not grade content in any other file format (.doc, .zip, .ipynb, .m, ...).

You are welcome (and we encourage you) to typeset your homework assignments rather than write them by hand.  While you could do this with LaTeX, you may find it easier to use the Colaboratory Notebook, since it is adept at embedding equations (via LaTeX syntax), matrix computations, and control system calculations.  To facilitate, we will provide Colaboratory Notebooks for homework assignments, exams, and solutions.

Printing instructions:  this video explains some of nuances involved in producing a legible pdf from the Colaboratory Notebook.

If you write your solutions by hand, you must create a legible scan; if you have any doubts about the fidelity of your scans, send a sample to the instruction team in advance of the homework deadline.

http://www.howtogeek.com/209951/the-best-ways-to-scan-a-document-using-your-phone-or-tablet/


Exams

There will be two open-book / open-note take-home exams -- one each in Week 5 and Week 10.  We will not make use of the university-scheduled time in final exam week.

Each exam will be worth 25% of the grade.

You are welcome (and encouraged) to:

  • use analytical and numerical computational tools -- specify the tool(s) in sourcecode and/or text;
  • reuse example sourcecode and other materials provided in this course;
  • consult textbooks, websites, and other publicly-available materials -- include full citation(s) with the URL and/or DOI.

You are not permitted to discuss the exam problems or share any part of your solutions with anyone other than the Prof or TA.

  • By submitting your exam solution on Canvas, you are affirming your understanding of and adherence to these restrictions.
  • We will be available to answer questions during Zoom time in each exam week.
  • We will also answer questions posted to the Canvas Discussion board until 5p Fri in each exam week.

I will release solutions at the same time as the exam grades, and accept requests for regrades on specific exam problems for 1 week.  Note that it is possible that a regrade request will result in a decrease in your exam score, so please be sure you understand the solution before making a request.


Due dates and extensions

Due date:  homework assignments and take-home exams are due by 5p Friday.  Submitting by this deadline will provide +2 bonus points (equal to one subproblem).

Extensions:  everyone automatically receives an extension on homeworks and exams to midnight (11:59p) the Sunday immediately following the due date.    Due to the fact that we will release solutions on Monday morning, no further extensions will be considered -- please plan accordingly.

Rationale: we want to incentivize you to start (or at least review) assignments / exams and to make use of scheduled class meeting times -- thus, the nominal due date is 5p Fri.  However, we don't want to penalize you if other aspects of your professional or personal life take priority in any given week -- thus, the actual due date is 11:59p Sun.


Grade

As described above, the final grade will be determined from homework (50%) and two exams (25% each).


Canvas

We will use Canvas (i.e. this site) extensively for interaction outside the classroom.  

The instruction team will provide homeworks, example code, etc. through Canvas; you will submit homeworks electronically through Canvas as described above.

If you have a question -- about a concept, HW problem, etc. -- it's likely someone else in the class does as well.  Please post questions to Canvas Discussions (rather than emailing or messaging the instruction team directly) so that (a) others get to propose answers and (b) others get to see the definitive answer (if any).  If you send questions via email to the instruction team, we will direct you to ask it on Discussions so others can benefit from our answer.

If you are unfamiliar with Canvas, here are some links to help you get started:

https://www.tacoma.uw.edu/canvas/getting-started

https://www.tacoma.uw.edu/canvas/how-do-i

https://community.canvaslms.com/community/answers/guides/


Diversity, Equity, and Inclusion

I strongly believe that all must be provided with equality of opportunity to pursue and advance in engineering careers and that no individual should experience marginalization or non-inclusiveness of their contributions or talents because of visible or invisible differences. For example, among others, these differences include age, belief system, disability status, ethnicity, gender, gender identity, gender expression, national origin, race, sexual orientation, socio-economic status, and any other visible or non-visible differences. I am committed to increasing the participation, inclusion, and empowerment of historically under-represented segments of society in our research fields, including pre-college, university, and industry environments as well as professional organizations. In particular, I currently serve as the ECE Department's first Associate Chair for Diversity, Equity, and Inclusion, in which role I am working with folks throughout our Department, College, and University to implement an impactful and sustainable strategy.


Disability and access accommodations

Your experience in this class is important to me. If you have already established accommodations with Disability Resources for Students (DRS), please communicate your approved accommodations to me at your earliest convenience so we can discuss your needs in this course.

If you have not yet established services through DRS, but have a temporary health condition or permanent disability that requires accommodations (conditions include but not limited to; mental health, attention-related, learning, vision, hearing, physical or health impacts), you are welcome to contact DRS at 206-543-8924 or uwdrs@uw.edu or disability.uw.edu.  DRS offers resources and coordinates reasonable accommodations for students with disabilities and/or temporary health conditions.  Reasonable accommodations are established through an interactive process between you, your instructor(s) and DRS.  It is the policy and practice of the University of Washington to create inclusive and accessible learning environments consistent with federal and state law.


Religious accommodations

Effective July 28 2019, Washington State Senate Bill 5166 required that UW develop a policy for accommodation of student absences or significant hardship due to reasons of faith or conscience, or for organized religious activities.  I am proud that my UW ECE colleague Rania Hussein contributed to drafting and promoting this legislation.

The UW’s policy, including more information about how to request an accommodation, is available at Faculty Syllabus Guidelines and Resources. Accommodations must be requested within the first two weeks of this course using the Religious Accommodations Request form available at:  https://registrar.washington.edu/students/religious-accommodations-request/


Safety

Call SafeCampus at 206-685-7233 anytime – no matter where you work or study – to anonymously discuss safety and well-being concerns for yourself or others.  SafeCampus’s team of caring professionals will provide individualized support, while discussing short- and long-term solutions and connecting you with additional resources when requested.


Academic misconduct

Engineering is a profession demanding a high level of personal honesty, integrity and responsibility. Therefore, it is essential that engineering students, in fulfillment of their academic requirements and in preparation to enter the engineering profession, shall adhere to the University of Washington’s Student Code of Conduct.

Any student in this course suspected of academic misconduct (e.g., cheating, plagiarism, or falsification) will be reported to the College of Engineering Dean’s Office and the University’s Office of Community Standards and Student conduct. (See CoE website for more detailed explanation of the academic misconduct adjudication process). Any student found to have committed academic misconduct will receive a 0-grade on impacted academic work (e.g., assignments, project, or exams).

Course Summary:

Date Details Due