CS388- Week4- Update

with No Comments

For this week, I created my annotated bibliographies for 2 papers of each of my 3 ideas. I also spoke with Charlie and refined 2 of 3 ideas. For my penetration testing idea, instead of making the project solely on the technical side, I want to basically have three phases of this project- technical, social, and physical. I plan to speak w/ Brendan Post in ITS and see how I could implement this at Earlham. I’d plan to publish the results of this testing to where other schools could do something similar.

In regards to the bibliography, one of my ideas is tracking Digital Footprints of users and I found a paper where the researchers created their own piece of software that was a blend of a password manager and an auditing service. I thought of being able to do something similar and create my own piece of software but with additional features.

CS 388 – Week 4 – Update

with No Comments

This week, I did a first pass reading for a total of 6 papers and visited the writing center for the annotated bibliography. Some of them turned out to be less relevant to the topic than they had appeared, but they were mostly useful and interesting. For one of my journals, the authors introduced the eigen-values and associated them with our facial features which I thought was fascinating. A lot of the methods that I thought were either subjective or determined by consensus actually involved detailed algorithms and logical processes. I look forward to reading them more in depth.

CS388 – Week 4 – Update

with No Comments

This week, I created annotated bibliographies for papers pertaining to each of my three ideas. I also further considered the possibilities for updating my project ideas – I’m likely to not go with the copyright detection idea. If I go with the visualization of music idea, I’m likely to turn it on its head and deal with the audiation of visual art. I’m still fairly content with the rhythm game idea as it is in its current state.

CSS 388 – Week 3 – Updates

with No Comments

This week, I browsed through chiefly ACM and Google Scholar to find five papers on each of my topics. I additionally met with Charlie to go through my three ideas, getting some helpful insights about my projects and what is being looked for in the capstone project, as well as generating some ideas based off of the original three. The Copyright Detection idea in particular is likely to be cut – it’s a field already rich with research and work done, making it harder to come up with something better or wholly original.

CS 388 – Week 3 – Updates

with No Comments

Summary of Updates:

This week I spent a lot of time trying to refine my last two ideas to make it more suitable for a capstone and tried finding enough research articles about all three ideas. I struggled with finding related articles to my second idea so I came up with a fourth idea that was easy to research. Below I’ll put all four of my ideas that I have right now.

First Idea: Automatically Detecting Fake News

  • Create a database of media of different opinions that are credible with truthful information.
  • Using Machine Learning, find/develop an algorithm that when given a medium could accurately determine whether it is credible and truthful.
  • Create an app/website/browser extension as a user interface where you can manually input the medium you want to check, or follow certain keywords and be alerted when new credible content with those keywords has been created, or tell you when a medium you are currently looking at is not credible and link you to credible sources of both opinions.

Second Idea: First Responder’s Tech

  • Disaster relief first responders, like 911 operators, would benefit from a tech upgrade as well and they actually use open source software.
  • I would like to set up a text system for those responders because you can handle more texts at once than you can calls and sometimes it’s easier to text for help.
    • With texts, it would also be easier to automatically send location data to the responders
  • I would like to create a technology that uses the phone’s barometric pressure sensor and gps location tech to be able to tell first responders exactly where and what floor a person is on.

Third Idea: Secure Paperless Voting Machines

  • The paperless voting machines that we have at this very moment have been proven to have many flaws and vulnerabilities and are easy to hack into. Given the interference of the Russian in the last presidential election, this is extremely concerning.
  • I would like to create a paperless voting method that would allow people unable to securely cast their ballot and have the capabilities to have a secure virtual caucus for those unable to make it to the physical location.
    • I would make sure all data is encrypted to the highest standards we have at the moment and that all vulnerabilities noted in our current methods and efforts are addressed.

Fourth Idea: Virtual Recreation of Ancient Sites

  • world in an immersive environment without having to damage the sites and spend money building on top of the actual ancient stones and what not
  • People should be able to walk into places and into rooms
  • People should be able to hear sounds as well
  • Perhaps incorporate smell???
  • People should be able to walk up stairs!
  • There should be an interactive element that will give you facts and info about a specific thing that you touched or selected
  • This could be used as an educational tool in classes and could be used by museums so that they could give back the original pieces and works to the countries that can safely house them and use the VR with recreations

CS388-Week3-Updates

with No Comments

I am still exploring my new ideas.

Idea 1 Title: AI Assistant for Safety Driving

Description: My idea is to use facial recognition to detect fatigue driving or dangerous driving. A small camera will be placed in front of the driver and the AI Assistant will be a mobile phone APP. For fatigue driving, the camera detects behaviors like closing eyes for long time, yarning, frequently rubbing eyes with hand, etc. For other dangerous driving behaviors, the camera can detect behaviors like playing mobile phone, turning back to chat, smoking, etc. After detecting dangerous driving behaviors, the APP will do a series of operations according to the dangerous behavior: giving an alarm, play refresh songs, report the location of the nearest rest stop. Actually there are already research and real products available now, but most of them are commercialized. They are expensive and big-sized. What makes my idea different is that I am going to develop it as a cheap and handy daily life tool. And I probably can enhance the accuracy of detection under dark light or special environment. The main tech is facial recognition and there are many open sources online. 

Idea 2 Title: Voice Print Recognition Identifier 

Description: Facial recognition is very popular recently, but many people do not notice voice print recognition. VPR is cheaper and more convenient because it only needs one microphone. Voice can tell many information like age, gender, emotion, environment, and etc. Wearing glasses or makeup might affect the performance of facial recognition, but a mature human being’s voice is stable. There are already research and real application on voice print recognition. For example, WeChat user uses voice recognition to log in. But I can innovate my idea on the application, for example, combine it with bank customer service. When a user steals other’s password and calls Chase to do money transaction, the VPR can detect if the voiceprint matches the bank account owner. Or use it to fight crime, home robots, etc. The VPR tech is already exist. I need to innovate from other aspects. But the two primary usages are: speaker identification or speaker verification. Voice print is a spectrogram of voice, forming from wavelength, frequency, intensity and other hundreds of characteristics. I can differentiate people from differences in purity of voice, resonance ways, average pitch characteristic, voice range. 

The popular used spectrogram characteristics are: MFCC, PLP, FBank, D-vector by Google, Deep feature, Bottleneck feature, Tandem feature. Existing models: GMM-UBM, JFA, GMM-UBM i-vector, DNN i-vector, Supervised-UBM i-vector. Scoring algorithm: SVM, PLDA, LDA, Cosine Distance. 

(But i don’t know if the scope is too big)

Idea 3 Title: Using OCR to grade hand-written homework

Description: Take a picture of the hand-written homework and use OCR tech to extract the content. (OCR is a technology converting printed text into editable text.) Then check if the algebra calculation is correct. Mark the correctness in the picture near the problem. There are already APP like that available online. But it only checks for algebra calculation, and it is not that accurate. It requires good hand-writing. I can expand my project to enhance the OCR tech, or make it check for simple English homework as well. Especially some parents in non english speaking countries cannot speak english to help their children. And probably I can expand the idea to a mobile phone APP that can summarize and analyze the grades data: collect incorrect problems, analyze which category did incorrectly the most, and etc. 

Week 3

with No Comments

I have read some literature on all three of my ideas, and was pleasantly surprised to see that there was a lot of academic research potential in the ideas that I thought were a little dry in research, which was my main concern with my ideas. The most exciting idea I got was adding a food recommendation system for my food ordering app, where the user can get either a healthy or a tasty recommendation depending on their preferences.

For my second idea, I realized I need to research the intersection of human-computer interaction and pedagogy.

For my third idea, there is a lot to research about indexing a large number of text documents, where the corpora grows, and there is a space constraint. I can also look into text summarization techniques and metadata extraction from the documents.

