|
|
|
|
Computer Science 4961/4962
Capstone Project
Spring 2018 |
The first phase of the capstone experience is the selection of a
project and the creation of teams. This page provides a summary of
potential projects for this semester. Students must provide
their personal preferences by
5:00pm Monday, January 22, 2018
, so if you wish to suggest
another project idea for consideration, such a suggestion must be
provided by classtime on 3:00pm Friday, January 19, 2018.
You may wish to take a look at
past project descriptions
that have been selected in recent years.
Table of Contents:
-
Medical Education Project
-
Advanced Data Editor
-
Image Realignment for Published Manuscripts
-
Collaborative Telepathology
-
Tactile Internet: Remote Touching is Possible!
-
An Online Gaming App Using Haptics to Teach STEM Concepts
-
Whack a Mole: A Risk Minimization Approach
to Moving Target Defense in the Cloud
-
Evaluation of Machine Translation Approaches for
Closely-related Languages
-
Reboot of Accentuate.us
-
Spellchecker Development
-
Self-contained Search Engine Solution for Irish Language Websites
-
Syntax-aware Machine Translation of English into
VSO Languages
-
Library Book Finder
-
At-home distributed computing
-
Registrar Data Entry Tool
-
Registration Chatbot
Organization: |
Cardinal Glennon Children's Hospital |
Client: |
Dr. Christopher Brownsworth <christopher.brownsworth@health.slu.edu> |
Supervisor: |
tbd |
Description: |
Much of medical education is still conveyed through classroom
didactics and books/paper/ online material. Use of mobile devices has
skyrocketed over the last 10 years; however medical education as a
whole has not embraced mobile devices as a way to teach medicine; We
are currently conducting a randomized controlled trial to determine if
texting medical students daily medical question/answers can foster
learning and improve performance on national standardized testing. We
are limited on the information we can convey through text messaging
due to the character limit. We are wanting to build a platform for
delivering question/answer style questions to students, both online
and mobile devices. This is envisioned as a platform where "classes"
containing question/answer style information can be created and then
students can subscribe to the class and receive the questions either
daily or in block. The system will then create an answer report
breaking down the statistics.
Organization: |
SLU's Walter J. Ong, S.J. Center for Digital Humanitites |
Client: |
Donal Hegarty <donal.hegarty@slu.edu> |
Supervisor: |
tbd |
Description: |
The IIIF (iiif.io) standard allows discovery and sharing of
datasets. The underlying data format is JSON and the IIIF standard
defines what must or should be a part of the object to make it a
valid IIIF object. The Walter J. Ong, S.J. Center for Digital
Humanities has a data repository for these IIIF objects called
RERUM. RERUM has a web facing interface (rerum.io) through which
various tools interact with these IIIF data objects in the
repository. One of the goals of the site is to offer a robust and
user friendly IIIF Manifest editor through which the rules of JSON
and the IIIF Presentation API
will be enforced while a user creates and/or alters IIIF objects for
the RERUM data store. The RERUM interface is written with HTML, CSS
and AngularJS which are the languages that must be used to complete
this task. A successful implementation of the editor would be
immediately incorporated into the RERUM tool set for public use.
Organization: |
SLU's Walter J. Ong, S.J. Center for Digital Humanitites |
Client: |
Donal Hegarty <donal.hegarty@slu.edu> |
Supervisor: |
tbd |
Description: |
Millions of images are made available to scholars through the IIIF
(iiif.io) standard and are organized into virtual containers
(Manifests) by the hosting repositories. For close study of the text,
scholars often need to crop out surrounding support materials (rulers,
color bars, labels), rotate images, split images (of two-page layouts,
for example), and discard uninteresting leaves. Currently, these
adjustments cannot be saved for personal use or publication. The
Walter J. Ong, S.J. Center for Digital Humanities builds tools for
scholars and developers who wish to interact with these materials and
would like to add this one. With the support of the Center’s full-time
development staff, this project balances UI/UX development for simple
user input with implementation of API and standards. Changes users
make will be saved to a public digital object repository (RERUM.io)
and the Manifest which has been augmented will be notified through
Linked Data Notification (inbox-docs.rerum.io). The successful project
will be immediately rolled out to an international community of users
and be made available to the 2000 scholars currently transcribing on
t-pen.org. No experience with manuscripts is required, but comfort
with HTML, CSS, and JavaScript (including AJAX) is.
Organization: |
SLU Medicine |
Client: |
Dr. Grant Kolar |
Supervisor: |
Dr. Flavio Esposito |
Description: |
Telepathology is the practice of digitizing histological or
macroscopic tissue images based on a glass slide for transmission
along telecommunication pathways for diagnosis, consultation, or
continuing medical education. In the majority of non-trivial pathology
cases, to minimize the response time to the surgeon and the
probability of incorrect assessments, pathologists ask for second
opinions from nearby experts (if available) by physically carrying
glass specimens. Especially to complement underserved geographical
areas, expert pathologists should have remote access to difficult case
assessments via telepathology. Today however, telepathology is
practically unused for the applications that would need it the most:
fast and reliable consultations as well as multi-students live
teaching sessions. Moreover, pathology is nowadays mostly taught via
offline methods or via one-to-one mentor-student specimen
analysis. Remotely recreating the effect of a microscope locally
handled would allow multiple pathologies across federated sites to
collaborate on non-trivial diagnoses. Best-effort Internet connections
are simply not enough to support such applications.
Students in this project will focus on the following aspects of
Internet of Things applied to Telepathology systems:
-
Connect a microscope to the Cloud(Back-end)
using the API and the microscope emulator provided
by an open-source microscope manager software
(micro-manager.org),
create the back-end infrastructure
so that the microscope images can be saved on a cloud server.
-
Front-end Web interface
Using Flask, Django, or any other dynamic web framework,
students will emulate a subset of the existing micro-manager GUI
commands so that input will arrive under the form of web
requests. Connecting the front-end to the back-end, pathologists
will be able to interact, dynamically and remotely, with the
images acquired from (an emulated or a real) expensive microscopes.
-
Demonstration
Adjust the backend system to attach it to a real microscope,
available at the SLU School of Medicine, replacing the emulated
version available in micro-manager.org, to demonstrate remotely
control of images. Input commands include a zoom, pan or focus change.
Organization: |
SLU Mechanical Engineering |
Client: |
Dr. Jenna Gorlewicz |
Supervisor: |
Dr. Flavio Esposito |
Description: |
Haptic devices enable users to physically interact with virtual systems via force-feedback. In this project, depending on skills and interests, students will be required to connect two GeoMagic Touch Haptic devices and control their interaction via a web interface or via an (Android or iOS) App. Applications of this technology range from online gaming, to military or (healthcare) education.
Organization: |
SLU Mechanical Engineering |
Client: |
Dr. Jenna Gorlewicz |
Supervisor: |
Dr. Flavio Esposito |
Description: |
Hands-on learning experiences have been shown to help students better
understand challenging concepts, particularly those in STEM (Science,
Technology, Engineering, and Math). While laboratories are often one
avenue by which students receive hands-on learning experiences, these
are often discrete opportunities that only occur in a classroom
environment. This project involves building a mobile app (game) that
would allow users to have hands-on learning experiences using their
phone or tablet. The mobile app would interact with the Hapkit (to be
ordered online, and be built), which contains all of the hardware for
building a haptic paddle. (See hapkit.stanford.edu.) The haptic
paddle is a force feedback
joystick that enables users to "feel" what is being displayed on
screen. As the paddle handle moves, digital elements move, and in
turn, send feedback (via a Cloud-based system) back to the user
(players) through the paddle handle, creating a force-feedback
system. One of the exciting challenges lays in the force feedback
being variable based on the medium (e.g. if users are pushing through
water versus pushing on a slippery surface versus pushing through
molasses). The (web or mobile) app will provide an example of a
hands-on learning experience that could be made available to students
at multiple levels, without requiring large infrastructure such as a
university lab.
Organization: |
SLU CS |
Supervisor: |
Dr. Flavio Esposito |
Description: |
Have you ever played the game Whack a Mole? If not, you can try
different versions here.
This project is about
emulating the game between an attacker and tenants of a cloud
provider, renting virtual machines. Cloud providers migrate their
tenants around (moles) to confuse a potential attacker. The more you
stay out, the higher the chances to get "whacked", but the more you
move around, the higher are the overhead costs and disruptions. There
are several types of attacks that can be performed if you are
collocated on the same physical machine of the victim. For example,
with side-channel attacks you could steal sensitive information just
by observing a virtual machine writing behavior. For example, when is
the attacked VM writing on the memory, or by observing power
consumption and electromagnetic leaks. Even a sound can provide an
extra source of information, which can be exploited to break the
system. (See
here.)
Students
are required to design and
implement a moving target defense strategy (the algorithmic behavior
of the mole attempting to minimize the probability of being
"whacked"), migrating real virtual machines with Linux KVM, a virtual
machine management framework. Larger groups may work in competing
sub-teams, emulating the behavior of an attacker trying to learn the
mole strategy (using machine learning techniques).
Organization: |
SLU CS |
Supervisor: |
Dr. Kevin Scannell |
Description: |
This would involve training a number of MT engines,
including phrase-based models like Moses and, say, character-based
models using RNNs (TensorFlow) which could possibly work well for very
closely-related languages. I have data for the Gaelic languages and
for Irish language standardization. Other pairs are possible: Zulu/Xhosa?
Organization: |
SLU CS |
Supervisor: |
Dr. Kevin Scannell |
Description: |
In a capstone project from many years ago, a student developed a web-based
platform (previously hosted at accentuate.us) along with a
corresponding firefox
add-on. Its purpose was to use machine learning to automatically
restore diacritics when entering ASCII-only texts, to make it quicker
and easier to type in more than 100 world languages without extra
keystrokes or a special keyboard. That service is no longer active and
there were scaling challenges since the statistical models needed to
be stored in RAM and this limited the number of languages that could
be supported. With this project, a team will rely on more modern
approaches to scalability to revive and extend the original tools.
Organization: |
SLU CS |
Supervisor: |
Dr. Kevin Scannell |
Description: |
Dr. Scannell has raw data consisting of word lists crawled from the web for
2000+ languages. It would be nice to have a website which could allow
a language community to crowdsource the editing (voting, etc.) of
these wordlists to turn them into spell checkers. Part of this would
be an interactive tool for developing so-called "affix files", without
having to be trained on the technical details, and also a tool for
exporting spellchecking addons for LibreOffice, Firefox,
etc. automatically.
Organization: |
SLU CS |
Supervisor: |
Dr. Kevin Scannell |
Description: |
The idea would be to build this on top of existing open source search
engines like Apache Lucene, or anything derived from Lucene (Elastic
Search, Solr, ...). The issue is to allow indexing according
to eight possible combinations of (standard/non-standard,
mutations/stripped, stemmed/unstemmed), using software developed by
Dr. Scannell, and to package the result in a way that's trivial for
site maintainers to deploy.
Organization: |
SLU CS |
Supervisor: |
Dr. Kevin Scannell |
Description: |
There are various open source packages for doing syntax-aware
statistical MT; maybe the most promising in this context would be an
approach based on tree-to-string transducers, like "travatar".
Organization: |
SLU Registrar |
Client: |
Jay Haugen |
Supervisor: |
TBD |
Description: |
The Registrar's office would like a tool that is capable of automating
data entry into graphical user interface forms to reduce time-consuming
data entry tasks. Users will be able to upload text-delimited files
containing a set of desired data entry tasks, and the tool should be
capable of automatically applying these changes. This tool should also
be capable of capturing responses and sending any discrepancies or
errors to an operator.
Organization: |
SLU Registrar |
Client: |
Jay Haugen |
Supervisor: |
TBD |
Description: |
The Registrar's office would like a natural-language based tool to assist
students in planning and managing their schedule. Students should be able
to phrase questions such as "When is calculus offered in the Fall?",
"What history classes are available at 10AM MWF?", or "How many seats are
left in Geophysics?" and recieve an accurate response. With a student login
the system should be able to answer questions about the student's schedule
such as, "Where is my history class meeting?".
Organization: |
SLU CS |
Client: |
The library, hopefully |
Supervisor: |
TBD |
Description: |
A student-proposed project would like to create a book-finding utility to
assist patrons in using the library. The basic functionality is to translate
book call numbers into physical book locations in the library, which may be given as
aisle, position in aisle, or even particular shelves. Accompanying this utility
would be a maintainer backend so that book positions may be updated as their locations
change within the library. A desired advanced feature is a map showing the patron's
current position within the library and a path to their target.
Part of this project will be to identify (with the help of the instructor or supervisor)
stakeholders in the library who might want to use or maintain this system.
Organization: |
SLU CS |
Supervisor: |
TBD |
Description: |
This student-proposed project would like to create a system to utilize heterogenous
sources of computing found within the home. Many computing resources spend much
of their time idling with no useful work: desktops, laptops, smartphones, tablets, etc.
In this project, students would create a software system that allows devices
to opt-in to a local distributed computational network, such that when certain
constraints are met (e.g. not being used, plugged in) they may be asked to perform
computational work on behalf of another device to accelerate a local
computation. In order to be efficient and effective this
system would need to be aware of limitations and strengths
of different devices in the network, as well as the expected latency of outsourcing
a particular piece of work. To be correct this system would need to be aware of
devices joining and leaving the network at arbitrary times, and maintain operation
under all circumstances.
In addition to building a system for sending and recieving work to other devices,
students would need to define a software interface for accessing this functionality.
Advanced features could include system-wide encryption, or support for targeting
specific heterogenous computing resources (e.g. GPUs).