Post

Week 8 — Making SustainHub Interactive: GUI Integration Begins

Week 8 — Making SustainHub Interactive: GUI Integration Begins

Week 8: Making SustainHub Interactive — GUI Integration Begins

After several weeks of backend development and metric evaluation, Week 8 marked the beginning of GUI integration for SustainHub. The goal was to provide an intuitive and flexible interface that allows users to run simulations without digging into the code.


Key Highlights

  • Developed the initial Tkinter-based GUI
  • Enabled user-configurable agent and step inputs
  • Integrated graphical output generation directly into the GUI
  • Retained terminal-based logs and debug outputs

1. Why a GUI?

While the command-line interface worked for internal testing, it’s time to make SustainHub more accessible to new users and community testers.

The GUI provides:

  • Input fields for number of agents and simulation steps
  • A “Run Simulation” button that launches the backend
  • Automatic generation of plots and recovery curves
  • Complete access to under-the-hood logs via terminal output

2. Flexibility in User Inputs

Users can now experiment easily by changing:

  • Number of agents participating in the simulation
  • Number of simulation steps to observe short- or long-term trends

This modular approach helps us debug and validate behavior across a wide parameter space without modifying code.


3. Visual Output + Terminal Logs

The GUI generates:

  • Harmony Index recovery graphs
  • Stress vs. RQ trends, where applicable

All backend logs (SARSA decisions, Q-table updates, RQ values) are still visible in the terminal output, ensuring full transparency and debuggability.

All plots are stored in data/plots/, and logs remain available in the terminal and saved to data/logs/.


4. What’s Next?

  • Polish GUI layout and aesthetics
  • Add toggle options for stress testing scenarios
  • Include real-time metric previews (RQ, HI, fairness)
  • Enable graph preview within the GUI itself

Summary

This week, we shifted gears from metric definition to user accessibility and interaction. The new GUI empowers users to run stress-tested simulations with ease and ensures our system remains transparent, flexible, and research-friendly.

Next week, we’ll enhance the GUI with real-time metric previews and begin refactoring the backend to support richer interactions.

Stay tuned for more.

This post is licensed under CC BY 4.0 by the author.