CS388-Week3-Updates

with No Comments

Idea #1
Name of Your Project Computational complexity of the ‘Park Puzzle’
What research topic/question your project is going to address? The Park Puzzle is a game that involves splitting a n*n grid into different colored continuous ‘parks’. A solution to a park puzzle involves marking the position of a tree in each park such that no two trees share a row or a column. The research topic involves exploring various algorithms for solving the park puzzle, and determining some bounds on the computational complexity of the puzzle. The most involved version of this project could be to prove those bounds. (The initial, intuitive hypothesis is that the park puzzle cannot be solved in polynomial time)
Update: I am looking into the proofs of NP-completeness of other pencil puzzle problems to gain an understanding of the techniques involved in proving such complexity bounds.

Idea #3
Name of Your Project
Fast Integer multiplication
What research topic/question your project is going to address? There have been significant improvements in algorithms for fast multiplication of integers within the last decade (see Fast integer Multiplication by Anandya et al), approaching O(nlogn), which use modular arithmetic and computation on p-adics  The research project would be to explore the theory behind these algorithms and verify their results.
Update: I am looking into the minimal mathematical background required to make sense of how the algorithms work, without necessarily getting into all of the details.

Idea#3 Iterative solvers for systems of Linear Equations
Description Large and sparse systems of linear equations appear in the solution to some partial differential equations by finite difference methods, and in general many day-to-day problem areas such as in engineering and scientific computing. As such the theory of developing methods for solving such large systems, and proving their correctness is an area of active research. in this project I would like to test the effectiveness of various iterative methods at finding solutions to systems linear equations with various characteristics by taking an experimental approach.
Update: no update for this idea

CS388 – Week 3 – Update

with No Comments

Idea: Breakdown of Mathematical Proofs Using Natural Language Processing

I wish to use natural language processing to break down a bachelor-level mathematical proof into the components that make up a proof (e.g. given knowledge, statements, calculations). This will be shown in a GUI so that the user can clearly see the build-up of their proof. Without constraints of time, some more technologies could be applied (machine learning) to give feedback to the user of the strength of their proof.

Update:

No update to this idea.

Character Description Generation from Novels

I want to use natural language processing to allow a user to enter a character’s name (fictional or non-fictional) in whatever PDF they please, and have the algorithm generate a list of facts/short descriptive paragraph about the character. This could be useful when doing novel summaries, studying history and remembering the roles of persons, etc.

Update:

This idea is new and came after a discussion with Charlie that my previous ideas were not too interesting ideas (ie. not much room for expansion, not much coding).

Photo to LaTex Generation

This idea came while looking over some of my math notes and wanting to digitalize them. After looking online, the technology does not seem to be there, with some very primitive attempts. I would like to attempt myself at allowing someone to digitalize their math notes in LaTex form. It would require symbolic and natural language processing, potentially machine learning upon more investigation.

Update:

This is also a new idea, again discussed with Charlie after doubts about the previous idea.

CS388 – Week 3 – Update

with No Comments

I further developed my ideas and added more details to each of them. Then I talked to Xunfei about modifications and got more suggestions from her. We looked through the research paper I found on Google Scholars together and searched for related articles. After the meeting, I went back to find some more articles. I think I now know what to choose as my final idea.

CS388 – Week 3 – Update

with No Comments

As suggested by Charlie, I chose a new direction for my third idea:
Name of Your Project? Geosocial Weight Algorithm
What research topic/question your project is going to address? Lots of social networks, including, for example, one that I created with my classmates last year, use geolocation services to sort data. Our social network uses location to not only sort and tag data, but to filter what is available to the user. 
What technology will be used in your project? Location APIs, React Native (assuming that I build on to the pre-existing app we have built), Geosocial algorithms.
What software and hardware will be needed for your project? Requirements might include access to Apple devices for development and testing, such as a mac/macbook (could use one in hopper, or another lab), and some version of iPhone for testing, if making a mobile app is the most effective.
How are you planning to implement?  Assuming I continue to work on the same basic network that we already began to set up, my implementation would continue in react native. We already have the basic framework of a social networking app, but I think it would be a good foundation on which to apply my ideas for geosocial algorithms
How is your project different from others? What’s new in your project? My main idea for this is to create an algorithm which can efficiently update the viewable radius of a post based on the feedback from other users in the area. This algorithm would have to take many things into account, such as the population density, user density, post density, and how much positive and negative feedback should affect the geographic radius of each post.
What’s the difficulties of your project? What problems you might encounter during your project? Programming in react-native can be a bit of a challenge. This algorithm could be very complex, so it might get tricky to work with.

After updating my ideas, I picked out 5-7 articles for each of my ideas, quickly finding an abundance of relevant material. I also set up a meeting at the writing center this weekend to discuss how to get started writing, and I will start reading into the articles I found soon. I plan to try and meet with Charlie again soon to discuss my strategy moving forward, and to talk about the quality of the sources I aquired this week.

CS388- Week3- Update

with No Comments

For this week, I updated my 3 proposal ideas and met with Charlie to review and seek his advice. Prior to this meeting, I found my 5 articles for each and used these discuss potential problems if each idea was used.

Post meeting w/ Charlie, I read a little deeper into the articles and now have a better idea on which proposal I may want to further investigate. Before I ead into the articles, I read the two PDF’s on Moodle about reading research papers and tried to implement this into my first and second pass of each article.

Week 2

with No Comments

Idea 1

My first idea stays the same, making an online food ordering system that works over wifi. I need to think about how to differentiate my product, what is new with this, and how to test it.

Idea 2

A web platform aimed at helping people learn/practice math. Using a template, it would generate math questions, and allow people to try to solve them. It would also provide step by step solutions for people. This would be especially applicable to calculus. There are APIs that help with this, at least some open source.

Idea 3

A time tracker app for TAs, who are currently logging in their hours on a Google spreadsheet. This site could allow TAs to clock-in and clock-out, take attendance, and also show them how much they worked in each pay period. The app would also update the currently existing Google sheet with the new logs. This can also be packaged in a way that others can also use it.

CS388 – Week 2 – Three Ideas

with No Comments

Idea 1

  • Name of Your Project? Corner Finder AI
  • What research topic/question your project is going to address? Can deep learning and/or neural networks be used over a set of imagery to identify rectilinear structures which might be undetectable to the human eye (in other words, structures that are buried, or very obfuscated).
  • What technology will be used in your project? Drones and drone imagery, as well as machine learning concepts like deep learning with training data and neural networks.
  • What software and hardware will be needed for your project? I would like to make this project so that it can be used with the data the IFS trip collected from Iceland this summer. This also gives me an advantage with testing/learning data, as we created quite a stockpile of the kind of drone imagery I would like to analyse. 
  • How are you planning to implement? I plan to use python, or another language to create the software for this, possibly with support from some libraries (depending on language).
  • How is your project different from others? What’s new in your project? From my first hand experience and preliminary research, it seems that most image analysis like this is done through direct processing of data, rather than by training an AI. The scripts we have used are mostly filtering the data that is there, rather than analyzing patterns. I think that this different approach might help us find things we wouldn’t find otherwise.
  • What’s the difficulties of your project? What problems you might encounter during your project? The main difficulty will likely be the complicated nature of this kind of software. I have a medium level of experience with AI concepts, but something at this level will undoubtedly get murky with details eventually.

