WPI Computer Science Department

Computer Science Department
------------------------------------------

CS 4518, Mobile and Ubiquitous Computing Class, C Term 2018

General Information

Class: Mondays and Thursdays, 2:00 - 3:50, Kaven Hall (KH) 116

Teaching Assistant: Chaitany Nimkar, cnnimkar@WPI.EDU
Student Assistant: Rachel Plante, rplante@WPI.EDU

Instructor: Prof. Emmanuel Agu, FL-139, 508-831-5568, emmanuel@cs.wpi.edu
Office Hours: Mondays 4:00PM - 5:00PM; Others by appointment

Required Texts:

Supplemental Texts:

Course Overview

The goal of this class is to acquaint students with some of the fundamental concepts and state-of-the-art research in the areas of mobile and ubiquitous computing. Focus will be on the computer science issues in mobile computing. This offering will focus on emerging mobile and ubiquitous computing ideas that are implemented on Android smartphones. Topics to be covered include mobile systems issues, human activity and emotion sensing, location sensing, mobile HCI, mobile social networking, mobile health, power saving techniques, energy and mobile performance measurement studies and mobile security.

Grading Policy: The course will consist of assigned Android app programming projects and a final project. There will be also be 5 quizzes (Roughly every Monday).

Points Distribution: Assigned Android Projects 40%, Final project: 35%, Quizzes: 25%

Recommended background: The course will assume knowledge of the following material:

Course Timeline: In the first 4 weeks, I will introduce mobile and ubiquitous course concepts and definitions, and introduce Android programming. In those 4 weeks, 4 projects will be assigned to students. Students will also work in teams to brainstorm on final project ideas which they will present in week 4. In weeks 4-7, students will work on their final projects. The TENTATIVE course timeline is summarized below along with class and quiz dates.

Dates Quiz Days Class Topics Deadlines
1/10 1 Course Introduction, Definitions (Mobile, Ubiquitous Computing, IoT, Android Introduction and Setup)
1/11 2 Android Hello World, Android UI Design, Examples, Interactive and data-driven Android UI
1/15 MARTIN LUTHER KING HOLIDAY: NO CLASSES
1/18 3 Android Component types, process model, app lifecycle, logging errors, Intents and fragments Project 0 due
1/22 Quiz 4 Camera: taking pictures, face recognition, interpretation Project 1 due, Students form groups for Final Project
1/25 5 Playing Sound and Video, Location-Aware computing (determining location, geocoding, Maps & Google places),
1/29 Quiz 6 Introduction to sensors, Android sensor programming, Activity Recognition
2/1 7 Introduction to Machine Learning & Smartphone Sensing Project 2 due
2/5 Quiz 8 Final Project Overview & More Android Ubicomp Components, Mobile sensing for Healthcare Groups submit 1 slide proposed final Project
2/8 9 Physiological Sensing & Quantified Self, Mood & affect sensing and Voice-based Analytics Project 3 due
2/12 Quiz 10 Student propose final projects Final Project Proposal due
2/15 ACADEMIC ADVISING DAY: NO UNDERGRADUATE CLASSES
2/19 11 Human Behavior Sensing (Attention, Boredom, Notifications, Addicted Smartphone usage), Gamification & Energy Efficient Computing
2/22 NO QUIZ!!! 12 Mobile Security, software vulnerabilities, Usage characterization and Wireless Networks [ SMSD Lab: Replaces Quiz 5 ]
2/26 13 Students present final projects
3/1 14 Students present final projects Final Project due, SMSD Lab Due

Programming projects: For the programming projects, students will either run their work on the Android Studio emulator or use an Android phone. Android Studio is installed in the Zoolab in Fuller basement. It is anticipated that most final projects will involve researching and developing an Android application. Students who prefer to do projects using other devices should discuss this with the professor and be prepared to obtain the devices themselves.

Late Assignment Credit: Late programming assignments will be penalized 15 points off per day (per 24 hours). Assignments later than 4 days late will not be accepted.

