Fall 2018: ECE590 / COMPSCI590 – Edge Computing
Overview: This seminar-format class explores opportunities and challenges associated with edge computing, the diffusion of centralized cloud computing functionality to include resource-constrained systems in physical proximity to the users, such as cloudlets, mobile phones, and smart gateways.
The course surveys recent advances in edge computing and its role in enabling the next generation of the Internet of Things and the smart cities of the future. Students will learn the strengths and the limitations of edge computing systems, and will explore a range of algorithm and system adaptation techniques for developing edge-specific platforms, algorithms, and applications. Students will complete an individual or a team-based research project, theory-oriented or applied.
- Quizzes: 20%
- Research paper presentation: 20%
- Research project: 50%
- Participation in class discussions: 10%
A brief sampling of topics we will discuss:
- Evolution of distributed systems: from mainframes to cloud to edge
- Multi-tier distributed system architectures, in the Internet of Things and in the 5G vision
- Hardware and software edge computing platforms
- Taking machine learning out of datacenters:
- Federated learning
- Reinforcement learning on the edge
- Edge computing aiding advanced interactive applications:
- Edge-supported smart vehicles and drones
- Augmented and virtual reality
- Function allocation and resource management in multi-tier fog computing systems
- Security and privacy in edge computing
Research project information:
A research project in edge computing is an important component of this class; it corresponds to 50% of the overall course grade.
Research projects can be done individually or in groups of two. Project teams need to be established by September 21st; the project proposal outlining the key ideas of the proposed work and the plan of action needs to be submitted by October 1st.
Projects can be theory-oriented or applied. For applied projects, a range of related equipment is available in the instructor’s I^3T Lab, including:
- Raspberry Pis and accessories, including cameras, Sense HAT sensing and display add-on boards, E Ink displays, and Movidius neural compute sticks
- Microsoft Hololens Augmented Reality head-mounted displays
- Personal digital assistants: Amazon Echo Show and Harman Kardon Invoke
Students are particularly encouraged to come up with projects that can improve some specific element of Duke University student, staff, or visitor experience. Bonus points will be given for connecting the project to Duke Blue Devils, Duke Lemur Center, or other specific and unique element of life at Duke.
- Lecture 1: Introduction
- Lecture 2: Origins of edge
- Lecture 3: Edge helping low-end IoT nodes
- Lecture 4: Edge helping higher-capability mobile devices: mobile offloading
- Lecture 5: Edge helping the cloud
- Lecture 6: Edge for augmented reality
- Lecture 7: Data processing on the edge
- Lecture 8: Dispersed learning with edge/fog computing
- Lecture 9: Video analytics on the edge
Topics in edge computing: invited speakers
- Wednesday September 19th: Junjue Wang, CMU. Lecture title: Selected Applications Enabled by the Edge.
- Monday October 22nd: Peizhen Guo, Yale University. Lecture title: FoggyCache: Cross-Device Approximate Computation Reuse.
- Wednesday October 24th: Dr. Joydeep Acharya, Hitachi. Lecture title: Fog Computing for Real Time Condition Monitoring of High Speed Railways.
- Monday October 29th: Megan O’Keefe, Google. Lecture title: Cloud-Native Edge Computing: Opportunities and Challenges.
- Wednesday October 31st: Jim Fletcher, Momenta Partners. Lecture title: IoT: A Rapidly Evolving Landscape.
- Monday November 5th: Ziqiang (Edmond) Feng, CMU. Lecture title: Edge-based Discovery of Training Data for Machine Learning.
- Wednesday November 7th: Dr. Arsalan Mosenia, Princeton University. Lecture title: Bringing Programmability and Connectivity into Isolated Vehicles.
- Monday November 12th: Hossein Mortazavi, University of Toronto. Lecture title: CloudPath: A Multi-Tier Cloud Computing Framework.