Idea 2

  • Name of Your Project? Scatter Box
  • What research topic/question your project is going to address? Is there an analysis based solution for organizing sounds based on their parameters? Can it be applied to music creation / production / organization? Can it be applied to scientific data? Can it be made efficient enough to be practical? Can it be abstracted to be broader; perform the same analysis over images, or text. In many ways, what I want this to be is a user-friendly, abstract K-nearest-neighbor classifier.
  • What technology will be used in your project? Audio Manipulation algorithms, maybe other analysis algorithms for things other than audio (pictures, text), 3D data plotting.
  • What software and hardware will be needed for your project? Libraries that include processing ability like Numpy and Pyaudio, 3d mesh plot output (matplotlib has a simple version of this).
  • How are you planning to implement?  I plan to use python, or another language to create the software for this, possibly with support from some libraries (depending on language).
  • How is your project different from others? What’s new in your project? There are many software options for organizing and evaluating sounds. What makes this project stand out is the idea of visualizing the data in terms of the actual parameters of the audio. These parameters could be anything from audio length, to pitch or frequency, and more could be added throughout the course of the project, as testing made it clearer which were the most beneficial to the purpose of the project.
  • What’s the difficulties of your project? What problems you might encounter during your project? There could be problems with processing efficiency, as well as with the actual output of the program. I haven’t worked much with programming visuals, let alone 3d visuals.

Idea 3

  • Name of Your Project? Earlham CS Info Tool / Resource Concatenation Tool
  • What research topic/question your project is going to address? The CS department at Earlham has a huge range of resources available to students through the cs.earlham.edu website. Many of these resources, however, are somewhat buried. Taking myself for example, I didn’t find out about some of the available resources, such as the CS wiki, until after I was a Junior CS major. 
  • What technology will be used in your project? Android Development Environment,Cross-platform Development Environment (Maybe React Native), Web Environment (Javascript, Node, React), Crawl and catalog specific websites for information.
  • What software and hardware will be needed for your project? Requirements might include access to Apple devices for development and testing, such as a mac/MacBook (could use one in hopper, or another lab), and some version of iPhone for testing if making a mobile app is the most effective.
  • How are you planning to implement?  I plan to use a platform-agnostic framework, such as React Native, to provide as broad of support as possible to students. 
  • How is your project different from others? What’s new in your project? All the information to provide students with the help they need is there, but it needs to be connected in a simple, front-facing user interface. My project would provide a single, unified way to search the information made available to students in CS. The project would (in theory) be able to search all the resources, including the CS website, as well as the CS wiki, portfolio page, and any other resources. From a single search bar, the app would be able to return a list, sorted by relevance or most recent, of all the matching information from each one of these resources. My side goal for this project is to create a more abstract version of the concept, capable of applying the same combined search to a user-defined set of web pages and resources. 
  • What’s the difficulties of your project? What problems you might encounter during your project? I have little experience with crawling web pages for data, which could be a big part of the implementation of the project.

CS388 – Week 2 – Three Ideas

with No Comments
  1. My first idea stays the same. Some items Xunfei helped me consider is what questions administrators would be prompted to answer, and how to moderate student answers for reliability.
  2. My second idea is to build a simulation of Earlham’s energy usage. I would research energy simulations and if visualizations of energy usage have been created. My visualization would show how adding renewable energy sources would affect the power grid. It may also show how improving the energy efficiency of certain buildings would save energy on campus.
  3. My third idea is to research climate simulations. My research would be focused on how simulations have changed over time, and the ways in which they could be made more accessible to the wider public. Visualizations of climate simulations may be a useful tool for the media and to inform policy makers.

CS388 – Week 2 – Three Ideas

with No Comments

Idea 1: Joseph Moore Museum Guided Tour

This project is an attempt at expanding the accessibility of the Joseph Moore Museum, especially to patrons whose first language is not English. The project is to create an app which will scan QR codes beside a museum exhibit, and provide information on that exhibit in the preferred language of the user. Audio narration for each language would extend accessibility even further. Additionally, exhibit traffic could be obtained by counting the QR scans for each exhibit, allow for a degree of analytics. To make the project fit the bill for a capstone, it would be necessary to plan from the beginning with generalization in mind. Rather than build specifically for JMM, I would build such that any museum could plug in their data and utilize it.

Technology

This project will utilize QR scanning technology, Unity for mobile app development, as well as web hosting to offload the exhibit information and audio files from the mobile device. 

Software

This project will require a mobile development suite, most likely Unity given I have some familiarity with it. I will also need to host a web server for the files related to each exhibit (text description for each language selection, audio files, photos, etc). The app will utilize a modern smartphone with a camera of decent resolution, and internet connectivity.

Implementation

Before I begin, I will begin a conversation with the museum director about the project. Since my project will be associated with an established organization, it is important that the project goals align with the organization’s vision. I will also begin searching for people who would be interested in translating exhibit info from English to various languages such as Hindi, Spanish, and Japanese. Meanwhile, I will begin working on a prototype app with the goal being to successfully scans QR codes and displays different data based on the QR code scanned. After I have a working prototype, I will begin work on setting up a web server to host the exhibit information, and linking that to the app. Towards the end I will polish up the UI experience.

Novelty

My project will be providing new features and technology to the Joseph Moore Museum in order to expand its capacities for language accessibility. 

Potential Issues/Difficulties

One of the most glaring issues with this project is scope. My unfamiliarity with web hosting combined with limited experience with mobile app design means making an accurate timeline will be quite difficult. Building a polished mobile app is time-consuming, and might not fit within the time-frame of the project. 

JMM has a lot of exhibits, which means there is a lot of text to be translated and audio to be recorded. Finding people up to the task of translating and recording could prove to be quite difficult. 

One last issue that has been brought to my attention is accessibility with respect to patrons who aren’t comfortable downloading apps. The most widely accessible version of this project is a website with pages for each exhibit directed to by QR codes. The shift of the project then becomes about managing the collection of translation data, rather than stretching my abilities in computer science.

Idea 2: Long Range RFID Guided JMM Tour

The basic idea here is to implement a multi-lingual app-based automated guided tour of the Joseph Moore Museum using long range RFID tags. While the app is open, it will scan for RFID tags present at each exhibit. When your smartphone is within a couple feet from the exhibit, the audio for that exhibit will play through the user’s headphones or speakers. Since exhibits at JMM are close together, it may be more practical to make the tags closer range, requiring the patron to touch their phone to the RFID tag. This project would require phones equipped with NFC capabilities. An extension to this project would be investigating how well google translate works on the exhibit descriptions. I will send google translate data from English to Russian of a few exhibit signs to Egor for accuracy analysis.

Idea 3: GPS-based Guided Tour of Earlham + Virtual Tour Using Drone Footage/Imagery

For this capstone idea I would design a guided tour of Earlham which utilizes GPS data to trigger informative audio clips as you pass Earlham’s various buildings. Multilingual accessibility is again crucial to this project. It would allow visitors who may not understand English fluently to take an informative tour of campus on their own time. This project would pair nicely with a virtual component as well. Using drones, I could capture video simulating a walking tour of campus, and stop at each location to play recorded audio describing each building. A simpler alternative would be stitching many still images taken in sequence, similar to Maps Street View; however, live video captures the liveliness of campus better, and would pair nicely with VR. Because high quality video isn’t cheap, a middle-path approach could be using street view style images to navigate from building to building, but have each building be associated with a 360 degree video clip to enjoy while the informative audio is played.

CSS 388 – Week Two – Three Ideas

with No Comments

Project Idea One:

Name of Your Project

Implementing AI into Rhythm-Based Video Games

What research topic/question your project is going to address?

The project is going to attempt to address a common issue with rhythm games – particularly for mobile devices – where, upon finishing a song, the game goes into an ‘Endless Mode’. Currently, ‘Endless Mode’s tend to be the same song repeated, generally increasing in tempo as time goes on, which makes the game more repetitive and boring the better you are/longer you can last.

What technology will be used in your project?

I would use Unity, as well as Melodrive, primarily. Further technology, including alternative music-based AIs, may be explored as needed. A laptop or desktop computer to code on, as well as a mobile device, would be used for testing.

