Winter 2021 Thesis Defense Schedule

Final Examination Schedule

PLEASE JOIN US AS THE FOLLOWING CANDIDATES PRESENT THEIR CULMINATING WORK.

Winter 2021

For winter quarter 2021, all Final Examination and Defenses will not be held in person due to public health guidelines. For a link to attend a candidate's online defense, please contact our office at stemgrad@uw.edu.

Friday, March 5

Navjodh Dhillon

Chair: Dr. Dong Si
Candidate: Master of Science in Computer Science & Software Engineering

11:00 A.M.; Online
Project: A Machine Learning-based Portable Traumatic Brain Injury Detection System using Raspberry Pi

Traumatic Brain Injury (TBI) is a common cause of death and disability in the United States (U.S.) and the world. However, existing tools for TBI diagnosis are either subjective or require extensive clinical setup and expertise. The increasing affordability and reduction in the size of relatively high-performance compu-ting systems combined with promising results from TBI related machine learning research make it possible to create compact and portable systems for early detection of TBI. This project focuses on using machine learning techniques to auto-matically classify electroencephalography (EEG) signals to identify whether the signal is captured from a Traumatic Brain Injury (TBI) afflicted subject or a healthy (control) subject. The second area of focus is demonstrating that hardware deployment of a pre-trained model to an embedded system (Raspberry Pi) is feasible and comparing deployment configurations. We discuss the design, implementation, and verification of the deployment system that can digitize the EEG signal using an Analog to Digital Converter (ADC) and perform real-time signal classification to detect the presence of TBI. Machine learning techniques used for training classification models and performing classification include Logistic Regression, Random Forest, k-Nearest Neighbors (k-NN), and Decision Tree. A peak classification accuracy of 94.5% at 60 s epoch size was achieved using k-NN. The accuracy of the Raspberry Pi based deployment system was comparable to that of a high-performance desktop computer, to within 0.7 percentage points. The deployment system developed in this work can potentially be used for other types of EEG classification use cases. Such applications can include multi-class classification such as identification of intended limb movements of a subject, and monitoring a subject’s health by analyzing sleep patterns for post-TBI diagnosis rehabilitation. This work can enable the development of systems suitable for field use without requiring specialized medical equipment for early TBI detection applications and TBI research. Further, this work opens avenues to implement connected, real-time TBI related health and wellness monitoring systems.

Yuna Guo

Chair: Dr. Munehiro Fukuda
Candidate: Master of Science in Computer Science & Software Engineering

1:15 P.M.; Online
Project:  Construction of Agent-navigable Data Structure from Input File 

The multi-agent spatial simulation (MASS) library is an agent-based parallelizing library for analyzing structured datsets over a cluster of computing nodes. The current version of MASS library supports distributed multi-dimensional arrays and graphs. In this capstone project, we aim to develop three distributed data structures in MASS, including Continuous Space, Quad Tree and Binary Tree. First, we designed and implemented these three data structures. Second, we used two geometric applications – Closest Pair of Points and Voronoi Diagram to evaluate the programmability and execution performance of Continuous Space and Quad Tree.  Third, we implemented a searching application – Range Search with Binary Tree. Programmability, execution time, and memory consumption are measured for performance evaluation. In comparison to the original MASS or MASS Graph, the programmability result shows that all the three implementations reduced LOC (line of codes) and the number of classes. The performance evaluation shows that all the three implementations reduce execution time and memory consumption for the applications. The project successfully carried out two achievements: (1)  the Continuous Space and Quad Tree facilitate users applying MASS in geometric problem and (2) the Binary Tree allows users to apply logN search and divide-and-conquer algorithm in their applications.  

Back to top

Andrew Hunziker

Chair: Dr. Yang Peng
Candidate: Master of Science in Computer Science & Software Engineering

3:30 P.M.; Online
Project: MLib: A Web Service for Cataloging Machine Learning Inference Results

Machine learning inference results are often buried deep in the results sections of academic papers or presented in industry whitepapers. The siloed nature of these results makes broad comparisons between machine learning frameworks and models difficult. Several sites exist to catalog machine learning inference results, but no existing site provides a one-stop shop for comparing the accuracy, throughput, and memory footprint of models across multiple frameworks and devices. Additionally, existing machine learning benchmarking sites only support uploading results but not running models in situ. Machine Learning Inference Benchmark (MLib) was conceived to address these shortcomings. MLib is a web service that runs user-submitted models in situ against a common benchmark and builds a database of the results. The results database can be queried by users and sorted by accuracy, throughput, memory footprint, framework, and device. Running models in situ ensures that results are as comparable as possible since each inference occurs in the same execution environment and against the same benchmark. Machine learning practitioners embarking on a new project can use the results on MLib to guide their initial framework and model selection.

Thursday, March 11

Snigdha Singh

Chair: Dr. Michael Stiber
Candidate: Master of Science in Computer Science & Software Engineering

11:00 A.M.; Online
Thesis: Brain Graph Analysis For Integrate-and-Fire Neurons With STDP

Many real-world systems can be represented as networks and studied using graph theory. Brain graphs are widely used to analyze brain connectomes using graph theory. Electrophysiological data, tract-tracing and MRI data has been used to extract functional brain graphs. The goal of my thesis is to study spatiotemporal neural dataset as a brain graph, compare the properties of the connectome with random graph models of similar size, and analyze the effect of connections in the graph. Using a simulator solves the problems related to pre-processing, data acquisition and length of time series which exist in extracting braingraphs using other data collection methods. Synaptic plasticity is an important part in the functioning and growth of a neural network. Spike time dependent plasticity (STDP) has emerged as one of the most widely used plasticity mechanisms due to its physiological realistic induction and evidence of its presence in vivo. We have analyzed the effect of different STDP algorithms and parameters to the connections in the graph. In this thesis, the brain graph generated using leaky integrate and fire model, and STDP is studied and compared.

Friday, March 12

Ardalan Ahanchi

Chair: Dr. Erika Parsons
Candidate: Master of Science in Computer Science & Software Engineering

3:30 P.M.; Online
Project: Oxid OS: A modern educational Kernel in Rust

The kernel is the underlying code that every user program relies on. In modern systems, all the hardware management code is abstracted through the kernel (and the corresponding drivers). It is critical for system’s level software engineers to understand the purpose of the kernel components, their functionality, and implementation fundamentals. The most common open-source kernels (ex. Linux, BSD, Redox, Haiku, etc.) have large and complex code bases. Thus, they are not the most suitable tool for teaching operating system fundamentals. Most educational open-source kernels (ex. Minix, MentOS) target older hardware (68K, x86), or use languages that lack modern features (C). This project presents a modern, well-documented educational kernel written in Rust for the x86_64 platform. Oxid OS provides an educational playground for future kernel developers to experiment with various aspects of an operating system. Some of these aspects are bootstrapping, memory management (paging, allocators), interrupt handling, input/output, and multi-processing. Additionally, it presents a productive kernel development environment for students with comprehensive automated build scripts and debugging tools. Compared to other educational kernels, Oxid OS provides a modern, yet simple, architecture that can be modified or extended upon by future kernel developers.

Back to top

Questions: Please email cssgrad@uw.edu