/graph-algo-exploration

Brooklyn College: CISC. 3220 Analysis of Algorithms: Interactive Algorithm Project focusing on Graph Problems.

Primary LanguageJavaScript

Graph Algo Exploration

The project aims to develop interactive visualizations for a set of algorithms, coupled with references to relevant problems and test sets. Must-have algorithms include visualizations from algorithm such as Kruskal's Algorithm, Prim's Algorithm, A* Search, Adversarial Search and Pruning, and Minimum Spanning Tree. Problems references to relevant problems and test sets will be included for each algorithm. Optionally the student will attempt into developing visualizations for: Fleury's Algorithm, Connected Components, Topological Sort, Floyd Warshall, Greedy Algorithm, Heapify, and Bellman Ford Algorithm.

Mandatory

Minimum Spanning Trees

  • Kruskal's Algorthm
  • Prim's Algorithm

Shortest Path Search Algorithms

  • A* Search

  • Adversarial Search and Prunning

Additional

  • Fleury's Algorithm
  • Connected Components
  • Topological Sort
  • Floyd Warshall
  • Greedy Algorithm
  • Heapify
  • Bellman Ford Algorithm.

Illustrated Problems:

  • Minimal Spanning Tree
    • Prims
    • Kruskal
  • Find Best Path

Minimal Spanning Tree

  • Allows Resetting
  • Stepping
  • Looping Animations

Prim's Algorithm

Resources:

Introduction to Algorithms, 4rth Edition, Cormen, Leiserson, Rivest, Stein

Graph Algorithms for Data Science

  • Graphss and Network Science
  • Representing Network Structure
  • Exploratory Graph Analysis
  • Introduction to Social Network Analysis
  • Projecting Monopartitie Networks
  • Inferring Co-Occurence Networks Based on Bipartitie Netowkrs
  • Constructing Nearest Neighbor Similarity Network
  • Node Embeeddings And Classification
  • Link Prediction

Graph Machine Learning

  • Machine Learning on Graphs
  • Unsupervised Learning on Graphs
  • Problems with Machine Learning on Graphs
  • Social Network Graphs
  • Text Analytics and Natural Language Using Graphs
  • Graph Analysis for Credit Card Transactions
  • Building a Data Driven Powered Application.

Basic Graph Theory

  • Paths, Cycles and Connectivity
  • Matching and Covering
  • Planar Graphs
  • Graph Coloring
  • Diagraphs
  • Special Cases of Graphs

Current Features

Deployment

$ npm install gh-pages --save-dev
$ git remote add origin https://github.com/nenewang/graph-algo-exploration.git

Backlog

  • Add Prism Algorithm for visualization
  • Draw Analogies
  • Add A* Search for visualization
  • Add Adversarial Search and Pruning for visualization