What software and hardware will be needed for your project?

The Unity game engine, Melodrive, a laptop or desktop, and a mobile device.

How are you planning to implement?

I would implement this project by first creating a simple rhythm-based game (one example of such would be the popular Piano Tiles), in Unity, creating a system by which the game can generate a level based on any song uploaded by the user. Once that framework has been created, I would use Melodrive’s Unity API (or create an API using another music-based AI if necessary) to generate infinite new music for a truly ‘Endless’ experience that will never bore the user with repeated music. The implementation would also allow a user to save the songs generated by the AI – each song would be of a similar length to the original song, and after each song, would become more intense/fast-paced/harder.

How is your project different from others? What’s new in your project?

My project is different from others due to the two fields it delves into – video game design, and AI. The project would be new from its conception; from what I can tell, there are currently no games or apps on the mobile market that can offer a non-repetitive ‘Endless Mode’ upon completion of a song/level. Similar technology could be used in any other video game, as well, instead of a repeating song serving as the background music.

What’s the difficulties of your project? What problems you might encounter during your project?

The first difficulty I’ll have with this project is coding the initial game – while manually creating parameters for set songs (i.e. when to make objects for the player to tap, where to place them, and so forth) is easy, albeit time-consuming, making a program to dynamically create the level based on any input sound clip will be considerably more difficult. Additionally, depending on the limitations of Melodrive’s Unity API, it may be a challenge to create infinite music during the play session. If that is the case, I’ll have to jury rig it to do so, or alternatively create an all-new API using one of the other various music-based AIs.

Project Idea Two:

Name of Your Project

Copyright Infringement Detection in Music


What research topic/question your project is going to address?

There have been two major affronts on copyright law in recent times – a surplus of questionable copyright claims by various groups for audio and visual copyright infringement on YouTube, and the Flame v. Katy Perry trial, in which Flame claims Perry infringed on the copyright of his song Joyful Noise in her song Dark Horse. Currently, Flame has won the case, though it is likely to be appealed. While I am skeptical of the legitimacy of his claim, as well as many of those on YouTube, it is important for content creators and musicians to be aware if they are liable to be sued, or said to be infringing on copyright. As such, this project will attempt to create software which compares an input audio file to a library of music, to see if it is at risk.


What technology will be used in your project?

I’m unsure how exactly it would be handled at the moment, but extensive use of databases and database management software would be utilized – likely a database consisting of compressed data about each song, which it would compare to the input file.

What software and hardware will be needed for your project?

A desktop – and, in all likelihood, something holding such a database will need to be hosted on a server, if one is not readily available.

How are you planning to implement?

I would pull from databases of music in order to check them against the input file to check for liability of copyright infringement – potentially including a “how likely” measurement. I would look into Shazam and Google’s “what song is this” to see if I can incorporate any of that software. 


How is your project different from others? What’s new in your project?

This project differs from others in the particular scope of the problem it is addressing – I’ve yet to see similar projects dealing with music in such a way, particularly in accordance to copyright law. I may be able to use some information found in prior projects having to do with databases of music (such as a music recommendation project I saw last year).

What’s the difficulties of your project? What problems you might encounter during your project?

Assuming I’m able to find a database to suit my purposes, the greatest difficulties will likely be time-based: going through a database of ‘every’ song would likely be time-consuming, so I’ll have to find ways with which to quicken the process. If there is no such database available, then I’ll face another problem – I’ll have to make my own database, likely with only a selected number of songs, as a test case for the project, which will turn more into a proof-of-concept than a useful tool.

Project Idea Three:

Name of Your Project

(Visual) Art to Music


What research topic/question your project is going to address?

Music is made with waves of sound; color is made with waves on the electromagnetic spectrum. Given the similarity, and the proximity to each other as art forms, this project seeks to turn a visual art piece into music, or vice-versa, by mapping various colors to different pitches of sound, based on the properties of their respective waves.


What technology will be used in your project?

Depending on which languages’ libraries work best with sound and image reading/manipulation, I’ll base the project around that language – this is something I would ask a professor for help in determining. 


What software and hardware will be needed for your project?

At its core, no special software should be needed besides what I already have on my computer – language interpreters, code editors, etc.


How are you planning to implement?

I’d like to build this project from scratch. There would be a lot of work at the beginning, just trying to map images to sounds in a way that a painting wouldn’t come out to be a completely garbled mess – if I can’t find a way to do so without destroying the integrity of the project, it would mostly be used for turning songs into a visual representation. Currently, the plan would be to map each note to a new pixel, or batch of pixels.


How is your project different from others? What’s new in your project?

I haven’t seen a similar project like this via a few searches; as far as I can tell, this is more or less an original idea. What’s ‘new’ in this project is the transformation from audio to visual and vice-versa, aiming to result in a generally satisfactory end result.


What’s the difficulties of your project? What problems you might encounter during your project?

I believe the most difficult portion of this will be in trying to turn a complicated picture into a satisfying, not convoluted and/or unpleasant, audio file. I do, however, believe the song-to-visual component would be significantly easier, though the resulting images may need to be kept rather vague as a result. The implementation of both sides could change drastically over the course of the project in order to get a pleasant result.

CS388 – Week 2 – Three Ideas

with No Comments

First Idea: Credibility Analyzer

  • Create a database of media of different opinions that are credible with truthful information.
  • Using Machine Learning, find/develop an algorithm that when given a medium could accurately determine whether it is credible and truthful.
  • Create an app/website/browser extension as a user interface where you can manually input the medium you want to check, or follow certain keywords and be alerted when new credible content with those keywords has been created, or tell you when a medium you are currently looking at is not credible and link you to credible sources of both opinions.

Second Idea: 911 2.0

  • 911 operating centers are underfunded, understaffed, and under-equipped. Uber and Lyft have a better GPS location system than 911 does. 
  • I would like to create a free GPS location service that works 90%-100% of the time (instead of 10%-90%) and can also locate what floor of a building someone is on
  • I would also like to create a way to text 911 and have that text automatically send the coordinates of where your phone is to 911 without the user having to type it themselves
  • I would like to create a system that can screen texts to see if it’s something simple that an AI could handle and get an immediate response or if it’s too complex and needs to be sent to an actual person.

Third Idea: Secure Paperless Voting Machines

  • The paperless voting machines that we have at this very moment have been proven to have many flaws and vulnerabilities and are easy to hack into. Given the interference of the Russian in the last presidential election, this is extremely concerning.
  • I would like to create a paperless voting method that would allow people unable to securely cast their ballot and have the capabilities to have a secure virtual caucus for those unable to make it to the physical location.
    • I would make sure all data is encrypted to the highest standards we have at the moment and that all vulnerabilities noted in our current methods and efforts are addressed.

CS388 – Week2 – Three Ideas

with No Comments

Changes to Idea #1
There were no major changes recommended, except that the scope of the project could be limited to classical iterative solvers of linear systems.

Idea #2
Name of Your Project Computational complexity of the ‘Park Puzzle’
What research topic/question your project is going to address? The Park Puzzle is a game that involves splitting a n*n grid into different colored continuous ‘parks’. A solution to a park puzzle involves marking the position of a tree in each park such that no two trees share a row or a column. The research topic involves exploring various algorithms for solving the park puzzle, and determining some bounds on the computational complexity of the puzzle. The most involved version of this project could be to prove those bounds. (The initial, intuitive hypothesis is that the park puzzle cannot be solved in polynomial time)
What technology will be used in your project?A simple Java program for generating park puzzles coded by Igor (similar apps are also available online). Pen and lots of paper.
What software and hardware will be needed for your project? If computational methods seem like the appropriate way to tackle the problem, then the appropriate software may be written in python for reasonably sized puzzles
How is your project different from others? What’s new in your project? The project is more research oriented, and the end result is not a concrete implementation of an idea as a program.
What’s the difficulties of your project? What problems you might encounter during your project? It is quite likely that the problem is very complex, and a more restricted scope in the same direction might have to be chosen.

