3D-Module for ’Algorithm & Data Structure Visualizer (ADV)’

Bodschwinna, Christoph and Frank, Philipp (2025) 3D-Module for ’Algorithm & Data Structure Visualizer (ADV)’. Other thesis, OST Ostschweizer Fachhochschule.

[thumbnail of FS 2025-BA-EP-Bodschwinna-Frank-3D-Modul für 'Algorithm & Data Structure Visualizer (ADV)'.pdf] Text
FS 2025-BA-EP-Bodschwinna-Frank-3D-Modul für 'Algorithm & Data Structure Visualizer (ADV)'.pdf - Supplemental Material

Download (12MB)

Abstract

The Algorithms and Data Structures course uses a tool called Algorithm & Data Structure Visualizer (ADV) to help students better understand the behavior of their code.
During coding exercises, it allows students to step through their algorithms and see a visual representation of how the code executes.
Since the ADV originally supported only 2D visualizations, a separate standalone tool was developed using JOGL to display 3D landscapes for pathfinding algorithms.
The goal of this project was to create a new module for the ADV that can render 3D landscapes and serve as a replacement for the standalone JOGL-based solution.

A central challenge was the efficient handling of large datasets.
Until now, the ADV supported only 2D elements and algorithms that typically generated no more than 20 to 30 snapshots, each with around 10 to 20 elements.
In contrast, the new landscape module needed to process matrices as large as 200 by 200, resulting in up to 40,000 data points, and support as many as 150 snapshots per session.
A previous semester thesis attempted this before, but the resulting prototype suffered from major performance limitations and was not suitable for practical use.

The newly developed landscape module supports both automatically generated and manually defined matrices of any size.
To enhance user interaction, the generated landscapes include mouse and keyboard controls.
Like all other ADV modules, it relies on a snapshot-based communication protocol.
To handle the significantly larger data volume, the protocol was extended to support partial snapshots.
This allows the ADV-UI to construct new snapshots incrementally by applying only the changes to the previous state, which greatly reduces both data transmission and memory usage.
Additionally, since the ADV had not been maintained for several years, major version upgrades were performed across the entire application, including updates to Java, JavaFX and Gradle.

Item Type: Thesis (Other)
Subjects: Topics > Software
Area of Application > Business oriented
Technologies > Programming Languages > Java
Divisions: Bachelor of Science FHO in Informatik > Bachelor Thesis
Depositing User: OST Deposit User
Date Deposited: 29 Sep 2025 10:50
Last Modified: 29 Sep 2025 10:50
URI: https://eprints.ost.ch/id/eprint/1313

Actions (login required)

View Item
View Item