8 repositorios
Numerical methods and solvers for optimizing nonlinear systems, often used in motion planning and predictive control.
Distinguishing note: No existing candidates provided; this specifically addresses C-GMRES and nonlinear predictive control techniques.
Explore 8 awesome GitHub repositories matching scientific & mathematical computing · Nonlinear Optimization Solvers. Refine with filters or upvote what's useful.
PythonRobotics es una colección completa de algoritmos de robótica modulares y simulaciones educativas diseñadas para la navegación autónoma, estimación de estados y control de movimiento. El proyecto proporciona una biblioteca de implementaciones independientes para planificación de rutas, localización, mapeo y cinemática, sirviendo como recurso para que investigadores y estudiantes experimenten con teorías robóticas fundamentales y avanzadas. El proyecto se distingue por un diseño centrado en algoritmos donde cada módulo funciona como un script aislado, permitiendo pruebas independientes y una demostración pedagógica clara. Cada implementación está explícitamente mapeada a literatura académica o libros de texto fundamentales de robótica, asegurando que los modelos matemáticos y las estrategias de control sigan siendo verificables y precisos. Los usuarios pueden ejecutar estos escenarios dentro de un entorno de simulación desacoplado que mantiene su propio estado interno y bucles de control, sin requerir dependencias externas. La superficie de capacidades cubre una amplia gama de dominios robóticos, incluyendo navegación aérea, locomoción bípeda y control de brazos multiarticulados. Cuenta con kits de herramientas extensos para fusión de sensores probabilísticos, mapeo ambiental y seguimiento de trayectorias, todo impulsado por computación numérica de alto rendimiento. Las animaciones geométricas en tiempo real y las estimaciones de estado se renderizan directamente a partir de datos de simulación utilizando bibliotecas de trazado estándar.
A motion planning and path tracking simulation with NMPC of C-GMRES Reference - documentation
go-datastructures is a collection of thread-safe and lock-free data structures designed for high-performance concurrent applications in Go. It provides a modular library of specialized algorithmic toolsets, including a lock-free collection library and an immutable data structure library. The project distinguishes itself through a suite of persistent AVL trees and hash array mapped tries that use branch-copying to preserve previous versions. It also implements non-blocking hash maps, queues, and tries that enable linearizable snapshots and concurrent updates without the use of mutual exclusion
Implements a probabilistic global restart system for finding minimum or maximum values under nonlinear constraints.
CVXPY is a Python-embedded domain-specific language for modeling and solving convex optimization problems using natural mathematical syntax. It is built on a disciplined convex programming framework that automatically enforces convexity rules, ensuring that problems formulated by the user are valid for convex solvers. The project also functions as a multi-solver optimization interface, abstracting away backend details and dispatching problems to specialized solvers like ECOS, SCS, and Gurobi without manual configuration. Beyond standard convex optimization, CVXPY extends its reach to geometri
Extends convex optimization to nonlinear programming using a disciplined grammar for expression validation.
Ceres Solver es una biblioteca de C++ para optimización numérica, especializada en problemas de mínimos cuadrados no lineales y optimización sin restricciones. Sirve como un framework para diferenciación automática y ajuste de curvas robusto, proporcionando herramientas para resolver modelos matemáticos a gran escala. La biblioteca se distingue por sus capacidades de ajuste de haces (bundle adjustment), que explotan estructuras de matrices dispersas para refinar puntos de escena 3D y parámetros de cámara. Utiliza diferenciación automática de números duales para calcular derivadas de funciones de costo, eliminando la necesidad de derivación manual de Jacobianos. El proyecto cubre una amplia gama de capacidades de optimización, incluyendo restricciones de variedades para espacios no euclidianos, funciones de pérdida robustas para mitigar valores atípicos y resolución de sistemas lineales tanto densos como dispersos. También proporciona utilidades para la conversión de representación de rotación, interpolación de datos tabulados y estimación de covarianza de parámetros. Las configuraciones de compilación están disponibles para objetivos Android e iOS para soportar la optimización de hardware móvil.
Optimizes memory and computation when the structural patterns of data change during the optimization process.
Drake is a robotics simulation framework and control system modeling tool used for designing, simulating, and verifying the dynamics of complex robotic systems. It functions as a multibody dynamics simulator and a mathematical optimization library, providing a suite of algorithms for trajectory optimization and the simulation of articulated robots. The framework is distinguished by its block-diagram system for composing dynamical subsystems and its ability to formulate and solve diverse mathematical programs, including linear, quadratic, and nonconvex nonlinear problems. It supports specializ
Finds solutions for general nonlinear optimization problems using gradient-based or specialized non-convex solvers.
DifferentialEquations.jl es una biblioteca numérica integral diseñada para resolver ecuaciones diferenciales ordinarias, estocásticas, de retardo y algebraicas. Funciona como una suite de resolución de alto rendimiento que integra machine learning científico, programación probabilística y diferenciación automatizada en un framework unificado. Al aprovechar el despacho múltiple y la integración simbólico-numérica, la biblioteca proporciona un entorno flexible para el modelado matemático complejo y la simulación. El proyecto se distingue por su capacidad para cerrar la brecha entre el análisis numérico tradicional y las técnicas modernas de machine learning. Admite el entrenamiento de ecuaciones diferenciales universales, permitiendo a los usuarios incrustar redes neuronales directamente en simuladores científicos para aprender dinámicas desconocidas mientras mantienen restricciones físicas. Además, la biblioteca ofrece herramientas avanzadas de análisis de sensibilidad y estimación de parámetros, incluyendo métodos adjuntos e inferencia bayesiana, que permiten una calibración eficiente del modelo y el descubrimiento automatizado de ecuaciones gobernantes a partir de datos. La plataforma ofrece amplias capacidades para la computación de alto rendimiento, incluyendo paralelismo agnóstico al hardware que despacha simulaciones a través de CPUs, GPUs y clusters distribuidos. Incorpora una cuantificación rigurosa de la incertidumbre a través de aritmética de intervalos y propagación de Monte Carlo, asegurando una estimación de errores confiable en experimentos numéricos. Además, el sistema cuenta con rutinas de optimización sofisticadas, como la detección de dispersión basada en grafos y el cálculo de productos sin matrices, para acelerar el rendimiento en sistemas a gran escala.
Accelerates complex computations through automated sparsity detection, matrix coloring, and hardware offloading.
mujoco_menagerie is a curated library of physical robot specifications and XML model definitions designed for standardized dynamics and contact simulation. It provides a collection of high-quality robot model files for humanoids, quadrupeds, and manipulators, alongside detailed kinematic and inertial parameters used to reproduce real-world robot behavior in virtual environments. The project serves as a repository of robotics simulation assets and MJCF model definitions optimized for accuracy. It includes standardized model libraries specifically for bipedal, quadrupedal, and humanoid hardware
MuJoCo solves sequential quadratic programs using a nonlinear least squares optimizer.
Symbolics.jl is a foundational framework for symbolic mathematics, automated differentiation, and scientific compilation within the Julia programming language. It provides a comprehensive system for algebraic manipulation, expression simplification, and the construction of mathematical models, enabling users to represent complex physical and chemical systems as symbolic equations. The library distinguishes itself through a source-to-source compilation engine that translates high-level symbolic representations directly into optimized, parallelized, and hardware-specific numerical code. By util
Provides automated sparsity detection for Jacobians and Hessians to skip zero-value computations during numerical execution.