Idea #3
Name of Your Project
Fast multiplication using p-adics
What research topic/question your project is going to address? There have been significant improvements in algorithms for fast multiplication of integers using p-adic numbers, approaching O(nlogn). The research project would be to explore the theory behind these algorithms and verify their results.
What technology will be used in your project? C++ for writing the algorithms
What software and hardware will be needed for your project? Cluster for testing the algorithms
How is your project different from others? What’s new in your project? It is quite similar to the first idea I had proposed, but involves a different area of mathematics.
What’s the difficulties of your project? What problems you might encounter during your project? I expect most of the difficulties to arise with understanding and analysing the algorithms.

CS388 – Week 2 – Three Ideas

with No Comments

1. My first idea stays the same, but Xunfei recommended me to enable rating and commenting under each product to make the app a bit more interactive & informative. I will order recommendations for different skin types by star ratings. I am also thinking to include filtering by content, price, etc.

2. My second idea is similar to the first one, and it’s also on personalization with Machine Learning. I will be creating an app that will recommend makeup products such as lipsticks, eyeshadows, blush, etc. as well as their shades depending on the users’ “personal color”. The personal color analysis will be done using a quiz that will have a set of questions and perhaps facial recognition for higher accuracy. Then the app will pick out the best shades of makeup products that will go with your skin tone!

3. My third idea is making an app in which users can check for events happening not only at Earlham but also in nearby cities such as Richmond, Indianapolis, Cincinnati, etc. Students, faculty, and local residents get bored in a small town and are sometimes clueless about fun events happening nearby. I hope this app could get people more involved in the community. I am also thinking to include restaurant/movie deals that might be happening locally.

CS 388 – Week 2 – Three Ideas

with No Comments

Breakdown of Mathematical Proofs Using Natural Language Processing

I wish to use natural language processing to break down a bachelor-level mathematical proof into the components that make up a proof (e.g. given knowledge, statements, calculations). This will be shown in a GUI so that the user can clearly see the build-up of their proof. Without constraints of time, some more technologies could be applied (machine learning) to give feedback to the user of the strength of their proof.

WhatsUp! : A Passive Event-Sharing Application for Friends

This application will enable a user to check on friends current/planned activities through a simple feed or calendar. Events will have scheduled times, lists of “agreed” participants, and the location. They can be confirmed events, or requests for an event, such as someone looking to go to Walmart at a certain time. Privacy settings could be configured to those in a Geo-Area, or to a specific list of friends, and notifications could also be customized.

Extensive Music Recommendation Website

This website will allow users to input songs and/or attribute values to return recommendations. Users will be able to view detailed analysis of their input tracks attributes and can search also with track attributes (e.g. acousticness, energy, speechiness). This will be done with the Spotify API.

CS 388 – Week 2 – Three Ideas

with No Comments

3d Printer

A new way of 3d printing. The implementation includes a pixel grid that is controlled by a computer, the 3d object is converted into layers, the layer then controls the corresponding pixels the molten plastic flows through. Based on the layer the pixels ‘open’ and ‘close’ to form the 3d object. The pixel grid moves up as it finishes a layer forming the 3d object.


3d – Drone Mapping

A drone that creates a google street view like map. A radius can be set using a mobile interface and the drone will go around using pathfinding algorithms. It will take images that will be stitched together to create a 3d space – google street view like maps. This can be used to map and study deep cave systems.

A new way of 3d printing. The implementation includes a pixel grid that is controlled by a computer, the 3d object is converted into layers, the layer then controls the corresponding pixels the molten plastic flows through. Based on the layer the pixels ‘open’ and ‘close’ to form the 3d object. The pixel grid moves up as it finishes a layer forming the


AI-NLP multi platform application builder:

Based on natural language processing and AI – a program that takes in a description of the application that needs to be built. The AI will then use a natural language processor to convert the description to code. This can be useful for businesses that cannot afford to hire software developers to build their application. 


CS388 – Week 2 – Three Ideas

with No Comments

1st Idea

My 1st idea pretty much stayed the same as it was last week w/ some additional details. Instead of just testing/researching about network security, Charlie advised to look into physical security (open ports on servers, etc) and social security.

2nd Idea

Hacking into an air gapped device. Air gapped means that none of the devices interfaces have connectivity to the internet. Many believe this secures their device. I could look into and possibly use my own devices to test on.

3rd Idea

Today, everyone has some sort of digital footprint. I could envision writing software, that given parameters such as name, DOB, and age, could go on the web and find more information about that person.

Thanks to Charlie for helping guide me to finding these ideas.

CS 388 – Week 1 – First Idea

with No Comments
  • Name of Your Project

A Forum Site to Improve Student Access to Administrative Information

  • What research topic/question your project is going to address?

How do we improve communication between students and Earlham administration? Currently, when students have an administrative question, information is not easily found on Earlham’s website, and it is difficult to find the right person to talk to.

  • What technology will be used in your project?

Open source forum code such as Reddit or Discourse.

  • What software and hardware will be needed for your project?

HTML, CSS, and Javascript, and the dependencies for the forum code I choose.

  • How are you planning to implement?

Using an open source forum code, I will create a site for Earlham student to post questions about certain departments or offices. Members of the Earlham community can post replies, and administrators can moderate the categories of questions that apply to them. There also may be an automatically generated reply found by searching Earlham’s website. When a question has a lot of upvotes, it may generate an email to the relevant administrator.

  • How is your project different from others? What’s new in your project?

This site would provide a single space for student questions, improving student access to campus information. This would also ease the burden on administrators answering the same questions from many students. While the site is built upon an existing forum model, it would be formalized for usage by Earlham students and administrators.

  • What’s the difficulties of your project? What problems you might encounter during your project?

Finding the best existing forum source code to use will take time. Using the chosen forum basis, and being able to build upon it to work for both students and administrators is key. As with any software project, the project could run into problems of feasibility, so planning the minimum and most important features is also important.

CS 388 – Week 1 – First Idea

with No Comments

Name of Your Project

Implementing AI into Rhythm-Based Video Games

What research topic/question your project is going to address?

The project is going to attempt to address a common issue with rhythm games – particularly for mobile devices – where, upon finishing a song, the game goes into an ‘Endless Mode’. Currently, ‘Endless Mode’s tend to be the same song repeated, generally increasing in tempo as time goes on, which makes the game more repetitive and boring the better you are/longer you can last.

What technology will be used in your project?

I would use Unity, as well as Melodrive, primarily. Further technology, including alternative music-based AIs, may be explored as needed. A laptop or desktop computer to code on, as well as a mobile device, would be used for testing.

What software and hardware will be needed for your project?

The Unity game engine, Melodrive, a laptop or desktop, and a mobile device.

How are you planning to implement?

I would implement this project by first creating a simple rhythm-based game (one example of such would be the popular Piano Tiles), in Unity, creating a system by which the game can generate a level based on any song uploaded by the user. Once that framework has been created, I would use Melodrive’s Unity API (or create an API using another music-based AI if necessary) to generate infinite new music for a truly ‘Endless’ experience that will never bore the user with repeated music.

How is your project different from others? What’s new in your project?

My project is different from others due to the two fields it delves into – video game design, and AI. The project would be new from its conception; from what I can tell, there are currently no games or apps on the mobile market that can offer a non-repetitive ‘Endless Mode’ upon completion of a song/level. Similar technology could be used in any other video game, as well, instead of a repeating song serving as the background music.

What’s the difficulties of your project? What problems you might encounter during your project?

