GILP: An Interactive Tool for Visualizing the Simplex Algorithm

10/19/2022
by   Henry W Robbins, et al.
0

The Simplex algorithm for solving linear programs-one of Computing in Science Engineering's top 10 most influential algorithms of the 20th century-is an important topic in many algorithms courses. While the Simplex algorithm relies on intuitive geometric ideas, the computationally-involved mechanics of the algorithm can obfuscate a geometric understanding. In this paper, we present gilp, an easy-to-use Simplex algorithm visualization tool designed to explicitly connect the mechanical steps of the algorithm with their geometric interpretation. We provide an extensive library with example visualizations, and our tool allows an instructor to quickly produce custom interactive HTML files for students to experiment with the algorithm (without requiring students to install anything!). The tool can also be used for interactive assignments in Jupyter notebooks, and has been incorporated into a forthcoming Data Science and Decision Making interactive textbook. In this paper, we first describe how the tool fits into the existing literature on algorithm visualizations: how it was designed to facilitate student engagement and instructor adoption, and how it substantially extends existing algorithm visualization tools for Simplex. We then describe the development and usage of the tool, and report feedback from its use in a course with roughly 100 students. Student feedback was overwhelmingly positive, with students finding the tool easy to use: it effectively helped them link the algebraic and geometrical views of the Simplex algorithm and understand its nuances. Finally, gilp is open-source, includes an extension to visualizing linear programming-based branch and bound, and is readily amenable to further extensions.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
10/21/2021

Towards Automatic Grading of D3.js Visualizations

Manually grading D3 data visualizations is a challenging endeavor, and i...
research
11/21/2022

CodEval: Improving Student Success In Programming Assignments

CodEval is a code evaluation tool that integrates with the Canvas Learni...
research
08/14/2023

CodeHelp: Using Large Language Models with Guardrails for Scalable Support in Programming Classes

Computing educators face significant challenges in providing timely supp...
research
08/08/2022

Roboviz: A Game-Centered Project for Information Visualization Education

Due to their pedagogical advantages, large final projects in information...
research
04/28/2022

Motivating Data Science Students to Participate and Learn

Data science education is increasingly involving human subjects and soci...
research
07/05/2019

Anteater: Interactive Visualization for Program Understanding

Understanding and debugging long, complex programs can be extremely diff...
research
10/21/2018

Visualization Framework for Colonoscopy Videos

We present a visualization framework for annotating and comparing colono...

Please sign up or login with your details

Forgot password? Click here to reset