
Dr. Kun Tian
- Email: ktian@csuchico.edu
Research Interests:
- Token Economy and its Applications to Facilitate Learning
- Peer Review Studies / Open Peer Review / AI-Assisted Peer Review
- Programing for 3D Printing and CNC Machine Operations
CURE-E Course: Programming and Algorithms III (CSCI 311), K. Tian, Fall 2024
Project Title: CSCI 311 Course Projects
Project 1: Sorting Algorithms and Performances Gathering and Comparisons
a) Implement 4 sorting algorithms (bubble, selection, insertion, and quick) in C++ code. b) Making a cpp program that test each sorting algorithm on best, average, and worst-case runtimes using 250 vectors. c) Students must think about the working logics of the algorithms and come up with the needed vectors to test the runtimes for the 3 cases and do the experiments. d) Students write reports to summarize their findings on the experiments to disseminate the knowledge or any issues they have discovered that will affect the runtimes of the algorithms in C++ implementations.
Project 2: Airport Landing/Taking off Simulation and Reverse Engineering
a) Students are, fictionally by roleplaying, working as part of a consulting team to simulate takeoffs and landings at a small airport so that they can better understand the limitations of their current procedures and, eventually, improve efficiency. The airport has an executable file that allows them to run simulations using their current procedures but has lost the associated cpp file. Unfortunately, no one you are able to contact can fully describe these procedures. However, there will be a set of test files (inputs and outputs) that can help students understand the embedded algorithms in the executable. b) Students are experimenting with the executable and the test files to rebuild/reengineer the airport landing/taking off scheduler program. c) Students write reports to summarize their findings, tactics, and tips to solve the reverse engineering task.
Project 3: EV Travel Scheduling Problem
a) Students are, fictionally by roleplaying, working as a software engineer at a nameless electric vehicle company as part of a team on a tool for helping customers plan road trips. Charging stations are not yet as widely available as gas stations so, when determining a route from the starting point to the destination, the range of the vehicle must be considered. With summer approaching, your team is scrambling for a solution to this problem. Using their knowledge of graphs and shortest path algorithms, propose and implement an efficient algorithm for determining the shortest path between two cities paying attention to vehicle range and available charging stations. b) Students are given a set of test files (inputs and outputs) and derive the traveling algorithm on their own. c) Students can also come up with additional test files to hone their algorithms for better performances in more rare and undiscovered test cases. d) Students write reports to summarize their findings, tactics, and tips to solve the problem.