The first difficulty I’ll have with this project is coding the initial game – while manually creating parameters for set songs (i.e. when to make objects for the player to tap, where to place them, and so forth) is easy, albeit time-consuming, making a program to dynamically create the level based on any input sound clip will be considerably more difficult. Additionally, depending on the limitations of Melodrive’s Unity API, it may be a challenge to create infinite music during the play session. If that is the case, I’ll have to jury rig it to do so, or alternatively create an all-new API using one of the other various music-based AIs.

CS388 – Week 1 – First Idea

with No Comments
  1. Name of Your Project

Joseph Moore Museum Guided Tour

  1. What research topic/question your project is going to address?

This project is an attempt at expanding the accessibility of the Joseph Moore Museum, especially to patrons whose first language is not English. The project is to create an app which will scan QR codes beside a museum exhibit, and provide information on that exhibit in the preferred language of the user. Audio narration for each language would extend accessibility even further. Additionally, exhibit traffic could be obtained by counting the QR scans for each exhibit, allow for a degree of analytics.

  1. What technology will be used in your project?

My project will utilize QR scanning technology, Unity for mobile app development, as well as web hosting to offload the exhibit information and audio files from the mobile device. 

  1. What software and hardware will be needed for your project?

My project will require a mobile development suite, most likely Unity given I have some familiarity with it. I will also need to host a web server for the files related to each exhibit (text description for each language selection, audio files, photos, etc). The app will utilize a modern smart-phone with a camera of decent resolution, and internet connectivity.

  1. How are you planning to implement?

Before I begin, I will begin a conversation with the museum director about the project. Since my project will be associated with an established organization, it is important that the project goals align with the organization’s vision. I will also begin searching for people who would be interested in translating exhibit info from English to various languages such as Hindi, Spanish, and Japanese. Meanwhile, I will begin working on a prototype app with the goal being to successfully scans QR codes and displays different data based on the QR code scanned. After I have a working prototype, I will begin work on setting up a web server to host the exhibit information, and linking that to the app. Towards the end I will polish up the UI experience.

  1. How is your project different from others? What’s new in your project?

My project will be providing new features and technology to the Joseph Moore Museum in order to expand its capacities for language accessibility. 

  1. What’s the difficulties of your project? What problems you might encounter during your project?

One of the most glaring issues with this project is scope. My unfamiliarity with web hosting combined with limited experience with mobile app design means making an accurate timeline will be quite difficult. Building a polished mobile app is time-consuming, and might not fit within the time-frame of the project. 

JMM has a lot of exhibits, which means there is a lot of text to be translated and audio to be recorded. Finding people up to the task of translating and recording could prove to be quite difficult.

CS388 – Week 1 – First Idea

with No Comments

Name of Your Project? Corner Finder AI

What research topic/question your project is going to address? Can deep learning and/or neural networks be used over a set of imagery to identify rectilinear structures which might be undetectable to the human eye (in other words, structures that are buried, or very obfuscated).

What technology will be used in your project? Drones and drone imagery, as well as machine learning concepts like deep learning with training data and neural networks.

What software and hardware will be needed for your project? I would like to make this project so that it can be used with the data the IFS trip collected from Iceland this summer. This also gives me an advantage with testing/learning data, as we created quite a stockpile of the kind of drone imagery I would like to analyse. 

How are you planning to implement? I plan to use python, or another language to create the software for this, possibly with support from some libraries (depending on language).

How is your project different from others? What’s new in your project? From my first hand experience and preliminary research, it seems that most image analysis like this is done through direct processing of data, rather than by training an AI. The scripts we have used are mostly filtering the data that is there, rather than analyzing patterns. I think that this different approach might help us find things we wouldn’t find otherwise.

What’s the difficulties of your project? What problems you might encounter during your project? The main difficulty will likely be the complicated nature of this kind of software. I have a medium level of experience with AI concepts, but something at this level will undoubtedly get murky with details eventually.

CS388 – Week 1 – First Idea

with No Comments
  1. Name of Your Project Skip&Skin
  2. What research topic/question your project is going to address? One product can’t fit all. From beauty to skin care, people are thrown a bunch of products that are said to be popular or effective in enhancing complexion. However, each individual is so different from another that they need to do more research to figure out which products will fit them better than others. Using the concept of personalization with Machine Learning, I will be focusing on categorizing different skin types of users and matching skin care products that could best serve their needs.
  3. What technology will be used in your project? I will need XCode and Swift to build the IOS application. I might be using Python to manipulate the dataset.
  4. What software and hardware will be needed for your project? Since I will be making an IOS application, I will need a MacBook to use XCode. 
  5. How are you planning to implement? I am planning to create a skin type test for users with approximately 10 problems to determine their skin type. I might also ask them to identify their concerns. I will select products to recommend by comparing the content of their ingredients (glycerin, hyaluronic acid, etc.). I might also want to make options for filtering by price, brand, etc.  
  6. How is your project different from others? What’s new in your project? As a person with dry skin (due to lack of moisture), I always look for products that are a bit more oily than what others might prefer. I try to stay away from products that dry up fast and leaves my skin smooth. But most products that are highly rated don’t necessarily reflect this, and I have to either go through individual comments or search online to see if it will be effective for dry skin. I thought it would be comfortable for people to just see filtered results for their own skin type. 
  7. What’s the difficulties of your project? What problems you might encounter during your project? Finding a database of skin care products with ingredients, building an app by myself, learning Swift, coming up with a criteria for selecting products

CS388 – Week 1 – First Idea

with No Comments

Compile Python code into byte code.

To enable JVM to run python code. Since JVM executes bytecode, I want to find a way to automatically compile python code to byte code.

Software involved: JVM, javac, python interpreter

The difficulties come from the large scope of the language.

CS388 – Week 1 – First Idea

with No Comments

Name of My Project

Who’s Running?: In depth look at who’s running for what, when, and info about them.

What research topic/question is my project going to address?

  • How to reduce number of uniformed voters?
  • How to dynamically update a website when something with certain keywords is uploaded on the web?
    • How to do that accurately without mistaking an article for something else?
  • How to make sure sources being provided are credible?
    • How to make sure that sources from both sides are presented and credible?
  • How to make the registration process easier and encourage people to vote?

What technology will be used in your project?

  • Website: HTML, CSS, Javascript
  • Content Change Detection and Notification Service
  • CRON job with scripting?
  • FeedWelder?
  • Scripting
  • MDM Notifications API

What software and hardware will be needed for your project?

  • Laptop
  • Possibly access to CRON and FeedWelder

How are you planning to implement?

  • The implementation would be deploying a live website that updates automatically and alerts users of important dates and info and if new info is on the site.

How is your project different from others? What’s new in your project?

  • It’s a one stop shop and automatically updates with more detailed info on how candidates stand on certain issues, their track record, and articles pro and against them.
  • This also makes sure the sources about each candidate is actually credible and not peddling false info
  • This will also alert people when new information is out there and important election/registration dates

What’s the difficulties of your project? What problems you might encounter during your project?

  • Making it update automatically reliably
  • Making sure it successfully finds only credible sources
  • Making sure my script parses the info correctly onto the website
  • Making sure the new info it finds is accurate and about the right people

CS388 – Week 1 – First Idea

with No Comments
  1. Name of Your Project Iterative solvers for systems of Linear Equations
  2. What research topic/question your project is going to address? The effectiveness of various iterative methods at finding solutions to systems linear equations with various characteristics. Taking experimental / numerical analysis perspectives.
  3. What technology will be used in your project? C++ for implementing the solvers.
  4. What software and hardware will be needed for your project? Cluster, or some other computer with sufficient memory for the testing.
  5. How are you planning to implement? Choose a class of iterative solvers and test them against various types of matrices.
  6. How is your project different from others? What’s new in your project? It is closer to some of the more theory oriented projects, but leans heavily towards applied mathematics.
  7. What’s the difficulties of your project? What problems you might encounter during your project? The theory of iterative solvers is quite heavy on numerical analysis, which might limit the scope of the project to a a further restricted class of solvers.

