Accelerated Research Practicum

Algorithms, Data Structures and Python

Faculty Advisor: Professor, School of Mathematics, Georgia Institute of Technology

What is Accelerated Research Practicum

Accelerated Research Practicum combines both recorded and live sessions with the Faculty Advisor and allows students to achieve tangible outcomes and potentially earn a letter of recommendation in a shorter period of time.

Practicum Introduction

Algorithms are sets of instructions to execute tasks, from simple tasks like sorting alphabetically a set of words, to complex ones such as the reconstruction of genomes from biochemical experiments. When an algorithm is efficient, it can potentially reduce the costs of complex tasks from billions to hundreds of dollars.

This program provides an overview of algorithms, data structures and the programming language Python. Students will be provided with videos and other materials to learn the basic concepts as well as the implementations. At the end of the program, students will understand how many real-world programs work, and will also be able to write their own programs in Python. 

The students will be provided with a range of possible final projects. Each project consists of developing and programming an algorithm. Students will be asked to write a 3-5 page paper/report based on their findings, and submit it to the faculty advisor for a final review.

Possible Topics For Final Project:

  • Given a binary tree, find the size of the Maximum Independent Set (MIS) in it.

  • Given a chessboard, print all sequences of moves of a knight on a chessboard such that the knight visits every square only once.

  • Given a set of positive integers, check if it can be divided into two subsets with equal sum.

  • Write an efficient algorithm to find the longest common prefix (LCP) between a given set of strings.

  • Or other topics in this subject area that you are interested in, and that your professor approves after discussing it with you

Advanced Project Topics (optional):

These projects go beyond the topics described above in the program content. Students interested in these projects will be provided with all the necessary materials (videos, notes and codes):

  • Learn about number theory and cryptography. Learn and implement in Python the RSA algorithm. 

  • Learn about bioinformatics. Learn and implement in Python the algorithm used to reconstruct genomes. 

  • Learn about geometric group theory (an area of pure mathematics). Design an algorithm to compute the free generators of a subgroup of a free group. Implement the algorithm in Python.

Program Detail

  • Cohort Size: 2-5 students

  • Duration: 4 weeks

  • Target Students: 7-12th grade students who are interested in Machine Learning, Computer Science and/or Mathematics and wish to complete a research project with a prestigious professor rapidly to boost their research experience and obtain deliverables that can be used for college applications and other programs.

Program Structure

  • Week 1: Students and the faculty advisor will discuss in a live session the available project topics and agree on a set of goals for the project. 

  • Week 1-3: Students will complete an extensive recorded video research program, including core videos that must be completed and optional advanced videos for students with higher aims.

  • Week 4: Students will complete their research project and submit for review. They will also have a second live session with their faculty advisor to ask questions, discuss their findings, and conclude their research experience very positively.