Cheating (a.k.a., academic dishonesty): , defined as taking credit for work you did not do or knowledge you do not possess, is strictly forbidden. First offenders will receive a zero grade for the assignment or quiz in question and an academic dishonesty report will be filed with the Office of Student Affairs. Repeat offenders will receive an NR for the course and the case will be brought before the campus hearing board (see Student Handbook). Using or submitting code retrieved from online repositories such as gitHub, which was previously submitted by a student in a previous iteration of this class (or CS 528 grad version) is considered cheating

Class Website: The class website is at http://web.cs.wpi.edu/~emmanuel/courses/cs4518/C18/.

Access to papers: Some of papers covered in class will be available from the ACM and IEEE digital libraries, which both allow free access to papers from any WPI on-campus computers (or computers with a WPI IP address).

Assigned Projects

Final Project


Advanced Mobile and Ubiquitous Computing Topics

- Application Areas: Health and Personal Assistants
- Web and Multimedia (Video and images)
- Mobile social networking & crowd sensing
- Location-Aware Computing and Proximity
- Human Activity and Emotion Sensing
- Sensor processing, Context Awareness and Inference
- Input Devices and Mobile HCI
- Mobile/wireless measurement and characterization
- Energy Efficiency
- Systems Issues
- Mobile cloud
- Security and Privacy

Lecture Slides, Code and Paper Downloads

Lecture Slides Code Download Paper(s)
Lecture 1 [ Course Introduction, Definitions (Mobile, Ubiquitous Computing, IoT, etc), Introduction to Android, Android Studio, ]
Lecture 2 [ Android Hello World, UI Design + Examples ]
Lecture 3 [ Android UI Design + Examples, WebView + ANR GeoQuiz app ]
[ HFAD First App (Ch 1) Example ]
[ HFAD Beer Advisor (Ch 2) Example ]
[ ANR GeoQuiz (Ch 1) Example ]
Lecture 4 [ Data-Driven Views, Android Components and Android Activity Lifecycle ]
Lecture 5 [ Rotating Screen, Saving Data, Intents and Fragments ]
Lecture 6 [ Databases, Camera, Face Detection, recognition, interpretation ]
[ ANR CriminalIntent Example (Ch 16) ] [ Visage Face Interpretation Engine ]
Lecture 7 [ Location-Aware Computing, Maps, Playing Audio & Video ]
Lecture 8 [ Sensors, Step Counting & Activity Recognition ]
Lecture 9 [ Other Android Components, Final Project Proposal Information, Smartphone Sensing & Machine Learning ]
[ Activity recognition using cell phone accelerometers ]
[ A Survey of Mobile Phone Sensing ]
[ Mobile Phone Sensing Systems: A Survey ]
Lecture 10 [ Human-Centric Smartphone Sensing Applications : Sleep Duration, AlcoGait, StudentLife, Epidemiolical Change, Boredom, SMSD Modules ]
[ BES Sleep Duration Sensing ]
[ AlcoGait ]
[ StudentLife ]
[ Epidemiological Change ]
[ Detecting Boredom ]
Lecture 11 [ Quantified Self, Smartwatches, Android Wear, Energy Efficiency, Mobile Security]
[ Mobile Malware Survey ]
[ ActivPass Paper ]
[ Sandra Paper ]

Schedule for office hours

Note: All TA and SA office hours will be held in the zoolab unless you receive instructions otherwise.

Monday Tuesday Wednesday Thursday Friday
12:00 - 1:00PM Rachel Rachel
1:00 - 2:00PM Rachel Chai Rachel
2:00 - 3:00PM Class Rachel Chai Class
3:00 - 4:00PM Class Chai Class Chai
4:00 - 5:00PM Chai
5:00 - 6:00PM
6:00 - 7:00PM
7:00 - 8:00PM Rachel
8:00 - 9:00PM Rachel Rachel
9:00 - 10:00PM Rachel


[Feedback] [Search Our Web] [Help & Index]

[Return to the WPI Homepage] [Return to CS Homepage]

mailto:webmaster@cs.wpi.edu