CS388 – Week 1 – First Idea

with No Comments

Buying tickets of popular concerts: the application imitates real users to buy concert tickets on the website. Users can set it up before the tickets opening date. As long as the tickets are open to sell, the application will immediately buy them. If the tickets are sold out, it keeps reloading the webpage until there are new tickets available.

One time I wanted to buy a concert ticket, but that concert was very popular, and tickets were sold out immediately. Then I kept reloading the website, hoping other people would cancel their orders. But I couldn’t keep reloading the page every second for the whole day. Then I thought if I can have software to do that for me. I did research and found that some web browser automation tools, for example, Selenium, can imitate operation like real users on a web browser. I searched online and found that most of this kind of software buy train tickets instead of concert tickets. The primary technology I will use is Selenium. And I will also need to learn how to read page source code. I will primary write a python script with Selenium to imitate real users buying a ticket online. Selenium can provide a web driver on Google Chrome to go to the target website. And the driver will locate element by tag names, element ID, XPath, class names and etc., and it can do automatic click and input.

But there are several difficulties in my project. The first one is money security. Some ticket websites require payment immediately while making the order. Therefore, users need to provide their website account and bank card information beforehand. I need to be careful about bank card security. The second problem is that this software is website-specific. Different websites require different processes to buy tickets. I need to write different codes to deal with different sites.
The third problem is that some websites require complicated verification on user login. I don’t know if web browser automation can deal with a very complicated verification. The last issue is that I don’t know if the scope of this project is big enough. I can have my software operates for several famous ticket websites and probably can have the mobile APP version. 

CS388 – Week 1 – First Idea

with No Comments
  1. Name of Your Project

Penetration testing to show the weaknesses of businesses

  • What research topic/question your project is going to address?

What results can be gained from businesses investing in someone do penetration  

  • What technology will be used in your project

Personal computer & Network Adapter

  • What software and hardware will be needed for your project?

Kali Linux OS, Virtual Box

  • How are you planning to implement?

Using the Network Adapter and Kali Linux’s built in features, access to a specific network becomes easier. Goals are described at the beginning and the attack is centered around those goals.

  • How is your project different from others? What’s new in your project?

Other than Byron Roosa who graduated a few years ago, I am the only student who has had a security interest so this makes my project unique from others. My project is centered around helping the community. A penetration tests sole purpose is to help a business detect security flaws.

  • What’s the difficulties of your project? What problems you might encounter during your project?

An obvious difficulty with my project is the legality associated with hacking. Getting a business to allow me to do this would take some convincing. Learning to navigate Kali Linux correctly would also be a difficulty.

CS388 – Week 1 – First Idea

with No Comments

Name of Your Project?

Pixel Printer


What research topic/question your project is going to address?

My project aims to improve the current process of 3d printing that is used for mainstream industrial 3d printing.


What technology will be used in your project?

  • 3D-Printing
  • A small computer (Raspberry Pi)

What software and hardware will be needed for your project?

  • A plastic pixel grid made of either wood or metal.
  • Raspberry Pi or  similar small computer to control the opening and closing of the pixel grid. 
  • Plastic to print the 3d object out of.
  • Motors that will control the vertical movement of the pixel grid.

How are you planning to implement?

My implementation includes a pixel grid that is controlled by a computer, the 3d object is converted into layers, the layer then controls the corresponding pixels the molten plastic flows through,. Based on the layer the pixels ‘open’ and ‘close’ to form the 3d object. The pixel grid moves up as it finishes a layer.


How is your project different from others? What’s new in your project?

My project is an entirely new concept. This process of 3D-printing does not exist. The current 3d printers consist of a nozzle through which the molten plastic flows, the nozzle then moves around forming the object which is very time consuming. My process uses a pixel grid that allows molten plastic to flow through the pixels forming the object.


What’s the difficulties of your project? What problems you might encounter during your project?

  • Since this is an entirely new process of 3d printing, I will not be able to use pre-existing online resources.
  • I have no experience working with a raspberry pi and I’m not familiar with hardware programming.
  • My process relies on the density of the grid. The more ‘’pixels’’ my grid contains the more detailed the 3d object will be. 
  • Creating an extremely dense grid could be expensive and not viable in an academic setting.

CS388 – Week 1 – First Idea

with No Comments
  1. Name of Your Project

Breakdown of Mathematical Proofs Using Natural Language Processing

  • What research topic/question your project is going to address?

How available and useful current technology is to address completeness of mathematical proofs in intro/bachelor level mathematics courses.

  • What technology will be used in your project?

Python Natural Language Processing libraries, and SwiftUI for the GUI.

  • What software and hardware will be needed for your project?

Languages: Python, Swift

Development: XCode

  • How are you planning to implement?

The end goal would be to assist students taking undergraduate classes.

  • How is your project different from others? What’s new in your project?

I have not seen/be able to find applications of natural language processing towards the field of algebra and mathematical proofs.

  • What’re the difficulties of your project? What problems you might encounter during your project?

Finding a large enough dataset to work with, that is consistent. Creating a strict enough rule set to classify proof components by.

Mega Update

with No Comments

This is a mega update on my to make up for several weeks of missing updates.

  • I did a preliminary cost analysis for my first idea, which would result in either a budget of $400 or $3500 depending on what hardware i went with.
  • I applied for the Yunger Fellowship as a funding source to be able to afford the hardware needed for my first project idea.  I did not end up getting it, unfortunately, and so called in a favor for an alternative source of funding.
  • In the midst of my research, I discovered that as near as I can tell, no one has ever published research on applying Augmented Reality to the Management aspect of theater, only the artistic side.
  • I decided to combine my first and second ideas and switch from using Microsoft Hololens as the hardware to Leap Motion’s Project NorthStar, an open-source Augmented Reality device, after Microsoft decided that they couldn’t care less about small independent developer types such as myself.
  • After settling on NorthStar, i started delving into the Unity API’s as well as sourcing hardware and 3D printing capabilities.
  • Currently, I am waiting for the Leap Motion sensor to arrive in the mail so i can do concrete work with the APIs, and for my test print to finish to determine if i need to buy the recommended filament or if the one we use will suffice.

Weekly Update

with No Comments

This week I have been:

– Continuing experimenting with different hyperparameters of my models.

– Writing analysis based on the results.

– Continuing to work on the paper.

Weekly Update

with No Comments

This week I have been:

– Continue with the implementation of my design.

– Set up a hyperparameter space to analyze how they affect the model.

– Test the model using different parameter combinations from that set.

– Continue with my paper.

Week 4 Update

with No Comments

In past week, I have spent time doing research to find interesting papers that I think will be related to my ideas. For each of my ideas there are at least five papers to take a look on at thee moment. However, for the last idea about a mobile application for time scheduling, I could only find some topics about effective time scheduling and mostly are just about general mobile application development. I have also read some paper for the first pass in order to briefly know what the authors were proposing in their papers and how well are those paper fit to my topics. I am also looking for available data sets for my first two ideas.

Weekly Update

with No Comments

For this week, I have been:

– Finish writing the first draft of my paper.

– Continue reading ways to determine implicit ratings from the data.

– Test and analyze the initial results of the recommender system.

Weekly Update

with No Comments

Read the CS papers help documents to understand how to read and understand the long papers.

Finding difficulties in searching for papers directly related to my ideas. Read a couple of papers according to the instructions which helped understand the material.

Weekly Update

with No Comments

Met with Dave and Ajit to discuss the 3 ideas. The first 2 ideas were supported and I received some extra information about some features I can add to the project.

