GATutor: A Guided Discovery Based Tutor for Designing Greedy Algorithm
Kavya Alse, Mukund Lahoti, Meenakshi Verma, Sridhar Iyer
Abstract
Kavya Alse, Mukund Lahoti, Meenakshi Verma, Sridhar Iyer
Abstract
Greedy algorithms is an important class of algorithms. Teaching greedy algorithms is a complex task. Ensuring that students can design greedy algorithms for new problems is also complex. We have built a guided discovery based greedy algorithm tutor (GATutor), to teach the process of designing greedy algorithms. GATutor guides the student to discover the greedy algorithm for a few well-known problems, by asking two important questions -- i) what is the satisfying condition at each step? and ii) what is the selection criterion for the next item? As a result, the students not only learn the algorithms for the given problems, but also the process of designing greedy algorithms for new problems. We conducted a study to compare the greedy algorithm design abilities of the students who were trained with GATutor versus those who worked with traditional algorithm visualizations. The results indicate that students who worked with GATutor performed better in designing a greedy algorithm for a new problem. The students also said that their confidence in greedy algorithm design increased because of GATutor.
OpenAlex reports 4 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Greedy algorithms is an important class of algorithms. Teaching greedy algorithms is a complex task. Ensuring that students can design greedy algorithms for new problems is also complex. We have built a guided discovery based greedy algorithm tutor (GATutor), to teach the process of designing greedy algorithms. GATutor guides the student to discover the greedy algorithm for a few well-known problems, by asking two important questions -- i) what is the satisfying condition at each step? and ii) what is the selection criterion for the next item? As a result, the students not only learn the algorithms for the given problems, but also the process of designing greedy algorithms for new problems. We conducted a study to compare the greedy algorithm design abilities of the students who were trained with GATutor versus those who worked with traditional algorithm visualizations. The results indicate that students who worked with GATutor performed better in designing a greedy algorithm for a new problem. The students also said that their confidence in greedy algorithm design increased because of GATutor.
Key concepts: Greedy algorithm, Greedy randomized adaptive search procedure, Computer science, Class (philosophy), Algorithm, Selection (genetic algorithm), Process (computing), Algorithm design