Skip to content

A web application built with React for solving dynamic programming problems in Operations Research, featuring interactive interfaces for algorithms like Floyd's shortest paths, Knapsack, Optimal BSTs, and Sports Series probabilities. Developed as part of an academic course with a focus on modularity, usability, and visual clarity.

Notifications You must be signed in to change notification settings

EngSteven/operations-research-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dynamic Programming Algorithms Web Application

Project Description

This repository contains a web application developed with React that serves as an interface for various dynamic programming algorithms. The application features a main menu that allows users to select and execute different algorithms, each implemented as a separate component. The project is part of an Operations Research course and includes the following algorithms:

  1. Shortest Paths (Floyd's Algorithm): Finds the optimal routes between any pair of nodes in a weighted graph.
  2. Knapsack Problem: Solves the 0/1, bounded, and unbounded versions of the knapsack problem.
  3. Optimal Binary Search Trees: Constructs the binary search tree with the minimum average cost.
  4. Sports Series: Calculates probabilities associated with sports series outcomes.

The application emphasizes a visually appealing and professional interface, with tooltips for descriptions and uniform styling across all components.

Key Features

  • Interactive Graphical Interface: Built with HTML5, CSS3 and React for a consistent look and feel.
  • Tooltip Descriptions: Hover over menu options to see brief descriptions of each algorithm.
  • File Handling: Save and load problem data for future use.
  • Error Handling: Displays alerts for unavailable algorithms.
  • Optional Extras: Visual representations of graphs, mathematical problem displays, and more.

Technologies Used

  • Frontend: React
  • Styling: HTML5, CSS3

Authors

  • Steven Sequeira
  • Andrey Ureña
  • Carlos Loaiza
  • Brandon Calderón
  • Jerson Prendas

Project Structure

The repository is organized as follows:

  1. Proyecto 0: Main menu and framework for launching algorithms.
  2. Proyecto 1: Implementation of Floyd's Algorithm for shortest paths.
  3. Proyecto 2: Solution for the Knapsack Problem.
  4. Proyecto 3: Sports Series probability calculator.
  5. Proyecto 4: Optimal Binary Search Trees constructor.

How to Run

  1. Clone the repository.
  2. Install dependencies (React, etc.).
  3. Run the application using the appropriate framework commands ( npm start for React).
  4. Access the main menu via the browser and select the desired algorithm.

About

A web application built with React for solving dynamic programming problems in Operations Research, featuring interactive interfaces for algorithms like Floyd's shortest paths, Knapsack, Optimal BSTs, and Sports Series probabilities. Developed as part of an academic course with a focus on modularity, usability, and visual clarity.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published