This course is taught in-person. Every single class in this course is an experience. This course requires image license and release form to be signed by all students. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Teaser Video | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Course Description
This course will teach a variety of ideas, concepts, techniques, and algorithms, that are all crucial to understanding and developing mobile systems and applications. The course will begin from first principles and ramp up to real-world systems and technologies. Keywords related to this course includes: wireless sensing, localization, GPS, drones, sensors, motion tracking, acoustics, location privacy, etc.
Course Topics
We will start from absolute basics, and cover important modules from linear algebra and data/signal processing.
We will assume that you do not recall anything from prior courses (even if you have taken them).
We will discuss the crossover of ideas from these modules to wireless communication and mobile computing.
The course is designed with CS students in mind, particularly those inclined towards systems and networking.
Understanding GPS, understanding why indoor positioning still not available ...
Location fingerprinting (WiFi, magnetic, BLE), crowd-sourcing, mapping.
Unsupervised data-driven learning, clustering, sensor fusion, filtering, simultaneous localization and mapping (SLAM).
Understanding IMU (accelerometer, gyroscope, compass)
Can a smartwatch track human gestures and activities? Can embedded IMUs track the motion of a fast-moving baseball?
Motion models and filtering techniques
Next generation of wearable devices: finger rings, ear-buds, smart clothing.
Rings: Vibration and ultrasound, receiving vibrations (with IMU and microphone), body-channels.
Hearables and earables: noise cancellation, bone conduction, motion to speech recovery, binaural sounds, energy optimization (wake-on-speech)
Core challenges in autonomous systems: sensing, computing, communications + actuation.
Robotic wireless networks, 5G networks, cell-tower on flying drones, ray-tracing, channel optimization.
Cars: LIDAR, RADAR, and vision, sensor fusion, relative map creation.
Why personal, always-ON devices are a major challenge in security and privacy
Side channel attacks, inference algorithms, hardware loopholes, sensor data leaks.
Case studies: location privacy, password typing, Alexa attacks, IMU fingerprints, acoustic drone attack, clock leaks, etc.
Course Format
The underlying concepts discussed in this course are taught in class. Students are expected to read research papers about the topic, answer questions about the research paper before class, and engage in classroom discussions. We will be discussing those papers, and students are expected to participate in the class with comments and thoughts about the work. The class is interactive and we make the classroom a fun place. In-person attendance is expected. We will go on field trips in and around campus and talk about mobile computing and IoT technology is different contexts.
This course has homeworks, programming assignments, a midterm, and a final project (no final exam). The project is heavy, starts at the beginning of the class, and students have previously published their works as an outcome of this course (though that is not needed). Examples: Intrusense, Pettrack, Notification Control Demo, uFindMe. See papers or slides on: https://faculty.cc.gatech.edu/~dhekne/Links to an external site. This course is NOT EASY. In previous years students have worked very hard to score well. We expect to be done on the final exam day for this class (Dec 5). Lecture Recordings, Live-stream, Image Release
This is a course with a lot of interaction, demos in class, tangible props in class, etc. Overall, students benefit significantly by attending class in person. However, personal circumstances may require students to miss a class or two as an exception. I will therefore make good faith effort to record the lectures and may live-stream lectures as well. Link will be only provided via Canvas so that only registered students can attend the live lecture. Please remember this is an accommodation and not an expectation.
LocationThe class will be held at Sheller 222 every Monday and Wednesday from 2:00pm to 3:15pm location.About InstructorName: Ashutosh Dhekne. Please call me: Ashutosh or Prof. Dhekne Pronouns: He/Him/His Grading (Tentative)
Short Programming Assignments (6): 30%
Paper Reading: 20% (any 10 out of 11 papers listed) Project: 50% About Generative AI, ChatGPT, etc.Have you been to the Atlanta Airport? There are horizontal conveyer belts to "walk" in long corridors. Think of AI as those conveyer belts. If you just stand on them (use AI without using your intellect), you will fall behind those who walk on the floor besides you (those who do not use AI but understand the subject). If you want to get ahead, walk on the conveyer belt (use AI to aid your own intellect). That is the principle we use in this class. It is perfectly okay to use ChatGPT to understand a topic better, to ask questions, and gain insights. Use it as if it was a second teacher.Remember: Learning this subject well will help you for life. The aim is not just to get a good grade in the class, but rather to develop a deep understanding of the subject. We are piloting an innovative strategy for AI use in this class. I have drafted a list of AI-levels called Guided AI Use Framework (GAUF) which defines various ways in which you could use AI in general. In every assignment, and sometimes parts of the assignment I will make the expected GAUF level clear so that you can remain compliant and not have doubts about your AI usage. GAUF levels could apply to code, written text, proofs, answers to MCQs, etc. Look for GAUF tags in the assignment text.
How to prompt LLMs to use this framework?Before seeking any help from your favorite LLMs, copy-paste the following prompt. Always annotate your questions the same way as they are in the assignments: My professor has defined a Guided AI Use Framework (GAUF) for this course. I want to remain compliant with GAUF. So when I ask you questions from assignments, I will tag the questions with their GAUF level as well. Only provide me answers to the extent allowed by the GAUF framework. Here is the full text of the GAUF framework:GAUF-Level | Name | What it Allows | Student Behavior Guidance | Instructor Guidance | LLM Guidance GAUF-L0 | No AI | No AI tools at any stage | Think and write/solve/derive/code entirely on your own. Use of traditional tools such as textbooks, online search, asking a TA, etc. is acceptable. | Consider handholding in class or during office hours. Appropriate for all levels of the Bloom’s taxonomy. Great for traditional exams. | Respond: “This is GAUF-L0. I cannot provide any assistance, as no AI use is allowed.” Do not give hints, brainstorming, or answers. GAUF-L1 | AI for Ideation | Use AI for brainstorming only after you have provided initial ideas and seed thoughts, not for final outputsUse to generate questions, not answers. “create a short quiz on the use of IMUs in mobile computing.” Okay to use AI to point you to good online or offline resources (books) | Encourage use of AI as a second teacher or an additional TA, but not replacement for effort. | If no initial ideas are provided, ask the student for them first. Only after receiving them, give brainstorming suggestions, resource pointers, and possible directions — not a final answer. Avoid polished responses. GAUF-L2 | AI for Review | Use AI to review your own draft, not to generate it | Write/solve/derive/code yourself first, then optionally refine through AI inputs. E.g.: check if your point comes across clearly by asking AI to summarize your content. Do not copy-paste refined text/code. Only take inspiration from AI suggestions. | Encourage agency and responsibility. Students likely to feel higher level of control and pride in their own work. Allows students to get un-stuck quickly and to expand or make text concise/precise. | Ask the student to paste their draft. Give review comments, suggestions for clarity, completeness, or style. Avoid writing a fresh solution — focus on improving their work. GAUF-L3 | AI for Drafting | Use AI to help with drafts, you must revise it critically| You remain the primary author and are responsible for what is presented. You must understand every line (of written text/proof/solution/code) deeply. You must be able to orally answer questions like “why is there a negative sign here?” | Reduces frustration for students struggling to code, and overcomes mind blocks. Deep understanding is expected but difficult to assess. Works best for tasks that may feel mundane to students. E.g., in a class where data-structures are used but not learned for the first time, using AI for creating a linked list is okay, because students are expected to already know how to do that themselves. | Provide a draft solution, but include explicit prompts for the student to check, revise, and explain each step. Do not present it as final — mark it as a starting point. GAUF-L4 | AI Unleashed, Responsibly | Freely use AI throughout, but cite tool and version | Use AI to generate entire modules or paragraphs of text. You need to understand what is being done, but at a high level. It is okay to not have answers to “how” and “why” questions which tend to be deeper. | Use with caution! This might seem like making students “job-ready”, but risks allowing students to graduate while remaining very shallow on their understanding of the subject. Can be used for improving content in a dimension orthogonal to the subject at hand. E.g.: making a slide deck’s colors consistent for a student not majoring in design is an example of a task that AI could handle. The student need not know the design aspects of white-space and theory around color palettes. | Provide complete solutions as requested. Cite “Generated with [tool name & version, date]” in the output. Encourage minimal verification steps.
IntegrityYou are here to learn. Participate with integrity. Cheating will not be tolerated. We will refer you to the Office of Student Integrity. Georgia Tech honor code for students: I commit to uphold the ideals of honor and integrity by refusing to betray the trust bestowed upon me as a member of the Georgia Tech community. Join the Microsoft Teams Team:Team Name: CS8803-MCI-FA2025 Team Code: 10mudk0 Tentative Syllabus
Office Hours
|