ACM membership is set- up and I am trying to refine the 3 ideas by looking up CS papers and discussing with fellow peers.

Weekly Update

with No Comments

This week I have been:

  • Working on the first draft of my paper.
  • Reading a research paper that use the same dataset as my project to derive a formula to get the implicit rating from the song play count.
  • Writing an initial version of the collaborative filtering algorithm, will try to test it next week.

Weekly Progress CS388 (2/15)

with No Comments

For this week, I have been looking for research papers on the three topics that I have chose, specifically for the Text Categorization and the Air Quality Monitoring system. Two things I found out:

– Air Quality Monitoring system:There have been many research on a low-price air quality system, some of which use the same technology as I do. This gives me two advantages: First is that I can reference and study those paper for my research. Secondly, I can compare the results I made on my model with that of other researchers so that my model monitoring system would be the same as the others (which would indicate that my model is working correctly).

– Text Categorization: It has been a research and application topic for over a decade. Many researchers have made considerable amount of progress on this topic, which provides me with more insight into the way to approach, which model should I use, etc… Furthermore, I have not found any documents about the application of Text Categorization on Social Media. Therefore my application can be a newly added topic. One thing that I need to worry about is how I am able to get the post and analyze them. Also, I need a pre-classified dataset to train my model in, which I haven’t found. Other than that, I think this can be a great topic to look into.

Weekly Update

with No Comments

These are the things I did for this week:

– Read Chapter 5 and did the quiz.

– Reworked the representation of the 2D matrix since the original method uses too much memory and not very practical.

– Started implementing the collaborative filtering algorithm for music recommendation.

Week 3 Update

with No Comments

I have talked with Ajit about all three ideas and received some feedbacks and suggestion. Also, I have started finding research papers that are related to my ideas to read for next week.

Topic ideas

with No Comments

Here are my ideas for topics! Another post with some cost analyses is coming soon!

Topic Name: Real-time management using Augmented Reality 

Topic Description: Examine the applications of Head-Mounted augmented reality displays such as HoloLens or Project Northstar in real-time management scenarios like Theatre Stage Management or NASA rocket launch management and implement a basic proof of concept software to eventually be used in the Theatre department as part of my Theatre Capstone.

Topic Name: Using real-time spacial mapping to improve calling for stage managers during performances

Topic Description: Examine the feasibility of using technologies such as Kinect 2.0 in the area of theatre to allow stage managers to keep better track of the positions etc of their actors, allowing them to make more accurate cue calls when their vision of the actors might be obscured, and implement a proof-of-concept application for use in my Theatre Capstone.

Topic Name: Using micro controllers to facilitate cross-device communication and control

Topic Description: Use Arduinos or Raspberry Pis to allow two or more very different devices to be controlled by another device.  For example, allow Qlab on a computer and cues on a light board to be controlled from a single application running on a different computer.  If feasible, make a proof-of-concept for use in my Theatre Capstone.

Weekly Update

with No Comments

For this week, I have been mainly working on:

– Make a few changes on the coding environment for my project from last week for better efficiency.

– Follow Xunfei’s advice to consider some other music datasets. I eventually decided to use the Echo Nest Taste Profile Subset. This dataset is larger and more widely used than the LFM-1b dataset which I had been using.

– Design an efficient method to convert the original data into matrix form in order to use collaborative filtering.

Week 1 Ideas

with No Comments

Idea 1: Optical Character Recognition using Machine Learning

Optical character recognition is not a completely new field of research. However, with the advance of today’s technology, we can apply machine learning to optical character recognition and therefore can recognize not only the printed characters but the more difficult handwritten characters or characters from different type of documents such as certificate or receipt. With the help of OCR, a lot of human work can be reduce. I would like to research about that specific use of machine learning in OCR to handle those harder cases.

Idea 2: Disease prediction

People have always want to know their health status therefore they can prepare and take a better care of their body. It is not difficult to know a person’s current health status since he/she can just go to hospital to have a general medical check. However, people also want to know what type of disease they may have the future, this is when disease prediction using machine learning will be useful. I would like to research about this topic but the first things I found to be difficult will be how to get the appropriate the training data set.

Idea 3: Time management application

Since students sometimes need help with planning the classes and studying for exams, I want to create an application that at first can suggest the best time for students to go class or what time to study. After that, each term, the student can input how well did he/she perform on those classes/exams and from that in the next term/semester the application may suggest a more specific timetable for that specific students to have a better performance.

Week 1 Ideas

with No Comments


Topic Name: Earlham Tennis App

Developing an app to use it as a way of improvement for the tennis players. Entering data during matches to get score stats, errors and serve percentages. All this data will be stored in a database and could be accessed at any time. 

Topic Name: Box Office App

Again, develop a mobile application to manage the Earlham Box Office. Users would be able to look at the event schedule, purchase tickets. To make it efficient, the student data will have to be obtained in order to find from the directory. 

Topic Name: Sensor

If possible, make a sensor that would be attached to the tennis racquet determining how much strength is used and how many balls were hit in a span of time. This would be collected and according to the body analytics of the player, it can be determined how to improve the performance. The stats can then be seen on a web application.

Weekly Update

with No Comments

This week I reviewed my project proposal and started setting up the coding environment. I also asked Xunfei to be my advisor for the project. During our meeting we discussed the project’s timeline for the first month and I made some changes in my timeline according to Xunfei’s suggestions. I’m also preparing for the project presentation in the next class.

Last Week Update

with No Comments

This week I haven’t been able to do a lot since I have a lot of exams in other classes as well. But I have been working mainly on reviewing everything I have accomplished in this class and drafting a quick notes for what I should prepare for in CS488.

Weekly Update

with No Comments

For this week, I have been discussing with Dave about details of my proposal paper, especially what I need to add/edit for the second draft and the final draft. I have also been reading some new research papers that have implementations of collaborative filtering that I can learn from.

Weekly Update

with No Comments

This week I haven’t been able to do much due to some travelling. However, I still managed to design some methods to improve the running time of the collaborative filtering algorithms. I also worked on editing the second draft of my proposal and have a lot of progress in that.

Weekly Update

with No Comments

This week I have been reading some published papers that use the same dataset as the one I use for this project. My purposes for doing this are to know the conclusions other people have made using the dataset and to examine the methods that they used. I found that some research projects used this dataset for investigating the diversity of different countries through listening habits and music recommendation with cultural context. I haven’t looked into the papers about music recommendation in detail but I plan to do that when I have the time. I think this will help a lot because they are using the same dataset that I will be using.

Weekly Update

with No Comments

This week, I met with Xunfei to talk about my project and have been working on finishing the first draft of my proposal. Now I will plan on having a 4-week plan and find a advisor for my project to schedule a meeting time.

Weekly Update

with No Comments

For this week, I have been mainly working on my proposal for the project. I have been writing the introduction to my proposal and drawing up diagrams to make my project easier to understand. I also reviewed my paper about related work to see if there was anything I would like to make changes to. I also tried to come up with a timeline; however, so far is it still not finalized as I haven’t been able to predict precisely how much time I would spend on each task.

In addition, I also looked at the proposal criticism part of the slides to see whether anything needed improving.

Finally, I have also looked at the papers I have read, and picked out some of them for more careful reading (second/third time).

Weekly Update

with No Comments

This week I’m focusing on my project, which is to build a method for building music recommendation using collaborative filtering. To do that I am currently reading papers about collaborative filtering in more details and comparing different techniques for collaborative filtering to determine what would work best for my project.

Weekly Update

with No Comments

For this week I have been reading the research papers that are relevant to my topic and take notes of them. I still need to work on narrow down the scopes of my topics as a couple of them may not be feasible to complete over one semester.

I have also finished with making an annotated bibliography for each of the topics and will update them regularly as I find more relevant resources.

1 2 3