CS388 – Week 2 – Other 2 Ideas

with No Comments

Idea 2 – Library Management Mobile Application

The library management system is a tool to organise the library automatically without requiring

human intervention to issue books, track record of books in library, and perform day to day

actions required to maintain and run a library. Our software solution will systematically keep track

of all the books in the library, by storing the section name, rack number, row number, etc that is

the essential data required to locate any book in the library.

It will allow students and other users of the library to issue the book by scanning the barcode on

the book. Our system will send the student a notification to remind them to return back the book

on due date and simultaneously inform the librarian as well.

Students can also search and find the number of available editions of all the books in the library

using a tab application that shall be available at the reception of the library.

The aim of the project is to automate all the processes in the library and reduce the effort of the

library staff and increasing the efficiency of book issuing process in the library

Additionally what can be done is to store the books issued by students and recommend them to

issue similar books based on their selection.

Idea 3 – News Filtering using Web-scrapping

Lot of people avoid news due to the vast topics present in everyday’s news. Young people prefer

news related to sports or technology while old people are more used to the country news and

politics. That is just for an example, anyone can like any kind of news. We develop an app in

which reading news is made easier, faster and enjoyable. An android app which is used to filter

news based on user recommendations using web scrapping or ml algorithms. A user can create

their account on the app and search for any news they want. The app will produce the most

relevant and popular content from the web. If a user types tennis, roger Federer then the top most

viewed articles will show up which contain content related to both the key words. The user’s

history will also be saved and gradually the app will provide recommendations of the certain

category of news. If the user searches for tennis 2-3 times then 4th time they will be given option

of news from tennis and other sports close to tennis or the most popular ones at that time.

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
  • Name of My Project

Managing Fire From Space

Improve Fire Identification Mapping and Monitoring Algorithm (FIMMA).

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

Space technology has been used to improve life on Earth through many applications. One of them is to use Earth observation satellites to detect forest fires and alert local authorities in real time.

NASA has been developing FIMMA algorithm that analyzes data taken from Earth observation satellites to detect possible forest fires.

The FIMMA algorithm has several limitations, which often leads to false-positive results. The research aims to address and find possible solutions to the current limitations and produce a better algorithm.

  • What technology will be used in your project?

Fire Information for Resource Management System (FIRMS).

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

Data manipulation and graphing tools.

  • How are you planning to implement?

Compare the current implementation of FIMMA algorithm with other fire detection algorithms and fire products.

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

The algorithm is currently only accurate over forested regions. The algorithm may miss real fires over urban areas, as well as many agricultural burns. A focus of the research is to improve the fire detection accuracy of these regions.

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

The research requires a deep understanding of the algorithm, geology, satellite technology, and data science.

It can be challenging to obtain the most updated progress of the algorithm.



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.

CS388 – Week 1 – First Idea

with No Comments

Predicting the winner of a NBA match

Usage of technology to help in the correct outcome of sports. The goal is to predict the winner of an NBA game using machine learning techniques. This is done on the based of the factors that have influence on the match and which ones are useful for the team in winning the match.

Machine Learning, Python

DDR4 8gb ram, 700 mb space for spider ide and project files, intel i3 7th gen processor an above.

No hardware required.

We will use this dataset to find out the entropy, which is nothing but a reward system that shall be used to calculate the probability of winning of the two teams playing the current match.

We will use various factors to calculate the entropy, for example, affect of injury of players in the outcome of a match, past performance of players in the season, home court or away court, past record and scores of players against the opposition team, grudges in between two players of opposition team, record of the coach, etc.

The project brings a unique way to predict the winner which can be helpful to lot of betting agencies, match analysers. We shall use our algorithm while the match is being played to dynamically take into effect of any possible injuries or fouls that the players may commit during the match. This will give a better number to calculate the probability of winning of both the teams.

The difficulties encountered would be getting the right accuracy level, trying different algorithms for the correct score, large quantity of data to access.