Platforms & Systems to Bridge the Digital & Physical World
CSE291 K00 - Winter 2020
Meets M/W from 10:30 to 11:50 in CSE 4140.
Pat Pannuto is the instructor and their office is CSE 3202 (right in the corner).
Office hours are M/W from 14:00 to 14:50 in CSE 3202.
Other times available by appointment, generally afternoons are preferred.
Researchers, policy makers, citizen scientists, and curious individuals have an innumerable array of questions about the world around them. How does physical proximity affect disease transmission? What changes would have the greatest impact on the carbon footprint of an urban environment? What is the historical air quality like for asthmatics in the neighborhoods where I am shopping for houses? This course is about the design and implementation of platforms and systems capable of capturing the data to answer such questions.
Formally, this is the study of embedded systems and wireless sensor networks. These are computing systems that are deployed widely in the physical world, which creates unique constraints in their physical size, deployment, management, communication, energy availability, and operation. We will begin with a history of impactful deployments, then study each of the pieces in turn, both traditional sensor architectures and more exotic designs such as batteryless systems, backscatter communication, and how to do machine learning with less than 1 MB of memory.
During the last week of the course, we will shift focus a bit from technology development. Often advances in embedded systems can lead to unexpected leaps in capability: modern RF techniques can build camera-like structures that "see-through" walls to capture occupancy, gestures, or even biometrics like respiration and heart rate; my PhD work helped build energy-harvesting, wireless (optical) cameras about a cubic millimeter in size and acoustic recorders small and thin enough to be imperceptibly embedded in thick paper. We will finish the term with thoughts on the ethical implications of recent and future advancements, how policy might encode social norms and expectations, and what technological solutions could enforce these policies.
The intended audience of this course is PhD students or masters students who are interested in pursuing a PhD in the future. This is a research-oriented class. It's designed to bring people up to speed on the history as well as the state of the art in embedded systems and to gain experience with the design, early implementation, and evaluation of a research idea.
Experience equivalent of an undergraduate degree in any of Electrical Engineering, Computer Engineering, Computer Science, Data Science, Information Science, or related areas. This is a vertical slice through the computing stack, and we will touch on topics from programming languages and distributed systems down to circuits and wireless. An enthusiasm and willingness to learn a little about a lot of new things is far more important than any one specific background.
This class is made of three co-equal components: pre-class reviews, in-class participation, and a quarter-long project.
Before each class you must read each paper and then write a short review. This should be more than a simple summary of the paper. Here are some questions to consider while reading and writing your reviews to help guide you:
- What is the problem this paper addresses, and why is it important?
- What is the hypothesis of this paper?
- How was this hypothesis evaluated? What supported it, what refuted it?
- What are the limits of this system (when does it fail)?
- What is this most similar to that you are already familiar with; how does it compare, differ?
- At what point did you decide you liked – or didn't like – the paper, why?
The One Thing
Often in academia, people will refer to papers as pointers to a concept or idea. As an experiment, for each paper we read this quarter, we will try to crowdsource putting into words that one thing for each paper.
At the end of each review, include a short, single sentence or phrase that you think best captures the essence of the paper.
We will use the HotCRP review system – the same tool used by many conferences to review papers. Reviews are due before the start of class. HotCRP will automatically cut off submissions at 10:15. Enrolled students should already have accounts. If you need an account or have other issues, please e-mail me.
We will rotate through class members to lead discussion each session. Leads should be prepared to give an overview of the paper's key ideas and to guide a discussion about the strengths and weaknesses of the paper, how it relates to prior and/or subsequent work, and what the core takeaway(s) of the paper may be.
When not the lead, everyone else is expected to have read the papers and to actively participate in the class discussions.
This class will feature a quarter long project of your own choosing. Project scope should be commensurate with group size – an individual project is acceptable, though advised against. A core goal of the project is to demonstrate mastery of the scientific method: namely to clearly articulate a hypothesis and to design and implement experiments that (in)validate the hypothesis (note: a project with a negative result may still be a highly successful project!). The goal of the project is to learn how to propose a research idea, to then collect preliminary data to probe the viability of that idea, and finally to practice communicating this process in writing.
The project will have three milestones:
- Monday, January 20: One page proposal writeup that includes your hypothesis, motivation, and expected results.
- Monday, February 17: Three to four page draft that includes a literature review ("Related Work"), proposed experiments, and their expected outcomes.
- Friday, March 20: Final five to six page paper that includes outcome of small-scale experiments / prototype / etc. This should resemble an early-to-mature draft of an academic workshop paper.
|Week 1: Introduction, Motivation, Potential, and Pitfalls|
|Jan 8||Ubiquitous Computing||Pannuto||No paper reviews this week, just read and think about these:|
|Week 2: Great Deployments Past|
|Jan 13||Indoors & Outdoors||Pannuto||
For those wanting more...
|Jan 15||Cities and the People in Them||Pannuto||
Sign up for one discussion to lead by submitting a pull request. Conflicts resolved by pull request timestamp (first come, first serve).
For those wanting more...
|Week 3: Building a Platform|
|Jan 20||MLK Day||Project proposals due. Submit via e-mail to email@example.com.|
|Jan 22||Building blocks & Sensor System Architectures||Pannuto||
|Week 4: Joule Rules Everything Around Me|
|Jan 27||Energy Harvesting and Fair Sharing||Xiaofan|
|Jan 29||Whither intermittent computing?|
|Week 5: Communication|
|Feb 3||Project Workshop Day||Pannuto||Bring printed copies of initial drafts to class.|
|Feb 5||Great Ideas in Traditional Communication||Sushmitha||
For those wanting more...
|Week 6: Communication is always the hardest part|
|Feb 10||Wild Ideas in Non-Traditional Communication||Renjie|
|Feb 12||Sharing Spectrum|
|Week 7: Embedded Operating Systems|
|Feb 17||President's Day||Project drafts due. Submit via e-mail to firstname.lastname@example.org.|
|Feb 19||What's an application, an OS, in an embedded context?||Nagesh|
|Week 8: Sensors as Computational Platforms|
|Feb 24||ML at the Very Edge|
|Feb 26||Distributed Computing and Task Planning||Wenshan||
|Week 9: Security|
|Mar 2||Trusting sensors and data||Ke Sun||
|Mar 4||Trusting systems||Eric Weise||
|Week 10: Ethical Considerations & Societal Impact|
Final Exam / Presentations
Instead of a final exam, we will have a "mini-conference" where each project will give a conference-style presentation on their research project.
The class was assigned a final exam timeslot of 8-11am, Friday, March 20th. We'll probably stick with Friday, March 20th as a date, but if it works for everyone's schedules, we can try to find a not-8am time slot for this as a group.