Skip to content

Maxflow-Visualization/iFlow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iFlow

iFlow is an interactive visualizer for the famous Maximum Flow and Minimum Cut problems. More specifically, it visualizes three algorithms based on augmenting path:

There are already a few visualizers for the Max-Flow Min-Cut problem, unlike existing visualizations, iFlow is:

  • Interactive: users are not only "shown" the execution of algorithms, but they get to select their own augmenting path, choose their own flow amount to apply on that path, and complete their own residual graph
  • Designed to facilitate learning❤️:
    • Narrative, context-sensitive explanations
    • Detailed feedback when users make mistakes
    • The option to automatically complete each step, to be used as a non-interactive visualizer when users do not understand the concepts too well yet and to accelerate the visualization so that users can focus on other steps when they are already familiar
  • Capable of visualizing Min-Cut, again both interactively and automatically
  • Convenient: buttons to toggle current flow/original capacity, change layout, download and upload graph, and restart with the same graph
  • Empirically tested to be effective

iFlow was originally developed at the University of Southern California to assist students in an undergraduate algorithms course with ~150 enrollments. TODO

Examples

TODO

Acknowledgments

The initial styling and the choice of Cytoscape framework were inspired by isabek.github.io. We have kept the same vertical layout and Cytoscape's settings for node size, node color, edge size, and edge color. We thank the author for open-sourcing his code.

Cite

TODO

Contact

For questions, bugs, or feature requests, please use the Github Issues page. Otherwise, contact the iFlow Team.

About

An Interactive Max-Flow Min-Cut Algorithms Visualizer.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published