Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/FabianeloV/Metodo-simplex/llms.txt

Use this file to discover all available pages before exploring further.

Simplex Optimizer is a full-stack mathematical optimization platform that gives engineers, researchers, and students a single, consistent interface for solving a wide class of optimization problems — linear, integer, nonlinear, and constrained. A FastAPI backend exposes every algorithm as a versioned REST endpoint, while a React 18 frontend lets you build and solve problems interactively and inspect results through dynamic tables and Plotly charts, all without writing a line of code.

What Is Simplex Optimizer?

The project is organized as a monorepo with two independent services that talk over HTTP:
  • Backend — a Python 3.11 + FastAPI application that hosts the optimization engines, validates input with Pydantic v2, and returns structured JSON responses including iteration tableaux, variable values, and optional graphical data. Symbolic math is handled by SymPy; numerical operations use NumPy.
  • Frontend — a React 18 + TypeScript single-page application built with Vite. It follows an atomic-design component hierarchy (atoms → molecules → organisms → templates → pages) and renders charts via Plotly.js.
Both services are independently runnable and communicate through a configurable base URL (VITE_API_URL), making it straightforward to deploy the backend on a server while hosting the frontend statically.

Eight Optimization Methods

Simplex Optimizer ships eight solvers, each available as its own REST endpoint under /api/v1:

Simplex (Big-M)

Solves LP problems via the Big-M method. Supports maximization and minimization with <=, >=, and = constraints. Returns the full pivot tableau at every iteration. For two-variable problems the response also includes graphical feasibility region data for Plotly rendering.

Binary Integer (B&B)

Branch-and-bound solver for binary integer programming problems, where decision variables are restricted to 0 or 1.

Pure Integer (B&B)

Branch-and-bound solver for pure integer programming problems with general non-negative integer decision variables.

Bisection

Root-finding via the bisection method for single-variable nonlinear equations. Returns the convergence table for each iteration.

Newton-Raphson

Iterative root-finding and optimization using first- and second-order derivative information for fast quadratic convergence.

Gradient Descent

Symbolic gradient-based optimizer for multivariate functions. Accepts a SymPy-compatible expression, an initial point, and a step size; supports both descent and ascent.

Graphical Multivar

Generates 3D surface and volume data for two- or three-variable objective functions, enabling visual exploration of the optimization landscape.

KKT Conditions

Solves constrained nonlinear optimization problems analytically using Karush-Kuhn-Tucker optimality conditions via symbolic computation.

Technical Stack

LayerTechnology
Language (backend)Python 3.11
API frameworkFastAPI 0.115
Numerical computingNumPy 2.1
Symbolic mathSymPy 1.13
Data validationPydantic 2.9
ASGI serverUvicorn 0.30
Language (frontend)TypeScript 5.5
UI frameworkReact 18.3
Build toolVite 5.4
ChartingPlotly.js / react-plotly.js

Explore the Docs

Quickstart

Run the backend and frontend locally in under five minutes and make your first API call.

API Reference

Full endpoint documentation for all eight solvers, generated from the live OpenAPI schema.

Methods

Deep-dive explanations of the algorithms, input schemas, and example requests for each solver.

Architecture

Component diagram, data-flow overview, atomic design structure, and deployment options.

Build docs developers (and LLMs) love